forked from GNUsocial/gnu-social
		
	Merge branch '0.9.x' into 1.0.x
This commit is contained in:
		| @@ -297,7 +297,7 @@ class ShownoticeAction extends OwnerDesignAction | ||||
|         $avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); | ||||
|         $avatarUrl = ($avatar) ? | ||||
|                      $avatar->displayUrl() : | ||||
|                      Avatar::defaultImage($avatar_size); | ||||
|                      Avatar::defaultImage(AVATAR_PROFILE_SIZE); | ||||
|         $this->element('meta', array('property' => 'og:image', | ||||
|                                      'content' => $avatarUrl)); | ||||
|         $this->element('meta', array('property' => 'og:description', | ||||
|   | ||||
| @@ -216,7 +216,10 @@ class ShowstreamAction extends ProfileAction | ||||
|           ? $this->user->getNotices(($this->page-1)*NOTICES_PER_PAGE, NOTICES_PER_PAGE + 1) | ||||
|             : $this->user->getTaggedNotices($this->tag, ($this->page-1)*NOTICES_PER_PAGE, NOTICES_PER_PAGE + 1, 0, 0, null); | ||||
|  | ||||
|         $pnl = new ProfileNoticeList($notice, $this); | ||||
|         $pnl = null; | ||||
|         if (Event::handle('ShowStreamNoticeList', array($notice, $this, &$pnl))) { | ||||
|             $pnl = new ProfileNoticeList($notice, $this); | ||||
|         } | ||||
|         $cnt = $pnl->show(); | ||||
|         if (0 == $cnt) { | ||||
|             $this->showEmptyListMessage(); | ||||
|   | ||||
| @@ -7348,13 +7348,13 @@ msgstr "%s不是有效的颜色!应使用3或6个十六进制字符。" | ||||
| #: scripts/restoreuser.php:82 | ||||
| #, php-format | ||||
| msgid "Backup file for user %s (%s)" | ||||
| msgstr "用户 %s (%s) 的备份文件\n" | ||||
| msgstr "用户 %s (%s) 的备份文件" | ||||
|  | ||||
| #: scripts/restoreuser.php:88 | ||||
| msgid "No user specified; using backup user." | ||||
| msgstr "没有用户被指定;使用备份用户。\n" | ||||
| msgstr "没有用户被指定;使用备份用户。" | ||||
|  | ||||
| #: scripts/restoreuser.php:94 | ||||
| #, php-format | ||||
| msgid "%d entries in backup." | ||||
| msgstr "备份中有 %d 个条目。\n" | ||||
| msgstr "备份中有 %d 个条目。" | ||||
|   | ||||
| @@ -1,11 +1,19 @@ | ||||
| <?php | ||||
|  | ||||
| /** | ||||
|  * StatusNet - the distributed open-source microblogging tool | ||||
|  * Copyright (C) 2010, StatusNet, Inc. | ||||
|  * | ||||
|  * A plugin to allow anonymous users to favorite notices | ||||
|  * | ||||
|  * If you want to keep certain users from having anonymous faving for their | ||||
|  * notices initialize the plugin with the restricted array, e.g.: | ||||
|  * | ||||
|  * addPlugin( | ||||
|  *     'AnonymousFave', | ||||
|  *     array('restricted' => array('spock', 'kirk', 'bones')) | ||||
|  * ); | ||||
|  * | ||||
|  * | ||||
|  * PHP version 5 | ||||
|  * | ||||
|  * This program is free software: you can redistribute it and/or modify | ||||
| @@ -48,7 +56,13 @@ define('ANONYMOUS_FAVE_PLUGIN_VERSION', '0.1'); | ||||
|  * @license   http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 | ||||
|  * @link      http://status.net/ | ||||
|  */ | ||||
| class AnonymousFavePlugin extends Plugin { | ||||
|  | ||||
| class AnonymousFavePlugin extends Plugin | ||||
| { | ||||
|  | ||||
|     // Array of users who should not have anon faving. The default is | ||||
|     // that anonymous faving is allowed for all users. | ||||
|     public $restricted = array(); | ||||
|  | ||||
|     function onArgsInitialize() { | ||||
|         // We always want a session because we're tracking anon users | ||||
| @@ -128,16 +142,16 @@ class AnonymousFavePlugin extends Plugin { | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     function onStartInitializeRouter($m) { | ||||
|  | ||||
|     function onStartInitializeRouter($m) | ||||
|     { | ||||
|         $m->connect('main/anonfavor', array('action' => 'AnonFavor')); | ||||
|         $m->connect('main/anondisfavor', array('action' => 'AnonDisFavor')); | ||||
|  | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
|     function onStartShowNoticeOptions($item) { | ||||
|  | ||||
|     function onStartShowNoticeOptions($item) | ||||
|     { | ||||
|         if (!common_logged_in()) { | ||||
|             $item->out->elementStart('div', 'notice-options'); | ||||
|             $item->showFaveForm(); | ||||
| @@ -147,9 +161,9 @@ class AnonymousFavePlugin extends Plugin { | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
|     function onStartShowFaveForm($item) { | ||||
|  | ||||
|         if (!common_logged_in()) { | ||||
|     function onStartShowFaveForm($item) | ||||
|     { | ||||
|         if (!common_logged_in() && $this->hasAnonFaving($item)) { | ||||
|  | ||||
|             $profile = AnonymousFavePlugin::getAnonProfile(); | ||||
|             if (!empty($profile)) { | ||||
| @@ -188,9 +202,13 @@ class AnonymousFavePlugin extends Plugin { | ||||
|                     'class' => 'notice-tally' | ||||
|                 ) | ||||
|             ); | ||||
|             // TRANS: Tally for number of times a notice was favored. | ||||
|             // TRANS: %d is the number of times a notice was favored. | ||||
|             $out->raw(sprintf(_m("favored once", "favored %d times", $tally->count), $tally->count)); | ||||
|             $out->elementStart('span', array('class' => 'fave-tally-title')); | ||||
|             // TRANS: Label for tally for number of times a notice was favored. | ||||
|             $out->raw(sprintf(_m("Favored"))); | ||||
|             $out->elementEnd('span'); | ||||
|             $out->elementStart('span', array('class' => 'fave-tally')); | ||||
|             $out->raw($tally->count); | ||||
|             $out->elementEnd('span'); | ||||
|             $out->elementEnd('div'); | ||||
|         } | ||||
|     } | ||||
| @@ -205,8 +223,8 @@ class AnonymousFavePlugin extends Plugin { | ||||
|         $tally = Fave_tally::decrement($notice->id); | ||||
|     } | ||||
|  | ||||
|     static function createAnonProfile() { | ||||
|  | ||||
|     static function createAnonProfile() | ||||
|     { | ||||
|         // Get the anon user's IP, and turn it into a nickname | ||||
|         list($proxy, $ip) = common_client_ip(); | ||||
|  | ||||
| @@ -244,7 +262,8 @@ class AnonymousFavePlugin extends Plugin { | ||||
|         return $profile; | ||||
|     } | ||||
|  | ||||
|     static function getAnonProfile() { | ||||
|     static function getAnonProfile() | ||||
|     { | ||||
|  | ||||
|         $token = $_SESSION['anon_token']; | ||||
|         $anon = base64_decode($token); | ||||
| @@ -265,6 +284,26 @@ class AnonymousFavePlugin extends Plugin { | ||||
|         return $profile; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Determine whether a given NoticeListItem should have the | ||||
|      * anonymous fave/disfave form | ||||
|      * | ||||
|      * @param NoticeListItem $item | ||||
|      * | ||||
|      * @return boolean false if the profile associated with the notice is | ||||
|      *                       in the list of restricted profiles, otherwise | ||||
|      *                       return true | ||||
|      */ | ||||
|     function hasAnonFaving($item) | ||||
|     { | ||||
|         $profile = Profile::staticGet('id', $item->notice->profile_id); | ||||
|         if (in_array($profile->nickname, $this->restricted)) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Provide plugin version information. | ||||
|      * | ||||
|   | ||||
| @@ -221,7 +221,9 @@ class NoticeTitlePlugin extends Plugin | ||||
|         $title = Notice_title::fromNotice($nli->notice); | ||||
|  | ||||
|         if (!empty($title)) { | ||||
|             $nli->out->element('h4', array('class' => 'notice_title'), $title); | ||||
|             $nli->out->elementStart('h4', array('class' => 'notice_title')); | ||||
|             $nli->out->element('a', array('href' => $nli->notice->bestUrl()), $title); | ||||
|             $nli->out->elementEnd('h4'); | ||||
|         } | ||||
|  | ||||
|         return true; | ||||
|   | ||||
| @@ -38,7 +38,7 @@ if (empty($args[0]) || !Validate::uri($args[0])) { | ||||
| $feedurl = $args[0]; | ||||
|  | ||||
|  | ||||
| $sub = FeedSub::staticGet('topic', $feedurl); | ||||
| $sub = FeedSub::staticGet('uri', $feedurl); | ||||
| if (!$sub) { | ||||
|     print "Feed $feedurl is not subscribed.\n"; | ||||
|     exit(1); | ||||
| @@ -57,7 +57,7 @@ if ($ok) { | ||||
|     print "Could not confirm.\n"; | ||||
| } | ||||
|  | ||||
| $sub2 = FeedSub::staticGet('topic', $feedurl); | ||||
| $sub2 = FeedSub::staticGet('uri', $feedurl); | ||||
|  | ||||
| print "\n"; | ||||
| print "New state:\n"; | ||||
|   | ||||
| @@ -45,7 +45,7 @@ $skip = have_option('skip') ? intval(get_option_value('skip')) : 0; | ||||
| $count = have_option('count') ? intval(get_option_value('count')) : 0; | ||||
|  | ||||
|  | ||||
| $sub = FeedSub::staticGet('topic', $feedurl); | ||||
| $sub = FeedSub::staticGet('uri', $feedurl); | ||||
| if (!$sub) { | ||||
|     print "Feed $feedurl is not subscribed.\n"; | ||||
|     exit(1); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user