X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=actions%2Fapisearchatom.php;h=def999e63244d56ddda88dc45996717325265147;hb=7da925ca70c74c3466fd0477403109ed40d02175;hp=6743e92c84648ed8e3c13b862915cc59e9125557;hpb=c4b8f68a1a3ed6422a2ed1cb7a8b5b5c65011b5f;p=quix0rs-gnu-social.git diff --git a/actions/apisearchatom.php b/actions/apisearchatom.php index 6743e92c84..def999e632 100644 --- a/actions/apisearchatom.php +++ b/actions/apisearchatom.php @@ -31,8 +31,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } -require_once INSTALLDIR.'/lib/apiprivateauth.php'; - /** * Action for outputting search results in Twitter compatible Atom * format. @@ -92,8 +90,6 @@ class ApiSearchAtomAction extends ApiPrivateAuthAction */ function prepare($args) { - common_debug("in apisearchatom prepare()"); - parent::prepare($args); $this->query = $this->trimmed('q'); @@ -114,7 +110,7 @@ class ApiSearchAtomAction extends ApiPrivateAuthAction $this->page = 1; } - // TODO: Suppport since_id -- we need to tweak the backend + // TODO: Suppport max_id -- we need to tweak the backend // Search classes to support it. $this->since_id = $this->trimmed('since_id'); @@ -177,6 +173,10 @@ class ApiSearchAtomAction extends ApiPrivateAuthAction $this->max_id = $notice->id; } + if ($this->since_id && $notice->id <= $this->since_id) { + break; + } + if ($cnt > $this->rpp) { break; } @@ -327,7 +327,7 @@ class ApiSearchAtomAction extends ApiPrivateAuthAction 'rel' => 'alternate', 'href' => $nurl)); $this->element('title', null, common_xml_safe_str(trim($notice->content))); - $this->element('content', array('type' => 'html'), $notice->rendered); + $this->element('content', array('type' => 'html'), $notice->getRendered()); $this->element('updated', null, common_date_w3dtf($notice->created)); $this->element('link', array('type' => 'image/png', // XXX: Twitter uses rel="image" (not valid) @@ -337,21 +337,21 @@ class ApiSearchAtomAction extends ApiPrivateAuthAction // @todo: Here is where we'd put in a link to an atom feed for threads $source = null; + $source_link = null; $ns = $notice->getSource(); - if ($ns) { - if (!empty($ns->name) && !empty($ns->url)) { - $source = '' - . htmlspecialchars($ns->name) - . ''; - } else { - $source = $ns->code; + if ($ns instanceof Notice_source) { + $source = $ns->code; + if (!empty($ns->url)) { + $source_link = $ns->url; + if (!empty($ns->name)) { + $source = $ns->name; + } } } $this->element("twitter:source", null, $source); + $this->element("twitter:source_link", null, $source_link); $this->elementStart('author');