summaryrefslogtreecommitdiff
path: root/core/controllers/album.php
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2008-11-09 19:20:23 +0000
committerBharat Mediratta <bharat@menalto.com>2008-11-09 19:20:23 +0000
commit1b490c5fe6ce6ced7b02bbdf8c939a991f0378af (patch)
treed06cda6e05d7121f6ec08154115c15b148436d44 /core/controllers/album.php
parent065bbb2120ce0aaee96a3886bd06c90ca26da9bd (diff)
Make Gallery3 more RESTful.
Create Item_Controller as a common superclass for Album_Controller and Photo_Controller. Change routes to route requests to Item_Controller for dispatching, which in turn will generate get/post/put/delete requests to the controlller so that each controller has a RESTful surface. Change in_place editing to take advantage of this.
Diffstat (limited to 'core/controllers/album.php')
-rw-r--r--core/controllers/album.php33
1 files changed, 12 insertions, 21 deletions
diff --git a/core/controllers/album.php b/core/controllers/album.php
index d6b457d6..c94bcbef 100644
--- a/core/controllers/album.php
+++ b/core/controllers/album.php
@@ -17,33 +17,24 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
*/
-class Album_Controller extends Template_Controller {
- public $template = "page.html";
-
- public function view($id) {
- $item = ORM::factory("item")->where("id", $id)->find();
- if (empty($item->id)) {
- return Kohana::show_404();
- }
-
+class Album_Controller extends Item_Controller {
+ public function get($item) {
/** @todo: these need to be pulled from the database */
$theme_name = "default";
$page_size = 9;
+ $template = new View("page.html");
+
$page = $this->input->get("page", "1");
- $theme = new Theme($theme_name, $this->template);
+ $theme = new Theme($theme_name, $template);
- $this->template->content = new View("album.html");
- $this->template->set_global('page_size', $page_size);
- $this->template->set_global('item', $item);
- $this->template->set_global('children', $item->children($page_size, ($page-1) * $page_size));
- $this->template->set_global('parents', $item->parents());
- $this->template->set_global('theme', $theme);
+ $template->set_global('page_size', $page_size);
+ $template->set_global('item', $item);
+ $template->set_global('children', $item->children($page_size, ($page-1) * $page_size));
+ $template->set_global('parents', $item->parents());
+ $template->set_global('theme', $theme);
+ $template->content = new View("album.html");
- /** @todo: move this up to a base class */
- if (Session::instance()->get("use_profiler", false)) {
- $profiler = new Profiler();
- print $profiler->render();
- }
+ print $template->render();
}
}