aboutsummaryrefslogtreecommitdiff
path: root/controller/guicontroller.php
diff options
context:
space:
mode:
Diffstat (limited to 'controller/guicontroller.php')
-rw-r--r--controller/guicontroller.php33
1 files changed, 27 insertions, 6 deletions
diff --git a/controller/guicontroller.php b/controller/guicontroller.php
index ef109a7..cac2f29 100644
--- a/controller/guicontroller.php
+++ b/controller/guicontroller.php
@@ -171,12 +171,29 @@ class GuiController extends Controller
{
$rawtag = $this->unescapeTagFromUrl($rawtag);
$notes = $this->getNotes()->loadNotesOverview(null, $rawtag, true);
- usort(
- $notes,
- function($noteA, $noteB) {
- return strcmp($noteA['title'], $noteB['title']);
- }
- );
+
+ if (!isset($_GET['sortby'])) {
+ $_GET['sortby'] = 'title';
+ }
+
+ switch ($_GET['sortby']) {
+ case 'title':
+ usort(
+ $notes,
+ function($noteA, $noteB) {
+ return strcasecmp($noteA['title'], $noteB['title']);
+ }
+ );
+ break;
+ case 'date':
+ usort(
+ $notes,
+ function($noteA, $noteB) {
+ return strcmp($noteB['last-change-date'], $noteA['last-change-date']);
+ }
+ );
+ break;
+ }
foreach ($notes as &$note) {
$diffInDays = intval(
@@ -195,6 +212,10 @@ class GuiController extends Controller
'tag' => $this->getPrettyTagName($rawtag),
'rawtag' => $rawtag,
'notes' => $notes,
+ 'tagUrl' => $this->urlGen->linkToRoute(
+ 'grauphel.gui.tag',
+ array('rawtag' => $this->escapeTagForUrl($rawtag))
+ ),
)
);
$this->addGlobalVars($res);