|
|
|
@ -27,19 +27,19 @@ $RUNTIME_NOSETUPFS=true; |
|
|
|
|
require_once('../../../lib/base.php'); |
|
|
|
|
|
|
|
|
|
// We send json data |
|
|
|
|
header( "Content-Type: application/jsonrequest" ); |
|
|
|
|
header( 'Content-Type: application/jsonrequest' ); |
|
|
|
|
|
|
|
|
|
// Check if we are a user |
|
|
|
|
if( !OC_User::isLoggedIn()){ |
|
|
|
|
echo json_encode( array( "status" => "error", "data" => array( "message" => "Authentication error" ))); |
|
|
|
|
echo json_encode( array( 'status' => 'error', 'data' => array( 'message' => 'Authentication error' ))); |
|
|
|
|
exit(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$params=array(OC_User::getUser()); |
|
|
|
|
$CONFIG_DBTYPE = OC_Config::getValue( "dbtype", "sqlite" ); |
|
|
|
|
$CONFIG_DBTYPE = OC_Config::getValue( 'dbtype', 'sqlite' ); |
|
|
|
|
|
|
|
|
|
//Filter for tag? |
|
|
|
|
$filterTag = isset($_GET["tag"]) ? '%' . urldecode($_GET["tag"]) . '%' : false; |
|
|
|
|
$filterTag = isset($_GET['tag']) ? '%' . urldecode($_GET['tag']) . '%' : false; |
|
|
|
|
if($filterTag){ |
|
|
|
|
$sqlFilterTag = 'HAVING tags LIKE ?'; |
|
|
|
|
$params[] = $filterTag; |
|
|
|
@ -47,27 +47,27 @@ if($filterTag){ |
|
|
|
|
$sqlFilterTag = ''; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$offset = isset($_GET["page"]) ? intval($_GET["page"]) * 10 : 0; |
|
|
|
|
$offset = isset($_GET['page']) ? intval($_GET['page']) * 10 : 0; |
|
|
|
|
$params[] = $offset; |
|
|
|
|
|
|
|
|
|
if( $CONFIG_DBTYPE == 'sqlite' or $CONFIG_DBTYPE == 'sqlite3' ){ |
|
|
|
|
$_gc_separator = ", ' '"; |
|
|
|
|
$_gc_separator = ', \' \''; |
|
|
|
|
} else { |
|
|
|
|
$_gc_separator = "SEPARATOR ' '"; |
|
|
|
|
$_gc_separator = 'SEPARATOR \' \''; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//FIXME: bookmarks without tags are not being retrieved |
|
|
|
|
$query = OC_DB::prepare(" |
|
|
|
|
SELECT url, title, description, GROUP_CONCAT( tag $_gc_separator ) AS tags |
|
|
|
|
$query = OC_DB::prepare(' |
|
|
|
|
SELECT url, title, description, GROUP_CONCAT( tag '.$_gc_separator.' ) AS tags |
|
|
|
|
FROM *PREFIX*bookmarks, *PREFIX*bookmarks_tags |
|
|
|
|
WHERE *PREFIX*bookmarks.id = *PREFIX*bookmarks_tags.bookmark_id |
|
|
|
|
AND *PREFIX*bookmarks.user_id = ? |
|
|
|
|
GROUP BY url |
|
|
|
|
$sqlFilterTag |
|
|
|
|
'.$sqlFilterTag.' |
|
|
|
|
ORDER BY *PREFIX*bookmarks.id DESC |
|
|
|
|
LIMIT ?, 10"); |
|
|
|
|
LIMIT ?, 10'); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$bookmarks = $query->execute($params)->fetchAll(); |
|
|
|
|
|
|
|
|
|
echo json_encode( array( "status" => "success", "data" => $bookmarks)); |
|
|
|
|
echo json_encode( array( 'status' => 'success', 'data' => $bookmarks)); |
|
|
|
|