From 39954ad0b77800b3d4935430794adf18c2625148 Mon Sep 17 00:00:00 2001 From: Tim Almdal Date: Sun, 8 Mar 2009 16:29:01 +0000 Subject: Implement Sortable albums. Current sort fields include (Creation Date, Update Date, Random Key, Title, Mime Type, Item Type & Number of views) --- core/controllers/albums.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'core/controllers/albums.php') diff --git a/core/controllers/albums.php b/core/controllers/albums.php index 4ceb323d..ea5fc860 100644 --- a/core/controllers/albums.php +++ b/core/controllers/albums.php @@ -50,10 +50,16 @@ class Albums_Controller extends Items_Controller { url::redirect("albums/$album->id?page=$max_pages"); } + $sort_order = $album->sort_column; + if (!empty($sort_order)) { + list ($sort_column, $sort_direction) = explode(" ", $sort_order); + $sort_order = array($sort_column => $sort_direction); + } + $template = new Theme_View("page.html", "album"); $template->set_global("page_size", $page_size); $template->set_global("item", $album); - $template->set_global("children", $album->viewable()->children($page_size, $offset)); + $template->set_global("children", $album->viewable()->children($page_size, $offset, $sort_order)); $template->set_global("children_count", $children_count); $template->set_global("parents", $album->parents()); $template->content = new View("album.html"); @@ -153,6 +159,12 @@ class Albums_Controller extends Items_Controller { $orig = clone $album; $album->title = $form->edit_album->title->value; $album->description = $form->edit_album->description->value; + $sort_column = $form->edit_album->sort_order->column->value; + if (!empty($sort_column)) { + $album->sort_column = $sort_column . " " . $form->edit_album->sort_order->direction->value; + } else { + $album->sort_column = null; + } $album->save(); module::event("item_updated", $orig, $album); -- cgit v1.2.3