From a5724cca4956e3fcfe359bd72b4d874832b31393 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 11 Dec 2009 10:10:25 -0500 Subject: do some moving around of forwarding stuff --- lib/repeatform.php | 147 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 147 insertions(+) create mode 100644 lib/repeatform.php (limited to 'lib') diff --git a/lib/repeatform.php b/lib/repeatform.php new file mode 100644 index 000000000..2052856ae --- /dev/null +++ b/lib/repeatform.php @@ -0,0 +1,147 @@ +. + * + * @category Form + * @package StatusNet + * @author Evan Prodromou + * @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('STATUSNET') && !defined('LACONICA')) { + exit(1); +} + +require_once INSTALLDIR.'/lib/form.php'; + +/** + * Form for forwarding a notice + * + * @category Form + * @package StatusNet + * @author Evan Prodromou + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class ForwardForm extends Form +{ + /** + * Notice to forward + */ + + var $notice = null; + + /** + * Constructor + * + * @param HTMLOutputter $out output channel + * @param Notice $notice notice to forward + */ + + function __construct($out=null, $notice=null) + { + parent::__construct($out); + + $this->notice = $notice; + } + + /** + * ID of the form + * + * @return int ID of the form + */ + + function id() + { + return 'forward-' . $this->notice->id; + } + + /** + * Action of the form + * + * @return string URL of the action + */ + + function action() + { + return common_local_url('forward'); + } + + /** + * Include a session token for CSRF protection + * + * @return void + */ + + function sessionToken() + { + $this->out->hidden('token-' . $this->notice->id, + common_session_token()); + } + + /** + * Legend of the Form + * + * @return void + */ + function formLegend() + { + $this->out->element('legend', null, _('Forward this notice')); + } + + /** + * Data elements + * + * @return void + */ + + function formData() + { + $this->out->hidden('notice-n'.$this->notice->id, + $this->notice->id, + 'notice'); + } + + /** + * Action elements + * + * @return void + */ + + function formActions() + { + $this->out->submit('forward-submit-' . $this->notice->id, + _('Forward'), 'submit', null, _('Forward this notice')); + } + + /** + * Class of the form. + * + * @return string the form's class + */ + + function formClass() + { + return 'form_forward'; + } +} -- cgit v1.2.3-54-g00ecf From 81843f2acd5375a9072d091fd58c6a6af079295e Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 11 Dec 2009 10:49:26 -0500 Subject: show the repeat form in notice lists --- classes/Profile.php | 11 +++++++++++ lib/noticelist.php | 21 +++++++++++++++++++++ lib/repeatform.php | 26 ++++++++++++-------------- 3 files changed, 44 insertions(+), 14 deletions(-) (limited to 'lib') diff --git a/classes/Profile.php b/classes/Profile.php index 4b2e09006..03196447b 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -716,4 +716,15 @@ class Profile extends Memcached_DataObject } return $result; } + + function hasRepeated($notice_id) + { + // XXX: not really a pkey, but should work + + $notice = Memcached_DataObject::pkeyGet('Notice', + array('profile_id' => $this->id, + 'repeat_of' => $notice_id)); + + return !empty($notice); + } } diff --git a/lib/noticelist.php b/lib/noticelist.php index 21cec528f..924056ece 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -212,6 +212,7 @@ class NoticeListItem extends Widget $this->out->elementStart('div', 'notice-options'); $this->showFaveForm(); $this->showReplyLink(); + $this->showRepeatForm(); $this->showDeleteLink(); $this->out->elementEnd('div'); } @@ -551,6 +552,26 @@ class NoticeListItem extends Widget } } + /** + * show the form to repeat a notice + * + * @return void + */ + + function showRepeatForm() + { + $user = common_current_user(); + if ($user && $user->id != $this->notice->profile_id) { + $profile = $user->getProfile(); + if ($profile->hasRepeated($this->notice->id)) { + $this->out->text(_('Repeated')); + } else { + $rf = new RepeatForm($this->out, $this->notice); + $rf->show(); + } + } + } + /** * finish the notice * diff --git a/lib/repeatform.php b/lib/repeatform.php index 2052856ae..50e5d6dbe 100644 --- a/lib/repeatform.php +++ b/lib/repeatform.php @@ -2,7 +2,7 @@ /** * StatusNet, the distributed open-source microblogging tool * - * Form for forwarding a notice + * Form for repeating a notice * * PHP version 5 * @@ -27,14 +27,12 @@ * @link http://status.net/ */ -if (!defined('STATUSNET') && !defined('LACONICA')) { +if (!defined('STATUSNET')) { exit(1); } -require_once INSTALLDIR.'/lib/form.php'; - /** - * Form for forwarding a notice + * Form for repeating a notice * * @category Form * @package StatusNet @@ -43,10 +41,10 @@ require_once INSTALLDIR.'/lib/form.php'; * @link http://status.net/ */ -class ForwardForm extends Form +class RepeatForm extends Form { /** - * Notice to forward + * Notice to repeat */ var $notice = null; @@ -55,7 +53,7 @@ class ForwardForm extends Form * Constructor * * @param HTMLOutputter $out output channel - * @param Notice $notice notice to forward + * @param Notice $notice notice to repeat */ function __construct($out=null, $notice=null) @@ -73,7 +71,7 @@ class ForwardForm extends Form function id() { - return 'forward-' . $this->notice->id; + return 'repeat-' . $this->notice->id; } /** @@ -84,7 +82,7 @@ class ForwardForm extends Form function action() { - return common_local_url('forward'); + return common_local_url('repeat'); } /** @@ -106,7 +104,7 @@ class ForwardForm extends Form */ function formLegend() { - $this->out->element('legend', null, _('Forward this notice')); + $this->out->element('legend', null, _('Repeat this notice')); } /** @@ -130,8 +128,8 @@ class ForwardForm extends Form function formActions() { - $this->out->submit('forward-submit-' . $this->notice->id, - _('Forward'), 'submit', null, _('Forward this notice')); + $this->out->submit('repeat-submit-' . $this->notice->id, + _('Repeat'), 'submit', null, _('Repeat this notice')); } /** @@ -142,6 +140,6 @@ class ForwardForm extends Form function formClass() { - return 'form_forward'; + return 'form_repeat'; } } -- cgit v1.2.3-54-g00ecf From 79f81ad76d413908c097c121912eff233aebc483 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 11 Dec 2009 11:29:51 -0500 Subject: change Notice::saveNew() to use named arguments for little-used options --- actions/apistatusesupdate.php | 29 ++++++++++++++++------------- actions/newnotice.php | 10 ++++++---- classes/Notice.php | 15 ++++++++++++--- lib/command.php | 5 +++-- lib/oauthstore.php | 5 ++--- plugins/Facebook/facebookaction.php | 5 +++-- 6 files changed, 42 insertions(+), 27 deletions(-) (limited to 'lib') diff --git a/actions/apistatusesupdate.php b/actions/apistatusesupdate.php index 85a7c8c08..10bbc5ace 100644 --- a/actions/apistatusesupdate.php +++ b/actions/apistatusesupdate.php @@ -231,19 +231,22 @@ class ApiStatusesUpdateAction extends ApiAuthAction } } - $this->notice = Notice::saveNew( - $this->user->id, - html_entity_decode($status_shortened, ENT_NOQUOTES, 'UTF-8'), - $this->source, - 1, - $reply_to, - null, - null, - empty($location) ? null : $location->lat, - empty($location) ? null : $location->lon, - empty($location) ? null : $location->location_id, - empty($location) ? null : $location->location_ns - ); + $content = html_entity_decode($status_shortened, ENT_NOQUOTES, 'UTF-8'), + + $options = array('reply_to' => $reply_to); + + if (!empty($location)) { + $options['lat'] = $location->lat; + $options['lon'] = $location->lon; + $options['location_id'] = $location->location_id; + $options['location_ns'] = $location->location_ns; + } + + $this->notice = + Notice::saveNew($this->user->id, + $content, + $this->source, + $options); if (isset($upload)) { $upload->attachToNotice($this->notice); diff --git a/actions/newnotice.php b/actions/newnotice.php index dd6da0b01..c6c70e326 100644 --- a/actions/newnotice.php +++ b/actions/newnotice.php @@ -187,10 +187,12 @@ class NewnoticeAction extends Action } } - $notice = Notice::saveNew($user->id, $content_shortened, 'web', 1, - ($replyto == 'false') ? null : $replyto, - null, null, - $lat, $lon, $location_id, $location_ns); + $notice = Notice::saveNew($user->id, $content_shortened, 'web', + array('reply_to' => ($replyto == 'false') ? null : $replyto, + 'lat' => $lat, + 'lon' => $lon, + 'location_id' => $location_id, + 'location_ns' => $location_ns)); if (isset($upload)) { $upload->attachToNotice($notice); diff --git a/classes/Notice.php b/classes/Notice.php index c36c5a9c6..4422866fa 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -167,9 +167,18 @@ class Notice extends Memcached_DataObject } } - static function saveNew($profile_id, $content, $source=null, - $is_local=Notice::LOCAL_PUBLIC, $reply_to=null, $uri=null, $created=null, - $lat=null, $lon=null, $location_id=null, $location_ns=null) { + static function saveNew($profile_id, $content, $source, $options=null) { + + if (!empty($options)) { + extract($options); + if (!isset($reply_to)) { + $reply_to = NULL; + } + } + + if (empty($is_local)) { + $is_local = Notice::LOCAL_PUBLIC; + } $profile = Profile::staticGet($profile_id); diff --git a/lib/command.php b/lib/command.php index 450db9da3..085331f82 100644 --- a/lib/command.php +++ b/lib/command.php @@ -433,8 +433,9 @@ class ReplyCommand extends Command return; } - $notice = Notice::saveNew($this->user->id, $this->text, $channel->source(), 1, - $notice->id); + $notice = Notice::saveNew($this->user->id, $this->text, $channel->source(), + array('reply_to' => $notice->id)); + if ($notice) { $channel->output($this->user, sprintf(_('Reply to %s sent'), $recipient->nickname)); } else { diff --git a/lib/oauthstore.php b/lib/oauthstore.php index e34bf8a5e..df63cc151 100644 --- a/lib/oauthstore.php +++ b/lib/oauthstore.php @@ -359,9 +359,8 @@ class StatusNetOAuthDataStore extends OAuthDataStore $notice = Notice::saveNew($author->id, $omb_notice->getContent(), 'omb', - false, - null, - $omb_notice->getIdentifierURI()); + array('is_local' => Notice::REMOTE_OMB, + 'uri' => $omb_notice->getIdentifierURI())); common_broadcast_notice($notice, true); } diff --git a/plugins/Facebook/facebookaction.php b/plugins/Facebook/facebookaction.php index 705bb2780..24bf215fd 100644 --- a/plugins/Facebook/facebookaction.php +++ b/plugins/Facebook/facebookaction.php @@ -445,8 +445,9 @@ class FacebookAction extends Action $replyto = $this->trimmed('inreplyto'); try { - $notice = Notice::saveNew($user->id, $content, - 'web', 1, ($replyto == 'false') ? null : $replyto); + $notice = Notice::saveNew($user->id, $content, 'web', + array('reply_to' => ($replyto == 'false') ? null : $replyto)); + } catch (Exception $e) { $this->showPage($e->getMessage()); return; -- cgit v1.2.3-54-g00ecf From afc86a86d36dc8101c81d5d009546e4629db34a3 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 11 Dec 2009 11:51:09 -0500 Subject: save repeats from the form --- actions/repeat.php | 20 ++++++++++---------- classes/Notice.php | 23 ++++++++++++++++++++++- lib/router.php | 1 + 3 files changed, 33 insertions(+), 11 deletions(-) (limited to 'lib') diff --git a/actions/repeat.php b/actions/repeat.php index 194833fe0..a1c5f443f 100644 --- a/actions/repeat.php +++ b/actions/repeat.php @@ -1,7 +1,7 @@ user = common_current_user(); if (empty($this->user)) { - $this->clientError(_("Only logged-in users can forward notices.")); + $this->clientError(_("Only logged-in users can repeat notices.")); return false; } @@ -73,7 +73,7 @@ class ForwardAction extends Action } if ($this->user->id == $this->notice->profile_id) { - $this->clientError(_("You can't forward your own notice.")); + $this->clientError(_("You can't repeat your own notice.")); return false; } @@ -86,8 +86,8 @@ class ForwardAction extends Action $profile = $this->user->getProfile(); - if ($profile->hasForwarded($id)) { - $this->clientError(_("You already forwarded that notice.")); + if ($profile->hasRepeated($id)) { + $this->clientError(_("You already repeated that notice.")); return false; } @@ -104,15 +104,15 @@ class ForwardAction extends Action function handle($args) { - $forward = Forward::saveNew($this->user->id, $this->notice->id); + $repeat = $this->notice->repeat($this->user->id, 'web'); if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); - $this->element('title', null, _('Forwarded')); + $this->element('title', null, _('Repeated')); $this->elementEnd('head'); $this->elementStart('body'); - $this->element('p', array('id' => 'forward_response'), _('Forwarded!')); + $this->element('p', array('id' => 'repeat_response'), _('Repeated!')); $this->elementEnd('body'); $this->elementEnd('html'); } else { diff --git a/classes/Notice.php b/classes/Notice.php index 228201188..82753fbdd 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -236,7 +236,14 @@ class Notice extends Memcached_DataObject $notice->source = $source; $notice->uri = $uri; - $notice->reply_to = self::getReplyTo($reply_to, $profile_id, $source, $final); + // Handle repeat case + + if (isset($repeat_of)) { + $notice->repeat_of = $repeat_of; + $notice->reply_to = $repeat_of; + } else { + $notice->reply_to = self::getReplyTo($reply_to, $profile_id, $source, $final); + } if (!empty($notice->reply_to)) { $reply = Notice::staticGet('id', $notice->reply_to); @@ -1434,4 +1441,18 @@ class Notice extends Memcached_DataObject return $location; } + + function repeat($repeater_id, $source) + { + $author = Profile::staticGet('id', $this->profile_id); + + // FIXME: truncate on long repeats...? + + $content = sprintf(_('RT @%1$s %2$s'), + $author->nickname, + $this->content); + + return self::saveNew($repeater_id, $content, $source, + array('repeat_of' => $this->id)); + } } diff --git a/lib/router.php b/lib/router.php index 37525319f..142206c16 100644 --- a/lib/router.php +++ b/lib/router.php @@ -99,6 +99,7 @@ class Router 'groupblock', 'groupunblock', 'sandbox', 'unsandbox', 'silence', 'unsilence', + 'repeat', 'deleteuser'); foreach ($main as $a) { -- cgit v1.2.3-54-g00ecf From 962f391f3ebd4908ae7187673426f03e57083b02 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 11 Dec 2009 12:10:58 -0500 Subject: show original notice in repeat, with repeat info below --- lib/noticelist.php | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 58 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/noticelist.php b/lib/noticelist.php index 924056ece..7319a62ea 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -147,6 +147,10 @@ class NoticeListItem extends Widget var $notice = null; + /** The notice that was repeated. */ + + var $repeat = null; + /** The profile of the author of the notice, extracted once for convenience. */ var $profile = null; @@ -162,8 +166,13 @@ class NoticeListItem extends Widget function __construct($notice, $out=null) { parent::__construct($out); - $this->notice = $notice; - $this->profile = $notice->getProfile(); + if (!empty($notice->repeat_of)) { + $this->notice = Notice::staticGet('id', $notice->repeat_of); + $this->repeat = $notice; + } else { + $this->notice = $notice; + } + $this->profile = $this->notice->getProfile(); } /** @@ -202,6 +211,7 @@ class NoticeListItem extends Widget $this->showNoticeSource(); $this->showNoticeLocation(); $this->showContext(); + $this->showRepeat(); $this->out->elementEnd('div'); } @@ -508,6 +518,52 @@ class NoticeListItem extends Widget } } + /** + * show a link to the author of repeat + * + * @return void + */ + + function showRepeat() + { + if (!empty($this->repeat)) { + + $repeater = Profile::staticGet('id', $this->repeat->profile_id); + + $attrs = array('href' => $repeater->profileurl, + 'class' => 'url'); + + if (!empty($repeater->fullname)) { + $attrs['title'] = $repeater->fullname . ' (' . $repeater->nickname . ')'; + } + + $this->out->elementStart('span', 'repeat'); + + $this->out->elementStart('a', $attrs); + + $avatar = $repeater->getAvatar(AVATAR_MINI_SIZE); + + $this->out->element('img', array('src' => ($avatar) ? + $avatar->displayUrl() : + Avatar::defaultImage(AVATAR_MINI_SIZE), + 'class' => 'avatar photo', + 'width' => AVATAR_MINI_SIZE, + 'height' => AVATAR_MINI_SIZE, + 'alt' => + ($repeater->fullname) ? + $repeater->fullname : + $repeater->nickname)); + + $this->out->elementEnd('a'); + + $text_link = XMLStringer::estring('a', $attrs, $repeater->nickname); + + $this->out->raw(sprintf(_('Repeated by %s'), $text_link)); + + $this->out->elementEnd('span'); + } + } + /** * show a link to reply to the current notice * -- cgit v1.2.3-54-g00ecf From 1c370bb277d9b707a5f1956dd5e6856a9b278f5e Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 11 Dec 2009 12:39:29 -0500 Subject: show repeated notices correctly in API output --- lib/api.php | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/api.php b/lib/api.php index eacb80dbe..12e3ba531 100644 --- a/lib/api.php +++ b/lib/api.php @@ -213,6 +213,20 @@ class ApiAction extends Action } function twitterStatusArray($notice, $include_user=true) + { + $base = $this->twitterSimpleStatusArray($notice, $include_user); + + if (empty($notice->repeat_of)) { + return $base; + } else { + $original = Notice::staticGet('id', $notice->repeat_of); + $original_array = $this->twitterSimpleStatusArray($original, $include_user); + $original_array['retweeted_status'] = $base; + return $original_array; + } + } + + function twitterSimpleStatusArray($notice, $include_user=true) { $profile = $notice->getProfile(); @@ -446,9 +460,9 @@ class ApiAction extends Action } } - function showTwitterXmlStatus($twitter_status) + function showTwitterXmlStatus($twitter_status, $tag='status') { - $this->elementStart('status'); + $this->elementStart($tag); foreach($twitter_status as $element => $value) { switch ($element) { case 'user': @@ -463,11 +477,14 @@ class ApiAction extends Action case 'geo': $this->showGeoRSS($value); break; + case 'retweeted_status': + $this->showTwitterXmlStatus($value, 'retweeted_status'); + break; default: $this->element($element, null, $value); } } - $this->elementEnd('status'); + $this->elementEnd($tag); } function showTwitterXmlGroup($twitter_group) -- cgit v1.2.3-54-g00ecf From 683edfd199ae150afa74993521c4c65d76b1e19d Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 11 Dec 2009 12:40:05 -0500 Subject: show repeated notices correctly in API output --- actions/apistatusesretweet.php | 136 +++++++++++++++++++++++++++++++++++++++++ lib/router.php | 5 ++ 2 files changed, 141 insertions(+) create mode 100644 actions/apistatusesretweet.php (limited to 'lib') diff --git a/actions/apistatusesretweet.php b/actions/apistatusesretweet.php new file mode 100644 index 000000000..fc71d2274 --- /dev/null +++ b/actions/apistatusesretweet.php @@ -0,0 +1,136 @@ +. + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @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('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR . '/lib/apiauth.php'; +require_once INSTALLDIR . '/lib/mediafile.php'; + +/** + * Repeat a notice through the API + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class ApiStatusesRetweetAction extends ApiAuthAction +{ + var $original = null; + + /** + * Take arguments for running + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + * + */ + + function prepare($args) + { + parent::prepare($args); + + if ($_SERVER['REQUEST_METHOD'] != 'POST') { + $this->clientError(_('This method requires a POST.'), + 400, $this->format); + return false; + } + + $id = $this->trimmed('id'); + + $this->original = Notice::staticGet('id', $id); + + if (empty($this->original)) { + $this->clientError(_('No such notice'), + 400, $this->format); + return false; + } + + $this->user = $this->auth_user; + + if ($this->user->id == $notice->profile_id) { + $this->clientError(_('Cannot repeat your own notice')); + 400, $this->format); + return false; + } + + $profile = $this->user->getProfile(); + + if ($profile->hasRepeated($id)) { + $this->clientError(_('Already repeated that notice'), + 400, $this->format); + return false; + } + + return true; + } + + /** + * Handle the request + * + * Make a new notice for the update, save it, and show it + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + $repeat = $this->original->repeat($this->user->id, $this->source); + + common_broadcast_notice($repeat); + + $this->showNotice($repeat); + } + + /** + * Show the resulting notice + * + * @return void + */ + + function showNotice($notice) + { + if (!empty($notice)) { + if ($this->format == 'xml') { + $this->showSingleXmlStatus($notice); + } elseif ($this->format == 'json') { + $this->show_single_json_status($notice); + } + } + } +} diff --git a/lib/router.php b/lib/router.php index 142206c16..835339720 100644 --- a/lib/router.php +++ b/lib/router.php @@ -359,6 +359,11 @@ class Router 'id' => '[0-9]+', 'format' => '(xml|json)')); + $m->connect('api/statuses/retweet/:id.:format', + array('action' => 'ApiStatusesRetweet', + 'id' => '[0-9]+', + 'format' => '(xml|json)')); + // users $m->connect('api/users/show.:format', -- cgit v1.2.3-54-g00ecf From 59e5958d3afa0a5613efbc1ed4546ce63946fe43 Mon Sep 17 00:00:00 2001 From: Hue Bastard Date: Tue, 8 Dec 2009 21:28:11 +1000 Subject: ticket 2055: added logos to Atom and RSS feeds --- actions/apitimelinefavorites.php | 6 ++++-- actions/apitimelinefriends.php | 6 ++++-- actions/apitimelinegroup.php | 7 +++++-- actions/apitimelinementions.php | 6 ++++-- actions/apitimelinepublic.php | 5 +++-- actions/apitimelinetag.php | 6 ++++-- actions/apitimelineuser.php | 6 ++++-- lib/api.php | 27 +++++++++++++++++++++------ 8 files changed, 49 insertions(+), 20 deletions(-) (limited to 'lib') diff --git a/actions/apitimelinefavorites.php b/actions/apitimelinefavorites.php index f84d7b4cb..77e5cea1b 100644 --- a/actions/apitimelinefavorites.php +++ b/actions/apitimelinefavorites.php @@ -101,6 +101,7 @@ class ApiTimelineFavoritesAction extends ApiBareAuthAction function showTimeline() { $profile = $this->user->getProfile(); + $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); $sitename = common_config('site', 'name'); $title = sprintf( @@ -121,20 +122,21 @@ class ApiTimelineFavoritesAction extends ApiBareAuthAction $profile->getBestName(), $this->user->nickname ); + $logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); switch($this->format) { case 'xml': $this->showXmlTimeline($this->notices); break; case 'rss': - $this->showRssTimeline($this->notices, $title, $link, $subtitle); + $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo, null, $logo); break; case 'atom': $selfuri = common_root_url() . ltrim($_SERVER['QUERY_STRING'], 'p='); $this->showAtomTimeline( $this->notices, $title, $id, $link, $subtitle, - null, $selfuri + null, $selfuri, $logo ); break; case 'json': diff --git a/actions/apitimelinefriends.php b/actions/apitimelinefriends.php index e84f77372..09ba7a969 100644 --- a/actions/apitimelinefriends.php +++ b/actions/apitimelinefriends.php @@ -110,6 +110,7 @@ class ApiTimelineFriendsAction extends ApiBareAuthAction function showTimeline() { $profile = $this->user->getProfile(); + $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); $sitename = common_config('site', 'name'); $title = sprintf(_("%s and friends"), $this->user->nickname); $taguribase = common_config('integration', 'taguri'); @@ -121,13 +122,14 @@ class ApiTimelineFriendsAction extends ApiBareAuthAction _('Updates from %1$s and friends on %2$s!'), $this->user->nickname, $sitename ); + $logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); switch($this->format) { case 'xml': $this->showXmlTimeline($this->notices); break; case 'rss': - $this->showRssTimeline($this->notices, $title, $link, $subtitle); + $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); break; case 'atom': @@ -144,7 +146,7 @@ class ApiTimelineFriendsAction extends ApiBareAuthAction $this->showAtomTimeline( $this->notices, $title, $id, $link, - $subtitle, null, $selfuri + $subtitle, null, $selfuri, $logo ); break; case 'json': diff --git a/actions/apitimelinegroup.php b/actions/apitimelinegroup.php index de13e7eb9..22c577f39 100644 --- a/actions/apitimelinegroup.php +++ b/actions/apitimelinegroup.php @@ -105,6 +105,7 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction function showTimeline() { $sitename = common_config('site', 'name'); + $avatar = $this->group->homepage_logo; $title = sprintf(_("%s timeline"), $this->group->nickname); $taguribase = common_config('integration', 'taguri'); $id = "tag:$taguribase:GroupTimeline:" . $this->group->id; @@ -117,13 +118,14 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction $this->group->nickname, $sitename ); + $logo = ($avatar) ? $avatar : User_group::defaultLogo(AVATAR_PROFILE_SIZE); switch($this->format) { case 'xml': $this->showXmlTimeline($this->notices); break; case 'rss': - $this->showRssTimeline($this->notices, $title, $link, $subtitle); + $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); break; case 'atom': $selfuri = common_root_url() . @@ -136,7 +138,8 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction $link, $subtitle, null, - $selfuri + $selfuri, + $logo ); break; case 'json': diff --git a/actions/apitimelinementions.php b/actions/apitimelinementions.php index 0956ccdce..19f40aebc 100644 --- a/actions/apitimelinementions.php +++ b/actions/apitimelinementions.php @@ -110,6 +110,7 @@ class ApiTimelineMentionsAction extends ApiBareAuthAction function showTimeline() { $profile = $this->user->getProfile(); + $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); $sitename = common_config('site', 'name'); $title = sprintf( @@ -126,20 +127,21 @@ class ApiTimelineMentionsAction extends ApiBareAuthAction _('%1$s updates that reply to updates from %2$s / %3$s.'), $sitename, $this->user->nickname, $profile->getBestName() ); + $logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); switch($this->format) { case 'xml': $this->showXmlTimeline($this->notices); break; case 'rss': - $this->showRssTimeline($this->notices, $title, $link, $subtitle); + $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); break; case 'atom': $selfuri = common_root_url() . ltrim($_SERVER['QUERY_STRING'], 'p='); $this->showAtomTimeline( $this->notices, $title, $id, $link, $subtitle, - null, $selfuri + null, $selfuri, $logo ); break; case 'json': diff --git a/actions/apitimelinepublic.php b/actions/apitimelinepublic.php index 7a8504259..633f3c36e 100644 --- a/actions/apitimelinepublic.php +++ b/actions/apitimelinepublic.php @@ -103,6 +103,7 @@ class ApiTimelinePublicAction extends ApiPrivateAuthAction function showTimeline() { $sitename = common_config('site', 'name'); + $sitelogo = (common_config('site', 'logo')) ? common_config('site', 'logo') : Theme::path('logo.png'); $title = sprintf(_("%s public timeline"), $sitename); $taguribase = common_config('integration', 'taguri'); $id = "tag:$taguribase:PublicTimeline"; @@ -114,13 +115,13 @@ class ApiTimelinePublicAction extends ApiPrivateAuthAction $this->showXmlTimeline($this->notices); break; case 'rss': - $this->showRssTimeline($this->notices, $title, $link, $subtitle); + $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $sitelogo); break; case 'atom': $selfuri = common_root_url() . 'api/statuses/public_timeline.atom'; $this->showAtomTimeline( $this->notices, $title, $id, $link, - $subtitle, null, $selfuri + $subtitle, null, $selfuri, $sitelogo ); break; case 'json': diff --git a/actions/apitimelinetag.php b/actions/apitimelinetag.php index 452593c11..1a50520f4 100644 --- a/actions/apitimelinetag.php +++ b/actions/apitimelinetag.php @@ -98,6 +98,7 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction function showTimeline() { $sitename = common_config('site', 'name'); + $sitelogo = (common_config('site', 'logo')) ? common_config('site', 'logo') : Theme::path('logo.png'); $title = sprintf(_("Notices tagged with %s"), $this->tag); $link = common_local_url( 'tag', @@ -116,7 +117,7 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction $this->showXmlTimeline($this->notices); break; case 'rss': - $this->showRssTimeline($this->notices, $title, $link, $subtitle); + $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $sitelogo); break; case 'atom': $selfuri = common_root_url() . @@ -129,7 +130,8 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction $link, $subtitle, null, - $selfuri + $selfuri, + $sitelogo ); break; case 'json': diff --git a/actions/apitimelineuser.php b/actions/apitimelineuser.php index ca1d21772..14c62a52e 100644 --- a/actions/apitimelineuser.php +++ b/actions/apitimelineuser.php @@ -112,6 +112,7 @@ class ApiTimelineUserAction extends ApiBareAuthAction function showTimeline() { $profile = $this->user->getProfile(); + $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); $sitename = common_config('site', 'name'); $title = sprintf(_("%s timeline"), $this->user->nickname); @@ -125,6 +126,7 @@ class ApiTimelineUserAction extends ApiBareAuthAction _('Updates from %1$s on %2$s!'), $this->user->nickname, $sitename ); + $logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); // FriendFeed's SUP protocol // Also added RSS and Atom feeds @@ -139,7 +141,7 @@ class ApiTimelineUserAction extends ApiBareAuthAction case 'rss': $this->showRssTimeline( $this->notices, $title, $link, - $subtitle, $suplink + $subtitle, $suplink, $logo ); break; case 'atom': @@ -153,7 +155,7 @@ class ApiTimelineUserAction extends ApiBareAuthAction } $this->showAtomTimeline( $this->notices, $title, $id, $link, - $subtitle, $suplink, $selfuri + $subtitle, $suplink, $selfuri, $logo ); break; case 'json': diff --git a/lib/api.php b/lib/api.php index eacb80dbe..7ebe65dbb 100644 --- a/lib/api.php +++ b/lib/api.php @@ -134,17 +134,19 @@ class ApiAction extends Action $twitter_user['protected'] = false; # not supported by StatusNet yet $twitter_user['followers_count'] = $profile->subscriberCount(); - $user = $profile->getUser(); $design = null; + $user = $profile->getUser(); // Note: some profiles don't have an associated user - $defaultDesign = Design::siteDesign(); - if (!empty($user)) { $design = $user->getDesign(); } + if (empty($design)) { + $design = Design::siteDesign(); + } + $color = Design::toWebColor(empty($design->backgroundcolor) ? $defaultDesign->backgroundcolor : $design->backgroundcolor); $twitter_user['profile_background_color'] = ($color == null) ? '' : '#'.$color->hexValue(); $color = Design::toWebColor(empty($design->textcolor) ? $defaultDesign->textcolor : $design->textcolor); @@ -163,7 +165,7 @@ class ApiAction extends Action $timezone = 'UTC'; - if (!empty($user) && !empty($user->timezone)) { + if ($user->timezone) { $timezone = $user->timezone; } @@ -586,7 +588,7 @@ class ApiAction extends Action $this->endDocument('xml'); } - function showRssTimeline($notice, $title, $link, $subtitle, $suplink=null) + function showRssTimeline($notice, $title, $link, $subtitle, $suplink=null, $logo=null) { $this->initDocument('rss'); @@ -600,6 +602,15 @@ class ApiAction extends Action 'href' => $suplink, 'type' => 'application/json')); } + + if (!is_null($logo)) { + $this->elementStart('image'); + $this->element('link', null, $link); + $this->element('title', null, $title); + $this->element('url', null, $logo); + $this->elementEnd('image'); + } + $this->element('description', null, $subtitle); $this->element('language', null, 'en-us'); $this->element('ttl', null, '40'); @@ -619,7 +630,7 @@ class ApiAction extends Action $this->endTwitterRss(); } - function showAtomTimeline($notice, $title, $id, $link, $subtitle=null, $suplink=null, $selfuri=null) + function showAtomTimeline($notice, $title, $id, $link, $subtitle=null, $suplink=null, $selfuri=null, $logo=null) { $this->initDocument('atom'); @@ -628,6 +639,10 @@ class ApiAction extends Action $this->element('id', null, $id); $this->element('link', array('href' => $link, 'rel' => 'alternate', 'type' => 'text/html'), null); + if (!is_null($logo)) { + $this->element('logo',null,$logo); + } + if (!is_null($suplink)) { # For FriendFeed's SUP protocol $this->element('link', array('rel' => 'http://api.friendfeed.com/2008/03#sup', -- cgit v1.2.3-54-g00ecf From 78a649ca0af3ffbf1fd23d5ae9e84def7befa79e Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Sat, 12 Dec 2009 18:21:57 +0100 Subject: Localisation updates for !StatusNet from !translatewiki.net !sntrans * add Egyptian Spoken Arabic (arz) --- lib/language.php | 1 + locale/arz/LC_MESSAGES/statusnet.po | 5214 +++++++++++++++++++++++++++++++++++ 2 files changed, 5215 insertions(+) create mode 100644 locale/arz/LC_MESSAGES/statusnet.po (limited to 'lib') diff --git a/lib/language.php b/lib/language.php index 916cee7ed..c037d30c3 100644 --- a/lib/language.php +++ b/lib/language.php @@ -272,6 +272,7 @@ function get_nice_language_list() function get_all_languages() { return array( 'ar' => array('q' => 0.8, 'lang' => 'ar', 'name' => 'Arabic', 'direction' => 'rtl'), + 'arz' => array('q' => 0.8, 'lang' => 'arz', 'name' => 'Egyptian Spoken Arabic', 'direction' => 'rtl'), 'bg' => array('q' => 0.8, 'lang' => 'bg', 'name' => 'Bulgarian', 'direction' => 'ltr'), 'ca' => array('q' => 0.5, 'lang' => 'ca', 'name' => 'Catalan', 'direction' => 'ltr'), 'cs' => array('q' => 0.5, 'lang' => 'cs', 'name' => 'Czech', 'direction' => 'ltr'), diff --git a/locale/arz/LC_MESSAGES/statusnet.po b/locale/arz/LC_MESSAGES/statusnet.po new file mode 100644 index 000000000..6a2ccdf61 --- /dev/null +++ b/locale/arz/LC_MESSAGES/statusnet.po @@ -0,0 +1,5214 @@ +# Translation of StatusNet to Egyptian Spoken Arabic +# +# Author@translatewiki.net: Meno25 +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-12-12 17:09+0000\n" +"PO-Revision-Date: 2009-12-12 17:09:12+0000\n" +"Language-Team: Arabic\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: MediaWiki 1.16alpha (r59992); Translate extension (2009-12-06)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: arz\n" +"X-Message-Group: out-statusnet\n" +"Plural-Forms: nplurals=6; plural= n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " +"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" + +#: actions/all.php:63 actions/public.php:97 actions/replies.php:92 +#: actions/showfavorites.php:137 actions/tag.php:51 +msgid "No such page" +msgstr "لا صفحه كهذه" + +#: actions/all.php:74 actions/allrss.php:68 +#: actions/apiaccountupdatedeliverydevice.php:113 +#: actions/apiaccountupdateprofile.php:105 +#: actions/apiaccountupdateprofilebackgroundimage.php:116 +#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97 +#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77 +#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112 +#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99 +#: actions/apigroupleave.php:99 actions/apigrouplist.php:90 +#: actions/apistatusesupdate.php:144 actions/apisubscriptions.php:87 +#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:79 +#: actions/apitimelinementions.php:79 actions/apitimelineuser.php:81 +#: actions/avatarbynickname.php:75 actions/favoritesrss.php:74 +#: actions/foaf.php:40 actions/foaf.php:58 actions/microsummary.php:62 +#: actions/newmessage.php:116 actions/remotesubscribe.php:145 +#: actions/remotesubscribe.php:154 actions/replies.php:73 +#: actions/repliesrss.php:38 actions/showfavorites.php:105 +#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:38 +#: actions/xrds.php:71 lib/command.php:163 lib/command.php:311 +#: lib/command.php:364 lib/command.php:411 lib/command.php:467 +#: lib/galleryaction.php:59 lib/mailbox.php:82 lib/profileaction.php:77 +#: lib/subs.php:34 lib/subs.php:116 +msgid "No such user." +msgstr "لا مستخدم كهذا." + +#: actions/all.php:84 +#, php-format +msgid "%s and friends, page %d" +msgstr "" + +#: actions/all.php:86 actions/all.php:167 actions/allrss.php:115 +#: actions/apitimelinefriends.php:115 lib/personalgroupnav.php:100 +#, php-format +msgid "%s and friends" +msgstr "%s والأصدقاء" + +#: actions/all.php:99 +#, php-format +msgid "Feed for friends of %s (RSS 1.0)" +msgstr "" + +#: actions/all.php:107 +#, php-format +msgid "Feed for friends of %s (RSS 2.0)" +msgstr "" + +#: actions/all.php:115 +#, php-format +msgid "Feed for friends of %s (Atom)" +msgstr "" + +#: actions/all.php:127 +#, php-format +msgid "" +"This is the timeline for %s and friends but no one has posted anything yet." +msgstr "" + +#: actions/all.php:132 +#, php-format +msgid "" +"Try subscribing to more people, [join a group](%%action.groups%%) or post " +"something yourself." +msgstr "" + +#: actions/all.php:134 +#, php-format +msgid "" +"You can try to [nudge %s](../%s) from his profile or [post something to his " +"or her attention](%%%%action.newnotice%%%%?status_textarea=%s)." +msgstr "" + +#: actions/all.php:137 actions/replies.php:209 actions/showstream.php:202 +#, php-format +msgid "" +"Why not [register an account](%%%%action.register%%%%) and then nudge %s or " +"post a notice to his or her attention." +msgstr "" + +#: actions/all.php:165 +msgid "You and friends" +msgstr "أنت والأصدقاء" + +#: actions/allrss.php:119 actions/apitimelinefriends.php:122 +#, php-format +msgid "Updates from %1$s and friends on %2$s!" +msgstr "" + +#: actions/apiaccountratelimitstatus.php:70 +#: actions/apiaccountupdatedeliverydevice.php:93 +#: actions/apiaccountupdateprofile.php:97 +#: actions/apiaccountupdateprofilebackgroundimage.php:94 +#: actions/apiaccountupdateprofilecolors.php:118 +#, fuzzy +msgid "API method not found." +msgstr "لم يوجد رمز التأكيد." + +#: actions/apiaccountupdatedeliverydevice.php:85 +#: actions/apiaccountupdateprofile.php:89 +#: actions/apiaccountupdateprofilebackgroundimage.php:86 +#: actions/apiaccountupdateprofilecolors.php:110 +#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89 +#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117 +#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91 +#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91 +#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91 +#: actions/apigroupleave.php:91 actions/apistatusesupdate.php:114 +msgid "This method requires a POST." +msgstr "تتطلب هذه الطريقه POST." + +#: actions/apiaccountupdatedeliverydevice.php:105 +msgid "" +"You must specify a parameter named 'device' with a value of one of: sms, im, " +"none" +msgstr "" + +#: actions/apiaccountupdatedeliverydevice.php:132 +msgid "Could not update user." +msgstr "تعذّر تحديث المستخدم." + +#: actions/apiaccountupdateprofile.php:112 +#: actions/apiaccountupdateprofilebackgroundimage.php:194 +#: actions/apiaccountupdateprofilecolors.php:185 +#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108 +#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/replies.php:80 +#: actions/usergroups.php:98 lib/galleryaction.php:66 lib/profileaction.php:84 +msgid "User has no profile." +msgstr "ليس للمستخدم ملف شخصى." + +#: actions/apiaccountupdateprofile.php:147 +#, fuzzy +msgid "Could not save profile." +msgstr "تعذّر حفظ الملف الشخصى." + +#: actions/apiaccountupdateprofilebackgroundimage.php:108 +#: actions/apiaccountupdateprofileimage.php:97 +#: actions/apistatusesupdate.php:127 actions/avatarsettings.php:257 +#: actions/designadminpanel.php:122 actions/newnotice.php:94 +#: lib/designsettings.php:283 +#, php-format +msgid "" +"The server was unable to handle that much POST data (%s bytes) due to its " +"current configuration." +msgstr "" + +#: actions/apiaccountupdateprofilebackgroundimage.php:136 +#: actions/apiaccountupdateprofilebackgroundimage.php:146 +#: actions/apiaccountupdateprofilecolors.php:164 +#: actions/apiaccountupdateprofilecolors.php:174 +msgid "Unable to save your design settings." +msgstr "" + +#: actions/apiaccountupdateprofilebackgroundimage.php:187 +#: actions/apiaccountupdateprofilecolors.php:142 +msgid "Could not update your design." +msgstr "تعذّر تحديث تصميمك." + +#: actions/apiblockcreate.php:105 +#, fuzzy +msgid "You cannot block yourself!" +msgstr "لا يمكنك حذف المستخدمين." + +#: actions/apiblockcreate.php:119 +msgid "Block user failed." +msgstr "فشل منع المستخدم." + +#: actions/apiblockdestroy.php:107 +msgid "Unblock user failed." +msgstr "فشل إلغاء منع المستخدم." + +#: actions/apidirectmessage.php:89 +#, php-format +msgid "Direct messages from %s" +msgstr "رسائل مباشره من %s" + +#: actions/apidirectmessage.php:93 +#, php-format +msgid "All the direct messages sent from %s" +msgstr "" + +#: actions/apidirectmessage.php:101 +#, php-format +msgid "Direct messages to %s" +msgstr "رساله مباشره %s" + +#: actions/apidirectmessage.php:105 +#, php-format +msgid "All the direct messages sent to %s" +msgstr "" + +#: actions/apidirectmessage.php:156 actions/apifavoritecreate.php:99 +#: actions/apifavoritedestroy.php:100 actions/apifriendshipscreate.php:100 +#: actions/apifriendshipsdestroy.php:100 actions/apifriendshipsshow.php:129 +#: actions/apigroupcreate.php:136 actions/apigroupismember.php:114 +#: actions/apigroupjoin.php:155 actions/apigroupleave.php:141 +#: actions/apigrouplist.php:132 actions/apigrouplistall.php:120 +#: actions/apigroupmembership.php:106 actions/apigroupshow.php:105 +#: actions/apihelptest.php:88 actions/apistatusesdestroy.php:102 +#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:133 +#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111 +#: actions/apitimelinefavorites.php:146 actions/apitimelinefriends.php:156 +#: actions/apitimelinegroup.php:150 actions/apitimelinementions.php:151 +#: actions/apitimelinepublic.php:131 actions/apitimelinetag.php:141 +#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 +msgid "API method not found!" +msgstr "" + +#: actions/apidirectmessagenew.php:126 +msgid "No message text!" +msgstr "لا نص فى الرسالة!" + +#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150 +#, php-format +msgid "That's too long. Max message size is %d chars." +msgstr "" + +#: actions/apidirectmessagenew.php:146 +msgid "Recipient user not found." +msgstr "لم يُعثر على المستخدم المستلم." + +#: actions/apidirectmessagenew.php:150 +msgid "Can't send direct messages to users who aren't your friend." +msgstr "" + +#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109 +#: actions/apistatusesdestroy.php:113 +msgid "No status found with that ID." +msgstr "" + +#: actions/apifavoritecreate.php:119 +msgid "This status is already a favorite!" +msgstr "" + +#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176 +msgid "Could not create favorite." +msgstr "تعذّر إنشاء مفضله." + +#: actions/apifavoritedestroy.php:122 +msgid "That status is not a favorite!" +msgstr "تلك الحاله ليست مفضلة!" + +#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87 +msgid "Could not delete favorite." +msgstr "تعذّر حذف المفضله." + +#: actions/apifriendshipscreate.php:109 +msgid "Could not follow user: User not found." +msgstr "" + +#: actions/apifriendshipscreate.php:118 +#, php-format +msgid "Could not follow user: %s is already on your list." +msgstr "" + +#: actions/apifriendshipsdestroy.php:109 +msgid "Could not unfollow user: User not found." +msgstr "" + +#: actions/apifriendshipsdestroy.php:120 +msgid "You cannot unfollow yourself!" +msgstr "" + +#: actions/apifriendshipsexists.php:94 +msgid "Two user ids or screen_names must be supplied." +msgstr "" + +#: actions/apifriendshipsshow.php:135 +msgid "Could not determine source user." +msgstr "" + +#: actions/apifriendshipsshow.php:143 +msgid "Could not find target user." +msgstr "تعذّر إيجاد المستخدم الهدف." + +#: actions/apigroupcreate.php:164 actions/editgroup.php:182 +#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/register.php:205 +msgid "Nickname must have only lowercase letters and numbers and no spaces." +msgstr "" + +#: actions/apigroupcreate.php:173 actions/editgroup.php:186 +#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/register.php:208 +msgid "Nickname already in use. Try another one." +msgstr "" + +#: actions/apigroupcreate.php:180 actions/editgroup.php:189 +#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/register.php:210 +msgid "Not a valid nickname." +msgstr "ليس اسمًا مستعارًا صحيحًا." + +#: actions/apigroupcreate.php:196 actions/editgroup.php:195 +#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/register.php:217 +msgid "Homepage is not a valid URL." +msgstr "الصفحه الرئيسيه ليست عنونًا صالحًا." + +#: actions/apigroupcreate.php:205 actions/editgroup.php:198 +#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/register.php:220 +msgid "Full name is too long (max 255 chars)." +msgstr "الاسم الكامل طويل جدا (الأقصى 255 حرفًا)" + +#: actions/apigroupcreate.php:213 +#, php-format +msgid "Description is too long (max %d chars)." +msgstr "" + +#: actions/apigroupcreate.php:224 actions/editgroup.php:204 +#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/register.php:227 +msgid "Location is too long (max 255 chars)." +msgstr "" + +#: actions/apigroupcreate.php:243 actions/editgroup.php:215 +#: actions/newgroup.php:159 +#, php-format +msgid "Too many aliases! Maximum %d." +msgstr "" + +#: actions/apigroupcreate.php:264 actions/editgroup.php:224 +#: actions/newgroup.php:168 +#, php-format +msgid "Invalid alias: \"%s\"" +msgstr "كنيه غير صالحة: \"%s\"" + +#: actions/apigroupcreate.php:273 actions/editgroup.php:228 +#: actions/newgroup.php:172 +#, php-format +msgid "Alias \"%s\" already in use. Try another one." +msgstr "" + +#: actions/apigroupcreate.php:286 actions/editgroup.php:234 +#: actions/newgroup.php:178 +msgid "Alias can't be the same as nickname." +msgstr "" + +#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104 +#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91 +#: actions/apigroupshow.php:90 actions/apitimelinegroup.php:91 +msgid "Group not found!" +msgstr "لم توجد المجموعة!" + +#: actions/apigroupjoin.php:110 +msgid "You are already a member of that group." +msgstr "" + +#: actions/apigroupjoin.php:119 actions/joingroup.php:95 lib/command.php:221 +msgid "You have been blocked from that group by the admin." +msgstr "" + +#: actions/apigroupjoin.php:138 +#, php-format +msgid "Could not join user %s to group %s." +msgstr "" + +#: actions/apigroupleave.php:114 +msgid "You are not a member of this group." +msgstr "" + +#: actions/apigroupleave.php:124 +#, php-format +msgid "Could not remove user %s to group %s." +msgstr "" + +#: actions/apigrouplist.php:95 +#, php-format +msgid "%s's groups" +msgstr "مجموعات %s" + +#: actions/apigrouplist.php:103 +#, php-format +msgid "Groups %s is a member of on %s." +msgstr "" + +#: actions/apigrouplistall.php:90 actions/usergroups.php:62 +#, php-format +msgid "%s groups" +msgstr "مجموعات %s" + +#: actions/apigrouplistall.php:94 +#, php-format +msgid "groups on %s" +msgstr "مجموعات %s" + +#: actions/apistatusesdestroy.php:107 +msgid "This method requires a POST or DELETE." +msgstr "" + +#: actions/apistatusesdestroy.php:130 +msgid "You may not delete another user's status." +msgstr "" + +#: actions/apistatusesshow.php:138 +msgid "Status deleted." +msgstr "حُذِفت الحاله." + +#: actions/apistatusesshow.php:144 +msgid "No status with that ID found." +msgstr "" + +#: actions/apistatusesupdate.php:157 actions/newnotice.php:155 +#: scripts/maildaemon.php:71 +#, php-format +msgid "That's too long. Max notice size is %d chars." +msgstr "" + +#: actions/apistatusesupdate.php:198 +msgid "Not found" +msgstr "لم يوجد" + +#: actions/apistatusesupdate.php:227 actions/newnotice.php:183 +#, php-format +msgid "Max notice size is %d chars, including attachment URL." +msgstr "" + +#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261 +msgid "Unsupported format." +msgstr "نسق غير مدعوم." + +#: actions/apitimelinefavorites.php:108 +#, php-format +msgid "%s / Favorites from %s" +msgstr "" + +#: actions/apitimelinefavorites.php:120 +#, php-format +msgid "%s updates favorited by %s / %s." +msgstr "" + +#: actions/apitimelinegroup.php:109 actions/apitimelineuser.php:118 +#: actions/grouprss.php:131 actions/userrss.php:90 +#, php-format +msgid "%s timeline" +msgstr "مسار %s الزمني" + +#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 +#: actions/userrss.php:92 +#, php-format +msgid "Updates from %1$s on %2$s!" +msgstr "" + +#: actions/apitimelinementions.php:117 +#, php-format +msgid "%1$s / Updates mentioning %2$s" +msgstr "" + +#: actions/apitimelinementions.php:127 +#, php-format +msgid "%1$s updates that reply to updates from %2$s / %3$s." +msgstr "" + +#: actions/apitimelinepublic.php:107 actions/publicrss.php:103 +#, php-format +msgid "%s public timeline" +msgstr "مسار %s الزمنى العام" + +#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 +#, php-format +msgid "%s updates from everyone!" +msgstr "" + +#: actions/apitimelinetag.php:102 actions/tag.php:66 +#, php-format +msgid "Notices tagged with %s" +msgstr "الإشعارات الموسومه ب%s" + +#: actions/apitimelinetag.php:108 actions/tagrss.php:64 +#, php-format +msgid "Updates tagged with %1$s on %2$s!" +msgstr "" + +#: actions/apiusershow.php:96 +msgid "Not found." +msgstr "لم يوجد." + +#: actions/attachment.php:73 +msgid "No such attachment." +msgstr "لا مرفق كهذا." + +#: actions/avatarbynickname.php:59 actions/leavegroup.php:76 +msgid "No nickname." +msgstr "لا اسم مستعار." + +#: actions/avatarbynickname.php:64 +msgid "No size." +msgstr "لا حجم." + +#: actions/avatarbynickname.php:69 +msgid "Invalid size." +msgstr "حجم غير صالح." + +#: actions/avatarsettings.php:67 actions/showgroup.php:221 +#: lib/accountsettingsaction.php:112 +msgid "Avatar" +msgstr "أفتار" + +#: actions/avatarsettings.php:78 +#, php-format +msgid "You can upload your personal avatar. The maximum file size is %s." +msgstr "" + +#: actions/avatarsettings.php:106 actions/avatarsettings.php:185 +#: actions/grouplogo.php:178 actions/remotesubscribe.php:191 +#: actions/userauthorization.php:72 actions/userrss.php:103 +msgid "User without matching profile" +msgstr "" + +#: actions/avatarsettings.php:119 actions/avatarsettings.php:197 +#: actions/grouplogo.php:251 +msgid "Avatar settings" +msgstr "إعدادات الأفتار" + +#: actions/avatarsettings.php:127 actions/avatarsettings.php:205 +#: actions/grouplogo.php:199 actions/grouplogo.php:259 +msgid "Original" +msgstr "الأصلي" + +#: actions/avatarsettings.php:142 actions/avatarsettings.php:217 +#: actions/grouplogo.php:210 actions/grouplogo.php:271 +msgid "Preview" +msgstr "عاين" + +#: actions/avatarsettings.php:149 lib/deleteuserform.php:66 +#: lib/noticelist.php:550 +msgid "Delete" +msgstr "احذف" + +#: actions/avatarsettings.php:166 actions/grouplogo.php:233 +msgid "Upload" +msgstr "ارفع" + +#: actions/avatarsettings.php:231 actions/grouplogo.php:286 +msgid "Crop" +msgstr "" + +#: actions/avatarsettings.php:268 actions/disfavor.php:74 +#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/groupblock.php:66 actions/grouplogo.php:309 +#: actions/groupunblock.php:66 actions/imsettings.php:206 +#: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 +#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 +#: actions/othersettings.php:145 actions/passwordsettings.php:138 +#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/register.php:165 actions/remotesubscribe.php:77 +#: actions/smssettings.php:228 actions/subedit.php:38 actions/subscribe.php:46 +#: actions/tagother.php:166 actions/unsubscribe.php:69 +#: actions/userauthorization.php:52 lib/designsettings.php:294 +msgid "There was a problem with your session token. Try again, please." +msgstr "" + +#: actions/avatarsettings.php:281 actions/designadminpanel.php:103 +#: actions/emailsettings.php:256 actions/grouplogo.php:319 +#: actions/imsettings.php:220 actions/recoverpassword.php:44 +#: actions/smssettings.php:248 lib/designsettings.php:304 +msgid "Unexpected form submission." +msgstr "" + +#: actions/avatarsettings.php:328 +msgid "Pick a square area of the image to be your avatar" +msgstr "" + +#: actions/avatarsettings.php:343 actions/grouplogo.php:377 +msgid "Lost our file data." +msgstr "" + +#: actions/avatarsettings.php:366 +msgid "Avatar updated." +msgstr "رُفع الأفتار." + +#: actions/avatarsettings.php:369 +msgid "Failed updating avatar." +msgstr "فشل تحديث الأفتار." + +#: actions/avatarsettings.php:393 +msgid "Avatar deleted." +msgstr "حُذف الأفتار." + +#: actions/block.php:69 +msgid "You already blocked that user." +msgstr "لقد منعت مسبقا هذا المستخدم." + +#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160 +msgid "Block user" +msgstr "امنع المستخدم" + +#: actions/block.php:130 +msgid "" +"Are you sure you want to block this user? Afterwards, they will be " +"unsubscribed from you, unable to subscribe to you in the future, and you " +"will not be notified of any @-replies from them." +msgstr "" + +#: actions/block.php:143 actions/deletenotice.php:145 +#: actions/deleteuser.php:147 actions/groupblock.php:178 +msgid "No" +msgstr "لا" + +#: actions/block.php:143 actions/deleteuser.php:147 +msgid "Do not block this user" +msgstr "لا تمنع هذا المستخدم" + +#: actions/block.php:144 actions/deletenotice.php:146 +#: actions/deleteuser.php:148 actions/groupblock.php:179 +msgid "Yes" +msgstr "نعم" + +#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 +msgid "Block this user" +msgstr "امنع هذا المستخدم" + +#: actions/block.php:162 +msgid "Failed to save block information." +msgstr "فشل حفظ معلومات المنع." + +#: actions/blockedfromgroup.php:73 actions/editgroup.php:84 +#: actions/groupdesignsettings.php:84 actions/grouplogo.php:86 +#: actions/groupmembers.php:76 actions/grouprss.php:91 +#: actions/joingroup.php:76 actions/showgroup.php:121 +msgid "No nickname" +msgstr "لا اسم مستعار" + +#: actions/blockedfromgroup.php:80 actions/editgroup.php:96 +#: actions/groupbyid.php:83 actions/groupdesignsettings.php:97 +#: actions/grouplogo.php:99 actions/groupmembers.php:83 +#: actions/grouprss.php:98 actions/joingroup.php:83 actions/showgroup.php:137 +msgid "No such group" +msgstr "لا مجموعه كهذه" + +#: actions/blockedfromgroup.php:90 +#, php-format +msgid "%s blocked profiles" +msgstr "" + +#: actions/blockedfromgroup.php:93 +#, php-format +msgid "%s blocked profiles, page %d" +msgstr "" + +#: actions/blockedfromgroup.php:108 +msgid "A list of the users blocked from joining this group." +msgstr "" + +#: actions/blockedfromgroup.php:281 +msgid "Unblock user from group" +msgstr "ألغ منع المستخدم من المجموعة" + +#: actions/blockedfromgroup.php:313 lib/unblockform.php:69 +msgid "Unblock" +msgstr "ألغِ المنع" + +#: actions/blockedfromgroup.php:313 lib/unblockform.php:80 +msgid "Unblock this user" +msgstr "ألغِ منع هذا المستخدم" + +#: actions/bookmarklet.php:50 +msgid "Post to " +msgstr "" + +#: actions/confirmaddress.php:75 +msgid "No confirmation code." +msgstr "لا رمز تأكيد." + +#: actions/confirmaddress.php:80 +msgid "Confirmation code not found." +msgstr "لم يوجد رمز التأكيد." + +#: actions/confirmaddress.php:85 +msgid "That confirmation code is not for you!" +msgstr "رمز التأكيد ليس لك!" + +#: actions/confirmaddress.php:90 +#, php-format +msgid "Unrecognized address type %s" +msgstr "" + +#: actions/confirmaddress.php:94 +msgid "That address has already been confirmed." +msgstr "" + +#: actions/confirmaddress.php:114 actions/emailsettings.php:296 +#: actions/emailsettings.php:427 actions/imsettings.php:258 +#: actions/imsettings.php:401 actions/othersettings.php:174 +#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/smssettings.php:420 +msgid "Couldn't update user." +msgstr "تعذّر تحديث المستخدم." + +#: actions/confirmaddress.php:126 actions/emailsettings.php:391 +#: actions/imsettings.php:363 actions/smssettings.php:382 +msgid "Couldn't delete email confirmation." +msgstr "تعذّر حذف تأكيد البريد الإلكترونى." + +#: actions/confirmaddress.php:144 +msgid "Confirm Address" +msgstr "عنوان التأكيد" + +#: actions/confirmaddress.php:159 +#, php-format +msgid "The address \"%s\" has been confirmed for your account." +msgstr "" + +#: actions/conversation.php:99 +msgid "Conversation" +msgstr "محادثة" + +#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87 +#: lib/profileaction.php:216 lib/searchgroupnav.php:82 +msgid "Notices" +msgstr "الإشعارات" + +#: actions/deletenotice.php:52 actions/shownotice.php:92 +msgid "No such notice." +msgstr "لا إشعار كهذا." + +#: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62 +#: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69 +#: actions/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89 +#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:30 +#: actions/unsubscribe.php:52 lib/adminpanelaction.php:72 +#: lib/profileformaction.php:63 lib/settingsaction.php:72 +msgid "Not logged in." +msgstr "لست والجًا." + +#: actions/deletenotice.php:71 +msgid "Can't delete this notice." +msgstr "تعذّر حذف هذا الإشعار." + +#: actions/deletenotice.php:103 +msgid "" +"You are about to permanently delete a notice. Once this is done, it cannot " +"be undone." +msgstr "" + +#: actions/deletenotice.php:109 actions/deletenotice.php:141 +msgid "Delete notice" +msgstr "احذف الإشعار" + +#: actions/deletenotice.php:144 +msgid "Are you sure you want to delete this notice?" +msgstr "أمتأكد من أنك تريد حذف هذا الإشعار؟" + +#: actions/deletenotice.php:145 +msgid "Do not delete this notice" +msgstr "لا تحذف هذا الإشعار" + +#: actions/deletenotice.php:146 lib/noticelist.php:550 +msgid "Delete this notice" +msgstr "احذف هذا الإشعار" + +#: actions/deletenotice.php:157 +msgid "There was a problem with your session token. Try again, please." +msgstr "" + +#: actions/deleteuser.php:67 +msgid "You cannot delete users." +msgstr "لا يمكنك حذف المستخدمين." + +#: actions/deleteuser.php:74 +msgid "You can only delete local users." +msgstr "يمكنك حذف المستخدمين المحليين فقط." + +#: actions/deleteuser.php:110 actions/deleteuser.php:133 +msgid "Delete user" +msgstr "احذف المستخدم" + +#: actions/deleteuser.php:135 +msgid "" +"Are you sure you want to delete this user? This will clear all data about " +"the user from the database, without a backup." +msgstr "" + +#: actions/deleteuser.php:148 lib/deleteuserform.php:77 +msgid "Delete this user" +msgstr "احذف هذا المستخدم" + +#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124 +#: lib/adminpanelaction.php:302 lib/groupnav.php:119 +msgid "Design" +msgstr "التصميم" + +#: actions/designadminpanel.php:73 +msgid "Design settings for this StatusNet site." +msgstr "" + +#: actions/designadminpanel.php:275 +msgid "Invalid logo URL." +msgstr "مسار شعار غير صالح." + +#: actions/designadminpanel.php:279 +#, php-format +msgid "Theme not available: %s" +msgstr "السمه غير متوفرة: %s" + +#: actions/designadminpanel.php:375 +msgid "Change logo" +msgstr "غيّر الشعار" + +#: actions/designadminpanel.php:380 +msgid "Site logo" +msgstr "شعار الموقع" + +#: actions/designadminpanel.php:387 +msgid "Change theme" +msgstr "غيّر السمة" + +#: actions/designadminpanel.php:404 +msgid "Site theme" +msgstr "سمه الموقع" + +#: actions/designadminpanel.php:405 +msgid "Theme for the site." +msgstr "سمه الموقع." + +#: actions/designadminpanel.php:417 lib/designsettings.php:101 +msgid "Change background image" +msgstr "تغيير صوره الخلفية" + +#: actions/designadminpanel.php:422 actions/designadminpanel.php:497 +#: lib/designsettings.php:178 +msgid "Background" +msgstr "الخلفية" + +#: actions/designadminpanel.php:427 +#, php-format +msgid "" +"You can upload a background image for the site. The maximum file size is %1" +"$s." +msgstr "" + +#: actions/designadminpanel.php:457 lib/designsettings.php:139 +msgid "On" +msgstr "مكّن" + +#: actions/designadminpanel.php:473 lib/designsettings.php:155 +msgid "Off" +msgstr "عطّل" + +#: actions/designadminpanel.php:474 lib/designsettings.php:156 +msgid "Turn background image on or off." +msgstr "مكّن صوره الخلفيه أو عطّلها." + +#: actions/designadminpanel.php:479 lib/designsettings.php:161 +msgid "Tile background image" +msgstr "" + +#: actions/designadminpanel.php:488 lib/designsettings.php:170 +msgid "Change colours" +msgstr "تغيير الألوان" + +#: actions/designadminpanel.php:510 lib/designsettings.php:191 +msgid "Content" +msgstr "المحتوى" + +#: actions/designadminpanel.php:523 lib/designsettings.php:204 +msgid "Sidebar" +msgstr "الشريط الجانبي" + +#: actions/designadminpanel.php:536 lib/designsettings.php:217 +msgid "Text" +msgstr "النص" + +#: actions/designadminpanel.php:549 lib/designsettings.php:230 +msgid "Links" +msgstr "وصلات" + +#: actions/designadminpanel.php:577 lib/designsettings.php:247 +msgid "Use defaults" +msgstr "استخدم المبدئيات" + +#: actions/designadminpanel.php:578 lib/designsettings.php:248 +msgid "Restore default designs" +msgstr "استعد التصميمات المبدئية" + +#: actions/designadminpanel.php:584 lib/designsettings.php:254 +msgid "Reset back to default" +msgstr "ارجع إلى المبدئي" + +#: actions/designadminpanel.php:586 actions/emailsettings.php:195 +#: actions/imsettings.php:163 actions/othersettings.php:126 +#: actions/pathsadminpanel.php:296 actions/profilesettings.php:167 +#: actions/siteadminpanel.php:421 actions/smssettings.php:181 +#: actions/subscriptions.php:203 actions/tagother.php:154 +#: actions/useradminpanel.php:313 lib/designsettings.php:256 +#: lib/groupeditform.php:202 +msgid "Save" +msgstr "أرسل" + +#: actions/designadminpanel.php:587 lib/designsettings.php:257 +msgid "Save design" +msgstr "احفظ التصميم" + +#: actions/disfavor.php:81 +msgid "This notice is not a favorite!" +msgstr "هذا الشعار ليس مفضلًا!" + +#: actions/disfavor.php:94 +msgid "Add to favorites" +msgstr "أضف إلى المفضلات" + +#: actions/doc.php:69 +msgid "No such document." +msgstr "لا مستند كهذا." + +#: actions/editgroup.php:56 +#, php-format +msgid "Edit %s group" +msgstr "عدّل مجموعه %s" + +#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65 +msgid "You must be logged in to create a group." +msgstr "يجب أن تكون والجًا لتنشئ مجموعه." + +#: actions/editgroup.php:103 actions/editgroup.php:168 +#: actions/groupdesignsettings.php:104 actions/grouplogo.php:106 +msgid "You must be an admin to edit the group" +msgstr "يجب أن تكون إداريًا لتعدّل المجموعة" + +#: actions/editgroup.php:154 +msgid "Use this form to edit the group." +msgstr "استخدم هذا النموذج لتعديل المجموعه." + +#: actions/editgroup.php:201 actions/newgroup.php:145 +#, php-format +msgid "description is too long (max %d chars)." +msgstr "" + +#: actions/editgroup.php:253 +msgid "Could not update group." +msgstr "تعذر تحديث المجموعه." + +#: actions/editgroup.php:259 classes/User_group.php:390 +msgid "Could not create aliases." +msgstr "تعذّر إنشاء الكنى." + +#: actions/editgroup.php:269 +msgid "Options saved." +msgstr "حُفظت الخيارات." + +#: actions/emailsettings.php:60 +msgid "Email Settings" +msgstr "إعدادات البريد الإلكتروني" + +#: actions/emailsettings.php:71 +#, php-format +msgid "Manage how you get email from %%site.name%%." +msgstr "أدر كيف تستلم البريد الإلكترونى من %%site.name%%." + +#: actions/emailsettings.php:100 actions/imsettings.php:100 +#: actions/smssettings.php:104 +msgid "Address" +msgstr "العنوان" + +#: actions/emailsettings.php:105 +msgid "Current confirmed email address." +msgstr "عنوان البريد الإلكترونى المُؤكد الحالى." + +#: actions/emailsettings.php:107 actions/emailsettings.php:140 +#: actions/imsettings.php:108 actions/smssettings.php:115 +#: actions/smssettings.php:158 +msgid "Remove" +msgstr "أزل" + +#: actions/emailsettings.php:113 +msgid "" +"Awaiting confirmation on this address. Check your inbox (and spam box!) for " +"a message with further instructions." +msgstr "" + +#: actions/emailsettings.php:117 actions/imsettings.php:120 +#: actions/smssettings.php:126 +msgid "Cancel" +msgstr "ألغِ" + +#: actions/emailsettings.php:121 +msgid "Email Address" +msgstr "عنوان البريد الإلكتروني" + +#: actions/emailsettings.php:123 +msgid "Email address, like \"UserName@example.org\"" +msgstr "عنوان البريد الإلكترونى، مثل \"UserName@example.org\"" + +#: actions/emailsettings.php:126 actions/imsettings.php:133 +#: actions/smssettings.php:145 +msgid "Add" +msgstr "أضف" + +#: actions/emailsettings.php:133 actions/smssettings.php:152 +msgid "Incoming email" +msgstr "البريد الإلكترونى الوارد" + +#: actions/emailsettings.php:138 actions/smssettings.php:157 +msgid "Send email to this address to post new notices." +msgstr "أرسل بريدًا إلكترونيًا إلى هذا العنوان لترسل إشعارات جديده." + +#: actions/emailsettings.php:145 actions/smssettings.php:162 +msgid "Make a new email address for posting to; cancels the old one." +msgstr "أنشئ عنوان بريد إلكترونى لترسل إليه؛ ألغِ القديم." + +#: actions/emailsettings.php:148 actions/smssettings.php:164 +msgid "New" +msgstr "جديد" + +#: actions/emailsettings.php:153 actions/imsettings.php:139 +#: actions/smssettings.php:169 +msgid "Preferences" +msgstr "التفضيلات" + +#: actions/emailsettings.php:158 +msgid "Send me notices of new subscriptions through email." +msgstr "أرسل لى إشعارات بالاشتراكات الجديده عبر البريد الإلكترونى." + +#: actions/emailsettings.php:163 +msgid "Send me email when someone adds my notice as a favorite." +msgstr "أرسل لى بريدًا إلكرتونيًا عندما يضيف أحدهم إشعارى مفضله." + +#: actions/emailsettings.php:169 +msgid "Send me email when someone sends me a private message." +msgstr "" + +#: actions/emailsettings.php:174 +msgid "Send me email when someone sends me an \"@-reply\"." +msgstr "أرسل لى بريدًا إلكترونيًا عندما يرسل لى أحدهم \"@-رد\"." + +#: actions/emailsettings.php:179 +msgid "Allow friends to nudge me and send me an email." +msgstr "" + +#: actions/emailsettings.php:185 +msgid "I want to post notices by email." +msgstr "أريد أن أرسل الملاحظات عبر البريد الإلكترونى." + +#: actions/emailsettings.php:191 +msgid "Publish a MicroID for my email address." +msgstr "" + +#: actions/emailsettings.php:302 actions/imsettings.php:264 +#: actions/othersettings.php:180 actions/smssettings.php:284 +msgid "Preferences saved." +msgstr "حُفِظت التفضيلات." + +#: actions/emailsettings.php:320 +msgid "No email address." +msgstr "لا عنوان بريد إلكترونى." + +#: actions/emailsettings.php:327 +msgid "Cannot normalize that email address" +msgstr "" + +#: actions/emailsettings.php:331 actions/siteadminpanel.php:158 +msgid "Not a valid email address" +msgstr "ليس عنوان بريد صالح" + +#: actions/emailsettings.php:334 +msgid "That is already your email address." +msgstr "هذا هو عنوان بريدك الإكترونى سابقًا." + +#: actions/emailsettings.php:337 +msgid "That email address already belongs to another user." +msgstr "هذا البريد الإلكترونى ملك مستخدم آخر بالفعل." + +#: actions/emailsettings.php:353 actions/imsettings.php:317 +#: actions/smssettings.php:337 +msgid "Couldn't insert confirmation code." +msgstr "تعذّر إدراج رمز التأكيد." + +#: actions/emailsettings.php:359 +msgid "" +"A confirmation code was sent to the email address you added. Check your " +"inbox (and spam box!) for the code and instructions on how to use it." +msgstr "" + +#: actions/emailsettings.php:379 actions/imsettings.php:351 +#: actions/smssettings.php:370 +msgid "No pending confirmation to cancel." +msgstr "" + +#: actions/emailsettings.php:383 actions/imsettings.php:355 +msgid "That is the wrong IM address." +msgstr "هذا عنوان محادثه فوريه خاطئ." + +#: actions/emailsettings.php:395 actions/imsettings.php:367 +#: actions/smssettings.php:386 +msgid "Confirmation cancelled." +msgstr "أُلغى التأكيد." + +#: actions/emailsettings.php:413 +msgid "That is not your email address." +msgstr "هذا ليس عنوان بريدك الإلكترونى." + +#: actions/emailsettings.php:432 actions/imsettings.php:408 +#: actions/smssettings.php:425 +msgid "The address was removed." +msgstr "أزيل هذا العنوان." + +#: actions/emailsettings.php:446 actions/smssettings.php:518 +msgid "No incoming email address." +msgstr "" + +#: actions/emailsettings.php:456 actions/emailsettings.php:478 +#: actions/smssettings.php:528 actions/smssettings.php:552 +msgid "Couldn't update user record." +msgstr "" + +#: actions/emailsettings.php:459 actions/smssettings.php:531 +msgid "Incoming email address removed." +msgstr "" + +#: actions/emailsettings.php:481 actions/smssettings.php:555 +msgid "New incoming email address added." +msgstr "" + +#: actions/favor.php:79 +msgid "This notice is already a favorite!" +msgstr "هذا الإشعار مفضله مسبقًا!" + +#: actions/favor.php:92 lib/disfavorform.php:140 +msgid "Disfavor favorite" +msgstr "ألغِ تفضيل المفضلة" + +#: actions/favorited.php:65 lib/popularnoticesection.php:88 +#: lib/publicgroupnav.php:93 +msgid "Popular notices" +msgstr "إشعارات مشهورة" + +#: actions/favorited.php:67 +#, php-format +msgid "Popular notices, page %d" +msgstr "إشعارات مشهوره، الصفحه %d" + +#: actions/favorited.php:79 +msgid "The most popular notices on the site right now." +msgstr "أشهر الإشعارات على الموقع حاليًا." + +#: actions/favorited.php:150 +msgid "Favorite notices appear on this page but no one has favorited one yet." +msgstr "" + +#: actions/favorited.php:153 +msgid "" +"Be the first to add a notice to your favorites by clicking the fave button " +"next to any notice you like." +msgstr "" + +#: actions/favorited.php:156 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and be the first to add a " +"notice to your favorites!" +msgstr "" + +#: actions/favoritesrss.php:111 actions/showfavorites.php:77 +#: lib/personalgroupnav.php:115 +#, php-format +msgid "%s's favorite notices" +msgstr "إشعارات %s المُفضلة" + +#: actions/favoritesrss.php:115 +#, php-format +msgid "Updates favored by %1$s on %2$s!" +msgstr "" + +#: actions/featured.php:69 lib/featureduserssection.php:87 +#: lib/publicgroupnav.php:89 +msgid "Featured users" +msgstr "مستخدمون مختارون" + +#: actions/featured.php:71 +#, php-format +msgid "Featured users, page %d" +msgstr "مستخدمون مختارون، صفحه %d" + +#: actions/featured.php:99 +#, php-format +msgid "A selection of some of the great users on %s" +msgstr "قسم للمستخدمين المتميزين على %s" + +#: actions/file.php:34 +msgid "No notice id" +msgstr "لا هويه إشعار" + +#: actions/file.php:38 +msgid "No notice" +msgstr "لا إشعار" + +#: actions/file.php:42 +msgid "No attachments" +msgstr "لا مرفقات" + +#: actions/file.php:51 +msgid "No uploaded attachments" +msgstr "لا مرفقات مرفوعة" + +#: actions/finishremotesubscribe.php:69 +msgid "Not expecting this response!" +msgstr "لم أتوقع هذا الرد!" + +#: actions/finishremotesubscribe.php:80 +msgid "User being listened to does not exist." +msgstr "المستخدم الذى تستمع إليه غير موجود." + +#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59 +msgid "You can use the local subscription!" +msgstr "" + +#: actions/finishremotesubscribe.php:99 +msgid "That user has blocked you from subscribing." +msgstr "" + +#: actions/finishremotesubscribe.php:110 +msgid "You are not authorized." +msgstr "لا تملك تصريحًا." + +#: actions/finishremotesubscribe.php:113 +msgid "Could not convert request token to access token." +msgstr "" + +#: actions/finishremotesubscribe.php:118 +msgid "Remote service uses unknown version of OMB protocol." +msgstr "" + +#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306 +msgid "Error updating remote profile" +msgstr "خطأ أثناء تحديث الملف الشخصى البعيد" + +#: actions/foafgroup.php:44 actions/foafgroup.php:62 actions/groupblock.php:86 +#: actions/groupunblock.php:86 actions/leavegroup.php:83 +#: actions/makeadmin.php:86 lib/command.php:212 lib/command.php:263 +msgid "No such group." +msgstr "لا مجموعه كهذه." + +#: actions/getfile.php:75 +msgid "No such file." +msgstr "لا ملف كهذا." + +#: actions/getfile.php:79 +msgid "Cannot read file." +msgstr "تعذّرت قراءه الملف." + +#: actions/groupblock.php:71 actions/groupunblock.php:71 +#: actions/makeadmin.php:71 actions/subedit.php:46 +#: lib/profileformaction.php:70 +msgid "No profile specified." +msgstr "لا ملف شخصى مُحدّد." + +#: actions/groupblock.php:76 actions/groupunblock.php:76 +#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46 +#: lib/profileformaction.php:77 +msgid "No profile with that ID." +msgstr "لا ملف شخصى بهذه الهويه." + +#: actions/groupblock.php:81 actions/groupunblock.php:81 +#: actions/makeadmin.php:81 +msgid "No group specified." +msgstr "لا مجموعه مُحدّده." + +#: actions/groupblock.php:91 +msgid "Only an admin can block group members." +msgstr "" + +#: actions/groupblock.php:95 +msgid "User is already blocked from group." +msgstr "" + +#: actions/groupblock.php:100 +msgid "User is not a member of group." +msgstr "المستخدم ليس عضوًا فى المجموعه." + +#: actions/groupblock.php:136 actions/groupmembers.php:314 +msgid "Block user from group" +msgstr "امنع المستخدم من المجموعة" + +#: actions/groupblock.php:162 +#, php-format +msgid "" +"Are you sure you want to block user \"%s\" from the group \"%s\"? They will " +"be removed from the group, unable to post, and unable to subscribe to the " +"group in the future." +msgstr "" + +#: actions/groupblock.php:178 +msgid "Do not block this user from this group" +msgstr "لا تمنع هذا المستخدم من هذه المجموعة" + +#: actions/groupblock.php:179 +msgid "Block this user from this group" +msgstr "امنع هذا المستخدم من هذه المجموعة" + +#: actions/groupblock.php:196 +msgid "Database error blocking user from group." +msgstr "خطأ فى قاعده البيانات أثناء منع المستخدم من المجموعه." + +#: actions/groupbyid.php:74 +msgid "No ID" +msgstr "لا هوية" + +#: actions/groupdesignsettings.php:68 +msgid "You must be logged in to edit a group." +msgstr "يجب أن تلج لتُعدّل المجموعات." + +#: actions/groupdesignsettings.php:141 +msgid "Group design" +msgstr "تصميم المجموعة" + +#: actions/groupdesignsettings.php:152 +msgid "" +"Customize the way your group looks with a background image and a colour " +"palette of your choice." +msgstr "" + +#: actions/groupdesignsettings.php:263 actions/userdesignsettings.php:186 +#: lib/designsettings.php:391 lib/designsettings.php:413 +msgid "Couldn't update your design." +msgstr "تعذّر تحديث تصميمك." + +#: actions/groupdesignsettings.php:287 actions/groupdesignsettings.php:297 +#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220 +#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273 +msgid "Unable to save your design settings!" +msgstr "" + +#: actions/groupdesignsettings.php:308 actions/userdesignsettings.php:231 +msgid "Design preferences saved." +msgstr "" + +#: actions/grouplogo.php:139 actions/grouplogo.php:192 +msgid "Group logo" +msgstr "شعار المجموعة" + +#: actions/grouplogo.php:150 +#, php-format +msgid "" +"You can upload a logo image for your group. The maximum file size is %s." +msgstr "" + +#: actions/grouplogo.php:362 +msgid "Pick a square area of the image to be the logo." +msgstr "" + +#: actions/grouplogo.php:396 +msgid "Logo updated." +msgstr "حُدّث الشعار." + +#: actions/grouplogo.php:398 +msgid "Failed updating logo." +msgstr "فشل رفع الشعار." + +#: actions/groupmembers.php:93 lib/groupnav.php:92 +#, php-format +msgid "%s group members" +msgstr "أعضاء مجموعه %s" + +#: actions/groupmembers.php:96 +#, php-format +msgid "%s group members, page %d" +msgstr "" + +#: actions/groupmembers.php:111 +msgid "A list of the users in this group." +msgstr "قائمه بمستخدمى هذه المجموعه." + +#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +msgid "Admin" +msgstr "إداري" + +#: actions/groupmembers.php:346 lib/blockform.php:69 +msgid "Block" +msgstr "امنع" + +#: actions/groupmembers.php:441 +msgid "Make user an admin of the group" +msgstr "" + +#: actions/groupmembers.php:473 +msgid "Make Admin" +msgstr "" + +#: actions/groupmembers.php:473 +msgid "Make this user an admin" +msgstr "اجعل هذا المستخدم إداريًا" + +#: actions/grouprss.php:133 +#, php-format +msgid "Updates from members of %1$s on %2$s!" +msgstr "" + +#: actions/groups.php:62 lib/profileaction.php:210 lib/profileaction.php:230 +#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98 +msgid "Groups" +msgstr "مجموعات" + +#: actions/groups.php:64 +#, php-format +msgid "Groups, page %d" +msgstr "المجموعات، صفحه %d" + +#: actions/groups.php:90 +#, php-format +msgid "" +"%%%%site.name%%%% groups let you find and talk with people of similar " +"interests. After you join a group you can send messages to all other members " +"using the syntax \"!groupname\". Don't see a group you like? Try [searching " +"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup" +"%%%%)" +msgstr "" + +#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122 +msgid "Create a new group" +msgstr "أنشئ مجموعه جديدة" + +#: actions/groupsearch.php:52 +#, php-format +msgid "" +"Search for groups on %%site.name%% by their name, location, or description. " +"Separate the terms by spaces; they must be 3 characters or more." +msgstr "" + +#: actions/groupsearch.php:58 +msgid "Group search" +msgstr "بحث فى المجموعات" + +#: actions/groupsearch.php:79 actions/noticesearch.php:117 +#: actions/peoplesearch.php:83 +msgid "No results." +msgstr "لا نتائج." + +#: actions/groupsearch.php:82 +#, php-format +msgid "" +"If you can't find the group you're looking for, you can [create it](%%action." +"newgroup%%) yourself." +msgstr "" + +#: actions/groupsearch.php:85 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and [create the group](%%" +"action.newgroup%%) yourself!" +msgstr "" + +#: actions/groupunblock.php:91 +msgid "Only an admin can unblock group members." +msgstr "" + +#: actions/groupunblock.php:95 +msgid "User is not blocked from group." +msgstr "المستخدم ليس ممنوعًا من المجموعه." + +#: actions/groupunblock.php:128 actions/unblock.php:77 +msgid "Error removing the block." +msgstr "خطأ أثناء منع الحجب." + +#: actions/imsettings.php:59 +msgid "IM Settings" +msgstr "إعدادات المراسله الفورية" + +#: actions/imsettings.php:70 +#, php-format +msgid "" +"You can send and receive notices through Jabber/GTalk [instant messages](%%" +"doc.im%%). Configure your address and settings below." +msgstr "" + +#: actions/imsettings.php:89 +msgid "IM is not available." +msgstr "المراسله الفوريه غير متوفره." + +#: actions/imsettings.php:106 +msgid "Current confirmed Jabber/GTalk address." +msgstr "" + +#: actions/imsettings.php:114 +#, php-format +msgid "" +"Awaiting confirmation on this address. Check your Jabber/GTalk account for a " +"message with further instructions. (Did you add %s to your buddy list?)" +msgstr "" + +#: actions/imsettings.php:124 +msgid "IM Address" +msgstr "عنوان المراسله الفورية" + +#: actions/imsettings.php:126 +#, php-format +msgid "" +"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to " +"add %s to your buddy list in your IM client or on GTalk." +msgstr "" + +#: actions/imsettings.php:143 +msgid "Send me notices through Jabber/GTalk." +msgstr "" + +#: actions/imsettings.php:148 +msgid "Post a notice when my Jabber/GTalk status changes." +msgstr "" + +#: actions/imsettings.php:153 +msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to." +msgstr "" + +#: actions/imsettings.php:159 +msgid "Publish a MicroID for my Jabber/GTalk address." +msgstr "" + +#: actions/imsettings.php:285 +msgid "No Jabber ID." +msgstr "لا هويه جابر." + +#: actions/imsettings.php:292 +msgid "Cannot normalize that Jabber ID" +msgstr "" + +#: actions/imsettings.php:296 +msgid "Not a valid Jabber ID" +msgstr "ليست هويه جابر صالحة" + +#: actions/imsettings.php:299 +msgid "That is already your Jabber ID." +msgstr "" + +#: actions/imsettings.php:302 +msgid "Jabber ID already belongs to another user." +msgstr "" + +#: actions/imsettings.php:327 +#, php-format +msgid "" +"A confirmation code was sent to the IM address you added. You must approve %" +"s for sending messages to you." +msgstr "" + +#: actions/imsettings.php:387 +msgid "That is not your Jabber ID." +msgstr "هذه ليست هويتك فى جابر." + +#: actions/inbox.php:59 +#, php-format +msgid "Inbox for %s - page %d" +msgstr "" + +#: actions/inbox.php:62 +#, php-format +msgid "Inbox for %s" +msgstr "" + +#: actions/inbox.php:115 +msgid "This is your inbox, which lists your incoming private messages." +msgstr "" + +#: actions/invite.php:39 +msgid "Invites have been disabled." +msgstr "" + +#: actions/invite.php:41 +#, php-format +msgid "You must be logged in to invite other users to use %s" +msgstr "" + +#: actions/invite.php:72 +#, php-format +msgid "Invalid email address: %s" +msgstr "عنوان بريد إلكترونى غير صالح: %s" + +#: actions/invite.php:110 +msgid "Invitation(s) sent" +msgstr "أُرسلت الدعوة" + +#: actions/invite.php:112 +msgid "Invite new users" +msgstr "دعوه مستخدمين جدد" + +#: actions/invite.php:128 +msgid "You are already subscribed to these users:" +msgstr "" + +#: actions/invite.php:131 actions/invite.php:139 +#, php-format +msgid "%s (%s)" +msgstr "%s (%s)" + +#: actions/invite.php:136 +msgid "" +"These people are already users and you were automatically subscribed to them:" +msgstr "" + +#: actions/invite.php:144 +msgid "Invitation(s) sent to the following people:" +msgstr "" + +#: actions/invite.php:150 +msgid "" +"You will be notified when your invitees accept the invitation and register " +"on the site. Thanks for growing the community!" +msgstr "" + +#: actions/invite.php:162 +msgid "" +"Use this form to invite your friends and colleagues to use this service." +msgstr "" + +#: actions/invite.php:187 +msgid "Email addresses" +msgstr "عناوين البريد الإلكتروني" + +#: actions/invite.php:189 +msgid "Addresses of friends to invite (one per line)" +msgstr "" + +#: actions/invite.php:192 +msgid "Personal message" +msgstr "رساله شخصية" + +#: actions/invite.php:194 +msgid "Optionally add a personal message to the invitation." +msgstr "" + +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +msgid "Send" +msgstr "أرسل" + +#: actions/invite.php:226 +#, php-format +msgid "%1$s has invited you to join them on %2$s" +msgstr "" + +#: actions/invite.php:228 +#, php-format +msgid "" +"%1$s has invited you to join them on %2$s (%3$s).\n" +"\n" +"%2$s is a micro-blogging service that lets you keep up-to-date with people " +"you know and people who interest you.\n" +"\n" +"You can also share news about yourself, your thoughts, or your life online " +"with people who know about you. It's also great for meeting new people who " +"share your interests.\n" +"\n" +"%1$s said:\n" +"\n" +"%4$s\n" +"\n" +"You can see %1$s's profile page on %2$s here:\n" +"\n" +"%5$s\n" +"\n" +"If you'd like to try the service, click on the link below to accept the " +"invitation.\n" +"\n" +"%6$s\n" +"\n" +"If not, you can ignore this message. Thanks for your patience and your " +"time.\n" +"\n" +"Sincerely, %2$s\n" +msgstr "" + +#: actions/joingroup.php:60 +msgid "You must be logged in to join a group." +msgstr "" + +#: actions/joingroup.php:90 lib/command.php:217 +msgid "You are already a member of that group" +msgstr "" + +#: actions/joingroup.php:128 lib/command.php:234 +#, php-format +msgid "Could not join user %s to group %s" +msgstr "" + +#: actions/joingroup.php:135 lib/command.php:239 +#, php-format +msgid "%s joined group %s" +msgstr "%s انضم إلى مجموعه %s" + +#: actions/leavegroup.php:60 +msgid "You must be logged in to leave a group." +msgstr "" + +#: actions/leavegroup.php:90 lib/command.php:268 +msgid "You are not a member of that group." +msgstr "لست عضوا فى تلك المجموعه." + +#: actions/leavegroup.php:119 lib/command.php:278 +msgid "Could not find membership record." +msgstr "" + +#: actions/leavegroup.php:127 lib/command.php:284 +#, php-format +msgid "Could not remove user %s to group %s" +msgstr "" + +#: actions/leavegroup.php:134 lib/command.php:289 +#, php-format +msgid "%s left group %s" +msgstr "" + +#: actions/login.php:83 actions/register.php:137 +msgid "Already logged in." +msgstr "والج بالفعل." + +#: actions/login.php:114 actions/login.php:124 +msgid "Invalid or expired token." +msgstr "" + +#: actions/login.php:147 +msgid "Incorrect username or password." +msgstr "اسم المستخدم أو كلمه السر غير صحيحان." + +#: actions/login.php:153 +msgid "Error setting user. You are probably not authorized." +msgstr "خطأ أثناء ضبط المستخدم. لست مُصرحًا على الأرجح." + +#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: lib/logingroupnav.php:79 +msgid "Login" +msgstr "لُج" + +#: actions/login.php:247 +msgid "Login to site" +msgstr "لُج إلى الموقع" + +#: actions/login.php:250 actions/profilesettings.php:106 +#: actions/register.php:423 actions/showgroup.php:236 actions/tagother.php:94 +#: lib/groupeditform.php:152 lib/userprofile.php:131 +msgid "Nickname" +msgstr "الاسم المستعار" + +#: actions/login.php:253 actions/register.php:428 +#: lib/accountsettingsaction.php:116 +msgid "Password" +msgstr "كلمه السر" + +#: actions/login.php:256 actions/register.php:477 +msgid "Remember me" +msgstr "تذكّرني" + +#: actions/login.php:257 actions/register.php:479 +msgid "Automatically login in the future; not for shared computers!" +msgstr "" + +#: actions/login.php:267 +msgid "Lost or forgotten password?" +msgstr "أنسيت كلمه السر؟" + +#: actions/login.php:286 +msgid "" +"For security reasons, please re-enter your user name and password before " +"changing your settings." +msgstr "" + +#: actions/login.php:290 +#, php-format +msgid "" +"Login with your username and password. Don't have a username yet? [Register]" +"(%%action.register%%) a new account." +msgstr "" + +#: actions/makeadmin.php:91 +msgid "Only an admin can make another user an admin." +msgstr "" + +#: actions/makeadmin.php:95 +#, php-format +msgid "%s is already an admin for group \"%s\"." +msgstr "" + +#: actions/makeadmin.php:132 +#, php-format +msgid "Can't get membership record for %s in group %s" +msgstr "" + +#: actions/makeadmin.php:145 +#, php-format +msgid "Can't make %s an admin for group %s" +msgstr "" + +#: actions/microsummary.php:69 +msgid "No current status" +msgstr "لا حاله حالية" + +#: actions/newgroup.php:53 +msgid "New group" +msgstr "مجموعه جديدة" + +#: actions/newgroup.php:110 +msgid "Use this form to create a new group." +msgstr "استخدم هذا النموذج لإنشاء مجموعه جديده." + +#: actions/newmessage.php:71 actions/newmessage.php:231 +msgid "New message" +msgstr "رساله جديدة" + +#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:367 +msgid "You can't send a message to this user." +msgstr "" + +#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:351 +#: lib/command.php:424 +msgid "No content!" +msgstr "لا محتوى!" + +#: actions/newmessage.php:158 +msgid "No recipient specified." +msgstr "لا مستلم حُدّد." + +#: actions/newmessage.php:164 lib/command.php:370 +msgid "" +"Don't send a message to yourself; just say it to yourself quietly instead." +msgstr "" + +#: actions/newmessage.php:181 +msgid "Message sent" +msgstr "أُرسلت الرسالة" + +#: actions/newmessage.php:185 lib/command.php:375 +#, php-format +msgid "Direct message to %s sent" +msgstr "" + +#: actions/newmessage.php:210 actions/newnotice.php:242 lib/channel.php:170 +msgid "Ajax Error" +msgstr "خطأ أجاكس" + +#: actions/newnotice.php:69 +msgid "New notice" +msgstr "إشعار جديد" + +#: actions/newnotice.php:208 +msgid "Notice posted" +msgstr "أُرسل الإشعار" + +#: actions/noticesearch.php:68 +#, php-format +msgid "" +"Search for notices on %%site.name%% by their contents. Separate search terms " +"by spaces; they must be 3 characters or more." +msgstr "" + +#: actions/noticesearch.php:78 +msgid "Text search" +msgstr "بحث فى النصوص" + +#: actions/noticesearch.php:91 +#, php-format +msgid "Search results for \"%s\" on %s" +msgstr "نتائج البحث عن \"%s\" فى %s" + +#: actions/noticesearch.php:121 +#, php-format +msgid "" +"Be the first to [post on this topic](%%%%action.newnotice%%%%?" +"status_textarea=%s)!" +msgstr "" + +#: actions/noticesearch.php:124 +#, php-format +msgid "" +"Why not [register an account](%%%%action.register%%%%) and be the first to " +"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!" +msgstr "" + +#: actions/noticesearchrss.php:96 +#, php-format +msgid "Updates with \"%s\"" +msgstr "" + +#: actions/noticesearchrss.php:98 +#, php-format +msgid "Updates matching search term \"%1$s\" on %2$s!" +msgstr "" + +#: actions/nudge.php:85 +msgid "" +"This user doesn't allow nudges or hasn't confirmed or set his email yet." +msgstr "" + +#: actions/nudge.php:94 +msgid "Nudge sent" +msgstr "أرسل التنبيه" + +#: actions/nudge.php:97 +msgid "Nudge sent!" +msgstr "أُرسل التنبيه!" + +#: actions/oembed.php:79 actions/shownotice.php:100 +msgid "Notice has no profile" +msgstr "" + +#: actions/oembed.php:86 actions/shownotice.php:180 +#, php-format +msgid "%1$s's status on %2$s" +msgstr "" + +#: actions/oembed.php:157 +msgid "content type " +msgstr "نوع المحتوى " + +#: actions/oembed.php:160 +msgid "Only " +msgstr "" + +#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1011 +#: lib/api.php:1039 lib/api.php:1149 +msgid "Not a supported data format." +msgstr "ليس نسق بيانات مدعوم." + +#: actions/opensearch.php:64 +msgid "People Search" +msgstr "بحث فى الأشخاص" + +#: actions/opensearch.php:67 +msgid "Notice Search" +msgstr "بحث الإشعارات" + +#: actions/othersettings.php:60 +msgid "Other Settings" +msgstr "إعدادات أخرى" + +#: actions/othersettings.php:71 +msgid "Manage various other options." +msgstr "أدر خيارات أخرى عديده." + +#: actions/othersettings.php:108 +msgid " (free service)" +msgstr " (خدمه حرة)" + +#: actions/othersettings.php:116 +msgid "Shorten URLs with" +msgstr "قصّر المسارات بـ" + +#: actions/othersettings.php:117 +msgid "Automatic shortening service to use." +msgstr "خدمه التقصير المطلوب استخدامها." + +#: actions/othersettings.php:122 +msgid "View profile designs" +msgstr "اعرض تصاميم الملف الشخصي" + +#: actions/othersettings.php:123 +msgid "Show or hide profile designs." +msgstr "أظهر أو أخفِ تصاميم الملفات الشخصيه." + +#: actions/othersettings.php:153 +msgid "URL shortening service is too long (max 50 chars)." +msgstr "" + +#: actions/outbox.php:58 +#, php-format +msgid "Outbox for %s - page %d" +msgstr "" + +#: actions/outbox.php:61 +#, php-format +msgid "Outbox for %s" +msgstr "" + +#: actions/outbox.php:116 +msgid "This is your outbox, which lists private messages you have sent." +msgstr "" + +#: actions/passwordsettings.php:58 +msgid "Change password" +msgstr "غيّر كلمه السر" + +#: actions/passwordsettings.php:69 +msgid "Change your password." +msgstr "غيّر كلمه سرك." + +#: actions/passwordsettings.php:96 actions/recoverpassword.php:231 +msgid "Password change" +msgstr "تغيير كلمه السر" + +#: actions/passwordsettings.php:104 +msgid "Old password" +msgstr "كلمه السر القديمة" + +#: actions/passwordsettings.php:108 actions/recoverpassword.php:235 +msgid "New password" +msgstr "كلمه سر جديدة" + +#: actions/passwordsettings.php:109 +msgid "6 or more characters" +msgstr "" + +#: actions/passwordsettings.php:112 actions/recoverpassword.php:239 +#: actions/register.php:432 actions/smssettings.php:134 +msgid "Confirm" +msgstr "أكّد" + +#: actions/passwordsettings.php:113 actions/recoverpassword.php:240 +msgid "Same as password above" +msgstr "نفس كلمه السر أعلاه" + +#: actions/passwordsettings.php:117 +msgid "Change" +msgstr "غيّر" + +#: actions/passwordsettings.php:154 actions/register.php:230 +msgid "Password must be 6 or more characters." +msgstr "يجب أن تكون كلمه السر 6 حروف أو أكثر." + +#: actions/passwordsettings.php:157 actions/register.php:233 +msgid "Passwords don't match." +msgstr "كلمتا السر غير متطابقتين." + +#: actions/passwordsettings.php:165 +msgid "Incorrect old password" +msgstr "كلمه السر القديمه غير صحيحة" + +#: actions/passwordsettings.php:181 +msgid "Error saving user; invalid." +msgstr "خطأ أثناء حفظ المستخدم؛ غير صالح." + +#: actions/passwordsettings.php:186 actions/recoverpassword.php:368 +msgid "Can't save new password." +msgstr "تعذّر حفظ كلمه السر الجديده." + +#: actions/passwordsettings.php:192 actions/recoverpassword.php:211 +msgid "Password saved." +msgstr "حُفظت كلمه السر." + +#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:308 +msgid "Paths" +msgstr "المسارات" + +#: actions/pathsadminpanel.php:70 +msgid "Path and server settings for this StatusNet site." +msgstr "" + +#: actions/pathsadminpanel.php:140 +#, php-format +msgid "Theme directory not readable: %s" +msgstr "لا يمكن قراءه دليل السمات: %s" + +#: actions/pathsadminpanel.php:146 +#, php-format +msgid "Avatar directory not writable: %s" +msgstr "لا يمكن الكتابه فى دليل الأفتارات: %s" + +#: actions/pathsadminpanel.php:152 +#, php-format +msgid "Background directory not writable: %s" +msgstr "لا يمكن الكتابه فى دليل الخلفيات: %s" + +#: actions/pathsadminpanel.php:160 +#, php-format +msgid "Locales directory not readable: %s" +msgstr "لا يمكن قراءه دليل المحليات: %s" + +#: actions/pathsadminpanel.php:212 actions/siteadminpanel.php:58 +#: lib/adminpanelaction.php:299 +msgid "Site" +msgstr "الموقع" + +#: actions/pathsadminpanel.php:216 +msgid "Path" +msgstr "المسار" + +#: actions/pathsadminpanel.php:216 +msgid "Site path" +msgstr "مسار الموقع" + +#: actions/pathsadminpanel.php:220 +msgid "Path to locales" +msgstr "مسار المحليات" + +#: actions/pathsadminpanel.php:220 +msgid "Directory path to locales" +msgstr "مسار دليل المحليات" + +#: actions/pathsadminpanel.php:227 +msgid "Theme" +msgstr "السمة" + +#: actions/pathsadminpanel.php:232 +msgid "Theme server" +msgstr "خادوم السمات" + +#: actions/pathsadminpanel.php:236 +msgid "Theme path" +msgstr "مسار السمات" + +#: actions/pathsadminpanel.php:240 +msgid "Theme directory" +msgstr "دليل السمات" + +#: actions/pathsadminpanel.php:247 +msgid "Avatars" +msgstr "أفتارات" + +#: actions/pathsadminpanel.php:252 +msgid "Avatar server" +msgstr "خادوم الأفتارات" + +#: actions/pathsadminpanel.php:256 +msgid "Avatar path" +msgstr "مسار الأفتارات" + +#: actions/pathsadminpanel.php:260 +msgid "Avatar directory" +msgstr "دليل الأفتار." + +#: actions/pathsadminpanel.php:269 +msgid "Backgrounds" +msgstr "خلفيات" + +#: actions/pathsadminpanel.php:273 +msgid "Background server" +msgstr "خادوم الخلفيات" + +#: actions/pathsadminpanel.php:277 +msgid "Background path" +msgstr "مسار الخلفيات" + +#: actions/pathsadminpanel.php:281 +msgid "Background directory" +msgstr "دليل الخلفيات" + +#: actions/pathsadminpanel.php:297 +msgid "Save paths" +msgstr "احفظ المسارات" + +#: actions/peoplesearch.php:52 +#, php-format +msgid "" +"Search for people on %%site.name%% by their name, location, or interests. " +"Separate the terms by spaces; they must be 3 characters or more." +msgstr "" + +#: actions/peoplesearch.php:58 +msgid "People search" +msgstr "بحث فى الأشخاص" + +#: actions/peopletag.php:70 +#, php-format +msgid "Not a valid people tag: %s" +msgstr "ليس وسم أشخاص صالح: %s" + +#: actions/peopletag.php:144 +#, php-format +msgid "Users self-tagged with %s - page %d" +msgstr "" + +#: actions/postnotice.php:84 +msgid "Invalid notice content" +msgstr "محتوى إشعار غير صالح" + +#: actions/postnotice.php:90 +#, php-format +msgid "Notice license ‘%s’ is not compatible with site license ‘%s’." +msgstr "" + +#: actions/profilesettings.php:60 +msgid "Profile settings" +msgstr "إعدادات الملف الشخصي" + +#: actions/profilesettings.php:71 +msgid "" +"You can update your personal profile info here so people know more about you." +msgstr "" + +#: actions/profilesettings.php:99 +msgid "Profile information" +msgstr "معلومات الملف الشخصي" + +#: actions/profilesettings.php:108 lib/groupeditform.php:154 +msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +msgstr "" + +#: actions/profilesettings.php:111 actions/register.php:447 +#: actions/showgroup.php:247 actions/tagother.php:104 +#: lib/groupeditform.php:157 lib/userprofile.php:149 +msgid "Full name" +msgstr "الاسم الكامل" + +#: actions/profilesettings.php:115 actions/register.php:452 +#: lib/groupeditform.php:161 +msgid "Homepage" +msgstr "الصفحه الرئيسية" + +#: actions/profilesettings.php:117 actions/register.php:454 +msgid "URL of your homepage, blog, or profile on another site" +msgstr "" + +#: actions/profilesettings.php:122 actions/register.php:460 +#, php-format +msgid "Describe yourself and your interests in %d chars" +msgstr "" + +#: actions/profilesettings.php:125 actions/register.php:463 +msgid "Describe yourself and your interests" +msgstr "صِف نفسك واهتماماتك" + +#: actions/profilesettings.php:127 actions/register.php:465 +msgid "Bio" +msgstr "السيرة" + +#: actions/profilesettings.php:132 actions/register.php:470 +#: actions/showgroup.php:256 actions/tagother.php:112 +#: actions/userauthorization.php:158 lib/groupeditform.php:177 +#: lib/userprofile.php:164 +msgid "Location" +msgstr "الموقع" + +#: actions/profilesettings.php:134 actions/register.php:472 +msgid "Where you are, like \"City, State (or Region), Country\"" +msgstr "" + +#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/tagother.php:209 lib/subscriptionlist.php:106 +#: lib/subscriptionlist.php:108 lib/userprofile.php:209 +msgid "Tags" +msgstr "الوسوم" + +#: actions/profilesettings.php:140 +msgid "" +"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" +msgstr "" + +#: actions/profilesettings.php:144 actions/siteadminpanel.php:307 +msgid "Language" +msgstr "اللغة" + +#: actions/profilesettings.php:145 +msgid "Preferred language" +msgstr "اللغه المفضلة" + +#: actions/profilesettings.php:154 +msgid "Timezone" +msgstr "المنطقه الزمنية" + +#: actions/profilesettings.php:155 +msgid "What timezone are you normally in?" +msgstr "ما المنطقه الزمنيه التى تتواجد فيها عادة؟" + +#: actions/profilesettings.php:160 +msgid "" +"Automatically subscribe to whoever subscribes to me (best for non-humans)" +msgstr "" + +#: actions/profilesettings.php:221 actions/register.php:223 +#, php-format +msgid "Bio is too long (max %d chars)." +msgstr "" + +#: actions/profilesettings.php:228 actions/siteadminpanel.php:165 +msgid "Timezone not selected." +msgstr "لم تُختر المنطقه الزمنيه." + +#: actions/profilesettings.php:234 +msgid "Language is too long (max 50 chars)." +msgstr "" + +#: actions/profilesettings.php:246 actions/tagother.php:178 +#, php-format +msgid "Invalid tag: \"%s\"" +msgstr "وسم غير صالح: \"%s\"" + +#: actions/profilesettings.php:295 +msgid "Couldn't update user for autosubscribe." +msgstr "" + +#: actions/profilesettings.php:328 +msgid "Couldn't save profile." +msgstr "تعذّر حفظ الملف الشخصى." + +#: actions/profilesettings.php:336 +msgid "Couldn't save tags." +msgstr "تعذّر حفظ الوسوم." + +#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +msgid "Settings saved." +msgstr "حُفظت الإعدادات." + +#: actions/public.php:83 +#, php-format +msgid "Beyond the page limit (%s)" +msgstr "وراء حد الصفحه (%s)" + +#: actions/public.php:92 +msgid "Could not retrieve public stream." +msgstr "" + +#: actions/public.php:129 +#, php-format +msgid "Public timeline, page %d" +msgstr "المسار الزمنى العام، صفحه %d" + +#: actions/public.php:131 lib/publicgroupnav.php:79 +msgid "Public timeline" +msgstr "المسار الزمنى العام" + +#: actions/public.php:151 +msgid "Public Stream Feed (RSS 1.0)" +msgstr "" + +#: actions/public.php:155 +msgid "Public Stream Feed (RSS 2.0)" +msgstr "" + +#: actions/public.php:159 +msgid "Public Stream Feed (Atom)" +msgstr "" + +#: actions/public.php:179 +#, php-format +msgid "" +"This is the public timeline for %%site.name%% but no one has posted anything " +"yet." +msgstr "" + +#: actions/public.php:182 +msgid "Be the first to post!" +msgstr "كن أول من يُرسل!" + +#: actions/public.php:186 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and be the first to post!" +msgstr "" + +#: actions/public.php:233 +#, php-format +msgid "" +"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-" +"blogging) service based on the Free Software [StatusNet](http://status.net/) " +"tool. [Join now](%%action.register%%) to share notices about yourself with " +"friends, family, and colleagues! ([Read more](%%doc.help%%))" +msgstr "" +"هنا %%site.name%%، خدمه [التدوين المُصغّر](http://en.wikipedia.org/wiki/Micro-" +"blogging) المبنيه على البرنامج الحر [StatusNet](http://status.net/). [انضم " +"الآن](%%action.register%%) لتشارك اشعاراتك مع أصدقائك وعائلتك وزملائك! " +"([اقرأ المزيد](%%doc.help%%))" + +#: actions/public.php:238 +#, php-format +msgid "" +"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-" +"blogging) service based on the Free Software [StatusNet](http://status.net/) " +"tool." +msgstr "" +"هنا %%site.name%%، خدمه [التدوين المُصغّر](http://en.wikipedia.org/wiki/Micro-" +"blogging) المبنيه على البرنامج الحر [StatusNet](http://status.net/)." + +#: actions/publictagcloud.php:57 +msgid "Public tag cloud" +msgstr "سحابه الوسوم العمومية" + +#: actions/publictagcloud.php:63 +#, php-format +msgid "These are most popular recent tags on %s " +msgstr "هذه هى أكثر الوسوم شهره على %s " + +#: actions/publictagcloud.php:69 +#, php-format +msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet." +msgstr "" + +#: actions/publictagcloud.php:72 +msgid "Be the first to post one!" +msgstr "كن أول من يُرسل!" + +#: actions/publictagcloud.php:75 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and be the first to post " +"one!" +msgstr "" + +#: actions/publictagcloud.php:135 +msgid "Tag cloud" +msgstr "سحابه الوسوم" + +#: actions/recoverpassword.php:36 +msgid "You are already logged in!" +msgstr "أنت والج بالفعل!" + +#: actions/recoverpassword.php:62 +msgid "No such recovery code." +msgstr "لا رمز استعاده كهذا." + +#: actions/recoverpassword.php:66 +msgid "Not a recovery code." +msgstr "ليس رمز استعاده." + +#: actions/recoverpassword.php:73 +msgid "Recovery code for unknown user." +msgstr "رمز استعاده لمستخدم غير معروف." + +#: actions/recoverpassword.php:86 +msgid "Error with confirmation code." +msgstr "خطأ فى رمز التأكيد." + +#: actions/recoverpassword.php:97 +msgid "This confirmation code is too old. Please start again." +msgstr "رمز التأكيد هذا قديم جدًا. من فضلك ابدأ من جديد." + +#: actions/recoverpassword.php:111 +msgid "Could not update user with confirmed email address." +msgstr "" + +#: actions/recoverpassword.php:152 +msgid "" +"If you have forgotten or lost your password, you can get a new one sent to " +"the email address you have stored in your account." +msgstr "" + +#: actions/recoverpassword.php:158 +msgid "You have been identified. Enter a new password below. " +msgstr "" + +#: actions/recoverpassword.php:188 +msgid "Password recovery" +msgstr "استعاده كلمه السر" + +#: actions/recoverpassword.php:191 +msgid "Nickname or email address" +msgstr "الاسم المستعار أو البريد الإلكتروني" + +#: actions/recoverpassword.php:193 +msgid "Your nickname on this server, or your registered email address." +msgstr "" + +#: actions/recoverpassword.php:199 actions/recoverpassword.php:200 +msgid "Recover" +msgstr "استرجع" + +#: actions/recoverpassword.php:208 +msgid "Reset password" +msgstr "أعد ضبط كلمه السر" + +#: actions/recoverpassword.php:209 +msgid "Recover password" +msgstr "استعد كلمه السر" + +#: actions/recoverpassword.php:210 actions/recoverpassword.php:322 +msgid "Password recovery requested" +msgstr "طُلبت استعاده كلمه السر" + +#: actions/recoverpassword.php:213 +msgid "Unknown action" +msgstr "إجراء غير معروف" + +#: actions/recoverpassword.php:236 +msgid "6 or more characters, and don't forget it!" +msgstr "" + +#: actions/recoverpassword.php:243 +msgid "Reset" +msgstr "أعد الضبط" + +#: actions/recoverpassword.php:252 +msgid "Enter a nickname or email address." +msgstr "أدخل اسمًا مستعارًا أو عنوان بريد إلكترونى." + +#: actions/recoverpassword.php:272 +msgid "No user with that email address or username." +msgstr "" + +#: actions/recoverpassword.php:287 +msgid "No registered email address for that user." +msgstr "" + +#: actions/recoverpassword.php:301 +msgid "Error saving address confirmation." +msgstr "خطأ أثناء حفظ تأكيد العنوان." + +#: actions/recoverpassword.php:325 +msgid "" +"Instructions for recovering your password have been sent to the email " +"address registered to your account." +msgstr "" + +#: actions/recoverpassword.php:344 +msgid "Unexpected password reset." +msgstr "" + +#: actions/recoverpassword.php:352 +msgid "Password must be 6 chars or more." +msgstr "يجب أن تكون كلمه السر 6 محارف أو أكثر." + +#: actions/recoverpassword.php:356 +msgid "Password and confirmation do not match." +msgstr "" + +#: actions/recoverpassword.php:375 actions/register.php:248 +msgid "Error setting user." +msgstr "خطأ أثناء ضبط المستخدم." + +#: actions/recoverpassword.php:382 +msgid "New password successfully saved. You are now logged in." +msgstr "" + +#: actions/register.php:85 actions/register.php:189 actions/register.php:404 +msgid "Sorry, only invited people can register." +msgstr "عذرًا، الأشخاص المدعوون وحدهم يستطيعون التسجيل." + +#: actions/register.php:92 +msgid "Sorry, invalid invitation code." +msgstr "عذرا، رمز دعوه غير صالح." + +#: actions/register.php:112 +msgid "Registration successful" +msgstr "نجح التسجيل" + +#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: lib/logingroupnav.php:85 +msgid "Register" +msgstr "سجّل" + +#: actions/register.php:135 +msgid "Registration not allowed." +msgstr "لا يُسمح بالتسجيل." + +#: actions/register.php:198 +msgid "You can't register if you don't agree to the license." +msgstr "" + +#: actions/register.php:201 +msgid "Not a valid email address." +msgstr "ليس عنوان بريد صالح." + +#: actions/register.php:212 +msgid "Email address already exists." +msgstr "عنوان البريد الإلكترونى موجود مسبقًا." + +#: actions/register.php:243 actions/register.php:264 +msgid "Invalid username or password." +msgstr "اسم مستخدم أو كلمه سر غير صالحه." + +#: actions/register.php:342 +msgid "" +"With this form you can create a new account. You can then post notices and " +"link up to friends and colleagues. " +msgstr "" + +#: actions/register.php:424 +msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required." +msgstr "" + +#: actions/register.php:429 +msgid "6 or more characters. Required." +msgstr "6 حروف أو أكثر. مطلوب." + +#: actions/register.php:433 +msgid "Same as password above. Required." +msgstr "نفس كلمه السر أعلاه. مطلوب." + +#: actions/register.php:437 actions/register.php:441 +#: actions/siteadminpanel.php:283 lib/accountsettingsaction.php:120 +msgid "Email" +msgstr "البريد الإلكتروني" + +#: actions/register.php:438 actions/register.php:442 +msgid "Used only for updates, announcements, and password recovery" +msgstr "" + +#: actions/register.php:449 +msgid "Longer name, preferably your \"real\" name" +msgstr "" + +#: actions/register.php:493 +msgid "My text and files are available under " +msgstr "نصوصى وملفاتى متاحه تحت رخصه " + +#: actions/register.php:495 +msgid "Creative Commons Attribution 3.0" +msgstr "المشاع المبدع نسبه المنصف إلى مؤلفه 3.0" + +#: actions/register.php:496 +msgid "" +" except this private data: password, email address, IM address, and phone " +"number." +msgstr "" + +#: actions/register.php:537 +#, php-format +msgid "" +"Congratulations, %s! And welcome to %%%%site.name%%%%. From here, you may " +"want to...\n" +"\n" +"* Go to [your profile](%s) and post your first message.\n" +"* Add a [Jabber/GTalk address](%%%%action.imsettings%%%%) so you can send " +"notices through instant messages.\n" +"* [Search for people](%%%%action.peoplesearch%%%%) that you may know or that " +"share your interests. \n" +"* Update your [profile settings](%%%%action.profilesettings%%%%) to tell " +"others more about you. \n" +"* Read over the [online docs](%%%%doc.help%%%%) for features you may have " +"missed. \n" +"\n" +"Thanks for signing up and we hope you enjoy using this service." +msgstr "" + +#: actions/register.php:561 +msgid "" +"(You should receive a message by email momentarily, with instructions on how " +"to confirm your email address.)" +msgstr "" + +#: actions/remotesubscribe.php:98 +#, php-format +msgid "" +"To subscribe, you can [login](%%action.login%%), or [register](%%action." +"register%%) a new account. If you already have an account on a [compatible " +"microblogging site](%%doc.openmublog%%), enter your profile URL below." +msgstr "" + +#: actions/remotesubscribe.php:112 +msgid "Remote subscribe" +msgstr "اشتراك بعيد" + +#: actions/remotesubscribe.php:124 +msgid "Subscribe to a remote user" +msgstr "اشترك بمستخدم بعيد" + +#: actions/remotesubscribe.php:129 +msgid "User nickname" +msgstr "اسم المستخدم المستعار" + +#: actions/remotesubscribe.php:130 +msgid "Nickname of the user you want to follow" +msgstr "" + +#: actions/remotesubscribe.php:133 +msgid "Profile URL" +msgstr "مسار الملف الشخصي" + +#: actions/remotesubscribe.php:134 +msgid "URL of your profile on another compatible microblogging service" +msgstr "" + +#: actions/remotesubscribe.php:137 lib/subscribeform.php:139 +#: lib/userprofile.php:365 +msgid "Subscribe" +msgstr "اشترك" + +#: actions/remotesubscribe.php:159 +msgid "Invalid profile URL (bad format)" +msgstr "" + +#: actions/remotesubscribe.php:168 +msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)." +msgstr "" + +#: actions/remotesubscribe.php:176 +msgid "That’s a local profile! Login to subscribe." +msgstr "" + +#: actions/remotesubscribe.php:183 +msgid "Couldn’t get a request token." +msgstr "" + +#: actions/replies.php:125 actions/repliesrss.php:68 +#: lib/personalgroupnav.php:105 +#, php-format +msgid "Replies to %s" +msgstr "الردود على %s" + +#: actions/replies.php:127 +#, php-format +msgid "Replies to %s, page %d" +msgstr "الردود على %s، الصفحه %d" + +#: actions/replies.php:144 +#, php-format +msgid "Replies feed for %s (RSS 1.0)" +msgstr "" + +#: actions/replies.php:151 +#, php-format +msgid "Replies feed for %s (RSS 2.0)" +msgstr "" + +#: actions/replies.php:158 +#, php-format +msgid "Replies feed for %s (Atom)" +msgstr "" + +#: actions/replies.php:198 +#, php-format +msgid "" +"This is the timeline showing replies to %s but %s hasn't received a notice " +"to his attention yet." +msgstr "" + +#: actions/replies.php:203 +#, php-format +msgid "" +"You can engage other users in a conversation, subscribe to more people or " +"[join groups](%%action.groups%%)." +msgstr "" + +#: actions/replies.php:205 +#, php-format +msgid "" +"You can try to [nudge %s](../%s) or [post something to his or her attention]" +"(%%%%action.newnotice%%%%?status_textarea=%s)." +msgstr "" + +#: actions/repliesrss.php:72 +#, php-format +msgid "Replies to %1$s on %2$s!" +msgstr "" + +#: actions/sandbox.php:65 actions/unsandbox.php:65 +msgid "You cannot sandbox users on this site." +msgstr "" + +#: actions/sandbox.php:72 +msgid "User is already sandboxed." +msgstr "" + +#: actions/showfavorites.php:79 +#, php-format +msgid "%s's favorite notices, page %d" +msgstr "" + +#: actions/showfavorites.php:132 +msgid "Could not retrieve favorite notices." +msgstr "" + +#: actions/showfavorites.php:170 +#, php-format +msgid "Feed for favorites of %s (RSS 1.0)" +msgstr "" + +#: actions/showfavorites.php:177 +#, php-format +msgid "Feed for favorites of %s (RSS 2.0)" +msgstr "" + +#: actions/showfavorites.php:184 +#, php-format +msgid "Feed for favorites of %s (Atom)" +msgstr "" + +#: actions/showfavorites.php:205 +msgid "" +"You haven't chosen any favorite notices yet. Click the fave button on " +"notices you like to bookmark them for later or shed a spotlight on them." +msgstr "" + +#: actions/showfavorites.php:207 +#, php-format +msgid "" +"%s hasn't added any notices to his favorites yet. Post something interesting " +"they would add to their favorites :)" +msgstr "" +"%s لم يضف أى إشعارات إلى مفضلته إلى الآن. أرسل شيئًا شيقًا ليضيفه إلى " +"مفضلته. :)" + +#: actions/showfavorites.php:211 +#, php-format +msgid "" +"%s hasn't added any notices to his favorites yet. Why not [register an " +"account](%%%%action.register%%%%) and then post something interesting they " +"would add to their favorites :)" +msgstr "" +"%s لم يضف أى إشعارات إلى مفضلته إلى الآن. لمّ لا [تسجل حسابًا](%%%%action." +"register%%%%) وترسل شيئًا شيقًا ليضيفه إلى مفضلته. :)" + +#: actions/showfavorites.php:242 +msgid "This is a way to share what you like." +msgstr "إنها إحدى وسائل مشاركه ما تحب." + +#: actions/showgroup.php:82 lib/groupnav.php:86 +#, php-format +msgid "%s group" +msgstr "مجموعه %s" + +#: actions/showgroup.php:84 +#, php-format +msgid "%s group, page %d" +msgstr "" + +#: actions/showgroup.php:218 +msgid "Group profile" +msgstr "ملف المجموعه الشخصي" + +#: actions/showgroup.php:263 actions/tagother.php:118 +#: actions/userauthorization.php:167 lib/userprofile.php:177 +msgid "URL" +msgstr "مسار" + +#: actions/showgroup.php:274 actions/tagother.php:128 +#: actions/userauthorization.php:179 lib/userprofile.php:194 +msgid "Note" +msgstr "ملاحظة" + +#: actions/showgroup.php:284 lib/groupeditform.php:184 +msgid "Aliases" +msgstr "الكنى" + +#: actions/showgroup.php:293 +msgid "Group actions" +msgstr "" + +#: actions/showgroup.php:328 +#, php-format +msgid "Notice feed for %s group (RSS 1.0)" +msgstr "" + +#: actions/showgroup.php:334 +#, php-format +msgid "Notice feed for %s group (RSS 2.0)" +msgstr "" + +#: actions/showgroup.php:340 +#, php-format +msgid "Notice feed for %s group (Atom)" +msgstr "" + +#: actions/showgroup.php:345 +#, php-format +msgid "FOAF for %s group" +msgstr "" + +#: actions/showgroup.php:381 actions/showgroup.php:438 lib/groupnav.php:91 +msgid "Members" +msgstr "الأعضاء" + +#: actions/showgroup.php:386 lib/profileaction.php:117 +#: lib/profileaction.php:148 lib/profileaction.php:236 lib/section.php:95 +#: lib/tagcloudsection.php:71 +msgid "(None)" +msgstr "(لا شيء)" + +#: actions/showgroup.php:392 +msgid "All members" +msgstr "جميع الأعضاء" + +#: actions/showgroup.php:429 lib/profileaction.php:174 +msgid "Statistics" +msgstr "إحصاءات" + +#: actions/showgroup.php:432 +msgid "Created" +msgstr "أنشئ" + +#: actions/showgroup.php:448 +#, php-format +msgid "" +"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. Its members share short messages about " +"their life and interests. [Join now](%%%%action.register%%%%) to become part " +"of this group and many more! ([Read more](%%%%doc.help%%%%))" +msgstr "" + +#: actions/showgroup.php:454 +#, php-format +msgid "" +"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. Its members share short messages about " +"their life and interests. " +msgstr "" + +#: actions/showgroup.php:482 +msgid "Admins" +msgstr "الإداريون" + +#: actions/showmessage.php:81 +msgid "No such message." +msgstr "لا رساله كهذه." + +#: actions/showmessage.php:98 +msgid "Only the sender and recipient may read this message." +msgstr "يحق للمُرسل والمستلم فقط قراءه هذه الرساله." + +#: actions/showmessage.php:108 +#, php-format +msgid "Message to %1$s on %2$s" +msgstr "" + +#: actions/showmessage.php:113 +#, php-format +msgid "Message from %1$s on %2$s" +msgstr "" + +#: actions/shownotice.php:90 +msgid "Notice deleted." +msgstr "حُذف الإشعار." + +#: actions/showstream.php:73 +#, php-format +msgid " tagged %s" +msgstr "" + +#: actions/showstream.php:79 +#, php-format +msgid "%s, page %d" +msgstr "" + +#: actions/showstream.php:122 +#, php-format +msgid "Notice feed for %s tagged %s (RSS 1.0)" +msgstr "" + +#: actions/showstream.php:129 +#, php-format +msgid "Notice feed for %s (RSS 1.0)" +msgstr "" + +#: actions/showstream.php:136 +#, php-format +msgid "Notice feed for %s (RSS 2.0)" +msgstr "" + +#: actions/showstream.php:143 +#, php-format +msgid "Notice feed for %s (Atom)" +msgstr "" + +#: actions/showstream.php:148 +#, php-format +msgid "FOAF for %s" +msgstr "" + +#: actions/showstream.php:191 +#, php-format +msgid "This is the timeline for %s but %s hasn't posted anything yet." +msgstr "" + +#: actions/showstream.php:196 +msgid "" +"Seen anything interesting recently? You haven't posted any notices yet, now " +"would be a good time to start :)" +msgstr "" + +#: actions/showstream.php:198 +#, php-format +msgid "" +"You can try to nudge %s or [post something to his or her attention](%%%%" +"action.newnotice%%%%?status_textarea=%s)." +msgstr "" + +#: actions/showstream.php:234 +#, php-format +msgid "" +"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to " +"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))" +msgstr "" + +#: actions/showstream.php:239 +#, php-format +msgid "" +"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. " +msgstr "" + +#: actions/silence.php:65 actions/unsilence.php:65 +msgid "You cannot silence users on this site." +msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع." + +#: actions/silence.php:72 +msgid "User is already silenced." +msgstr "المستخدم مسكت من قبل." + +#: actions/siteadminpanel.php:69 +msgid "Basic settings for this StatusNet site." +msgstr "الإعدادات الأساسيه لموقع StatusNet هذا." + +#: actions/siteadminpanel.php:147 +msgid "Site name must have non-zero length." +msgstr "يجب ألا يكون طول اسم الموقع صفرًا." + +#: actions/siteadminpanel.php:155 +msgid "You must have a valid contact email address" +msgstr "يجب أن تملك عنوان بريد إلكترونى صالح للاتصال" + +#: actions/siteadminpanel.php:173 +#, php-format +msgid "Unknown language \"%s\"" +msgstr "لغه غير معروفه \"%s\"" + +#: actions/siteadminpanel.php:180 +msgid "Invalid snapshot report URL." +msgstr "" + +#: actions/siteadminpanel.php:186 +msgid "Invalid snapshot run value." +msgstr "" + +#: actions/siteadminpanel.php:192 +msgid "Snapshot frequency must be a number." +msgstr "" + +#: actions/siteadminpanel.php:199 +msgid "You must set an SSL server when enabling SSL." +msgstr "" + +#: actions/siteadminpanel.php:204 +msgid "Invalid SSL server. The maximum length is 255 characters." +msgstr "" + +#: actions/siteadminpanel.php:210 +msgid "Minimum text limit is 140 characters." +msgstr "حد النص الأدنى هو 140 حرفًا." + +#: actions/siteadminpanel.php:216 +msgid "Dupe limit must 1 or more seconds." +msgstr "" + +#: actions/siteadminpanel.php:266 +msgid "General" +msgstr "عام" + +#: actions/siteadminpanel.php:269 +msgid "Site name" +msgstr "اسم الموقع" + +#: actions/siteadminpanel.php:270 +msgid "The name of your site, like \"Yourcompany Microblog\"" +msgstr "اسم موقعك، \"التدوين المصغر لشركتك\" مثلا" + +#: actions/siteadminpanel.php:274 +msgid "Brought by" +msgstr "" + +#: actions/siteadminpanel.php:275 +msgid "Text used for credits link in footer of each page" +msgstr "" + +#: actions/siteadminpanel.php:279 +msgid "Brought by URL" +msgstr "" + +#: actions/siteadminpanel.php:280 +msgid "URL used for credits link in footer of each page" +msgstr "" + +#: actions/siteadminpanel.php:284 +msgid "Contact email address for your site" +msgstr "عنوان البريد الإلكترونى للاتصال بموقعك" + +#: actions/siteadminpanel.php:290 +msgid "Local" +msgstr "محلي" + +#: actions/siteadminpanel.php:301 +msgid "Default timezone" +msgstr "المنطقه الزمنيه المبدئية" + +#: actions/siteadminpanel.php:302 +msgid "Default timezone for the site; usually UTC." +msgstr "المنطقه الزمنيه المبدئيه للموقع؛ ت‌ع‌م عاده." + +#: actions/siteadminpanel.php:308 +msgid "Default site language" +msgstr "لغه الموقع المبدئية" + +#: actions/siteadminpanel.php:316 +msgid "URLs" +msgstr "مسارات" + +#: actions/siteadminpanel.php:319 +msgid "Server" +msgstr "خادوم" + +#: actions/siteadminpanel.php:319 +msgid "Site's server hostname." +msgstr "اسم مضيف خادوم الموقع." + +#: actions/siteadminpanel.php:323 +msgid "Fancy URLs" +msgstr "مسارات فاخرة" + +#: actions/siteadminpanel.php:325 +msgid "Use fancy (more readable and memorable) URLs?" +msgstr "أأستخدم مسارات فاخره (يمكن قراءتها وتذكرها بسهوله أكبر)؟" + +#: actions/siteadminpanel.php:331 +msgid "Access" +msgstr "نفاذ" + +#: actions/siteadminpanel.php:334 +msgid "Private" +msgstr "خاص" + +#: actions/siteadminpanel.php:336 +msgid "Prohibit anonymous users (not logged in) from viewing site?" +msgstr "أأمنع المستخدمين المجهولين (غير الوالجين) من عرض الموقع؟" + +#: actions/siteadminpanel.php:340 +#, fuzzy +msgid "Invite only" +msgstr "ادعُ" + +#: actions/siteadminpanel.php:342 +msgid "Make registration invitation only." +msgstr "" + +#: actions/siteadminpanel.php:346 +msgid "Closed" +msgstr "مُغلق" + +#: actions/siteadminpanel.php:348 +msgid "Disable new registrations." +msgstr "عطّل التسجيل الجديد." + +#: actions/siteadminpanel.php:354 +msgid "Snapshots" +msgstr "" + +#: actions/siteadminpanel.php:357 +msgid "Randomly during Web hit" +msgstr "" + +#: actions/siteadminpanel.php:358 +msgid "In a scheduled job" +msgstr "فى مهمه مُجدولة" + +#: actions/siteadminpanel.php:359 actions/siteadminpanel.php:383 +msgid "Never" +msgstr "مطلقا" + +#: actions/siteadminpanel.php:360 +msgid "Data snapshots" +msgstr "" + +#: actions/siteadminpanel.php:361 +msgid "When to send statistical data to status.net servers" +msgstr "" + +#: actions/siteadminpanel.php:366 +msgid "Frequency" +msgstr "التكرار" + +#: actions/siteadminpanel.php:367 +msgid "Snapshots will be sent once every N web hits" +msgstr "" + +#: actions/siteadminpanel.php:372 +msgid "Report URL" +msgstr "بلّغ عن المسار" + +#: actions/siteadminpanel.php:373 +msgid "Snapshots will be sent to this URL" +msgstr "" + +#: actions/siteadminpanel.php:380 +msgid "SSL" +msgstr "SSL" + +#: actions/siteadminpanel.php:384 +msgid "Sometimes" +msgstr "أحيانًا" + +#: actions/siteadminpanel.php:385 +msgid "Always" +msgstr "دائمًا" + +#: actions/siteadminpanel.php:387 +msgid "Use SSL" +msgstr "استخدم SSL" + +#: actions/siteadminpanel.php:388 +msgid "When to use SSL" +msgstr "" + +#: actions/siteadminpanel.php:393 +msgid "SSL Server" +msgstr "خادوم SSL" + +#: actions/siteadminpanel.php:394 +msgid "Server to direct SSL requests to" +msgstr "" + +#: actions/siteadminpanel.php:400 +msgid "Limits" +msgstr "الحدود" + +#: actions/siteadminpanel.php:403 +msgid "Text limit" +msgstr "حد النص" + +#: actions/siteadminpanel.php:403 +msgid "Maximum number of characters for notices." +msgstr "أقصى عدد للحروف فى الإشعارات." + +#: actions/siteadminpanel.php:407 +msgid "Dupe limit" +msgstr "" + +#: actions/siteadminpanel.php:407 +msgid "How long users must wait (in seconds) to post the same thing again." +msgstr "" + +#: actions/siteadminpanel.php:421 actions/useradminpanel.php:313 +msgid "Save site settings" +msgstr "اذف إعدادت الموقع" + +#: actions/smssettings.php:58 +msgid "SMS Settings" +msgstr "إعدادات الرسائل القصيرة" + +#: actions/smssettings.php:69 +#, php-format +msgid "You can receive SMS messages through email from %%site.name%%." +msgstr "لا يمكنك استلام رسائل قصيره عبر البريد الإلكرتونى من %%site.name%%." + +#: actions/smssettings.php:91 +msgid "SMS is not available." +msgstr "الرسائل القصيره غير متوفره." + +#: actions/smssettings.php:112 +msgid "Current confirmed SMS-enabled phone number." +msgstr "" + +#: actions/smssettings.php:123 +msgid "Awaiting confirmation on this phone number." +msgstr "" + +#: actions/smssettings.php:130 +msgid "Confirmation code" +msgstr "رمز التأكيد" + +#: actions/smssettings.php:131 +msgid "Enter the code you received on your phone." +msgstr "" + +#: actions/smssettings.php:138 +msgid "SMS Phone number" +msgstr "" + +#: actions/smssettings.php:140 +msgid "Phone number, no punctuation or spaces, with area code" +msgstr "" + +#: actions/smssettings.php:174 +msgid "" +"Send me notices through SMS; I understand I may incur exorbitant charges " +"from my carrier." +msgstr "" + +#: actions/smssettings.php:306 +msgid "No phone number." +msgstr "لا رقم هاتف." + +#: actions/smssettings.php:311 +msgid "No carrier selected." +msgstr "" + +#: actions/smssettings.php:318 +msgid "That is already your phone number." +msgstr "" + +#: actions/smssettings.php:321 +msgid "That phone number already belongs to another user." +msgstr "" + +#: actions/smssettings.php:347 +msgid "" +"A confirmation code was sent to the phone number you added. Check your phone " +"for the code and instructions on how to use it." +msgstr "" + +#: actions/smssettings.php:374 +msgid "That is the wrong confirmation number." +msgstr "" + +#: actions/smssettings.php:405 +msgid "That is not your phone number." +msgstr "هذا ليس رقم هاتفك." + +#: actions/smssettings.php:465 +msgid "Mobile carrier" +msgstr "" + +#: actions/smssettings.php:469 +msgid "Select a carrier" +msgstr "" + +#: actions/smssettings.php:476 +#, php-format +msgid "" +"Mobile carrier for your phone. If you know a carrier that accepts SMS over " +"email but isn't listed here, send email to let us know at %s." +msgstr "" + +#: actions/smssettings.php:498 +msgid "No code entered" +msgstr "" + +#: actions/subedit.php:70 +msgid "You are not subscribed to that profile." +msgstr "" + +#: actions/subedit.php:83 +msgid "Could not save subscription." +msgstr "تعذّر حفظ الاشتراك." + +#: actions/subscribe.php:55 +msgid "Not a local user." +msgstr "ليس مُستخدمًا محليًا." + +#: actions/subscribe.php:69 +msgid "Subscribed" +msgstr "مُشترك" + +#: actions/subscribers.php:50 +#, php-format +msgid "%s subscribers" +msgstr "مشتركو %s" + +#: actions/subscribers.php:52 +#, php-format +msgid "%s subscribers, page %d" +msgstr "مشتركو %s، الصفحه %d" + +#: actions/subscribers.php:63 +msgid "These are the people who listen to your notices." +msgstr "هؤلاء هم الأشخاص الذين يستمعون إلى إشعاراتك." + +#: actions/subscribers.php:67 +#, php-format +msgid "These are the people who listen to %s's notices." +msgstr "" + +#: actions/subscribers.php:108 +msgid "" +"You have no subscribers. Try subscribing to people you know and they might " +"return the favor" +msgstr "" + +#: actions/subscribers.php:110 +#, php-format +msgid "%s has no subscribers. Want to be the first?" +msgstr "" + +#: actions/subscribers.php:114 +#, php-format +msgid "" +"%s has no subscribers. Why not [register an account](%%%%action.register%%%" +"%) and be the first?" +msgstr "" + +#: actions/subscriptions.php:52 +#, php-format +msgid "%s subscriptions" +msgstr "اشتراكات %s" + +#: actions/subscriptions.php:54 +#, php-format +msgid "%s subscriptions, page %d" +msgstr "اشتراكات %s، الصفحه %d" + +#: actions/subscriptions.php:65 +msgid "These are the people whose notices you listen to." +msgstr "هؤلاء الأشخاص الذى تستمع إليهم." + +#: actions/subscriptions.php:69 +#, php-format +msgid "These are the people whose notices %s listens to." +msgstr "هؤلاء الأشخاص الذى يستمع %s إليهم." + +#: actions/subscriptions.php:121 +#, php-format +msgid "" +"You're not listening to anyone's notices right now, try subscribing to " +"people you know. Try [people search](%%action.peoplesearch%%), look for " +"members in groups you're interested in and in our [featured users](%%action." +"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can " +"automatically subscribe to people you already follow there." +msgstr "" + +#: actions/subscriptions.php:123 actions/subscriptions.php:127 +#, php-format +msgid "%s is not listening to anyone." +msgstr "" + +#: actions/subscriptions.php:194 +msgid "Jabber" +msgstr "جابر" + +#: actions/subscriptions.php:199 lib/connectsettingsaction.php:115 +msgid "SMS" +msgstr "رسائل قصيرة" + +#: actions/tag.php:68 +#, php-format +msgid "Notices tagged with %s, page %d" +msgstr "" + +#: actions/tag.php:86 +#, php-format +msgid "Notice feed for tag %s (RSS 1.0)" +msgstr "" + +#: actions/tag.php:92 +#, php-format +msgid "Notice feed for tag %s (RSS 2.0)" +msgstr "" + +#: actions/tag.php:98 +#, php-format +msgid "Notice feed for tag %s (Atom)" +msgstr "" + +#: actions/tagother.php:33 +msgid "Not logged in" +msgstr "لست والجًا" + +#: actions/tagother.php:39 +msgid "No id argument." +msgstr "لا مُدخل هويه." + +#: actions/tagother.php:65 +#, php-format +msgid "Tag %s" +msgstr "" + +#: actions/tagother.php:77 lib/userprofile.php:75 +msgid "User profile" +msgstr "ملف المستخدم الشخصي" + +#: actions/tagother.php:81 lib/userprofile.php:102 +msgid "Photo" +msgstr "صورة" + +#: actions/tagother.php:141 +msgid "Tag user" +msgstr "" + +#: actions/tagother.php:151 +msgid "" +"Tags for this user (letters, numbers, -, ., and _), comma- or space- " +"separated" +msgstr "" + +#: actions/tagother.php:193 +msgid "" +"You can only tag people you are subscribed to or who are subscribed to you." +msgstr "" + +#: actions/tagother.php:200 +msgid "Could not save tags." +msgstr "تعذّر حفظ الوسوم." + +#: actions/tagother.php:236 +msgid "Use this form to add tags to your subscribers or subscriptions." +msgstr "" + +#: actions/tagrss.php:35 +msgid "No such tag." +msgstr "لا وسم كهذا." + +#: actions/twitapitrends.php:87 +msgid "API method under construction." +msgstr "" + +#: actions/unblock.php:59 +msgid "You haven't blocked that user." +msgstr "لم تمنع هذا المستخدم." + +#: actions/unsandbox.php:72 +#, fuzzy +msgid "User is not sandboxed." +msgstr "ليس للمستخدم إشعار أخير" + +#: actions/unsilence.php:72 +msgid "User is not silenced." +msgstr "المستخدم ليس مُسكتًا." + +#: actions/unsubscribe.php:77 +msgid "No profile id in request." +msgstr "" + +#: actions/unsubscribe.php:84 +msgid "No profile with that id." +msgstr "لا ملف بهذه الهويه." + +#: actions/unsubscribe.php:98 +msgid "Unsubscribed" +msgstr "" + +#: actions/updateprofile.php:62 actions/userauthorization.php:330 +#, php-format +msgid "Listenee stream license ‘%s’ is not compatible with site license ‘%s’." +msgstr "" + +#: actions/useradminpanel.php:58 lib/adminpanelaction.php:305 +#: lib/personalgroupnav.php:115 +msgid "User" +msgstr "المستخدم" + +#: actions/useradminpanel.php:69 +msgid "User settings for this StatusNet site." +msgstr "" + +#: actions/useradminpanel.php:149 +msgid "Invalid bio limit. Must be numeric." +msgstr "" + +#: actions/useradminpanel.php:155 +msgid "Invalid welcome text. Max length is 255 characters." +msgstr "رساله ترحيب غير صالحه. أقصى طول هو 255 حرف." + +#: actions/useradminpanel.php:165 +#, php-format +msgid "Invalid default subscripton: '%1$s' is not user." +msgstr "" + +#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108 +#: lib/personalgroupnav.php:109 +msgid "Profile" +msgstr "الملف الشخصي" + +#: actions/useradminpanel.php:222 +msgid "Bio Limit" +msgstr "حد السيرة" + +#: actions/useradminpanel.php:223 +msgid "Maximum length of a profile bio in characters." +msgstr "" + +#: actions/useradminpanel.php:231 +msgid "New users" +msgstr "مستخدمون جدد" + +#: actions/useradminpanel.php:235 +msgid "New user welcome" +msgstr "ترحيب المستخدمين الجدد" + +#: actions/useradminpanel.php:236 +msgid "Welcome text for new users (Max 255 chars)." +msgstr "نص الترحيب بالمستخدمين الجدد (255 حرفًا كحد أقصى)." + +#: actions/useradminpanel.php:241 +msgid "Default subscription" +msgstr "الاشتراك المبدئي" + +#: actions/useradminpanel.php:242 +msgid "Automatically subscribe new users to this user." +msgstr "أشرك المستخدمين الجدد بهذا المستخدم تلقائيًا." + +#: actions/useradminpanel.php:251 +msgid "Invitations" +msgstr "الدعوات" + +#: actions/useradminpanel.php:256 +msgid "Invitations enabled" +msgstr "الدعوات مُفعلة" + +#: actions/useradminpanel.php:258 +msgid "Whether to allow users to invite new users." +msgstr "" + +#: actions/useradminpanel.php:265 +msgid "Sessions" +msgstr "الجلسات" + +#: actions/useradminpanel.php:270 +msgid "Handle sessions" +msgstr "" + +#: actions/useradminpanel.php:272 +msgid "Whether to handle sessions ourselves." +msgstr "" + +#: actions/useradminpanel.php:276 +msgid "Session debugging" +msgstr "تنقيح الجلسة" + +#: actions/useradminpanel.php:278 +msgid "Turn on debugging output for sessions." +msgstr "مكّن تنقيح مُخرجات الجلسه." + +#: actions/userauthorization.php:105 +msgid "Authorize subscription" +msgstr "" + +#: actions/userauthorization.php:110 +msgid "" +"Please check these details to make sure that you want to subscribe to this " +"user’s notices. If you didn’t just ask to subscribe to someone’s notices, " +"click “Reject”." +msgstr "" + +#: actions/userauthorization.php:188 +msgid "License" +msgstr "الرخصة" + +#: actions/userauthorization.php:209 +msgid "Accept" +msgstr "اقبل" + +#: actions/userauthorization.php:210 lib/subscribeform.php:115 +#: lib/subscribeform.php:139 +msgid "Subscribe to this user" +msgstr "اشترك بهذا المستخدم" + +#: actions/userauthorization.php:211 +msgid "Reject" +msgstr "ارفض" + +#: actions/userauthorization.php:212 +msgid "Reject this subscription" +msgstr "ارفض هذا الاشتراك" + +#: actions/userauthorization.php:225 +msgid "No authorization request!" +msgstr "لا طلب استيثاق!" + +#: actions/userauthorization.php:247 +msgid "Subscription authorized" +msgstr "" + +#: actions/userauthorization.php:249 +msgid "" +"The subscription has been authorized, but no callback URL was passed. Check " +"with the site’s instructions for details on how to authorize the " +"subscription. Your subscription token is:" +msgstr "" + +#: actions/userauthorization.php:259 +msgid "Subscription rejected" +msgstr "رُفض الاشتراك" + +#: actions/userauthorization.php:261 +msgid "" +"The subscription has been rejected, but no callback URL was passed. Check " +"with the site’s instructions for details on how to fully reject the " +"subscription." +msgstr "" + +#: actions/userauthorization.php:296 +#, php-format +msgid "Listener URI ‘%s’ not found here" +msgstr "" + +#: actions/userauthorization.php:301 +#, php-format +msgid "Listenee URI ‘%s’ is too long." +msgstr "" + +#: actions/userauthorization.php:307 +#, php-format +msgid "Listenee URI ‘%s’ is a local user." +msgstr "" + +#: actions/userauthorization.php:322 +#, php-format +msgid "Profile URL ‘%s’ is for a local user." +msgstr "" + +#: actions/userauthorization.php:338 +#, php-format +msgid "Avatar URL ‘%s’ is not valid." +msgstr "" + +#: actions/userauthorization.php:343 +#, php-format +msgid "Can’t read avatar URL ‘%s’." +msgstr "" + +#: actions/userauthorization.php:348 +#, php-format +msgid "Wrong image type for avatar URL ‘%s’." +msgstr "" + +#: actions/userbyid.php:70 +msgid "No id." +msgstr "لا هويه." + +#: actions/userdesignsettings.php:76 lib/designsettings.php:65 +msgid "Profile design" +msgstr "تصميم الملف الشخصي" + +#: actions/userdesignsettings.php:87 lib/designsettings.php:76 +msgid "" +"Customize the way your profile looks with a background image and a colour " +"palette of your choice." +msgstr "" + +#: actions/userdesignsettings.php:282 +msgid "Enjoy your hotdog!" +msgstr "استمتع بالنقانق!" + +#: actions/usergroups.php:64 +#, php-format +msgid "%s groups, page %d" +msgstr "مجموعات %s، صفحه %d" + +#: actions/usergroups.php:130 +msgid "Search for more groups" +msgstr "" + +#: actions/usergroups.php:153 +#, php-format +msgid "%s is not a member of any group." +msgstr "" + +#: actions/usergroups.php:158 +#, php-format +msgid "Try [searching for groups](%%action.groupsearch%%) and joining them." +msgstr "" + +#: classes/File.php:137 +#, php-format +msgid "" +"No file may be larger than %d bytes and the file you sent was %d bytes. Try " +"to upload a smaller version." +msgstr "" + +#: classes/File.php:147 +#, php-format +msgid "A file this large would exceed your user quota of %d bytes." +msgstr "" + +#: classes/File.php:154 +#, php-format +msgid "A file this large would exceed your monthly quota of %d bytes." +msgstr "" + +#: classes/Message.php:45 +msgid "You are banned from sending direct messages." +msgstr "أنت ممنوع من إرسال رسائل مباشره." + +#: classes/Message.php:61 +msgid "Could not insert message." +msgstr "تعذّر إدراج الرساله." + +#: classes/Message.php:71 +msgid "Could not update message with new URI." +msgstr "" + +#: classes/Notice.php:164 +#, php-format +msgid "DB error inserting hashtag: %s" +msgstr "" + +#: classes/Notice.php:188 +msgid "Problem saving notice. Too long." +msgstr "مشكله فى حفظ الإشعار. طويل جدًا." + +#: classes/Notice.php:192 +msgid "Problem saving notice. Unknown user." +msgstr "مشكله فى حفظ الإشعار. مستخدم غير معروف." + +#: classes/Notice.php:197 +msgid "" +"Too many notices too fast; take a breather and post again in a few minutes." +msgstr "" + +#: classes/Notice.php:203 +msgid "" +"Too many duplicate messages too quickly; take a breather and post again in a " +"few minutes." +msgstr "" + +#: classes/Notice.php:209 +msgid "You are banned from posting notices on this site." +msgstr "" + +#: classes/Notice.php:274 classes/Notice.php:299 +msgid "Problem saving notice." +msgstr "مشكله أثناء حفظ الإشعار." + +#: classes/Notice.php:1115 +#, php-format +msgid "DB error inserting reply: %s" +msgstr "" + +#: classes/User.php:347 +#, php-format +msgid "Welcome to %1$s, @%2$s!" +msgstr "أهلا بكم فى %1$s يا @%2$s!" + +#: classes/User_group.php:380 +msgid "Could not create group." +msgstr "تعذّر إنشاء المجموعه." + +#: classes/User_group.php:409 +msgid "Could not set group membership." +msgstr "تعذّر ضبط عضويه المجموعه." + +#: lib/accountsettingsaction.php:108 +msgid "Change your profile settings" +msgstr "غيّر إعدادات ملفك الشخصي" + +#: lib/accountsettingsaction.php:112 +msgid "Upload an avatar" +msgstr "ارفع أفتارًا" + +#: lib/accountsettingsaction.php:116 +msgid "Change your password" +msgstr "غير كلمه سرّك" + +#: lib/accountsettingsaction.php:120 +msgid "Change email handling" +msgstr "غير أسلوب التعامل مع البريد الإلكتروني" + +#: lib/accountsettingsaction.php:124 +msgid "Design your profile" +msgstr "صمّم ملفك الشخصي" + +#: lib/accountsettingsaction.php:128 +msgid "Other" +msgstr "أخرى" + +#: lib/accountsettingsaction.php:128 +msgid "Other options" +msgstr "خيارات أخرى" + +#: lib/action.php:144 +#, php-format +msgid "%s - %s" +msgstr "%s - %s" + +#: lib/action.php:159 +msgid "Untitled page" +msgstr "صفحه غير مُعنونة" + +#: lib/action.php:425 +msgid "Primary site navigation" +msgstr "" + +#: lib/action.php:431 +msgid "Home" +msgstr "الرئيسية" + +#: lib/action.php:431 +msgid "Personal profile and friends timeline" +msgstr "الملف الشخصى ومسار الأصدقاء الزمني" + +#: lib/action.php:433 +msgid "Account" +msgstr "الحساب" + +#: lib/action.php:433 +msgid "Change your email, avatar, password, profile" +msgstr "" + +#: lib/action.php:436 +msgid "Connect" +msgstr "اتصل" + +#: lib/action.php:436 +msgid "Connect to services" +msgstr "" + +#: lib/action.php:440 +msgid "Change site configuration" +msgstr "غيّر ضبط الموقع" + +#: lib/action.php:444 lib/subgroupnav.php:105 +msgid "Invite" +msgstr "ادعُ" + +#: lib/action.php:445 lib/subgroupnav.php:106 +#, php-format +msgid "Invite friends and colleagues to join you on %s" +msgstr "" + +#: lib/action.php:450 +msgid "Logout" +msgstr "اخرج" + +#: lib/action.php:450 +msgid "Logout from the site" +msgstr "اخرج من الموقع" + +#: lib/action.php:455 +msgid "Create an account" +msgstr "أنشئ حسابًا" + +#: lib/action.php:458 +msgid "Login to the site" +msgstr "لُج إلى الموقع" + +#: lib/action.php:461 lib/action.php:724 +msgid "Help" +msgstr "مساعدة" + +#: lib/action.php:461 +msgid "Help me!" +msgstr "ساعدني!" + +#: lib/action.php:464 lib/searchaction.php:127 +msgid "Search" +msgstr "ابحث" + +#: lib/action.php:464 +msgid "Search for people or text" +msgstr "ابحث عن أشخاص أو نص" + +#: lib/action.php:485 +msgid "Site notice" +msgstr "إشعار الموقع" + +#: lib/action.php:551 +msgid "Local views" +msgstr "المشاهدات المحلية" + +#: lib/action.php:617 +msgid "Page notice" +msgstr "إشعار الصفحة" + +#: lib/action.php:719 +msgid "Secondary site navigation" +msgstr "" + +#: lib/action.php:726 +msgid "About" +msgstr "عن" + +#: lib/action.php:728 +msgid "FAQ" +msgstr "الأسئله المكررة" + +#: lib/action.php:732 +msgid "TOS" +msgstr "الشروط" + +#: lib/action.php:735 +msgid "Privacy" +msgstr "خصوصية" + +#: lib/action.php:737 +msgid "Source" +msgstr "المصدر" + +#: lib/action.php:739 +msgid "Contact" +msgstr "اتصل" + +#: lib/action.php:741 +msgid "Badge" +msgstr "" + +#: lib/action.php:769 +msgid "StatusNet software license" +msgstr "" + +#: lib/action.php:772 +#, php-format +msgid "" +"**%%site.name%%** is a microblogging service brought to you by [%%site." +"broughtby%%](%%site.broughtbyurl%%). " +msgstr "" +"**%%site.name%%** خدمه تدوين مصغر يقدمها لك [%%site.broughtby%%](%%site." +"broughtbyurl%%). " + +#: lib/action.php:774 +#, php-format +msgid "**%%site.name%%** is a microblogging service. " +msgstr "" + +#: lib/action.php:776 +#, php-format +msgid "" +"It runs the [StatusNet](http://status.net/) microblogging software, version %" +"s, available under the [GNU Affero General Public License](http://www.fsf." +"org/licensing/licenses/agpl-3.0.html)." +msgstr "" +"يعمل على برنامج التدوين المُصغّر [StatusNet](http://status.net/) -النسخه %s- " +"المتوفر تحت [رخصه غنو أفيرو العمومية](http://www.fsf.org/licensing/licenses/" +"agpl-3.0.html)." + +#: lib/action.php:790 +msgid "Site content license" +msgstr "رخصه محتوى الموقع" + +#: lib/action.php:799 +msgid "All " +msgstr "" + +#: lib/action.php:804 +msgid "license." +msgstr "الرخصه." + +#: lib/action.php:1068 +msgid "Pagination" +msgstr "" + +#: lib/action.php:1077 +msgid "After" +msgstr "بعد" + +#: lib/action.php:1085 +msgid "Before" +msgstr "قبل" + +#: lib/action.php:1133 +msgid "There was a problem with your session token." +msgstr "" + +#: lib/adminpanelaction.php:96 +msgid "You cannot make changes to this site." +msgstr "" + +#: lib/adminpanelaction.php:195 +msgid "showForm() not implemented." +msgstr "" + +#: lib/adminpanelaction.php:224 +msgid "saveSettings() not implemented." +msgstr "" + +#: lib/adminpanelaction.php:247 +msgid "Unable to delete design setting." +msgstr "تعذّر حذف إعدادات التصميم." + +#: lib/adminpanelaction.php:300 +msgid "Basic site configuration" +msgstr "ضبط الموقع الأساسي" + +#: lib/adminpanelaction.php:303 +msgid "Design configuration" +msgstr "ضبط التصميم" + +#: lib/adminpanelaction.php:306 lib/adminpanelaction.php:309 +msgid "Paths configuration" +msgstr "ضبط المسارات" + +#: lib/attachmentlist.php:87 +msgid "Attachments" +msgstr "مرفقات" + +#: lib/attachmentlist.php:265 +msgid "Author" +msgstr "المؤلف" + +#: lib/attachmentlist.php:278 +msgid "Provider" +msgstr "المزود" + +#: lib/attachmentnoticesection.php:67 +msgid "Notices where this attachment appears" +msgstr "" + +#: lib/attachmenttagcloudsection.php:48 +msgid "Tags for this attachment" +msgstr "وسوم هذا المرفق" + +#: lib/channel.php:138 lib/channel.php:158 +msgid "Command results" +msgstr "نتائج الأمر" + +#: lib/channel.php:210 +msgid "Command complete" +msgstr "اكتمل الأمر" + +#: lib/channel.php:221 +msgid "Command failed" +msgstr "فشل الأمر" + +#: lib/command.php:44 +msgid "Sorry, this command is not yet implemented." +msgstr "" + +#: lib/command.php:88 +#, php-format +msgid "Could not find a user with nickname %s" +msgstr "" + +#: lib/command.php:92 +msgid "It does not make a lot of sense to nudge yourself!" +msgstr "" + +#: lib/command.php:99 +#, php-format +msgid "Nudge sent to %s" +msgstr "" + +#: lib/command.php:126 +#, php-format +msgid "" +"Subscriptions: %1$s\n" +"Subscribers: %2$s\n" +"Notices: %3$s" +msgstr "" +"الاشتراكات: %1$s\n" +"المشتركون: %2$s\n" +"الإشعارات: %3$s" + +#: lib/command.php:152 lib/command.php:400 +msgid "Notice with that id does not exist" +msgstr "" + +#: lib/command.php:168 lib/command.php:416 lib/command.php:472 +msgid "User has no last notice" +msgstr "ليس للمستخدم إشعار أخير" + +#: lib/command.php:190 +msgid "Notice marked as fave." +msgstr "" + +#: lib/command.php:315 +#, php-format +msgid "%1$s (%2$s)" +msgstr "%1$s (%2$s)" + +#: lib/command.php:318 +#, php-format +msgid "Fullname: %s" +msgstr "الاسم الكامل: %s" + +#: lib/command.php:321 +#, php-format +msgid "Location: %s" +msgstr "الموقع: %s" + +#: lib/command.php:324 +#, php-format +msgid "Homepage: %s" +msgstr "الصفحه الرئيسية: %s" + +#: lib/command.php:327 +#, php-format +msgid "About: %s" +msgstr "عن: %s" + +#: lib/command.php:358 scripts/xmppdaemon.php:321 +#, php-format +msgid "Message too long - maximum is %d characters, you sent %d" +msgstr "" + +#: lib/command.php:377 +msgid "Error sending direct message." +msgstr "" + +#: lib/command.php:431 +#, php-format +msgid "Notice too long - maximum is %d characters, you sent %d" +msgstr "" + +#: lib/command.php:440 +#, php-format +msgid "Reply to %s sent" +msgstr "رُد على رساله %s" + +#: lib/command.php:442 +msgid "Error saving notice." +msgstr "خطأ أثناء حفظ الإشعار." + +#: lib/command.php:496 +msgid "Specify the name of the user to subscribe to" +msgstr "" + +#: lib/command.php:503 +#, php-format +msgid "Subscribed to %s" +msgstr "مُشترك ب%s" + +#: lib/command.php:524 +msgid "Specify the name of the user to unsubscribe from" +msgstr "" + +#: lib/command.php:531 +#, php-format +msgid "Unsubscribed from %s" +msgstr "" + +#: lib/command.php:549 lib/command.php:572 +msgid "Command not yet implemented." +msgstr "" + +#: lib/command.php:552 +msgid "Notification off." +msgstr "" + +#: lib/command.php:554 +msgid "Can't turn off notification." +msgstr "" + +#: lib/command.php:575 +msgid "Notification on." +msgstr "" + +#: lib/command.php:577 +msgid "Can't turn on notification." +msgstr "" + +#: lib/command.php:590 +msgid "Login command is disabled" +msgstr "" + +#: lib/command.php:604 +#, php-format +msgid "Could not create login token for %s" +msgstr "" + +#: lib/command.php:609 +#, php-format +msgid "This link is useable only once, and is good for only 2 minutes: %s" +msgstr "" + +#: lib/command.php:625 +msgid "You are not subscribed to anyone." +msgstr "لست مُشتركًا بأى أحد." + +#: lib/command.php:627 +msgid "You are subscribed to this person:" +msgid_plural "You are subscribed to these people:" +msgstr[0] "لست مشتركًا بأحد." +msgstr[1] "أنت مشترك بهذا الشخص:" +msgstr[2] "أنت مشترك بهذين الشخصين:" +msgstr[3] "أنت مشترك بهؤلاء الأشخاص:" +msgstr[4] "" +msgstr[5] "" + +#: lib/command.php:647 +msgid "No one is subscribed to you." +msgstr "لا أحد مشترك بك." + +#: lib/command.php:649 +msgid "This person is subscribed to you:" +msgid_plural "These people are subscribed to you:" +msgstr[0] "لا أحد مشترك بك." +msgstr[1] "هذا الشخص مشترك بك:" +msgstr[2] "هذان الشخصان مشتركان بك:" +msgstr[3] "هؤلاء الأشخاص مشتركون بك:" +msgstr[4] "" +msgstr[5] "" + +#: lib/command.php:669 +msgid "You are not a member of any groups." +msgstr "لست عضوًا فى أى مجموعه." + +#: lib/command.php:671 +msgid "You are a member of this group:" +msgid_plural "You are a member of these groups:" +msgstr[0] "لست عضوًا فى أى مجموعه." +msgstr[1] "أنت عضو فى هذه المجموعة:" +msgstr[2] "أنت عضو فى هذين المجموعتين:" +msgstr[3] "أنت عضو فى هذه المجموعات:" +msgstr[4] "" +msgstr[5] "" + +#: lib/command.php:685 +msgid "" +"Commands:\n" +"on - turn on notifications\n" +"off - turn off notifications\n" +"help - show this help\n" +"follow - subscribe to user\n" +"groups - lists the groups you have joined\n" +"subscriptions - list the people you follow\n" +"subscribers - list the people that follow you\n" +"leave - unsubscribe from user\n" +"d - direct message to user\n" +"get - get last notice from user\n" +"whois - get profile info on user\n" +"fav - add user's last notice as a 'fave'\n" +"fav # - add notice with the given id as a 'fave'\n" +"reply # - reply to notice with a given id\n" +"reply - reply to the last notice from user\n" +"join - join group\n" +"login - Get a link to login to the web interface\n" +"drop - leave group\n" +"stats - get your stats\n" +"stop - same as 'off'\n" +"quit - same as 'off'\n" +"sub - same as 'follow'\n" +"unsub - same as 'leave'\n" +"last - same as 'get'\n" +"on - not yet implemented.\n" +"off - not yet implemented.\n" +"nudge - remind a user to update.\n" +"invite - not yet implemented.\n" +"track - not yet implemented.\n" +"untrack - not yet implemented.\n" +"track off - not yet implemented.\n" +"untrack all - not yet implemented.\n" +"tracks - not yet implemented.\n" +"tracking - not yet implemented.\n" +msgstr "" + +#: lib/common.php:199 +msgid "No configuration file found. " +msgstr "" + +#: lib/common.php:200 +msgid "I looked for configuration files in the following places: " +msgstr "" + +#: lib/common.php:201 +msgid "You may wish to run the installer to fix this." +msgstr "" + +#: lib/common.php:202 +msgid "Go to the installer." +msgstr "اذهب إلى المُثبّت." + +#: lib/connectsettingsaction.php:110 +msgid "IM" +msgstr "محادثه فورية" + +#: lib/connectsettingsaction.php:111 +msgid "Updates by instant messenger (IM)" +msgstr "" + +#: lib/connectsettingsaction.php:116 +msgid "Updates by SMS" +msgstr "" + +#: lib/dberroraction.php:60 +msgid "Database error" +msgstr "خطأ قاعده بيانات" + +#: lib/designsettings.php:105 +msgid "Upload file" +msgstr "ارفع ملفًا" + +#: lib/designsettings.php:109 +msgid "" +"You can upload your personal background image. The maximum file size is 2MB." +msgstr "تستطيع رفع صورتك الشخصيه. أقصى حجم للملف هو 2 م.ب." + +#: lib/designsettings.php:418 +msgid "Design defaults restored." +msgstr "استعيدت مبدئيات التصميم." + +#: lib/disfavorform.php:114 lib/disfavorform.php:140 +msgid "Disfavor this notice" +msgstr "ألغِ تفضيل هذا الإشعار" + +#: lib/favorform.php:114 lib/favorform.php:140 +msgid "Favor this notice" +msgstr "فضّل هذا الإشعار" + +#: lib/favorform.php:140 +msgid "Favor" +msgstr "فضّل" + +#: lib/feed.php:85 +msgid "RSS 1.0" +msgstr "آرإس​إس 1.0" + +#: lib/feed.php:87 +msgid "RSS 2.0" +msgstr "آرإس​إس 2.0" + +#: lib/feed.php:89 +msgid "Atom" +msgstr "أتوم" + +#: lib/feed.php:91 +msgid "FOAF" +msgstr "FOAF" + +#: lib/feedlist.php:64 +msgid "Export data" +msgstr "تصدير البيانات" + +#: lib/galleryaction.php:121 +msgid "Filter tags" +msgstr "رشّح الوسوم" + +#: lib/galleryaction.php:131 +msgid "All" +msgstr "الكل" + +#: lib/galleryaction.php:139 +msgid "Select tag to filter" +msgstr "اختر وسمًا لترشيحه" + +#: lib/galleryaction.php:140 +msgid "Tag" +msgstr "الوسم" + +#: lib/galleryaction.php:141 +msgid "Choose a tag to narrow list" +msgstr "" + +#: lib/galleryaction.php:143 +msgid "Go" +msgstr "اذهب" + +#: lib/groupeditform.php:163 +msgid "URL of the homepage or blog of the group or topic" +msgstr "" + +#: lib/groupeditform.php:168 +msgid "Describe the group or topic" +msgstr "" + +#: lib/groupeditform.php:170 +#, php-format +msgid "Describe the group or topic in %d characters" +msgstr "" + +#: lib/groupeditform.php:172 +msgid "Description" +msgstr "الوصف" + +#: lib/groupeditform.php:179 +msgid "" +"Location for the group, if any, like \"City, State (or Region), Country\"" +msgstr "" + +#: lib/groupeditform.php:187 +#, php-format +msgid "Extra nicknames for the group, comma- or space- separated, max %d" +msgstr "" + +#: lib/groupnav.php:85 +msgid "Group" +msgstr "مجموعات" + +#: lib/groupnav.php:101 +msgid "Blocked" +msgstr "ممنوع" + +#: lib/groupnav.php:102 +#, php-format +msgid "%s blocked users" +msgstr "" + +#: lib/groupnav.php:108 +#, php-format +msgid "Edit %s group properties" +msgstr "عدّل خصائص مجموعه %s" + +#: lib/groupnav.php:113 +msgid "Logo" +msgstr "الشعار" + +#: lib/groupnav.php:114 +#, php-format +msgid "Add or edit %s logo" +msgstr "أضف أو عدّل شعار %s" + +#: lib/groupnav.php:120 +#, php-format +msgid "Add or edit %s design" +msgstr "" + +#: lib/groupsbymemberssection.php:71 +msgid "Groups with most members" +msgstr "المجموعات الأكثر أعضاءً" + +#: lib/groupsbypostssection.php:71 +msgid "Groups with most posts" +msgstr "المجموعات الأكثر مرسلات" + +#: lib/grouptagcloudsection.php:56 +#, php-format +msgid "Tags in %s group's notices" +msgstr "" + +#: lib/htmloutputter.php:103 +msgid "This page is not available in a media type you accept" +msgstr "" + +#: lib/imagefile.php:75 +#, php-format +msgid "That file is too big. The maximum file size is %s." +msgstr "هذا الملف كبير جدًا. إن أقصى حجم للملفات هو %s." + +#: lib/imagefile.php:80 +msgid "Partial upload." +msgstr "" + +#: lib/imagefile.php:88 lib/mediafile.php:170 +msgid "System error uploading file." +msgstr "" + +#: lib/imagefile.php:96 +msgid "Not an image or corrupt file." +msgstr "" + +#: lib/imagefile.php:105 +msgid "Unsupported image file format." +msgstr "" + +#: lib/imagefile.php:118 +msgid "Lost our file." +msgstr "" + +#: lib/imagefile.php:150 lib/imagefile.php:197 +msgid "Unknown file type" +msgstr "نوع ملف غير معروف" + +#: lib/imagefile.php:217 +msgid "MB" +msgstr "" + +#: lib/imagefile.php:219 +msgid "kB" +msgstr "" + +#: lib/jabber.php:191 +#, php-format +msgid "[%s]" +msgstr "[%s]" + +#: lib/joinform.php:114 +msgid "Join" +msgstr "انضم" + +#: lib/leaveform.php:114 +msgid "Leave" +msgstr "غادر" + +#: lib/logingroupnav.php:80 +msgid "Login with a username and password" +msgstr "" + +#: lib/logingroupnav.php:86 +msgid "Sign up for a new account" +msgstr "" + +#: lib/mail.php:172 +msgid "Email address confirmation" +msgstr "تأكيد عنوان البريد الإلكتروني" + +#: lib/mail.php:174 +#, php-format +msgid "" +"Hey, %s.\n" +"\n" +"Someone just entered this email address on %s.\n" +"\n" +"If it was you, and you want to confirm your entry, use the URL below:\n" +"\n" +"\t%s\n" +"\n" +"If not, just ignore this message.\n" +"\n" +"Thanks for your time, \n" +"%s\n" +msgstr "" + +#: lib/mail.php:236 +#, php-format +msgid "%1$s is now listening to your notices on %2$s." +msgstr "" + +#: lib/mail.php:241 +#, php-format +msgid "" +"%1$s is now listening to your notices on %2$s.\n" +"\n" +"\t%3$s\n" +"\n" +"%4$s%5$s%6$s\n" +"Faithfully yours,\n" +"%7$s.\n" +"\n" +"----\n" +"Change your email address or notification options at %8$s\n" +msgstr "" + +#: lib/mail.php:254 +#, php-format +msgid "Location: %s\n" +msgstr "الموقع: %s\n" + +#: lib/mail.php:256 +#, php-format +msgid "Homepage: %s\n" +msgstr "الصفحه الرئيسية: %s\n" + +#: lib/mail.php:258 +#, php-format +msgid "" +"Bio: %s\n" +"\n" +msgstr "السيرة: %s\n" + +#: lib/mail.php:286 +#, php-format +msgid "New email address for posting to %s" +msgstr "" + +#: lib/mail.php:289 +#, php-format +msgid "" +"You have a new posting address on %1$s.\n" +"\n" +"Send email to %2$s to post new messages.\n" +"\n" +"More email instructions at %3$s.\n" +"\n" +"Faithfully yours,\n" +"%4$s" +msgstr "" + +#: lib/mail.php:413 +#, php-format +msgid "%s status" +msgstr "حاله %s" + +#: lib/mail.php:439 +msgid "SMS confirmation" +msgstr "" + +#: lib/mail.php:463 +#, php-format +msgid "You've been nudged by %s" +msgstr "" + +#: lib/mail.php:467 +#, php-format +msgid "" +"%1$s (%2$s) is wondering what you are up to these days and is inviting you " +"to post some news.\n" +"\n" +"So let's hear from you :)\n" +"\n" +"%3$s\n" +"\n" +"Don't reply to this email; it won't get to them.\n" +"\n" +"With kind regards,\n" +"%4$s\n" +msgstr "" + +#: lib/mail.php:510 +#, php-format +msgid "New private message from %s" +msgstr "رساله خاصه جديده من %s" + +#: lib/mail.php:514 +#, php-format +msgid "" +"%1$s (%2$s) sent you a private message:\n" +"\n" +"------------------------------------------------------\n" +"%3$s\n" +"------------------------------------------------------\n" +"\n" +"You can reply to their message here:\n" +"\n" +"%4$s\n" +"\n" +"Don't reply to this email; it won't get to them.\n" +"\n" +"With kind regards,\n" +"%5$s\n" +msgstr "" + +#: lib/mail.php:559 +#, php-format +msgid "%s (@%s) added your notice as a favorite" +msgstr "" + +#: lib/mail.php:561 +#, php-format +msgid "" +"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" +"\n" +"The URL of your notice is:\n" +"\n" +"%3$s\n" +"\n" +"The text of your notice is:\n" +"\n" +"%4$s\n" +"\n" +"You can see the list of %1$s's favorites here:\n" +"\n" +"%5$s\n" +"\n" +"Faithfully yours,\n" +"%6$s\n" +msgstr "" + +#: lib/mail.php:620 +#, php-format +msgid "%s (@%s) sent a notice to your attention" +msgstr "" + +#: lib/mail.php:622 +#, php-format +msgid "" +"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"\n" +"The notice is here:\n" +"\n" +"\t%3$s\n" +"\n" +"It reads:\n" +"\n" +"\t%4$s\n" +"\n" +msgstr "" + +#: lib/mailbox.php:89 +msgid "Only the user can read their own mailboxes." +msgstr "" + +#: lib/mailbox.php:139 +msgid "" +"You have no private messages. You can send private message to engage other " +"users in conversation. People can send you messages for your eyes only." +msgstr "" + +#: lib/mailbox.php:227 lib/noticelist.php:452 +msgid "from" +msgstr "من" + +#: lib/mediafile.php:98 lib/mediafile.php:123 +msgid "There was a database error while saving your file. Please try again." +msgstr "" + +#: lib/mediafile.php:142 +msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini." +msgstr "" + +#: lib/mediafile.php:147 +msgid "" +"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " +"the HTML form." +msgstr "" + +#: lib/mediafile.php:152 +msgid "The uploaded file was only partially uploaded." +msgstr "" + +#: lib/mediafile.php:159 +msgid "Missing a temporary folder." +msgstr "" + +#: lib/mediafile.php:162 +msgid "Failed to write file to disk." +msgstr "فشل فى كتابه الملف إلى القرص." + +#: lib/mediafile.php:165 +msgid "File upload stopped by extension." +msgstr "" + +#: lib/mediafile.php:179 lib/mediafile.php:216 +msgid "File exceeds user's quota!" +msgstr "" + +#: lib/mediafile.php:196 lib/mediafile.php:233 +msgid "File could not be moved to destination directory." +msgstr "" + +#: lib/mediafile.php:201 lib/mediafile.php:237 +msgid "Could not determine file's mime-type!" +msgstr "" + +#: lib/mediafile.php:270 +#, php-format +msgid " Try using another %s format." +msgstr "" + +#: lib/mediafile.php:275 +#, php-format +msgid "%s is not a supported filetype on this server." +msgstr "" + +#: lib/messageform.php:120 +msgid "Send a direct notice" +msgstr "أرسل إشعارًا مباشرًا" + +#: lib/messageform.php:146 +msgid "To" +msgstr "إلى" + +#: lib/messageform.php:159 lib/noticeform.php:183 +msgid "Available characters" +msgstr "المحارف المتوفرة" + +#: lib/noticeform.php:158 +msgid "Send a notice" +msgstr "أرسل إشعارًا" + +#: lib/noticeform.php:171 +#, php-format +msgid "What's up, %s?" +msgstr "ما الأخبار يا %s؟" + +#: lib/noticeform.php:190 +msgid "Attach" +msgstr "أرفق" + +#: lib/noticeform.php:194 +msgid "Attach a file" +msgstr "أرفق ملفًا" + +#: lib/noticelist.php:403 +#, php-format +msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" +msgstr "" + +#: lib/noticelist.php:404 +msgid "N" +msgstr "ش" + +#: lib/noticelist.php:404 +msgid "S" +msgstr "ج" + +#: lib/noticelist.php:405 +msgid "E" +msgstr "ر" + +#: lib/noticelist.php:405 +msgid "W" +msgstr "غ" + +#: lib/noticelist.php:411 +msgid "at" +msgstr "في" + +#: lib/noticelist.php:506 +msgid "in context" +msgstr "فى السياق" + +#: lib/noticelist.php:526 +msgid "Reply to this notice" +msgstr "رُد على هذا الإشعار" + +#: lib/noticelist.php:527 +msgid "Reply" +msgstr "رُد" + +#: lib/nudgeform.php:116 +msgid "Nudge this user" +msgstr "نبّه هذا المستخدم" + +#: lib/nudgeform.php:128 +msgid "Nudge" +msgstr "نبّه" + +#: lib/nudgeform.php:128 +msgid "Send a nudge to this user" +msgstr "" + +#: lib/oauthstore.php:283 +msgid "Error inserting new profile" +msgstr "خطأ أثناء إدراج الملف الشخصى الجديد" + +#: lib/oauthstore.php:291 +msgid "Error inserting avatar" +msgstr "خطأ فى إدراج الأفتار" + +#: lib/oauthstore.php:311 +msgid "Error inserting remote profile" +msgstr "خطأ أثناء إدراج الملف الشخصى البعيد" + +#: lib/oauthstore.php:345 +msgid "Duplicate notice" +msgstr "ضاعف الإشعار" + +#: lib/oauthstore.php:466 lib/subs.php:48 +msgid "You have been banned from subscribing." +msgstr "" + +#: lib/oauthstore.php:491 +msgid "Couldn't insert new subscription." +msgstr "تعذّر إدراج اشتراك جديد." + +#: lib/personalgroupnav.php:99 +msgid "Personal" +msgstr "شخصية" + +#: lib/personalgroupnav.php:104 +msgid "Replies" +msgstr "الردود" + +#: lib/personalgroupnav.php:114 +msgid "Favorites" +msgstr "المفضلات" + +#: lib/personalgroupnav.php:124 +msgid "Inbox" +msgstr "صندوق الوارد" + +#: lib/personalgroupnav.php:125 +msgid "Your incoming messages" +msgstr "رسائلك الواردة" + +#: lib/personalgroupnav.php:129 +msgid "Outbox" +msgstr "صندوق الصادر" + +#: lib/personalgroupnav.php:130 +msgid "Your sent messages" +msgstr "رسائلك المُرسلة" + +#: lib/personaltagcloudsection.php:56 +#, php-format +msgid "Tags in %s's notices" +msgstr "" + +#: lib/profileaction.php:109 lib/profileaction.php:192 lib/subgroupnav.php:82 +msgid "Subscriptions" +msgstr "الاشتراكات" + +#: lib/profileaction.php:126 +msgid "All subscriptions" +msgstr "جميع الاشتراكات" + +#: lib/profileaction.php:140 lib/profileaction.php:201 lib/subgroupnav.php:90 +msgid "Subscribers" +msgstr "المشتركون" + +#: lib/profileaction.php:157 +msgid "All subscribers" +msgstr "جميع المشتركين" + +#: lib/profileaction.php:178 +msgid "User ID" +msgstr "هويه المستخدم" + +#: lib/profileaction.php:183 +msgid "Member since" +msgstr "عضو منذ" + +#: lib/profileaction.php:245 +msgid "All groups" +msgstr "كل المجموعات" + +#: lib/profileformaction.php:123 +#, fuzzy +msgid "No return-to arguments" +msgstr "لا مُدخل هويه." + +#: lib/profileformaction.php:137 +msgid "unimplemented method" +msgstr "" + +#: lib/publicgroupnav.php:78 +msgid "Public" +msgstr "عام" + +#: lib/publicgroupnav.php:82 +msgid "User groups" +msgstr "مجموعات المستخدمين" + +#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85 +msgid "Recent tags" +msgstr "الوسوم الحديثة" + +#: lib/publicgroupnav.php:88 +msgid "Featured" +msgstr "مُختارون" + +#: lib/publicgroupnav.php:92 +msgid "Popular" +msgstr "مشهورة" + +#: lib/sandboxform.php:67 +msgid "Sandbox" +msgstr "" + +#: lib/sandboxform.php:78 +#, fuzzy +msgid "Sandbox this user" +msgstr "ألغِ منع هذا المستخدم" + +#: lib/searchaction.php:120 +msgid "Search site" +msgstr "ابحث فى الموقع" + +#: lib/searchaction.php:126 +msgid "Keyword(s)" +msgstr "الكلمات المفتاحية" + +#: lib/searchaction.php:162 +msgid "Search help" +msgstr "ابحث فى المساعدة" + +#: lib/searchgroupnav.php:80 +msgid "People" +msgstr "أشخاص" + +#: lib/searchgroupnav.php:81 +msgid "Find people on this site" +msgstr "ابحث عن أشخاص على هذا الموقع" + +#: lib/searchgroupnav.php:83 +msgid "Find content of notices" +msgstr "ابحث عن محتويات فى الإشعارات" + +#: lib/searchgroupnav.php:85 +msgid "Find groups on this site" +msgstr "ابحث عن مجموعات على هذا الموقع" + +#: lib/section.php:89 +msgid "Untitled section" +msgstr "قسم غير مُعنون" + +#: lib/section.php:106 +msgid "More..." +msgstr "المزيد..." + +#: lib/silenceform.php:67 +msgid "Silence" +msgstr "أسكت" + +#: lib/silenceform.php:78 +msgid "Silence this user" +msgstr "أسكت هذا المستخدم" + +#: lib/subgroupnav.php:83 +#, php-format +msgid "People %s subscribes to" +msgstr "الأشخاص الذين اشترك بهم %s" + +#: lib/subgroupnav.php:91 +#, php-format +msgid "People subscribed to %s" +msgstr "الأشخاص المشتركون ب%s" + +#: lib/subgroupnav.php:99 +#, php-format +msgid "Groups %s is a member of" +msgstr "المجموعات التى %s عضو فيها" + +#: lib/subs.php:52 +msgid "Already subscribed!" +msgstr "مُشترك أصلا!" + +#: lib/subs.php:56 +msgid "User has blocked you." +msgstr "لقد منعك المستخدم." + +#: lib/subs.php:60 +msgid "Could not subscribe." +msgstr "تعذّر الاشتراك." + +#: lib/subs.php:79 +msgid "Could not subscribe other to you." +msgstr "" + +#: lib/subs.php:128 +#, fuzzy +msgid "Not subscribed!" +msgstr "لست مُشتركًا!" + +#: lib/subs.php:133 +#, fuzzy +msgid "Couldn't delete self-subscription." +msgstr "تعذّر حذف الاشتراك." + +#: lib/subs.php:146 +msgid "Couldn't delete subscription." +msgstr "تعذّر حذف الاشتراك." + +#: lib/subscriberspeopleselftagcloudsection.php:48 +#: lib/subscriptionspeopleselftagcloudsection.php:48 +msgid "People Tagcloud as self-tagged" +msgstr "" + +#: lib/subscriberspeopletagcloudsection.php:48 +#: lib/subscriptionspeopletagcloudsection.php:48 +msgid "People Tagcloud as tagged" +msgstr "" + +#: lib/subscriptionlist.php:126 +msgid "(none)" +msgstr "(لا شيء)" + +#: lib/tagcloudsection.php:56 +msgid "None" +msgstr "لا شيء" + +#: lib/topposterssection.php:74 +msgid "Top posters" +msgstr "أعلى المرسلين" + +#: lib/unsandboxform.php:69 +msgid "Unsandbox" +msgstr "" + +#: lib/unsandboxform.php:80 +#, fuzzy +msgid "Unsandbox this user" +msgstr "ألغِ منع هذا المستخدم" + +#: lib/unsilenceform.php:67 +msgid "Unsilence" +msgstr "ألغِ الإسكات" + +#: lib/unsilenceform.php:78 +msgid "Unsilence this user" +msgstr "ألغِ إسكات هذا المستخدم" + +#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137 +msgid "Unsubscribe from this user" +msgstr "ألغِ الاشتراك مع هذا المستخدم" + +#: lib/unsubscribeform.php:137 +msgid "Unsubscribe" +msgstr "ألغِ الاشتراك" + +#: lib/userprofile.php:116 +msgid "Edit Avatar" +msgstr "عدّل الأفتار" + +#: lib/userprofile.php:236 +msgid "User actions" +msgstr "تصرفات المستخدم" + +#: lib/userprofile.php:248 +msgid "Edit profile settings" +msgstr "عدّل إعدادات الملف الشخصي" + +#: lib/userprofile.php:249 +msgid "Edit" +msgstr "عدّل" + +#: lib/userprofile.php:272 +msgid "Send a direct message to this user" +msgstr "أرسل رساله مباشره إلى هذا المستخدم" + +#: lib/userprofile.php:273 +msgid "Message" +msgstr "رسالة" + +#: lib/userprofile.php:311 +msgid "Moderate" +msgstr "" + +#: lib/util.php:825 +msgid "a few seconds ago" +msgstr "قبل لحظات قليلة" + +#: lib/util.php:827 +msgid "about a minute ago" +msgstr "قبل دقيقه تقريبًا" + +#: lib/util.php:829 +#, php-format +msgid "about %d minutes ago" +msgstr "" + +#: lib/util.php:831 +msgid "about an hour ago" +msgstr "قبل ساعه تقريبًا" + +#: lib/util.php:833 +#, php-format +msgid "about %d hours ago" +msgstr "" + +#: lib/util.php:835 +msgid "about a day ago" +msgstr "قبل يوم تقريبا" + +#: lib/util.php:837 +#, php-format +msgid "about %d days ago" +msgstr "" + +#: lib/util.php:839 +msgid "about a month ago" +msgstr "قبل شهر تقريبًا" + +#: lib/util.php:841 +#, php-format +msgid "about %d months ago" +msgstr "" + +#: lib/util.php:843 +msgid "about a year ago" +msgstr "قبل سنه تقريبًا" + +#: lib/webcolor.php:82 +#, php-format +msgid "%s is not a valid color!" +msgstr "%s ليس لونًا صحيحًا!" + +#: lib/webcolor.php:123 +#, php-format +msgid "%s is not a valid color! Use 3 or 6 hex chars." +msgstr "" + +#: scripts/maildaemon.php:48 +msgid "Could not parse message." +msgstr "تعذّر تحليل الرساله." + +#: scripts/maildaemon.php:53 +msgid "Not a registered user." +msgstr "ليس مستخدمًا مسجلًا." + +#: scripts/maildaemon.php:57 +msgid "Sorry, that is not your incoming email address." +msgstr "" + +#: scripts/maildaemon.php:61 +msgid "Sorry, no incoming email allowed." +msgstr "" -- cgit v1.2.3-54-g00ecf From c622d144400026dac65c39303994d11f114c0f5b Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 12 Dec 2009 14:46:24 -0500 Subject: add statuses/retweets to API --- actions/apistatusesretweets.php | 116 ++++++++++++++++++++++++++++++++++++++++ classes/Notice.php | 67 +++++++++++++++++++++++ lib/router.php | 5 ++ 3 files changed, 188 insertions(+) create mode 100644 actions/apistatusesretweets.php (limited to 'lib') diff --git a/actions/apistatusesretweets.php b/actions/apistatusesretweets.php new file mode 100644 index 000000000..c54a374e2 --- /dev/null +++ b/actions/apistatusesretweets.php @@ -0,0 +1,116 @@ +. + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @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('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR . '/lib/apiauth.php'; +require_once INSTALLDIR . '/lib/mediafile.php'; + +/** + * Show up to 100 repeats of a notice + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class ApiStatusesRetweetsAction extends ApiAuthAction +{ + const MAXCOUNT = 100; + + var $original = null; + var $cnt = self::MAXCOUNT; + + /** + * Take arguments for running + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + * + */ + + function prepare($args) + { + parent::prepare($args); + + $id = $this->trimmed('id'); + + $this->original = Notice::staticGet('id', $id); + + if (empty($this->original)) { + $this->clientError(_('No such notice'), + 400, $this->format); + return false; + } + + $cnt = $this->trimmed('count'); + + if (empty($cnt) || !is_integer($cnt)) { + $cnt = 100; + } else { + $this->cnt = min((int)$cnt, self::MAXCOUNT); + } + + return true; + } + + /** + * Handle the request + * + * Make a new notice for the update, save it, and show it + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + $strm = $this->original->repeatStream($this->cnt); + + switch ($this->format) { + case 'xml': + $this->showXmlTimeline($strm); + break; + case 'json': + $this->showJsonTimeline($strm); + break; + default: + $this->clientError(_('API method not found!'), $code = 404); + break; + } + } +} diff --git a/classes/Notice.php b/classes/Notice.php index 82753fbdd..ec80f763f 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -441,10 +441,23 @@ class Notice extends Memcached_DataObject $this->blowTagCache($blowLast); $this->blowGroupCache($blowLast); $this->blowConversationCache($blowLast); + $this->blowRepeatCache(); $profile = Profile::staticGet($this->profile_id); $profile->blowNoticeCount(); } + function blowRepeatCache() + { + if (!empty($this->repeat_of)) { + $cache = common_memcache(); + if (!empty($cache)) { + // XXX: only blow if <100 in cache + $ck = common_cache_key('notice:repeats:'.$this->repeat_of); + $result = $cache->delete($ck); + } + } + } + function blowConversationCache($blowLast=false) { $cache = common_memcache(); @@ -1455,4 +1468,58 @@ class Notice extends Memcached_DataObject return self::saveNew($repeater_id, $content, $source, array('repeat_of' => $this->id)); } + + // These are supposed to be in chron order! + + function repeatStream($limit=100) + { + $cache = common_memcache(); + + if (empty($cache)) { + $ids = $this->_repeatStreamDirect($limit); + } else { + $idstr = $cache->get(common_cache_key('notice:repeats:'.$this->id)); + if (!empty($idstr)) { + $ids = explode(',', $idstr); + } else { + $ids = $this->_repeatStreamDirect(100); + $cache->set(common_cache_key('notice:repeats:'.$this->id), implode(',', $ids)); + } + if ($limit < 100) { + // We do a max of 100, so slice down to limit + $ids = array_slice($ids, 0, $limit); + } + } + + return Notice::getStreamByIds($ids); + } + + function _repeatStreamDirect($limit) + { + $notice = new Notice(); + + $notice->selectAdd(); // clears it + $notice->selectAdd('id'); + + $notice->repeat_of = $this->id; + + $notice->orderBy('created'); // NB: asc! + + if (!is_null($offset)) { + $notice->limit($offset, $limit); + } + + $ids = array(); + + if ($notice->find()) { + while ($notice->fetch()) { + $ids[] = $notice->id; + } + } + + $notice->free(); + $notice = NULL; + + return $ids; + } } diff --git a/lib/router.php b/lib/router.php index 835339720..b0b95b080 100644 --- a/lib/router.php +++ b/lib/router.php @@ -364,6 +364,11 @@ class Router 'id' => '[0-9]+', 'format' => '(xml|json)')); + $m->connect('api/statuses/retweets/:id.:format', + array('action' => 'ApiStatusesRetweets', + 'id' => '[0-9]+', + 'format' => '(xml|json)')); + // users $m->connect('api/users/show.:format', -- cgit v1.2.3-54-g00ecf From b42b2e1d05867b2dd4cdb3e1b7e278c63001d355 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 12 Dec 2009 15:00:09 -0500 Subject: integer utility for arguments --- lib/action.php | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'lib') diff --git a/lib/action.php b/lib/action.php index 87d8a4399..dac0e2583 100644 --- a/lib/action.php +++ b/lib/action.php @@ -951,6 +951,36 @@ class Action extends HTMLOutputter // lawsuit } } + /** + * Integer value of an argument + * + * @param string $key query key we're interested in + * @param string $defValue optional default value (default null) + * @param string $maxValue optional max value (default null) + * @param string $minValue optional min value (default null) + * + * @return integer integer value + */ + + function int($key, $defValue=null, $maxValue=null, $minValue=null) + { + $arg = strtolower($this->trimmed($key)); + + if (is_null($arg) || !is_integer($arg)) { + return $defValue; + } + + if (!is_null($maxValue)) { + $arg = min($arg, $maxValue); + } + + if (!is_null($minValue)) { + $arg = max($arg, $minValue); + } + + return $arg; + } + /** * Server error * -- cgit v1.2.3-54-g00ecf From 138ce0cd05e2e59c79b29f5eeea5c11d1e56e931 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 12 Dec 2009 15:35:05 -0500 Subject: add statuses/retweeted_by_me api action --- actions/apitimelineretweetedbyme.php | 126 +++++++++++++++++++++++++++++++++++ classes/Notice.php | 9 +++ classes/User.php | 52 +++++++++++++++ lib/router.php | 4 ++ 4 files changed, 191 insertions(+) create mode 100644 actions/apitimelineretweetedbyme.php (limited to 'lib') diff --git a/actions/apitimelineretweetedbyme.php b/actions/apitimelineretweetedbyme.php new file mode 100644 index 000000000..1e65678ad --- /dev/null +++ b/actions/apitimelineretweetedbyme.php @@ -0,0 +1,126 @@ +. + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @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('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR . '/lib/apiauth.php'; +require_once INSTALLDIR . '/lib/mediafile.php'; + +/** + * Show authenticating user's most recent repeats + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class ApiTimelineRetweetedByMeAction extends ApiAuthAction +{ + const DEFAULTCOUNT = 20; + const MAXCOUNT = 200; + const MAXNOTICES = 3200; + + var $repeats = null; + var $cnt = self::DEFAULTCOUNT; + var $page = 1; + var $since_id = null; + var $max_id = null; + + /** + * Take arguments for running + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + * + */ + + function prepare($args) + { + parent::prepare($args); + + $cnt = $this->int('count', self::DEFAULTCOUNT, self::MAXCOUNT, 1); + + $page = $this->int('page', 1, (self::MAXNOTICES/$this->cnt)); + + $since_id = $this->int('since_id'); + + $max_id = $this->int('max_id'); + + return true; + } + + /** + * Handle the request + * + * show a timeline of the user's repeated notices + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + $offset = ($this->page-1) * $this->cnt; + $limit = $this->cnt; + + $strm = $this->auth_user->repeatedByMe($offset, $limit, $this->since_id, $this->max_id); + + switch ($this->format) { + case 'xml': + $this->showXmlTimeline($strm); + break; + case 'json': + $this->showJsonTimeline($strm); + break; + case 'atom': + $profile = $this->auth_user->getProfile(); + + $title = sprintf(_("Repeated by %s"), $this->auth_user->nickname); + $taguribase = common_config('integration', 'taguri'); + $id = "tag:$taguribase:RepeatedByMe:" . $this->auth_user->id; + $link = common_local_url('showstream', + array('nickname' => $this->auth_user->nickname)); + + $this->showAtomTimeline($strm, $title, $id, $link); + break; + + default: + $this->clientError(_('API method not found!'), $code = 404); + break; + } + } +} diff --git a/classes/Notice.php b/classes/Notice.php index ec80f763f..6a701ae0c 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -454,6 +454,15 @@ class Notice extends Memcached_DataObject // XXX: only blow if <100 in cache $ck = common_cache_key('notice:repeats:'.$this->repeat_of); $result = $cache->delete($ck); + + $user = User::staticGet('id', $this->profile_id); + + if (!empty($user)) { + $uk = common_cache_key('user:repeated_by_me:'.$user->id); + $cache->delete($uk); + $user->free(); + unset($user); + } } } } diff --git a/classes/User.php b/classes/User.php index 2a4fab7d4..4b7365fc7 100644 --- a/classes/User.php +++ b/classes/User.php @@ -741,4 +741,56 @@ class User extends Memcached_DataObject $profile = $this->getProfile(); return $profile->isSilenced(); } + + function repeatedByMe($offset=0, $limit=20, $since_id=null, $max_id=null) + { + $ids = Notice::stream(array($this, '_repeatedByMeDirect'), + array(), + 'user:repeated_by_me:'.$this->id, + $offset, $limit, $since_id, $max_id, null); + + return Notice::getStreamByIds($ids); + } + + function _repeatedByMeDirect($offset, $limit, $since_id, $max_id, $since) + { + $notice = new Notice(); + + $notice->selectAdd(); // clears it + $notice->selectAdd('id'); + + $notice->profile_id = $this->id; + $notice->whereAdd('repeat_of IS NOT NULL'); + + $notice->orderBy('id DESC'); + + if (!is_null($offset)) { + $notice->limit($offset, $limit); + } + + if ($since_id != 0) { + $notice->whereAdd('id > ' . $since_id); + } + + if ($max_id != 0) { + $notice->whereAdd('id <= ' . $max_id); + } + + if (!is_null($since)) { + $notice->whereAdd('created > \'' . date('Y-m-d H:i:s', $since) . '\''); + } + + $ids = array(); + + if ($notice->find()) { + while ($notice->fetch()) { + $ids[] = $notice->id; + } + } + + $notice->free(); + $notice = NULL; + + return $ids; + } } diff --git a/lib/router.php b/lib/router.php index b0b95b080..5c1bd3c4f 100644 --- a/lib/router.php +++ b/lib/router.php @@ -319,6 +319,10 @@ class Router 'id' => '[a-zA-Z0-9]+', 'format' => '(xml|json|rss|atom)')); + $m->connect('api/statuses/retweeted_by_me.:format', + array('action' => 'ApiTimelineRetweetedByMe', + 'format' => '(xml|json|atom)')); + $m->connect('api/statuses/friends.:format', array('action' => 'ApiUserFriends', 'format' => '(xml|json)')); -- cgit v1.2.3-54-g00ecf From cfe67a9c0192129448ea3f0b98aadf49e962fd4d Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 12 Dec 2009 16:00:27 -0500 Subject: add statuses/retweets_of_me to API --- actions/apitimelineretweetsofme.php | 126 ++++++++++++++++++++++++++++++++++++ classes/Notice.php | 14 ++++ classes/User.php | 53 +++++++++++++++ lib/router.php | 4 ++ 4 files changed, 197 insertions(+) create mode 100644 actions/apitimelineretweetsofme.php (limited to 'lib') diff --git a/actions/apitimelineretweetsofme.php b/actions/apitimelineretweetsofme.php new file mode 100644 index 000000000..479bff431 --- /dev/null +++ b/actions/apitimelineretweetsofme.php @@ -0,0 +1,126 @@ +. + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @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('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR . '/lib/apiauth.php'; +require_once INSTALLDIR . '/lib/mediafile.php'; + +/** + * Show authenticating user's most recent notices that have been repeated + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class ApiTimelineRetweetsOfMeAction extends ApiAuthAction +{ + const DEFAULTCOUNT = 20; + const MAXCOUNT = 200; + const MAXNOTICES = 3200; + + var $repeats = null; + var $cnt = self::DEFAULTCOUNT; + var $page = 1; + var $since_id = null; + var $max_id = null; + + /** + * Take arguments for running + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + * + */ + + function prepare($args) + { + parent::prepare($args); + + $cnt = $this->int('count', self::DEFAULTCOUNT, self::MAXCOUNT, 1); + + $page = $this->int('page', 1, (self::MAXNOTICES/$this->cnt)); + + $since_id = $this->int('since_id'); + + $max_id = $this->int('max_id'); + + return true; + } + + /** + * Handle the request + * + * show a timeline of the user's repeated notices + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + $offset = ($this->page-1) * $this->cnt; + $limit = $this->cnt; + + $strm = $this->auth_user->repeatsOfMe($offset, $limit, $this->since_id, $this->max_id); + + switch ($this->format) { + case 'xml': + $this->showXmlTimeline($strm); + break; + case 'json': + $this->showJsonTimeline($strm); + break; + case 'atom': + $profile = $this->auth_user->getProfile(); + + $title = sprintf(_("Repeats of %s"), $this->auth_user->nickname); + $taguribase = common_config('integration', 'taguri'); + $id = "tag:$taguribase:RepeatsOfMe:" . $this->auth_user->id; + $link = common_local_url('showstream', + array('nickname' => $this->auth_user->nickname)); + + $this->showAtomTimeline($strm, $title, $id, $link); + break; + + default: + $this->clientError(_('API method not found!'), $code = 404); + break; + } + } +} diff --git a/classes/Notice.php b/classes/Notice.php index 6a701ae0c..eb611f314 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -463,6 +463,20 @@ class Notice extends Memcached_DataObject $user->free(); unset($user); } + + $original = Notice::staticGet('id', $this->repeat_of); + + if (!empty($original)) { + $originalUser = User::staticGet('id', $original->profile_id); + if (!empty($originalUser)) { + $ouk = common_cache_key('user:repeats_of_me:'.$originalUser->id); + $cache->delete($ouk); + $originalUser->free(); + unset($originalUser); + } + $original->free(); + unset($original); + } } } } diff --git a/classes/User.php b/classes/User.php index 4b7365fc7..b3da448a6 100644 --- a/classes/User.php +++ b/classes/User.php @@ -793,4 +793,57 @@ class User extends Memcached_DataObject return $ids; } + + function repeatsOfMe($offset=0, $limit=20, $since_id=null, $max_id=null) + { + $ids = Notice::stream(array($this, '_repeatsOfMeDirect'), + array(), + 'user:repeats_of_me:'.$this->id, + $offset, $limit, $since_id, $max_id, null); + + return Notice::getStreamByIds($ids); + } + + function _repeatsOfMeDirect($offset, $limit, $since_id, $max_id, $since) + { + $qry = + 'SELECT DISTINCT original.id AS id ' . + 'FROM notice original JOIN notice rept ON original.id = rept.repeat_of ' . + 'WHERE original.profile_id = ' . $this->id . ' '; + + if ($since_id != 0) { + $qry .= 'AND original.id > ' . $since_id . ' '; + } + + if ($max_id != 0) { + $qry .= 'AND original.id <= ' . $max_id . ' '; + } + + if (!is_null($since)) { + $qry .= 'AND original.modified > \'' . date('Y-m-d H:i:s', $since) . '\' '; + } + + // NOTE: we sort by fave time, not by notice time! + + $qry .= 'ORDER BY original.id DESC '; + + if (!is_null($offset)) { + $qry .= "LIMIT $limit OFFSET $offset"; + } + + $ids = array(); + + $notice = new Notice(); + + $notice->query($qry); + + while ($notice->fetch()) { + $ids[] = $notice->id; + } + + $notice->free(); + $notice = NULL; + + return $ids; + } } diff --git a/lib/router.php b/lib/router.php index 5c1bd3c4f..732caa1c7 100644 --- a/lib/router.php +++ b/lib/router.php @@ -323,6 +323,10 @@ class Router array('action' => 'ApiTimelineRetweetedByMe', 'format' => '(xml|json|atom)')); + $m->connect('api/statuses/retweets_of_me.:format', + array('action' => 'ApiTimelineRetweetsOfMe', + 'format' => '(xml|json|atom)')); + $m->connect('api/statuses/friends.:format', array('action' => 'ApiUserFriends', 'format' => '(xml|json)')); -- cgit v1.2.3-54-g00ecf From 1ec54d3433a79f56c14c0a99114bb1e607348899 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 12 Dec 2009 16:15:23 -0500 Subject: add statuses/retweeted_to_me to API --- actions/apitimelineretweetedtome.php | 125 +++++++++++++++++++++++++++++++++++ classes/Notice.php | 14 ++++ classes/User.php | 54 +++++++++++++++ lib/router.php | 4 ++ 4 files changed, 197 insertions(+) create mode 100644 actions/apitimelineretweetedtome.php (limited to 'lib') diff --git a/actions/apitimelineretweetedtome.php b/actions/apitimelineretweetedtome.php new file mode 100644 index 000000000..681b0b9e9 --- /dev/null +++ b/actions/apitimelineretweetedtome.php @@ -0,0 +1,125 @@ +. + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @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('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR . '/lib/apiauth.php'; + +/** + * Show most recent notices that are repeats in user's inbox + * + * @category API + * @package StatusNet + * @author Evan Prodromou + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + */ + +class ApiTimelineRetweetedToMeAction extends ApiAuthAction +{ + const DEFAULTCOUNT = 20; + const MAXCOUNT = 200; + const MAXNOTICES = 3200; + + var $repeats = null; + var $cnt = self::DEFAULTCOUNT; + var $page = 1; + var $since_id = null; + var $max_id = null; + + /** + * Take arguments for running + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + * + */ + + function prepare($args) + { + parent::prepare($args); + + $cnt = $this->int('count', self::DEFAULTCOUNT, self::MAXCOUNT, 1); + + $page = $this->int('page', 1, (self::MAXNOTICES/$this->cnt)); + + $since_id = $this->int('since_id'); + + $max_id = $this->int('max_id'); + + return true; + } + + /** + * Handle the request + * + * show a timeline of the user's repeated notices + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + + $offset = ($this->page-1) * $this->cnt; + $limit = $this->cnt; + + $strm = $this->auth_user->repeatedToMe($offset, $limit, $this->since_id, $this->max_id); + + switch ($this->format) { + case 'xml': + $this->showXmlTimeline($strm); + break; + case 'json': + $this->showJsonTimeline($strm); + break; + case 'atom': + $profile = $this->auth_user->getProfile(); + + $title = sprintf(_("Repeated to %s"), $this->auth_user->nickname); + $taguribase = common_config('integration', 'taguri'); + $id = "tag:$taguribase:RepeatedToMe:" . $this->auth_user->id; + $link = common_local_url('all', + array('nickname' => $this->auth_user->nickname)); + + $this->showAtomTimeline($strm, $title, $id, $link); + break; + + default: + $this->clientError(_('API method not found!'), $code = 404); + break; + } + } +} diff --git a/classes/Notice.php b/classes/Notice.php index a7b0f8cdb..7d2b898d2 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -483,6 +483,20 @@ class Notice extends Memcached_DataObject $original->free(); unset($original); } + + $ni = new Notice_inbox(); + + $ni->notice_id = $this->id; + + if ($ni->find()) { + while ($ni->fetch()) { + $tmk = common_cache_key('user:repeated_to_me:'.$ni->user_id); + $cache->delete($tmk); + } + } + + $ni->free(); + unset($ni); } } } diff --git a/classes/User.php b/classes/User.php index b3da448a6..9c071e06b 100644 --- a/classes/User.php +++ b/classes/User.php @@ -846,4 +846,58 @@ class User extends Memcached_DataObject return $ids; } + + function repeatedToMe($offset=0, $limit=20, $since_id=null, $max_id=null) + { + $ids = Notice::stream(array($this, '_repeatedToMeDirect'), + array(), + 'user:repeated_to_me:'.$this->id, + $offset, $limit, $since_id, $max_id, null); + + return Notice::getStreamByIds($ids); + } + + function _repeatedToMeDirect($offset, $limit, $since_id, $max_id, $since) + { + $qry = + 'SELECT notice.id AS id ' . + 'FROM notice JOIN notice_inbox ON notice.id = notice_inbox.notice_id ' . + 'WHERE notice_inbox.user_id = ' . $this->id . ' ' . + 'AND notice.repeat_of IS NOT NULL '; + + if ($since_id != 0) { + $qry .= 'AND notice.id > ' . $since_id . ' '; + } + + if ($max_id != 0) { + $qry .= 'AND notice.id <= ' . $max_id . ' '; + } + + if (!is_null($since)) { + $qry .= 'AND notice.modified > \'' . date('Y-m-d H:i:s', $since) . '\' '; + } + + // NOTE: we sort by fave time, not by notice time! + + $qry .= 'ORDER BY notice.id DESC '; + + if (!is_null($offset)) { + $qry .= "LIMIT $limit OFFSET $offset"; + } + + $ids = array(); + + $notice = new Notice(); + + $notice->query($qry); + + while ($notice->fetch()) { + $ids[] = $notice->id; + } + + $notice->free(); + $notice = NULL; + + return $ids; + } } diff --git a/lib/router.php b/lib/router.php index 732caa1c7..8f68f86ac 100644 --- a/lib/router.php +++ b/lib/router.php @@ -323,6 +323,10 @@ class Router array('action' => 'ApiTimelineRetweetedByMe', 'format' => '(xml|json|atom)')); + $m->connect('api/statuses/retweeted_to_me.:format', + array('action' => 'ApiTimelineRetweetedToMe', + 'format' => '(xml|json|atom)')); + $m->connect('api/statuses/retweets_of_me.:format', array('action' => 'ApiTimelineRetweetsOfMe', 'format' => '(xml|json|atom)')); -- cgit v1.2.3-54-g00ecf From 304ba80a0f39340c9bb4f15b631cbccf5949afbd Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 12 Dec 2009 16:33:38 -0500 Subject: make sure to show repeats correctly when original is deleted --- lib/noticelist.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/noticelist.php b/lib/noticelist.php index 7319a62ea..aa6ea278c 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -167,8 +167,13 @@ class NoticeListItem extends Widget { parent::__construct($out); if (!empty($notice->repeat_of)) { - $this->notice = Notice::staticGet('id', $notice->repeat_of); - $this->repeat = $notice; + $original = Notice::staticGet('id', $notice->repeat_of); + if (empty($original)) { // could have been deleted + $this->notice = $notice; + } else { + $this->notice = $original; + $this->repeat = $notice; + } } else { $this->notice = $notice; } -- cgit v1.2.3-54-g00ecf From bed4e1c9e96b2bf2208f987479d15e3f624aac6a Mon Sep 17 00:00:00 2001 From: Craig Andrews Date: Sat, 12 Dec 2009 21:24:38 -0500 Subject: Add repeat command --- lib/command.php | 61 ++++++++++++++++++++++++++++++++++++++++++++++ lib/commandinterpreter.php | 13 ++++++++++ 2 files changed, 74 insertions(+) (limited to 'lib') diff --git a/lib/command.php b/lib/command.php index 085331f82..222bd7683 100644 --- a/lib/command.php +++ b/lib/command.php @@ -379,6 +379,65 @@ class MessageCommand extends Command } } +class RepeatCommand extends Command +{ + var $other = null; + function __construct($user, $other) + { + parent::__construct($user); + $this->other = $other; + } + + function execute($channel) + { + if(substr($this->other,0,1)=='#'){ + //repeating a specific notice_id + + $notice = Notice::staticGet(substr($this->other,1)); + if (!$notice) { + $channel->error($this->user, _('Notice with that id does not exist')); + return; + } + $recipient = $notice->getProfile(); + }else{ + //repeating a given user's last notice + + $recipient = + common_relative_profile($this->user, common_canonical_nickname($this->other)); + + if (!$recipient) { + $channel->error($this->user, _('No such user.')); + return; + } + $notice = $recipient->getCurrentNotice(); + if (!$notice) { + $channel->error($this->user, _('User has no last notice')); + return; + } + } + + if($this->user->id == $notice->profile_id) + { + $channel->error($this->user, _('Cannot repeat your own notice')); + return; + } + + if ($recipient->hasRepeated($notice->id)) { + $channel->error($this->user, _('Already repeated that notice')); + return; + } + + $repeat = $notice->repeat($this->user->id, $channel->source); + + if ($repeat) { + common_broadcast_notice($repeat); + $channel->output($this->user, sprintf(_('Notice from %s repeated'), $recipient->nickname)); + } else { + $channel->error($this->user, _('Error repeating notice.')); + } + } +} + class ReplyCommand extends Command { var $other = null; @@ -696,6 +755,8 @@ class HelpCommand extends Command "whois - get profile info on user\n". "fav - add user's last notice as a 'fave'\n". "fav # - add notice with the given id as a 'fave'\n". + "repeat # - repeat a notice with a given id\n". + "repeat - repeat the last notice from user\n". "reply # - reply to notice with a given id\n". "reply - reply to the last notice from user\n". "join - join group\n". diff --git a/lib/commandinterpreter.php b/lib/commandinterpreter.php index 665015afc..c2add7299 100644 --- a/lib/commandinterpreter.php +++ b/lib/commandinterpreter.php @@ -169,6 +169,19 @@ class CommandInterpreter } else { return new ReplyCommand($user, $other, $extra); } + case 'repeat': + case 'rp': + case 'rt': + case 'rd': + if (!$arg) { + return null; + } + list($other, $extra) = $this->split_arg($arg); + if ($extra) { + return null; + } else { + return new RepeatCommand($user, $other); + } case 'whois': if (!$arg) { return null; -- cgit v1.2.3-54-g00ecf From 954eb411e038745ee3e7995364a79d2fbda909bc Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Sun, 13 Dec 2009 18:31:14 +0100 Subject: Localisation updates for !StatusNet from !translatewiki.net !sntrans * add Interlingua (ia) --- lib/language.php | 1 + locale/ia/LC_MESSAGES/statusnet.po | 5363 ++++++++++++++++++++++++++++++++++++ 2 files changed, 5364 insertions(+) create mode 100644 locale/ia/LC_MESSAGES/statusnet.po (limited to 'lib') diff --git a/lib/language.php b/lib/language.php index c037d30c3..d8f529201 100644 --- a/lib/language.php +++ b/lib/language.php @@ -287,6 +287,7 @@ function get_all_languages() { 'ga' => array('q' => 0.5, 'lang' => 'ga', 'name' => 'Galician', 'direction' => 'ltr'), 'he' => array('q' => 0.5, 'lang' => 'he', 'name' => 'Hebrew', 'direction' => 'rtl'), 'hsb' => array('q' => 0.8, 'lang' => 'hsb', 'name' => 'Upper Sorbian', 'direction' => 'ltr'), + 'ia' => array('q' => 0.8, 'lang' => 'ia', 'name' => 'Interlingua', 'direction' => 'ltr'), 'is' => array('q' => 0.1, 'lang' => 'is', 'name' => 'Icelandic', 'direction' => 'ltr'), 'it' => array('q' => 1, 'lang' => 'it', 'name' => 'Italian', 'direction' => 'ltr'), 'jp' => array('q' => 0.5, 'lang' => 'ja', 'name' => 'Japanese', 'direction' => 'ltr'), diff --git a/locale/ia/LC_MESSAGES/statusnet.po b/locale/ia/LC_MESSAGES/statusnet.po new file mode 100644 index 000000000..99c3d9ec5 --- /dev/null +++ b/locale/ia/LC_MESSAGES/statusnet.po @@ -0,0 +1,5363 @@ +# Translation of StatusNet to Interlingua +# +# Author@translatewiki.net: McDutchie +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-12-13 17:29+0000\n" +"PO-Revision-Date: 2009-12-13 17:30:36+0000\n" +"Language-Team: Interlingua\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: MediaWiki 1.16alpha (r60008); Translate extension (2009-12-06)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ia\n" +"X-Message-Group: out-statusnet\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: actions/all.php:63 actions/public.php:97 actions/replies.php:92 +#: actions/showfavorites.php:137 actions/tag.php:51 +msgid "No such page" +msgstr "Pagina non existe" + +#: actions/all.php:74 actions/allrss.php:68 +#: actions/apiaccountupdatedeliverydevice.php:113 +#: actions/apiaccountupdateprofile.php:105 +#: actions/apiaccountupdateprofilebackgroundimage.php:116 +#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97 +#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77 +#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112 +#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99 +#: actions/apigroupleave.php:99 actions/apigrouplist.php:90 +#: actions/apistatusesupdate.php:144 actions/apisubscriptions.php:87 +#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:79 +#: actions/apitimelinementions.php:79 actions/apitimelineuser.php:81 +#: actions/avatarbynickname.php:75 actions/favoritesrss.php:74 +#: actions/foaf.php:40 actions/foaf.php:58 actions/microsummary.php:62 +#: actions/newmessage.php:116 actions/remotesubscribe.php:145 +#: actions/remotesubscribe.php:154 actions/replies.php:73 +#: actions/repliesrss.php:38 actions/showfavorites.php:105 +#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:38 +#: actions/xrds.php:71 lib/command.php:163 lib/command.php:311 +#: lib/command.php:364 lib/command.php:409 lib/command.php:470 +#: lib/command.php:526 lib/galleryaction.php:59 lib/mailbox.php:82 +#: lib/profileaction.php:77 lib/subs.php:34 lib/subs.php:116 +msgid "No such user." +msgstr "Usator non existe." + +#: actions/all.php:84 +#, php-format +msgid "%s and friends, page %d" +msgstr "%s e amicos, pagina %d" + +#: actions/all.php:86 actions/all.php:167 actions/allrss.php:115 +#: actions/apitimelinefriends.php:115 lib/personalgroupnav.php:100 +#, php-format +msgid "%s and friends" +msgstr "%s e amicos" + +#: actions/all.php:99 +#, php-format +msgid "Feed for friends of %s (RSS 1.0)" +msgstr "Syndication pro le amicos de %s (RSS 1.0)" + +#: actions/all.php:107 +#, php-format +msgid "Feed for friends of %s (RSS 2.0)" +msgstr "Syndication pro le amicos de %s (RSS 2.0)" + +#: actions/all.php:115 +#, php-format +msgid "Feed for friends of %s (Atom)" +msgstr "Syndication pro le amicos de %s (Atom)" + +#: actions/all.php:127 +#, php-format +msgid "" +"This is the timeline for %s and friends but no one has posted anything yet." +msgstr "" +"Isto es le chronologia pro %s e su amicos, ma necuno ha ancora publicate " +"alique." + +#: actions/all.php:132 +#, php-format +msgid "" +"Try subscribing to more people, [join a group](%%action.groups%%) or post " +"something yourself." +msgstr "" +"Proba subscriber te a altere personas, [face te membro de un gruppo](%%" +"action.groups%%) o publica alique tu mesme." + +#: actions/all.php:134 +#, php-format +msgid "" +"You can try to [nudge %s](../%s) from his profile or [post something to his " +"or her attention](%%%%action.newnotice%%%%?status_textarea=%s)." +msgstr "" +"Tu pote tentar [dar un pulsata a %s](../%s) in su profilo o [publicar un " +"message a su attention](%%%%action.newnotice%%%%?status_textarea=%s)." + +#: actions/all.php:137 actions/replies.php:209 actions/showstream.php:202 +#, php-format +msgid "" +"Why not [register an account](%%%%action.register%%%%) and then nudge %s or " +"post a notice to his or her attention." +msgstr "" +"Proque non [registrar un conto](%%%%action.register%%%%) e postea dar un " +"pulsata a %s o publicar un message a su attention." + +#: actions/all.php:165 +msgid "You and friends" +msgstr "Tu e amicos" + +#: actions/allrss.php:119 actions/apitimelinefriends.php:122 +#, php-format +msgid "Updates from %1$s and friends on %2$s!" +msgstr "Actualisationes de %1$s e su amicos in %2$s!" + +#: actions/apiaccountratelimitstatus.php:70 +#: actions/apiaccountupdatedeliverydevice.php:93 +#: actions/apiaccountupdateprofile.php:97 +#: actions/apiaccountupdateprofilebackgroundimage.php:94 +#: actions/apiaccountupdateprofilecolors.php:118 +msgid "API method not found." +msgstr "Methodo API non trovate." + +#: actions/apiaccountupdatedeliverydevice.php:85 +#: actions/apiaccountupdateprofile.php:89 +#: actions/apiaccountupdateprofilebackgroundimage.php:86 +#: actions/apiaccountupdateprofilecolors.php:110 +#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89 +#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117 +#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91 +#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91 +#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91 +#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65 +#: actions/apistatusesupdate.php:114 +msgid "This method requires a POST." +msgstr "Iste methodo require un POST." + +#: actions/apiaccountupdatedeliverydevice.php:105 +msgid "" +"You must specify a parameter named 'device' with a value of one of: sms, im, " +"none" +msgstr "" +"Tu debe specificar un parametro nominate 'device' con un del valores: sms, " +"im, none" + +#: actions/apiaccountupdatedeliverydevice.php:132 +msgid "Could not update user." +msgstr "Non poteva actualisar le usator." + +#: actions/apiaccountupdateprofile.php:112 +#: actions/apiaccountupdateprofilebackgroundimage.php:194 +#: actions/apiaccountupdateprofilecolors.php:185 +#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108 +#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/replies.php:80 +#: actions/usergroups.php:98 lib/galleryaction.php:66 lib/profileaction.php:84 +msgid "User has no profile." +msgstr "Le usator non ha un profilo." + +#: actions/apiaccountupdateprofile.php:147 +msgid "Could not save profile." +msgstr "Non poteva salveguardar le profilo." + +#: actions/apiaccountupdateprofilebackgroundimage.php:108 +#: actions/apiaccountupdateprofileimage.php:97 +#: actions/apistatusesupdate.php:127 actions/avatarsettings.php:257 +#: actions/designadminpanel.php:122 actions/newnotice.php:94 +#: lib/designsettings.php:283 +#, php-format +msgid "" +"The server was unable to handle that much POST data (%s bytes) due to its " +"current configuration." +msgstr "" +"Le servitor non ha potite tractar tante datos POST (%s bytes) a causa de su " +"configuration actual." + +#: actions/apiaccountupdateprofilebackgroundimage.php:136 +#: actions/apiaccountupdateprofilebackgroundimage.php:146 +#: actions/apiaccountupdateprofilecolors.php:164 +#: actions/apiaccountupdateprofilecolors.php:174 +msgid "Unable to save your design settings." +msgstr "Impossibile salveguardar le configurationes del apparentia." + +#: actions/apiaccountupdateprofilebackgroundimage.php:187 +#: actions/apiaccountupdateprofilecolors.php:142 +msgid "Could not update your design." +msgstr "Non poteva actualisar le apparentia." + +#: actions/apiblockcreate.php:105 +msgid "You cannot block yourself!" +msgstr "Tu non pote blocar te mesme!" + +#: actions/apiblockcreate.php:119 +msgid "Block user failed." +msgstr "Le blocada del usator ha fallite." + +#: actions/apiblockdestroy.php:107 +msgid "Unblock user failed." +msgstr "Le disblocada del usator ha fallite." + +#: actions/apidirectmessage.php:89 +#, php-format +msgid "Direct messages from %s" +msgstr "Messages directe de %s" + +#: actions/apidirectmessage.php:93 +#, php-format +msgid "All the direct messages sent from %s" +msgstr "Tote le messages directe inviate de %s" + +#: actions/apidirectmessage.php:101 +#, php-format +msgid "Direct messages to %s" +msgstr "Messages directe a %s" + +#: actions/apidirectmessage.php:105 +#, php-format +msgid "All the direct messages sent to %s" +msgstr "Tote le messages directe inviate a %s" + +#: actions/apidirectmessage.php:156 actions/apifavoritecreate.php:99 +#: actions/apifavoritedestroy.php:100 actions/apifriendshipscreate.php:100 +#: actions/apifriendshipsdestroy.php:100 actions/apifriendshipsshow.php:129 +#: actions/apigroupcreate.php:136 actions/apigroupismember.php:114 +#: actions/apigroupjoin.php:155 actions/apigroupleave.php:141 +#: actions/apigrouplist.php:132 actions/apigrouplistall.php:120 +#: actions/apigroupmembership.php:106 actions/apigroupshow.php:105 +#: actions/apihelptest.php:88 actions/apistatusesdestroy.php:102 +#: actions/apistatusesretweets.php:112 actions/apistatusesshow.php:108 +#: actions/apistatusnetconfig.php:133 actions/apistatusnetversion.php:93 +#: actions/apisubscriptions.php:111 actions/apitimelinefavorites.php:146 +#: actions/apitimelinefriends.php:156 actions/apitimelinegroup.php:150 +#: actions/apitimelinementions.php:151 actions/apitimelinepublic.php:131 +#: actions/apitimelineretweetedbyme.php:122 +#: actions/apitimelineretweetedtome.php:121 +#: actions/apitimelineretweetsofme.php:122 actions/apitimelinetag.php:141 +#: actions/apitimelineuser.php:165 actions/apiusershow.php:101 +msgid "API method not found!" +msgstr "Methodo API non trovate!" + +#: actions/apidirectmessagenew.php:126 +msgid "No message text!" +msgstr "Message sin texto!" + +#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150 +#, php-format +msgid "That's too long. Max message size is %d chars." +msgstr "Isto es troppo longe. Le maximo es %d characteres." + +#: actions/apidirectmessagenew.php:146 +msgid "Recipient user not found." +msgstr "Usator destinatario non trovate." + +#: actions/apidirectmessagenew.php:150 +msgid "Can't send direct messages to users who aren't your friend." +msgstr "Non pote inviar messages directe a usatores que non es tu amicos." + +#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109 +#: actions/apistatusesdestroy.php:113 +msgid "No status found with that ID." +msgstr "Nulle stato trovate con iste ID." + +#: actions/apifavoritecreate.php:119 +msgid "This status is already a favorite!" +msgstr "Iste stato es ja favorite!" + +#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176 +msgid "Could not create favorite." +msgstr "Non poteva crear le favorite." + +#: actions/apifavoritedestroy.php:122 +msgid "That status is not a favorite!" +msgstr "Iste stato non es favorite!" + +#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87 +msgid "Could not delete favorite." +msgstr "Non poteva deler le favorite." + +#: actions/apifriendshipscreate.php:109 +msgid "Could not follow user: User not found." +msgstr "Non poteva sequer le usator: Usator non trovate." + +#: actions/apifriendshipscreate.php:118 +#, php-format +msgid "Could not follow user: %s is already on your list." +msgstr "Non poteva sequer le usator: %s es ja in tu lista." + +#: actions/apifriendshipsdestroy.php:109 +msgid "Could not unfollow user: User not found." +msgstr "Non poteva cessar de sequer le usator: Usator non trovate." + +#: actions/apifriendshipsdestroy.php:120 +msgid "You cannot unfollow yourself!" +msgstr "Tu non pote cessar de sequer te mesme!" + +#: actions/apifriendshipsexists.php:94 +msgid "Two user ids or screen_names must be supplied." +msgstr "Duo IDs de usator o pseudonymos debe esser fornite." + +#: actions/apifriendshipsshow.php:135 +msgid "Could not determine source user." +msgstr "Non poteva determinar le usator de origine." + +#: actions/apifriendshipsshow.php:143 +msgid "Could not find target user." +msgstr "Non poteva trovar le usator de destination." + +#: actions/apigroupcreate.php:164 actions/editgroup.php:182 +#: actions/newgroup.php:126 actions/profilesettings.php:208 +#: actions/register.php:205 +msgid "Nickname must have only lowercase letters and numbers and no spaces." +msgstr "Le pseudonymo pote solmente haber minusculas e numeros, sin spatios." + +#: actions/apigroupcreate.php:173 actions/editgroup.php:186 +#: actions/newgroup.php:130 actions/profilesettings.php:231 +#: actions/register.php:208 +msgid "Nickname already in use. Try another one." +msgstr "Pseudonymo ja in uso. Proba un altere." + +#: actions/apigroupcreate.php:180 actions/editgroup.php:189 +#: actions/newgroup.php:133 actions/profilesettings.php:211 +#: actions/register.php:210 +msgid "Not a valid nickname." +msgstr "Non un pseudonymo valide." + +#: actions/apigroupcreate.php:196 actions/editgroup.php:195 +#: actions/newgroup.php:139 actions/profilesettings.php:215 +#: actions/register.php:217 +msgid "Homepage is not a valid URL." +msgstr "Le pagina personal non es un URL valide." + +#: actions/apigroupcreate.php:205 actions/editgroup.php:198 +#: actions/newgroup.php:142 actions/profilesettings.php:218 +#: actions/register.php:220 +msgid "Full name is too long (max 255 chars)." +msgstr "Le nomine complete es troppo longe (max. 255 characteres)." + +#: actions/apigroupcreate.php:213 +#, php-format +msgid "Description is too long (max %d chars)." +msgstr "Description es troppo longe (max %d charachteres)." + +#: actions/apigroupcreate.php:224 actions/editgroup.php:204 +#: actions/newgroup.php:148 actions/profilesettings.php:225 +#: actions/register.php:227 +msgid "Location is too long (max 255 chars)." +msgstr "Loco es troppo longe (max. 255 characteres)." + +#: actions/apigroupcreate.php:243 actions/editgroup.php:215 +#: actions/newgroup.php:159 +#, php-format +msgid "Too many aliases! Maximum %d." +msgstr "Troppo de aliases! Maximo: %d." + +#: actions/apigroupcreate.php:264 actions/editgroup.php:224 +#: actions/newgroup.php:168 +#, php-format +msgid "Invalid alias: \"%s\"" +msgstr "Alias invalide: \"%s\"" + +#: actions/apigroupcreate.php:273 actions/editgroup.php:228 +#: actions/newgroup.php:172 +#, php-format +msgid "Alias \"%s\" already in use. Try another one." +msgstr "Le alias \"%s\" es ja in uso. Proba un altere." + +#: actions/apigroupcreate.php:286 actions/editgroup.php:234 +#: actions/newgroup.php:178 +msgid "Alias can't be the same as nickname." +msgstr "Le alias non pote esser identic al pseudonymo." + +#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104 +#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91 +#: actions/apigroupshow.php:90 actions/apitimelinegroup.php:91 +msgid "Group not found!" +msgstr "Gruppo non trovate!" + +#: actions/apigroupjoin.php:110 +msgid "You are already a member of that group." +msgstr "Tu es ja membro de iste gruppo." + +#: actions/apigroupjoin.php:119 actions/joingroup.php:95 lib/command.php:221 +msgid "You have been blocked from that group by the admin." +msgstr "Le administrator te ha blocate de iste gruppo." + +#: actions/apigroupjoin.php:138 +#, php-format +msgid "Could not join user %s to group %s." +msgstr "Non poteva inscriber le usator %s in le gruppo %s." + +#: actions/apigroupleave.php:114 +msgid "You are not a member of this group." +msgstr "Tu non es membro de iste gruppo." + +#: actions/apigroupleave.php:124 +#, php-format +msgid "Could not remove user %s to group %s." +msgstr "Non poteva remover le usator %s del gruppo %s." + +#: actions/apigrouplist.php:95 +#, php-format +msgid "%s's groups" +msgstr "Gruppos de %s" + +#: actions/apigrouplist.php:103 +#, php-format +msgid "Groups %s is a member of on %s." +msgstr "Le gruppos del quales %s es membro in %s." + +#: actions/apigrouplistall.php:90 actions/usergroups.php:62 +#, php-format +msgid "%s groups" +msgstr "Gruppos de %s" + +#: actions/apigrouplistall.php:94 +#, php-format +msgid "groups on %s" +msgstr "gruppos in %s" + +#: actions/apistatusesdestroy.php:107 +msgid "This method requires a POST or DELETE." +msgstr "Iste methodo require un commando POST o DELETE." + +#: actions/apistatusesdestroy.php:130 +msgid "You may not delete another user's status." +msgstr "Tu non pote deler le stato de un altere usator." + +#: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72 +#, fuzzy +msgid "No such notice" +msgstr "Nota non trovate." + +#: actions/apistatusesretweet.php:83 lib/command.php:421 +msgid "Cannot repeat your own notice" +msgstr "" + +#: actions/apistatusesretweet.php:91 lib/command.php:426 +#, fuzzy +msgid "Already repeated that notice" +msgstr "Deler iste nota" + +#: actions/apistatusesshow.php:138 +msgid "Status deleted." +msgstr "Stato delite." + +#: actions/apistatusesshow.php:144 +msgid "No status with that ID found." +msgstr "Nulle stato trovate con iste ID." + +#: actions/apistatusesupdate.php:157 actions/newnotice.php:155 +#: scripts/maildaemon.php:71 +#, php-format +msgid "That's too long. Max notice size is %d chars." +msgstr "" +"Isto es troppo longe. Le longitude maximal del notas es %d characteres." + +#: actions/apistatusesupdate.php:198 +msgid "Not found" +msgstr "Non trovate" + +#: actions/apistatusesupdate.php:227 actions/newnotice.php:183 +#, php-format +msgid "Max notice size is %d chars, including attachment URL." +msgstr "" +"Le longitude maximal del notas es %d characteres, includente le URL " +"adjungite." + +#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261 +msgid "Unsupported format." +msgstr "Formato non supportate." + +#: actions/apitimelinefavorites.php:108 +#, php-format +msgid "%s / Favorites from %s" +msgstr "%s / Favorites de %s" + +#: actions/apitimelinefavorites.php:120 +#, php-format +msgid "%s updates favorited by %s / %s." +msgstr "%s actualisationes favoritisate per %s / %s." + +#: actions/apitimelinegroup.php:109 actions/apitimelineuser.php:118 +#: actions/grouprss.php:131 actions/userrss.php:90 +#, php-format +msgid "%s timeline" +msgstr "Chronologia de %s" + +#: actions/apitimelinegroup.php:117 actions/apitimelineuser.php:126 +#: actions/userrss.php:92 +#, php-format +msgid "Updates from %1$s on %2$s!" +msgstr "Actualisationes de %1$s in %2$s!" + +#: actions/apitimelinementions.php:117 +#, php-format +msgid "%1$s / Updates mentioning %2$s" +msgstr "%1$s / Actualisationes que mentiona %2$s" + +#: actions/apitimelinementions.php:127 +#, php-format +msgid "%1$s updates that reply to updates from %2$s / %3$s." +msgstr "" +"Actualisationes de %1$s que responde al actualisationes de %2$s / %3$s." + +#: actions/apitimelinepublic.php:107 actions/publicrss.php:103 +#, php-format +msgid "%s public timeline" +msgstr "Chronologia public de %s" + +#: actions/apitimelinepublic.php:111 actions/publicrss.php:105 +#, php-format +msgid "%s updates from everyone!" +msgstr "Actualisationes de totes in %s!" + +#: actions/apitimelineretweetedbyme.php:112 lib/noticelist.php:566 +#, php-format +msgid "Repeated by %s" +msgstr "" + +#: actions/apitimelineretweetedtome.php:111 +#, php-format +msgid "Repeated to %s" +msgstr "" + +#: actions/apitimelineretweetsofme.php:112 +#, php-format +msgid "Repeats of %s" +msgstr "" + +#: actions/apitimelinetag.php:102 actions/tag.php:66 +#, php-format +msgid "Notices tagged with %s" +msgstr "Notas con etiquetta %s" + +#: actions/apitimelinetag.php:108 actions/tagrss.php:64 +#, php-format +msgid "Updates tagged with %1$s on %2$s!" +msgstr "Actualisationes con etiquetta %1$s in %2$s!" + +#: actions/apiusershow.php:96 +msgid "Not found." +msgstr "Non trovate." + +#: actions/attachment.php:73 +msgid "No such attachment." +msgstr "Attachamento non existe." + +#: actions/avatarbynickname.php:59 actions/leavegroup.php:76 +msgid "No nickname." +msgstr "Nulle pseudonymo." + +#: actions/avatarbynickname.php:64 +msgid "No size." +msgstr "Nulle dimension." + +#: actions/avatarbynickname.php:69 +msgid "Invalid size." +msgstr "Dimension invalide." + +#: actions/avatarsettings.php:67 actions/showgroup.php:221 +#: lib/accountsettingsaction.php:112 +msgid "Avatar" +msgstr "Avatar" + +#: actions/avatarsettings.php:78 +#, php-format +msgid "You can upload your personal avatar. The maximum file size is %s." +msgstr "Tu pote cargar tu avatar personal. Le dimension maxime del file es %s." + +#: actions/avatarsettings.php:106 actions/avatarsettings.php:185 +#: actions/grouplogo.php:178 actions/remotesubscribe.php:191 +#: actions/userauthorization.php:72 actions/userrss.php:103 +msgid "User without matching profile" +msgstr "Usator sin profilo correspondente" + +#: actions/avatarsettings.php:119 actions/avatarsettings.php:197 +#: actions/grouplogo.php:251 +msgid "Avatar settings" +msgstr "Configuration del avatar" + +#: actions/avatarsettings.php:127 actions/avatarsettings.php:205 +#: actions/grouplogo.php:199 actions/grouplogo.php:259 +msgid "Original" +msgstr "Original" + +#: actions/avatarsettings.php:142 actions/avatarsettings.php:217 +#: actions/grouplogo.php:210 actions/grouplogo.php:271 +msgid "Preview" +msgstr "Previsualisation" + +#: actions/avatarsettings.php:149 lib/deleteuserform.php:66 +#: lib/noticelist.php:612 +msgid "Delete" +msgstr "Deler" + +#: actions/avatarsettings.php:166 actions/grouplogo.php:233 +msgid "Upload" +msgstr "Cargar" + +#: actions/avatarsettings.php:231 actions/grouplogo.php:286 +msgid "Crop" +msgstr "Taliar" + +#: actions/avatarsettings.php:268 actions/disfavor.php:74 +#: actions/emailsettings.php:238 actions/favor.php:75 +#: actions/groupblock.php:66 actions/grouplogo.php:309 +#: actions/groupunblock.php:66 actions/imsettings.php:206 +#: actions/invite.php:56 actions/login.php:135 actions/makeadmin.php:66 +#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80 +#: actions/othersettings.php:145 actions/passwordsettings.php:138 +#: actions/profilesettings.php:187 actions/recoverpassword.php:337 +#: actions/register.php:165 actions/remotesubscribe.php:77 +#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38 +#: actions/subscribe.php:46 actions/tagother.php:166 +#: actions/unsubscribe.php:69 actions/userauthorization.php:52 +#: lib/designsettings.php:294 +msgid "There was a problem with your session token. Try again, please." +msgstr "Occurreva un problema con le indicio de tu session. Per favor reproba." + +#: actions/avatarsettings.php:281 actions/designadminpanel.php:103 +#: actions/emailsettings.php:256 actions/grouplogo.php:319 +#: actions/imsettings.php:220 actions/recoverpassword.php:44 +#: actions/smssettings.php:248 lib/designsettings.php:304 +msgid "Unexpected form submission." +msgstr "Submission de formulario inexpectate." + +#: actions/avatarsettings.php:328 +msgid "Pick a square area of the image to be your avatar" +msgstr "Selige un area quadrate del imagine pro facer lo tu avatar" + +#: actions/avatarsettings.php:343 actions/grouplogo.php:377 +msgid "Lost our file data." +msgstr "Datos del file perdite." + +#: actions/avatarsettings.php:366 +msgid "Avatar updated." +msgstr "Avatar actualisate." + +#: actions/avatarsettings.php:369 +msgid "Failed updating avatar." +msgstr "Actualisation del avatar fallite." + +#: actions/avatarsettings.php:393 +msgid "Avatar deleted." +msgstr "Avatar delite." + +#: actions/block.php:69 +msgid "You already blocked that user." +msgstr "Tu ha ja blocate iste usator." + +#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160 +msgid "Block user" +msgstr "Blocar usator" + +#: actions/block.php:130 +msgid "" +"Are you sure you want to block this user? Afterwards, they will be " +"unsubscribed from you, unable to subscribe to you in the future, and you " +"will not be notified of any @-replies from them." +msgstr "" +"Es tu secur de voler blocar iste usator? Postea, su subscription a te essera " +"cancellate, ille non potera resubscriber se a te in le futuro, e tu non " +"recipera notification de su @-responsas." + +#: actions/block.php:143 actions/deletenotice.php:145 +#: actions/deleteuser.php:147 actions/groupblock.php:178 +msgid "No" +msgstr "No" + +#: actions/block.php:143 actions/deleteuser.php:147 +msgid "Do not block this user" +msgstr "Non blocar iste usator" + +#: actions/block.php:144 actions/deletenotice.php:146 +#: actions/deleteuser.php:148 actions/groupblock.php:179 +msgid "Yes" +msgstr "Si" + +#: actions/block.php:144 actions/groupmembers.php:346 lib/blockform.php:80 +msgid "Block this user" +msgstr "Blocar iste usator" + +#: actions/block.php:162 +msgid "Failed to save block information." +msgstr "Falleva de salveguardar le information del blocada." + +#: actions/blockedfromgroup.php:73 actions/editgroup.php:84 +#: actions/groupdesignsettings.php:84 actions/grouplogo.php:86 +#: actions/groupmembers.php:76 actions/grouprss.php:91 +#: actions/joingroup.php:76 actions/showgroup.php:121 +msgid "No nickname" +msgstr "Nulle pseudonymo" + +#: actions/blockedfromgroup.php:80 actions/editgroup.php:96 +#: actions/groupbyid.php:83 actions/groupdesignsettings.php:97 +#: actions/grouplogo.php:99 actions/groupmembers.php:83 +#: actions/grouprss.php:98 actions/joingroup.php:83 actions/showgroup.php:137 +msgid "No such group" +msgstr "Gruppo non existe" + +#: actions/blockedfromgroup.php:90 +#, php-format +msgid "%s blocked profiles" +msgstr "%s profilos blocate" + +#: actions/blockedfromgroup.php:93 +#, php-format +msgid "%s blocked profiles, page %d" +msgstr "%s profilos blocate, pagina %d" + +#: actions/blockedfromgroup.php:108 +msgid "A list of the users blocked from joining this group." +msgstr "Un lista del usatores excludite del membrato de iste gruppo." + +#: actions/blockedfromgroup.php:281 +msgid "Unblock user from group" +msgstr "Disblocar le usator del gruppo" + +#: actions/blockedfromgroup.php:313 lib/unblockform.php:69 +msgid "Unblock" +msgstr "Disblocar" + +#: actions/blockedfromgroup.php:313 lib/unblockform.php:80 +msgid "Unblock this user" +msgstr "Disblocar iste usator" + +#: actions/bookmarklet.php:50 +msgid "Post to " +msgstr "Publicar in " + +#: actions/confirmaddress.php:75 +msgid "No confirmation code." +msgstr "Nulle codice de confirmation." + +#: actions/confirmaddress.php:80 +msgid "Confirmation code not found." +msgstr "Codice de confirmation non trovate." + +#: actions/confirmaddress.php:85 +msgid "That confirmation code is not for you!" +msgstr "Iste codice de confirmation non es pro te!" + +#: actions/confirmaddress.php:90 +#, php-format +msgid "Unrecognized address type %s" +msgstr "Typo de adresse %s non recognoscite" + +#: actions/confirmaddress.php:94 +msgid "That address has already been confirmed." +msgstr "Iste adresse ha ja essite confirmate." + +#: actions/confirmaddress.php:114 actions/emailsettings.php:296 +#: actions/emailsettings.php:427 actions/imsettings.php:258 +#: actions/imsettings.php:401 actions/othersettings.php:174 +#: actions/profilesettings.php:276 actions/smssettings.php:278 +#: actions/smssettings.php:420 +msgid "Couldn't update user." +msgstr "Non poteva actualisar usator." + +#: actions/confirmaddress.php:126 actions/emailsettings.php:391 +#: actions/imsettings.php:363 actions/smssettings.php:382 +msgid "Couldn't delete email confirmation." +msgstr "Non poteva deler confirmation de e-mail." + +#: actions/confirmaddress.php:144 +msgid "Confirm Address" +msgstr "Confirmar adresse" + +#: actions/confirmaddress.php:159 +#, php-format +msgid "The address \"%s\" has been confirmed for your account." +msgstr "Le adresse \"%s\" ha essite confirmate pro tu conto." + +#: actions/conversation.php:99 +msgid "Conversation" +msgstr "Conversation" + +#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87 +#: lib/profileaction.php:216 lib/searchgroupnav.php:82 +msgid "Notices" +msgstr "Notas" + +#: actions/deletenotice.php:52 actions/shownotice.php:92 +msgid "No such notice." +msgstr "Nota non trovate." + +#: actions/deletenotice.php:67 actions/disfavor.php:61 actions/favor.php:62 +#: actions/groupblock.php:61 actions/groupunblock.php:61 actions/logout.php:69 +#: actions/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89 +#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:30 +#: actions/unsubscribe.php:52 lib/adminpanelaction.php:72 +#: lib/profileformaction.php:63 lib/settingsaction.php:72 +msgid "Not logged in." +msgstr "Non identificate." + +#: actions/deletenotice.php:71 +msgid "Can't delete this notice." +msgstr "Non pote deler iste nota." + +#: actions/deletenotice.php:103 +msgid "" +"You are about to permanently delete a notice. Once this is done, it cannot " +"be undone." +msgstr "" +"Tu es super le puncto de deler permanentemente un nota. Un vice facite, isto " +"non pote esser disfacite." + +#: actions/deletenotice.php:109 actions/deletenotice.php:141 +msgid "Delete notice" +msgstr "Deler nota" + +#: actions/deletenotice.php:144 +msgid "Are you sure you want to delete this notice?" +msgstr "Es tu secur de voler deler iste nota?" + +#: actions/deletenotice.php:145 +msgid "Do not delete this notice" +msgstr "Non deler iste nota" + +#: actions/deletenotice.php:146 lib/noticelist.php:612 +msgid "Delete this notice" +msgstr "Deler iste nota" + +#: actions/deletenotice.php:157 +msgid "There was a problem with your session token. Try again, please." +msgstr "Occurreva un problema con le indicio de tu session. Per favor reproba." + +#: actions/deleteuser.php:67 +msgid "You cannot delete users." +msgstr "Tu non pote deler usatores." + +#: actions/deleteuser.php:74 +msgid "You can only delete local users." +msgstr "Tu pote solmente deler usatores local." + +#: actions/deleteuser.php:110 actions/deleteuser.php:133 +msgid "Delete user" +msgstr "Deler usator" + +#: actions/deleteuser.php:135 +msgid "" +"Are you sure you want to delete this user? This will clear all data about " +"the user from the database, without a backup." +msgstr "" +"Es tu secur de voler deler iste usator? Isto radera tote le datos super le " +"usator del base de datos, sin copia de reserva." + +#: actions/deleteuser.php:148 lib/deleteuserform.php:77 +msgid "Delete this user" +msgstr "Deler iste usator" + +#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124 +#: lib/adminpanelaction.php:302 lib/groupnav.php:119 +msgid "Design" +msgstr "Apparentia" + +#: actions/designadminpanel.php:73 +msgid "Design settings for this StatusNet site." +msgstr "Configuration del apparentia de iste sito StatusNet." + +#: actions/designadminpanel.php:275 +msgid "Invalid logo URL." +msgstr "URL de logotypo invalide." + +#: actions/designadminpanel.php:279 +#, php-format +msgid "Theme not available: %s" +msgstr "Thema non disponibile: %s" + +#: actions/designadminpanel.php:375 +msgid "Change logo" +msgstr "Cambiar logotypo" + +#: actions/designadminpanel.php:380 +msgid "Site logo" +msgstr "Logotypo del sito" + +#: actions/designadminpanel.php:387 +msgid "Change theme" +msgstr "Cambiar thema" + +#: actions/designadminpanel.php:404 +msgid "Site theme" +msgstr "Thema del sito" + +#: actions/designadminpanel.php:405 +msgid "Theme for the site." +msgstr "Le thema de apparentia pro le sito." + +#: actions/designadminpanel.php:417 lib/designsettings.php:101 +msgid "Change background image" +msgstr "Cambiar imagine de fundo" + +#: actions/designadminpanel.php:422 actions/designadminpanel.php:497 +#: lib/designsettings.php:178 +msgid "Background" +msgstr "Fundo" + +#: actions/designadminpanel.php:427 +#, php-format +msgid "" +"You can upload a background image for the site. The maximum file size is %1" +"$s." +msgstr "" +"Tu pote cargar un imagine de fundo pro le sito. Le dimension maxime del file " +"es %1$s." + +#: actions/designadminpanel.php:457 lib/designsettings.php:139 +msgid "On" +msgstr "Active" + +#: actions/designadminpanel.php:473 lib/designsettings.php:155 +msgid "Off" +msgstr "Non active" + +#: actions/designadminpanel.php:474 lib/designsettings.php:156 +msgid "Turn background image on or off." +msgstr "Activar o disactivar le imagine de fundo." + +#: actions/designadminpanel.php:479 lib/designsettings.php:161 +msgid "Tile background image" +msgstr "Tegular le imagine de fundo" + +#: actions/designadminpanel.php:488 lib/designsettings.php:170 +msgid "Change colours" +msgstr "Cambiar colores" + +#: actions/designadminpanel.php:510 lib/designsettings.php:191 +msgid "Content" +msgstr "Contento" + +#: actions/designadminpanel.php:523 lib/designsettings.php:204 +msgid "Sidebar" +msgstr "Barra lateral" + +#: actions/designadminpanel.php:536 lib/designsettings.php:217 +msgid "Text" +msgstr "Texto" + +#: actions/designadminpanel.php:549 lib/designsettings.php:230 +msgid "Links" +msgstr "Ligamines" + +#: actions/designadminpanel.php:577 lib/designsettings.php:247 +msgid "Use defaults" +msgstr "Usar predefinitiones" + +#: actions/designadminpanel.php:578 lib/designsettings.php:248 +msgid "Restore default designs" +msgstr "Restaurar apparentias predefinite" + +#: actions/designadminpanel.php:584 lib/designsettings.php:254 +msgid "Reset back to default" +msgstr "Revenir al predefinitiones" + +#: actions/designadminpanel.php:586 actions/emailsettings.php:195 +#: actions/imsettings.php:163 actions/othersettings.php:126 +#: actions/pathsadminpanel.php:296 actions/profilesettings.php:167 +#: actions/siteadminpanel.php:421 actions/smssettings.php:181 +#: actions/subscriptions.php:203 actions/tagother.php:154 +#: actions/useradminpanel.php:313 lib/designsettings.php:256 +#: lib/groupeditform.php:202 +msgid "Save" +msgstr "Salveguardar" + +#: actions/designadminpanel.php:587 lib/designsettings.php:257 +msgid "Save design" +msgstr "Salveguardar apparentia" + +#: actions/disfavor.php:81 +msgid "This notice is not a favorite!" +msgstr "Iste nota non es favorite!" + +#: actions/disfavor.php:94 +msgid "Add to favorites" +msgstr "Adder al favorites" + +#: actions/doc.php:69 +msgid "No such document." +msgstr "Documento non existe." + +#: actions/editgroup.php:56 +#, php-format +msgid "Edit %s group" +msgstr "Modificar gruppo %s" + +#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65 +msgid "You must be logged in to create a group." +msgstr "Tu debe aperir un session pro crear un gruppo." + +#: actions/editgroup.php:103 actions/editgroup.php:168 +#: actions/groupdesignsettings.php:104 actions/grouplogo.php:106 +msgid "You must be an admin to edit the group" +msgstr "Tu debe esser administrator pro modificar le gruppo." + +#: actions/editgroup.php:154 +msgid "Use this form to edit the group." +msgstr "Usa iste formulario pro modificar le gruppo." + +#: actions/editgroup.php:201 actions/newgroup.php:145 +#, php-format +msgid "description is too long (max %d chars)." +msgstr "description es troppo longe (max %d chars)." + +#: actions/editgroup.php:253 +msgid "Could not update group." +msgstr "Non poteva actualisar gruppo." + +#: actions/editgroup.php:259 classes/User_group.php:390 +msgid "Could not create aliases." +msgstr "Non poteva crear aliases." + +#: actions/editgroup.php:269 +msgid "Options saved." +msgstr "Optiones salveguardate." + +#: actions/emailsettings.php:60 +msgid "Email Settings" +msgstr "Configuration de e-mail" + +#: actions/emailsettings.php:71 +#, php-format +msgid "Manage how you get email from %%site.name%%." +msgstr "Configurar como reciper e-mail de %%site.name%%." + +#: actions/emailsettings.php:100 actions/imsettings.php:100 +#: actions/smssettings.php:104 +msgid "Address" +msgstr "Adresse" + +#: actions/emailsettings.php:105 +msgid "Current confirmed email address." +msgstr "Adresse de e-mail actualmente confirmate." + +#: actions/emailsettings.php:107 actions/emailsettings.php:140 +#: actions/imsettings.php:108 actions/smssettings.php:115 +#: actions/smssettings.php:158 +msgid "Remove" +msgstr "Remover" + +#: actions/emailsettings.php:113 +msgid "" +"Awaiting confirmation on this address. Check your inbox (and spam box!) for " +"a message with further instructions." +msgstr "" +"Attende confirmation de iste adresse. Verifica tu cassa de entrata (e de " +"spam!) pro un message con ulterior instructiones." + +#: actions/emailsettings.php:117 actions/imsettings.php:120 +#: actions/smssettings.php:126 +msgid "Cancel" +msgstr "Cancellar" + +#: actions/emailsettings.php:121 +msgid "Email Address" +msgstr "Adresse de e-mail" + +#: actions/emailsettings.php:123 +msgid "Email address, like \"UserName@example.org\"" +msgstr "Le adresse de e-mail, como \"nomine@example.org\"" + +#: actions/emailsettings.php:126 actions/imsettings.php:133 +#: actions/smssettings.php:145 +msgid "Add" +msgstr "Adder" + +#: actions/emailsettings.php:133 actions/smssettings.php:152 +msgid "Incoming email" +msgstr "E-mail entrante" + +#: actions/emailsettings.php:138 actions/smssettings.php:157 +msgid "Send email to this address to post new notices." +msgstr "Invia e-mail a iste adresse pro publicar nove notas." + +#: actions/emailsettings.php:145 actions/smssettings.php:162 +msgid "Make a new email address for posting to; cancels the old one." +msgstr "" +"Face un nove adresse de e-mail per le qual publicar; cancella le vetule." + +#: actions/emailsettings.php:148 actions/smssettings.php:164 +msgid "New" +msgstr "Nove" + +#: actions/emailsettings.php:153 actions/imsettings.php:139 +#: actions/smssettings.php:169 +msgid "Preferences" +msgstr "Preferentias" + +#: actions/emailsettings.php:158 +msgid "Send me notices of new subscriptions through email." +msgstr "Inviar me notificationes de nove subscriptiones per e-mail." + +#: actions/emailsettings.php:163 +msgid "Send me email when someone adds my notice as a favorite." +msgstr "Inviar me e-mail quando alcuno adde mi nota al favorites." + +#: actions/emailsettings.php:169 +msgid "Send me email when someone sends me a private message." +msgstr "Inviar me e-mail quando alcuno me invia un message private." + +#: actions/emailsettings.php:174 +msgid "Send me email when someone sends me an \"@-reply\"." +msgstr "Inviar me e-mail quando alcuno me invia un \"@-responsa\"." + +#: actions/emailsettings.php:179 +msgid "Allow friends to nudge me and send me an email." +msgstr "Permitte que amicos me pulsa e me invia e-mail." + +#: actions/emailsettings.php:185 +msgid "I want to post notices by email." +msgstr "Io vole publicar notas per e-mail." + +#: actions/emailsettings.php:191 +msgid "Publish a MicroID for my email address." +msgstr "Publicar un MicroID pro mi adresse de e-mail." + +#: actions/emailsettings.php:302 actions/imsettings.php:264 +#: actions/othersettings.php:180 actions/smssettings.php:284 +msgid "Preferences saved." +msgstr "Preferentias confirmate." + +#: actions/emailsettings.php:320 +msgid "No email address." +msgstr "Nulle adresse de e-mail." + +#: actions/emailsettings.php:327 +msgid "Cannot normalize that email address" +msgstr "Non pote normalisar iste adresse de e-mail" + +#: actions/emailsettings.php:331 actions/siteadminpanel.php:158 +msgid "Not a valid email address" +msgstr "Adresse de e-mail invalide" + +#: actions/emailsettings.php:334 +msgid "That is already your email address." +msgstr "Isto es ja tu adresse de e-mail." + +#: actions/emailsettings.php:337 +msgid "That email address already belongs to another user." +msgstr "Iste adresse de e-mail pertine ja a un altere usator." + +#: actions/emailsettings.php:353 actions/imsettings.php:317 +#: actions/smssettings.php:337 +msgid "Couldn't insert confirmation code." +msgstr "Non poteva inserer le codice de confirmation." + +#: actions/emailsettings.php:359 +msgid "" +"A confirmation code was sent to the email address you added. Check your " +"inbox (and spam box!) for the code and instructions on how to use it." +msgstr "" +"Un codice de confirmation ha essite inviate al adresse de e-mail que tu " +"addeva. Verifica tu cassa de entrata (e de spam!) pro le codice e le " +"instructiones pro usar lo." + +#: actions/emailsettings.php:379 actions/imsettings.php:351 +#: actions/smssettings.php:370 +msgid "No pending confirmation to cancel." +msgstr "Nulle confirmation pendente a cancellar." + +#: actions/emailsettings.php:383 actions/imsettings.php:355 +msgid "That is the wrong IM address." +msgstr "Iste adresse de messageria instantanee es erronee." + +#: actions/emailsettings.php:395 actions/imsettings.php:367 +#: actions/smssettings.php:386 +msgid "Confirmation cancelled." +msgstr "Confirmation cancellate." + +#: actions/emailsettings.php:413 +msgid "That is not your email address." +msgstr "Isto non es tu adresse de e-mail." + +#: actions/emailsettings.php:432 actions/imsettings.php:408 +#: actions/smssettings.php:425 +msgid "The address was removed." +msgstr "Le adresse ha essite removite." + +#: actions/emailsettings.php:446 actions/smssettings.php:518 +msgid "No incoming email address." +msgstr "Nulle adresse de e-mail entrante." + +#: actions/emailsettings.php:456 actions/emailsettings.php:478 +#: actions/smssettings.php:528 actions/smssettings.php:552 +msgid "Couldn't update user record." +msgstr "Non poteva actualisar le datos del usator." + +#: actions/emailsettings.php:459 actions/smssettings.php:531 +msgid "Incoming email address removed." +msgstr "Adresse de e-mail entrante removite." + +#: actions/emailsettings.php:481 actions/smssettings.php:555 +msgid "New incoming email address added." +msgstr "Nove adresse de e-mail entrante addite." + +#: actions/favor.php:79 +msgid "This notice is already a favorite!" +msgstr "Iste nota es ja favorite!" + +#: actions/favor.php:92 lib/disfavorform.php:140 +msgid "Disfavor favorite" +msgstr "Disfavorir favorite" + +#: actions/favorited.php:65 lib/popularnoticesection.php:88 +#: lib/publicgroupnav.php:93 +msgid "Popular notices" +msgstr "Notas popular" + +#: actions/favorited.php:67 +#, php-format +msgid "Popular notices, page %d" +msgstr "Notas popular, pagina %d" + +#: actions/favorited.php:79 +msgid "The most popular notices on the site right now." +msgstr "Le notas le plus popular del sito in iste momento." + +#: actions/favorited.php:150 +msgid "Favorite notices appear on this page but no one has favorited one yet." +msgstr "" +"Le notas favorite appare in iste pagina, ma necuno ha ancora favoritisate un." + +#: actions/favorited.php:153 +msgid "" +"Be the first to add a notice to your favorites by clicking the fave button " +"next to any notice you like." +msgstr "" +"Sia le prime a adder un nota a tu favorites per cliccar le button Favorite " +"juxta un nota que te place." + +#: actions/favorited.php:156 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and be the first to add a " +"notice to your favorites!" +msgstr "" +"Proque non [crear un conto](%%action.register%%) e esser le prime a adder un " +"nota a tu favorites!" + +#: actions/favoritesrss.php:111 actions/showfavorites.php:77 +#: lib/personalgroupnav.php:115 +#, php-format +msgid "%s's favorite notices" +msgstr "Notas favorite de %s" + +#: actions/favoritesrss.php:115 +#, php-format +msgid "Updates favored by %1$s on %2$s!" +msgstr "Actualisationes favorite per %1$s in %2$s!" + +#: actions/featured.php:69 lib/featureduserssection.php:87 +#: lib/publicgroupnav.php:89 +msgid "Featured users" +msgstr "Usatores in evidentia" + +#: actions/featured.php:71 +#, php-format +msgid "Featured users, page %d" +msgstr "Usatores in evidentia, pagina %d" + +#: actions/featured.php:99 +#, php-format +msgid "A selection of some of the great users on %s" +msgstr "Un selection de usatores eminente in %s" + +#: actions/file.php:34 +msgid "No notice id" +msgstr "Nulle ID de nota" + +#: actions/file.php:38 +msgid "No notice" +msgstr "Nulle nota" + +#: actions/file.php:42 +msgid "No attachments" +msgstr "Nulle attachamento" + +#: actions/file.php:51 +msgid "No uploaded attachments" +msgstr "Nulle attachamento cargate" + +#: actions/finishremotesubscribe.php:69 +msgid "Not expecting this response!" +msgstr "Non expectava iste responsa!" + +#: actions/finishremotesubscribe.php:80 +msgid "User being listened to does not exist." +msgstr "Le usator sequite non existe." + +#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59 +msgid "You can use the local subscription!" +msgstr "Tu pote usar le subscription local!" + +#: actions/finishremotesubscribe.php:99 +msgid "That user has blocked you from subscribing." +msgstr "Iste usator te ha blocate de subscriber." + +#: actions/finishremotesubscribe.php:110 +msgid "You are not authorized." +msgstr "Tu non es autorisate." + +#: actions/finishremotesubscribe.php:113 +msgid "Could not convert request token to access token." +msgstr "Non poteva converter le indicio de requesta in un indicio de accesso." + +#: actions/finishremotesubscribe.php:118 +msgid "Remote service uses unknown version of OMB protocol." +msgstr "Le servicio remote usa un version incognite del protocollo OMB." + +#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306 +msgid "Error updating remote profile" +msgstr "Error in actualisar le profilo remote" + +#: actions/foafgroup.php:44 actions/foafgroup.php:62 actions/groupblock.php:86 +#: actions/groupunblock.php:86 actions/leavegroup.php:83 +#: actions/makeadmin.php:86 lib/command.php:212 lib/command.php:263 +msgid "No such group." +msgstr "Gruppo non existe." + +#: actions/getfile.php:75 +msgid "No such file." +msgstr "File non existe." + +#: actions/getfile.php:79 +msgid "Cannot read file." +msgstr "Non pote leger file." + +#: actions/groupblock.php:71 actions/groupunblock.php:71 +#: actions/makeadmin.php:71 actions/subedit.php:46 +#: lib/profileformaction.php:70 +msgid "No profile specified." +msgstr "Nulle profilo specificate." + +#: actions/groupblock.php:76 actions/groupunblock.php:76 +#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46 +#: lib/profileformaction.php:77 +msgid "No profile with that ID." +msgstr "Non existe un profilo con iste ID." + +#: actions/groupblock.php:81 actions/groupunblock.php:81 +#: actions/makeadmin.php:81 +msgid "No group specified." +msgstr "Nulle gruppo specificate." + +#: actions/groupblock.php:91 +msgid "Only an admin can block group members." +msgstr "Solmente un administrator pote blocar membros de un gruppo." + +#: actions/groupblock.php:95 +msgid "User is already blocked from group." +msgstr "Le usator es ja blocate del gruppo." + +#: actions/groupblock.php:100 +msgid "User is not a member of group." +msgstr "Le usator non es membro del gruppo." + +#: actions/groupblock.php:136 actions/groupmembers.php:314 +msgid "Block user from group" +msgstr "Blocar usator del gruppo" + +#: actions/groupblock.php:162 +#, php-format +msgid "" +"Are you sure you want to block user \"%s\" from the group \"%s\"? They will " +"be removed from the group, unable to post, and unable to subscribe to the " +"group in the future." +msgstr "" +"Es tu secur de voler blocar le usator \"%s\" del gruppo \"%s\"? Ille essera " +"removite del gruppo, non potera publicar messages, e non potera subscriber " +"se al gruppo in le futuro." + +#: actions/groupblock.php:178 +msgid "Do not block this user from this group" +msgstr "Non blocar iste usator de iste gruppo" + +#: actions/groupblock.php:179 +msgid "Block this user from this group" +msgstr "Blocar iste usator de iste gruppo" + +#: actions/groupblock.php:196 +msgid "Database error blocking user from group." +msgstr "Error del base de datos al blocar le usator del gruppo." + +#: actions/groupbyid.php:74 +msgid "No ID" +msgstr "Nulle ID" + +#: actions/groupdesignsettings.php:68 +msgid "You must be logged in to edit a group." +msgstr "Tu debe aperir un session pro modificar un gruppo." + +#: actions/groupdesignsettings.php:141 +msgid "Group design" +msgstr "Apparentia del gruppo" + +#: actions/groupdesignsettings.php:152 +msgid "" +"Customize the way your group looks with a background image and a colour " +"palette of your choice." +msgstr "" +"Personalisa le apparentia de tu gruppo con un imagine de fundo e un paletta " +"de colores de tu preferentia." + +#: actions/groupdesignsettings.php:263 actions/userdesignsettings.php:186 +#: lib/designsettings.php:391 lib/designsettings.php:413 +msgid "Couldn't update your design." +msgstr "Non poteva actualisar tu apparentia." + +#: actions/groupdesignsettings.php:287 actions/groupdesignsettings.php:297 +#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220 +#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273 +msgid "Unable to save your design settings!" +msgstr "Impossibile salveguardar le configuration de tu apparentia!" + +#: actions/groupdesignsettings.php:308 actions/userdesignsettings.php:231 +msgid "Design preferences saved." +msgstr "Preferentias de apparentia salveguardate." + +#: actions/grouplogo.php:139 actions/grouplogo.php:192 +msgid "Group logo" +msgstr "Logotypo del gruppo" + +#: actions/grouplogo.php:150 +#, php-format +msgid "" +"You can upload a logo image for your group. The maximum file size is %s." +msgstr "" +"Tu pote cargar un imagine pro le logotypo de tu gruppo. Le dimension maxime " +"del file es %s." + +#: actions/grouplogo.php:362 +msgid "Pick a square area of the image to be the logo." +msgstr "Selige un area quadrate del imagine que devenira le logotypo." + +#: actions/grouplogo.php:396 +msgid "Logo updated." +msgstr "Logotypo actualisate." + +#: actions/grouplogo.php:398 +msgid "Failed updating logo." +msgstr "Falleva de actualisar le logotypo." + +#: actions/groupmembers.php:93 lib/groupnav.php:92 +#, php-format +msgid "%s group members" +msgstr "Membros del gruppo %s" + +#: actions/groupmembers.php:96 +#, php-format +msgid "%s group members, page %d" +msgstr "Membros del gruppo %s, pagina %d" + +#: actions/groupmembers.php:111 +msgid "A list of the users in this group." +msgstr "Un lista de usatores in iste gruppo." + +#: actions/groupmembers.php:175 lib/action.php:440 lib/groupnav.php:107 +msgid "Admin" +msgstr "Administrator" + +#: actions/groupmembers.php:346 lib/blockform.php:69 +msgid "Block" +msgstr "Blocar" + +#: actions/groupmembers.php:441 +msgid "Make user an admin of the group" +msgstr "Facer le usator administrator del gruppo" + +#: actions/groupmembers.php:473 +msgid "Make Admin" +msgstr "Facer administrator" + +#: actions/groupmembers.php:473 +msgid "Make this user an admin" +msgstr "Facer iste usator administrator" + +#: actions/grouprss.php:133 +#, php-format +msgid "Updates from members of %1$s on %2$s!" +msgstr "Actualisationes de membros de %1$s in %2$s!" + +#: actions/groups.php:62 lib/profileaction.php:210 lib/profileaction.php:230 +#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98 +msgid "Groups" +msgstr "Gruppos" + +#: actions/groups.php:64 +#, php-format +msgid "Groups, page %d" +msgstr "Gruppos, pagina %d" + +#: actions/groups.php:90 +#, php-format +msgid "" +"%%%%site.name%%%% groups let you find and talk with people of similar " +"interests. After you join a group you can send messages to all other members " +"using the syntax \"!groupname\". Don't see a group you like? Try [searching " +"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup" +"%%%%)" +msgstr "" +"Le gruppos de %%%%site.name%%%% permitte trovar e parlar con personas que ha " +"interesses similar al tues. Post haber unite se a un gruppo, tu pote inviar " +"messages a tote le altere membros usante le syntaxe \"!groupname\". Tu non " +"vide un gruppo que te place? Tenta [cercar un](%%%%action.groupsearch%%%%) o " +"[crear le tue!](%%%%action.newgroup%%%%)" + +#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122 +msgid "Create a new group" +msgstr "Crear un nove gruppo" + +#: actions/groupsearch.php:52 +#, php-format +msgid "" +"Search for groups on %%site.name%% by their name, location, or description. " +"Separate the terms by spaces; they must be 3 characters or more." +msgstr "" +"Cercar gruppos in %%site.name%% per nomine, loco o description. Separa le " +"terminos con spatios; illos debe haber al minus 3 characteres." + +#: actions/groupsearch.php:58 +msgid "Group search" +msgstr "Recerca de gruppos" + +#: actions/groupsearch.php:79 actions/noticesearch.php:117 +#: actions/peoplesearch.php:83 +msgid "No results." +msgstr "Nulle resultato." + +#: actions/groupsearch.php:82 +#, php-format +msgid "" +"If you can't find the group you're looking for, you can [create it](%%action." +"newgroup%%) yourself." +msgstr "" +"Si tu non trova le gruppo que tu cerca, tu pote [crear lo](%%action.newgroup%" +"%) tu mesme." + +#: actions/groupsearch.php:85 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and [create the group](%%" +"action.newgroup%%) yourself!" +msgstr "" +"Proque non [registrar un conto](%%action.register%%) e [crear le gruppo](%%" +"action.newgroup%%) tu mesme?" + +#: actions/groupunblock.php:91 +msgid "Only an admin can unblock group members." +msgstr "Solmente un administrator pote disblocar membros de un gruppo." + +#: actions/groupunblock.php:95 +msgid "User is not blocked from group." +msgstr "Le usator non es blocate del gruppo." + +#: actions/groupunblock.php:128 actions/unblock.php:77 +msgid "Error removing the block." +msgstr "Error de remover le blocada." + +#: actions/imsettings.php:59 +msgid "IM Settings" +msgstr "Configuration de messageria instantanee" + +#: actions/imsettings.php:70 +#, php-format +msgid "" +"You can send and receive notices through Jabber/GTalk [instant messages](%%" +"doc.im%%). Configure your address and settings below." +msgstr "" +"Tu pote inviar e reciper notas per [messages instantanee](%%doc.im%%) de " +"Jabber/GTalk. Configura tu adresse e parametros hic infra." + +#: actions/imsettings.php:89 +msgid "IM is not available." +msgstr "Messageria instantanee non disponibile." + +#: actions/imsettings.php:106 +msgid "Current confirmed Jabber/GTalk address." +msgstr "Adresse Jabber/GTalk actualmente confirmate." + +#: actions/imsettings.php:114 +#, php-format +msgid "" +"Awaiting confirmation on this address. Check your Jabber/GTalk account for a " +"message with further instructions. (Did you add %s to your buddy list?)" +msgstr "" +"Attende confirmation de iste adresse. Verifica tu conto Jabber/GTalk pro un " +"message con ulterior instructiones. (Ha tu addite %s a tu lista de amicos?)" + +#: actions/imsettings.php:124 +msgid "IM Address" +msgstr "Adresse de messageria instantanee" + +#: actions/imsettings.php:126 +#, php-format +msgid "" +"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to " +"add %s to your buddy list in your IM client or on GTalk." +msgstr "" +"Un adresse Jabber o GTalk, como \"nomine@example.org\". Primo, assecura te " +"de adder %s a tu lista de amicos in tu cliente de messageria instantanee o " +"in GTalk." + +#: actions/imsettings.php:143 +msgid "Send me notices through Jabber/GTalk." +msgstr "Inviar me notas per Jabber/GTalk." + +#: actions/imsettings.php:148 +msgid "Post a notice when my Jabber/GTalk status changes." +msgstr "Publicar un nota quando mi stato de Jabber/GTalk cambia." + +#: actions/imsettings.php:153 +msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to." +msgstr "" +"Inviar me responsas per Jabber/GTalk de personas al quales io non es " +"subscribite." + +#: actions/imsettings.php:159 +msgid "Publish a MicroID for my Jabber/GTalk address." +msgstr "Publicar un MicroID pro mi adresse Jabber/GTalk." + +#: actions/imsettings.php:285 +msgid "No Jabber ID." +msgstr "Nulle ID de Jabber." + +#: actions/imsettings.php:292 +msgid "Cannot normalize that Jabber ID" +msgstr "Non pote normalisar iste ID de Jabber" + +#: actions/imsettings.php:296 +msgid "Not a valid Jabber ID" +msgstr "ID de Jabber non valide" + +#: actions/imsettings.php:299 +msgid "That is already your Jabber ID." +msgstr "Isto es ja tu ID de Jabber." + +#: actions/imsettings.php:302 +msgid "Jabber ID already belongs to another user." +msgstr "Le ID de Jabber pertine ja a un altere usator." + +#: actions/imsettings.php:327 +#, php-format +msgid "" +"A confirmation code was sent to the IM address you added. You must approve %" +"s for sending messages to you." +msgstr "" +"Un codice de confirmation ha essite inviate al adresse de messageria " +"instantanee specificate. Tu debe approbar que %s invia messages a te." + +#: actions/imsettings.php:387 +msgid "That is not your Jabber ID." +msgstr "Isto non es tu ID de Jabber." + +#: actions/inbox.php:59 +#, php-format +msgid "Inbox for %s - page %d" +msgstr "Cassa de entrata de %s - pagina %d" + +#: actions/inbox.php:62 +#, php-format +msgid "Inbox for %s" +msgstr "Cassa de entrata de %s" + +#: actions/inbox.php:115 +msgid "This is your inbox, which lists your incoming private messages." +msgstr "" +"Isto es tu cassa de entrata, que lista le messages private que tu ha " +"recipite." + +#: actions/invite.php:39 +msgid "Invites have been disabled." +msgstr "Le invitationes ha essite disactivate." + +#: actions/invite.php:41 +#, php-format +msgid "You must be logged in to invite other users to use %s" +msgstr "Tu debe aperir un session pro invitar altere usatores a usar %s" + +#: actions/invite.php:72 +#, php-format +msgid "Invalid email address: %s" +msgstr "Adresse de e-mail invalide: %s" + +#: actions/invite.php:110 +msgid "Invitation(s) sent" +msgstr "Invitation(es) inviate" + +#: actions/invite.php:112 +msgid "Invite new users" +msgstr "Invitar nove usatores" + +#: actions/invite.php:128 +msgid "You are already subscribed to these users:" +msgstr "Tu es a subscribite a iste usatores:" + +#: actions/invite.php:131 actions/invite.php:139 +#, php-format +msgid "%s (%s)" +msgstr "%s (%s)" + +#: actions/invite.php:136 +msgid "" +"These people are already users and you were automatically subscribed to them:" +msgstr "" +"Iste personas es ja usatores e tu ha essite automaticamente subscribite a " +"illes:" + +#: actions/invite.php:144 +msgid "Invitation(s) sent to the following people:" +msgstr "Invitation(es) inviate al sequente personas:" + +#: actions/invite.php:150 +msgid "" +"You will be notified when your invitees accept the invitation and register " +"on the site. Thanks for growing the community!" +msgstr "" +"Tu recipera notification quando tu invitatos accepta le invitation e se " +"registra in le sito. Gratias pro facer crescer le communitate!" + +#: actions/invite.php:162 +msgid "" +"Use this form to invite your friends and colleagues to use this service." +msgstr "" +"Usa iste formulario pro invitar tu amicos e collegas a usar iste servicio." + +#: actions/invite.php:187 +msgid "Email addresses" +msgstr "Adresses de e-mail" + +#: actions/invite.php:189 +msgid "Addresses of friends to invite (one per line)" +msgstr "Adresses de amicos a invitar (un per linea)" + +#: actions/invite.php:192 +msgid "Personal message" +msgstr "Message personal" + +#: actions/invite.php:194 +msgid "Optionally add a personal message to the invitation." +msgstr "Si tu vole, adde un message personal al invitation." + +#: actions/invite.php:197 lib/messageform.php:178 lib/noticeform.php:222 +msgid "Send" +msgstr "Inviar" + +#: actions/invite.php:226 +#, php-format +msgid "%1$s has invited you to join them on %2$s" +msgstr "%1$s te ha invitate a accompaniar le/la in %2$s" + +#: actions/invite.php:228 +#, php-format +msgid "" +"%1$s has invited you to join them on %2$s (%3$s).\n" +"\n" +"%2$s is a micro-blogging service that lets you keep up-to-date with people " +"you know and people who interest you.\n" +"\n" +"You can also share news about yourself, your thoughts, or your life online " +"with people who know about you. It's also great for meeting new people who " +"share your interests.\n" +"\n" +"%1$s said:\n" +"\n" +"%4$s\n" +"\n" +"You can see %1$s's profile page on %2$s here:\n" +"\n" +"%5$s\n" +"\n" +"If you'd like to try the service, click on the link below to accept the " +"invitation.\n" +"\n" +"%6$s\n" +"\n" +"If not, you can ignore this message. Thanks for your patience and your " +"time.\n" +"\n" +"Sincerely, %2$s\n" +msgstr "" +"%1$s te ha invitate a accompaniar le/la in %2$s (%3$s).\n" +"\n" +"%2$s es un servicio de micro-blogging que te permitte tener te al currente " +"con personas que tu cognosce o que te interessa.\n" +"\n" +"Tu pote condivider novas super te, tu pensamentos o tu vita con personas que " +"sape de te. Es anque optime pro cognoscer nove personas con interesses " +"commun al tues.\n" +"\n" +"%1$s diceva:\n" +"\n" +"%4$s\n" +"\n" +"Tu pote vider le profilo de %1$s's in %2$s hic:\n" +"\n" +"%5$s\n" +"\n" +"Si tu vole probar le servicio, clicca super le ligamine sequente pro " +"acceptar le invitation.\n" +"\n" +"%6$s\n" +"\n" +"Si non, tu pote ignorar iste message. Gratias pro tu patientia e tu " +"tempore.\n" +"\n" +"Sincermente, %2$s\n" + +#: actions/joingroup.php:60 +msgid "You must be logged in to join a group." +msgstr "Tu debe aperir un session pro facer te membro de un gruppo." + +#: actions/joingroup.php:90 lib/command.php:217 +msgid "You are already a member of that group" +msgstr "Tu es ja membro de iste gruppo" + +#: actions/joingroup.php:128 lib/command.php:234 +#, php-format +msgid "Could not join user %s to group %s" +msgstr "Non poteva facer le usator %s membro del gruppo %s" + +#: actions/joingroup.php:135 lib/command.php:239 +#, php-format +msgid "%s joined group %s" +msgstr "%s se faceva membro del gruppo %s" + +#: actions/leavegroup.php:60 +msgid "You must be logged in to leave a group." +msgstr "Tu debe aperir un session pro quitar un gruppo." + +#: actions/leavegroup.php:90 lib/command.php:268 +msgid "You are not a member of that group." +msgstr "" + +#: actions/leavegroup.php:119 lib/command.php:278 +msgid "Could not find membership record." +msgstr "" + +#: actions/leavegroup.php:127 lib/command.php:284 +#, php-format +msgid "Could not remove user %s to group %s" +msgstr "" + +#: actions/leavegroup.php:134 lib/command.php:289 +#, php-format +msgid "%s left group %s" +msgstr "" + +#: actions/login.php:83 actions/register.php:137 +msgid "Already logged in." +msgstr "" + +#: actions/login.php:114 actions/login.php:124 +msgid "Invalid or expired token." +msgstr "" + +#: actions/login.php:147 +msgid "Incorrect username or password." +msgstr "" + +#: actions/login.php:153 +msgid "Error setting user. You are probably not authorized." +msgstr "" + +#: actions/login.php:208 actions/login.php:261 lib/action.php:458 +#: lib/logingroupnav.php:79 +msgid "Login" +msgstr "" + +#: actions/login.php:247 +msgid "Login to site" +msgstr "" + +#: actions/login.php:250 actions/profilesettings.php:106 +#: actions/register.php:423 actions/showgroup.php:236 actions/tagother.php:94 +#: lib/groupeditform.php:152 lib/userprofile.php:131 +msgid "Nickname" +msgstr "" + +#: actions/login.php:253 actions/register.php:428 +#: lib/accountsettingsaction.php:116 +msgid "Password" +msgstr "" + +#: actions/login.php:256 actions/register.php:477 +msgid "Remember me" +msgstr "" + +#: actions/login.php:257 actions/register.php:479 +msgid "Automatically login in the future; not for shared computers!" +msgstr "" + +#: actions/login.php:267 +msgid "Lost or forgotten password?" +msgstr "" + +#: actions/login.php:286 +msgid "" +"For security reasons, please re-enter your user name and password before " +"changing your settings." +msgstr "" + +#: actions/login.php:290 +#, php-format +msgid "" +"Login with your username and password. Don't have a username yet? [Register]" +"(%%action.register%%) a new account." +msgstr "" + +#: actions/makeadmin.php:91 +msgid "Only an admin can make another user an admin." +msgstr "" + +#: actions/makeadmin.php:95 +#, php-format +msgid "%s is already an admin for group \"%s\"." +msgstr "" + +#: actions/makeadmin.php:132 +#, php-format +msgid "Can't get membership record for %s in group %s" +msgstr "" + +#: actions/makeadmin.php:145 +#, php-format +msgid "Can't make %s an admin for group %s" +msgstr "" + +#: actions/microsummary.php:69 +msgid "No current status" +msgstr "" + +#: actions/newgroup.php:53 +msgid "New group" +msgstr "" + +#: actions/newgroup.php:110 +msgid "Use this form to create a new group." +msgstr "" + +#: actions/newmessage.php:71 actions/newmessage.php:231 +msgid "New message" +msgstr "" + +#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:367 +msgid "You can't send a message to this user." +msgstr "" + +#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:351 +#: lib/command.php:483 +msgid "No content!" +msgstr "" + +#: actions/newmessage.php:158 +msgid "No recipient specified." +msgstr "" + +#: actions/newmessage.php:164 lib/command.php:370 +msgid "" +"Don't send a message to yourself; just say it to yourself quietly instead." +msgstr "" + +#: actions/newmessage.php:181 +msgid "Message sent" +msgstr "" + +#: actions/newmessage.php:185 lib/command.php:375 +#, php-format +msgid "Direct message to %s sent" +msgstr "" + +#: actions/newmessage.php:210 actions/newnotice.php:242 lib/channel.php:170 +msgid "Ajax Error" +msgstr "" + +#: actions/newnotice.php:69 +msgid "New notice" +msgstr "" + +#: actions/newnotice.php:208 +msgid "Notice posted" +msgstr "" + +#: actions/noticesearch.php:68 +#, php-format +msgid "" +"Search for notices on %%site.name%% by their contents. Separate search terms " +"by spaces; they must be 3 characters or more." +msgstr "" + +#: actions/noticesearch.php:78 +msgid "Text search" +msgstr "" + +#: actions/noticesearch.php:91 +#, php-format +msgid "Search results for \"%s\" on %s" +msgstr "" + +#: actions/noticesearch.php:121 +#, php-format +msgid "" +"Be the first to [post on this topic](%%%%action.newnotice%%%%?" +"status_textarea=%s)!" +msgstr "" + +#: actions/noticesearch.php:124 +#, php-format +msgid "" +"Why not [register an account](%%%%action.register%%%%) and be the first to " +"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!" +msgstr "" + +#: actions/noticesearchrss.php:96 +#, php-format +msgid "Updates with \"%s\"" +msgstr "" + +#: actions/noticesearchrss.php:98 +#, php-format +msgid "Updates matching search term \"%1$s\" on %2$s!" +msgstr "" + +#: actions/nudge.php:85 +msgid "" +"This user doesn't allow nudges or hasn't confirmed or set his email yet." +msgstr "" + +#: actions/nudge.php:94 +msgid "Nudge sent" +msgstr "" + +#: actions/nudge.php:97 +msgid "Nudge sent!" +msgstr "" + +#: actions/oembed.php:79 actions/shownotice.php:100 +msgid "Notice has no profile" +msgstr "" + +#: actions/oembed.php:86 actions/shownotice.php:180 +#, php-format +msgid "%1$s's status on %2$s" +msgstr "" + +#: actions/oembed.php:157 +msgid "content type " +msgstr "" + +#: actions/oembed.php:160 +msgid "Only " +msgstr "" + +#: actions/oembed.php:181 actions/oembed.php:200 lib/api.php:1028 +#: lib/api.php:1056 lib/api.php:1166 +msgid "Not a supported data format." +msgstr "" + +#: actions/opensearch.php:64 +msgid "People Search" +msgstr "" + +#: actions/opensearch.php:67 +msgid "Notice Search" +msgstr "" + +#: actions/othersettings.php:60 +msgid "Other Settings" +msgstr "" + +#: actions/othersettings.php:71 +msgid "Manage various other options." +msgstr "" + +#: actions/othersettings.php:108 +msgid " (free service)" +msgstr "" + +#: actions/othersettings.php:116 +msgid "Shorten URLs with" +msgstr "" + +#: actions/othersettings.php:117 +msgid "Automatic shortening service to use." +msgstr "" + +#: actions/othersettings.php:122 +msgid "View profile designs" +msgstr "" + +#: actions/othersettings.php:123 +msgid "Show or hide profile designs." +msgstr "" + +#: actions/othersettings.php:153 +msgid "URL shortening service is too long (max 50 chars)." +msgstr "" + +#: actions/outbox.php:58 +#, php-format +msgid "Outbox for %s - page %d" +msgstr "" + +#: actions/outbox.php:61 +#, php-format +msgid "Outbox for %s" +msgstr "" + +#: actions/outbox.php:116 +msgid "This is your outbox, which lists private messages you have sent." +msgstr "" + +#: actions/passwordsettings.php:58 +msgid "Change password" +msgstr "" + +#: actions/passwordsettings.php:69 +msgid "Change your password." +msgstr "" + +#: actions/passwordsettings.php:96 actions/recoverpassword.php:231 +msgid "Password change" +msgstr "" + +#: actions/passwordsettings.php:104 +msgid "Old password" +msgstr "" + +#: actions/passwordsettings.php:108 actions/recoverpassword.php:235 +msgid "New password" +msgstr "" + +#: actions/passwordsettings.php:109 +msgid "6 or more characters" +msgstr "" + +#: actions/passwordsettings.php:112 actions/recoverpassword.php:239 +#: actions/register.php:432 actions/smssettings.php:134 +msgid "Confirm" +msgstr "" + +#: actions/passwordsettings.php:113 actions/recoverpassword.php:240 +msgid "Same as password above" +msgstr "" + +#: actions/passwordsettings.php:117 +msgid "Change" +msgstr "" + +#: actions/passwordsettings.php:154 actions/register.php:230 +msgid "Password must be 6 or more characters." +msgstr "" + +#: actions/passwordsettings.php:157 actions/register.php:233 +msgid "Passwords don't match." +msgstr "" + +#: actions/passwordsettings.php:165 +msgid "Incorrect old password" +msgstr "" + +#: actions/passwordsettings.php:181 +msgid "Error saving user; invalid." +msgstr "" + +#: actions/passwordsettings.php:186 actions/recoverpassword.php:368 +msgid "Can't save new password." +msgstr "" + +#: actions/passwordsettings.php:192 actions/recoverpassword.php:211 +msgid "Password saved." +msgstr "" + +#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:308 +msgid "Paths" +msgstr "" + +#: actions/pathsadminpanel.php:70 +msgid "Path and server settings for this StatusNet site." +msgstr "" + +#: actions/pathsadminpanel.php:140 +#, php-format +msgid "Theme directory not readable: %s" +msgstr "" + +#: actions/pathsadminpanel.php:146 +#, php-format +msgid "Avatar directory not writable: %s" +msgstr "" + +#: actions/pathsadminpanel.php:152 +#, php-format +msgid "Background directory not writable: %s" +msgstr "" + +#: actions/pathsadminpanel.php:160 +#, php-format +msgid "Locales directory not readable: %s" +msgstr "" + +#: actions/pathsadminpanel.php:212 actions/siteadminpanel.php:58 +#: lib/adminpanelaction.php:299 +msgid "Site" +msgstr "" + +#: actions/pathsadminpanel.php:216 +msgid "Path" +msgstr "" + +#: actions/pathsadminpanel.php:216 +msgid "Site path" +msgstr "" + +#: actions/pathsadminpanel.php:220 +msgid "Path to locales" +msgstr "" + +#: actions/pathsadminpanel.php:220 +msgid "Directory path to locales" +msgstr "" + +#: actions/pathsadminpanel.php:227 +msgid "Theme" +msgstr "" + +#: actions/pathsadminpanel.php:232 +msgid "Theme server" +msgstr "" + +#: actions/pathsadminpanel.php:236 +msgid "Theme path" +msgstr "" + +#: actions/pathsadminpanel.php:240 +msgid "Theme directory" +msgstr "" + +#: actions/pathsadminpanel.php:247 +msgid "Avatars" +msgstr "" + +#: actions/pathsadminpanel.php:252 +msgid "Avatar server" +msgstr "" + +#: actions/pathsadminpanel.php:256 +msgid "Avatar path" +msgstr "" + +#: actions/pathsadminpanel.php:260 +msgid "Avatar directory" +msgstr "" + +#: actions/pathsadminpanel.php:269 +msgid "Backgrounds" +msgstr "" + +#: actions/pathsadminpanel.php:273 +msgid "Background server" +msgstr "" + +#: actions/pathsadminpanel.php:277 +msgid "Background path" +msgstr "" + +#: actions/pathsadminpanel.php:281 +msgid "Background directory" +msgstr "" + +#: actions/pathsadminpanel.php:297 +msgid "Save paths" +msgstr "" + +#: actions/peoplesearch.php:52 +#, php-format +msgid "" +"Search for people on %%site.name%% by their name, location, or interests. " +"Separate the terms by spaces; they must be 3 characters or more." +msgstr "" + +#: actions/peoplesearch.php:58 +msgid "People search" +msgstr "" + +#: actions/peopletag.php:70 +#, php-format +msgid "Not a valid people tag: %s" +msgstr "" + +#: actions/peopletag.php:144 +#, php-format +msgid "Users self-tagged with %s - page %d" +msgstr "" + +#: actions/postnotice.php:84 +msgid "Invalid notice content" +msgstr "" + +#: actions/postnotice.php:90 +#, php-format +msgid "Notice license ‘%s’ is not compatible with site license ‘%s’." +msgstr "" + +#: actions/profilesettings.php:60 +msgid "Profile settings" +msgstr "" + +#: actions/profilesettings.php:71 +msgid "" +"You can update your personal profile info here so people know more about you." +msgstr "" + +#: actions/profilesettings.php:99 +msgid "Profile information" +msgstr "" + +#: actions/profilesettings.php:108 lib/groupeditform.php:154 +msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +msgstr "" + +#: actions/profilesettings.php:111 actions/register.php:447 +#: actions/showgroup.php:247 actions/tagother.php:104 +#: lib/groupeditform.php:157 lib/userprofile.php:149 +msgid "Full name" +msgstr "" + +#: actions/profilesettings.php:115 actions/register.php:452 +#: lib/groupeditform.php:161 +msgid "Homepage" +msgstr "" + +#: actions/profilesettings.php:117 actions/register.php:454 +msgid "URL of your homepage, blog, or profile on another site" +msgstr "" + +#: actions/profilesettings.php:122 actions/register.php:460 +#, php-format +msgid "Describe yourself and your interests in %d chars" +msgstr "" + +#: actions/profilesettings.php:125 actions/register.php:463 +msgid "Describe yourself and your interests" +msgstr "" + +#: actions/profilesettings.php:127 actions/register.php:465 +msgid "Bio" +msgstr "" + +#: actions/profilesettings.php:132 actions/register.php:470 +#: actions/showgroup.php:256 actions/tagother.php:112 +#: actions/userauthorization.php:158 lib/groupeditform.php:177 +#: lib/userprofile.php:164 +msgid "Location" +msgstr "" + +#: actions/profilesettings.php:134 actions/register.php:472 +msgid "Where you are, like \"City, State (or Region), Country\"" +msgstr "" + +#: actions/profilesettings.php:138 actions/tagother.php:149 +#: actions/tagother.php:209 lib/subscriptionlist.php:106 +#: lib/subscriptionlist.php:108 lib/userprofile.php:209 +msgid "Tags" +msgstr "" + +#: actions/profilesettings.php:140 +msgid "" +"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated" +msgstr "" + +#: actions/profilesettings.php:144 actions/siteadminpanel.php:307 +msgid "Language" +msgstr "" + +#: actions/profilesettings.php:145 +msgid "Preferred language" +msgstr "" + +#: actions/profilesettings.php:154 +msgid "Timezone" +msgstr "" + +#: actions/profilesettings.php:155 +msgid "What timezone are you normally in?" +msgstr "" + +#: actions/profilesettings.php:160 +msgid "" +"Automatically subscribe to whoever subscribes to me (best for non-humans)" +msgstr "" + +#: actions/profilesettings.php:221 actions/register.php:223 +#, php-format +msgid "Bio is too long (max %d chars)." +msgstr "" + +#: actions/profilesettings.php:228 actions/siteadminpanel.php:165 +msgid "Timezone not selected." +msgstr "" + +#: actions/profilesettings.php:234 +msgid "Language is too long (max 50 chars)." +msgstr "" + +#: actions/profilesettings.php:246 actions/tagother.php:178 +#, php-format +msgid "Invalid tag: \"%s\"" +msgstr "" + +#: actions/profilesettings.php:295 +msgid "Couldn't update user for autosubscribe." +msgstr "" + +#: actions/profilesettings.php:328 +msgid "Couldn't save profile." +msgstr "" + +#: actions/profilesettings.php:336 +msgid "Couldn't save tags." +msgstr "" + +#: actions/profilesettings.php:344 lib/adminpanelaction.php:126 +msgid "Settings saved." +msgstr "" + +#: actions/public.php:83 +#, php-format +msgid "Beyond the page limit (%s)" +msgstr "" + +#: actions/public.php:92 +msgid "Could not retrieve public stream." +msgstr "" + +#: actions/public.php:129 +#, php-format +msgid "Public timeline, page %d" +msgstr "" + +#: actions/public.php:131 lib/publicgroupnav.php:79 +msgid "Public timeline" +msgstr "" + +#: actions/public.php:151 +msgid "Public Stream Feed (RSS 1.0)" +msgstr "" + +#: actions/public.php:155 +msgid "Public Stream Feed (RSS 2.0)" +msgstr "" + +#: actions/public.php:159 +msgid "Public Stream Feed (Atom)" +msgstr "" + +#: actions/public.php:179 +#, php-format +msgid "" +"This is the public timeline for %%site.name%% but no one has posted anything " +"yet." +msgstr "" + +#: actions/public.php:182 +msgid "Be the first to post!" +msgstr "" + +#: actions/public.php:186 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and be the first to post!" +msgstr "" + +#: actions/public.php:233 +#, php-format +msgid "" +"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-" +"blogging) service based on the Free Software [StatusNet](http://status.net/) " +"tool. [Join now](%%action.register%%) to share notices about yourself with " +"friends, family, and colleagues! ([Read more](%%doc.help%%))" +msgstr "" + +#: actions/public.php:238 +#, php-format +msgid "" +"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-" +"blogging) service based on the Free Software [StatusNet](http://status.net/) " +"tool." +msgstr "" + +#: actions/publictagcloud.php:57 +msgid "Public tag cloud" +msgstr "" + +#: actions/publictagcloud.php:63 +#, php-format +msgid "These are most popular recent tags on %s " +msgstr "" + +#: actions/publictagcloud.php:69 +#, php-format +msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet." +msgstr "" + +#: actions/publictagcloud.php:72 +msgid "Be the first to post one!" +msgstr "" + +#: actions/publictagcloud.php:75 +#, php-format +msgid "" +"Why not [register an account](%%action.register%%) and be the first to post " +"one!" +msgstr "" + +#: actions/publictagcloud.php:135 +msgid "Tag cloud" +msgstr "" + +#: actions/recoverpassword.php:36 +msgid "You are already logged in!" +msgstr "" + +#: actions/recoverpassword.php:62 +msgid "No such recovery code." +msgstr "" + +#: actions/recoverpassword.php:66 +msgid "Not a recovery code." +msgstr "" + +#: actions/recoverpassword.php:73 +msgid "Recovery code for unknown user." +msgstr "" + +#: actions/recoverpassword.php:86 +msgid "Error with confirmation code." +msgstr "" + +#: actions/recoverpassword.php:97 +msgid "This confirmation code is too old. Please start again." +msgstr "" + +#: actions/recoverpassword.php:111 +msgid "Could not update user with confirmed email address." +msgstr "" + +#: actions/recoverpassword.php:152 +msgid "" +"If you have forgotten or lost your password, you can get a new one sent to " +"the email address you have stored in your account." +msgstr "" + +#: actions/recoverpassword.php:158 +msgid "You have been identified. Enter a new password below. " +msgstr "" + +#: actions/recoverpassword.php:188 +msgid "Password recovery" +msgstr "" + +#: actions/recoverpassword.php:191 +msgid "Nickname or email address" +msgstr "" + +#: actions/recoverpassword.php:193 +msgid "Your nickname on this server, or your registered email address." +msgstr "" + +#: actions/recoverpassword.php:199 actions/recoverpassword.php:200 +msgid "Recover" +msgstr "" + +#: actions/recoverpassword.php:208 +msgid "Reset password" +msgstr "" + +#: actions/recoverpassword.php:209 +msgid "Recover password" +msgstr "" + +#: actions/recoverpassword.php:210 actions/recoverpassword.php:322 +msgid "Password recovery requested" +msgstr "" + +#: actions/recoverpassword.php:213 +msgid "Unknown action" +msgstr "" + +#: actions/recoverpassword.php:236 +msgid "6 or more characters, and don't forget it!" +msgstr "" + +#: actions/recoverpassword.php:243 +msgid "Reset" +msgstr "" + +#: actions/recoverpassword.php:252 +msgid "Enter a nickname or email address." +msgstr "" + +#: actions/recoverpassword.php:272 +msgid "No user with that email address or username." +msgstr "" + +#: actions/recoverpassword.php:287 +msgid "No registered email address for that user." +msgstr "" + +#: actions/recoverpassword.php:301 +msgid "Error saving address confirmation." +msgstr "" + +#: actions/recoverpassword.php:325 +msgid "" +"Instructions for recovering your password have been sent to the email " +"address registered to your account." +msgstr "" + +#: actions/recoverpassword.php:344 +msgid "Unexpected password reset." +msgstr "" + +#: actions/recoverpassword.php:352 +msgid "Password must be 6 chars or more." +msgstr "" + +#: actions/recoverpassword.php:356 +msgid "Password and confirmation do not match." +msgstr "" + +#: actions/recoverpassword.php:375 actions/register.php:248 +msgid "Error setting user." +msgstr "" + +#: actions/recoverpassword.php:382 +msgid "New password successfully saved. You are now logged in." +msgstr "" + +#: actions/register.php:85 actions/register.php:189 actions/register.php:404 +msgid "Sorry, only invited people can register." +msgstr "" + +#: actions/register.php:92 +msgid "Sorry, invalid invitation code." +msgstr "" + +#: actions/register.php:112 +msgid "Registration successful" +msgstr "" + +#: actions/register.php:114 actions/register.php:502 lib/action.php:455 +#: lib/logingroupnav.php:85 +msgid "Register" +msgstr "" + +#: actions/register.php:135 +msgid "Registration not allowed." +msgstr "" + +#: actions/register.php:198 +msgid "You can't register if you don't agree to the license." +msgstr "" + +#: actions/register.php:201 +msgid "Not a valid email address." +msgstr "" + +#: actions/register.php:212 +msgid "Email address already exists." +msgstr "" + +#: actions/register.php:243 actions/register.php:264 +msgid "Invalid username or password." +msgstr "" + +#: actions/register.php:342 +msgid "" +"With this form you can create a new account. You can then post notices and " +"link up to friends and colleagues. " +msgstr "" + +#: actions/register.php:424 +msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required." +msgstr "" + +#: actions/register.php:429 +msgid "6 or more characters. Required." +msgstr "" + +#: actions/register.php:433 +msgid "Same as password above. Required." +msgstr "" + +#: actions/register.php:437 actions/register.php:441 +#: actions/siteadminpanel.php:283 lib/accountsettingsaction.php:120 +msgid "Email" +msgstr "" + +#: actions/register.php:438 actions/register.php:442 +msgid "Used only for updates, announcements, and password recovery" +msgstr "" + +#: actions/register.php:449 +msgid "Longer name, preferably your \"real\" name" +msgstr "" + +#: actions/register.php:493 +msgid "My text and files are available under " +msgstr "" + +#: actions/register.php:495 +msgid "Creative Commons Attribution 3.0" +msgstr "" + +#: actions/register.php:496 +msgid "" +" except this private data: password, email address, IM address, and phone " +"number." +msgstr "" + +#: actions/register.php:537 +#, php-format +msgid "" +"Congratulations, %s! And welcome to %%%%site.name%%%%. From here, you may " +"want to...\n" +"\n" +"* Go to [your profile](%s) and post your first message.\n" +"* Add a [Jabber/GTalk address](%%%%action.imsettings%%%%) so you can send " +"notices through instant messages.\n" +"* [Search for people](%%%%action.peoplesearch%%%%) that you may know or that " +"share your interests. \n" +"* Update your [profile settings](%%%%action.profilesettings%%%%) to tell " +"others more about you. \n" +"* Read over the [online docs](%%%%doc.help%%%%) for features you may have " +"missed. \n" +"\n" +"Thanks for signing up and we hope you enjoy using this service." +msgstr "" + +#: actions/register.php:561 +msgid "" +"(You should receive a message by email momentarily, with instructions on how " +"to confirm your email address.)" +msgstr "" + +#: actions/remotesubscribe.php:98 +#, php-format +msgid "" +"To subscribe, you can [login](%%action.login%%), or [register](%%action." +"register%%) a new account. If you already have an account on a [compatible " +"microblogging site](%%doc.openmublog%%), enter your profile URL below." +msgstr "" + +#: actions/remotesubscribe.php:112 +msgid "Remote subscribe" +msgstr "" + +#: actions/remotesubscribe.php:124 +msgid "Subscribe to a remote user" +msgstr "" + +#: actions/remotesubscribe.php:129 +msgid "User nickname" +msgstr "" + +#: actions/remotesubscribe.php:130 +msgid "Nickname of the user you want to follow" +msgstr "" + +#: actions/remotesubscribe.php:133 +msgid "Profile URL" +msgstr "" + +#: actions/remotesubscribe.php:134 +msgid "URL of your profile on another compatible microblogging service" +msgstr "" + +#: actions/remotesubscribe.php:137 lib/subscribeform.php:139 +#: lib/userprofile.php:365 +msgid "Subscribe" +msgstr "" + +#: actions/remotesubscribe.php:159 +msgid "Invalid profile URL (bad format)" +msgstr "" + +#: actions/remotesubscribe.php:168 +msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)." +msgstr "" + +#: actions/remotesubscribe.php:176 +msgid "That’s a local profile! Login to subscribe." +msgstr "" + +#: actions/remotesubscribe.php:183 +msgid "Couldn’t get a request token." +msgstr "" + +#: actions/repeat.php:57 +msgid "Only logged-in users can repeat notices." +msgstr "" + +#: actions/repeat.php:64 actions/repeat.php:71 +#, fuzzy +msgid "No notice specified." +msgstr "Nulle profilo specificate." + +#: actions/repeat.php:76 +msgid "You can't repeat your own notice." +msgstr "" + +#: actions/repeat.php:90 +#, fuzzy +msgid "You already repeated that notice." +msgstr "Tu ha ja blocate iste usator." + +#: actions/repeat.php:112 lib/noticelist.php:628 +msgid "Repeated" +msgstr "" + +#: actions/repeat.php:115 +msgid "Repeated!" +msgstr "" + +#: actions/replies.php:125 actions/repliesrss.php:68 +#: lib/personalgroupnav.php:105 +#, php-format +msgid "Replies to %s" +msgstr "" + +#: actions/replies.php:127 +#, php-format +msgid "Replies to %s, page %d" +msgstr "" + +#: actions/replies.php:144 +#, php-format +msgid "Replies feed for %s (RSS 1.0)" +msgstr "" + +#: actions/replies.php:151 +#, php-format +msgid "Replies feed for %s (RSS 2.0)" +msgstr "" + +#: actions/replies.php:158 +#, php-format +msgid "Replies feed for %s (Atom)" +msgstr "" + +#: actions/replies.php:198 +#, php-format +msgid "" +"This is the timeline showing replies to %s but %s hasn't received a notice " +"to his attention yet." +msgstr "" + +#: actions/replies.php:203 +#, php-format +msgid "" +"You can engage other users in a conversation, subscribe to more people or " +"[join groups](%%action.groups%%)." +msgstr "" + +#: actions/replies.php:205 +#, php-format +msgid "" +"You can try to [nudge %s](../%s) or [post something to his or her attention]" +"(%%%%action.newnotice%%%%?status_textarea=%s)." +msgstr "" + +#: actions/repliesrss.php:72 +#, php-format +msgid "Replies to %1$s on %2$s!" +msgstr "" + +#: actions/sandbox.php:65 actions/unsandbox.php:65 +msgid "You cannot sandbox users on this site." +msgstr "" + +#: actions/sandbox.php:72 +msgid "User is already sandboxed." +msgstr "" + +#: actions/showfavorites.php:79 +#, php-format +msgid "%s's favorite notices, page %d" +msgstr "" + +#: actions/showfavorites.php:132 +msgid "Could not retrieve favorite notices." +msgstr "" + +#: actions/showfavorites.php:170 +#, php-format +msgid "Feed for favorites of %s (RSS 1.0)" +msgstr "" + +#: actions/showfavorites.php:177 +#, php-format +msgid "Feed for favorites of %s (RSS 2.0)" +msgstr "" + +#: actions/showfavorites.php:184 +#, php-format +msgid "Feed for favorites of %s (Atom)" +msgstr "" + +#: actions/showfavorites.php:205 +msgid "" +"You haven't chosen any favorite notices yet. Click the fave button on " +"notices you like to bookmark them for later or shed a spotlight on them." +msgstr "" + +#: actions/showfavorites.php:207 +#, php-format +msgid "" +"%s hasn't added any notices to his favorites yet. Post something interesting " +"they would add to their favorites :)" +msgstr "" + +#: actions/showfavorites.php:211 +#, php-format +msgid "" +"%s hasn't added any notices to his favorites yet. Why not [register an " +"account](%%%%action.register%%%%) and then post something interesting they " +"would add to their favorites :)" +msgstr "" + +#: actions/showfavorites.php:242 +msgid "This is a way to share what you like." +msgstr "" + +#: actions/showgroup.php:82 lib/groupnav.php:86 +#, php-format +msgid "%s group" +msgstr "" + +#: actions/showgroup.php:84 +#, php-format +msgid "%s group, page %d" +msgstr "" + +#: actions/showgroup.php:218 +msgid "Group profile" +msgstr "" + +#: actions/showgroup.php:263 actions/tagother.php:118 +#: actions/userauthorization.php:167 lib/userprofile.php:177 +msgid "URL" +msgstr "" + +#: actions/showgroup.php:274 actions/tagother.php:128 +#: actions/userauthorization.php:179 lib/userprofile.php:194 +msgid "Note" +msgstr "" + +#: actions/showgroup.php:284 lib/groupeditform.php:184 +msgid "Aliases" +msgstr "" + +#: actions/showgroup.php:293 +msgid "Group actions" +msgstr "" + +#: actions/showgroup.php:328 +#, php-format +msgid "Notice feed for %s group (RSS 1.0)" +msgstr "" + +#: actions/showgroup.php:334 +#, php-format +msgid "Notice feed for %s group (RSS 2.0)" +msgstr "" + +#: actions/showgroup.php:340 +#, php-format +msgid "Notice feed for %s group (Atom)" +msgstr "" + +#: actions/showgroup.php:345 +#, php-format +msgid "FOAF for %s group" +msgstr "" + +#: actions/showgroup.php:381 actions/showgroup.php:438 lib/groupnav.php:91 +msgid "Members" +msgstr "" + +#: actions/showgroup.php:386 lib/profileaction.php:117 +#: lib/profileaction.php:148 lib/profileaction.php:236 lib/section.php:95 +#: lib/tagcloudsection.php:71 +msgid "(None)" +msgstr "" + +#: actions/showgroup.php:392 +msgid "All members" +msgstr "" + +#: actions/showgroup.php:429 lib/profileaction.php:174 +msgid "Statistics" +msgstr "" + +#: actions/showgroup.php:432 +msgid "Created" +msgstr "" + +#: actions/showgroup.php:448 +#, php-format +msgid "" +"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. Its members share short messages about " +"their life and interests. [Join now](%%%%action.register%%%%) to become part " +"of this group and many more! ([Read more](%%%%doc.help%%%%))" +msgstr "" + +#: actions/showgroup.php:454 +#, php-format +msgid "" +"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. Its members share short messages about " +"their life and interests. " +msgstr "" + +#: actions/showgroup.php:482 +msgid "Admins" +msgstr "" + +#: actions/showmessage.php:81 +msgid "No such message." +msgstr "" + +#: actions/showmessage.php:98 +msgid "Only the sender and recipient may read this message." +msgstr "" + +#: actions/showmessage.php:108 +#, php-format +msgid "Message to %1$s on %2$s" +msgstr "" + +#: actions/showmessage.php:113 +#, php-format +msgid "Message from %1$s on %2$s" +msgstr "" + +#: actions/shownotice.php:90 +msgid "Notice deleted." +msgstr "" + +#: actions/showstream.php:73 +#, php-format +msgid " tagged %s" +msgstr "" + +#: actions/showstream.php:79 +#, php-format +msgid "%s, page %d" +msgstr "" + +#: actions/showstream.php:122 +#, php-format +msgid "Notice feed for %s tagged %s (RSS 1.0)" +msgstr "" + +#: actions/showstream.php:129 +#, php-format +msgid "Notice feed for %s (RSS 1.0)" +msgstr "" + +#: actions/showstream.php:136 +#, php-format +msgid "Notice feed for %s (RSS 2.0)" +msgstr "" + +#: actions/showstream.php:143 +#, php-format +msgid "Notice feed for %s (Atom)" +msgstr "" + +#: actions/showstream.php:148 +#, php-format +msgid "FOAF for %s" +msgstr "" + +#: actions/showstream.php:191 +#, php-format +msgid "This is the timeline for %s but %s hasn't posted anything yet." +msgstr "" + +#: actions/showstream.php:196 +msgid "" +"Seen anything interesting recently? You haven't posted any notices yet, now " +"would be a good time to start :)" +msgstr "" + +#: actions/showstream.php:198 +#, php-format +msgid "" +"You can try to nudge %s or [post something to his or her attention](%%%%" +"action.newnotice%%%%?status_textarea=%s)." +msgstr "" + +#: actions/showstream.php:234 +#, php-format +msgid "" +"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to " +"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))" +msgstr "" + +#: actions/showstream.php:239 +#, php-format +msgid "" +"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en." +"wikipedia.org/wiki/Micro-blogging) service based on the Free Software " +"[StatusNet](http://status.net/) tool. " +msgstr "" + +#: actions/showstream.php:313 +#, php-format +msgid "Repeat of %s" +msgstr "" + +#: actions/silence.php:65 actions/unsilence.php:65 +msgid "You cannot silence users on this site." +msgstr "" + +#: actions/silence.php:72 +msgid "User is already silenced." +msgstr "" + +#: actions/siteadminpanel.php:69 +msgid "Basic settings for this StatusNet site." +msgstr "" + +#: actions/siteadminpanel.php:147 +msgid "Site name must have non-zero length." +msgstr "" + +#: actions/siteadminpanel.php:155 +msgid "You must have a valid contact email address" +msgstr "" + +#: actions/siteadminpanel.php:173 +#, php-format +msgid "Unknown language \"%s\"" +msgstr "" + +#: actions/siteadminpanel.php:180 +msgid "Invalid snapshot report URL." +msgstr "" + +#: actions/siteadminpanel.php:186 +msgid "Invalid snapshot run value." +msgstr "" + +#: actions/siteadminpanel.php:192 +msgid "Snapshot frequency must be a number." +msgstr "" + +#: actions/siteadminpanel.php:199 +msgid "You must set an SSL server when enabling SSL." +msgstr "" + +#: actions/siteadminpanel.php:204 +msgid "Invalid SSL server. The maximum length is 255 characters." +msgstr "" + +#: actions/siteadminpanel.php:210 +msgid "Minimum text limit is 140 characters." +msgstr "" + +#: actions/siteadminpanel.php:216 +msgid "Dupe limit must 1 or more seconds." +msgstr "" + +#: actions/siteadminpanel.php:266 +msgid "General" +msgstr "" + +#: actions/siteadminpanel.php:269 +msgid "Site name" +msgstr "" + +#: actions/siteadminpanel.php:270 +msgid "The name of your site, like \"Yourcompany Microblog\"" +msgstr "" + +#: actions/siteadminpanel.php:274 +msgid "Brought by" +msgstr "" + +#: actions/siteadminpanel.php:275 +msgid "Text used for credits link in footer of each page" +msgstr "" + +#: actions/siteadminpanel.php:279 +msgid "Brought by URL" +msgstr "" + +#: actions/siteadminpanel.php:280 +msgid "URL used for credits link in footer of each page" +msgstr "" + +#: actions/siteadminpanel.php:284 +msgid "Contact email address for your site" +msgstr "" + +#: actions/siteadminpanel.php:290 +msgid "Local" +msgstr "" + +#: actions/siteadminpanel.php:301 +msgid "Default timezone" +msgstr "" + +#: actions/siteadminpanel.php:302 +msgid "Default timezone for the site; usually UTC." +msgstr "" + +#: actions/siteadminpanel.php:308 +msgid "Default site language" +msgstr "" + +#: actions/siteadminpanel.php:316 +msgid "URLs" +msgstr "" + +#: actions/siteadminpanel.php:319 +msgid "Server" +msgstr "" + +#: actions/siteadminpanel.php:319 +msgid "Site's server hostname." +msgstr "" + +#: actions/siteadminpanel.php:323 +msgid "Fancy URLs" +msgstr "" + +#: actions/siteadminpanel.php:325 +msgid "Use fancy (more readable and memorable) URLs?" +msgstr "" + +#: actions/siteadminpanel.php:331 +msgid "Access" +msgstr "" + +#: actions/siteadminpanel.php:334 +msgid "Private" +msgstr "" + +#: actions/siteadminpanel.php:336 +msgid "Prohibit anonymous users (not logged in) from viewing site?" +msgstr "" + +#: actions/siteadminpanel.php:340 +msgid "Invite only" +msgstr "" + +#: actions/siteadminpanel.php:342 +msgid "Make registration invitation only." +msgstr "" + +#: actions/siteadminpanel.php:346 +msgid "Closed" +msgstr "" + +#: actions/siteadminpanel.php:348 +msgid "Disable new registrations." +msgstr "" + +#: actions/siteadminpanel.php:354 +msgid "Snapshots" +msgstr "" + +#: actions/siteadminpanel.php:357 +msgid "Randomly during Web hit" +msgstr "" + +#: actions/siteadminpanel.php:358 +msgid "In a scheduled job" +msgstr "" + +#: actions/siteadminpanel.php:359 actions/siteadminpanel.php:383 +msgid "Never" +msgstr "" + +#: actions/siteadminpanel.php:360 +msgid "Data snapshots" +msgstr "" + +#: actions/siteadminpanel.php:361 +msgid "When to send statistical data to status.net servers" +msgstr "" + +#: actions/siteadminpanel.php:366 +msgid "Frequency" +msgstr "" + +#: actions/siteadminpanel.php:367 +msgid "Snapshots will be sent once every N web hits" +msgstr "" + +#: actions/siteadminpanel.php:372 +msgid "Report URL" +msgstr "" + +#: actions/siteadminpanel.php:373 +msgid "Snapshots will be sent to this URL" +msgstr "" + +#: actions/siteadminpanel.php:380 +msgid "SSL" +msgstr "" + +#: actions/siteadminpanel.php:384 +msgid "Sometimes" +msgstr "" + +#: actions/siteadminpanel.php:385 +msgid "Always" +msgstr "" + +#: actions/siteadminpanel.php:387 +msgid "Use SSL" +msgstr "" + +#: actions/siteadminpanel.php:388 +msgid "When to use SSL" +msgstr "" + +#: actions/siteadminpanel.php:393 +msgid "SSL Server" +msgstr "" + +#: actions/siteadminpanel.php:394 +msgid "Server to direct SSL requests to" +msgstr "" + +#: actions/siteadminpanel.php:400 +msgid "Limits" +msgstr "" + +#: actions/siteadminpanel.php:403 +msgid "Text limit" +msgstr "" + +#: actions/siteadminpanel.php:403 +msgid "Maximum number of characters for notices." +msgstr "" + +#: actions/siteadminpanel.php:407 +msgid "Dupe limit" +msgstr "" + +#: actions/siteadminpanel.php:407 +msgid "How long users must wait (in seconds) to post the same thing again." +msgstr "" + +#: actions/siteadminpanel.php:421 actions/useradminpanel.php:313 +msgid "Save site settings" +msgstr "" + +#: actions/smssettings.php:58 +msgid "SMS Settings" +msgstr "" + +#: actions/smssettings.php:69 +#, php-format +msgid "You can receive SMS messages through email from %%site.name%%." +msgstr "" + +#: actions/smssettings.php:91 +msgid "SMS is not available." +msgstr "" + +#: actions/smssettings.php:112 +msgid "Current confirmed SMS-enabled phone number." +msgstr "" + +#: actions/smssettings.php:123 +msgid "Awaiting confirmation on this phone number." +msgstr "" + +#: actions/smssettings.php:130 +msgid "Confirmation code" +msgstr "" + +#: actions/smssettings.php:131 +msgid "Enter the code you received on your phone." +msgstr "" + +#: actions/smssettings.php:138 +msgid "SMS Phone number" +msgstr "" + +#: actions/smssettings.php:140 +msgid "Phone number, no punctuation or spaces, with area code" +msgstr "" + +#: actions/smssettings.php:174 +msgid "" +"Send me notices through SMS; I understand I may incur exorbitant charges " +"from my carrier." +msgstr "" + +#: actions/smssettings.php:306 +msgid "No phone number." +msgstr "" + +#: actions/smssettings.php:311 +msgid "No carrier selected." +msgstr "" + +#: actions/smssettings.php:318 +msgid "That is already your phone number." +msgstr "" + +#: actions/smssettings.php:321 +msgid "That phone number already belongs to another user." +msgstr "" + +#: actions/smssettings.php:347 +msgid "" +"A confirmation code was sent to the phone number you added. Check your phone " +"for the code and instructions on how to use it." +msgstr "" + +#: actions/smssettings.php:374 +msgid "That is the wrong confirmation number." +msgstr "" + +#: actions/smssettings.php:405 +msgid "That is not your phone number." +msgstr "" + +#: actions/smssettings.php:465 +msgid "Mobile carrier" +msgstr "" + +#: actions/smssettings.php:469 +msgid "Select a carrier" +msgstr "" + +#: actions/smssettings.php:476 +#, php-format +msgid "" +"Mobile carrier for your phone. If you know a carrier that accepts SMS over " +"email but isn't listed here, send email to let us know at %s." +msgstr "" + +#: actions/smssettings.php:498 +msgid "No code entered" +msgstr "" + +#: actions/subedit.php:70 +msgid "You are not subscribed to that profile." +msgstr "" + +#: actions/subedit.php:83 +msgid "Could not save subscription." +msgstr "" + +#: actions/subscribe.php:55 +msgid "Not a local user." +msgstr "" + +#: actions/subscribe.php:69 +msgid "Subscribed" +msgstr "" + +#: actions/subscribers.php:50 +#, php-format +msgid "%s subscribers" +msgstr "" + +#: actions/subscribers.php:52 +#, php-format +msgid "%s subscribers, page %d" +msgstr "" + +#: actions/subscribers.php:63 +msgid "These are the people who listen to your notices." +msgstr "" + +#: actions/subscribers.php:67 +#, php-format +msgid "These are the people who listen to %s's notices." +msgstr "" + +#: actions/subscribers.php:108 +msgid "" +"You have no subscribers. Try subscribing to people you know and they might " +"return the favor" +msgstr "" + +#: actions/subscribers.php:110 +#, php-format +msgid "%s has no subscribers. Want to be the first?" +msgstr "" + +#: actions/subscribers.php:114 +#, php-format +msgid "" +"%s has no subscribers. Why not [register an account](%%%%action.register%%%" +"%) and be the first?" +msgstr "" + +#: actions/subscriptions.php:52 +#, php-format +msgid "%s subscriptions" +msgstr "" + +#: actions/subscriptions.php:54 +#, php-format +msgid "%s subscriptions, page %d" +msgstr "" + +#: actions/subscriptions.php:65 +msgid "These are the people whose notices you listen to." +msgstr "" + +#: actions/subscriptions.php:69 +#, php-format +msgid "These are the people whose notices %s listens to." +msgstr "" + +#: actions/subscriptions.php:121 +#, php-format +msgid "" +"You're not listening to anyone's notices right now, try subscribing to " +"people you know. Try [people search](%%action.peoplesearch%%), look for " +"members in groups you're interested in and in our [featured users](%%action." +"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can " +"automatically subscribe to people you already follow there." +msgstr "" + +#: actions/subscriptions.php:123 actions/subscriptions.php:127 +#, php-format +msgid "%s is not listening to anyone." +msgstr "" + +#: actions/subscriptions.php:194 +msgid "Jabber" +msgstr "" + +#: actions/subscriptions.php:199 lib/connectsettingsaction.php:115 +msgid "SMS" +msgstr "" + +#: actions/tag.php:68 +#, php-format +msgid "Notices tagged with %s, page %d" +msgstr "" + +#: actions/tag.php:86 +#, php-format +msgid "Notice feed for tag %s (RSS 1.0)" +msgstr "" + +#: actions/tag.php:92 +#, php-format +msgid "Notice feed for tag %s (RSS 2.0)" +msgstr "" + +#: actions/tag.php:98 +#, php-format +msgid "Notice feed for tag %s (Atom)" +msgstr "" + +#: actions/tagother.php:33 +msgid "Not logged in" +msgstr "" + +#: actions/tagother.php:39 +msgid "No id argument." +msgstr "" + +#: actions/tagother.php:65 +#, php-format +msgid "Tag %s" +msgstr "" + +#: actions/tagother.php:77 lib/userprofile.php:75 +msgid "User profile" +msgstr "" + +#: actions/tagother.php:81 lib/userprofile.php:102 +msgid "Photo" +msgstr "" + +#: actions/tagother.php:141 +msgid "Tag user" +msgstr "" + +#: actions/tagother.php:151 +msgid "" +"Tags for this user (letters, numbers, -, ., and _), comma- or space- " +"separated" +msgstr "" + +#: actions/tagother.php:193 +msgid "" +"You can only tag people you are subscribed to or who are subscribed to you." +msgstr "" + +#: actions/tagother.php:200 +msgid "Could not save tags." +msgstr "" + +#: actions/tagother.php:236 +msgid "Use this form to add tags to your subscribers or subscriptions." +msgstr "" + +#: actions/tagrss.php:35 +msgid "No such tag." +msgstr "" + +#: actions/twitapitrends.php:87 +msgid "API method under construction." +msgstr "" + +#: actions/unblock.php:59 +msgid "You haven't blocked that user." +msgstr "" + +#: actions/unsandbox.php:72 +msgid "User is not sandboxed." +msgstr "" + +#: actions/unsilence.php:72 +msgid "User is not silenced." +msgstr "" + +#: actions/unsubscribe.php:77 +msgid "No profile id in request." +msgstr "" + +#: actions/unsubscribe.php:84 +msgid "No profile with that id." +msgstr "" + +#: actions/unsubscribe.php:98 +msgid "Unsubscribed" +msgstr "" + +#: actions/updateprofile.php:62 actions/userauthorization.php:330 +#, php-format +msgid "Listenee stream license ‘%s’ is not compatible with site license ‘%s’." +msgstr "" + +#: actions/useradminpanel.php:58 lib/adminpanelaction.php:305 +#: lib/personalgroupnav.php:115 +msgid "User" +msgstr "" + +#: actions/useradminpanel.php:69 +msgid "User settings for this StatusNet site." +msgstr "" + +#: actions/useradminpanel.php:149 +msgid "Invalid bio limit. Must be numeric." +msgstr "" + +#: actions/useradminpanel.php:155 +msgid "Invalid welcome text. Max length is 255 characters." +msgstr "" + +#: actions/useradminpanel.php:165 +#, php-format +msgid "Invalid default subscripton: '%1$s' is not user." +msgstr "" + +#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108 +#: lib/personalgroupnav.php:109 +msgid "Profile" +msgstr "" + +#: actions/useradminpanel.php:222 +msgid "Bio Limit" +msgstr "" + +#: actions/useradminpanel.php:223 +msgid "Maximum length of a profile bio in characters." +msgstr "" + +#: actions/useradminpanel.php:231 +msgid "New users" +msgstr "" + +#: actions/useradminpanel.php:235 +msgid "New user welcome" +msgstr "" + +#: actions/useradminpanel.php:236 +msgid "Welcome text for new users (Max 255 chars)." +msgstr "" + +#: actions/useradminpanel.php:241 +msgid "Default subscription" +msgstr "" + +#: actions/useradminpanel.php:242 +msgid "Automatically subscribe new users to this user." +msgstr "" + +#: actions/useradminpanel.php:251 +msgid "Invitations" +msgstr "" + +#: actions/useradminpanel.php:256 +msgid "Invitations enabled" +msgstr "" + +#: actions/useradminpanel.php:258 +msgid "Whether to allow users to invite new users." +msgstr "" + +#: actions/useradminpanel.php:265 +msgid "Sessions" +msgstr "" + +#: actions/useradminpanel.php:270 +msgid "Handle sessions" +msgstr "" + +#: actions/useradminpanel.php:272 +msgid "Whether to handle sessions ourselves." +msgstr "" + +#: actions/useradminpanel.php:276 +msgid "Session debugging" +msgstr "" + +#: actions/useradminpanel.php:278 +msgid "Turn on debugging output for sessions." +msgstr "" + +#: actions/userauthorization.php:105 +msgid "Authorize subscription" +msgstr "" + +#: actions/userauthorization.php:110 +msgid "" +"Please check these details to make sure that you want to subscribe to this " +"user’s notices. If you didn’t just ask to subscribe to someone’s notices, " +"click “Reject”." +msgstr "" + +#: actions/userauthorization.php:188 +msgid "License" +msgstr "" + +#: actions/userauthorization.php:209 +msgid "Accept" +msgstr "" + +#: actions/userauthorization.php:210 lib/subscribeform.php:115 +#: lib/subscribeform.php:139 +msgid "Subscribe to this user" +msgstr "" + +#: actions/userauthorization.php:211 +msgid "Reject" +msgstr "" + +#: actions/userauthorization.php:212 +msgid "Reject this subscription" +msgstr "" + +#: actions/userauthorization.php:225 +msgid "No authorization request!" +msgstr "" + +#: actions/userauthorization.php:247 +msgid "Subscription authorized" +msgstr "" + +#: actions/userauthorization.php:249 +msgid "" +"The subscription has been authorized, but no callback URL was passed. Check " +"with the site’s instructions for details on how to authorize the " +"subscription. Your subscription token is:" +msgstr "" + +#: actions/userauthorization.php:259 +msgid "Subscription rejected" +msgstr "" + +#: actions/userauthorization.php:261 +msgid "" +"The subscription has been rejected, but no callback URL was passed. Check " +"with the site’s instructions for details on how to fully reject the " +"subscription." +msgstr "" + +#: actions/userauthorization.php:296 +#, php-format +msgid "Listener URI ‘%s’ not found here" +msgstr "" + +#: actions/userauthorization.php:301 +#, php-format +msgid "Listenee URI ‘%s’ is too long." +msgstr "" + +#: actions/userauthorization.php:307 +#, php-format +msgid "Listenee URI ‘%s’ is a local user." +msgstr "" + +#: actions/userauthorization.php:322 +#, php-format +msgid "Profile URL ‘%s’ is for a local user." +msgstr "" + +#: actions/userauthorization.php:338 +#, php-format +msgid "Avatar URL ‘%s’ is not valid." +msgstr "" + +#: actions/userauthorization.php:343 +#, php-format +msgid "Can’t read avatar URL ‘%s’." +msgstr "" + +#: actions/userauthorization.php:348 +#, php-format +msgid "Wrong image type for avatar URL ‘%s’." +msgstr "" + +#: actions/userbyid.php:70 +msgid "No id." +msgstr "" + +#: actions/userdesignsettings.php:76 lib/designsettings.php:65 +msgid "Profile design" +msgstr "" + +#: actions/userdesignsettings.php:87 lib/designsettings.php:76 +msgid "" +"Customize the way your profile looks with a background image and a colour " +"palette of your choice." +msgstr "" + +#: actions/userdesignsettings.php:282 +msgid "Enjoy your hotdog!" +msgstr "" + +#: actions/usergroups.php:64 +#, php-format +msgid "%s groups, page %d" +msgstr "" + +#: actions/usergroups.php:130 +msgid "Search for more groups" +msgstr "" + +#: actions/usergroups.php:153 +#, php-format +msgid "%s is not a member of any group." +msgstr "" + +#: actions/usergroups.php:158 +#, php-format +msgid "Try [searching for groups](%%action.groupsearch%%) and joining them." +msgstr "" + +#: classes/File.php:137 +#, php-format +msgid "" +"No file may be larger than %d bytes and the file you sent was %d bytes. Try " +"to upload a smaller version." +msgstr "" + +#: classes/File.php:147 +#, php-format +msgid "A file this large would exceed your user quota of %d bytes." +msgstr "" + +#: classes/File.php:154 +#, php-format +msgid "A file this large would exceed your monthly quota of %d bytes." +msgstr "" + +#: classes/Message.php:45 +msgid "You are banned from sending direct messages." +msgstr "" + +#: classes/Message.php:61 +msgid "Could not insert message." +msgstr "" + +#: classes/Message.php:71 +msgid "Could not update message with new URI." +msgstr "" + +#: classes/Notice.php:172 +#, php-format +msgid "DB error inserting hashtag: %s" +msgstr "" + +#: classes/Notice.php:196 +msgid "Problem saving notice. Too long." +msgstr "" + +#: classes/Notice.php:200 +msgid "Problem saving notice. Unknown user." +msgstr "" + +#: classes/Notice.php:205 +msgid "" +"Too many notices too fast; take a breather and post again in a few minutes." +msgstr "" + +#: classes/Notice.php:211 +msgid "" +"Too many duplicate messages too quickly; take a breather and post again in a " +"few minutes." +msgstr "" + +#: classes/Notice.php:217 +msgid "You are banned from posting notices on this site." +msgstr "" + +#: classes/Notice.php:289 classes/Notice.php:314 +msgid "Problem saving notice." +msgstr "" + +#: classes/Notice.php:993 +#, php-format +msgid "DB error inserting reply: %s" +msgstr "" + +#: classes/Notice.php:1320 +#, php-format +msgid "RT @%1$s %2$s" +msgstr "" + +#: classes/User.php:347 +#, php-format +msgid "Welcome to %1$s, @%2$s!" +msgstr "" + +#: classes/User_group.php:380 +msgid "Could not create group." +msgstr "" + +#: classes/User_group.php:409 +msgid "Could not set group membership." +msgstr "" + +#: lib/accountsettingsaction.php:108 +msgid "Change your profile settings" +msgstr "" + +#: lib/accountsettingsaction.php:112 +msgid "Upload an avatar" +msgstr "" + +#: lib/accountsettingsaction.php:116 +msgid "Change your password" +msgstr "" + +#: lib/accountsettingsaction.php:120 +msgid "Change email handling" +msgstr "" + +#: lib/accountsettingsaction.php:124 +msgid "Design your profile" +msgstr "" + +#: lib/accountsettingsaction.php:128 +msgid "Other" +msgstr "" + +#: lib/accountsettingsaction.php:128 +msgid "Other options" +msgstr "" + +#: lib/action.php:144 +#, php-format +msgid "%s - %s" +msgstr "" + +#: lib/action.php:159 +msgid "Untitled page" +msgstr "" + +#: lib/action.php:425 +msgid "Primary site navigation" +msgstr "" + +#: lib/action.php:431 +msgid "Home" +msgstr "" + +#: lib/action.php:431 +msgid "Personal profile and friends timeline" +msgstr "" + +#: lib/action.php:433 +msgid "Account" +msgstr "" + +#: lib/action.php:433 +msgid "Change your email, avatar, password, profile" +msgstr "" + +#: lib/action.php:436 +msgid "Connect" +msgstr "" + +#: lib/action.php:436 +msgid "Connect to services" +msgstr "" + +#: lib/action.php:440 +msgid "Change site configuration" +msgstr "" + +#: lib/action.php:444 lib/subgroupnav.php:105 +msgid "Invite" +msgstr "" + +#: lib/action.php:445 lib/subgroupnav.php:106 +#, php-format +msgid "Invite friends and colleagues to join you on %s" +msgstr "" + +#: lib/action.php:450 +msgid "Logout" +msgstr "" + +#: lib/action.php:450 +msgid "Logout from the site" +msgstr "" + +#: lib/action.php:455 +msgid "Create an account" +msgstr "" + +#: lib/action.php:458 +msgid "Login to the site" +msgstr "" + +#: lib/action.php:461 lib/action.php:724 +msgid "Help" +msgstr "" + +#: lib/action.php:461 +msgid "Help me!" +msgstr "" + +#: lib/action.php:464 lib/searchaction.php:127 +msgid "Search" +msgstr "" + +#: lib/action.php:464 +msgid "Search for people or text" +msgstr "" + +#: lib/action.php:485 +msgid "Site notice" +msgstr "" + +#: lib/action.php:551 +msgid "Local views" +msgstr "" + +#: lib/action.php:617 +msgid "Page notice" +msgstr "" + +#: lib/action.php:719 +msgid "Secondary site navigation" +msgstr "" + +#: lib/action.php:726 +msgid "About" +msgstr "" + +#: lib/action.php:728 +msgid "FAQ" +msgstr "" + +#: lib/action.php:732 +msgid "TOS" +msgstr "" + +#: lib/action.php:735 +msgid "Privacy" +msgstr "" + +#: lib/action.php:737 +msgid "Source" +msgstr "" + +#: lib/action.php:739 +msgid "Contact" +msgstr "" + +#: lib/action.php:741 +msgid "Badge" +msgstr "" + +#: lib/action.php:769 +msgid "StatusNet software license" +msgstr "" + +#: lib/action.php:772 +#, php-format +msgid "" +"**%%site.name%%** is a microblogging service brought to you by [%%site." +"broughtby%%](%%site.broughtbyurl%%). " +msgstr "" + +#: lib/action.php:774 +#, php-format +msgid "**%%site.name%%** is a microblogging service. " +msgstr "" + +#: lib/action.php:776 +#, php-format +msgid "" +"It runs the [StatusNet](http://status.net/) microblogging software, version %" +"s, available under the [GNU Affero General Public License](http://www.fsf." +"org/licensing/licenses/agpl-3.0.html)." +msgstr "" + +#: lib/action.php:790 +msgid "Site content license" +msgstr "" + +#: lib/action.php:799 +msgid "All " +msgstr "" + +#: lib/action.php:804 +msgid "license." +msgstr "" + +#: lib/action.php:1098 +msgid "Pagination" +msgstr "" + +#: lib/action.php:1107 +msgid "After" +msgstr "" + +#: lib/action.php:1115 +msgid "Before" +msgstr "" + +#: lib/action.php:1163 +msgid "There was a problem with your session token." +msgstr "" + +#: lib/adminpanelaction.php:96 +msgid "You cannot make changes to this site." +msgstr "" + +#: lib/adminpanelaction.php:195 +msgid "showForm() not implemented." +msgstr "" + +#: lib/adminpanelaction.php:224 +msgid "saveSettings() not implemented." +msgstr "" + +#: lib/adminpanelaction.php:247 +msgid "Unable to delete design setting." +msgstr "" + +#: lib/adminpanelaction.php:300 +msgid "Basic site configuration" +msgstr "" + +#: lib/adminpanelaction.php:303 +msgid "Design configuration" +msgstr "" + +#: lib/adminpanelaction.php:306 lib/adminpanelaction.php:309 +msgid "Paths configuration" +msgstr "" + +#: lib/attachmentlist.php:87 +msgid "Attachments" +msgstr "" + +#: lib/attachmentlist.php:265 +msgid "Author" +msgstr "" + +#: lib/attachmentlist.php:278 +msgid "Provider" +msgstr "" + +#: lib/attachmentnoticesection.php:67 +msgid "Notices where this attachment appears" +msgstr "" + +#: lib/attachmenttagcloudsection.php:48 +msgid "Tags for this attachment" +msgstr "" + +#: lib/channel.php:138 lib/channel.php:158 +msgid "Command results" +msgstr "" + +#: lib/channel.php:210 +msgid "Command complete" +msgstr "" + +#: lib/channel.php:221 +msgid "Command failed" +msgstr "" + +#: lib/command.php:44 +msgid "Sorry, this command is not yet implemented." +msgstr "" + +#: lib/command.php:88 +#, php-format +msgid "Could not find a user with nickname %s" +msgstr "" + +#: lib/command.php:92 +msgid "It does not make a lot of sense to nudge yourself!" +msgstr "" + +#: lib/command.php:99 +#, php-format +msgid "Nudge sent to %s" +msgstr "" + +#: lib/command.php:126 +#, php-format +msgid "" +"Subscriptions: %1$s\n" +"Subscribers: %2$s\n" +"Notices: %3$s" +msgstr "" + +#: lib/command.php:152 lib/command.php:398 lib/command.php:459 +msgid "Notice with that id does not exist" +msgstr "" + +#: lib/command.php:168 lib/command.php:414 lib/command.php:475 +#: lib/command.php:531 +msgid "User has no last notice" +msgstr "" + +#: lib/command.php:190 +msgid "Notice marked as fave." +msgstr "" + +#: lib/command.php:315 +#, php-format +msgid "%1$s (%2$s)" +msgstr "" + +#: lib/command.php:318 +#, php-format +msgid "Fullname: %s" +msgstr "" + +#: lib/command.php:321 +#, php-format +msgid "Location: %s" +msgstr "" + +#: lib/command.php:324 +#, php-format +msgid "Homepage: %s" +msgstr "" + +#: lib/command.php:327 +#, php-format +msgid "About: %s" +msgstr "" + +#: lib/command.php:358 scripts/xmppdaemon.php:321 +#, php-format +msgid "Message too long - maximum is %d characters, you sent %d" +msgstr "" + +#: lib/command.php:377 +msgid "Error sending direct message." +msgstr "" + +#: lib/command.php:434 +#, php-format +msgid "Notice from %s repeated" +msgstr "" + +#: lib/command.php:436 +#, fuzzy +msgid "Error repeating notice." +msgstr "Error in actualisar le profilo remote" + +#: lib/command.php:490 +#, php-format +msgid "Notice too long - maximum is %d characters, you sent %d" +msgstr "" + +#: lib/command.php:499 +#, php-format +msgid "Reply to %s sent" +msgstr "" + +#: lib/command.php:501 +msgid "Error saving notice." +msgstr "" + +#: lib/command.php:555 +msgid "Specify the name of the user to subscribe to" +msgstr "" + +#: lib/command.php:562 +#, php-format +msgid "Subscribed to %s" +msgstr "" + +#: lib/command.php:583 +msgid "Specify the name of the user to unsubscribe from" +msgstr "" + +#: lib/command.php:590 +#, php-format +msgid "Unsubscribed from %s" +msgstr "" + +#: lib/command.php:608 lib/command.php:631 +msgid "Command not yet implemented." +msgstr "" + +#: lib/command.php:611 +msgid "Notification off." +msgstr "" + +#: lib/command.php:613 +msgid "Can't turn off notification." +msgstr "" + +#: lib/command.php:634 +msgid "Notification on." +msgstr "" + +#: lib/command.php:636 +msgid "Can't turn on notification." +msgstr "" + +#: lib/command.php:649 +msgid "Login command is disabled" +msgstr "" + +#: lib/command.php:663 +#, php-format +msgid "Could not create login token for %s" +msgstr "" + +#: lib/command.php:668 +#, php-format +msgid "This link is useable only once, and is good for only 2 minutes: %s" +msgstr "" + +#: lib/command.php:684 +msgid "You are not subscribed to anyone." +msgstr "" + +#: lib/command.php:686 +msgid "You are subscribed to this person:" +msgid_plural "You are subscribed to these people:" +msgstr[0] "" +msgstr[1] "" + +#: lib/command.php:706 +msgid "No one is subscribed to you." +msgstr "" + +#: lib/command.php:708 +msgid "This person is subscribed to you:" +msgid_plural "These people are subscribed to you:" +msgstr[0] "" +msgstr[1] "" + +#: lib/command.php:728 +msgid "You are not a member of any groups." +msgstr "" + +#: lib/command.php:730 +msgid "You are a member of this group:" +msgid_plural "You are a member of these groups:" +msgstr[0] "" +msgstr[1] "" + +#: lib/command.php:744 +msgid "" +"Commands:\n" +"on - turn on notifications\n" +"off - turn off notifications\n" +"help - show this help\n" +"follow - subscribe to user\n" +"groups - lists the groups you have joined\n" +"subscriptions - list the people you follow\n" +"subscribers - list the people that follow you\n" +"leave - unsubscribe from user\n" +"d - direct message to user\n" +"get - get last notice from user\n" +"whois - get profile info on user\n" +"fav - add user's last notice as a 'fave'\n" +"fav # - add notice with the given id as a 'fave'\n" +"repeat # - repeat a notice with a given id\n" +"repeat - repeat the last notice from user\n" +"reply # - reply to notice with a given id\n" +"reply - reply to the last notice from user\n" +"join - join group\n" +"login - Get a link to login to the web interface\n" +"drop - leave group\n" +"stats - get your stats\n" +"stop - same as 'off'\n" +"quit - same as 'off'\n" +"sub - same as 'follow'\n" +"unsub - same as 'leave'\n" +"last - same as 'get'\n" +"on - not yet implemented.\n" +"off - not yet implemented.\n" +"nudge - remind a user to update.\n" +"invite - not yet implemented.\n" +"track - not yet implemented.\n" +"untrack - not yet implemented.\n" +"track off - not yet implemented.\n" +"untrack all - not yet implemented.\n" +"tracks - not yet implemented.\n" +"tracking - not yet implemented.\n" +msgstr "" + +#: lib/common.php:199 +msgid "No configuration file found. " +msgstr "" + +#: lib/common.php:200 +msgid "I looked for configuration files in the following places: " +msgstr "" + +#: lib/common.php:201 +msgid "You may wish to run the installer to fix this." +msgstr "" + +#: lib/common.php:202 +msgid "Go to the installer." +msgstr "" + +#: lib/connectsettingsaction.php:110 +msgid "IM" +msgstr "" + +#: lib/connectsettingsaction.php:111 +msgid "Updates by instant messenger (IM)" +msgstr "" + +#: lib/connectsettingsaction.php:116 +msgid "Updates by SMS" +msgstr "" + +#: lib/dberroraction.php:60 +msgid "Database error" +msgstr "" + +#: lib/designsettings.php:105 +msgid "Upload file" +msgstr "" + +#: lib/designsettings.php:109 +msgid "" +"You can upload your personal background image. The maximum file size is 2MB." +msgstr "" + +#: lib/designsettings.php:418 +msgid "Design defaults restored." +msgstr "" + +#: lib/disfavorform.php:114 lib/disfavorform.php:140 +msgid "Disfavor this notice" +msgstr "" + +#: lib/favorform.php:114 lib/favorform.php:140 +msgid "Favor this notice" +msgstr "" + +#: lib/favorform.php:140 +msgid "Favor" +msgstr "" + +#: lib/feed.php:85 +msgid "RSS 1.0" +msgstr "" + +#: lib/feed.php:87 +msgid "RSS 2.0" +msgstr "" + +#: lib/feed.php:89 +msgid "Atom" +msgstr "" + +#: lib/feed.php:91 +msgid "FOAF" +msgstr "" + +#: lib/feedlist.php:64 +msgid "Export data" +msgstr "" + +#: lib/galleryaction.php:121 +msgid "Filter tags" +msgstr "" + +#: lib/galleryaction.php:131 +msgid "All" +msgstr "" + +#: lib/galleryaction.php:139 +msgid "Select tag to filter" +msgstr "" + +#: lib/galleryaction.php:140 +msgid "Tag" +msgstr "" + +#: lib/galleryaction.php:141 +msgid "Choose a tag to narrow list" +msgstr "" + +#: lib/galleryaction.php:143 +msgid "Go" +msgstr "" + +#: lib/groupeditform.php:163 +msgid "URL of the homepage or blog of the group or topic" +msgstr "" + +#: lib/groupeditform.php:168 +msgid "Describe the group or topic" +msgstr "" + +#: lib/groupeditform.php:170 +#, php-format +msgid "Describe the group or topic in %d characters" +msgstr "" + +#: lib/groupeditform.php:172 +msgid "Description" +msgstr "" + +#: lib/groupeditform.php:179 +msgid "" +"Location for the group, if any, like \"City, State (or Region), Country\"" +msgstr "" + +#: lib/groupeditform.php:187 +#, php-format +msgid "Extra nicknames for the group, comma- or space- separated, max %d" +msgstr "" + +#: lib/groupnav.php:85 +msgid "Group" +msgstr "" + +#: lib/groupnav.php:101 +msgid "Blocked" +msgstr "" + +#: lib/groupnav.php:102 +#, php-format +msgid "%s blocked users" +msgstr "" + +#: lib/groupnav.php:108 +#, php-format +msgid "Edit %s group properties" +msgstr "" + +#: lib/groupnav.php:113 +msgid "Logo" +msgstr "" + +#: lib/groupnav.php:114 +#, php-format +msgid "Add or edit %s logo" +msgstr "" + +#: lib/groupnav.php:120 +#, php-format +msgid "Add or edit %s design" +msgstr "" + +#: lib/groupsbymemberssection.php:71 +msgid "Groups with most members" +msgstr "" + +#: lib/groupsbypostssection.php:71 +msgid "Groups with most posts" +msgstr "" + +#: lib/grouptagcloudsection.php:56 +#, php-format +msgid "Tags in %s group's notices" +msgstr "" + +#: lib/htmloutputter.php:103 +msgid "This page is not available in a media type you accept" +msgstr "" + +#: lib/imagefile.php:75 +#, php-format +msgid "That file is too big. The maximum file size is %s." +msgstr "" + +#: lib/imagefile.php:80 +msgid "Partial upload." +msgstr "" + +#: lib/imagefile.php:88 lib/mediafile.php:170 +msgid "System error uploading file." +msgstr "" + +#: lib/imagefile.php:96 +msgid "Not an image or corrupt file." +msgstr "" + +#: lib/imagefile.php:105 +msgid "Unsupported image file format." +msgstr "" + +#: lib/imagefile.php:118 +msgid "Lost our file." +msgstr "" + +#: lib/imagefile.php:150 lib/imagefile.php:197 +msgid "Unknown file type" +msgstr "" + +#: lib/imagefile.php:217 +msgid "MB" +msgstr "" + +#: lib/imagefile.php:219 +msgid "kB" +msgstr "" + +#: lib/jabber.php:191 +#, php-format +msgid "[%s]" +msgstr "" + +#: lib/joinform.php:114 +msgid "Join" +msgstr "" + +#: lib/leaveform.php:114 +msgid "Leave" +msgstr "" + +#: lib/logingroupnav.php:80 +msgid "Login with a username and password" +msgstr "" + +#: lib/logingroupnav.php:86 +msgid "Sign up for a new account" +msgstr "" + +#: lib/mail.php:172 +msgid "Email address confirmation" +msgstr "" + +#: lib/mail.php:174 +#, php-format +msgid "" +"Hey, %s.\n" +"\n" +"Someone just entered this email address on %s.\n" +"\n" +"If it was you, and you want to confirm your entry, use the URL below:\n" +"\n" +"\t%s\n" +"\n" +"If not, just ignore this message.\n" +"\n" +"Thanks for your time, \n" +"%s\n" +msgstr "" + +#: lib/mail.php:236 +#, php-format +msgid "%1$s is now listening to your notices on %2$s." +msgstr "" + +#: lib/mail.php:241 +#, php-format +msgid "" +"%1$s is now listening to your notices on %2$s.\n" +"\n" +"\t%3$s\n" +"\n" +"%4$s%5$s%6$s\n" +"Faithfully yours,\n" +"%7$s.\n" +"\n" +"----\n" +"Change your email address or notification options at %8$s\n" +msgstr "" + +#: lib/mail.php:254 +#, php-format +msgid "Location: %s\n" +msgstr "" + +#: lib/mail.php:256 +#, php-format +msgid "Homepage: %s\n" +msgstr "" + +#: lib/mail.php:258 +#, php-format +msgid "" +"Bio: %s\n" +"\n" +msgstr "" + +#: lib/mail.php:286 +#, php-format +msgid "New email address for posting to %s" +msgstr "" + +#: lib/mail.php:289 +#, php-format +msgid "" +"You have a new posting address on %1$s.\n" +"\n" +"Send email to %2$s to post new messages.\n" +"\n" +"More email instructions at %3$s.\n" +"\n" +"Faithfully yours,\n" +"%4$s" +msgstr "" + +#: lib/mail.php:413 +#, php-format +msgid "%s status" +msgstr "" + +#: lib/mail.php:439 +msgid "SMS confirmation" +msgstr "" + +#: lib/mail.php:463 +#, php-format +msgid "You've been nudged by %s" +msgstr "" + +#: lib/mail.php:467 +#, php-format +msgid "" +"%1$s (%2$s) is wondering what you are up to these days and is inviting you " +"to post some news.\n" +"\n" +"So let's hear from you :)\n" +"\n" +"%3$s\n" +"\n" +"Don't reply to this email; it won't get to them.\n" +"\n" +"With kind regards,\n" +"%4$s\n" +msgstr "" + +#: lib/mail.php:510 +#, php-format +msgid "New private message from %s" +msgstr "" + +#: lib/mail.php:514 +#, php-format +msgid "" +"%1$s (%2$s) sent you a private message:\n" +"\n" +"------------------------------------------------------\n" +"%3$s\n" +"------------------------------------------------------\n" +"\n" +"You can reply to their message here:\n" +"\n" +"%4$s\n" +"\n" +"Don't reply to this email; it won't get to them.\n" +"\n" +"With kind regards,\n" +"%5$s\n" +msgstr "" + +#: lib/mail.php:559 +#, php-format +msgid "%s (@%s) added your notice as a favorite" +msgstr "" + +#: lib/mail.php:561 +#, php-format +msgid "" +"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" +"\n" +"The URL of your notice is:\n" +"\n" +"%3$s\n" +"\n" +"The text of your notice is:\n" +"\n" +"%4$s\n" +"\n" +"You can see the list of %1$s's favorites here:\n" +"\n" +"%5$s\n" +"\n" +"Faithfully yours,\n" +"%6$s\n" +msgstr "" + +#: lib/mail.php:620 +#, php-format +msgid "%s (@%s) sent a notice to your attention" +msgstr "" + +#: lib/mail.php:622 +#, php-format +msgid "" +"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"\n" +"The notice is here:\n" +"\n" +"\t%3$s\n" +"\n" +"It reads:\n" +"\n" +"\t%4$s\n" +"\n" +msgstr "" + +#: lib/mailbox.php:89 +msgid "Only the user can read their own mailboxes." +msgstr "" + +#: lib/mailbox.php:139 +msgid "" +"You have no private messages. You can send private message to engage other " +"users in conversation. People can send you messages for your eyes only." +msgstr "" + +#: lib/mailbox.php:227 lib/noticelist.php:468 +msgid "from" +msgstr "" + +#: lib/mediafile.php:98 lib/mediafile.php:123 +msgid "There was a database error while saving your file. Please try again." +msgstr "" + +#: lib/mediafile.php:142 +msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini." +msgstr "" + +#: lib/mediafile.php:147 +msgid "" +"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in " +"the HTML form." +msgstr "" + +#: lib/mediafile.php:152 +msgid "The uploaded file was only partially uploaded." +msgstr "" + +#: lib/mediafile.php:159 +msgid "Missing a temporary folder." +msgstr "" + +#: lib/mediafile.php:162 +msgid "Failed to write file to disk." +msgstr "" + +#: lib/mediafile.php:165 +msgid "File upload stopped by extension." +msgstr "" + +#: lib/mediafile.php:179 lib/mediafile.php:216 +msgid "File exceeds user's quota!" +msgstr "" + +#: lib/mediafile.php:196 lib/mediafile.php:233 +msgid "File could not be moved to destination directory." +msgstr "" + +#: lib/mediafile.php:201 lib/mediafile.php:237 +msgid "Could not determine file's mime-type!" +msgstr "" + +#: lib/mediafile.php:270 +#, php-format +msgid " Try using another %s format." +msgstr "" + +#: lib/mediafile.php:275 +#, php-format +msgid "%s is not a supported filetype on this server." +msgstr "" + +#: lib/messageform.php:120 +msgid "Send a direct notice" +msgstr "" + +#: lib/messageform.php:146 +msgid "To" +msgstr "" + +#: lib/messageform.php:159 lib/noticeform.php:183 +msgid "Available characters" +msgstr "" + +#: lib/noticeform.php:158 +msgid "Send a notice" +msgstr "" + +#: lib/noticeform.php:171 +#, php-format +msgid "What's up, %s?" +msgstr "" + +#: lib/noticeform.php:190 +msgid "Attach" +msgstr "" + +#: lib/noticeform.php:194 +msgid "Attach a file" +msgstr "" + +#: lib/noticelist.php:419 +#, php-format +msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s" +msgstr "" + +#: lib/noticelist.php:420 +msgid "N" +msgstr "" + +#: lib/noticelist.php:420 +msgid "S" +msgstr "" + +#: lib/noticelist.php:421 +msgid "E" +msgstr "" + +#: lib/noticelist.php:421 +msgid "W" +msgstr "" + +#: lib/noticelist.php:427 +msgid "at" +msgstr "" + +#: lib/noticelist.php:522 +msgid "in context" +msgstr "" + +#: lib/noticelist.php:588 +msgid "Reply to this notice" +msgstr "" + +#: lib/noticelist.php:589 +msgid "Reply" +msgstr "" + +#: lib/nudgeform.php:116 +msgid "Nudge this user" +msgstr "" + +#: lib/nudgeform.php:128 +msgid "Nudge" +msgstr "" + +#: lib/nudgeform.php:128 +msgid "Send a nudge to this user" +msgstr "" + +#: lib/oauthstore.php:283 +msgid "Error inserting new profile" +msgstr "" + +#: lib/oauthstore.php:291 +msgid "Error inserting avatar" +msgstr "" + +#: lib/oauthstore.php:311 +msgid "Error inserting remote profile" +msgstr "" + +#: lib/oauthstore.php:345 +msgid "Duplicate notice" +msgstr "" + +#: lib/oauthstore.php:466 lib/subs.php:48 +msgid "You have been banned from subscribing." +msgstr "" + +#: lib/oauthstore.php:491 +msgid "Couldn't insert new subscription." +msgstr "" + +#: lib/personalgroupnav.php:99 +msgid "Personal" +msgstr "" + +#: lib/personalgroupnav.php:104 +msgid "Replies" +msgstr "" + +#: lib/personalgroupnav.php:114 +msgid "Favorites" +msgstr "" + +#: lib/personalgroupnav.php:124 +msgid "Inbox" +msgstr "" + +#: lib/personalgroupnav.php:125 +msgid "Your incoming messages" +msgstr "" + +#: lib/personalgroupnav.php:129 +msgid "Outbox" +msgstr "" + +#: lib/personalgroupnav.php:130 +msgid "Your sent messages" +msgstr "" + +#: lib/personaltagcloudsection.php:56 +#, php-format +msgid "Tags in %s's notices" +msgstr "" + +#: lib/profileaction.php:109 lib/profileaction.php:192 lib/subgroupnav.php:82 +msgid "Subscriptions" +msgstr "" + +#: lib/profileaction.php:126 +msgid "All subscriptions" +msgstr "" + +#: lib/profileaction.php:140 lib/profileaction.php:201 lib/subgroupnav.php:90 +msgid "Subscribers" +msgstr "" + +#: lib/profileaction.php:157 +msgid "All subscribers" +msgstr "" + +#: lib/profileaction.php:178 +msgid "User ID" +msgstr "" + +#: lib/profileaction.php:183 +msgid "Member since" +msgstr "" + +#: lib/profileaction.php:245 +msgid "All groups" +msgstr "" + +#: lib/profileformaction.php:123 +msgid "No return-to arguments" +msgstr "" + +#: lib/profileformaction.php:137 +msgid "unimplemented method" +msgstr "" + +#: lib/publicgroupnav.php:78 +msgid "Public" +msgstr "" + +#: lib/publicgroupnav.php:82 +msgid "User groups" +msgstr "" + +#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85 +msgid "Recent tags" +msgstr "" + +#: lib/publicgroupnav.php:88 +msgid "Featured" +msgstr "" + +#: lib/publicgroupnav.php:92 +msgid "Popular" +msgstr "" + +#: lib/repeatform.php:107 lib/repeatform.php:132 +#, fuzzy +msgid "Repeat this notice" +msgstr "Deler iste nota" + +#: lib/repeatform.php:132 +msgid "Repeat" +msgstr "" + +#: lib/sandboxform.php:67 +msgid "Sandbox" +msgstr "" + +#: lib/sandboxform.php:78 +msgid "Sandbox this user" +msgstr "" + +#: lib/searchaction.php:120 +msgid "Search site" +msgstr "" + +#: lib/searchaction.php:126 +msgid "Keyword(s)" +msgstr "" + +#: lib/searchaction.php:162 +msgid "Search help" +msgstr "" + +#: lib/searchgroupnav.php:80 +msgid "People" +msgstr "" + +#: lib/searchgroupnav.php:81 +msgid "Find people on this site" +msgstr "" + +#: lib/searchgroupnav.php:83 +msgid "Find content of notices" +msgstr "" + +#: lib/searchgroupnav.php:85 +msgid "Find groups on this site" +msgstr "" + +#: lib/section.php:89 +msgid "Untitled section" +msgstr "" + +#: lib/section.php:106 +msgid "More..." +msgstr "" + +#: lib/silenceform.php:67 +msgid "Silence" +msgstr "" + +#: lib/silenceform.php:78 +msgid "Silence this user" +msgstr "" + +#: lib/subgroupnav.php:83 +#, php-format +msgid "People %s subscribes to" +msgstr "" + +#: lib/subgroupnav.php:91 +#, php-format +msgid "People subscribed to %s" +msgstr "" + +#: lib/subgroupnav.php:99 +#, php-format +msgid "Groups %s is a member of" +msgstr "" + +#: lib/subs.php:52 +msgid "Already subscribed!" +msgstr "" + +#: lib/subs.php:56 +msgid "User has blocked you." +msgstr "" + +#: lib/subs.php:60 +msgid "Could not subscribe." +msgstr "" + +#: lib/subs.php:79 +msgid "Could not subscribe other to you." +msgstr "" + +#: lib/subs.php:128 +msgid "Not subscribed!" +msgstr "" + +#: lib/subs.php:133 +msgid "Couldn't delete self-subscription." +msgstr "" + +#: lib/subs.php:146 +msgid "Couldn't delete subscription." +msgstr "" + +#: lib/subscriberspeopleselftagcloudsection.php:48 +#: lib/subscriptionspeopleselftagcloudsection.php:48 +msgid "People Tagcloud as self-tagged" +msgstr "" + +#: lib/subscriberspeopletagcloudsection.php:48 +#: lib/subscriptionspeopletagcloudsection.php:48 +msgid "People Tagcloud as tagged" +msgstr "" + +#: lib/subscriptionlist.php:126 +msgid "(none)" +msgstr "" + +#: lib/tagcloudsection.php:56 +msgid "None" +msgstr "" + +#: lib/topposterssection.php:74 +msgid "Top posters" +msgstr "" + +#: lib/unsandboxform.php:69 +msgid "Unsandbox" +msgstr "" + +#: lib/unsandboxform.php:80 +msgid "Unsandbox this user" +msgstr "" + +#: lib/unsilenceform.php:67 +msgid "Unsilence" +msgstr "" + +#: lib/unsilenceform.php:78 +msgid "Unsilence this user" +msgstr "" + +#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137 +msgid "Unsubscribe from this user" +msgstr "" + +#: lib/unsubscribeform.php:137 +msgid "Unsubscribe" +msgstr "" + +#: lib/userprofile.php:116 +msgid "Edit Avatar" +msgstr "" + +#: lib/userprofile.php:236 +msgid "User actions" +msgstr "" + +#: lib/userprofile.php:248 +msgid "Edit profile settings" +msgstr "" + +#: lib/userprofile.php:249 +msgid "Edit" +msgstr "" + +#: lib/userprofile.php:272 +msgid "Send a direct message to this user" +msgstr "" + +#: lib/userprofile.php:273 +msgid "Message" +msgstr "" + +#: lib/userprofile.php:311 +msgid "Moderate" +msgstr "" + +#: lib/util.php:825 +msgid "a few seconds ago" +msgstr "" + +#: lib/util.php:827 +msgid "about a minute ago" +msgstr "" + +#: lib/util.php:829 +#, php-format +msgid "about %d minutes ago" +msgstr "" + +#: lib/util.php:831 +msgid "about an hour ago" +msgstr "" + +#: lib/util.php:833 +#, php-format +msgid "about %d hours ago" +msgstr "" + +#: lib/util.php:835 +msgid "about a day ago" +msgstr "" + +#: lib/util.php:837 +#, php-format +msgid "about %d days ago" +msgstr "" + +#: lib/util.php:839 +msgid "about a month ago" +msgstr "" + +#: lib/util.php:841 +#, php-format +msgid "about %d months ago" +msgstr "" + +#: lib/util.php:843 +msgid "about a year ago" +msgstr "" + +#: lib/webcolor.php:82 +#, php-format +msgid "%s is not a valid color!" +msgstr "" + +#: lib/webcolor.php:123 +#, php-format +msgid "%s is not a valid color! Use 3 or 6 hex chars." +msgstr "" + +#: scripts/maildaemon.php:48 +msgid "Could not parse message." +msgstr "" + +#: scripts/maildaemon.php:53 +msgid "Not a registered user." +msgstr "" + +#: scripts/maildaemon.php:57 +msgid "Sorry, that is not your incoming email address." +msgstr "" + +#: scripts/maildaemon.php:61 +msgid "Sorry, no incoming email allowed." +msgstr "" -- cgit v1.2.3-54-g00ecf From 745e35ac1fcee01298db09a8649f79f410138652 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Sun, 13 Dec 2009 18:55:17 +0100 Subject: (Puctuation) consistency in clientError() calls. --- actions/apistatusesretweet.php | 6 +++--- actions/apistatusesretweets.php | 2 +- actions/file.php | 8 ++++---- actions/grouprss.php | 4 ++-- actions/tagother.php | 4 ++-- actions/userbyid.php | 9 ++++----- lib/profileformaction.php | 4 ++-- plugins/OpenID/openidserver.php | 2 +- plugins/TemplatePlugin.php | 2 +- 9 files changed, 20 insertions(+), 21 deletions(-) (limited to 'lib') diff --git a/actions/apistatusesretweet.php b/actions/apistatusesretweet.php index fc71d2274..85de79d5c 100644 --- a/actions/apistatusesretweet.php +++ b/actions/apistatusesretweet.php @@ -72,7 +72,7 @@ class ApiStatusesRetweetAction extends ApiAuthAction $this->original = Notice::staticGet('id', $id); if (empty($this->original)) { - $this->clientError(_('No such notice'), + $this->clientError(_('No such notice.'), 400, $this->format); return false; } @@ -80,7 +80,7 @@ class ApiStatusesRetweetAction extends ApiAuthAction $this->user = $this->auth_user; if ($this->user->id == $notice->profile_id) { - $this->clientError(_('Cannot repeat your own notice')); + $this->clientError(_('Cannot repeat your own notice.')); 400, $this->format); return false; } @@ -88,7 +88,7 @@ class ApiStatusesRetweetAction extends ApiAuthAction $profile = $this->user->getProfile(); if ($profile->hasRepeated($id)) { - $this->clientError(_('Already repeated that notice'), + $this->clientError(_('Already repeated that notice.'), 400, $this->format); return false; } diff --git a/actions/apistatusesretweets.php b/actions/apistatusesretweets.php index c54a374e2..2efd59b37 100644 --- a/actions/apistatusesretweets.php +++ b/actions/apistatusesretweets.php @@ -69,7 +69,7 @@ class ApiStatusesRetweetsAction extends ApiAuthAction $this->original = Notice::staticGet('id', $id); if (empty($this->original)) { - $this->clientError(_('No such notice'), + $this->clientError(_('No such notice.'), 400, $this->format); return false; } diff --git a/actions/file.php b/actions/file.php index 10c59a961..c6f7b998a 100644 --- a/actions/file.php +++ b/actions/file.php @@ -31,15 +31,15 @@ class FileAction extends Action parent::prepare($args); $this->id = $this->trimmed('notice'); if (empty($this->id)) { - $this->clientError(_('No notice id')); + $this->clientError(_('No notice ID.')); } $notice = Notice::staticGet('id', $this->id); if (empty($notice)) { - $this->clientError(_('No notice')); + $this->clientError(_('No notice.')); } $atts = $notice->attachments(); if (empty($atts)) { - $this->clientError(_('No attachments')); + $this->clientError(_('No attachments.')); } foreach ($atts as $att) { if (!empty($att->filename)) { @@ -48,7 +48,7 @@ class FileAction extends Action } } if (empty($this->filerec)) { - $this->clientError(_('No uploaded attachments')); + $this->clientError(_('No uploaded attachments.')); } return true; } diff --git a/actions/grouprss.php b/actions/grouprss.php index 50e48a67e..866fc66eb 100644 --- a/actions/grouprss.php +++ b/actions/grouprss.php @@ -88,14 +88,14 @@ class groupRssAction extends Rss10Action } if (!$nickname) { - $this->clientError(_('No nickname'), 404); + $this->clientError(_('No nickname.'), 404); return false; } $this->group = User_group::staticGet('nickname', $nickname); if (!$this->group) { - $this->clientError(_('No such group'), 404); + $this->clientError(_('No such group.'), 404); return false; } diff --git a/actions/tagother.php b/actions/tagother.php index c3f43be8b..e9e13b939 100644 --- a/actions/tagother.php +++ b/actions/tagother.php @@ -30,13 +30,13 @@ class TagotherAction extends Action { parent::prepare($args); if (!common_logged_in()) { - $this->clientError(_('Not logged in'), 403); + $this->clientError(_('Not logged in.'), 403); return false; } $id = $this->trimmed('id'); if (!$id) { - $this->clientError(_('No id argument.')); + $this->clientError(_('No ID argument.')); return false; } diff --git a/actions/userbyid.php b/actions/userbyid.php index ebff7e4a7..f3e1556f3 100644 --- a/actions/userbyid.php +++ b/actions/userbyid.php @@ -47,17 +47,17 @@ class UserbyidAction extends Action { /** * Is read only? - * + * * @return boolean true */ function isReadOnly($args) - { + { return true; } /** * Class handler. - * + * * @param array $args array of arguments * * @return nothing @@ -67,7 +67,7 @@ class UserbyidAction extends Action parent::handle($args); $id = $this->trimmed('id'); if (!$id) { - $this->clientError(_('No id.')); + $this->clientError(_('No ID.')); } $user = User::staticGet($id); if (!$user) { @@ -88,4 +88,3 @@ class UserbyidAction extends Action common_redirect($url, 303); } } - diff --git a/lib/profileformaction.php b/lib/profileformaction.php index 8cb5f6a93..8a934666e 100644 --- a/lib/profileformaction.php +++ b/lib/profileformaction.php @@ -120,7 +120,7 @@ class ProfileFormAction extends Action if ($action) { common_redirect(common_local_url($action, $args), 303); } else { - $this->clientError(_("No return-to arguments")); + $this->clientError(_("No return-to arguments.")); } } @@ -134,6 +134,6 @@ class ProfileFormAction extends Action function handlePost() { - $this->serverError(_("unimplemented method")); + $this->serverError(_("Unimplemented method.")); } } diff --git a/plugins/OpenID/openidserver.php b/plugins/OpenID/openidserver.php index 181cbdf45..afbca553f 100644 --- a/plugins/OpenID/openidserver.php +++ b/plugins/OpenID/openidserver.php @@ -103,7 +103,7 @@ class OpenidserverAction extends Action $response = $this->generateDenyResponse($request); } else { //invalid - $this->clientError(sprintf(_m('You are not authorized to use the identity %s'),$request->identity),$code=403); + $this->clientError(sprintf(_m('You are not authorized to use the identity %s.'),$request->identity),$code=403); } } else { $response = $this->oserver->handleRequest($request); diff --git a/plugins/TemplatePlugin.php b/plugins/TemplatePlugin.php index 5f3ad81f5..18aa8034c 100644 --- a/plugins/TemplatePlugin.php +++ b/plugins/TemplatePlugin.php @@ -300,7 +300,7 @@ class TemplateAction extends Action // verify that user is admin if (!($user->id == 1)) - $this->clientError(_('only User #1 can update the template'), $code = 401); + $this->clientError(_('Only User #1 can update the template.'), $code = 401); // open the old template $tpl_file = $this->templateFolder() . '/index.html'; -- cgit v1.2.3-54-g00ecf From 7dc9f7ad069164674abb4b761bc7faf9eca4c61f Mon Sep 17 00:00:00 2001 From: Sarven Capadisli Date: Sun, 13 Dec 2009 20:00:09 -0500 Subject: Init UI for Repeated by --- lib/noticelist.php | 11 +++++------ theme/base/css/display.css | 11 +++++++++++ 2 files changed, 16 insertions(+), 6 deletions(-) (limited to 'lib') diff --git a/lib/noticelist.php b/lib/noticelist.php index aa6ea278c..a106478ed 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -535,17 +535,19 @@ class NoticeListItem extends Widget $repeater = Profile::staticGet('id', $this->repeat->profile_id); - $attrs = array('href' => $repeater->profileurl, + $attrs = array('href' => $this->profile->profileurl, 'class' => 'url'); if (!empty($repeater->fullname)) { $attrs['title'] = $repeater->fullname . ' (' . $repeater->nickname . ')'; } - $this->out->elementStart('span', 'repeat'); + $this->out->elementStart('span', 'repeat vcard'); $this->out->elementStart('a', $attrs); + $this->out->raw(_('Repeated by')); + $avatar = $repeater->getAvatar(AVATAR_MINI_SIZE); $this->out->element('img', array('src' => ($avatar) ? @@ -559,12 +561,9 @@ class NoticeListItem extends Widget $repeater->fullname : $repeater->nickname)); + $this->out->element('span', 'nickname', $repeater->nickname); $this->out->elementEnd('a'); - $text_link = XMLStringer::estring('a', $attrs, $repeater->nickname); - - $this->out->raw(sprintf(_('Repeated by %s'), $text_link)); - $this->out->elementEnd('span'); } } diff --git a/theme/base/css/display.css b/theme/base/css/display.css index bab6431b9..0173d2fbb 100644 --- a/theme/base/css/display.css +++ b/theme/base/css/display.css @@ -982,6 +982,17 @@ font-size:1.025em; display:inline-block; } +.entry-content .repeat { +display:block; +} +.entry-content .repeat .photo { +float:none; +margin-right:1px; +position:relative; +top:4px; +left:0; +} + .notice-options { position:relative; font-size:0.95em; -- cgit v1.2.3-54-g00ecf From a199bd808a9dce64dd1d9a137b853b6ba0f6811b Mon Sep 17 00:00:00 2001 From: Zach Copley Date: Mon, 14 Dec 2009 18:16:45 +0000 Subject: Fix issue with favorited/following always being set to false --- lib/api.php | 22 ++++++++++++---------- lib/apiauth.php | 2 -- 2 files changed, 12 insertions(+), 12 deletions(-) (limited to 'lib') diff --git a/lib/api.php b/lib/api.php index b7ab407a1..0c6650111 100644 --- a/lib/api.php +++ b/lib/api.php @@ -53,13 +53,14 @@ if (!defined('STATUSNET')) { class ApiAction extends Action { - var $format = null; - var $user = null; - var $page = null; - var $count = null; - var $max_id = null; - var $since_id = null; - var $since = null; + var $format = null; + var $user = null; + var $auth_user = null; + var $page = null; + var $count = null; + var $max_id = null; + var $since_id = null; + var $since = null; /** * Initialization. @@ -190,13 +191,14 @@ class ApiAction extends Action $twitter_user['following'] = false; $twitter_user['notifications'] = false; - if (isset($apidata['user'])) { + if (isset($this->auth_user)) { - $twitter_user['following'] = $apidata['user']->isSubscribed($profile); + $twitter_user['following'] = $this->auth_user->isSubscribed($profile); // Notifications on? $sub = Subscription::pkeyGet(array('subscriber' => - $apidata['user']->id, 'subscribed' => $profile->id)); + $this->auth_user->id, + 'subscribed' => $profile->id)); if ($sub) { $twitter_user['notifications'] = ($sub->jabber || $sub->sms); diff --git a/lib/apiauth.php b/lib/apiauth.php index 0d1613d38..7102764cb 100644 --- a/lib/apiauth.php +++ b/lib/apiauth.php @@ -53,8 +53,6 @@ require_once INSTALLDIR . '/lib/api.php'; class ApiAuthAction extends ApiAction { - var $auth_user = null; - /** * Take arguments for running, and output basic auth header if needed * -- cgit v1.2.3-54-g00ecf From 9d2a605d0e02a4e7d61b62420d7847ee1e6fcbe1 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 14 Dec 2009 15:42:53 -0500 Subject: correct link for repeat attribution in noticelist --- lib/noticelist.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/noticelist.php b/lib/noticelist.php index a106478ed..85e1befcc 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -535,7 +535,7 @@ class NoticeListItem extends Widget $repeater = Profile::staticGet('id', $this->repeat->profile_id); - $attrs = array('href' => $this->profile->profileurl, + $attrs = array('href' => $repeater->profileurl, 'class' => 'url'); if (!empty($repeater->fullname)) { @@ -544,12 +544,12 @@ class NoticeListItem extends Widget $this->out->elementStart('span', 'repeat vcard'); - $this->out->elementStart('a', $attrs); - $this->out->raw(_('Repeated by')); $avatar = $repeater->getAvatar(AVATAR_MINI_SIZE); + $this->out->elementStart('a', $attrs); + $this->out->element('img', array('src' => ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_MINI_SIZE), -- cgit v1.2.3-54-g00ecf From 6ff13d6828d01a142b60b4254c07f6f9ad3f16ba Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 14 Dec 2009 16:10:16 -0500 Subject: move full-featured timeline to apitimelinehome.php --- actions/apitimelinefriends.php | 249 ----------------------------------------- actions/apitimelinehome.php | 249 +++++++++++++++++++++++++++++++++++++++++ lib/router.php | 5 +- 3 files changed, 252 insertions(+), 251 deletions(-) delete mode 100644 actions/apitimelinefriends.php create mode 100644 actions/apitimelinehome.php (limited to 'lib') diff --git a/actions/apitimelinefriends.php b/actions/apitimelinefriends.php deleted file mode 100644 index 09ba7a969..000000000 --- a/actions/apitimelinefriends.php +++ /dev/null @@ -1,249 +0,0 @@ -. - * - * @category API - * @package StatusNet - * @author Craig Andrews - * @author Evan Prodromou - * @author Jeffery To - * @author mac65 - * @author Mike Cochrane - * @author Robin Millette - * @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('STATUSNET')) { - exit(1); -} - -require_once INSTALLDIR . '/lib/apibareauth.php'; - -/** - * Returns the most recent notices (default 20) posted by the target user. - * This is the equivalent of 'You and friends' page accessed via Web. - * - * @category API - * @package StatusNet - * @author Craig Andrews - * @author Evan Prodromou - * @author Jeffery To - * @author mac65 - * @author Mike Cochrane - * @author Robin Millette - * @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/ - */ - -class ApiTimelineFriendsAction extends ApiBareAuthAction -{ - var $notices = null; - - /** - * Take arguments for running - * - * @param array $args $_REQUEST args - * - * @return boolean success flag - * - */ - - function prepare($args) - { - parent::prepare($args); - common_debug("api friends_timeline"); - $this->user = $this->getTargetUser($this->arg('id')); - - if (empty($this->user)) { - $this->clientError(_('No such user.'), 404, $this->format); - return; - } - - $this->notices = $this->getNotices(); - - return true; - } - - /** - * Handle the request - * - * Just show the notices - * - * @param array $args $_REQUEST data (unused) - * - * @return void - */ - - function handle($args) - { - parent::handle($args); - $this->showTimeline(); - } - - /** - * Show the timeline of notices - * - * @return void - */ - - function showTimeline() - { - $profile = $this->user->getProfile(); - $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); - $sitename = common_config('site', 'name'); - $title = sprintf(_("%s and friends"), $this->user->nickname); - $taguribase = common_config('integration', 'taguri'); - $id = "tag:$taguribase:FriendsTimeline:" . $this->user->id; - $link = common_local_url( - 'all', array('nickname' => $this->user->nickname) - ); - $subtitle = sprintf( - _('Updates from %1$s and friends on %2$s!'), - $this->user->nickname, $sitename - ); - $logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); - - switch($this->format) { - case 'xml': - $this->showXmlTimeline($this->notices); - break; - case 'rss': - $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); - break; - case 'atom': - - $target_id = $this->arg('id'); - - if (isset($target_id)) { - $selfuri = common_root_url() . - 'api/statuses/friends_timeline/' . - $target_id . '.atom'; - } else { - $selfuri = common_root_url() . - 'api/statuses/friends_timeline.atom'; - } - - $this->showAtomTimeline( - $this->notices, $title, $id, $link, - $subtitle, null, $selfuri, $logo - ); - break; - case 'json': - $this->showJsonTimeline($this->notices); - break; - default: - $this->clientError(_('API method not found!'), $code = 404); - break; - } - } - - /** - * Get notices - * - * @return array notices - */ - - function getNotices() - { - $notices = array(); - - if (!empty($this->auth_user) && $this->auth_user->id == $this->user->id) { - $notice = $this->user->noticeInbox( - ($this->page-1) * $this->count, - $this->count, $this->since_id, - $this->max_id, $this->since - ); - } else { - $notice = $this->user->noticesWithFriends( - ($this->page-1) * $this->count, - $this->count, $this->since_id, - $this->max_id, $this->since - ); - } - - while ($notice->fetch()) { - $notices[] = clone($notice); - } - - return $notices; - } - - /** - * Is this action read only? - * - * @param array $args other arguments - * - * @return boolean true - */ - - function isReadOnly($args) - { - return true; - } - - /** - * When was this feed last modified? - * - * @return string datestamp of the latest notice in the stream - */ - - function lastModified() - { - if (!empty($this->notices) && (count($this->notices) > 0)) { - return strtotime($this->notices[0]->created); - } - - return null; - } - - /** - * An entity tag for this stream - * - * Returns an Etag based on the action name, language, user ID, and - * timestamps of the first and last notice in the timeline - * - * @return string etag - */ - - function etag() - { - if (!empty($this->notices) && (count($this->notices) > 0)) { - - $last = count($this->notices) - 1; - - return '"' . implode( - ':', - array($this->arg('action'), - common_language(), - $this->user->id, - strtotime($this->notices[0]->created), - strtotime($this->notices[$last]->created)) - ) - . '"'; - } - - return null; - } - -} diff --git a/actions/apitimelinehome.php b/actions/apitimelinehome.php new file mode 100644 index 000000000..5f5ea37b1 --- /dev/null +++ b/actions/apitimelinehome.php @@ -0,0 +1,249 @@ +. + * + * @category API + * @package StatusNet + * @author Craig Andrews + * @author Evan Prodromou + * @author Jeffery To + * @author mac65 + * @author Mike Cochrane + * @author Robin Millette + * @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('STATUSNET')) { + exit(1); +} + +require_once INSTALLDIR . '/lib/apibareauth.php'; + +/** + * Returns the most recent notices (default 20) posted by the target user. + * This is the equivalent of 'You and friends' page accessed via Web. + * + * @category API + * @package StatusNet + * @author Craig Andrews + * @author Evan Prodromou + * @author Jeffery To + * @author mac65 + * @author Mike Cochrane + * @author Robin Millette + * @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/ + */ + +class ApiTimelineHomeAction extends ApiBareAuthAction +{ + var $notices = null; + + /** + * Take arguments for running + * + * @param array $args $_REQUEST args + * + * @return boolean success flag + * + */ + + function prepare($args) + { + parent::prepare($args); + common_debug("api home_timeline"); + $this->user = $this->getTargetUser($this->arg('id')); + + if (empty($this->user)) { + $this->clientError(_('No such user.'), 404, $this->format); + return; + } + + $this->notices = $this->getNotices(); + + return true; + } + + /** + * Handle the request + * + * Just show the notices + * + * @param array $args $_REQUEST data (unused) + * + * @return void + */ + + function handle($args) + { + parent::handle($args); + $this->showTimeline(); + } + + /** + * Show the timeline of notices + * + * @return void + */ + + function showTimeline() + { + $profile = $this->user->getProfile(); + $avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE); + $sitename = common_config('site', 'name'); + $title = sprintf(_("%s and friends"), $this->user->nickname); + $taguribase = common_config('integration', 'taguri'); + $id = "tag:$taguribase:HomeTimeline:" . $this->user->id; + $link = common_local_url( + 'all', array('nickname' => $this->user->nickname) + ); + $subtitle = sprintf( + _('Updates from %1$s and friends on %2$s!'), + $this->user->nickname, $sitename + ); + $logo = ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_PROFILE_SIZE); + + switch($this->format) { + case 'xml': + $this->showXmlTimeline($this->notices); + break; + case 'rss': + $this->showRssTimeline($this->notices, $title, $link, $subtitle, null, $logo); + break; + case 'atom': + + $target_id = $this->arg('id'); + + if (isset($target_id)) { + $selfuri = common_root_url() . + 'api/statuses/home_timeline/' . + $target_id . '.atom'; + } else { + $selfuri = common_root_url() . + 'api/statuses/home_timeline.atom'; + } + + $this->showAtomTimeline( + $this->notices, $title, $id, $link, + $subtitle, null, $selfuri, $logo + ); + break; + case 'json': + $this->showJsonTimeline($this->notices); + break; + default: + $this->clientError(_('API method not found!'), $code = 404); + break; + } + } + + /** + * Get notices + * + * @return array notices + */ + + function getNotices() + { + $notices = array(); + + if (!empty($this->auth_user) && $this->auth_user->id == $this->user->id) { + $notice = $this->user->noticeInbox( + ($this->page-1) * $this->count, + $this->count, $this->since_id, + $this->max_id, $this->since + ); + } else { + $notice = $this->user->noticesWithFriends( + ($this->page-1) * $this->count, + $this->count, $this->since_id, + $this->max_id, $this->since + ); + } + + while ($notice->fetch()) { + $notices[] = clone($notice); + } + + return $notices; + } + + /** + * Is this action read only? + * + * @param array $args other arguments + * + * @return boolean true + */ + + function isReadOnly($args) + { + return true; + } + + /** + * When was this feed last modified? + * + * @return string datestamp of the latest notice in the stream + */ + + function lastModified() + { + if (!empty($this->notices) && (count($this->notices) > 0)) { + return strtotime($this->notices[0]->created); + } + + return null; + } + + /** + * An entity tag for this stream + * + * Returns an Etag based on the action name, language, user ID, and + * timestamps of the first and last notice in the timeline + * + * @return string etag + */ + + function etag() + { + if (!empty($this->notices) && (count($this->notices) > 0)) { + + $last = count($this->notices) - 1; + + return '"' . implode( + ':', + array($this->arg('action'), + common_language(), + $this->user->id, + strtotime($this->notices[0]->created), + strtotime($this->notices[$last]->created)) + ) + . '"'; + } + + return null; + } + +} diff --git a/lib/router.php b/lib/router.php index 8f68f86ac..474e05996 100644 --- a/lib/router.php +++ b/lib/router.php @@ -283,12 +283,13 @@ class Router array('action' => 'ApiTimelineFriends', 'id' => '[a-zA-Z0-9]+', 'format' => '(xml|json|rss|atom)')); + $m->connect('api/statuses/home_timeline.:format', - array('action' => 'ApiTimelineFriends', + array('action' => 'ApiTimelineHome', 'format' => '(xml|json|rss|atom)')); $m->connect('api/statuses/home_timeline/:id.:format', - array('action' => 'ApiTimelineFriends', + array('action' => 'ApiTimelineHome', 'id' => '[a-zA-Z0-9]+', 'format' => '(xml|json|rss|atom)')); -- cgit v1.2.3-54-g00ecf From 9384a6e2429d8ef9a68185c869758b1e258092c1 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 14 Dec 2009 16:40:56 -0500 Subject: fix error with cached repeat of deleted original in api output --- lib/api.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/api.php b/lib/api.php index 0c6650111..833bc1c5f 100644 --- a/lib/api.php +++ b/lib/api.php @@ -224,9 +224,13 @@ class ApiAction extends Action return $base; } else { $original = Notice::staticGet('id', $notice->repeat_of); - $original_array = $this->twitterSimpleStatusArray($original, $include_user); - $original_array['retweeted_status'] = $base; - return $original_array; + if (empty($original)) { + return $base; + } else { + $original_array = $this->twitterSimpleStatusArray($original, $include_user); + $original_array['retweeted_status'] = $base; + return $original_array; + } } } -- cgit v1.2.3-54-g00ecf From d22364b35e33982b2f95146f9ac290a3606da28b Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 14 Dec 2009 17:11:34 -0500 Subject: had the order of and wrong in api output --- lib/api.php | 13 +++++-------- lib/noticelist.php | 6 ++++-- 2 files changed, 9 insertions(+), 10 deletions(-) (limited to 'lib') diff --git a/lib/api.php b/lib/api.php index 833bc1c5f..4ed49e452 100644 --- a/lib/api.php +++ b/lib/api.php @@ -220,18 +220,15 @@ class ApiAction extends Action { $base = $this->twitterSimpleStatusArray($notice, $include_user); - if (empty($notice->repeat_of)) { - return $base; - } else { + if (!empty($notice->repeat_of)) { $original = Notice::staticGet('id', $notice->repeat_of); - if (empty($original)) { - return $base; - } else { + if (!empty($original)) { $original_array = $this->twitterSimpleStatusArray($original, $include_user); - $original_array['retweeted_status'] = $base; - return $original_array; + $base['retweeted_status'] = $original_array; } } + + return $base; } function twitterSimpleStatusArray($notice, $include_user=true) diff --git a/lib/noticelist.php b/lib/noticelist.php index 85e1befcc..3ccb50230 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -601,11 +601,13 @@ class NoticeListItem extends Widget { $user = common_current_user(); + $todel = (empty($this->repeat)) ? $this->notice : $this->repeat; + if (!empty($user) && - ($this->notice->profile_id == $user->id || $user->hasRight(Right::DELETEOTHERSNOTICE))) { + ($todel->profile_id == $user->id || $user->hasRight(Right::DELETEOTHERSNOTICE))) { $deleteurl = common_local_url('deletenotice', - array('notice' => $this->notice->id)); + array('notice' => $todel->id)); $this->out->element('a', array('href' => $deleteurl, 'class' => 'notice_delete', 'title' => _('Delete this notice')), _('Delete')); -- cgit v1.2.3-54-g00ecf From 607e98ee11f01a72a6ea7d755ce0f2dee68ff74a Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 14 Dec 2009 17:48:14 -0500 Subject: make sure id of
  • in notice list is unique --- lib/noticelist.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/noticelist.php b/lib/noticelist.php index 3ccb50230..dd0a361c0 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -243,8 +243,9 @@ class NoticeListItem extends Widget { // XXX: RDFa // TODO: add notice_type class e.g., notice_video, notice_image + $id = (empty($this->repeat)) ? $this->notice->id : $this->repeat->id; $this->out->elementStart('li', array('class' => 'hentry notice', - 'id' => 'notice-' . $this->notice->id)); + 'id' => 'notice-' . $id)); } /** -- cgit v1.2.3-54-g00ecf From f8b187d5a4ac5eab1f025d61e30d5244cef6123d Mon Sep 17 00:00:00 2001 From: Sarven Capadisli Date: Mon, 14 Dec 2009 18:09:08 -0500 Subject: Initial representation for repeated notice --- actions/repeat.php | 4 +++- lib/noticelist.php | 4 +++- theme/base/css/display.css | 15 +++++++++------ theme/base/images/icons/icons-01.gif | Bin 3154 -> 3201 bytes theme/base/images/icons/twotone/green/recycle-02.gif | Bin 0 -> 77 bytes theme/default/css/display.css | 6 +++++- theme/identica/css/display.css | 6 +++++- 7 files changed, 25 insertions(+), 10 deletions(-) create mode 100644 theme/base/images/icons/twotone/green/recycle-02.gif (limited to 'lib') diff --git a/actions/repeat.php b/actions/repeat.php index a1c5f443f..38d6efa6c 100644 --- a/actions/repeat.php +++ b/actions/repeat.php @@ -112,7 +112,9 @@ class RepeatAction extends Action $this->element('title', null, _('Repeated')); $this->elementEnd('head'); $this->elementStart('body'); - $this->element('p', array('id' => 'repeat_response'), _('Repeated!')); + $this->element('p', array('id' => 'repeat_response', + 'class' => 'repeated'), + _('Repeated!')); $this->elementEnd('body'); $this->elementEnd('html'); } else { diff --git a/lib/noticelist.php b/lib/noticelist.php index dd0a361c0..2165222ee 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -627,7 +627,9 @@ class NoticeListItem extends Widget if ($user && $user->id != $this->notice->profile_id) { $profile = $user->getProfile(); if ($profile->hasRepeated($this->notice->id)) { - $this->out->text(_('Repeated')); + $this->out->element('span', array('class' => 'repeated', + 'title' => _('Notice repeated')), + _('Repeated')); } else { $rf = new RepeatForm($this->out, $this->notice); $rf->show(); diff --git a/theme/base/css/display.css b/theme/base/css/display.css index 0173d2fbb..2f4636391 100644 --- a/theme/base/css/display.css +++ b/theme/base/css/display.css @@ -964,7 +964,7 @@ float:left; font-size:0.95em; margin-left:59px; min-width:60%; -max-width:74%; +max-width:70%; } #showstream .notice div.entry-content, #shownotice .notice div.entry-content { @@ -996,7 +996,7 @@ left:0; .notice-options { position:relative; font-size:0.95em; -width:90px; +width:125px; float:right; } @@ -1007,16 +1007,18 @@ float:left; .notice-options .notice_reply, .notice-options .form_repeat, .notice-options .form_favor, -.notice-options .form_disfavor { +.notice-options .form_disfavor, +.notice-options .repeated { float:left; -margin-left:20%; +margin-left:14%; } .notice-options .form_favor, .notice-options .form_disfavor { margin-left:0; } .notice-options input, -.notice-options a { +.notice-options a, +.notice-options .repeated { text-indent:-9999px; outline:none; } @@ -1047,7 +1049,8 @@ display:none; border:0; padding:0; } -.notice-options a { +.notice-options a, +.notice-options .repeated { width:16px; height:16px; } diff --git a/theme/base/images/icons/icons-01.gif b/theme/base/images/icons/icons-01.gif index 5909d7b19..417327881 100644 Binary files a/theme/base/images/icons/icons-01.gif and b/theme/base/images/icons/icons-01.gif differ diff --git a/theme/base/images/icons/twotone/green/recycle-02.gif b/theme/base/images/icons/twotone/green/recycle-02.gif new file mode 100644 index 000000000..060a8c72f Binary files /dev/null and b/theme/base/images/icons/twotone/green/recycle-02.gif differ diff --git a/theme/default/css/display.css b/theme/default/css/display.css index e0dda3de2..f1d9a9d0b 100644 --- a/theme/default/css/display.css +++ b/theme/default/css/display.css @@ -173,7 +173,8 @@ button.close, .entity_moderation p, .entity_sandbox input.submit, .entity_silence input.submit, -.entity_delete input.submit { +.entity_delete input.submit, +.notice-options .repeated { background-image:url(../../base/images/icons/icons-01.gif); background-repeat:no-repeat; background-color:transparent; @@ -338,6 +339,9 @@ background-position:0 -658px; .notice-options form.form_repeat input.submit { background-position:0 -1582px; } +.notice-options .repeated { +background-position:0 -1648px; +} .notices div.entry-content, .notices div.notice-options { diff --git a/theme/identica/css/display.css b/theme/identica/css/display.css index 999af973c..aa02070ac 100644 --- a/theme/identica/css/display.css +++ b/theme/identica/css/display.css @@ -173,7 +173,8 @@ button.close, .entity_moderation p, .entity_sandbox input.submit, .entity_silence input.submit, -.entity_delete input.submit { +.entity_delete input.submit, +.notice-options .repeated { background-image:url(../../base/images/icons/icons-01.gif); background-repeat:no-repeat; background-color:transparent; @@ -337,6 +338,9 @@ background-position:0 -658px; .notice-options form.form_repeat input.submit { background-position:0 -1582px; } +.notice-options .repeated { +background-position:0 -1648px; +} .notices div.entry-content, .notices div.notice-options { -- cgit v1.2.3-54-g00ecf From 43ee2ec42f09da0748a1835c6d6d06e04e178de8 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 14 Dec 2009 18:09:30 -0500 Subject: default for login command is disabled --- lib/default.php | 2 ++ 1 file changed, 2 insertions(+) (limited to 'lib') diff --git a/lib/default.php b/lib/default.php index ebb6f8d01..42d4623b1 100644 --- a/lib/default.php +++ b/lib/default.php @@ -229,4 +229,6 @@ $default = array('namespace' => 1), // 1 = geonames, 2 = Yahoo Where on Earth 'omb' => array('timeout' => 5), // HTTP request timeout in seconds when contacting remote hosts for OMB updates + 'logincommand' => + array('disabled' => true), ); -- cgit v1.2.3-54-g00ecf From 19bb9a04d171fe2a8d87a51c0267c5670cb0f5bf Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 15 Dec 2009 10:18:27 -0500 Subject: add mail notification for dm command results --- lib/command.php | 1 + 1 file changed, 1 insertion(+) (limited to 'lib') diff --git a/lib/command.php b/lib/command.php index 222bd7683..b30780bfb 100644 --- a/lib/command.php +++ b/lib/command.php @@ -372,6 +372,7 @@ class MessageCommand extends Command } $message = Message::saveNew($this->user->id, $other->id, $this->text, $channel->source()); if ($message) { + mail_notify_message($message, $this->user, $other); $channel->output($this->user, sprintf(_('Direct message to %s sent'), $this->other)); } else { $channel->error($this->user, _('Error sending direct message.')); -- cgit v1.2.3-54-g00ecf From 797a0d79fbf4e105ee4ccdce093c1595c1f08a4a Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 15 Dec 2009 10:31:25 -0500 Subject: create a method for notification for new messages, and use it --- actions/apidirectmessagenew.php | 2 +- actions/newmessage.php | 8 +------- classes/Message.php | 8 ++++++++ lib/command.php | 2 +- 4 files changed, 11 insertions(+), 9 deletions(-) (limited to 'lib') diff --git a/actions/apidirectmessagenew.php b/actions/apidirectmessagenew.php index e6c39ce4a..b9ac92d77 100644 --- a/actions/apidirectmessagenew.php +++ b/actions/apidirectmessagenew.php @@ -175,7 +175,7 @@ class ApiDirectMessageNewAction extends ApiAuthAction return; } - mail_notify_message($message, $this->user, $this->other); + $message->notify(); if ($this->format == 'xml') { $this->showSingleXmlDirectMessage($message); diff --git a/actions/newmessage.php b/actions/newmessage.php index 0db2e7181..350452091 100644 --- a/actions/newmessage.php +++ b/actions/newmessage.php @@ -173,7 +173,7 @@ class NewmessageAction extends Action return; } - $this->notify($user, $this->other, $message); + $message->notify(); if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); @@ -247,12 +247,6 @@ class NewmessageAction extends Action } } - function notify($from, $to, $message) - { - mail_notify_message($message, $from, $to); - // XXX: Jabber, SMS notifications... probably queued - } - // Do nothing (override) function showNoticeForm() diff --git a/classes/Message.php b/classes/Message.php index 718a9d922..16d0c60b3 100644 --- a/classes/Message.php +++ b/classes/Message.php @@ -89,4 +89,12 @@ class Message extends Memcached_DataObject $contentlimit = self::maxContent(); return ($contentlimit > 0 && !empty($content) && (mb_strlen($content) > $contentlimit)); } + + function notify() + { + $from = User::staticGet('id', $this->from_profile); + $to = User::staticGet('id', $this->to_profile); + + mail_notify_message($this, $from, $to); + } } diff --git a/lib/command.php b/lib/command.php index b30780bfb..67140c348 100644 --- a/lib/command.php +++ b/lib/command.php @@ -372,7 +372,7 @@ class MessageCommand extends Command } $message = Message::saveNew($this->user->id, $other->id, $this->text, $channel->source()); if ($message) { - mail_notify_message($message, $this->user, $other); + $message->notify(); $channel->output($this->user, sprintf(_('Direct message to %s sent'), $this->other)); } else { $channel->error($this->user, _('Error sending direct message.')); -- cgit v1.2.3-54-g00ecf From 608d1b206a01e1bd97e286a1003030ce89370913 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 15 Dec 2009 16:08:44 -0500 Subject: Don't show repeater avatar in notice lists --- lib/noticelist.php | 11 ----------- plugins/Realtime/realtimeupdate.js | 1 - 2 files changed, 12 deletions(-) (limited to 'lib') diff --git a/lib/noticelist.php b/lib/noticelist.php index 2165222ee..4c11ceed6 100644 --- a/lib/noticelist.php +++ b/lib/noticelist.php @@ -551,17 +551,6 @@ class NoticeListItem extends Widget $this->out->elementStart('a', $attrs); - $this->out->element('img', array('src' => ($avatar) ? - $avatar->displayUrl() : - Avatar::defaultImage(AVATAR_MINI_SIZE), - 'class' => 'avatar photo', - 'width' => AVATAR_MINI_SIZE, - 'height' => AVATAR_MINI_SIZE, - 'alt' => - ($repeater->fullname) ? - $repeater->fullname : - $repeater->nickname)); - $this->out->element('span', 'nickname', $repeater->nickname); $this->out->elementEnd('a'); diff --git a/plugins/Realtime/realtimeupdate.js b/plugins/Realtime/realtimeupdate.js index 18f00f22a..b57451e20 100644 --- a/plugins/Realtime/realtimeupdate.js +++ b/plugins/Realtime/realtimeupdate.js @@ -159,7 +159,6 @@ RealtimeUpdate = { ru = repeat['user']; ni = ni + "Repeated by " + "" + - "\""" + ""+ ru['screen_name'] + ""; } -- cgit v1.2.3-54-g00ecf