diff options
| author | Christian Weiske <cweiske@cweiske.de> | 2018-10-07 14:05:43 +0200 |
|---|---|---|
| committer | Christian Weiske <cweiske@cweiske.de> | 2018-10-07 14:05:43 +0200 |
| commit | 3e6e6e4c40741269d997d9b0bed151f551384aa3 (patch) | |
| tree | da7d6823a29d1ace7c6429b20aa7ba7929f4a46f | |
| parent | 1105322aac9cc8e71eafbf5a5eea8e709c8c77ce (diff) | |
| download | grauphel-3e6e6e4c40741269d997d9b0bed151f551384aa3.tar.gz grauphel-3e6e6e4c40741269d997d9b0bed151f551384aa3.zip | |
Lists can be sorted by title and date now
Resolves: https://github.com/cweiske/grauphel/issues/59
| -rw-r--r-- | controller/guicontroller.php | 33 | ||||
| -rw-r--r-- | templates/tag.php | 11 |
2 files changed, 35 insertions, 9 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); diff --git a/templates/tag.php b/templates/tag.php index e8e092e..4c20378 100644 --- a/templates/tag.php +++ b/templates/tag.php @@ -10,8 +10,12 @@ <table class="table" id="grauphel-notes"> <thead> <tr> - <th id="headerTitle">Title</th> - <th>Modified</th> + <th id="headerTitle"> + <a href="<?php p($tagUrl); ?>?sortby=title">Title</a> + </th> + <th> + <a href="<?php p($tagUrl); ?>?sortby=date">Modified</a> + </th> </tr> </thead> <tbody> @@ -21,7 +25,8 @@ <td> <a class="cellclick" href="<?php p($_['urlGen']->linkToRoute('grauphel.gui.note', array('guid' => $note['guid']))); ?>"><?php echo ($note['title']); ?></a> </td> - <td style="color: <?php echo p($note['dateColor']); ?>"> + <td style="color: <?php echo p($note['dateColor']); ?>" + title="<?php p(date('Y-m-d H:i:s', strtotime($note['last-change-date']))); ?>"> <?php p($_['date']->formatDate(strtotime($note['last-change-date']))); ?> </td> </tr> |
