X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=plugins%2FBookmark%2Fdeliciousbookmarkimporter.php;h=96fe621c2f7f28dcb4d1a2b31e073dc60200bec5;hb=7f1a30dc40ac772247425a49498d7f5d4550e01f;hp=061572d95a034ae10fa3a32dd082aceb8ce62956;hpb=a2000f889a4539e56449e0af0790ec1332a47ed8;p=quix0rs-gnu-social.git diff --git a/plugins/Bookmark/deliciousbookmarkimporter.php b/plugins/Bookmark/deliciousbookmarkimporter.php index 061572d95a..96fe621c2f 100644 --- a/plugins/Bookmark/deliciousbookmarkimporter.php +++ b/plugins/Bookmark/deliciousbookmarkimporter.php @@ -4,7 +4,7 @@ * Copyright (C) 2010, StatusNet, Inc. * * Importer class for Delicious.com bookmarks - * + * * PHP version 5 * * This program is free software: you can redistribute it and/or modify @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class DeliciousBookmarkImporter extends QueueHandler { /** @@ -52,7 +51,6 @@ class DeliciousBookmarkImporter extends QueueHandler * * @return string 'dlcsbkmk' */ - function transport() { return 'dlcsbkmk'; @@ -60,49 +58,29 @@ class DeliciousBookmarkImporter extends QueueHandler /** * Handle the data - * - * @param array $data array of user, dt, dd + * + * @param array $data associative array of user & bookmark info from DeliciousBackupImporter::importBookmark() * * @return boolean success value */ - function handle($data) { - list($user, $dt, $dd) = $data; - - $as = $dt->getElementsByTagName('a'); + $profile = Profile::staticGet('id', $data['profile_id']); - if ($as->length == 0) { - throw new ClientException(_("No tag in a
.")); + try { + $saved = Bookmark::saveNew($profile, + $data['title'], + $data['url'], + $data['tags'], + $data['description'], + array('created' => $data['created'], + 'distribute' => false)); + } catch (ClientException $e) { + // Most likely a duplicate -- continue on with the rest! + common_log(LOG_ERR, "Error importing delicious bookmark to $data[url]: " . $e->getMessage()); + return true; } - $a = $as->item(0); - - $private = $a->getAttribute('private'); - - if ($private != 0) { - throw new ClientException(_('Skipping private bookmark.')); - } - - if (!empty($dd)) { - $description = $dd->nodeValue; - } else { - $description = null; - } - - $title = $a->nodeValue; - $url = $a->getAttribute('href'); - $tags = $a->getAttribute('tags'); - $addDate = $a->getAttribute('add_date'); - $created = common_sql_date(intval($addDate)); - - $saved = Bookmark::saveNew($user->getProfile(), - $title, - $url, - $tags, - $description, - array('created' => $created)); - return true; } }