diff options
-rw-r--r-- | src/SemanticScuttle/Service/Bookmark.php | 7 | ||||
-rw-r--r-- | www/api/posts_update.php | 20 |
2 files changed, 24 insertions, 3 deletions
diff --git a/src/SemanticScuttle/Service/Bookmark.php b/src/SemanticScuttle/Service/Bookmark.php index faeecc2..1315350 100644 --- a/src/SemanticScuttle/Service/Bookmark.php +++ b/src/SemanticScuttle/Service/Bookmark.php @@ -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 '; } diff --git a/www/api/posts_update.php b/www/api/posts_update.php index 4b080e2..0e08ee7 100644 --- a/www/api/posts_update.php +++ b/www/api/posts_update.php @@ -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. @@ -27,18 +32,27 @@ $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 +?> |