X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=lib%2Fjsonsearchresultslist.php;h=0f764a72be47e32905b195f99645bbc5cac90589;hb=722ff4d9c0cc47b5dda181136e03166eae712e87;hp=7ff32f829f76b50dea9a54ae9f993b11a8269f71;hpb=d35b2d3f3c2128b147a6fa897032262c1f632262;p=quix0rs-gnu-social.git diff --git a/lib/jsonsearchresultslist.php b/lib/jsonsearchresultslist.php index 7ff32f829f..0f764a72be 100644 --- a/lib/jsonsearchresultslist.php +++ b/lib/jsonsearchresultslist.php @@ -21,13 +21,13 @@ * * @category Search * @package StatusNet - * @author Zach Copley + * @author Zach Copley * @copyright 2009 StatusNet, Inc. * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ -if (!defined('LACONICA')) { +if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } @@ -36,7 +36,7 @@ if (!defined('LACONICA')) { * * @category Search * @package StatusNet - * @author Zach Copley + * @author Zach Copley * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ * @@ -101,12 +101,22 @@ class JSONSearchResultsList $this->max_id = (int)$this->notice->id; } + if ($this->since_id && $this->notice->id <= $this->since_id) { + break; + } + if ($cnt > $this->rpp) { break; } - $item = new ResultItem($this->notice); - array_push($this->results, $item); + $profile = $this->notice->getProfile(); + + // Don't show notices from deleted users + + if (!empty($profile)) { + $item = new ResultItem($this->notice); + array_push($this->results, $item); + } } $time_end = microtime(true); @@ -148,7 +158,7 @@ class JSONSearchResultsList * * @category UI * @package StatusNet - * @author Zach Copley + * @author Zach Copley * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ * @see JSONSearchResultsList @@ -207,7 +217,7 @@ class ResultItem $replier_profile = null; if ($this->notice->reply_to) { - $reply = Notice::staticGet(intval($this->notice->reply_to)); + $reply = Notice::getKV(intval($this->notice->reply_to)); if ($reply) { $replier_profile = $reply->getProfile(); } @@ -222,16 +232,11 @@ class ResultItem $this->id = $this->notice->id; $this->from_user_id = $this->profile->id; - $user = User::staticGet('id', $this->profile->id); - - $this->iso_language_code = $user->language; - + $this->iso_language_code = Profile_prefs::getConfigData($this->profile, 'site', 'language'); + $this->source = $this->getSourceLink($this->notice->source); - $avatar = $this->profile->getAvatar(AVATAR_STREAM_SIZE); - - $this->profile_image_url = ($avatar) ? - $avatar->displayUrl() : Avatar::defaultImage(AVATAR_STREAM_SIZE); + $this->profile_image_url = $this->profile->avatarUrl(AVATAR_STREAM_SIZE); $this->created_at = common_date_rfc2822($this->notice->created); } @@ -246,9 +251,9 @@ class ResultItem * * @return string a fully rendered source of the Notice */ - function getSourceLink($source) { + // Gettext translations for the below source types are available. $source_name = _($source); switch ($source) { case 'web': @@ -258,8 +263,8 @@ class ResultItem case 'api': break; default: - $ns = Notice_source::staticGet($source); - if ($ns) { + $ns = Notice_source::getKV($source); + if ($ns instanceof Notice_source) { $source_name = '' . $ns->name . ''; } break; @@ -267,5 +272,4 @@ class ResultItem return $source_name; } - }