diff options
author | Marvin Thomas Rabe <m.rabe@echtzeitraum.de> | 2012-02-22 23:52:56 +0100 |
---|---|---|
committer | Marvin Thomas Rabe <m.rabe@echtzeitraum.de> | 2012-02-22 23:52:56 +0100 |
commit | 77493e8d704c5a9c986b453583f966cb976409c9 (patch) | |
tree | c34a79dccef23c3fd68dee131c2028393b59b457 /apps/bookmarks/bookmarksHelper.php | |
parent | 996e6cf419cc9ebecb9c8985e444ee1ba17e9395 (diff) | |
download | nextcloud-server-77493e8d704c5a9c986b453583f966cb976409c9.tar.gz nextcloud-server-77493e8d704c5a9c986b453583f966cb976409c9.zip |
Changed bookmarklet to read later widget
Diffstat (limited to 'apps/bookmarks/bookmarksHelper.php')
-rw-r--r-- | apps/bookmarks/bookmarksHelper.php | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/apps/bookmarks/bookmarksHelper.php b/apps/bookmarks/bookmarksHelper.php index ac512fbc241..8def7401e2f 100644 --- a/apps/bookmarks/bookmarksHelper.php +++ b/apps/bookmarks/bookmarksHelper.php @@ -70,3 +70,55 @@ function getURLMetadata($url) { return $metadata; } + +function addBookmark($url, $title='', $tags='') { + $CONFIG_DBTYPE = OC_Config::getValue( "dbtype", "sqlite" ); + if( $CONFIG_DBTYPE == 'sqlite' or $CONFIG_DBTYPE == 'sqlite3' ){ + $_ut = "strftime('%s','now')"; + } elseif($CONFIG_DBTYPE == 'pgsql') { + $_ut = 'date_part(\'epoch\',now())::integer'; + } else { + $_ut = "UNIX_TIMESTAMP()"; + } + + //FIXME: Detect when user adds a known URL + $query = OC_DB::prepare(" + INSERT INTO *PREFIX*bookmarks + (url, title, user_id, public, added, lastmodified) + VALUES (?, ?, ?, 0, $_ut, $_ut) + "); + + if(empty($title)) { + $metadata = getURLMetadata($url); + $title = $metadata['title']; + } + + $params=array( + htmlspecialchars_decode($url), + htmlspecialchars_decode($title), + OC_User::getUser() + ); + $query->execute($params); + + $b_id = OC_DB::insertid('*PREFIX*bookmarks'); + + if($b_id !== false) { + $query = OC_DB::prepare(" + INSERT INTO *PREFIX*bookmarks_tags + (bookmark_id, tag) + VALUES (?, ?) + "); + + $tags = explode(' ', urldecode($tags)); + foreach ($tags as $tag) { + if(empty($tag)) { + //avoid saving blankspaces + continue; + } + $params = array($b_id, trim($tag)); + $query->execute($params); + } + + return $b_id; + } +}
\ No newline at end of file |