]> gitweb.fluxo.info Git - semanticscuttle.git/commitdiff
add option to get last modified date instead of creation date
authorDavid Glenck <pascal.free@gmail.com>
Wed, 26 Mar 2014 21:15:09 +0000 (22:15 +0100)
committerChristian Weiske <cweiske@cweiske.de>
Wed, 26 Mar 2014 21:15:09 +0000 (22:15 +0100)
src/SemanticScuttle/Service/Bookmark.php
www/api/posts_update.php

index faeecc2bf086a6a1a9a0b252454a4457f04beb5c..13153503bf39d54c114095a7666e588a084ca1fc 100644 (file)
@@ -687,6 +687,7 @@ class SemanticScuttle_Service_Bookmark extends SemanticScuttle_DbService
      * @param string  $terms     Search terms separated by spaces
      * @param string  $sortOrder One of the following values:
      *                           "date_asc", "date_desc",
+     *                           "modified_asc", "modified_desc"
      *                           "title_desc", "title_asc",
      *                           "url_desc", "url_asc",
      *                           "voting_asc", "voting_desc"
@@ -814,6 +815,12 @@ class SemanticScuttle_Service_Bookmark extends SemanticScuttle_DbService
         case 'url_asc':
             $query_5 .= ' ORDER BY B.bAddress ASC ';
             break;
+        case 'modified_desc':
+            $query_5 .= ' ORDER BY B.bModified DESC ';
+            break;
+        case 'modified_asc':
+            $query_5 .= ' ORDER BY B.bModified ASC ';
+            break;
         default:
             $query_5 .= ' ORDER BY B.' . $GLOBALS['dateOrderField'] . ' DESC ';
         }
index 4b080e2ffd6da63ac2a5eaabf6a201198ba971fc..0e08ee759f038a53d66a6c8e48509ad755b4c678 100644 (file)
@@ -9,6 +9,11 @@
  * that too, so we are as close at the API as possible,
  * not breaking delicious clients.
  *
+ * SemanticScuttle supports an extra parameter:
+ * - ?datemode=modified
+ *   - sorts by modified date and returns modification time
+ *     instead of creation time
+ *
  * SemanticScuttle - your social bookmark manager.
  *
  * PHP version 5.
 $httpContentType = 'text/xml';
 require_once 'httpauth.inc.php';
 
+// parameter "datemode=modified" will get last modified date
+// instead of last created date
+$orderby   = null;
+$timeField = 'bDatetime';
+if (isset($_GET['datemode']) && $_GET['datemode'] == 'modified') {
+    $orderby = 'modified_desc';
+    $timeField = 'bModified';
+}
+
 $bs = SemanticScuttle_Service_Factory::get('Bookmark');
 
-$bookmarks = $bs->getBookmarks(0, 1, $userservice->getCurrentUserId());
+$bookmarks = $bs->getBookmarks(0, 1, $userservice->getCurrentUserId(), null, null, $orderby);
 
 // Set up the XML file and output all the tags.
 echo '<?xml version="1.0" standalone="yes" ?' . ">\r\n";
 //foreach is used in case there are no bookmarks
 foreach ($bookmarks['bookmarks'] as $row) {
     echo '<update time="'
-        . gmdate('Y-m-d\TH:i:s\Z', strtotime($row['bDatetime']))
+        . gmdate('Y-m-d\TH:i:s\Z', strtotime($row[$timeField]))
         . '"'
         . ' inboxnew="0"'
         . ' />';
 }
-?>
\ No newline at end of file
+?>