From ef638b0f22e19e97cfac9fa00e19e75d51f1e05e Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 16 Mar 2011 22:30:31 -0400 Subject: [PATCH 01/90] Add scope bitmap for notices --- classes/Notice.php | 1 + classes/statusnet.ini | 1 + db/core.php | 3 +++ 3 files changed, 5 insertions(+) diff --git a/classes/Notice.php b/classes/Notice.php index 664e5dab9f..36686f6f2d 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -73,6 +73,7 @@ class Notice extends Memcached_DataObject public $location_ns; // int(4) public $repeat_of; // int(4) public $object_type; // varchar(255) + public $scope; // int(4) /* Static get */ function staticGet($k,$v=NULL) diff --git a/classes/statusnet.ini b/classes/statusnet.ini index 338e5c5aea..b598f9fc68 100644 --- a/classes/statusnet.ini +++ b/classes/statusnet.ini @@ -337,6 +337,7 @@ location_id = 1 location_ns = 1 repeat_of = 1 object_type = 2 +scope = 1 [notice__keys] id = N diff --git a/db/core.php b/db/core.php index 16a59462d4..4881cc0fff 100644 --- a/db/core.php +++ b/db/core.php @@ -202,6 +202,9 @@ $schema['notice'] = array( 'location_ns' => array('type' => 'int', 'description' => 'namespace for location'), 'repeat_of' => array('type' => 'int', 'description' => 'notice this is a repeat of'), 'object_type' => array('type' => 'varchar', 'length' => 255, 'description' => 'URI representing activity streams object type', 'default' => 'http://activitystrea.ms/schema/1.0/note'), + 'scope' => array('type' => 'int', + 'default' => '1', + 'description' => 'bit map for distribution scope; 0 = everywhere; 1 = this server only; 2 = addressees; 4 = followers'), ), 'primary key' => array('id'), 'unique keys' => array( From b8735f49117f6e03b9d611e98bb5d82a43d19f00 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 16 Mar 2011 22:54:57 -0400 Subject: [PATCH 02/90] add scope flags for Notice --- classes/Notice.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/classes/Notice.php b/classes/Notice.php index 36686f6f2d..a4dcc10f5a 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -90,6 +90,10 @@ class Notice extends Memcached_DataObject const LOCAL_NONPUBLIC = -1; const GATEWAY = -2; + const SITE_SCOPE = 1; + const ADDRESSEE_SCOPE = 2; + const FOLLOWER_SCOPE = 4; + function getProfile() { $profile = Profile::staticGet('id', $this->profile_id); From 9af92f94bded2ee788785519f957756738e00738 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 16 Mar 2011 22:55:14 -0400 Subject: [PATCH 03/90] function for checking scope rules for Profile --- classes/Profile.php | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/classes/Profile.php b/classes/Profile.php index 88edf5cbb3..ba7d6296f8 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -1076,4 +1076,44 @@ class Profile extends Memcached_DataObject return $profile; } + + function canRead(Notice $notice) + { + if ($notice->scope & Notice::SITE_SCOPE) { + $user = $this->getUser(); + if (empty($user)) { + return false; + } + } + + if ($notice->scope & Notice::ADDRESSEE_SCOPE) { + $replies = $notice->getReplies(); + + if (!in_array($this->id, $replies)) { + $groups = $notice->getGroups(); + + $foundOne = false; + + foreach ($groups as $group) { + if ($this->isMember($group)) { + $foundOne = true; + break; + } + } + + if (!$foundOne) { + return false; + } + } + } + + if ($notice->scope & Notice::FOLLOWER_SCOPE) { + $author = $notice->getProfile(); + if (!Subscription::exists($this, $author)) { + return false; + } + } + + return true; + } } From 83fb5e60235b7cc5acbb01f1c4f398b131d2bbae Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 22 Mar 2011 11:54:23 -0400 Subject: [PATCH 04/90] Mass replacement of #-comments with //-comments like leprous boils in our code. So, I've replaced all of them with // comments instead. It's a massive, meaningless, and potentially buggy change -- great one for the middle of a release cycle, eh? --- actions/invite.php | 2 +- actions/passwordsettings.php | 2 +- actions/publictagcloud.php | 2 +- actions/recoverpassword.php | 24 +++++++-------- actions/sup.php | 4 +-- actions/userrss.php | 2 +- classes/Avatar.php | 2 +- classes/Foreign_link.php | 2 +- classes/Foreign_user.php | 2 +- classes/Memcached_DataObject.php | 2 +- classes/Notice.php | 20 ++++++------- classes/Oauth_application_user.php | 2 +- classes/Profile.php | 4 +-- classes/Profile_tag.php | 8 ++--- classes/Queue_item.php | 6 ++-- classes/Subscription.php | 6 ++-- classes/User_group.php | 4 +-- lib/apiaction.php | 8 ++--- lib/channel.php | 6 ++-- lib/framework.php | 4 +-- lib/galleryaction.php | 2 +- lib/grouplist.php | 6 ++-- lib/mailhandler.php | 4 +-- lib/oauthstore.php | 4 +-- lib/ping.php | 2 +- lib/rssaction.php | 8 ++--- lib/util.php | 12 ++++---- plugins/Enjit/enjitqueuehandler.php | 4 +-- plugins/Irc/Irc_waiting_message.php | 6 ++-- plugins/Msn/msn_waiting_message.php | 6 ++-- plugins/OpenID/finishopenidlogin.php | 44 ++++++++++++++-------------- plugins/OpenID/openid.php | 18 ++++++------ plugins/Xmpp/xmppmanager.php | 2 +- scripts/allsites.php | 2 +- scripts/console.php | 2 +- scripts/fixup_hashtags.php | 2 +- scripts/fixup_inboxes.php | 2 +- scripts/fixup_notices_rendered.php | 2 +- scripts/fixup_replies.php | 2 +- scripts/fixup_utf8.php | 2 +- scripts/make-release.php | 2 +- scripts/setconfig.php | 2 +- scripts/useremail.php | 4 +-- 43 files changed, 126 insertions(+), 126 deletions(-) diff --git a/actions/invite.php b/actions/invite.php index c64ff8adda..bbb6b26c11 100644 --- a/actions/invite.php +++ b/actions/invite.php @@ -54,7 +54,7 @@ class InviteAction extends CurrentUserDesignAction function sendInvitations() { - # CSRF protection + // CSRF protection $token = $this->trimmed('token'); if (!$token || $token != common_session_token()) { $this->showForm(_('There was a problem with your session token. Try again, please.')); diff --git a/actions/passwordsettings.php b/actions/passwordsettings.php index 465cb558a4..d9a6d32ae0 100644 --- a/actions/passwordsettings.php +++ b/actions/passwordsettings.php @@ -156,7 +156,7 @@ class PasswordsettingsAction extends SettingsAction $newpassword = $this->arg('newpassword'); $confirm = $this->arg('confirm'); - # Some validation + // Some validation if (strlen($newpassword) < 6) { // TRANS: Form validation error on page where to change password. diff --git a/actions/publictagcloud.php b/actions/publictagcloud.php index 1432ca66a8..db8185bb13 100644 --- a/actions/publictagcloud.php +++ b/actions/publictagcloud.php @@ -100,7 +100,7 @@ class PublictagcloudAction extends Action function showContent() { - # This should probably be cached rather than recalculated + // This should probably be cached rather than recalculated $tags = new Notice_tag(); #Need to clear the selection and then only re-add the field diff --git a/actions/recoverpassword.php b/actions/recoverpassword.php index e30bf7af2e..71f673bd3b 100644 --- a/actions/recoverpassword.php +++ b/actions/recoverpassword.php @@ -19,7 +19,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } -# You have 24 hours to claim your password +// You have 24 hours to claim your password define('MAX_RECOVERY_TIME', 24 * 60 * 60); @@ -81,7 +81,7 @@ class RecoverpasswordAction extends Action $touched = strtotime($confirm->modified); $email = $confirm->address; - # Burn this code + // Burn this code $result = $confirm->delete(); @@ -92,8 +92,8 @@ class RecoverpasswordAction extends Action return; } - # These should be reaped, but for now we just check mod time - # Note: it's still deleted; let's avoid a second attempt! + // These should be reaped, but for now we just check mod time + // Note: it's still deleted; let's avoid a second attempt! if ((time() - $touched) > MAX_RECOVERY_TIME) { common_log(LOG_WARNING, @@ -105,8 +105,8 @@ class RecoverpasswordAction extends Action return; } - # If we used an outstanding confirmation to send the email, - # it's been confirmed at this point. + // If we used an outstanding confirmation to send the email, + // it's been confirmed at this point. if (!$user->email) { $orig = clone($user); @@ -120,7 +120,7 @@ class RecoverpasswordAction extends Action } } - # Success! + // Success! $this->setTempUser($user); $this->showPasswordForm(); @@ -289,7 +289,7 @@ class RecoverpasswordAction extends Action } } - # See if it's an unconfirmed email address + // See if it's an unconfirmed email address if (!$user) { // Warning: it may actually be legit to have multiple folks @@ -314,7 +314,7 @@ class RecoverpasswordAction extends Action return; } - # Try to get an unconfirmed email address if they used a user name + // Try to get an unconfirmed email address if they used a user name if (!$user->email && !$confirm_email) { $confirm_email = new Confirm_address(); @@ -332,7 +332,7 @@ class RecoverpasswordAction extends Action return; } - # Success! We have a valid user and a confirmed or unconfirmed email address + // Success! We have a valid user and a confirmed or unconfirmed email address $confirm = new Confirm_address(); $confirm->code = common_confirmation_code(128); @@ -380,7 +380,7 @@ class RecoverpasswordAction extends Action function resetPassword() { - # CSRF protection + // CSRF protection $token = $this->trimmed('token'); if (!$token || $token != common_session_token()) { // TRANS: Form validation error message. @@ -410,7 +410,7 @@ class RecoverpasswordAction extends Action return; } - # OK, we're ready to go + // OK, we're ready to go $original = clone($user); diff --git a/actions/sup.php b/actions/sup.php index c4da9d3db6..911f0d9e55 100644 --- a/actions/sup.php +++ b/actions/sup.php @@ -61,8 +61,8 @@ class SupAction extends Action { $notice = new Notice(); - # XXX: cache this. Depends on how big this protocol becomes; - # Re-doing this query every 15 seconds isn't the end of the world. + // XXX: cache this. Depends on how big this protocol becomes; + // Re-doing this query every 15 seconds isn't the end of the world. $divider = common_sql_date(time() - $seconds); diff --git a/actions/userrss.php b/actions/userrss.php index b7078fcaf8..ba9f64f8ac 100644 --- a/actions/userrss.php +++ b/actions/userrss.php @@ -112,7 +112,7 @@ class UserrssAction extends Rss10Action return ($avatar) ? $avatar->url : null; } - # override parent to add X-SUP-ID URL + // override parent to add X-SUP-ID URL function initRss($limit=0) { diff --git a/classes/Avatar.php b/classes/Avatar.php index 6edc817685..34ec4a3caf 100644 --- a/classes/Avatar.php +++ b/classes/Avatar.php @@ -27,7 +27,7 @@ class Avatar extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - # We clean up the file, too + // We clean up the file, too function delete() { diff --git a/classes/Foreign_link.php b/classes/Foreign_link.php index 60db51595e..57a10dcedb 100644 --- a/classes/Foreign_link.php +++ b/classes/Foreign_link.php @@ -91,7 +91,7 @@ class Foreign_link extends Memcached_DataObject $this->profilesync = 0; } - # Convenience methods + // Convenience methods function getForeignUser() { $fuser = new Foreign_user(); diff --git a/classes/Foreign_user.php b/classes/Foreign_user.php index 8e6e0b33e0..82ca749a59 100644 --- a/classes/Foreign_user.php +++ b/classes/Foreign_user.php @@ -65,7 +65,7 @@ class Foreign_user extends Memcached_DataObject } } if (count($parts) == 0) { - # No changes + // No changes return true; } $toupdate = implode(', ', $parts); diff --git a/classes/Memcached_DataObject.php b/classes/Memcached_DataObject.php index 97f793f4d8..59809dc8f7 100644 --- a/classes/Memcached_DataObject.php +++ b/classes/Memcached_DataObject.php @@ -34,7 +34,7 @@ class Memcached_DataObject extends Safe_DataObject { if (is_null($v)) { $v = $k; - # XXX: HACK! + // XXX: HACK! $i = new $cls; $keys = $i->keys(); $k = $keys[0]; diff --git a/classes/Notice.php b/classes/Notice.php index a158a4930d..b228a49c7c 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -312,7 +312,7 @@ class Notice extends Memcached_DataObject $autosource = common_config('public', 'autosource'); - # Sandboxed are non-false, but not 1, either + // Sandboxed are non-false, but not 1, either if (!$profile->hasRight(Right::PUBLICNOTICE) || ($source && $autosource && in_array($source, $autosource))) { @@ -410,8 +410,8 @@ class Notice extends Memcached_DataObject } - # Clear the cache for subscribed users, so they'll update at next request - # XXX: someone clever could prepend instead of clearing the cache + // Clear the cache for subscribed users, so they'll update at next request + // XXX: someone clever could prepend instead of clearing the cache $notice->blowOnInsert(); @@ -559,8 +559,8 @@ class Notice extends Memcached_DataObject } } } - # If we get here, oldest item in cache window is not - # old enough for dupe limit; do direct check against DB + // If we get here, oldest item in cache window is not + // old enough for dupe limit; do direct check against DB $notice = new Notice(); $notice->profile_id = $profile_id; $notice->content = $content; @@ -576,16 +576,16 @@ class Notice extends Memcached_DataObject if (empty($profile)) { return false; } - # Get the Nth notice + // Get the Nth notice $notice = $profile->getNotices(common_config('throttle', 'count') - 1, 1); if ($notice && $notice->fetch()) { - # If the Nth notice was posted less than timespan seconds ago + // If the Nth notice was posted less than timespan seconds ago if (time() - strtotime($notice->created) <= common_config('throttle', 'timespan')) { - # Then we throttle + // Then we throttle return false; } } - # Either not N notices in the stream, OR the Nth was not posted within timespan seconds + // Either not N notices in the stream, OR the Nth was not posted within timespan seconds return true; } @@ -695,7 +695,7 @@ class Notice extends Memcached_DataObject if (common_config('public', 'localonly')) { $notice->whereAdd('is_local = ' . Notice::LOCAL_PUBLIC); } else { - # -1 == blacklisted, -2 == gateway (i.e. Twitter) + // -1 == blacklisted, -2 == gateway (i.e. Twitter) $notice->whereAdd('is_local !='. Notice::LOCAL_NONPUBLIC); $notice->whereAdd('is_local !='. Notice::GATEWAY); } diff --git a/classes/Oauth_application_user.php b/classes/Oauth_application_user.php index e1b4b8c046..834e38d2be 100644 --- a/classes/Oauth_application_user.php +++ b/classes/Oauth_application_user.php @@ -51,7 +51,7 @@ class Oauth_application_user extends Memcached_DataObject } } if (count($parts) == 0) { - # No changes + // No changes return true; } $toupdate = implode(', ', $parts); diff --git a/classes/Profile.php b/classes/Profile.php index 126bc25a66..9566226951 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -93,7 +93,7 @@ class Profile extends Memcached_DataObject $avatar->url = Avatar::url($filename); $avatar->created = DB_DataObject_Cast::dateTime(); # current time - # XXX: start a transaction here + // XXX: start a transaction here if (!$this->delete_avatars() || !$avatar->insert()) { @unlink(Avatar::path($filename)); @@ -101,7 +101,7 @@ class Profile extends Memcached_DataObject } foreach (array(AVATAR_PROFILE_SIZE, AVATAR_STREAM_SIZE, AVATAR_MINI_SIZE) as $size) { - # We don't do a scaled one if original is our scaled size + // We don't do a scaled one if original is our scaled size if (!($avatar->width == $size && $avatar->height == $size)) { $scaled_filename = $imagefile->resize($size); diff --git a/classes/Profile_tag.php b/classes/Profile_tag.php index ab6bab0964..bd45ce0b45 100644 --- a/classes/Profile_tag.php +++ b/classes/Profile_tag.php @@ -25,7 +25,7 @@ class Profile_tag extends Memcached_DataObject static function getTags($tagger, $tagged) { $tags = array(); - # XXX: store this in memcached + // XXX: store this in memcached $profile_tag = new Profile_tag(); $profile_tag->tagger = $tagger; @@ -46,11 +46,11 @@ class Profile_tag extends Memcached_DataObject $newtags = array_unique($newtags); $oldtags = Profile_tag::getTags($tagger, $tagged); - # Delete stuff that's old that not in new + // Delete stuff that's old that not in new $to_delete = array_diff($oldtags, $newtags); - # Insert stuff that's in new and not in old + // Insert stuff that's in new and not in old $to_insert = array_diff($newtags, $oldtags); @@ -84,7 +84,7 @@ class Profile_tag extends Memcached_DataObject return true; } - # Return profiles with a given tag + // Return profiles with a given tag static function getTagged($tagger, $tag) { $profile = new Profile(); $profile->query('SELECT profile.* ' . diff --git a/classes/Queue_item.php b/classes/Queue_item.php index 007d4ed232..d17e512b96 100644 --- a/classes/Queue_item.php +++ b/classes/Queue_item.php @@ -46,9 +46,9 @@ class Queue_item extends Memcached_DataObject $cnt = $qi->find(true); if ($cnt) { - # XXX: potential race condition - # can we force it to only update if claimed is still null - # (or old)? + // XXX: potential race condition + // can we force it to only update if claimed is still null + // (or old)? common_log(LOG_INFO, 'claiming queue item id = ' . $qi->id . ' for transport ' . $qi->transport); $orig = clone($qi); diff --git a/classes/Subscription.php b/classes/Subscription.php index 1d4f37929b..797e6fef1c 100644 --- a/classes/Subscription.php +++ b/classes/Subscription.php @@ -146,9 +146,9 @@ class Subscription extends Memcached_DataObject function notify() { - # XXX: add other notifications (Jabber, SMS) here - # XXX: queue this and handle it offline - # XXX: Whatever happens, do it in Twitter-like API, too + // XXX: add other notifications (Jabber, SMS) here + // XXX: queue this and handle it offline + // XXX: Whatever happens, do it in Twitter-like API, too $this->notifyEmail(); } diff --git a/classes/User_group.php b/classes/User_group.php index c044594f1f..707acbd13c 100644 --- a/classes/User_group.php +++ b/classes/User_group.php @@ -306,11 +306,11 @@ class User_group extends Memcached_DataObject $oldaliases = $this->getAliases(); - # Delete stuff that's old that not in new + // Delete stuff that's old that not in new $to_delete = array_diff($oldaliases, $newaliases); - # Insert stuff that's in new and not in old + // Insert stuff that's in new and not in old $to_insert = array_diff($newaliases, $oldaliases); diff --git a/lib/apiaction.php b/lib/apiaction.php index ebda36db7f..3b3ece17cd 100644 --- a/lib/apiaction.php +++ b/lib/apiaction.php @@ -292,7 +292,7 @@ class ApiAction extends Action if ($get_notice) { $notice = $profile->getCurrentNotice(); if ($notice) { - # don't get user! + // don't get user! $twitter_user['status'] = $this->twitterStatusArray($notice, false); } } @@ -397,7 +397,7 @@ class ApiAction extends Action } if ($include_user && $profile) { - # Don't get notice (recursive!) + // Don't get notice (recursive!) $twitter_user = $this->twitterUserArray($profile, false); $twitter_status['user'] = $twitter_user; } @@ -698,7 +698,7 @@ class ApiAction extends Action $this->element('guid', null, $entry['guid']); $this->element('link', null, $entry['link']); - # RSS only supports 1 enclosure per item + // RSS only supports 1 enclosure per item if(array_key_exists('enclosures', $entry) and !empty($entry['enclosures'])){ $enclosure = $entry['enclosures'][0]; $this->element('enclosure', array('url'=>$enclosure['url'],'type'=>$enclosure['mimetype'],'length'=>$enclosure['size']), null); @@ -833,7 +833,7 @@ class ApiAction extends Action } if (!is_null($suplink)) { - # For FriendFeed's SUP protocol + // For FriendFeed's SUP protocol $this->element('link', array('rel' => 'http://api.friendfeed.com/2008/03#sup', 'href' => $suplink, 'type' => 'application/json')); diff --git a/lib/channel.php b/lib/channel.php index ae9b2d214f..e5e8eaa0f5 100644 --- a/lib/channel.php +++ b/lib/channel.php @@ -95,9 +95,9 @@ class WebChannel extends Channel function output($user, $text) { - # XXX: buffer all output and send it at the end - # XXX: even better, redirect to appropriate page - # depending on what command was run + // XXX: buffer all output and send it at the end + // XXX: even better, redirect to appropriate page + // depending on what command was run $this->out->startHTML(); $this->out->elementStart('head'); // TRANS: Title for command results. diff --git a/lib/framework.php b/lib/framework.php index da96c8e1d4..d85b99f5c8 100644 --- a/lib/framework.php +++ b/lib/framework.php @@ -48,7 +48,7 @@ define('NOTICE_INBOX_SOURCE_REPLY', 3); define('NOTICE_INBOX_SOURCE_FORWARD', 4); define('NOTICE_INBOX_SOURCE_GATEWAY', -1); -# append our extlib dir as the last-resort place to find libs +// append our extlib dir as the last-resort place to find libs set_include_path(get_include_path() . PATH_SEPARATOR . INSTALLDIR . '/extlib/'); @@ -69,7 +69,7 @@ if (!function_exists('dl')) { } } -# global configuration object +// global configuration object require_once('PEAR.php'); require_once('PEAR/Exception.php'); diff --git a/lib/galleryaction.php b/lib/galleryaction.php index 3db46dd09c..275a7bb57b 100644 --- a/lib/galleryaction.php +++ b/lib/galleryaction.php @@ -84,7 +84,7 @@ class GalleryAction extends OwnerDesignAction { parent::handle($args); - # Post from the tag dropdown; redirect to a GET + // Post from the tag dropdown; redirect to a GET if ($_SERVER['REQUEST_METHOD'] == 'POST') { common_redirect($this->selfUrl(), 303); diff --git a/lib/grouplist.php b/lib/grouplist.php index 854bc34e2c..34a43e61ae 100644 --- a/lib/grouplist.php +++ b/lib/grouplist.php @@ -137,7 +137,7 @@ class GroupList extends Widget $this->out->elementEnd('p'); } - # If we're on a list with an owner (subscriptions or subscribers)... + // If we're on a list with an owner (subscriptions or subscribers)... if (!empty($user) && !empty($this->owner) && $user->id == $this->owner->id) { $this->showOwnerControls(); @@ -149,8 +149,8 @@ class GroupList extends Widget $this->out->elementStart('div', 'entity_actions'); $this->out->elementStart('ul'); $this->out->elementStart('li', 'entity_subscribe'); - # XXX: special-case for user looking at own - # subscriptions page + // XXX: special-case for user looking at own + // subscriptions page if ($user->isMember($this->group)) { $lf = new LeaveForm($this->out, $this->group); $lf->show(); diff --git a/lib/mailhandler.php b/lib/mailhandler.php index 459657ffe0..bbeb69a8f9 100644 --- a/lib/mailhandler.php +++ b/lib/mailhandler.php @@ -21,8 +21,8 @@ require_once(INSTALLDIR . '/lib/mail.php'); require_once(INSTALLDIR . '/lib/mediafile.php'); require_once('Mail/mimeDecode.php'); -# FIXME: we use both Mail_mimeDecode and mailparse -# Need to move everything to mailparse +// FIXME: we use both Mail_mimeDecode and mailparse +// Need to move everything to mailparse class MailHandler { diff --git a/lib/oauthstore.php b/lib/oauthstore.php index 1c8e725009..a52f6cee33 100644 --- a/lib/oauthstore.php +++ b/lib/oauthstore.php @@ -264,8 +264,8 @@ class StatusNetOAuthDataStore extends OAuthDataStore $profile = Profile::staticGet($remote->id); $orig_remote = clone($remote); $orig_profile = clone($profile); - # XXX: compare current postNotice and updateProfile URLs to the ones - # stored in the DB to avoid (possibly...) above attack + // XXX: compare current postNotice and updateProfile URLs to the ones + // stored in the DB to avoid (possibly...) above attack } else { $exists = false; $remote = new Remote_profile(); diff --git a/lib/ping.php b/lib/ping.php index e1c7c748e2..4d370593cc 100644 --- a/lib/ping.php +++ b/lib/ping.php @@ -24,7 +24,7 @@ function ping_broadcast_notice($notice) { return true; } - # Array of servers, URL => type + // Array of servers, URL => type $notify = common_config('ping', 'notify'); try { $profile = $notice->getProfile(); diff --git a/lib/rssaction.php b/lib/rssaction.php index f366db9729..dac7fa4606 100644 --- a/lib/rssaction.php +++ b/lib/rssaction.php @@ -34,7 +34,7 @@ define('DEFAULT_RSS_LIMIT', 48); class Rss10Action extends Action { - # This will contain the details of each feed item's author and be used to generate SIOC data. + // This will contain the details of each feed item's author and be used to generate SIOC data. var $creators = array(); var $limit = DEFAULT_RSS_LIMIT; @@ -88,10 +88,10 @@ class Rss10Action extends Action if (common_config('site', 'private')) { if (!isset($_SERVER['PHP_AUTH_USER'])) { - # This header makes basic auth go + // This header makes basic auth go header('WWW-Authenticate: Basic realm="StatusNet RSS"'); - # If the user hits cancel -- bam! + // If the user hits cancel -- bam! $this->show_basic_auth_error(); return; } else { @@ -99,7 +99,7 @@ class Rss10Action extends Action $password = $_SERVER['PHP_AUTH_PW']; if (!common_check_user($nickname, $password)) { - # basic authentication failed + // basic authentication failed list($proxy, $ip) = common_client_ip(); common_log(LOG_WARNING, "Failed RSS auth attempt, nickname = $nickname, proxy = $proxy, ip = $ip."); diff --git a/lib/util.php b/lib/util.php index 511dcdfb86..c2b50f7045 100644 --- a/lib/util.php +++ b/lib/util.php @@ -2137,7 +2137,7 @@ function common_url_to_nickname($url) $parts = parse_url($url); - # If any of these parts exist, this won't work + // If any of these parts exist, this won't work foreach ($bad as $badpart) { if (array_key_exists($badpart, $parts)) { @@ -2145,15 +2145,15 @@ function common_url_to_nickname($url) } } - # We just have host and/or path + // We just have host and/or path - # If it's just a host... + // If it's just a host... if (array_key_exists('host', $parts) && (!array_key_exists('path', $parts) || strcmp($parts['path'], '/') == 0)) { $hostparts = explode('.', $parts['host']); - # Try to catch common idiom of nickname.service.tld + // Try to catch common idiom of nickname.service.tld if ((count($hostparts) > 2) && (strlen($hostparts[count($hostparts) - 2]) > 3) && # try to skip .co.uk, .com.au @@ -2161,12 +2161,12 @@ function common_url_to_nickname($url) { return common_nicknamize($hostparts[0]); } else { - # Do the whole hostname + // Do the whole hostname return common_nicknamize($parts['host']); } } else { if (array_key_exists('path', $parts)) { - # Strip starting, ending slashes + // Strip starting, ending slashes $path = preg_replace('@/$@', '', $parts['path']); $path = preg_replace('@^/@', '', $path); $path = basename($path); diff --git a/plugins/Enjit/enjitqueuehandler.php b/plugins/Enjit/enjitqueuehandler.php index 56fc396d17..4a68f4f6b6 100644 --- a/plugins/Enjit/enjitqueuehandler.php +++ b/plugins/Enjit/enjitqueuehandler.php @@ -45,7 +45,7 @@ class EnjitQueueHandler extends QueueHandler } # - # Build an Atom message from the notice + // Build an Atom message from the notice # $noticeurl = common_local_url('shownotice', array('notice' => $notice->id)); $msg = $profile->nickname . ': ' . $notice->content; @@ -73,7 +73,7 @@ class EnjitQueueHandler extends QueueHandler ); # - # POST the message to $config['enjit']['apiurl'] + // POST the message to $config['enjit']['apiurl'] # $request = HTTPClient::start(); $response = $request->post($url, null, $data); diff --git a/plugins/Irc/Irc_waiting_message.php b/plugins/Irc/Irc_waiting_message.php index 59eec63d8d..6c6fd454c6 100644 --- a/plugins/Irc/Irc_waiting_message.php +++ b/plugins/Irc/Irc_waiting_message.php @@ -94,9 +94,9 @@ class Irc_waiting_message extends Memcached_DataObject { $cnt = $wm->find(true); if ($cnt) { - # XXX: potential race condition - # can we force it to only update if claimed is still null - # (or old)? + // XXX: potential race condition + // can we force it to only update if claimed is still null + // (or old)? common_log(LOG_INFO, 'claiming IRC waiting message id = ' . $wm->id); $orig = clone($wm); $wm->claimed = common_sql_now(); diff --git a/plugins/Msn/msn_waiting_message.php b/plugins/Msn/msn_waiting_message.php index 0af7c4f3ec..707cd04389 100644 --- a/plugins/Msn/msn_waiting_message.php +++ b/plugins/Msn/msn_waiting_message.php @@ -100,9 +100,9 @@ class Msn_waiting_message extends Memcached_DataObject { $cnt = $wm->find(true); if ($cnt) { - # XXX: potential race condition - # can we force it to only update if claimed is still null - # (or old)? + // XXX: potential race condition + // can we force it to only update if claimed is still null + // (or old)? common_log(LOG_INFO, 'claiming msn waiting message id = ' . $wm->id); $orig = clone($wm); $wm->claimed = common_sql_now(); diff --git a/plugins/OpenID/finishopenidlogin.php b/plugins/OpenID/finishopenidlogin.php index dfabdd7903..6d2c5f31f0 100644 --- a/plugins/OpenID/finishopenidlogin.php +++ b/plugins/OpenID/finishopenidlogin.php @@ -266,9 +266,9 @@ class FinishopenidloginAction extends Action if ($user) { oid_set_last($display); - # XXX: commented out at @edd's request until better - # control over how data flows from OpenID provider. - # oid_update_user($user, $sreg); + // XXX: commented out at @edd's request until better + // control over how data flows from OpenID provider. + // oid_update_user($user, $sreg); common_set_user($user); common_real_login(true); if (isset($_SESSION['openid_rememberme']) && $_SESSION['openid_rememberme']) { @@ -306,7 +306,7 @@ class FinishopenidloginAction extends Action function createNewUser() { - # FIXME: save invite code before redirect, and check here + // FIXME: save invite code before redirect, and check here if (!Event::handle('StartRegistrationTry', array($this))) { return; @@ -364,7 +364,7 @@ class FinishopenidloginAction extends Action return; } - # Possible race condition... let's be paranoid + // Possible race condition... let's be paranoid $other = oid_get_user($canonical); @@ -379,8 +379,8 @@ class FinishopenidloginAction extends Action $location = ''; if (!empty($sreg['country'])) { if ($sreg['postcode']) { - # XXX: use postcode to get city and region - # XXX: also, store postcode somewhere -- it's valuable! + // XXX: use postcode to get city and region + // XXX: also, store postcode somewhere -- it's valuable! $location = $sreg['postcode'] . ', ' . $sreg['country']; } else { $location = $sreg['country']; @@ -395,8 +395,8 @@ class FinishopenidloginAction extends Action $email = $this->getEmail(); - # XXX: add language - # XXX: add timezone + // XXX: add language + // XXX: add timezone $args = array('nickname' => $nickname, 'email' => $email, @@ -438,7 +438,7 @@ class FinishopenidloginAction extends Action return; } - # They're legit! + // They're legit! $user = User::staticGet('nickname', $nickname); @@ -477,7 +477,7 @@ class FinishopenidloginAction extends Action { $url = common_get_returnto(); if ($url) { - # We don't have to return to it again + // We don't have to return to it again common_set_returnto(null); $url = common_inject_session($url); } else { @@ -491,7 +491,7 @@ class FinishopenidloginAction extends Action function bestNewNickname($display, $sreg) { - # Try the passed-in nickname + // Try the passed-in nickname if (!empty($sreg['nickname'])) { $nickname = $this->nicknamize($sreg['nickname']); @@ -500,7 +500,7 @@ class FinishopenidloginAction extends Action } } - # Try the full name + // Try the full name if (!empty($sreg['fullname'])) { $fullname = $this->nicknamize($sreg['fullname']); @@ -509,7 +509,7 @@ class FinishopenidloginAction extends Action } } - # Try the URL + // Try the URL $from_url = $this->openidToNickname($display); @@ -517,7 +517,7 @@ class FinishopenidloginAction extends Action return $from_url; } - # XXX: others? + // XXX: others? return null; } @@ -545,10 +545,10 @@ class FinishopenidloginAction extends Action } } - # We try to use an OpenID URL as a legal StatusNet user name in this order - # 1. Plain hostname, like http://evanp.myopenid.com/ - # 2. One element in path, like http://profile.typekey.com/EvanProdromou/ - # or http://getopenid.com/evanprodromou + // We try to use an OpenID URL as a legal StatusNet user name in this order + // 1. Plain hostname, like http://evanp.myopenid.com/ + // 2. One element in path, like http://profile.typekey.com/EvanProdromou/ + // or http://getopenid.com/evanprodromou function urlToNickname($openid) { @@ -562,8 +562,8 @@ class FinishopenidloginAction extends Action if (!$base) { return null; } else { - # =evan.prodromou - # or @gratis*evan.prodromou + // =evan.prodromou + // or @gratis*evan.prodromou $parts = explode('*', substr($base, 1)); return $this->nicknamize(array_pop($parts)); } @@ -578,7 +578,7 @@ class FinishopenidloginAction extends Action } } - # Given a string, try to make it work as a nickname + // Given a string, try to make it work as a nickname function nicknamize($str) { diff --git a/plugins/OpenID/openid.php b/plugins/OpenID/openid.php index ad251aa2cd..d13db28a47 100644 --- a/plugins/OpenID/openid.php +++ b/plugins/OpenID/openid.php @@ -27,7 +27,7 @@ require_once('Auth/OpenID/Server.php'); require_once('Auth/OpenID/SReg.php'); require_once('Auth/OpenID/MySQLStore.php'); -# About one year cookie expiry +// About one year cookie expiry define('OPENID_COOKIE_EXPIRY', round(365.25 * 24 * 60 * 60)); define('OPENID_COOKIE_KEY', 'lastusedopenid'); @@ -36,7 +36,7 @@ function oid_store() { static $store = null; if (!$store) { - # Can't be called statically + // Can't be called statically $user = new User(); $conn = $user->getDatabaseConnection(); $store = new Auth_OpenID_MySQLStore($conn); @@ -213,8 +213,8 @@ function oid_authenticate($openid_url, $returnto, $immediate=false) $form_html = $auth_request->formMarkup($trust_root, $process_url, $immediate, array('id' => $form_id)); - # XXX: This is cheap, but things choke if we don't escape ampersands - # in the HTML attributes + // XXX: This is cheap, but things choke if we don't escape ampersands + // in the HTML attributes $form_html = preg_replace('/&/', '&', $form_html); @@ -235,7 +235,7 @@ function oid_authenticate($openid_url, $returnto, $immediate=false) */ } -# Half-assed attempt at a module-private function +// Half-assed attempt at a module-private function function _oid_print_instructions() { @@ -264,16 +264,16 @@ function oid_update_user($user, $sreg) if (!empty($sreg['country'])) { if ($sreg['postcode']) { - # XXX: use postcode to get city and region - # XXX: also, store postcode somewhere -- it's valuable! + // XXX: use postcode to get city and region + // XXX: also, store postcode somewhere -- it's valuable! $profile->location = $sreg['postcode'] . ', ' . $sreg['country']; } else { $profile->location = $sreg['country']; } } - # XXX save language if it's passed - # XXX save timezone if it's passed + // XXX save language if it's passed + // XXX save timezone if it's passed if (!$profile->update($orig_profile)) { // TRANS: OpenID plugin server error. diff --git a/plugins/Xmpp/xmppmanager.php b/plugins/Xmpp/xmppmanager.php index 1a4e9546d8..4aaed677b5 100644 --- a/plugins/Xmpp/xmppmanager.php +++ b/plugins/Xmpp/xmppmanager.php @@ -81,7 +81,7 @@ class XmppManager extends ImManager */ public function handleInput($socket) { - # Process the queue for as long as needed + // Process the queue for as long as needed try { common_log(LOG_DEBUG, "Servicing the XMPP queue."); $this->stats('xmpp_process'); diff --git a/scripts/allsites.php b/scripts/allsites.php index cf1419e550..a67db12337 100755 --- a/scripts/allsites.php +++ b/scripts/allsites.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); diff --git a/scripts/console.php b/scripts/console.php index 4d207c261b..c260ffaa00 100755 --- a/scripts/console.php +++ b/scripts/console.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); diff --git a/scripts/fixup_hashtags.php b/scripts/fixup_hashtags.php index 5cfebd8ee8..87bbecfb44 100755 --- a/scripts/fixup_hashtags.php +++ b/scripts/fixup_hashtags.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { print "This script must be run from the command line\n"; exit(); diff --git a/scripts/fixup_inboxes.php b/scripts/fixup_inboxes.php index c6e4fd0717..2aa5d16900 100755 --- a/scripts/fixup_inboxes.php +++ b/scripts/fixup_inboxes.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { print "This script must be run from the command line\n"; exit(); diff --git a/scripts/fixup_notices_rendered.php b/scripts/fixup_notices_rendered.php index 359cd6cce4..cfbdc7479b 100755 --- a/scripts/fixup_notices_rendered.php +++ b/scripts/fixup_notices_rendered.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { print "This script must be run from the command line\n"; exit(); diff --git a/scripts/fixup_replies.php b/scripts/fixup_replies.php index 7328635d3c..dd55e6ed40 100755 --- a/scripts/fixup_replies.php +++ b/scripts/fixup_replies.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) { print "This script must be run from the command line\n"; exit(); diff --git a/scripts/fixup_utf8.php b/scripts/fixup_utf8.php index 2af6f9cb04..796021b721 100755 --- a/scripts/fixup_utf8.php +++ b/scripts/fixup_utf8.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); diff --git a/scripts/make-release.php b/scripts/make-release.php index a62d2f4480..f815428039 100644 --- a/scripts/make-release.php +++ b/scripts/make-release.php @@ -18,7 +18,7 @@ * along with this program. If not, see . */ -# Abort if called from a web server +// Abort if called from a web server define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); diff --git a/scripts/setconfig.php b/scripts/setconfig.php index 401dda0f2b..009c50dbf2 100755 --- a/scripts/setconfig.php +++ b/scripts/setconfig.php @@ -46,7 +46,7 @@ if (empty($args)) { foreach ($config as $section => $section_value) { foreach ($section_value as $setting => $value) { if (have_option('v', 'verbose') || !is_array($value)) { - # Don't print array's without the verbose flag + // Don't print array's without the verbose flag printf("%-20s %-20s %s\n", $section, $setting, var_export($value, true)); } } diff --git a/scripts/useremail.php b/scripts/useremail.php index 0a59d36f83..a53d857d56 100755 --- a/scripts/useremail.php +++ b/scripts/useremail.php @@ -53,7 +53,7 @@ if (have_option('i', 'id')) { if (!empty($user)) { if (empty($user->email)) { - # Check for unconfirmed emails + // Check for unconfirmed emails $unconfirmed_email = new Confirm_address(); $unconfirmed_email->user_id = $user->id; $unconfirmed_email->address_type = 'email'; @@ -75,7 +75,7 @@ if (have_option('e', 'email')) { $user->email = get_option_value('e', 'email'); $user->find(false); if (!$user->fetch()) { - # Check unconfirmed emails + // Check unconfirmed emails $unconfirmed_email = new Confirm_address(); $unconfirmed_email->address = $user->email; $unconfirmed_email->address_type = 'email'; From 7f74aa6c203f0a21f634ea833679369b0f1fc2bf Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 16 Mar 2011 22:30:31 -0400 Subject: [PATCH 05/90] Add scope bitmap for notices --- classes/Notice.php | 1 + classes/statusnet.ini | 1 + db/core.php | 3 +++ 3 files changed, 5 insertions(+) diff --git a/classes/Notice.php b/classes/Notice.php index b228a49c7c..b432ad1ea5 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -73,6 +73,7 @@ class Notice extends Memcached_DataObject public $location_ns; // int(4) public $repeat_of; // int(4) public $object_type; // varchar(255) + public $scope; // int(4) /* Static get */ function staticGet($k,$v=NULL) diff --git a/classes/statusnet.ini b/classes/statusnet.ini index f648fb3fbf..12c59daae0 100644 --- a/classes/statusnet.ini +++ b/classes/statusnet.ini @@ -337,6 +337,7 @@ location_id = 1 location_ns = 1 repeat_of = 1 object_type = 2 +scope = 1 [notice__keys] id = N diff --git a/db/core.php b/db/core.php index 928186d94d..3e439e5010 100644 --- a/db/core.php +++ b/db/core.php @@ -202,6 +202,9 @@ $schema['notice'] = array( 'location_ns' => array('type' => 'int', 'description' => 'namespace for location'), 'repeat_of' => array('type' => 'int', 'description' => 'notice this is a repeat of'), 'object_type' => array('type' => 'varchar', 'length' => 255, 'description' => 'URI representing activity streams object type', 'default' => 'http://activitystrea.ms/schema/1.0/note'), + 'scope' => array('type' => 'int', + 'default' => '1', + 'description' => 'bit map for distribution scope; 0 = everywhere; 1 = this server only; 2 = addressees; 4 = followers'), ), 'primary key' => array('id'), 'unique keys' => array( From 6cdbe47e722f8e77beade6f5c17b5a7adc99b1ec Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 16 Mar 2011 22:54:57 -0400 Subject: [PATCH 06/90] add scope flags for Notice --- classes/Notice.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/classes/Notice.php b/classes/Notice.php index b432ad1ea5..2b437c79f4 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -90,6 +90,10 @@ class Notice extends Memcached_DataObject const LOCAL_NONPUBLIC = -1; const GATEWAY = -2; + const SITE_SCOPE = 1; + const ADDRESSEE_SCOPE = 2; + const FOLLOWER_SCOPE = 4; + function getProfile() { $profile = Profile::staticGet('id', $this->profile_id); From 7fc5679e7e09972fa88f711f0f88eeeab8131dad Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 16 Mar 2011 22:55:14 -0400 Subject: [PATCH 07/90] function for checking scope rules for Profile --- classes/Profile.php | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/classes/Profile.php b/classes/Profile.php index 9566226951..fe097753d9 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -1156,4 +1156,44 @@ class Profile extends Memcached_DataObject return $profile; } + + function canRead(Notice $notice) + { + if ($notice->scope & Notice::SITE_SCOPE) { + $user = $this->getUser(); + if (empty($user)) { + return false; + } + } + + if ($notice->scope & Notice::ADDRESSEE_SCOPE) { + $replies = $notice->getReplies(); + + if (!in_array($this->id, $replies)) { + $groups = $notice->getGroups(); + + $foundOne = false; + + foreach ($groups as $group) { + if ($this->isMember($group)) { + $foundOne = true; + break; + } + } + + if (!$foundOne) { + return false; + } + } + } + + if ($notice->scope & Notice::FOLLOWER_SCOPE) { + $author = $notice->getProfile(); + if (!Subscription::exists($this, $author)) { + return false; + } + } + + return true; + } } From 26a4bd7dbf5ed93c03ff5cb65d86f70792fcb94a Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 22 Mar 2011 11:36:48 -0400 Subject: [PATCH 08/90] move scope check to Notice so we can have a null profile --- classes/Notice.php | 83 ++++++++++++++++++++++++++++++++++++++++++++- classes/Profile.php | 40 ---------------------- 2 files changed, 82 insertions(+), 41 deletions(-) diff --git a/classes/Notice.php b/classes/Notice.php index 2b437c79f4..03ce36640b 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -92,7 +92,8 @@ class Notice extends Memcached_DataObject const SITE_SCOPE = 1; const ADDRESSEE_SCOPE = 2; - const FOLLOWER_SCOPE = 4; + const GROUP_SCOPE = 4; + const FOLLOWER_SCOPE = 8; function getProfile() { @@ -2186,4 +2187,84 @@ class Notice extends Memcached_DataObject ($this->is_local != Notice::GATEWAY)); } } + + /** + * Check that the given profile is allowed to read, respond to, or otherwise + * act on this notice. + * + * The $scope member is a bitmask of scopes, representing a logical AND of the + * scope requirement. So, 0x03 (Notice::ADDRESSEE_SCOPE | Notice::SITE_SCOPE) means + * "only visible to people who are mentioned in the notice AND are users on this site." + * Users on the site who are not mentioned in the notice will not be able to see the + * notice. + * + * @param Profile $profile The profile to check + * + * @return boolean whether the profile is in the notice's scope + */ + + function inScope($profile) + { + // If there's any scope, and there's no logged-in user, + // not allowed. + + if ($this->scope > 0 && empty($profile)) { + return false; + } + + // Only for users on this site + + if ($this->scope & Notice::SITE_SCOPE) { + $user = $profile->getUser(); + if (empty($user)) { + return false; + } + } + + // Only for users mentioned in the notice + + if ($this->scope & Notice::ADDRESSEE_SCOPE) { + + // XXX: just query for the single reply + + $replies = $this->getReplies(); + + if (!in_array($profile->id, $replies)) { + return false; + } + } + + // Only for members of the given group + + if ($this->scope & Notice::GROUP_SCOPE) { + + // XXX: just query for the single membership + + $groups = $this->getGroups(); + + $foundOne = false; + + foreach ($groups as $group) { + if ($profile->isMember($group)) { + $foundOne = true; + break; + } + } + + if (!$foundOne) { + return false; + } + } + + // Only for followers of the author + + if ($this->scope & Notice::FOLLOWER_SCOPE) { + $author = $this->getProfile(); + if (!Subscription::exists($profile, $author)) { + return false; + } + } + + return true; + } } diff --git a/classes/Profile.php b/classes/Profile.php index fe097753d9..9566226951 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -1156,44 +1156,4 @@ class Profile extends Memcached_DataObject return $profile; } - - function canRead(Notice $notice) - { - if ($notice->scope & Notice::SITE_SCOPE) { - $user = $this->getUser(); - if (empty($user)) { - return false; - } - } - - if ($notice->scope & Notice::ADDRESSEE_SCOPE) { - $replies = $notice->getReplies(); - - if (!in_array($this->id, $replies)) { - $groups = $notice->getGroups(); - - $foundOne = false; - - foreach ($groups as $group) { - if ($this->isMember($group)) { - $foundOne = true; - break; - } - } - - if (!$foundOne) { - return false; - } - } - } - - if ($notice->scope & Notice::FOLLOWER_SCOPE) { - $author = $notice->getProfile(); - if (!Subscription::exists($this, $author)) { - return false; - } - } - - return true; - } } From a12680e8d52cc0da3a03bf396728d40f0ddcca64 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 22 Mar 2011 14:20:21 -0700 Subject: [PATCH 09/90] Fix typo in cf45c978 --- lib/threadednoticelist.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/threadednoticelist.php b/lib/threadednoticelist.php index 97087ba03a..1a20075cce 100644 --- a/lib/threadednoticelist.php +++ b/lib/threadednoticelist.php @@ -391,7 +391,7 @@ abstract class NoticeListActorsItem extends NoticeListItem $first = array_slice($items, 0, -1); $last = array_slice($items, -1, 1); // TRANS: Separator in list of user names like "You, Bob, Mary". - $sepataror = _(', '); + $separator = _(', '); // TRANS: For building a list such as "You, bob, mary and 5 others have favored this notice". // TRANS: %1$s is a list of users, separated by a separator (default: ", "), %2$s is the last user in the list. return sprintf(_m('FAVELIST', '%1$s and %2$s'), implode($separator, $first), implode($separator, $last)); From 31e7d46a5b03c9082d38beed413b4af91a050a63 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 22 Mar 2011 18:15:53 -0400 Subject: [PATCH 10/90] add profile to stream function --- classes/Notice.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/classes/Notice.php b/classes/Notice.php index 03ce36640b..4e688218f8 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -1546,8 +1546,17 @@ class Notice extends Memcached_DataObject } } - function stream($fn, $args, $cachekey, $offset=0, $limit=20, $since_id=0, $max_id=0) + function stream($fn, $args, $cachekey, $offset=0, $limit=20, $since_id=0, $max_id=0, $profile=0) { + if ($profile === 0) { + $user = common_current_user(); + if (empty($user)) { + $profile = null; + } else { + $profile = $user->getProfile(); + } + } + $cache = Cache::instance(); if (empty($cache) || From 14a6ab2b0433d89f23857bf1bbaec64e65ee718c Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 22 Mar 2011 16:26:26 -0700 Subject: [PATCH 11/90] Refactoring on notification mail generation: common profile & footer chunks pulled out, notifications added for group joins. --- classes/Group_join_queue.php | 11 ++ classes/Group_member.php | 9 ++ classes/Profile.php | 21 ++- lib/mail.php | 250 +++++++++++++++++++++++++---------- 4 files changed, 216 insertions(+), 75 deletions(-) diff --git a/classes/Group_join_queue.php b/classes/Group_join_queue.php index ee47b4932d..48b36cae2d 100644 --- a/classes/Group_join_queue.php +++ b/classes/Group_join_queue.php @@ -55,4 +55,15 @@ class Group_join_queue extends Managed_DataObject $rq->insert(); return $rq; } + + /** + * Send notifications via email etc to group administrators about + * this exciting new pending moderation queue item! + */ + public function notify() + { + $joiner = Profile::staticGet('id', $this->profile_id); + $group = User_group::staticGet('id', $this->group_id); + mail_notify_group_join_pending($group, $joiner); + } } diff --git a/classes/Group_member.php b/classes/Group_member.php index 30b79bb931..5385e0f487 100644 --- a/classes/Group_member.php +++ b/classes/Group_member.php @@ -162,4 +162,13 @@ class Group_member extends Memcached_DataObject return $act; } + + /** + * Send notifications via email etc to group administrators about + * this exciting new membership! + */ + public function notify() + { + mail_notify_group_join($this->getGroup(), $this->getMember()); + } } diff --git a/classes/Profile.php b/classes/Profile.php index 9566226951..d84d5da290 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -355,16 +355,20 @@ class Profile extends Memcached_DataObject */ function joinGroup(User_group $group) { - $ok = null; + $join = null; if ($group->join_policy == User_group::JOIN_POLICY_MODERATE) { - $ok = Group_join_queue::saveNew($this, $group); + $join = Group_join_queue::saveNew($this, $group); } else { if (Event::handle('StartJoinGroup', array($group, $this))) { - $ok = Group_member::join($group->id, $this->id); + $join = Group_member::join($group->id, $this->id); Event::handle('EndJoinGroup', array($group, $this)); } } - return $ok; + if ($join) { + // Send any applicable notifications... + $join->notify(); + } + return $join; } /** @@ -391,19 +395,22 @@ class Profile extends Memcached_DataObject */ function completeJoinGroup(User_group $group) { - $ok = null; + $join = null; $request = Group_join_queue::pkeyGet(array('profile_id' => $this->id, 'group_id' => $group->id)); if ($request) { if (Event::handle('StartJoinGroup', array($group, $this))) { - $ok = Group_member::join($group->id, $this->id); + $join = Group_member::join($group->id, $this->id); $request->delete(); Event::handle('EndJoinGroup', array($group, $this)); } } else { throw new Exception(_m('Invalid group join approval: not pending.')); } - return $ok; + if ($join) { + $join->notify(); + } + return $join; } /** diff --git a/lib/mail.php b/lib/mail.php index ab22de404c..d90fe6e8f2 100644 --- a/lib/mail.php +++ b/lib/mail.php @@ -245,44 +245,13 @@ function mail_subscribe_notify_profile($listenee, $other) $other->getBestName(), common_config('site', 'name')); - // TRANS: This is a paragraph in a new-subscriber e-mail. - // TRANS: %s is a URL where the subscriber can be reported as abusive. - $blocklink = sprintf(_("If you believe this account is being used abusively, " . - "you can block them from your subscribers list and " . - "report as spam to site administrators at %s"), - common_local_url('block', array('profileid' => $other->id))); - // TRANS: Main body of new-subscriber notification e-mail. - // TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, - // TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) - // TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) - // TRANS: %7$s is a link to the addressed user's e-mail settings. - $body = sprintf(_('%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".'%2$s.'."\n\n". - "----\n". - "Change your email address or ". - "notification options at ".'%7$s' ."\n"), + // TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. + $body = sprintf(_('%1$s is now listening to your notices on %2$s.'), $long_name, - common_config('site', 'name'), - $other->profileurl, - ($other->location) ? - // TRANS: Profile info line in new-subscriber notification e-mail. - // TRANS: %s is a location. - sprintf(_("Location: %s"), $other->location) . "\n" : '', - ($other->homepage) ? - // TRANS: Profile info line in new-subscriber notification e-mail. - // TRANS: %s is a homepage. - sprintf(_("Homepage: %s"), $other->homepage) . "\n" : '', - (($other->bio) ? - // TRANS: Profile info line in new-subscriber notification e-mail. - // TRANS: %s is biographical information. - sprintf(_("Bio: %s"), $other->bio) . "\n" : '') . - "\n\n" . $blocklink . "\n", - common_local_url('emailsettings')); + common_config('site', 'name')) . + mail_profile_block($other) . + mail_footer_block(); // reset localization common_switch_locale(); @@ -290,6 +259,69 @@ function mail_subscribe_notify_profile($listenee, $other) } } +function mail_footer_block() +{ + // TRANS: Common footer block for StatusNet notification emails. + // TRANS: %1$s is the StatusNet sitename, + // TRANS: %2$s is a link to the addressed user's e-mail settings. + return "\n\n" . sprintf(_('Faithfully yours,'. + "\n".'%1$s.'."\n\n". + "----\n". + "Change your email address or ". + "notification options at ".'%2$s'), + common_config('site', 'name'), + common_local_url('emailsettings')) . "\n"; +} + +/** + * Format a block of profile info for a plaintext notification email. + * + * @param Profile $profile + * @return string + */ +function mail_profile_block($profile) +{ + // TRANS: Layout for + // TRANS: %1$s is the subscriber's profile URL, %2$s is the subscriber's location (or empty) + // TRANS: %3$s is the subscriber's homepage URL (or empty), %4%s is the subscriber's bio (or empty) + $out = array(); + $out[] = ""; + $out[] = ""; + // TRANS: Profile info line in notification e-mail. + // TRANS: %s is a URL. + $out[] = sprintf(_("Profile: %s"), $profile->profileurl); + if ($profile->location) { + // TRANS: Profile info line in notification e-mail. + // TRANS: %s is a location. + $out[] = sprintf(_("Location: %s"), $profile->location); + } + if ($profile->homepage) { + // TRANS: Profile info line in notification e-mail. + // TRANS: %s is a homepage. + $out[] = sprintf(_("Homepage: %s"), $profile->homepage); + } + if ($profile->bio) { + // TRANS: Profile info line in notification e-mail. + // TRANS: %s is biographical information. + $out[] = sprintf(_("Bio: %s"), $profile->bio); + } + + $blocklink = common_local_url('block', array('profileid' => $profile->id)); + // This'll let ModPlus add the remote profile info so it's possible + // to block remote users directly... + Event::handle('MailProfileInfoBlockLink', array($profile, &$blocklink)); + + // TRANS: This is a paragraph in a new-subscriber e-mail. + // TRANS: %s is a URL where the subscriber can be reported as abusive. + $out[] = sprintf(_("If you believe this account is being used abusively, " . + "you can block them from your subscribers list and " . + "report as spam to site administrators at %s"), + $blocklink); + $out[] = ""; + + return implode("\n", $out); +} + /** * notify a user of their new incoming email address * @@ -317,11 +349,11 @@ function mail_new_incoming_notify($user) // TRANS: to to post by e-mail, %3$s is a URL to more instructions. $body = sprintf(_("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%1\$s"), + "More email instructions at %3\$s."), common_config('site', 'name'), $user->incomingemail, - common_local_url('doc', array('title' => 'email'))); + common_local_url('doc', array('title' => 'email'))) . + mail_footer_block(); mail_send($user->email, $headers, $body); } @@ -493,18 +525,16 @@ function mail_notify_nudge($from, $to) // TRANS: Body for 'nudge' notification email. // TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, - // TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. + // TRANS: %3$s is a URL to post notices at. $body = sprintf(_("%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"), + "Don't reply to this email; it won't get to them."), $from_profile->getBestName(), $from->nickname, - common_local_url('all', array('nickname' => $to->nickname)), - common_config('site', 'name')); + common_local_url('all', array('nickname' => $to->nickname))) . + mail_footer_block(); common_switch_locale(); $headers = _mail_prepare_headers('nudge', $to->nickname, $from->nickname); @@ -548,21 +578,18 @@ function mail_notify_message($message, $from=null, $to=null) // TRANS: Body for direct-message notification email. // TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, // TRANS: %3$s is the message content, %4$s a URL to the message, - // TRANS: %5$s is the StatusNet sitename. $body = sprintf(_("%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"), + "Don't reply to this email; it won't get to them."), $from_profile->getBestName(), $from->nickname, $message->content, - common_local_url('newmessage', array('to' => $from->id)), - common_config('site', 'name')); + common_local_url('newmessage', array('to' => $from->id))) . + mail_footer_block(); $headers = _mail_prepare_headers('message', $to->nickname, $from->nickname); @@ -615,9 +642,7 @@ function mail_notify_fave($other, $user, $notice) "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"), + "%5\$s"), $bestname, common_exact_date($notice->created), common_local_url('shownotice', @@ -626,7 +651,8 @@ function mail_notify_fave($other, $user, $notice) common_local_url('showfavorites', array('nickname' => $user->nickname)), common_config('site', 'name'), - $user->nickname); + $user->nickname) . + mail_footer_block(); $headers = _mail_prepare_headers('fave', $other->nickname, $user->nickname); @@ -677,12 +703,11 @@ function mail_notify_attn($user, $notice) $subject = sprintf(_('%1$s (@%2$s) sent a notice to your attention'), $bestname, $sender->nickname); // TRANS: Body of @-reply notification e-mail. - // TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, + // TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, // TRANS: %3$s is a URL to the notice, %4$s is the notice text, // TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), - // TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, - // TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. - $body = sprintf(_("%1\$s (@%9\$s) just sent a notice to your attention (an '@-reply') on %2\$s.\n\n". + // TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, + $body = sprintf(_("%1\$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". @@ -691,11 +716,8 @@ function mail_notify_attn($user, $notice) "You can reply back here:\n\n". "\t%6\$s\n\n" . "The list of all @-replies for you here:\n\n" . - "%7\$s\n\n" . - "Faithfully yours,\n" . - "%2\$s\n\n" . - "P.S. You can turn off these email notifications here: %8\$s\n"), - $bestname,//%1 + "%7\$s"), + $sender->getFancyName(),//%1 common_config('site', 'name'),//%2 common_local_url('shownotice', array('notice' => $notice->id)),//%3 @@ -704,10 +726,8 @@ function mail_notify_attn($user, $notice) common_local_url('newnotice', array('replyto' => $sender->nickname, 'inreplyto' => $notice->id)),//%6 common_local_url('replies', - array('nickname' => $user->nickname)),//%7 - common_local_url('emailsettings'), //%8 - $sender->nickname); //%9 - + array('nickname' => $user->nickname))) . //%7 + mail_footer_block(); $headers = _mail_prepare_headers('mention', $user->nickname, $sender->nickname); common_switch_locale(); @@ -734,3 +754,97 @@ function _mail_prepare_headers($msg_type, $to, $from) return $headers; } + +/** + * Send notification emails to group administrator. + * + * @param User_group $group + * @param Profile $joiner + */ +function mail_notify_group_join($group, $joiner) +{ + // This returns a Profile query... + $admin = $group->getAdmins(); + while ($admin->fetch()) { + // We need a local user for email notifications... + $adminUser = User::staticGet('id', $admin->id); + // @fixme check for email preference? + if ($adminUser && $adminUser->email) { + // use the recipient's localization + common_switch_locale($adminUser->language); + + $headers = _mail_prepare_headers('join', $admin->nickname, $joiner->nickname); + $headers['From'] = mail_notify_from(); + $headers['To'] = $admin->getBestName() . ' <' . $adminUser->email . '>'; + // TRANS: Subject of group join notification e-mail. + // TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. + $headers['Subject'] = sprintf(_('%1$s has joined '. + 'your group %2$s on %3$s.'), + $joiner->getBestName(), + $group->getBestName(), + common_config('site', 'name')); + + // TRANS: Main body of group join notification e-mail. + // TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, + // TRANS: %4$s is a block of profile info about the subscriber. + // TRANS: %5$s is a link to the addressed user's e-mail settings. + $body = sprintf(_('%1$s has joined your group %2$s on %3$s.'), + $joiner->getFancyName(), + $group->getFancyName(), + common_config('site', 'name')) . + mail_profile_block($joiner) . + mail_footer_block(); + + // reset localization + common_switch_locale(); + mail_send($adminUser->email, $headers, $body); + } + } +} + + +/** + * Send notification emails to group administrator. + * + * @param User_group $group + * @param Profile $joiner + */ +function mail_notify_group_join_pending($group, $joiner) +{ + $admin = $group->getAdmins(); + while ($admin->fetch()) { + // We need a local user for email notifications... + $adminUser = User::staticGet('id', $admin->id); + // @fixme check for email preference? + if ($adminUser && $adminUser->email) { + // use the recipient's localization + common_switch_locale($adminUser->language); + + $headers = _mail_prepare_headers('join', $admin->nickname, $joiner->nickname); + $headers['From'] = mail_notify_from(); + $headers['To'] = $admin->getBestName() . ' <' . $adminUser->email . '>'; + // TRANS: Subject of pending group join request notification e-mail. + // TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. + $headers['Subject'] = sprintf(_('%1$s wants to join your group %2$s on %3$s.'), + $joiner->getBestName(), + $group->getBestName(), + common_config('site', 'name')); + + // TRANS: Main body of pending group join request notification e-mail. + // TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, + // TRANS: %3$s is the URL to the moderation queue page. + $body = sprintf(_('%1$s would like to join your group %2$s on %3$s. ' . + 'You may approve or reject their group membership at %4$s'), + $joiner->getFancyName(), + $group->getFancyName(), + common_config('site', 'name'), + common_local_url('groupqueue', array('nickname' => $group->nickname))) . + mail_profile_block($joiner) . + mail_footer_block(); + + // reset localization + common_switch_locale(); + mail_send($adminUser->email, $headers, $body); + } + } +} From 0b35ce7c370bbb6cb9d55bb2a4256f58cb1158f1 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 23 Mar 2011 11:29:55 -0400 Subject: [PATCH 12/90] New NoticeStream class to reify streams of notices We've been muddling through with 6- or 8-argument functions for managing streams. I'd like to start thinking of streams as their own thing, and give them some more value. So, the new NoticeStream class takes over the Notice::stream() function and Notice::getStreamByIds(). There's probably some fine-tuning to do on the object interface. --- classes/Fave.php | 12 +-- classes/File.php | 9 +- classes/Notice.php | 114 ++----------------------- classes/Notice_tag.php | 15 ++-- classes/Profile.php | 20 ++--- classes/Reply.php | 10 +-- classes/User.php | 24 +++--- classes/User_group.php | 9 +- lib/noticestream.php | 189 +++++++++++++++++++++++++++++++++++++++++ 9 files changed, 243 insertions(+), 159 deletions(-) create mode 100644 lib/noticestream.php diff --git a/classes/Fave.php b/classes/Fave.php index efbceee6a8..a61f35d190 100644 --- a/classes/Fave.php +++ b/classes/Fave.php @@ -79,12 +79,12 @@ class Fave extends Memcached_DataObject function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $own=false, $since_id=0, $max_id=0) { - $ids = Notice::stream(array('Fave', '_streamDirect'), - array($user_id, $own), - ($own) ? 'fave:ids_by_user_own:'.$user_id : - 'fave:ids_by_user:'.$user_id, - $offset, $limit, $since_id, $max_id); - return $ids; + $stream = new NoticeStream(array('Fave', '_streamDirect'), + array($user_id, $own), + ($own) ? 'fave:ids_by_user_own:'.$user_id : + 'fave:ids_by_user:'.$user_id); + + return $stream->getNotices($offset, $limit, $since_id, $max_id); } /** diff --git a/classes/File.php b/classes/File.php index e9a0131c4e..681c33f9cd 100644 --- a/classes/File.php +++ b/classes/File.php @@ -449,12 +449,11 @@ class File extends Memcached_DataObject function stream($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $ids = Notice::stream(array($this, '_streamDirect'), - array(), - 'file:notice-ids:'.$this->url, - $offset, $limit, $since_id, $max_id); + $stream = new NoticeStream(array($this, '_streamDirect'), + array(), + 'file:notice-ids:'.$this->url); - return Notice::getStreamByIds($ids); + return $stream->getNotices($offset, $limit, $since_id, $max_id); } /** diff --git a/classes/Notice.php b/classes/Notice.php index b228a49c7c..8200e4554f 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -629,54 +629,14 @@ class Notice extends Memcached_DataObject return $att; } - function getStreamByIds($ids) - { - $cache = Cache::instance(); - - if (!empty($cache)) { - $notices = array(); - foreach ($ids as $id) { - $n = Notice::staticGet('id', $id); - if (!empty($n)) { - $notices[] = $n; - } - } - return new ArrayWrapper($notices); - } else { - $notice = new Notice(); - if (empty($ids)) { - //if no IDs requested, just return the notice object - return $notice; - } - $notice->whereAdd('id in (' . implode(', ', $ids) . ')'); - - $notice->find(); - - $temp = array(); - - while ($notice->fetch()) { - $temp[$notice->id] = clone($notice); - } - - $wrapped = array(); - - foreach ($ids as $id) { - if (array_key_exists($id, $temp)) { - $wrapped[] = $temp[$id]; - } - } - - return new ArrayWrapper($wrapped); - } - } function publicStream($offset=0, $limit=20, $since_id=0, $max_id=0) { - $ids = Notice::stream(array('Notice', '_publicStreamDirect'), - array(), - 'public', - $offset, $limit, $since_id, $max_id); - return Notice::getStreamByIds($ids); + $stream = new NoticeStream(array('Notice', '_publicStreamDirect'), + array(), + 'public'); + + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function _publicStreamDirect($offset=0, $limit=20, $since_id=0, $max_id=0) @@ -719,12 +679,11 @@ class Notice extends Memcached_DataObject function conversationStream($id, $offset=0, $limit=20, $since_id=0, $max_id=0) { - $ids = Notice::stream(array('Notice', '_conversationStreamDirect'), - array($id), - 'notice:conversation_ids:'.$id, - $offset, $limit, $since_id, $max_id); + $stream = new NoticeStream(array('Notice', '_conversationStreamDirect'), + array($id), + 'notice:conversation_ids:'.$id); - return Notice::getStreamByIds($ids); + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function _conversationStreamDirect($id, $offset=0, $limit=20, $since_id=0, $max_id=0) @@ -1540,61 +1499,6 @@ class Notice extends Memcached_DataObject } } - function stream($fn, $args, $cachekey, $offset=0, $limit=20, $since_id=0, $max_id=0) - { - $cache = Cache::instance(); - - if (empty($cache) || - $since_id != 0 || $max_id != 0 || - is_null($limit) || - ($offset + $limit) > NOTICE_CACHE_WINDOW) { - return call_user_func_array($fn, array_merge($args, array($offset, $limit, $since_id, - $max_id))); - } - - $idkey = Cache::key($cachekey); - - $idstr = $cache->get($idkey); - - if ($idstr !== false) { - // Cache hit! Woohoo! - $window = explode(',', $idstr); - $ids = array_slice($window, $offset, $limit); - return $ids; - } - - $laststr = $cache->get($idkey.';last'); - - if ($laststr !== false) { - $window = explode(',', $laststr); - $last_id = $window[0]; - $new_ids = call_user_func_array($fn, array_merge($args, array(0, NOTICE_CACHE_WINDOW, - $last_id, 0, null))); - - $new_window = array_merge($new_ids, $window); - - $new_windowstr = implode(',', $new_window); - - $result = $cache->set($idkey, $new_windowstr); - $result = $cache->set($idkey . ';last', $new_windowstr); - - $ids = array_slice($new_window, $offset, $limit); - - return $ids; - } - - $window = call_user_func_array($fn, array_merge($args, array(0, NOTICE_CACHE_WINDOW, - 0, 0, null))); - - $windowstr = implode(',', $window); - - $result = $cache->set($idkey, $windowstr); - $result = $cache->set($idkey . ';last', $windowstr); - - $ids = array_slice($window, $offset, $limit); - - return $ids; - } /** * Determine which notice, if any, a new notice is in reply to. diff --git a/classes/Notice_tag.php b/classes/Notice_tag.php index 81d346c5d3..813242253d 100644 --- a/classes/Notice_tag.php +++ b/classes/Notice_tag.php @@ -36,14 +36,13 @@ class Notice_tag extends Memcached_DataObject /* the code above is auto generated do not remove the tag below */ ###END_AUTOCODE - static function getStream($tag, $offset=0, $limit=20) { - - $ids = Notice::stream(array('Notice_tag', '_streamDirect'), - array($tag), - 'notice_tag:notice_ids:' . Cache::keyize($tag), - $offset, $limit); - - return Notice::getStreamByIds($ids); + static function getStream($tag, $offset=0, $limit=20, $sinceId=0, $maxId=0) + { + $stream = new NoticeStream(array('Notice_tag', '_streamDirect'), + array($tag), + 'notice_tag:notice_ids:' . Cache::keyize($tag)); + + return $stream->getNotices($offset, $limit, $sinceId, $maxId); } function _streamDirect($tag, $offset, $limit, $since_id, $max_id) diff --git a/classes/Profile.php b/classes/Profile.php index d84d5da290..209e5ef84a 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -198,22 +198,20 @@ class Profile extends Memcached_DataObject function getTaggedNotices($tag, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $ids = Notice::stream(array($this, '_streamTaggedDirect'), - array($tag), - 'profile:notice_ids_tagged:' . $this->id . ':' . $tag, - $offset, $limit, $since_id, $max_id); - return Notice::getStreamByIds($ids); + $stream = new NoticeStream(array($this, '_streamTaggedDirect'), + array($tag), + 'profile:notice_ids_tagged:'.$this->id.':'.$tag); + + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function getNotices($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - // XXX: I'm not sure this is going to be any faster. It probably isn't. - $ids = Notice::stream(array($this, '_streamDirect'), - array(), - 'profile:notice_ids:' . $this->id, - $offset, $limit, $since_id, $max_id); + $stream = new NoticeStream(array($this, '_streamDirect'), + array(), + 'profile:notice_ids:' . $this->id); - return Notice::getStreamByIds($ids); + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function _streamTaggedDirect($tag, $offset, $limit, $since_id, $max_id) diff --git a/classes/Reply.php b/classes/Reply.php index 371c16cf48..d5341b9a05 100644 --- a/classes/Reply.php +++ b/classes/Reply.php @@ -38,11 +38,11 @@ class Reply extends Memcached_DataObject function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $ids = Notice::stream(array('Reply', '_streamDirect'), - array($user_id), - 'reply:stream:' . $user_id, - $offset, $limit, $since_id, $max_id); - return $ids; + $stream = new NoticeStream(array('Reply', '_streamDirect'), + array($user_id), + 'reply:stream:' . $user_id); + + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function _streamDirect($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) diff --git a/classes/User.php b/classes/User.php index 31b132d0f3..4bd7b039df 100644 --- a/classes/User.php +++ b/classes/User.php @@ -448,8 +448,7 @@ class User extends Memcached_DataObject function getReplies($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $before_id=0) { - $ids = Reply::stream($this->id, $offset, $limit, $since_id, $before_id); - return Notice::getStreamByIds($ids); + return Reply::stream($this->id, $offset, $limit, $since_id, $before_id); } function getTaggedNotices($tag, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $before_id=0) { @@ -465,8 +464,7 @@ class User extends Memcached_DataObject function favoriteNotices($own=false, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $ids = Fave::stream($this->id, $offset, $limit, $own, $since_id, $max_id); - return Notice::getStreamByIds($ids); + return Fave::stream($this->id, $offset, $limit, $own, $since_id, $max_id); } function noticesWithFriends($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $before_id=0) @@ -769,12 +767,11 @@ class User extends Memcached_DataObject 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); + $stream = new NoticeStream(array($this, '_repeatedByMeDirect'), + array(), + 'user:repeated_by_me:'.$this->id); - return Notice::getStreamByIds($ids); + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function _repeatedByMeDirect($offset, $limit, $since_id, $max_id) @@ -812,12 +809,11 @@ class User extends Memcached_DataObject 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); + $stream = new NoticeStream(array($this, '_repeatsOfMeDirect'), + array(), + 'user:repeats_of_me:'.$this->id); - return Notice::getStreamByIds($ids); + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function _repeatsOfMeDirect($offset, $limit, $since_id, $max_id) diff --git a/classes/User_group.php b/classes/User_group.php index 707acbd13c..4d6dcfab68 100644 --- a/classes/User_group.php +++ b/classes/User_group.php @@ -87,12 +87,11 @@ class User_group extends Memcached_DataObject function getNotices($offset, $limit, $since_id=null, $max_id=null) { - $ids = Notice::stream(array($this, '_streamDirect'), - array(), - 'user_group:notice_ids:' . $this->id, - $offset, $limit, $since_id, $max_id); + $stream = new NoticeStream(array($this, '_streamDirect'), + array(), + 'user_group:notice_ids:' . $this->id); - return Notice::getStreamByIds($ids); + return $stream->getNotices($offset, $limit, $since_id, $max_id); } function _streamDirect($offset, $limit, $since_id, $max_id) diff --git a/lib/noticestream.php b/lib/noticestream.php new file mode 100644 index 0000000000..2b6e10f7b9 --- /dev/null +++ b/lib/noticestream.php @@ -0,0 +1,189 @@ +. + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Class for notice streams + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class NoticeStream +{ + public $generator = null; + public $args = null; + public $cachekey = null; + + function __construct($generator, $args, $cachekey) + { + $this->generator = $generator; + $this->args = $args; + $this->cachekey = $cachekey; + } + + function getNotices($offset=0, $limit=20, $sinceId=0, $maxId=0) + { + $ids = $this->getNoticeIds($offset, $limit, $sinceId, $maxId); + + $notices = $this->getStreamByIds($ids); + + return $notices; + } + + function getNoticeIds($offset=0, $limit=20, $sinceId=0, $maxId=0) + { + $cache = Cache::instance(); + + // We cache NOTICE_CACHE_WINDOW elements at the tip of the stream. + // If the cache won't be hit, just generate directly. + + if (empty($cache) || + $sinceId != 0 || $maxId != 0 || + is_null($limit) || + ($offset + $limit) > NOTICE_CACHE_WINDOW) { + return $this->generate($offset, $limit, $sinceId, $maxId); + } + + // Check the cache to see if we have the stream. + + $idkey = Cache::key($this->cachekey); + + $idstr = $cache->get($idkey); + + if ($idstr !== false) { + // Cache hit! Woohoo! + $window = explode(',', $idstr); + $ids = array_slice($window, $offset, $limit); + return $ids; + } + + // Check the cache to see if we have a "last-known-good" version. + // The actual cache gets blown away when new notices are added, but + // the "last" value holds a lot of info. We might need to only generate + // a few at the "tip", which can bound our queries and save lots + // of time. + + $laststr = $cache->get($idkey.';last'); + + if ($laststr !== false) { + $window = explode(',', $laststr); + $last_id = $window[0]; + $new_ids = $this->generate(0, NOTICE_CACHE_WINDOW, $last_id, 0); + + $new_window = array_merge($new_ids, $window); + + $new_windowstr = implode(',', $new_window); + + $result = $cache->set($idkey, $new_windowstr); + $result = $cache->set($idkey . ';last', $new_windowstr); + + $ids = array_slice($new_window, $offset, $limit); + + return $ids; + } + + // No cache hits :( Generate directly and stick the results + // into the cache. Note we generate the full cache window. + + $window = $this->generate(0, NOTICE_CACHE_WINDOW, 0, 0); + + $windowstr = implode(',', $window); + + $result = $cache->set($idkey, $windowstr); + $result = $cache->set($idkey . ';last', $windowstr); + + // Return just the slice that was requested + + $ids = array_slice($window, $offset, $limit); + + return $ids; + } + + function getStreamByIds($ids) + { + $cache = Cache::instance(); + + if (!empty($cache)) { + $notices = array(); + foreach ($ids as $id) { + $n = Notice::staticGet('id', $id); + if (!empty($n)) { + $notices[] = $n; + } + } + return new ArrayWrapper($notices); + } else { + $notice = new Notice(); + if (empty($ids)) { + //if no IDs requested, just return the notice object + return $notice; + } + $notice->whereAdd('id in (' . implode(', ', $ids) . ')'); + + $notice->find(); + + $temp = array(); + + while ($notice->fetch()) { + $temp[$notice->id] = clone($notice); + } + + $wrapped = array(); + + foreach ($ids as $id) { + if (array_key_exists($id, $temp)) { + $wrapped[] = $temp[$id]; + } + } + + return new ArrayWrapper($wrapped); + } + } + + function generate($offset, $limit, $sinceId, $maxId) + { + $args = array_merge($this->args, array($offset, + $limit, + $sinceId, + $maxId)); + + return call_user_func_array($this->generator, $args); + } +} From efb6a7b441dc14227a30b83454e8b47e79274997 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 23 Mar 2011 11:42:52 -0400 Subject: [PATCH 13/90] let Inbox class go fingerpokin' in streams --- classes/Inbox.php | 4 ++-- lib/noticestream.php | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/classes/Inbox.php b/classes/Inbox.php index f0f626a24e..feaead249b 100644 --- a/classes/Inbox.php +++ b/classes/Inbox.php @@ -233,7 +233,7 @@ class Inbox extends Memcached_DataObject // Do a bulk lookup for the first $limit items // Fast path when nothing's deleted. $firstChunk = array_slice($ids, 0, $offset + $limit); - $notices = Notice::getStreamByIds($firstChunk); + $notices = NoticeStream::getStreamByIds($firstChunk); assert($notices instanceof ArrayWrapper); $items = $notices->_items; @@ -292,7 +292,7 @@ class Inbox extends Memcached_DataObject // Do a bulk lookup for the first $limit items // Fast path when nothing's deleted. $firstChunk = array_slice($ids, 0, $limit); - $notices = Notice::getStreamByIds($firstChunk); + $notices = NoticeStream::getStreamByIds($firstChunk); $wanted = count($firstChunk); // raw entry count in the inbox up to our $limit if ($notices->N >= $wanted) { diff --git a/lib/noticestream.php b/lib/noticestream.php index 2b6e10f7b9..a96eb53da6 100644 --- a/lib/noticestream.php +++ b/lib/noticestream.php @@ -62,7 +62,7 @@ class NoticeStream { $ids = $this->getNoticeIds($offset, $limit, $sinceId, $maxId); - $notices = $this->getStreamByIds($ids); + $notices = self::getStreamByIds($ids); return $notices; } @@ -136,7 +136,7 @@ class NoticeStream return $ids; } - function getStreamByIds($ids) + static function getStreamByIds($ids) { $cache = Cache::instance(); From 2b901894c2c14f3e7e1c3eae8960f8a3c09310a0 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 23 Mar 2011 11:59:01 -0400 Subject: [PATCH 14/90] Some fixes to make the notice stream class work --- classes/Fave.php | 10 ++++++++++ classes/Notice.php | 6 +++--- classes/Profile.php | 4 ++-- lib/noticestream.php | 10 ++++++---- 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/classes/Fave.php b/classes/Fave.php index a61f35d190..7cd64982cd 100644 --- a/classes/Fave.php +++ b/classes/Fave.php @@ -87,6 +87,16 @@ class Fave extends Memcached_DataObject return $stream->getNotices($offset, $limit, $since_id, $max_id); } + function idStream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $own=false, $since_id=0, $max_id=0) + { + $stream = new NoticeStream(array('Fave', '_streamDirect'), + array($user_id, $own), + ($own) ? 'fave:ids_by_user_own:'.$user_id : + 'fave:ids_by_user:'.$user_id); + + return $stream->getNoticeIds($offset, $limit, $since_id, $max_id); + } + /** * Note that the sorting for this is by order of *fave* not order of *notice*. * diff --git a/classes/Notice.php b/classes/Notice.php index 8200e4554f..1201dd902b 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -45,7 +45,7 @@ require_once INSTALLDIR.'/classes/Memcached_DataObject.php'; /* We keep 200 notices, the max number of notices available per API request, * in the memcached cache. */ -define('NOTICE_CACHE_WINDOW', 200); +define('NOTICE_CACHE_WINDOW', NoticeStream::CACHE_WINDOW); define('MAX_BOXCARS', 128); @@ -548,7 +548,7 @@ class Notice extends Memcached_DataObject if (empty($profile)) { return false; } - $notice = $profile->getNotices(0, NOTICE_CACHE_WINDOW); + $notice = $profile->getNotices(0, NoticeStream::CACHE_WINDOW); if (!empty($notice)) { $last = 0; while ($notice->fetch()) { @@ -1656,7 +1656,7 @@ class Notice extends Memcached_DataObject } } - return Notice::getStreamByIds($ids); + return NoticeStream::getStreamByIds($ids); } function _repeatStreamDirect($limit) diff --git a/classes/Profile.php b/classes/Profile.php index 209e5ef84a..c5dd2dfda9 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -550,7 +550,7 @@ class Profile extends Memcached_DataObject // This is the stream of favorite notices, in rev chron // order. This forces it into cache. - $ids = Fave::stream($this->id, 0, NOTICE_CACHE_WINDOW); + $ids = Fave::idStream($this->id, 0, NoticeStream::CACHE_WINDOW); // If it's in the list, then it's a fave @@ -562,7 +562,7 @@ class Profile extends Memcached_DataObject // then the cache has all available faves, so this one // is not a fave. - if (count($ids) < NOTICE_CACHE_WINDOW) { + if (count($ids) < NoticeStream::CACHE_WINDOW) { return false; } diff --git a/lib/noticestream.php b/lib/noticestream.php index a96eb53da6..d1ed203a67 100644 --- a/lib/noticestream.php +++ b/lib/noticestream.php @@ -47,6 +47,8 @@ if (!defined('STATUSNET')) { class NoticeStream { + const CACHE_WINDOW = 200; + public $generator = null; public $args = null; public $cachekey = null; @@ -71,13 +73,13 @@ class NoticeStream { $cache = Cache::instance(); - // We cache NOTICE_CACHE_WINDOW elements at the tip of the stream. + // We cache self::CACHE_WINDOW elements at the tip of the stream. // If the cache won't be hit, just generate directly. if (empty($cache) || $sinceId != 0 || $maxId != 0 || is_null($limit) || - ($offset + $limit) > NOTICE_CACHE_WINDOW) { + ($offset + $limit) > self::CACHE_WINDOW) { return $this->generate($offset, $limit, $sinceId, $maxId); } @@ -105,7 +107,7 @@ class NoticeStream if ($laststr !== false) { $window = explode(',', $laststr); $last_id = $window[0]; - $new_ids = $this->generate(0, NOTICE_CACHE_WINDOW, $last_id, 0); + $new_ids = $this->generate(0, self::CACHE_WINDOW, $last_id, 0); $new_window = array_merge($new_ids, $window); @@ -122,7 +124,7 @@ class NoticeStream // No cache hits :( Generate directly and stick the results // into the cache. Note we generate the full cache window. - $window = $this->generate(0, NOTICE_CACHE_WINDOW, 0, 0); + $window = $this->generate(0, self::CACHE_WINDOW, 0, 0); $windowstr = implode(',', $window); From 265f9af6f7e1403c5f0d97c91b70b4d77ff31caf Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Wed, 23 Mar 2011 14:56:51 -0700 Subject: [PATCH 15/90] Retool group join queue list ajax forms to use two buttons in one form, making it more ajax-submit-friendly. Needs util.js fixes for AJAX submission input buttons... --- actions/approvegroup.php | 26 +++++++++++++++++++++----- actions/groupqueue.php | 15 +++------------ lib/approvegroupform.php | 7 ++++--- 3 files changed, 28 insertions(+), 20 deletions(-) diff --git a/actions/approvegroup.php b/actions/approvegroup.php index c52e0e3c46..c102c64cd5 100644 --- a/actions/approvegroup.php +++ b/actions/approvegroup.php @@ -119,6 +119,15 @@ class ApprovegroupAction extends Action if (empty($this->request)) { $this->clientError(sprintf(_('%s is not in the moderation queue for this group.'), $this->profile->nickname), 403); } + + $this->approve = (bool)$this->arg('approve'); + $this->cancel = (bool)$this->arg('cancel'); + if (!$this->approve && !$this->cancel) { + $this->clientError(_('Internal error: received neither cancel nor abort.')); + } + if ($this->approve && $this->cancel) { + $this->clientError(_('Internal error: received both cancel and abort.')); + } return true; } @@ -136,7 +145,11 @@ class ApprovegroupAction extends Action parent::handle($args); try { - $this->profile->completeJoinGroup($this->group); + if ($this->approve) { + $this->profile->completeJoinGroup($this->group); + } elseif ($this->cancel) { + $this->profile->cancelJoinGroup($this->group); + } } catch (Exception $e) { common_log(LOG_ERROR, "Exception canceling group sub: " . $e->getMessage()); // TRANS: Server error displayed when cancelling a queued group join request fails. @@ -149,14 +162,17 @@ class ApprovegroupAction extends Action if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); - // TRANS: Title for leave group page after leaving. - $this->element('title', null, sprintf(_m('TITLE','%1$s left group %2$s'), + // TRANS: Title for leave group page after group join request is approved/disapproved. + $this->element('title', null, sprintf(_m('TITLE','%1$s\'s request for %2$s'), $this->profile->nickname, $this->group->nickname)); $this->elementEnd('head'); $this->elementStart('body'); - $jf = new JoinForm($this, $this->group); - $jf->show(); + if ($this->approve) { + $this->element('p', 'success', _m('Join request approved.')); + } elseif ($this->cancel) { + $this->element('p', 'success', _m('Join request canceled.')); + } $this->elementEnd('body'); $this->elementEnd('html'); } else { diff --git a/actions/groupqueue.php b/actions/groupqueue.php index 687fa0b973..1b4a8b7b6e 100644 --- a/actions/groupqueue.php +++ b/actions/groupqueue.php @@ -174,26 +174,17 @@ class GroupQueueListItem extends GroupMemberListItem { $this->startActions(); if (Event::handle('StartProfileListItemActionElements', array($this))) { - $this->showApproveButton(); - $this->showCancelButton(); + $this->showApproveButtons(); Event::handle('EndProfileListItemActionElements', array($this)); } $this->endActions(); } - function showApproveButton() + function showApproveButtons() { - $this->out->elementStart('li', 'entity_join'); + $this->out->elementStart('li', 'entity_approval'); $form = new ApproveGroupForm($this->out, $this->group, $this->profile); $form->show(); $this->out->elementEnd('li'); } - - function showCancelButton() - { - $this->out->elementStart('li', 'entity_leave'); - $bf = new CancelGroupForm($this->out, $this->group, $this->profile); - $bf->show(); - $this->out->elementEnd('li'); - } } diff --git a/lib/approvegroupform.php b/lib/approvegroupform.php index 265dc9ba71..3ad74e0486 100644 --- a/lib/approvegroupform.php +++ b/lib/approvegroupform.php @@ -79,7 +79,7 @@ class ApproveGroupForm extends Form function id() { - return 'group-cancel-' . $this->group->id; + return 'group-queue-' . $this->group->id; } /** @@ -90,7 +90,7 @@ class ApproveGroupForm extends Form function formClass() { - return 'form_group_join ajax'; + return 'form_group_queue ajax'; } /** @@ -117,6 +117,7 @@ class ApproveGroupForm extends Form function formActions() { - $this->out->submit('submit', _('Approve')); + $this->out->submit('approve', _('Accept')); + $this->out->submit('cancel', _('Reject')); } } From 2707a481e40c79ff334db45f2d5da19d3fc334d4 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Wed, 23 Mar 2011 15:21:31 -0700 Subject: [PATCH 16/90] Enhancement for 'ajax' form class: submit buttons behave more like normal submissions, submitting their name/values through a hidden field. This should work well for simple cases, but could conceivably create false positives if there's a click handler on the specific buttons, depending on whether event processing passes it on. Double-check if you're doing such forms along with the 'ajax' class! --- js/util.js | 12 ++++++++++++ js/util.min.js | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/js/util.js b/js/util.js index 61e6719dcc..9c074fdaa8 100644 --- a/js/util.js +++ b/js/util.js @@ -1464,6 +1464,18 @@ var SN = { // StatusNet SN.U.FormXHR($(this)); return false; }); + $('form.ajax input[type=submit]').live('click', function() { + // Some forms rely on knowing which submit button was clicked. + // Save a hidden input field which'll be picked up during AJAX + // submit... + var button = $(this); + var form = button.closest('form'); + form.find('.hidden-submit-button').remove(); + $('') + .attr('name', button.attr('name')) + .val(button.val()) + .appendTo(form); + }); }, /** diff --git a/js/util.min.js b/js/util.min.js index 0f81741830..5cc71c0803 100644 --- a/js/util.min.js +++ b/js/util.min.js @@ -1 +1 @@ -var SN={C:{I:{CounterBlackout:false,MaxLength:140,PatternUsername:/^[0-9a-zA-Z\-_.]*$/,HTTP20x30x:[200,201,202,203,204,205,206,300,301,302,303,304,305,306,307],NoticeFormMaster:null},S:{Disabled:"disabled",Warning:"warning",Error:"error",Success:"success",Processing:"processing",CommandResult:"command_result",FormNotice:"form_notice",NoticeDataGeo:"notice_data-geo",NoticeDataGeoCookie:"NoticeDataGeo",NoticeDataGeoSelected:"notice_data-geo_selected",StatusNetInstance:"StatusNetInstance"}},messages:{},msg:function(a){if(typeof SN.messages[a]=="undefined"){return"["+a+"]"}else{return SN.messages[a]}},U:{FormNoticeEnhancements:function(b){if(jQuery.data(b[0],"ElementData")===undefined){MaxLength=b.find(".count").text();if(typeof(MaxLength)=="undefined"){MaxLength=SN.C.I.MaxLength}jQuery.data(b[0],"ElementData",{MaxLength:MaxLength});SN.U.Counter(b);NDT=b.find(".notice_data-text:first");NDT.bind("keyup",function(c){SN.U.Counter(b)});var a=function(c){window.setTimeout(function(){SN.U.Counter(b)},50)};NDT.bind("cut",a).bind("paste",a)}else{b.find(".count").text(jQuery.data(b[0],"ElementData").MaxLength)}},Counter:function(d){SN.C.I.FormNoticeCurrent=d;var b=jQuery.data(d[0],"ElementData").MaxLength;if(b<=0){return}var c=b-SN.U.CharacterCount(d);var a=d.find(".count");if(c.toString()!=a.text()){if(!SN.C.I.CounterBlackout||c===0){if(a.text()!=String(c)){a.text(c)}if(c<0){d.addClass(SN.C.S.Warning)}else{d.removeClass(SN.C.S.Warning)}if(!SN.C.I.CounterBlackout){SN.C.I.CounterBlackout=true;SN.C.I.FormNoticeCurrent=d;window.setTimeout("SN.U.ClearCounterBlackout(SN.C.I.FormNoticeCurrent);",500)}}}},CharacterCount:function(a){return a.find(".notice_data-text:first").val().length},ClearCounterBlackout:function(a){SN.C.I.CounterBlackout=false;SN.U.Counter(a)},RewriteAjaxAction:function(a){if(document.location.protocol=="https:"&&a.substr(0,5)=="http:"){return a.replace(/^http:\/\/[^:\/]+/,"https://"+document.location.host)}else{return a}},FormXHR:function(a){$.ajax({type:"POST",dataType:"xml",url:SN.U.RewriteAjaxAction(a.attr("action")),data:a.serialize()+"&ajax=1",beforeSend:function(b){a.addClass(SN.C.S.Processing).find(".submit").addClass(SN.C.S.Disabled).attr(SN.C.S.Disabled,SN.C.S.Disabled)},error:function(d,e,c){var b=null;if(d.responseXML){b=$("#error",d.responseXML).text()}alert(b||c||e);a.removeClass(SN.C.S.Processing).find(".submit").removeClass(SN.C.S.Disabled).removeAttr(SN.C.S.Disabled)},success:function(b,c){if(typeof($("form",b)[0])!="undefined"){form_new=document._importNode($("form",b)[0],true);a.replaceWith(form_new)}else{if(typeof($("p",b)[0])!="undefined"){a.replaceWith(document._importNode($("p",b)[0],true))}else{alert("Unknown error.")}}}})},FormNoticeXHR:function(b){SN.C.I.NoticeDataGeo={};b.append('');b.attr("action",SN.U.RewriteAjaxAction(b.attr("action")));var c=function(d,e){b.append($('

').addClass(d).text(e))};var a=function(){b.find(".form_response").remove()};b.ajaxForm({dataType:"xml",timeout:"60000",beforeSend:function(d){if(b.find(".notice_data-text:first").val()==""){b.addClass(SN.C.S.Warning);return false}b.addClass(SN.C.S.Processing).find(".submit").addClass(SN.C.S.Disabled).attr(SN.C.S.Disabled,SN.C.S.Disabled);SN.U.normalizeGeoData(b);return true},error:function(f,g,e){b.removeClass(SN.C.S.Processing).find(".submit").removeClass(SN.C.S.Disabled).removeAttr(SN.C.S.Disabled,SN.C.S.Disabled);a();if(g=="timeout"){c("error","Sorry! We had trouble sending your notice. The servers are overloaded. Please try again, and contact the site administrator if this problem persists.")}else{var d=SN.U.GetResponseXML(f);if($("."+SN.C.S.Error,d).length>0){b.append(document._importNode($("."+SN.C.S.Error,d)[0],true))}else{if(parseInt(f.status)===0||jQuery.inArray(parseInt(f.status),SN.C.I.HTTP20x30x)>=0){b.resetForm().find(".attach-status").remove();SN.U.FormNoticeEnhancements(b)}else{c("error","(Sorry! We had trouble sending your notice ("+f.status+" "+f.statusText+"). Please report the problem to the site administrator if this happens again.")}}}},success:function(i,f){a();var o=$("#"+SN.C.S.Error,i);if(o.length>0){c("error",o.text())}else{if($("body")[0].id=="bookmarklet"){self.close()}var d=$("#"+SN.C.S.CommandResult,i);if(d.length>0){c("success",d.text())}else{var n=document._importNode($("li",i)[0],true);var j=$("#notices_primary .notices:first");var l=b.closest("li.notice-reply");if(l.length>0){var k=b.closest(".threaded-replies");var m=k.find(".notice-reply-placeholder");l.remove();var e=$(n).attr("id");if($("#"+e).length==0){$(n).insertBefore(m)}else{}m.show()}else{if(j.length>0&&SN.U.belongsOnTimeline(n)){if($("#"+n.id).length===0){var h=b.find("[name=inreplyto]").val();var g="#notices_primary #notice-"+h;if($("body")[0].id=="conversation"){if(h.length>0&&$(g+" .notices").length<1){$(g).append('
    ')}$($(g+" .notices")[0]).append(n)}else{j.prepend(n)}$("#"+n.id).css({display:"none"}).fadeIn(2500);SN.U.NoticeWithAttachment($("#"+n.id));SN.U.switchInputFormTab("placeholder")}}else{c("success",$("title",i).text())}}}b.resetForm();b.find("[name=inreplyto]").val("");b.find(".attach-status").remove();SN.U.FormNoticeEnhancements(b)}},complete:function(d,e){b.removeClass(SN.C.S.Processing).find(".submit").removeAttr(SN.C.S.Disabled).removeClass(SN.C.S.Disabled);b.find("[name=lat]").val(SN.C.I.NoticeDataGeo.NLat);b.find("[name=lon]").val(SN.C.I.NoticeDataGeo.NLon);b.find("[name=location_ns]").val(SN.C.I.NoticeDataGeo.NLNS);b.find("[name=location_id]").val(SN.C.I.NoticeDataGeo.NLID);b.find("[name=notice_data-geo]").attr("checked",SN.C.I.NoticeDataGeo.NDG)}})},normalizeGeoData:function(a){SN.C.I.NoticeDataGeo.NLat=a.find("[name=lat]").val();SN.C.I.NoticeDataGeo.NLon=a.find("[name=lon]").val();SN.C.I.NoticeDataGeo.NLNS=a.find("[name=location_ns]").val();SN.C.I.NoticeDataGeo.NLID=a.find("[name=location_id]").val();SN.C.I.NoticeDataGeo.NDG=a.find("[name=notice_data-geo]").attr("checked");var b=$.cookie(SN.C.S.NoticeDataGeoCookie);if(b!==null&&b!="disabled"){b=JSON.parse(b);SN.C.I.NoticeDataGeo.NLat=a.find("[name=lat]").val(b.NLat).val();SN.C.I.NoticeDataGeo.NLon=a.find("[name=lon]").val(b.NLon).val();if(b.NLNS){SN.C.I.NoticeDataGeo.NLNS=a.find("[name=location_ns]").val(b.NLNS).val();SN.C.I.NoticeDataGeo.NLID=a.find("[name=location_id]").val(b.NLID).val()}else{a.find("[name=location_ns]").val("");a.find("[name=location_id]").val("")}}if(b=="disabled"){SN.C.I.NoticeDataGeo.NDG=a.find("[name=notice_data-geo]").attr("checked",false).attr("checked")}else{SN.C.I.NoticeDataGeo.NDG=a.find("[name=notice_data-geo]").attr("checked",true).attr("checked")}},GetResponseXML:function(b){try{return b.responseXML}catch(a){return(new DOMParser()).parseFromString(b.responseText,"text/xml")}},NoticeReply:function(){$("#content .notice_reply").live("click",function(c){c.preventDefault();var b=$(this).closest("li.notice");var a=($(".author .nickname",b).length>0)?$($(".author .nickname",b)[0]):$(".author .nickname.uid");SN.U.NoticeInlineReplyTrigger(b,"@"+a.text());return false})},NoticeReplyTo:function(a){},NoticeInlineReplyTrigger:function(i,j){var b=$($(".notice_id",i)[0]).text();var e=i;var f=i.closest(".notices");if(f.hasClass("threaded-replies")){e=f.closest(".notice")}else{f=$("ul.threaded-replies",i);if(f.length==0){f=$('
      ');i.append(f)}}var k=$(".notice-reply-form",f);var d=function(){k.find("input[name=inreplyto]").val(b);var n=k.find("textarea");if(n.length==0){throw"No textarea"}var m="";if(j){m=j+" "}n.val(m+n.val().replace(RegExp(m,"i"),""));n.data("initialText",$.trim(j+""));n.focus();if(n[0].setSelectionRange){var l=n.val().length;n[0].setSelectionRange(l,l)}};if(k.length>0){d()}else{var h=f.find("li.notice-reply-placeholder").hide();var g=$("li.notice-reply",f);if(g.length==0){g=$('
    • ');var c=function(l){var m=document._importNode(l,true);g.append(m);f.append(g);var n=k=$(m);SN.Init.NoticeFormSetup(n);d()};if(SN.C.I.NoticeFormMaster){c(SN.C.I.NoticeFormMaster)}else{var a=$("#form_notice").attr("action");$.get(a,{ajax:1},function(l,n,m){c($("form",l)[0])})}}}},NoticeInlineReplyPlaceholder:function(b){var a=b.find("ul.threaded-replies");var c=$('
    • ');c.find("input").val(SN.msg("reply_placeholder"));a.append(c)},NoticeInlineReplySetup:function(){$("li.notice-reply-placeholder input").live("focus",function(){var a=$(this).closest("li.notice");SN.U.NoticeInlineReplyTrigger(a);return false});$("li.notice-reply-comments a").live("click",function(){var a=$(this).attr("href");var b=$(this).closest(".threaded-replies");$.get(a,{ajax:1},function(d,f,e){var c=$(".threaded-replies",d);if(c.length){b.replaceWith(document._importNode(c[0],true))}});return false})},NoticeRepeat:function(){$(".form_repeat").live("click",function(a){a.preventDefault();SN.U.NoticeRepeatConfirmation($(this));return false})},NoticeRepeatConfirmation:function(a){var c=a.find(".submit");var b=c.clone();b.addClass("submit_dialogbox").removeClass("submit");a.append(b);b.bind("click",function(){SN.U.FormXHR(a);return false});c.hide();a.addClass("dialogbox").append('').closest(".notice-options").addClass("opaque");a.find("button.close").click(function(){$(this).remove();a.removeClass("dialogbox").closest(".notice-options").removeClass("opaque");a.find(".submit_dialogbox").remove();a.find(".submit").show();return false})},NoticeAttachments:function(){$(".notice a.attachment").each(function(){SN.U.NoticeWithAttachment($(this).closest(".notice"))})},NoticeWithAttachment:function(b){if(b.find(".attachment").length===0){return}var a=b.find(".attachment.more");if(a.length>0){$(a[0]).click(function(){var c=$(this);c.addClass(SN.C.S.Processing);$.get(c.attr("href")+"/ajax",null,function(d){c.parent(".entry-content").html($(d).find("#attachment_view .entry-content").html())});return false}).attr("title",SN.msg("showmore_tooltip"))}},NoticeDataAttach:function(b){var a=b.find("input[type=file]");a.change(function(f){b.find(".attach-status").remove();var d=$(this).val();if(!d){return false}var c=$('
      ');c.find("code").text(d);c.find("button").click(function(){c.remove();a.val("");return false});b.append(c);if(typeof this.files=="object"){for(var e=0;eg){f=false}if(f){h(c,function(j){var i=$("").attr("title",e).attr("alt",e).attr("src",j).attr("style","height: 120px");d.find(".attach-status").append(i)})}else{var b=$("
      ").text(e);d.find(".attach-status").append(b)}},NoticeLocationAttach:function(a){var e=a.find("[name=lat]");var k=a.find("[name=lon]");var g=a.find("[name=location_ns]").val();var l=a.find("[name=location_id]").val();var b="";var d=a.find("[name=notice_data-geo]");var c=a.find("[name=notice_data-geo]");var j=a.find("label.notice_data-geo");function f(n){j.attr("title",jQuery.trim(j.text())).removeClass("checked");a.find("[name=lat]").val("");a.find("[name=lon]").val("");a.find("[name=location_ns]").val("");a.find("[name=location_id]").val("");a.find("[name=notice_data-geo]").attr("checked",false);$.cookie(SN.C.S.NoticeDataGeoCookie,"disabled",{path:"/"});if(n){a.find(".geo_status_wrapper").removeClass("success").addClass("error");a.find(".geo_status_wrapper .geo_status").text(n)}else{a.find(".geo_status_wrapper").remove()}}function m(n,o){SN.U.NoticeGeoStatus(a,"Looking up place name...");$.getJSON(n,o,function(p){var q,r;if(typeof(p.location_ns)!="undefined"){a.find("[name=location_ns]").val(p.location_ns);q=p.location_ns}if(typeof(p.location_id)!="undefined"){a.find("[name=location_id]").val(p.location_id);r=p.location_id}if(typeof(p.name)=="undefined"){NLN_text=o.lat+";"+o.lon}else{NLN_text=p.name}SN.U.NoticeGeoStatus(a,NLN_text,o.lat,o.lon,p.url);j.attr("title",NoticeDataGeo_text.ShareDisable+" ("+NLN_text+")");a.find("[name=lat]").val(o.lat);a.find("[name=lon]").val(o.lon);a.find("[name=location_ns]").val(q);a.find("[name=location_id]").val(r);a.find("[name=notice_data-geo]").attr("checked",true);var s={NLat:o.lat,NLon:o.lon,NLNS:q,NLID:r,NLN:NLN_text,NLNU:p.url,NDG:true};$.cookie(SN.C.S.NoticeDataGeoCookie,JSON.stringify(s),{path:"/"})})}if(c.length>0){if($.cookie(SN.C.S.NoticeDataGeoCookie)=="disabled"){c.attr("checked",false)}else{c.attr("checked",true)}var h=a.find(".notice_data-geo_wrap");var i=h.attr("data-api");j.attr("title",j.text());c.change(function(){if(c.attr("checked")===true||$.cookie(SN.C.S.NoticeDataGeoCookie)===null){j.attr("title",NoticeDataGeo_text.ShareDisable).addClass("checked");if($.cookie(SN.C.S.NoticeDataGeoCookie)===null||$.cookie(SN.C.S.NoticeDataGeoCookie)=="disabled"){if(navigator.geolocation){SN.U.NoticeGeoStatus(a,"Requesting location from browser...");navigator.geolocation.getCurrentPosition(function(p){a.find("[name=lat]").val(p.coords.latitude);a.find("[name=lon]").val(p.coords.longitude);var q={lat:p.coords.latitude,lon:p.coords.longitude,token:$("#token").val()};m(i,q)},function(p){switch(p.code){case p.PERMISSION_DENIED:f("Location permission denied.");break;case p.TIMEOUT:f("Location lookup timeout.");break}},{timeout:10000})}else{if(e.length>0&&k.length>0){var n={lat:e,lon:k,token:$("#token").val()};m(i,n)}else{f();c.remove();j.remove()}}}else{var o=JSON.parse($.cookie(SN.C.S.NoticeDataGeoCookie));a.find("[name=lat]").val(o.NLat);a.find("[name=lon]").val(o.NLon);a.find("[name=location_ns]").val(o.NLNS);a.find("[name=location_id]").val(o.NLID);a.find("[name=notice_data-geo]").attr("checked",o.NDG);SN.U.NoticeGeoStatus(a,o.NLN,o.NLat,o.NLon,o.NLNU);j.attr("title",NoticeDataGeo_text.ShareDisable+" ("+o.NLN+")").addClass("checked")}}else{f()}}).change()}},NoticeGeoStatus:function(e,a,f,g,c){var h=e.find(".geo_status_wrapper");if(h.length==0){h=$('
      ');h.find("button.close").click(function(){e.find("[name=notice_data-geo]").removeAttr("checked").change();return false});e.append(h)}var b;if(c){b=$("").attr("href",c)}else{b=$("")}b.text(a);if(f||g){var d=f+";"+g;b.attr("title",d);if(!a){b.text(d)}}h.find(".geo_status").empty().append(b)},NewDirectMessage:function(){NDM=$(".entity_send-a-message a");NDM.attr({href:NDM.attr("href")+"&ajax=1"});NDM.bind("click",function(){var a=$(".entity_send-a-message form");if(a.length===0){$(this).addClass(SN.C.S.Processing);$.get(NDM.attr("href"),null,function(b){$(".entity_send-a-message").append(document._importNode($("form",b)[0],true));a=$(".entity_send-a-message .form_notice");SN.U.FormNoticeXHR(a);SN.U.FormNoticeEnhancements(a);a.append('');$(".entity_send-a-message button").click(function(){a.hide();return false});NDM.removeClass(SN.C.S.Processing)})}else{a.show();$(".entity_send-a-message textarea").focus()}return false})},GetFullYear:function(c,d,a){var b=new Date();b.setFullYear(c,d,a);return b},StatusNetInstance:{Set:function(b){var a=SN.U.StatusNetInstance.Get();if(a!==null){b=$.extend(a,b)}$.cookie(SN.C.S.StatusNetInstance,JSON.stringify(b),{path:"/",expires:SN.U.GetFullYear(2029,0,1)})},Get:function(){var a=$.cookie(SN.C.S.StatusNetInstance);if(a!==null){return JSON.parse(a)}return null},Delete:function(){$.cookie(SN.C.S.StatusNetInstance,null)}},belongsOnTimeline:function(b){var a=$("body").attr("id");if(a=="public"){return true}var c=$("#nav_profile a").attr("href");if(c){var d=$(b).find(".vcard.author a.url").attr("href");if(d==c){if(a=="all"||a=="showstream"){return true}}}return false},switchInputFormTab:function(a){$(".input_form_nav_tab.current").removeClass("current");if(a=="placeholder"){$("#input_form_nav_status").addClass("current")}else{$("#input_form_nav_"+a).addClass("current")}$(".input_form.current").removeClass("current");$("#input_form_"+a).addClass("current").find(".ajax-notice").each(function(){var b=$(this);SN.Init.NoticeFormSetup(b)}).find("textarea:first").focus()}},Init:{NoticeForm:function(){if($("body.user_in").length>0){$("#input_form_placeholder input.placeholder").focus(function(){SN.U.switchInputFormTab("status")});$("body").bind("click",function(g){var d=$("#content .input_forms div.current");if(d.length>0){if($("#content .input_forms").has(g.target).length==0){var a=d.find('textarea, input[type=text], input[type=""]');var c=false;a.each(function(){c=c||$(this).val()});if(!c){SN.U.switchInputFormTab("placeholder")}}}var b=$("li.notice-reply");if(b.length>0){var f=$(g.target);b.each(function(){var j=$(this);if(j.has(g.target).length==0){var h=j.find(".notice_data-text:first");var i=$.trim(h.val());if(i==""||i==h.data("initialText")){var e=j.closest("li.notice");j.remove();e.find("li.notice-reply-placeholder").show()}}})}})}},NoticeFormSetup:function(a){if(!a.data("NoticeFormSetup")){SN.U.NoticeLocationAttach(a);SN.U.FormNoticeXHR(a);SN.U.FormNoticeEnhancements(a);SN.U.NoticeDataAttach(a);a.data("NoticeFormSetup",true)}},Notices:function(){if($("body.user_in").length>0){var a=$(".form_notice:first");if(a.length>0){SN.C.I.NoticeFormMaster=document._importNode(a[0],true)}SN.U.NoticeRepeat();SN.U.NoticeReply();SN.U.NoticeInlineReplySetup()}SN.U.NoticeAttachments()},EntityActions:function(){if($("body.user_in").length>0){SN.U.NewDirectMessage()}},Login:function(){if(SN.U.StatusNetInstance.Get()!==null){var a=SN.U.StatusNetInstance.Get().Nickname;if(a!==null){$("#form_login #nickname").val(a)}}$("#form_login").bind("submit",function(){SN.U.StatusNetInstance.Set({Nickname:$("#form_login #nickname").val()});return true})},AjaxForms:function(){$("form.ajax").live("submit",function(){SN.U.FormXHR($(this));return false})},UploadForms:function(){$("input[type=file]").change(function(d){if(typeof this.files=="object"&&this.files.length>0){var c=0;for(var b=0;b0&&c>a){var e="File too large: maximum upload size is %d bytes.";alert(e.replace("%d",a));$(this).val("");d.preventDefault();return false}}})}}};$(document).ready(function(){SN.Init.AjaxForms();SN.Init.UploadForms();if($("."+SN.C.S.FormNotice).length>0){SN.Init.NoticeForm()}if($("#content .notices").length>0){SN.Init.Notices()}if($("#content .entity_actions").length>0){SN.Init.EntityActions()}if($("#form_login").length>0){SN.Init.Login()}});if(!document.ELEMENT_NODE){document.ELEMENT_NODE=1;document.ATTRIBUTE_NODE=2;document.TEXT_NODE=3;document.CDATA_SECTION_NODE=4;document.ENTITY_REFERENCE_NODE=5;document.ENTITY_NODE=6;document.PROCESSING_INSTRUCTION_NODE=7;document.COMMENT_NODE=8;document.DOCUMENT_NODE=9;document.DOCUMENT_TYPE_NODE=10;document.DOCUMENT_FRAGMENT_NODE=11;document.NOTATION_NODE=12}document._importNode=function(e,a){switch(e.nodeType){case document.ELEMENT_NODE:var d=document.createElement(e.nodeName);if(e.attributes&&e.attributes.length>0){for(var c=0,b=e.attributes.length;c0){for(var c=0,b=e.childNodes.length;c0){var j=c.pop();j()}}};window._google_loader_apiLoaded=function(){f()};var d=function(){return(window.google&&google.loader)};var g=function(j){if(d()){return true}h(j);e();return false};e();return{shim:true,type:"ClientLocation",lastPosition:null,getCurrentPosition:function(k,n,o){var m=this;if(!g(function(){m.getCurrentPosition(k,n,o)})){return}if(google.loader.ClientLocation){var l=google.loader.ClientLocation;var j={coords:{latitude:l.latitude,longitude:l.longitude,altitude:null,accuracy:43000,altitudeAccuracy:null,heading:null,speed:null},address:{city:l.address.city,country:l.address.country,country_code:l.address.country_code,region:l.address.region},timestamp:new Date()};k(j);this.lastPosition=j}else{if(n==="function"){n({code:3,message:"Using the Google ClientLocation API and it is not able to calculate a location."})}}},watchPosition:function(j,l,m){this.getCurrentPosition(j,l,m);var k=this;var n=setInterval(function(){k.getCurrentPosition(j,l,m)},10000);return n},clearWatch:function(j){clearInterval(j)},getPermission:function(l,j,k){return true}}});navigator.geolocation=(window.google&&google.gears)?a():b()})()}; \ No newline at end of file +var SN={C:{I:{CounterBlackout:false,MaxLength:140,PatternUsername:/^[0-9a-zA-Z\-_.]*$/,HTTP20x30x:[200,201,202,203,204,205,206,300,301,302,303,304,305,306,307],NoticeFormMaster:null},S:{Disabled:"disabled",Warning:"warning",Error:"error",Success:"success",Processing:"processing",CommandResult:"command_result",FormNotice:"form_notice",NoticeDataGeo:"notice_data-geo",NoticeDataGeoCookie:"NoticeDataGeo",NoticeDataGeoSelected:"notice_data-geo_selected",StatusNetInstance:"StatusNetInstance"}},messages:{},msg:function(a){if(typeof SN.messages[a]=="undefined"){return"["+a+"]"}else{return SN.messages[a]}},U:{FormNoticeEnhancements:function(b){if(jQuery.data(b[0],"ElementData")===undefined){MaxLength=b.find(".count").text();if(typeof(MaxLength)=="undefined"){MaxLength=SN.C.I.MaxLength}jQuery.data(b[0],"ElementData",{MaxLength:MaxLength});SN.U.Counter(b);NDT=b.find(".notice_data-text:first");NDT.bind("keyup",function(c){SN.U.Counter(b)});var a=function(c){window.setTimeout(function(){SN.U.Counter(b)},50)};NDT.bind("cut",a).bind("paste",a)}else{b.find(".count").text(jQuery.data(b[0],"ElementData").MaxLength)}},Counter:function(d){SN.C.I.FormNoticeCurrent=d;var b=jQuery.data(d[0],"ElementData").MaxLength;if(b<=0){return}var c=b-SN.U.CharacterCount(d);var a=d.find(".count");if(c.toString()!=a.text()){if(!SN.C.I.CounterBlackout||c===0){if(a.text()!=String(c)){a.text(c)}if(c<0){d.addClass(SN.C.S.Warning)}else{d.removeClass(SN.C.S.Warning)}if(!SN.C.I.CounterBlackout){SN.C.I.CounterBlackout=true;SN.C.I.FormNoticeCurrent=d;window.setTimeout("SN.U.ClearCounterBlackout(SN.C.I.FormNoticeCurrent);",500)}}}},CharacterCount:function(a){return a.find(".notice_data-text:first").val().length},ClearCounterBlackout:function(a){SN.C.I.CounterBlackout=false;SN.U.Counter(a)},RewriteAjaxAction:function(a){if(document.location.protocol=="https:"&&a.substr(0,5)=="http:"){return a.replace(/^http:\/\/[^:\/]+/,"https://"+document.location.host)}else{return a}},FormXHR:function(a){$.ajax({type:"POST",dataType:"xml",url:SN.U.RewriteAjaxAction(a.attr("action")),data:a.serialize()+"&ajax=1",beforeSend:function(b){a.addClass(SN.C.S.Processing).find(".submit").addClass(SN.C.S.Disabled).attr(SN.C.S.Disabled,SN.C.S.Disabled)},error:function(d,e,c){var b=null;if(d.responseXML){b=$("#error",d.responseXML).text()}alert(b||c||e);a.removeClass(SN.C.S.Processing).find(".submit").removeClass(SN.C.S.Disabled).removeAttr(SN.C.S.Disabled)},success:function(b,c){if(typeof($("form",b)[0])!="undefined"){form_new=document._importNode($("form",b)[0],true);a.replaceWith(form_new)}else{if(typeof($("p",b)[0])!="undefined"){a.replaceWith(document._importNode($("p",b)[0],true))}else{alert("Unknown error.")}}}})},FormNoticeXHR:function(b){SN.C.I.NoticeDataGeo={};b.append('');b.attr("action",SN.U.RewriteAjaxAction(b.attr("action")));var c=function(d,e){b.append($('

      ').addClass(d).text(e))};var a=function(){b.find(".form_response").remove()};b.ajaxForm({dataType:"xml",timeout:"60000",beforeSend:function(d){if(b.find(".notice_data-text:first").val()==""){b.addClass(SN.C.S.Warning);return false}b.addClass(SN.C.S.Processing).find(".submit").addClass(SN.C.S.Disabled).attr(SN.C.S.Disabled,SN.C.S.Disabled);SN.U.normalizeGeoData(b);return true},error:function(f,g,e){b.removeClass(SN.C.S.Processing).find(".submit").removeClass(SN.C.S.Disabled).removeAttr(SN.C.S.Disabled,SN.C.S.Disabled);a();if(g=="timeout"){c("error","Sorry! We had trouble sending your notice. The servers are overloaded. Please try again, and contact the site administrator if this problem persists.")}else{var d=SN.U.GetResponseXML(f);if($("."+SN.C.S.Error,d).length>0){b.append(document._importNode($("."+SN.C.S.Error,d)[0],true))}else{if(parseInt(f.status)===0||jQuery.inArray(parseInt(f.status),SN.C.I.HTTP20x30x)>=0){b.resetForm().find(".attach-status").remove();SN.U.FormNoticeEnhancements(b)}else{c("error","(Sorry! We had trouble sending your notice ("+f.status+" "+f.statusText+"). Please report the problem to the site administrator if this happens again.")}}}},success:function(i,f){a();var o=$("#"+SN.C.S.Error,i);if(o.length>0){c("error",o.text())}else{if($("body")[0].id=="bookmarklet"){self.close()}var d=$("#"+SN.C.S.CommandResult,i);if(d.length>0){c("success",d.text())}else{var n=document._importNode($("li",i)[0],true);var j=$("#notices_primary .notices:first");var l=b.closest("li.notice-reply");if(l.length>0){var k=b.closest(".threaded-replies");var m=k.find(".notice-reply-placeholder");l.remove();var e=$(n).attr("id");if($("#"+e).length==0){$(n).insertBefore(m)}else{}m.show()}else{if(j.length>0&&SN.U.belongsOnTimeline(n)){if($("#"+n.id).length===0){var h=b.find("[name=inreplyto]").val();var g="#notices_primary #notice-"+h;if($("body")[0].id=="conversation"){if(h.length>0&&$(g+" .notices").length<1){$(g).append('
        ')}$($(g+" .notices")[0]).append(n)}else{j.prepend(n)}$("#"+n.id).css({display:"none"}).fadeIn(2500);SN.U.NoticeWithAttachment($("#"+n.id));SN.U.switchInputFormTab("placeholder")}}else{c("success",$("title",i).text())}}}b.resetForm();b.find("[name=inreplyto]").val("");b.find(".attach-status").remove();SN.U.FormNoticeEnhancements(b)}},complete:function(d,e){b.removeClass(SN.C.S.Processing).find(".submit").removeAttr(SN.C.S.Disabled).removeClass(SN.C.S.Disabled);b.find("[name=lat]").val(SN.C.I.NoticeDataGeo.NLat);b.find("[name=lon]").val(SN.C.I.NoticeDataGeo.NLon);b.find("[name=location_ns]").val(SN.C.I.NoticeDataGeo.NLNS);b.find("[name=location_id]").val(SN.C.I.NoticeDataGeo.NLID);b.find("[name=notice_data-geo]").attr("checked",SN.C.I.NoticeDataGeo.NDG)}})},normalizeGeoData:function(a){SN.C.I.NoticeDataGeo.NLat=a.find("[name=lat]").val();SN.C.I.NoticeDataGeo.NLon=a.find("[name=lon]").val();SN.C.I.NoticeDataGeo.NLNS=a.find("[name=location_ns]").val();SN.C.I.NoticeDataGeo.NLID=a.find("[name=location_id]").val();SN.C.I.NoticeDataGeo.NDG=a.find("[name=notice_data-geo]").attr("checked");var b=$.cookie(SN.C.S.NoticeDataGeoCookie);if(b!==null&&b!="disabled"){b=JSON.parse(b);SN.C.I.NoticeDataGeo.NLat=a.find("[name=lat]").val(b.NLat).val();SN.C.I.NoticeDataGeo.NLon=a.find("[name=lon]").val(b.NLon).val();if(b.NLNS){SN.C.I.NoticeDataGeo.NLNS=a.find("[name=location_ns]").val(b.NLNS).val();SN.C.I.NoticeDataGeo.NLID=a.find("[name=location_id]").val(b.NLID).val()}else{a.find("[name=location_ns]").val("");a.find("[name=location_id]").val("")}}if(b=="disabled"){SN.C.I.NoticeDataGeo.NDG=a.find("[name=notice_data-geo]").attr("checked",false).attr("checked")}else{SN.C.I.NoticeDataGeo.NDG=a.find("[name=notice_data-geo]").attr("checked",true).attr("checked")}},GetResponseXML:function(b){try{return b.responseXML}catch(a){return(new DOMParser()).parseFromString(b.responseText,"text/xml")}},NoticeReply:function(){$("#content .notice_reply").live("click",function(c){c.preventDefault();var b=$(this).closest("li.notice");var a=($(".author .nickname",b).length>0)?$($(".author .nickname",b)[0]):$(".author .nickname.uid");SN.U.NoticeInlineReplyTrigger(b,"@"+a.text());return false})},NoticeReplyTo:function(a){},NoticeInlineReplyTrigger:function(i,j){var b=$($(".notice_id",i)[0]).text();var e=i;var f=i.closest(".notices");if(f.hasClass("threaded-replies")){e=f.closest(".notice")}else{f=$("ul.threaded-replies",i);if(f.length==0){f=$('
          ');i.append(f)}}var k=$(".notice-reply-form",f);var d=function(){k.find("input[name=inreplyto]").val(b);var n=k.find("textarea");if(n.length==0){throw"No textarea"}var m="";if(j){m=j+" "}n.val(m+n.val().replace(RegExp(m,"i"),""));n.data("initialText",$.trim(j+""));n.focus();if(n[0].setSelectionRange){var l=n.val().length;n[0].setSelectionRange(l,l)}};if(k.length>0){d()}else{var h=f.find("li.notice-reply-placeholder").hide();var g=$("li.notice-reply",f);if(g.length==0){g=$('
        • ');var c=function(l){var m=document._importNode(l,true);g.append(m);f.append(g);var n=k=$(m);SN.Init.NoticeFormSetup(n);d()};if(SN.C.I.NoticeFormMaster){c(SN.C.I.NoticeFormMaster)}else{var a=$("#form_notice").attr("action");$.get(a,{ajax:1},function(l,n,m){c($("form",l)[0])})}}}},NoticeInlineReplyPlaceholder:function(b){var a=b.find("ul.threaded-replies");var c=$('
        • ');c.find("input").val(SN.msg("reply_placeholder"));a.append(c)},NoticeInlineReplySetup:function(){$("li.notice-reply-placeholder input").live("focus",function(){var a=$(this).closest("li.notice");SN.U.NoticeInlineReplyTrigger(a);return false});$("li.notice-reply-comments a").live("click",function(){var a=$(this).attr("href");var b=$(this).closest(".threaded-replies");$.get(a,{ajax:1},function(d,f,e){var c=$(".threaded-replies",d);if(c.length){b.replaceWith(document._importNode(c[0],true))}});return false})},NoticeRepeat:function(){$(".form_repeat").live("click",function(a){a.preventDefault();SN.U.NoticeRepeatConfirmation($(this));return false})},NoticeRepeatConfirmation:function(a){var c=a.find(".submit");var b=c.clone();b.addClass("submit_dialogbox").removeClass("submit");a.append(b);b.bind("click",function(){SN.U.FormXHR(a);return false});c.hide();a.addClass("dialogbox").append('').closest(".notice-options").addClass("opaque");a.find("button.close").click(function(){$(this).remove();a.removeClass("dialogbox").closest(".notice-options").removeClass("opaque");a.find(".submit_dialogbox").remove();a.find(".submit").show();return false})},NoticeAttachments:function(){$(".notice a.attachment").each(function(){SN.U.NoticeWithAttachment($(this).closest(".notice"))})},NoticeWithAttachment:function(b){if(b.find(".attachment").length===0){return}var a=b.find(".attachment.more");if(a.length>0){$(a[0]).click(function(){var c=$(this);c.addClass(SN.C.S.Processing);$.get(c.attr("href")+"/ajax",null,function(d){c.parent(".entry-content").html($(d).find("#attachment_view .entry-content").html())});return false}).attr("title",SN.msg("showmore_tooltip"))}},NoticeDataAttach:function(b){var a=b.find("input[type=file]");a.change(function(f){b.find(".attach-status").remove();var d=$(this).val();if(!d){return false}var c=$('
          ');c.find("code").text(d);c.find("button").click(function(){c.remove();a.val("");return false});b.append(c);if(typeof this.files=="object"){for(var e=0;eg){f=false}if(f){h(c,function(j){var i=$("").attr("title",e).attr("alt",e).attr("src",j).attr("style","height: 120px");d.find(".attach-status").append(i)})}else{var b=$("
          ").text(e);d.find(".attach-status").append(b)}},NoticeLocationAttach:function(a){var e=a.find("[name=lat]");var k=a.find("[name=lon]");var g=a.find("[name=location_ns]").val();var l=a.find("[name=location_id]").val();var b="";var d=a.find("[name=notice_data-geo]");var c=a.find("[name=notice_data-geo]");var j=a.find("label.notice_data-geo");function f(n){j.attr("title",jQuery.trim(j.text())).removeClass("checked");a.find("[name=lat]").val("");a.find("[name=lon]").val("");a.find("[name=location_ns]").val("");a.find("[name=location_id]").val("");a.find("[name=notice_data-geo]").attr("checked",false);$.cookie(SN.C.S.NoticeDataGeoCookie,"disabled",{path:"/"});if(n){a.find(".geo_status_wrapper").removeClass("success").addClass("error");a.find(".geo_status_wrapper .geo_status").text(n)}else{a.find(".geo_status_wrapper").remove()}}function m(n,o){SN.U.NoticeGeoStatus(a,"Looking up place name...");$.getJSON(n,o,function(p){var q,r;if(typeof(p.location_ns)!="undefined"){a.find("[name=location_ns]").val(p.location_ns);q=p.location_ns}if(typeof(p.location_id)!="undefined"){a.find("[name=location_id]").val(p.location_id);r=p.location_id}if(typeof(p.name)=="undefined"){NLN_text=o.lat+";"+o.lon}else{NLN_text=p.name}SN.U.NoticeGeoStatus(a,NLN_text,o.lat,o.lon,p.url);j.attr("title",NoticeDataGeo_text.ShareDisable+" ("+NLN_text+")");a.find("[name=lat]").val(o.lat);a.find("[name=lon]").val(o.lon);a.find("[name=location_ns]").val(q);a.find("[name=location_id]").val(r);a.find("[name=notice_data-geo]").attr("checked",true);var s={NLat:o.lat,NLon:o.lon,NLNS:q,NLID:r,NLN:NLN_text,NLNU:p.url,NDG:true};$.cookie(SN.C.S.NoticeDataGeoCookie,JSON.stringify(s),{path:"/"})})}if(c.length>0){if($.cookie(SN.C.S.NoticeDataGeoCookie)=="disabled"){c.attr("checked",false)}else{c.attr("checked",true)}var h=a.find(".notice_data-geo_wrap");var i=h.attr("data-api");j.attr("title",j.text());c.change(function(){if(c.attr("checked")===true||$.cookie(SN.C.S.NoticeDataGeoCookie)===null){j.attr("title",NoticeDataGeo_text.ShareDisable).addClass("checked");if($.cookie(SN.C.S.NoticeDataGeoCookie)===null||$.cookie(SN.C.S.NoticeDataGeoCookie)=="disabled"){if(navigator.geolocation){SN.U.NoticeGeoStatus(a,"Requesting location from browser...");navigator.geolocation.getCurrentPosition(function(p){a.find("[name=lat]").val(p.coords.latitude);a.find("[name=lon]").val(p.coords.longitude);var q={lat:p.coords.latitude,lon:p.coords.longitude,token:$("#token").val()};m(i,q)},function(p){switch(p.code){case p.PERMISSION_DENIED:f("Location permission denied.");break;case p.TIMEOUT:f("Location lookup timeout.");break}},{timeout:10000})}else{if(e.length>0&&k.length>0){var n={lat:e,lon:k,token:$("#token").val()};m(i,n)}else{f();c.remove();j.remove()}}}else{var o=JSON.parse($.cookie(SN.C.S.NoticeDataGeoCookie));a.find("[name=lat]").val(o.NLat);a.find("[name=lon]").val(o.NLon);a.find("[name=location_ns]").val(o.NLNS);a.find("[name=location_id]").val(o.NLID);a.find("[name=notice_data-geo]").attr("checked",o.NDG);SN.U.NoticeGeoStatus(a,o.NLN,o.NLat,o.NLon,o.NLNU);j.attr("title",NoticeDataGeo_text.ShareDisable+" ("+o.NLN+")").addClass("checked")}}else{f()}}).change()}},NoticeGeoStatus:function(e,a,f,g,c){var h=e.find(".geo_status_wrapper");if(h.length==0){h=$('
          ');h.find("button.close").click(function(){e.find("[name=notice_data-geo]").removeAttr("checked").change();return false});e.append(h)}var b;if(c){b=$("").attr("href",c)}else{b=$("")}b.text(a);if(f||g){var d=f+";"+g;b.attr("title",d);if(!a){b.text(d)}}h.find(".geo_status").empty().append(b)},NewDirectMessage:function(){NDM=$(".entity_send-a-message a");NDM.attr({href:NDM.attr("href")+"&ajax=1"});NDM.bind("click",function(){var a=$(".entity_send-a-message form");if(a.length===0){$(this).addClass(SN.C.S.Processing);$.get(NDM.attr("href"),null,function(b){$(".entity_send-a-message").append(document._importNode($("form",b)[0],true));a=$(".entity_send-a-message .form_notice");SN.U.FormNoticeXHR(a);SN.U.FormNoticeEnhancements(a);a.append('');$(".entity_send-a-message button").click(function(){a.hide();return false});NDM.removeClass(SN.C.S.Processing)})}else{a.show();$(".entity_send-a-message textarea").focus()}return false})},GetFullYear:function(c,d,a){var b=new Date();b.setFullYear(c,d,a);return b},StatusNetInstance:{Set:function(b){var a=SN.U.StatusNetInstance.Get();if(a!==null){b=$.extend(a,b)}$.cookie(SN.C.S.StatusNetInstance,JSON.stringify(b),{path:"/",expires:SN.U.GetFullYear(2029,0,1)})},Get:function(){var a=$.cookie(SN.C.S.StatusNetInstance);if(a!==null){return JSON.parse(a)}return null},Delete:function(){$.cookie(SN.C.S.StatusNetInstance,null)}},belongsOnTimeline:function(b){var a=$("body").attr("id");if(a=="public"){return true}var c=$("#nav_profile a").attr("href");if(c){var d=$(b).find(".vcard.author a.url").attr("href");if(d==c){if(a=="all"||a=="showstream"){return true}}}return false},switchInputFormTab:function(a){$(".input_form_nav_tab.current").removeClass("current");if(a=="placeholder"){$("#input_form_nav_status").addClass("current")}else{$("#input_form_nav_"+a).addClass("current")}$(".input_form.current").removeClass("current");$("#input_form_"+a).addClass("current").find(".ajax-notice").each(function(){var b=$(this);SN.Init.NoticeFormSetup(b)}).find("textarea:first").focus()}},Init:{NoticeForm:function(){if($("body.user_in").length>0){$("#input_form_placeholder input.placeholder").focus(function(){SN.U.switchInputFormTab("status")});$("body").bind("click",function(g){var d=$("#content .input_forms div.current");if(d.length>0){if($("#content .input_forms").has(g.target).length==0){var a=d.find('textarea, input[type=text], input[type=""]');var c=false;a.each(function(){c=c||$(this).val()});if(!c){SN.U.switchInputFormTab("placeholder")}}}var b=$("li.notice-reply");if(b.length>0){var f=$(g.target);b.each(function(){var j=$(this);if(j.has(g.target).length==0){var h=j.find(".notice_data-text:first");var i=$.trim(h.val());if(i==""||i==h.data("initialText")){var e=j.closest("li.notice");j.remove();e.find("li.notice-reply-placeholder").show()}}})}})}},NoticeFormSetup:function(a){if(!a.data("NoticeFormSetup")){SN.U.NoticeLocationAttach(a);SN.U.FormNoticeXHR(a);SN.U.FormNoticeEnhancements(a);SN.U.NoticeDataAttach(a);a.data("NoticeFormSetup",true)}},Notices:function(){if($("body.user_in").length>0){var a=$(".form_notice:first");if(a.length>0){SN.C.I.NoticeFormMaster=document._importNode(a[0],true)}SN.U.NoticeRepeat();SN.U.NoticeReply();SN.U.NoticeInlineReplySetup()}SN.U.NoticeAttachments()},EntityActions:function(){if($("body.user_in").length>0){SN.U.NewDirectMessage()}},Login:function(){if(SN.U.StatusNetInstance.Get()!==null){var a=SN.U.StatusNetInstance.Get().Nickname;if(a!==null){$("#form_login #nickname").val(a)}}$("#form_login").bind("submit",function(){SN.U.StatusNetInstance.Set({Nickname:$("#form_login #nickname").val()});return true})},AjaxForms:function(){$("form.ajax").live("submit",function(){SN.U.FormXHR($(this));return false});$("form.ajax input[type=submit]").live("click",function(){var a=$(this);var b=a.closest("form");b.find(".hidden-submit-button").remove();$('').attr("name",a.attr("name")).val(a.val()).appendTo(b)})},UploadForms:function(){$("input[type=file]").change(function(d){if(typeof this.files=="object"&&this.files.length>0){var c=0;for(var b=0;b0&&c>a){var e="File too large: maximum upload size is %d bytes.";alert(e.replace("%d",a));$(this).val("");d.preventDefault();return false}}})}}};$(document).ready(function(){SN.Init.AjaxForms();SN.Init.UploadForms();if($("."+SN.C.S.FormNotice).length>0){SN.Init.NoticeForm()}if($("#content .notices").length>0){SN.Init.Notices()}if($("#content .entity_actions").length>0){SN.Init.EntityActions()}if($("#form_login").length>0){SN.Init.Login()}});if(!document.ELEMENT_NODE){document.ELEMENT_NODE=1;document.ATTRIBUTE_NODE=2;document.TEXT_NODE=3;document.CDATA_SECTION_NODE=4;document.ENTITY_REFERENCE_NODE=5;document.ENTITY_NODE=6;document.PROCESSING_INSTRUCTION_NODE=7;document.COMMENT_NODE=8;document.DOCUMENT_NODE=9;document.DOCUMENT_TYPE_NODE=10;document.DOCUMENT_FRAGMENT_NODE=11;document.NOTATION_NODE=12}document._importNode=function(e,a){switch(e.nodeType){case document.ELEMENT_NODE:var d=document.createElement(e.nodeName);if(e.attributes&&e.attributes.length>0){for(var c=0,b=e.attributes.length;c0){for(var c=0,b=e.childNodes.length;c0){var j=c.pop();j()}}};window._google_loader_apiLoaded=function(){f()};var d=function(){return(window.google&&google.loader)};var g=function(j){if(d()){return true}h(j);e();return false};e();return{shim:true,type:"ClientLocation",lastPosition:null,getCurrentPosition:function(k,n,o){var m=this;if(!g(function(){m.getCurrentPosition(k,n,o)})){return}if(google.loader.ClientLocation){var l=google.loader.ClientLocation;var j={coords:{latitude:l.latitude,longitude:l.longitude,altitude:null,accuracy:43000,altitudeAccuracy:null,heading:null,speed:null},address:{city:l.address.city,country:l.address.country,country_code:l.address.country_code,region:l.address.region},timestamp:new Date()};k(j);this.lastPosition=j}else{if(n==="function"){n({code:3,message:"Using the Google ClientLocation API and it is not able to calculate a location."})}}},watchPosition:function(j,l,m){this.getCurrentPosition(j,l,m);var k=this;var n=setInterval(function(){k.getCurrentPosition(j,l,m)},10000);return n},clearWatch:function(j){clearInterval(j)},getPermission:function(l,j,k){return true}}});navigator.geolocation=(window.google&&google.gears)?a():b()})()}; \ No newline at end of file From bd11d11bfcb1115e63bc4db81c9a1cfe75c32a2f Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 23 Mar 2011 22:10:44 -0400 Subject: [PATCH 17/90] Fallback for RSVP display when Event is deleted --- plugins/Event/RSVP.php | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/plugins/Event/RSVP.php b/plugins/Event/RSVP.php index 7b61cc34ad..beb377c5bc 100644 --- a/plugins/Event/RSVP.php +++ b/plugins/Event/RSVP.php @@ -294,15 +294,19 @@ class RSVP extends Managed_DataObject function asHTML() { + $event = Happening::staticGet('id', $this->event_id); + return self::toHTML($this->getProfile(), - $this->getEvent(), + $event, $this->response); } function asString() { + $event = Happening::staticGet('id', $this->event_id); + return self::toString($this->getProfile(), - $this->getEvent(), + $event, $this->response); } @@ -310,8 +314,6 @@ class RSVP extends Managed_DataObject { $fmt = null; - $notice = $event->getNotice(); - switch ($response) { case 'Y': $fmt = _("%2s is attending %4s."); @@ -327,19 +329,26 @@ class RSVP extends Managed_DataObject break; } + if (empty($event)) { + $eventUrl = '#'; + $eventTitle = _('an unknown event'); + } else { + $notice = $event->getNotice(); + $eventUrl = $notice->bestUrl(); + $eventTitle = $event->title; + } + return sprintf($fmt, htmlspecialchars($profile->profileurl), htmlspecialchars($profile->getBestName()), - htmlspecialchars($notice->bestUrl()), - htmlspecialchars($event->title)); + htmlspecialchars($eventUrl), + htmlspecialchars($eventTitle)); } static function toString($profile, $event, $response) { $fmt = null; - $notice = $event->getNotice(); - switch ($response) { case 'Y': $fmt = _("%1s is attending %2s."); @@ -355,8 +364,15 @@ class RSVP extends Managed_DataObject break; } + if (empty($event)) { + $eventTitle = _('an unknown event'); + } else { + $notice = $event->getNotice(); + $eventTitle = $event->title; + } + return sprintf($fmt, $profile->getBestName(), - $event->title); + $eventTitle); } } From 3be26565fb7af59342325d513e7e74c546091e3a Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Thu, 24 Mar 2011 09:59:01 +0100 Subject: [PATCH 18/90] Update translator documentation. i18n/L10n updates. Superfluous whitespace removed. Add FIXME in files with missing documentation. --- actions/approvegroup.php | 6 ++++++ actions/cancelgroup.php | 7 ++++++- actions/groupqueue.php | 7 ++++--- actions/joingroup.php | 3 ++- classes/Profile.php | 5 +++-- lib/approvegroupform.php | 11 ++++------- lib/cancelgroupform.php | 9 ++------- lib/groupblockform.php | 2 +- lib/groupeditform.php | 26 ++++++++++++++++++++++---- lib/groupmemberlist.php | 1 + lib/groupmemberlistitem.php | 4 ++-- lib/groupnav.php | 6 ++---- lib/mail.php | 10 +++++----- lib/makeadminform.php | 1 + lib/noticestream.php | 3 +-- 15 files changed, 62 insertions(+), 39 deletions(-) diff --git a/actions/approvegroup.php b/actions/approvegroup.php index c102c64cd5..690c76360f 100644 --- a/actions/approvegroup.php +++ b/actions/approvegroup.php @@ -98,6 +98,7 @@ class ApprovegroupAction extends Action $cur = common_current_user(); if (empty($cur)) { + // TRANS: Client error displayed trying to approve group membership while not logged in. $this->clientError(_('Must be logged in.'), 403); return false; } @@ -105,10 +106,12 @@ class ApprovegroupAction extends Action if ($cur->isAdmin($this->group)) { $this->profile = Profile::staticGet('id', $this->arg('profile_id')); } else { + // TRANS: Client error displayed trying to approve group membership while not a group administrator. $this->clientError(_('Only group admin can approve or cancel join requests.'), 403); return false; } } else { + // TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. $this->clientError(_('Must specify a profile.')); return false; } @@ -117,15 +120,18 @@ class ApprovegroupAction extends Action 'group_id' => $this->group->id)); if (empty($this->request)) { + // TRANS: Client error displayed trying to approve group membership for a non-existing request. $this->clientError(sprintf(_('%s is not in the moderation queue for this group.'), $this->profile->nickname), 403); } $this->approve = (bool)$this->arg('approve'); $this->cancel = (bool)$this->arg('cancel'); if (!$this->approve && !$this->cancel) { + // TRANS: Client error displayed trying to approve/deny group membership. $this->clientError(_('Internal error: received neither cancel nor abort.')); } if ($this->approve && $this->cancel) { + // TRANS: Client error displayed trying to approve/deny group membership. $this->clientError(_('Internal error: received both cancel and abort.')); } return true; diff --git a/actions/cancelgroup.php b/actions/cancelgroup.php index 68d7f39139..57df1a10a7 100644 --- a/actions/cancelgroup.php +++ b/actions/cancelgroup.php @@ -68,7 +68,6 @@ class CancelgroupAction extends Action $nickname = common_canonical_nickname($nickname_arg); // Permanent redirect on non-canonical nickname - if ($nickname_arg != $nickname) { $args = array('nickname' => $nickname); common_redirect(common_local_url('leavegroup', $args), 301); @@ -98,6 +97,7 @@ class CancelgroupAction extends Action $cur = common_current_user(); if (empty($cur)) { + // TRANS: Client error displayed when trying to leave a group while not logged in. $this->clientError(_('Must be logged in.'), 403); return false; } @@ -105,6 +105,8 @@ class CancelgroupAction extends Action if ($cur->isAdmin($this->group)) { $this->profile = Profile::staticGet('id', $this->arg('profile_id')); } else { + // TRANS: Client error displayed when trying to approve or cancel a group join request without + // TRANS: being a group administrator. $this->clientError(_('Only group admin can approve or cancel join requests.'), 403); return false; } @@ -116,6 +118,8 @@ class CancelgroupAction extends Action 'group_id' => $this->group->id)); if (empty($this->request)) { + // TRANS: Client error displayed when trying to approve a non-existing group join request. + // TRANS: %s is a user nickname. $this->clientError(sprintf(_('%s is not in the moderation queue for this group.'), $this->profile->nickname), 403); } return true; @@ -149,6 +153,7 @@ class CancelgroupAction extends Action $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); // TRANS: Title for leave group page after leaving. + // TRANS: %s$s is the leaving user's name, %2$s is the group name. $this->element('title', null, sprintf(_m('TITLE','%1$s left group %2$s'), $this->profile->nickname, $this->group->nickname)); diff --git a/actions/groupqueue.php b/actions/groupqueue.php index 1b4a8b7b6e..dca0ff7bd5 100644 --- a/actions/groupqueue.php +++ b/actions/groupqueue.php @@ -52,7 +52,7 @@ class GroupqueueAction extends GroupDesignAction return true; } - // fixme most of this belongs in a base class, sounds common to most group actions? + // @todo FIXME: most of this belongs in a base class, sounds common to most group actions? function prepare($args) { parent::prepare($args); @@ -96,6 +96,7 @@ class GroupqueueAction extends GroupDesignAction $cur = common_current_user(); if (!$cur || !$cur->isAdmin($this->group)) { + // TRANS: Client error displayed when trying to approve group applicants without being a group administrator. $this->clientError(_('Only the group admin may approve users.')); return false; } @@ -105,12 +106,12 @@ class GroupqueueAction extends GroupDesignAction function title() { if ($this->page == 1) { - // TRANS: Title of the page showing pending group members still awaiting approval to join the group. + // TRANS: Title of the first page showing pending group members still awaiting approval to join the group. // TRANS: %s is the name of the group. return sprintf(_('%s group members awaiting approval'), $this->group->nickname); } else { - // TRANS: Title of the page showing pending group members still awaiting approval to join the group. + // TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. // TRANS: %1$s is the name of the group, %2$d is the page number of the members list. return sprintf(_('%1$s group members awaiting approval, page %2$d'), $this->group->nickname, diff --git a/actions/joingroup.php b/actions/joingroup.php index f302b39e79..bb7b835915 100644 --- a/actions/joingroup.php +++ b/actions/joingroup.php @@ -154,7 +154,8 @@ class JoingroupAction extends Action $form = new CancelGroupForm($this, $this->group); } else { // wtf? - throw new Exception(_m("Unknown error joining group.")); + // TRANS: Exception thrown when there is an unknown error joining a group. + throw new Exception(_("Unknown error joining group.")); } $form->show(); $this->elementEnd('body'); diff --git a/classes/Profile.php b/classes/Profile.php index c5dd2dfda9..a36024842e 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -403,7 +403,8 @@ class Profile extends Memcached_DataObject Event::handle('EndJoinGroup', array($group, $this)); } } else { - throw new Exception(_m('Invalid group join approval: not pending.')); + // TRANS: Exception thrown trying to approve a non-existing group join request. + throw new Exception(_('Invalid group join approval: not pending.')); } if ($join) { $join->notify(); @@ -414,7 +415,7 @@ class Profile extends Memcached_DataObject /** * Leave a group that this profile is a member of. * - * @param User_group $group + * @param User_group $group */ function leaveGroup(User_group $group) { diff --git a/lib/approvegroupform.php b/lib/approvegroupform.php index 3ad74e0486..561b204ea9 100644 --- a/lib/approvegroupform.php +++ b/lib/approvegroupform.php @@ -46,7 +46,6 @@ require_once INSTALLDIR.'/lib/form.php'; * * @see UnsubscribeForm */ - class ApproveGroupForm extends Form { /** @@ -62,7 +61,6 @@ class ApproveGroupForm extends Form * @param HTMLOutputter $out output channel * @param group $group group to leave */ - function __construct($out=null, $group=null, $profile=null) { parent::__construct($out); @@ -76,7 +74,6 @@ class ApproveGroupForm extends Form * * @return string ID of the form */ - function id() { return 'group-queue-' . $this->group->id; @@ -87,7 +84,6 @@ class ApproveGroupForm extends Form * * @return string of the form class */ - function formClass() { return 'form_group_queue ajax'; @@ -98,7 +94,6 @@ class ApproveGroupForm extends Form * * @return string URL of the action */ - function action() { $params = array(); @@ -117,7 +112,9 @@ class ApproveGroupForm extends Form function formActions() { - $this->out->submit('approve', _('Accept')); - $this->out->submit('cancel', _('Reject')); + // TRANS: Submit button text to accept a group membership request on approve group form. + $this->out->submit('approve', _m('BUTTON','Accept')); + // TRANS: Submit button text to reject a group membership request on approve group form. + $this->out->submit('cancel', _m('BUTTON','Reject')); } } diff --git a/lib/cancelgroupform.php b/lib/cancelgroupform.php index f945a847f7..c328f358c8 100644 --- a/lib/cancelgroupform.php +++ b/lib/cancelgroupform.php @@ -46,7 +46,6 @@ require_once INSTALLDIR.'/lib/form.php'; * * @see UnsubscribeForm */ - class CancelGroupForm extends Form { /** @@ -62,7 +61,6 @@ class CancelGroupForm extends Form * @param HTMLOutputter $out output channel * @param group $group group to leave */ - function __construct($out=null, $group=null, $profile=null) { parent::__construct($out); @@ -76,7 +74,6 @@ class CancelGroupForm extends Form * * @return string ID of the form */ - function id() { return 'group-cancel-' . $this->group->id; @@ -87,7 +84,6 @@ class CancelGroupForm extends Form * * @return string of the form class */ - function formClass() { return 'form_group_leave ajax'; @@ -98,7 +94,6 @@ class CancelGroupForm extends Form * * @return string URL of the action */ - function action() { $params = array(); @@ -114,9 +109,9 @@ class CancelGroupForm extends Form * * @return void */ - function formActions() { - $this->out->submit('submit', _('Cancel join request')); + // TRANS: Submit button text on form to cancel group join request. + $this->out->submit('submit', _('BUTTON','Cancel join request')); } } diff --git a/lib/groupblockform.php b/lib/groupblockform.php index 279ddf66fb..918a5902fd 100644 --- a/lib/groupblockform.php +++ b/lib/groupblockform.php @@ -1,5 +1,5 @@ out->element('legend', null, _('Create a new group')); } @@ -142,44 +143,58 @@ class GroupEditForm extends Form if (Event::handle('StartGroupEditFormData', array($this))) { $this->out->elementStart('li'); $this->out->hidden('groupid', $id); + // TRANS: Field label on group edit form. $this->out->input('nickname', _('Nickname'), ($this->out->arg('nickname')) ? $this->out->arg('nickname') : $nickname, - _('1-64 lowercase letters or numbers, no punctuation or spaces')); + // TRANS: Field title on group edit form. + _('1-64 lowercase letters or numbers, no punctuation or spaces.')); $this->out->elementEnd('li'); $this->out->elementStart('li'); + // TRANS: Field label on group edit form. $this->out->input('fullname', _('Full name'), ($this->out->arg('fullname')) ? $this->out->arg('fullname') : $fullname); $this->out->elementEnd('li'); $this->out->elementStart('li'); + // TRANS: Field label on group edit form; points to "more info" for a group. $this->out->input('homepage', _('Homepage'), ($this->out->arg('homepage')) ? $this->out->arg('homepage') : $homepage, + // TRANS: Field title on group edit form. _('URL of the homepage or blog of the group or topic.')); $this->out->elementEnd('li'); $this->out->elementStart('li'); $desclimit = User_group::maxDescription(); if ($desclimit == 0) { - $descinstr = _('Describe the group or topic'); + // TRANS: Text area title for group description when there is no text limit. + $descinstr = _('Describe the group or topic.'); } else { - $descinstr = sprintf(_m('Describe the group or topic in %d character or less', - 'Describe the group or topic in %d characters or less', + // TRANS: Text area title for group description. + // TRANS: %d is the number of characters available for the description. + $descinstr = sprintf(_m('Describe the group or topic in %d character or less.', + 'Describe the group or topic in %d characters or less.', $desclimit), $desclimit); } + // TRANS: Text area label on group edit form; contains description of group. $this->out->textarea('description', _('Description'), ($this->out->arg('description')) ? $this->out->arg('description') : $description, $descinstr); $this->out->elementEnd('li'); $this->out->elementStart('li'); + // TRANS: Field label on group edit form. $this->out->input('location', _('Location'), ($this->out->arg('location')) ? $this->out->arg('location') : $location, + // TRANS: Field title on group edit form. _('Location for the group, if any, like "City, State (or Region), Country".')); $this->out->elementEnd('li'); if (common_config('group', 'maxaliases') > 0) { $aliases = (empty($this->group)) ? array() : $this->group->getAliases(); $this->out->elementStart('li'); + // TRANS: Field label on group edit form. $this->out->input('aliases', _('Aliases'), ($this->out->arg('aliases')) ? $this->out->arg('aliases') : (!empty($aliases)) ? implode(' ', $aliases) : '', + // TRANS: Input field title for group aliases. + // TRANS: %d is the maximum number of group aliases available. sprintf(_m('Extra nicknames for the group, separated with commas or spaces. Maximum %d alias allowed.', 'Extra nicknames for the group, separated with commas or spaces. Maximum %d aliases allowed.', common_config('group', 'maxaliases')), @@ -188,9 +203,11 @@ class GroupEditForm extends Form } $this->out->elementStart('li'); $this->out->dropdown('join_policy', + // TRANS: Dropdown fieldd label on group edit form. _('Membership policy'), array(User_group::JOIN_POLICY_OPEN => _('Open to all'), User_group::JOIN_POLICY_MODERATE => _('Admin must approve all members')), + // TRANS: Dropdown field title on group edit form. _('Whether admin approval is required to join this group.'), false, (empty($this->group->join_policy)) ? User_group::JOIN_POLICY_OPEN : $this->group->join_policy); @@ -207,6 +224,7 @@ class GroupEditForm extends Form */ function formActions() { + // TRANS: Text for save button on group edit form. $this->out->submit('submit', _m('BUTTON','Save')); } } diff --git a/lib/groupmemberlist.php b/lib/groupmemberlist.php index 92dc4029c6..ba608213a4 100644 --- a/lib/groupmemberlist.php +++ b/lib/groupmemberlist.php @@ -1,4 +1,5 @@ profile->isAdmin($this->group)) { $this->out->text(' '); // for separating the classes. // TRANS: Indicator in group members list that this user is a group administrator. - $this->out->element('span', 'role', _('Admin')); + $this->out->element('span', 'role', _m('GROUPADMIN','Admin')); } } @@ -102,4 +103,3 @@ class GroupMemberListItem extends ProfileListItem return $args; } } - diff --git a/lib/groupnav.php b/lib/groupnav.php index 6a4f5f7e30..13795721ae 100644 --- a/lib/groupnav.php +++ b/lib/groupnav.php @@ -48,7 +48,6 @@ require_once INSTALLDIR.'/lib/widget.php'; * * @see HTMLOutputter */ - class GroupNav extends Menu { var $group = null; @@ -58,7 +57,6 @@ class GroupNav extends Menu * * @param Action $action current action, used for output */ - function __construct($action=null, $group=null) { parent::__construct($action); @@ -70,7 +68,6 @@ class GroupNav extends Menu * * @return void */ - function show() { $action_name = $this->action->trimmed('action'); @@ -105,7 +102,8 @@ class GroupNav extends Menu $this->out->menuItem(common_local_url('groupqueue', array('nickname' => $nickname)), // TRANS: Menu item in the group navigation page. Only shown for group administrators. - sprintf(_m('MENU','Pending members (%d)'), $pending), + // TRANS: %d is the number of pending members. + sprintf(_m('MENU','Pending members (%d)','Pending members (%d)',$pending), $pending), // TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. // TRANS: %s is the nickname of the group. sprintf(_m('TOOLTIP','%s pending members'), $nickname), diff --git a/lib/mail.php b/lib/mail.php index d90fe6e8f2..8ca6e67fd8 100644 --- a/lib/mail.php +++ b/lib/mail.php @@ -277,7 +277,7 @@ function mail_footer_block() * Format a block of profile info for a plaintext notification email. * * @param Profile $profile - * @return string + * @return string */ function mail_profile_block($profile) { @@ -313,9 +313,9 @@ function mail_profile_block($profile) // TRANS: This is a paragraph in a new-subscriber e-mail. // TRANS: %s is a URL where the subscriber can be reported as abusive. - $out[] = sprintf(_("If you believe this account is being used abusively, " . - "you can block them from your subscribers list and " . - "report as spam to site administrators at %s"), + $out[] = sprintf(_('If you believe this account is being used abusively, ' . + 'you can block them from your subscribers list and ' . + 'report as spam to site administrators at %s.'), $blocklink); $out[] = ""; @@ -498,7 +498,7 @@ function mail_confirm_sms($code, $nickname, $address) // TRANS: Main body heading for SMS-by-email address confirmation message. // TRANS: %s is the addressed user's nickname. - $body = sprintf(_("%s: confirm you own this phone number with this code:"), $nickname); + $body = sprintf(_('%s: confirm you own this phone number with this code:'), $nickname); $body .= "\n\n"; $body .= $code; $body .= "\n\n"; diff --git a/lib/makeadminform.php b/lib/makeadminform.php index de245f3d66..f1280d3b69 100644 --- a/lib/makeadminform.php +++ b/lib/makeadminform.php @@ -1,4 +1,5 @@ Date: Thu, 24 Mar 2011 11:47:57 +0100 Subject: [PATCH 19/90] Update translator documentation. Remove superfluous whitespace. L10n/I18n updates. FIXMEs added for missing documentation or headers. --- actions/sandbox.php | 5 ++--- actions/sessionsadminpanel.php | 37 ++++++++++++++++++++-------------- actions/showapplication.php | 25 +++++++++++++++++++---- actions/showgroup.php | 6 ++++-- 4 files changed, 49 insertions(+), 24 deletions(-) diff --git a/actions/sandbox.php b/actions/sandbox.php index d1ef4c86b2..ddbca40b2d 100644 --- a/actions/sandbox.php +++ b/actions/sandbox.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 * @link http://status.net/ */ - class SandboxAction extends ProfileFormAction { /** @@ -50,7 +49,6 @@ class SandboxAction extends ProfileFormAction * * @return boolean success flag */ - function prepare($args) { if (!parent::prepare($args)) { @@ -62,6 +60,7 @@ class SandboxAction extends ProfileFormAction assert(!empty($cur)); // checked by parent if (!$cur->hasRight(Right::SANDBOXUSER)) { + // TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. $this->clientError(_('You cannot sandbox users on this site.')); return false; } @@ -69,6 +68,7 @@ class SandboxAction extends ProfileFormAction assert(!empty($this->profile)); // checked by parent if ($this->profile->isSandboxed()) { + // TRANS: Client error displayed trying to sandbox an already sandboxed user. $this->clientError(_('User is already sandboxed.')); return false; } @@ -81,7 +81,6 @@ class SandboxAction extends ProfileFormAction * * @return void */ - function handlePost() { $this->profile->sandbox(); diff --git a/actions/sessionsadminpanel.php b/actions/sessionsadminpanel.php index e9bd1719f2..0d1ead1021 100644 --- a/actions/sessionsadminpanel.php +++ b/actions/sessionsadminpanel.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class SessionsadminpanelAction extends AdminPanelAction { /** @@ -48,10 +47,10 @@ class SessionsadminpanelAction extends AdminPanelAction * * @return string page title */ - function title() { - return _('Sessions'); + // TRANS: Title for the sessions administration panel. + return _m('TITLE','Sessions'); } /** @@ -59,9 +58,9 @@ class SessionsadminpanelAction extends AdminPanelAction * * @return string instructions */ - function getInstructions() { + // TRANS: Instructions for the sessions administration panel. return _('Session settings for this StatusNet site'); } @@ -70,7 +69,6 @@ class SessionsadminpanelAction extends AdminPanelAction * * @return void */ - function showForm() { $form = new SessionsAdminPanelForm($this); @@ -83,7 +81,6 @@ class SessionsadminpanelAction extends AdminPanelAction * * @return void */ - function saveSettings() { static $booleans = array('sessions' => array('handle', 'debug')); @@ -123,6 +120,7 @@ class SessionsadminpanelAction extends AdminPanelAction } } +// @todo FIXME: Class documentation missing. class SessionsAdminPanelForm extends AdminForm { /** @@ -130,7 +128,6 @@ class SessionsAdminPanelForm extends AdminForm * * @return int ID of the form */ - function id() { return 'sessionsadminpanel'; @@ -141,7 +138,6 @@ class SessionsAdminPanelForm extends AdminForm * * @return string class of the form */ - function formClass() { return 'form_settings'; @@ -152,7 +148,6 @@ class SessionsAdminPanelForm extends AdminForm * * @return string URL of the action */ - function action() { return common_local_url('sessionsadminpanel'); @@ -163,24 +158,31 @@ class SessionsAdminPanelForm extends AdminForm * * @return void */ - function formData() { $this->out->elementStart('fieldset', array('id' => 'settings_user_sessions')); - $this->out->element('legend', null, _('Sessions')); + // TRANS: Fieldset legend on the sessions administration panel. + $this->out->element('legend', null, _m('LEGEND','Sessions')); $this->out->elementStart('ul', 'form_data'); $this->li(); + // TRANS: Checkbox title on the sessions administration panel. + // TRANS: Indicates if StatusNet should handle session administration. $this->out->checkbox('handle', _('Handle sessions'), (bool) $this->value('handle', 'sessions'), - _('Whether to handle sessions ourselves.')); + // TRANS: Checkbox title on the sessions administration panel. + // TRANS: Indicates if StatusNet should handle session administration. + _('Handle sessions ourselves.')); $this->unli(); $this->li(); + // TRANS: Checkbox label on the sessions administration panel. + // TRANS: Indicates if StatusNet should write session debugging output. $this->out->checkbox('debug', _('Session debugging'), (bool) $this->value('debug', 'sessions'), - _('Turn on debugging output for sessions.')); + // TRANS: Checkbox title on the sessions administration panel. + _('Enable debugging output for sessions.')); $this->unli(); $this->out->elementEnd('ul'); @@ -193,9 +195,14 @@ class SessionsAdminPanelForm extends AdminForm * * @return void */ - function formActions() { - $this->out->submit('submit', _('Save'), 'submit', null, _('Save site settings')); + $this->out->submit('submit', + // TRANS: Submit button text on the sessions administration panel. + _m('BUTTON','Save'), + 'submit', + null, + // TRANS: Title for submit button on the sessions administration panel. + _('Save session settings')); } } diff --git a/actions/showapplication.php b/actions/showapplication.php index 02a4dc1517..38e6f1953e 100644 --- a/actions/showapplication.php +++ b/actions/showapplication.php @@ -75,11 +75,13 @@ class ShowApplicationAction extends OwnerDesignAction $this->owner = User::staticGet($this->application->owner); if (!common_logged_in()) { + // TRANS: Client error displayed trying to display an OAuth application while not logged in. $this->clientError(_('You must be logged in to view an application.')); return false; } if (empty($this->application)) { + // TRANS: Client error displayed trying to display a non-existing OAuth application. $this->clientError(_('No such application.'), 404); return false; } @@ -87,6 +89,7 @@ class ShowApplicationAction extends OwnerDesignAction $cur = common_current_user(); if ($cur->id != $this->owner->id) { + // TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. $this->clientError(_('You are not the owner of this application.'), 401); return false; } @@ -148,6 +151,7 @@ class ShowApplicationAction extends OwnerDesignAction $consumer = $this->application->getConsumer(); $this->elementStart('div', 'entity_profile vcard'); + // TRANS: Header on the OAuth application page. $this->element('h2', null, _('Application profile')); if (!empty($this->application->icon)) { $this->element('img', array('src' => $this->application->icon, @@ -176,7 +180,12 @@ class ShowApplicationAction extends OwnerDesignAction $userCnt = $appUsers->count(); $this->raw(sprintf( - _('Created by %1$s - %2$s access by default - %3$d users'), + // TRANS: Information output on an OAuth application page. + // TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", + // TRANS: %3$d is the number of users using the OAuth application. + _m('Created by %1$s - %2$s access by default - %3$d user', + 'Created by %1$s - %2$s access by default - %3$d users', + $userCnt), $profile->getBestName(), $defaultAccess, $userCnt @@ -186,13 +195,15 @@ class ShowApplicationAction extends OwnerDesignAction $this->elementEnd('div'); $this->elementStart('div', 'entity_actions'); + // TRANS: Header on the OAuth application page. $this->element('h2', null, _('Application actions')); $this->elementStart('ul'); $this->elementStart('li', 'entity_edit'); $this->element('a', array('href' => common_local_url('editapplication', array('id' => $this->application->id))), - 'Edit'); + // TRANS: Link text to edit application on the OAuth application page. + _m('EDITAPP','Edit')); $this->elementEnd('li'); $this->elementStart('li', 'entity_reset_keysecret'); @@ -209,6 +220,8 @@ class ShowApplicationAction extends OwnerDesignAction 'id' => 'reset', 'name' => 'reset', 'class' => 'submit', + // TRANS: Button text on the OAuth application page. + // TRANS: Resets the OAuth consumer key and secret. 'value' => _('Reset key & secret'), 'onClick' => 'return confirmReset()')); $this->elementEnd('fieldset'); @@ -225,7 +238,8 @@ class ShowApplicationAction extends OwnerDesignAction $this->elementStart('fieldset'); $this->hidden('token', common_session_token()); - $this->submit('delete', _('Delete')); + // TRANS: Submit button text the OAuth application page to delete an application. + $this->submit('delete', _m('BUTTON','Delete')); $this->elementEnd('fieldset'); $this->elementEnd('form'); $this->elementEnd('li'); @@ -234,6 +248,7 @@ class ShowApplicationAction extends OwnerDesignAction $this->elementEnd('div'); $this->elementStart('div', 'entity_data'); + // TRANS: Header on the OAuth application page. $this->element('h2', null, _('Application info')); $this->element('div', 'entity_consumer_key', @@ -252,7 +267,8 @@ class ShowApplicationAction extends OwnerDesignAction $this->element('div', 'entity_authorize_url', common_local_url('ApiOauthAuthorize')); $this->element('p', 'note', - _('Note: We support HMAC-SHA1 signatures. We do not support the plaintext signature method.')); + // TRANS: Note on the OAuth application page about signature support. + _('Note: HMAC-SHA1 signatures are supported. The plaintext signature method is not supported.')); $this->elementEnd('div'); $this->elementStart('p', array('id' => 'application_action')); @@ -272,6 +288,7 @@ class ShowApplicationAction extends OwnerDesignAction { parent::showScripts(); + // TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. $msg = _('Are you sure you want to reset your consumer key and secret?'); $js = 'function confirmReset() { '; diff --git a/actions/showgroup.php b/actions/showgroup.php index aa1f620880..d77fbeed71 100644 --- a/actions/showgroup.php +++ b/actions/showgroup.php @@ -324,6 +324,8 @@ class ShowgroupAction extends GroupDesignAction $this->element('h2', null, _('Statistics')); $this->elementStart('dl'); + + // TRANS: Label for group creation date. $this->element('dt', null, _m('LABEL','Created')); $this->element('dd', 'entity_created', date('j M Y', strtotime($this->group->created))); @@ -382,8 +384,8 @@ class GroupAdminSection extends ProfileSection function title() { - // TRANS: Header for list of group administrators on a group page (h2). - return _('Admins'); + // TRANS: Title for list of group administrators on a group page. + return _m('TITLE','Admins'); } function divId() From e0cccfc40d9789408cc427c1de8822ab7b7a9765 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Thu, 24 Mar 2011 12:09:50 +0100 Subject: [PATCH 20/90] Translator documentation updated. i18n/L10n updates. Superfluous whitespace removed. Add FIXME for missing class documentation. --- actions/shownotice.php | 28 +++++-------- actions/showstream.php | 5 ++- actions/silence.php | 5 +-- actions/siteadminpanel.php | 83 ++++++++++++++++++++++++++------------ 4 files changed, 72 insertions(+), 49 deletions(-) diff --git a/actions/shownotice.php b/actions/shownotice.php index b8927372bb..f6074faddc 100644 --- a/actions/shownotice.php +++ b/actions/shownotice.php @@ -44,25 +44,21 @@ require_once INSTALLDIR.'/lib/feedlist.php'; * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class ShownoticeAction extends OwnerDesignAction { /** * Notice object to show */ - var $notice = null; /** * Profile of the notice object */ - var $profile = null; /** * Avatar of the profile of the notice object */ - var $avatar = null; /** @@ -74,7 +70,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return success flag */ - function prepare($args) { parent::prepare($args); @@ -90,8 +85,10 @@ class ShownoticeAction extends OwnerDesignAction // Did we used to have it, and it got deleted? $deleted = Deleted_notice::staticGet($id); if (!empty($deleted)) { + // TRANS: Client error displayed trying to show a deleted notice. $this->clientError(_('Notice deleted.'), 410); } else { + // TRANS: Client error displayed trying to show a non-existing notice. $this->clientError(_('No such notice.'), 404); } return false; @@ -100,6 +97,7 @@ class ShownoticeAction extends OwnerDesignAction $this->profile = $this->notice->getProfile(); if (empty($this->profile)) { + // TRANS: Server error displayed trying to show a notice without a connected profile. $this->serverError(_('Notice has no profile.'), 500); return false; } @@ -116,7 +114,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return boolean true */ - function isReadOnly($args) { return true; @@ -130,7 +127,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return int last-modified date as unix timestamp */ - function lastModified() { return max(strtotime($this->notice->modified), @@ -147,7 +143,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return string etag */ - function etag() { $avtime = ($this->avatar) ? @@ -167,11 +162,12 @@ class ShownoticeAction extends OwnerDesignAction * * @return string title of the page */ - function title() { $base = $this->profile->getFancyName(); + // TRANS: Title of the page that shows a notice. + // TRANS: %1$s is a user name, %2$s is the notice creation date/time. return sprintf(_('%1$s\'s status on %2$s'), $base, common_exact_date($this->notice->created)); @@ -186,7 +182,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return void */ - function handle($args) { parent::handle($args); @@ -218,7 +213,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return void */ - function showLocalNavBlock() { } @@ -230,7 +224,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return void */ - function showContent() { $this->elementStart('ol', array('class' => 'notices xoxo')); @@ -245,7 +238,8 @@ class ShownoticeAction extends OwnerDesignAction $this->xw->startDocument('1.0', 'UTF-8'); $this->elementStart('html'); $this->elementStart('head'); - $this->element('title', null, _('Notice')); + // TRANS: Title for page that shows a notice. + $this->element('title', null, _m('TITLE','Notice')); $this->elementEnd('head'); $this->elementStart('body'); $nli = new NoticeListItem($this->notice, $this); @@ -259,7 +253,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return void */ - function showPageNoticeBlock() { } @@ -269,7 +262,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return void */ - function showAside() { } @@ -280,7 +272,6 @@ class ShownoticeAction extends OwnerDesignAction * * @return void */ - function extraHead() { $user = User::staticGet($this->profile->id); @@ -323,16 +314,16 @@ class ShownoticeAction extends OwnerDesignAction } } +// @todo FIXME: Class documentation missing. class SingleNoticeItem extends DoFollowListItem { /** - * recipe function for displaying a single notice. + * Recipe function for displaying a single notice. * * We overload to show attachments. * * @return void */ - function show() { $this->showStart(); @@ -363,7 +354,6 @@ class SingleNoticeItem extends DoFollowListItem * * @return void */ - function showAvatar() { $avatar_size = AVATAR_PROFILE_SIZE; diff --git a/actions/showstream.php b/actions/showstream.php index 10085d94d7..1a01812ec5 100644 --- a/actions/showstream.php +++ b/actions/showstream.php @@ -65,7 +65,8 @@ class ShowstreamAction extends ProfileAction $base = $this->profile->getFancyName(); if (!empty($this->tag)) { if ($this->page == 1) { - // TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. + // TRANS: Page title showing tagged notices in one user's stream. + // TRANS: %1$s is the username, %2$s is the hash tag. return sprintf(_('%1$s tagged %2$s'), $base, $this->tag); } else { // TRANS: Page title showing tagged notices in one user's stream. @@ -153,6 +154,8 @@ class ShowstreamAction extends ProfileAction array( 'id' => $this->user->id, 'format' => 'atom')), + // TRANS: Title for link to notice feed. + // TRANS: %s is a user nickname. sprintf(_('Notice feed for %s (Atom)'), $this->user->nickname)), new Feed(Feed::FOAF, diff --git a/actions/silence.php b/actions/silence.php index 09cc480d9e..c44aa3a6d7 100644 --- a/actions/silence.php +++ b/actions/silence.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 * @link http://status.net/ */ - class SilenceAction extends ProfileFormAction { /** @@ -50,7 +49,6 @@ class SilenceAction extends ProfileFormAction * * @return boolean success flag */ - function prepare($args) { if (!parent::prepare($args)) { @@ -62,6 +60,7 @@ class SilenceAction extends ProfileFormAction assert(!empty($cur)); // checked by parent if (!$cur->hasRight(Right::SILENCEUSER)) { + // TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. $this->clientError(_('You cannot silence users on this site.')); return false; } @@ -69,6 +68,7 @@ class SilenceAction extends ProfileFormAction assert(!empty($this->profile)); // checked by parent if ($this->profile->isSilenced()) { + // TRANS: Client error displayed trying to silence an already silenced user. $this->clientError(_('User is already silenced.')); return false; } @@ -81,7 +81,6 @@ class SilenceAction extends ProfileFormAction * * @return void */ - function handlePost() { $this->profile->silence(); diff --git a/actions/siteadminpanel.php b/actions/siteadminpanel.php index 4238b3e85a..29813ca3b9 100644 --- a/actions/siteadminpanel.php +++ b/actions/siteadminpanel.php @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class SiteadminpanelAction extends AdminPanelAction { /** @@ -52,10 +51,10 @@ class SiteadminpanelAction extends AdminPanelAction * * @return string page title */ - function title() { - return _('Site'); + // TRANS: Title for site administration panel. + return _m('TITLE','Site'); } /** @@ -63,9 +62,9 @@ class SiteadminpanelAction extends AdminPanelAction * * @return string instructions */ - function getInstructions() { + // TRANS: Instructions for site administration panel. return _('Basic settings for this StatusNet site'); } @@ -74,7 +73,6 @@ class SiteadminpanelAction extends AdminPanelAction * * @return void */ - function showForm() { $form = new SiteAdminPanelForm($this); @@ -87,7 +85,6 @@ class SiteadminpanelAction extends AdminPanelAction * * @return void */ - function saveSettings() { static $settings = array( @@ -130,6 +127,7 @@ class SiteadminpanelAction extends AdminPanelAction // Validate site name if (empty($values['site']['name'])) { + // TRANS: Client error displayed trying to save an empty site name. $this->clientError(_('Site name must have non-zero length.')); } @@ -138,9 +136,11 @@ class SiteadminpanelAction extends AdminPanelAction $values['site']['email'] = common_canonical_email($values['site']['email']); if (empty($values['site']['email'])) { + // TRANS: Client error displayed trying to save site settings without a contact address. $this->clientError(_('You must have a valid contact email address.')); } if (!Validate::email($values['site']['email'], common_config('email', 'check_domain'))) { + // TRANS: Client error displayed trying to save site settings without a valid contact address. $this->clientError(_('Not a valid email address.')); } @@ -148,6 +148,7 @@ class SiteadminpanelAction extends AdminPanelAction if (is_null($values['site']['timezone']) || !in_array($values['site']['timezone'], DateTimeZone::listIdentifiers())) { + // TRANS: Client error displayed trying to save site settings without a timezone. $this->clientError(_('Timezone not selected.')); return; } @@ -156,24 +157,28 @@ class SiteadminpanelAction extends AdminPanelAction if (!is_null($values['site']['language']) && !in_array($values['site']['language'], array_keys(get_nice_language_list()))) { + // TRANS: Client error displayed trying to save site settings with an invalid language code. + // TRANS: %s is the invalid language code. $this->clientError(sprintf(_('Unknown language "%s".'), $values['site']['language'])); } // Validate text limit if (!Validate::number($values['site']['textlimit'], array('min' => 0))) { - $this->clientError(_("Minimum text limit is 0 (unlimited).")); + // TRANS: Client error displayed trying to save site settings with a text limit below 0. + $this->clientError(_('Minimum text limit is 0 (unlimited).')); } // Validate dupe limit if (!Validate::number($values['site']['dupelimit'], array('min' => 1))) { + // TRANS: Client error displayed trying to save site settings with a text limit below 1. $this->clientError(_("Dupe limit must be one or more seconds.")); } - } } +// @todo FIXME: Class documentation missing. class SiteAdminPanelForm extends AdminForm { /** @@ -181,7 +186,6 @@ class SiteAdminPanelForm extends AdminForm * * @return int ID of the form */ - function id() { return 'form_site_admin_panel'; @@ -192,7 +196,6 @@ class SiteAdminPanelForm extends AdminForm * * @return string class of the form */ - function formClass() { return 'form_settings'; @@ -203,7 +206,6 @@ class SiteAdminPanelForm extends AdminForm * * @return string URL of the action */ - function action() { return common_local_url('siteadminpanel'); @@ -214,35 +216,44 @@ class SiteAdminPanelForm extends AdminForm * * @return void */ - function formData() { $this->out->elementStart('fieldset', array('id' => 'settings_admin_general')); - $this->out->element('legend', null, _('General')); + // TRANS: Fieldset legend on site settings panel. + $this->out->element('legend', null, _m('LEGEND','General')); $this->out->elementStart('ul', 'form_data'); $this->li(); - $this->input('name', _('Site name'), - _('The name of your site, like "Yourcompany Microblog"')); + // TRANS: Field label on site settings panel. + $this->input('name', _m('LABEL','Site name'), + // TRANS: Field title on site settings panel. + _('The name of your site, like "Yourcompany Microblog".')); $this->unli(); $this->li(); + // TRANS: Field label on site settings panel. $this->input('broughtby', _('Brought by'), - _('Text used for credits link in footer of each page')); + // TRANS: Field title on site settings panel. + _('Text used for credits link in footer of each page.')); $this->unli(); $this->li(); + // TRANS: Field label on site settings panel. $this->input('broughtbyurl', _('Brought by URL'), - _('URL used for credits link in footer of each page')); + // TRANS: Field title on site settings panel. + _('URL used for credits link in footer of each page.')); $this->unli(); $this->li(); + // TRANS: Field label on site settings panel. $this->input('email', _('Email'), - _('Contact email address for your site')); + // TRANS: Field title on site settings panel. + _('Contact email address for your site.')); $this->unli(); $this->out->elementEnd('ul'); $this->out->elementEnd('fieldset'); $this->out->elementStart('fieldset', array('id' => 'settings_admin_local')); - $this->out->element('legend', null, _('Local')); + // TRANS: Fieldset legend on site settings panel. + $this->out->element('legend', null, _m('LEGEND','Local')); $this->out->elementStart('ul', 'form_data'); $timezones = array(); @@ -253,14 +264,20 @@ class SiteAdminPanelForm extends AdminForm asort($timezones); $this->li(); + // TRANS: Dropdown label on site settings panel. $this->out->dropdown('timezone', _('Default timezone'), + // TRANS: Dropdown title on site settings panel. $timezones, _('Default timezone for the site; usually UTC.'), true, $this->value('timezone')); $this->unli(); $this->li(); - $this->out->dropdown('language', _('Default language'), - get_nice_language_list(), _('Site language when autodetection from browser settings is not available'), + $this->out->dropdown('language', + // TRANS: Dropdown label on site settings panel. + _('Default language'), + get_nice_language_list(), + // TRANS: Dropdown title on site settings panel. + _('Site language when autodetection from browser settings is not available'), false, $this->value('language')); $this->unli(); @@ -268,14 +285,23 @@ class SiteAdminPanelForm extends AdminForm $this->out->elementEnd('fieldset'); $this->out->elementStart('fieldset', array('id' => 'settings_admin_limits')); - $this->out->element('legend', null, _('Limits')); + // TRANS: Fieldset legend on site settings panel. + $this->out->element('legend', null, _m('LEGEND','Limits')); $this->out->elementStart('ul', 'form_data'); $this->li(); - $this->input('textlimit', _('Text limit'), _('Maximum number of characters for notices.')); + $this->input('textlimit', + // TRANS: Field label on site settings panel. + _('Text limit'), + // TRANS: Field title on site settings panel. + _('Maximum number of characters for notices.')); $this->unli(); $this->li(); - $this->input('dupelimit', _('Dupe limit'), _('How long users must wait (in seconds) to post the same thing again.')); + $this->input('dupelimit', + // TRANS: Field label on site settings panel. + _('Dupe limit'), + // TRANS: Field title on site settings panel. + _('How long users must wait (in seconds) to post the same thing again.')); $this->unli(); $this->out->elementEnd('ul'); $this->out->elementEnd('fieldset'); @@ -286,9 +312,14 @@ class SiteAdminPanelForm extends AdminForm * * @return void */ - function formActions() { - $this->out->submit('submit', _('Save'), 'submit', null, _('Save site settings')); + $this->out->submit('submit', + // TRANS: Button text for saving site settings. + _m('BUTTON','Save'), + 'submit', + null, + // TRANS: Button title for saving site settings. + _('Save site settings')); } } From 4e64bd4e5ba14798e86503b1fb6eac13bb0a9b64 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Thu, 24 Mar 2011 16:08:03 +0100 Subject: [PATCH 21/90] Localisation updates from http://translatewiki.net. --- locale/ar/LC_MESSAGES/statusnet.po | 1073 +++++++++------- locale/arz/LC_MESSAGES/statusnet.po | 596 ++++++--- locale/bg/LC_MESSAGES/statusnet.po | 581 ++++++--- locale/br/LC_MESSAGES/statusnet.po | 592 ++++++--- locale/ca/LC_MESSAGES/statusnet.po | 607 ++++++--- locale/cs/LC_MESSAGES/statusnet.po | 601 ++++++--- locale/de/LC_MESSAGES/statusnet.po | 605 ++++++--- locale/en_GB/LC_MESSAGES/statusnet.po | 573 ++++++--- locale/eo/LC_MESSAGES/statusnet.po | 598 ++++++--- locale/es/LC_MESSAGES/statusnet.po | 613 ++++++--- locale/fa/LC_MESSAGES/statusnet.po | 590 ++++++--- locale/fi/LC_MESSAGES/statusnet.po | 614 ++++++--- locale/fr/LC_MESSAGES/statusnet.po | 643 +++++++--- locale/fur/LC_MESSAGES/statusnet.po | 586 ++++++--- locale/gl/LC_MESSAGES/statusnet.po | 603 ++++++--- locale/hsb/LC_MESSAGES/statusnet.po | 626 ++++++--- locale/hu/LC_MESSAGES/statusnet.po | 584 ++++++--- locale/ia/LC_MESSAGES/statusnet.po | 685 ++++++---- locale/it/LC_MESSAGES/statusnet.po | 601 ++++++--- locale/ja/LC_MESSAGES/statusnet.po | 581 ++++++--- locale/ka/LC_MESSAGES/statusnet.po | 594 ++++++--- locale/ko/LC_MESSAGES/statusnet.po | 577 ++++++--- locale/mk/LC_MESSAGES/statusnet.po | 691 ++++++---- locale/ml/LC_MESSAGES/statusnet.po | 592 ++++++--- locale/nb/LC_MESSAGES/statusnet.po | 593 ++++++--- locale/nl/LC_MESSAGES/statusnet.po | 689 ++++++---- locale/pl/LC_MESSAGES/statusnet.po | 607 ++++++--- locale/pt/LC_MESSAGES/statusnet.po | 601 ++++++--- locale/pt_BR/LC_MESSAGES/statusnet.po | 599 ++++++--- locale/ru/LC_MESSAGES/statusnet.po | 946 ++++++++------ locale/statusnet.pot | 1116 ++++++++++------- locale/sv/LC_MESSAGES/statusnet.po | 599 ++++++--- locale/te/LC_MESSAGES/statusnet.po | 651 +++++++--- locale/tr/LC_MESSAGES/statusnet.po | 606 ++++++--- locale/uk/LC_MESSAGES/statusnet.po | 607 ++++++--- locale/zh_CN/LC_MESSAGES/statusnet.po | 599 ++++++--- .../locale/fi/LC_MESSAGES/AccountManager.po | 11 +- .../locale/fr/LC_MESSAGES/AccountManager.po | 27 + .../locale/fi/LC_MESSAGES/Autocomplete.po | 16 +- .../locale/fi/LC_MESSAGES/Awesomeness.po | 13 +- .../locale/fi/LC_MESSAGES/BlogspamNet.po | 11 +- .../locale/ar/LC_MESSAGES/Bookmark.po | 38 + .../locale/fr/LC_MESSAGES/Bookmark.po | 11 +- plugins/Comet/locale/fi/LC_MESSAGES/Comet.po | 13 +- .../fi/LC_MESSAGES/DirectionDetector.po | 13 +- .../locale/tl/LC_MESSAGES/Directory.po | 54 + .../locale/fi/LC_MESSAGES/DiskCache.po | 11 +- .../fi/LC_MESSAGES/EmailAuthentication.po | 13 +- plugins/Event/locale/tl/LC_MESSAGES/Event.po | 48 + plugins/Event/locale/tr/LC_MESSAGES/Event.po | 48 + .../locale/mk/LC_MESSAGES/ExtendedProfile.po | 20 +- .../locale/ar/LC_MESSAGES/FacebookBridge.po | 246 ++++ plugins/ForceGroup/locale/ForceGroup.pot | 6 +- .../GeoURL/locale/fi/LC_MESSAGES/GeoURL.po | 13 +- .../locale/fi/LC_MESSAGES/Geonames.po | 11 +- .../locale/fi/LC_MESSAGES/GoogleAnalytics.po | 13 +- .../locale/GroupPrivateMessage.pot | 4 +- plugins/Irc/locale/fi/LC_MESSAGES/Irc.po | 12 +- plugins/Irc/locale/fr/LC_MESSAGES/Irc.po | 40 + .../fi/LC_MESSAGES/LdapAuthentication.po | 13 +- .../locale/ar/LC_MESSAGES/MobileProfile.po | 74 ++ plugins/ModPlus/locale/ModPlus.pot | 4 +- plugins/Msn/locale/fr/LC_MESSAGES/Msn.po | 31 + .../NewMenu/locale/ar/LC_MESSAGES/NewMenu.po | 32 +- plugins/OStatus/locale/OStatus.pot | 21 +- .../OStatus/locale/de/LC_MESSAGES/OStatus.po | 15 +- .../OStatus/locale/fr/LC_MESSAGES/OStatus.po | 15 +- .../OStatus/locale/ia/LC_MESSAGES/OStatus.po | 15 +- .../OStatus/locale/mk/LC_MESSAGES/OStatus.po | 15 +- .../OStatus/locale/nl/LC_MESSAGES/OStatus.po | 17 +- .../OStatus/locale/uk/LC_MESSAGES/OStatus.po | 15 +- .../OpenID/locale/ar/LC_MESSAGES/OpenID.po | 650 ++++------ plugins/Poll/locale/tl/LC_MESSAGES/Poll.po | 153 +++ .../locale/ar/LC_MESSAGES/Realtime.po | 54 + .../locale/ia/LC_MESSAGES/SearchSub.po | 185 +++ .../locale/mk/LC_MESSAGES/SearchSub.po | 181 +++ .../locale/nl/LC_MESSAGES/SearchSub.po | 16 +- .../locale/tl/LC_MESSAGES/SearchSub.po | 191 +++ .../locale/ar/LC_MESSAGES/ShareNotice.po | 50 + .../locale/ia/LC_MESSAGES/SubMirror.po | 21 +- .../locale/mk/LC_MESSAGES/SubMirror.po | 16 +- .../TagSub/locale/ia/LC_MESSAGES/TagSub.po | 95 ++ .../TagSub/locale/mk/LC_MESSAGES/TagSub.po | 93 ++ .../TagSub/locale/nl/LC_MESSAGES/TagSub.po | 26 +- .../TagSub/locale/tl/LC_MESSAGES/TagSub.po | 95 ++ 85 files changed, 18385 insertions(+), 7619 deletions(-) create mode 100644 plugins/AccountManager/locale/fr/LC_MESSAGES/AccountManager.po create mode 100644 plugins/Bookmark/locale/ar/LC_MESSAGES/Bookmark.po create mode 100644 plugins/Directory/locale/tl/LC_MESSAGES/Directory.po create mode 100644 plugins/Event/locale/tl/LC_MESSAGES/Event.po create mode 100644 plugins/Event/locale/tr/LC_MESSAGES/Event.po create mode 100644 plugins/FacebookBridge/locale/ar/LC_MESSAGES/FacebookBridge.po create mode 100644 plugins/Irc/locale/fr/LC_MESSAGES/Irc.po create mode 100644 plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po create mode 100644 plugins/Msn/locale/fr/LC_MESSAGES/Msn.po create mode 100644 plugins/Poll/locale/tl/LC_MESSAGES/Poll.po create mode 100644 plugins/Realtime/locale/ar/LC_MESSAGES/Realtime.po create mode 100644 plugins/SearchSub/locale/ia/LC_MESSAGES/SearchSub.po create mode 100644 plugins/SearchSub/locale/mk/LC_MESSAGES/SearchSub.po create mode 100644 plugins/SearchSub/locale/tl/LC_MESSAGES/SearchSub.po create mode 100644 plugins/ShareNotice/locale/ar/LC_MESSAGES/ShareNotice.po create mode 100644 plugins/TagSub/locale/ia/LC_MESSAGES/TagSub.po create mode 100644 plugins/TagSub/locale/mk/LC_MESSAGES/TagSub.po create mode 100644 plugins/TagSub/locale/tl/LC_MESSAGES/TagSub.po diff --git a/locale/ar/LC_MESSAGES/statusnet.po b/locale/ar/LC_MESSAGES/statusnet.po index 2027ce376d..0ecc52f84c 100644 --- a/locale/ar/LC_MESSAGES/statusnet.po +++ b/locale/ar/LC_MESSAGES/statusnet.po @@ -12,19 +12,19 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:30+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:09+0000\n" "Language-Team: Arabic \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ar\n" "X-Message-Group: #out-statusnet-core\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" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -75,6 +75,8 @@ msgstr "حفظ إعدادت الوصول" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -82,6 +84,7 @@ msgstr "حفظ إعدادت الوصول" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "احفظ" @@ -758,6 +761,7 @@ msgstr "الحساب" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "الاسم المستعار" @@ -834,6 +838,7 @@ msgstr "لا يسمح لك بحذف حالة مستخدم آخر." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "لا إشعار كهذا." @@ -1032,15 +1037,15 @@ msgstr "" #. TRANS: Client error displayed when posting a notice without content through the API. #. TRANS: %d is the notice ID (number). -#, fuzzy, php-format +#, php-format msgid "No content for notice %d." -msgstr "ابحث عن محتويات في الإشعارات" +msgstr "لا محتوى في الإشعار %d." #. TRANS: Client error displayed when using another format than AtomPub. #. TRANS: %s is the notice URI. -#, fuzzy, php-format +#, php-format msgid "Notice with URI \"%s\" already exists." -msgstr "لا ملف بهذه الهوية." +msgstr "يوجد فعلا إشعار على المسار \"%s\"." #. TRANS: Server error for unfinished API method showTrends. #, fuzzy @@ -1051,94 +1056,17 @@ msgstr "لم يتم العثور على وسيلة API." msgid "User not found." msgstr "لم يُعثرعلى المستخدم." -#. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. -#. TRANS: Client exception. -#. TRANS: Client error displayed trying to subscribe to a non-existing profile. -msgid "No such profile." -msgstr "لا ملف كهذا." - -#. TRANS: Subtitle for Atom favorites feed. -#. TRANS: %1$s is a user nickname, %2$s is the StatusNet sitename. -#, fuzzy, php-format -msgid "Notices %1$s has favorited on %2$s" -msgstr "الإشعارات التي فضلها %1$s في %2$s!" - -#. TRANS: Client exception thrown when trying to set a favorite for another user. -#. TRANS: Client exception thrown when trying to subscribe another user. -#, fuzzy -msgid "Cannot add someone else's subscription." -msgstr "تعذّر إدراج اشتراك جديد." - -#. TRANS: Client exception thrown when trying use an incorrect activity verb for the Atom pub method. -#, fuzzy -msgid "Can only handle favorite activities." -msgstr "ابحث عن محتويات في الإشعارات" - -#. TRANS: Client exception thrown when trying favorite an object that is not a notice. -#, fuzzy -msgid "Can only fave notices." -msgstr "ابحث عن محتويات في الإشعارات" - -#. TRANS: Client exception thrown when trying favorite a notice without content. -#, fuzzy -msgid "Unknown notice." -msgstr "غير معروفة" - -#. TRANS: Client exception thrown when trying favorite an already favorited notice. -#, fuzzy -msgid "Already a favorite." -msgstr "أضف إلى المفضلات" - -#. TRANS: Title for group membership feed. -#. TRANS: %s is a username. -#, fuzzy, php-format -msgid "%s group memberships" -msgstr "أعضاء مجموعة %s" - -#. TRANS: Subtitle for group membership feed. -#. TRANS: %1$s is a username, %2$s is the StatusNet sitename. -#, fuzzy, php-format -msgid "Groups %1$s is a member of on %2$s" -msgstr "المجموعات التي %s عضو فيها" - -#. TRANS: Client exception thrown when trying subscribe someone else to a group. -#, fuzzy -msgid "Cannot add someone else's membership." -msgstr "تعذّر إدراج اشتراك جديد." - -#. TRANS: Client error displayed when not using the POST verb. -#. TRANS: Do not translate POST. -#, fuzzy -msgid "Can only handle join activities." -msgstr "ابحث عن محتويات في الإشعارات" - -#. TRANS: Client exception thrown when trying to subscribe to a non-existing group. -#, fuzzy -msgid "Unknown group." -msgstr "غير معروفة" - -#. TRANS: Client exception thrown when trying to subscribe to an already subscribed group. -#, fuzzy -msgid "Already a member." -msgstr "جميع الأعضاء" - -#. TRANS: Client exception thrown when trying to subscribe to group while blocked from that group. -msgid "Blocked by admin." -msgstr "أنت ممنوع من قِبل المدير." - -#. TRANS: Client exception thrown when referencing a non-existing favorite. -#, fuzzy -msgid "No such favorite." -msgstr "لا ملف كهذا." - -#. TRANS: Client exception thrown when trying to remove a favorite notice of another user. -#, fuzzy -msgid "Cannot delete someone else's favorite." -msgstr "تعذّر حذف المفضلة." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "يجب أن تلج لتغادر مجموعة." +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. #. TRANS: Client exception thrown when referencing a non-existing group. #. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. #. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. #. TRANS: Client error when trying to delete a non-local group. #. TRANS: Client error when trying to delete a non-existing group. #. TRANS: Client error displayed trying to edit a non-existing group. @@ -1151,6 +1079,8 @@ msgstr "تعذّر حذف المفضلة." #. TRANS: Client error displayed when trying to update logo settings for a non-existing group. #. TRANS: Client error displayed when trying to view group members for a non-existing group. #. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. #. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. #. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. #. TRANS: Client error displayed when trying to unblock a user from a non-existing group. @@ -1166,6 +1096,140 @@ msgstr "تعذّر حذف المفضلة." msgid "No such group." msgstr "لا مجموعة كهذه." +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#, fuzzy +msgid "No nickname or ID." +msgstr "لا اسم مستعار." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "لست والجًا." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "ليس للمستخدم ملف شخصي." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "قائمة بمستخدمي هذه المجموعة." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "لم يمكن ضم المستخدم %1$s إلى المجموعة %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "حالة %1$s في يوم %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + +#. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. +#. TRANS: Client exception. +#. TRANS: Client error displayed trying to subscribe to a non-existing profile. +msgid "No such profile." +msgstr "لا ملف كهذا." + +#. TRANS: Subtitle for Atom favorites feed. +#. TRANS: %1$s is a user nickname, %2$s is the StatusNet sitename. +#, php-format +msgid "Notices %1$s has favorited on %2$s" +msgstr "الإشعارات التي فضلها %1$s على %2$s" + +#. TRANS: Client exception thrown when trying to set a favorite for another user. +#. TRANS: Client exception thrown when trying to subscribe another user. +msgid "Cannot add someone else's subscription." +msgstr "تعذّرت إضافة اشتراك شخص آخر." + +#. TRANS: Client exception thrown when trying use an incorrect activity verb for the Atom pub method. +msgid "Can only handle favorite activities." +msgstr "يمكن التعامل مع نشاطات التفضيل فقط." + +#. TRANS: Client exception thrown when trying favorite an object that is not a notice. +msgid "Can only fave notices." +msgstr "يمكن تفضيل الإشعارات فقط." + +#. TRANS: Client exception thrown when trying favorite a notice without content. +msgid "Unknown notice." +msgstr "إشعار غير معروف." + +#. TRANS: Client exception thrown when trying favorite an already favorited notice. +msgid "Already a favorite." +msgstr "مفضلة فعلا." + +#. TRANS: Title for group membership feed. +#. TRANS: %s is a username. +#, php-format +msgid "%s group memberships" +msgstr "عضوية %s في المجموعات" + +#. TRANS: Subtitle for group membership feed. +#. TRANS: %1$s is a username, %2$s is the StatusNet sitename. +#, php-format +msgid "Groups %1$s is a member of on %2$s" +msgstr "المجموعات التي %1$s عضو فيها على %2$s" + +#. TRANS: Client exception thrown when trying subscribe someone else to a group. +msgid "Cannot add someone else's membership." +msgstr "تعذّرت إضافة عضوية شخص آخر." + +#. TRANS: Client error displayed when not using the POST verb. +#. TRANS: Do not translate POST. +msgid "Can only handle join activities." +msgstr "يمكن التعامل مع نشاطات الانضمام فقط." + +#. TRANS: Client exception thrown when trying to subscribe to a non-existing group. +msgid "Unknown group." +msgstr "مجموعة غير معروفة." + +#. TRANS: Client exception thrown when trying to subscribe to an already subscribed group. +msgid "Already a member." +msgstr "عضو بالفعل." + +#. TRANS: Client exception thrown when trying to subscribe to group while blocked from that group. +msgid "Blocked by admin." +msgstr "أنت ممنوع من قِبل المدير." + +#. TRANS: Client exception thrown when referencing a non-existing favorite. +#, fuzzy +msgid "No such favorite." +msgstr "لا ملف كهذا." + +#. TRANS: Client exception thrown when trying to remove a favorite notice of another user. +#, fuzzy +msgid "Cannot delete someone else's favorite." +msgstr "تعذّر حذف المفضلة." + #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1281,6 +1345,7 @@ msgstr "معاينة" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "احذف" @@ -1445,6 +1510,14 @@ msgstr "ألغِ منع هذا المستخدم" msgid "Post to %s" msgstr "أرسل إلى %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s ترك المجموعة %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "لا رمز تأكيد." @@ -1464,9 +1537,8 @@ msgstr "نوع رسالة غير مدعوم: %s" #. TRANS: Client error for an already confirmed email/jabber/sms address. #. TRANS: Client error for an already confirmed IM address. -#, fuzzy msgid "That address has already been confirmed." -msgstr "هذا البريد الإلكتروني ملك مستخدم آخر بالفعل." +msgstr "هذا البريد الإلكتروني مؤكد فعلا." #. TRANS: Server error displayed when updating IM preferences fails. #. TRANS: Server error thrown on database error removing a registered IM address. @@ -1505,20 +1577,18 @@ msgid "Notices" msgstr "الإشعارات" #. TRANS: Title for conversation page. -#, fuzzy +#. TRANS: Title for page that shows a notice. msgctxt "TITLE" msgid "Notice" -msgstr "إشعارات" +msgstr "الإشعار" #. TRANS: Client exception displayed trying to delete a user account while not logged in. -#, fuzzy msgid "Only logged-in users can delete their account." -msgstr "يستطيع المستخدمون الوالجون وحدهم تكرار الإشعارات." +msgstr "يستطيع المستخدمون الوالجون وحدهم حذف حساباتهم." #. TRANS: Client exception displayed trying to delete a user account without have the rights to do that. -#, fuzzy msgid "You cannot delete your account." -msgstr "لا يمكنك حذف المستخدمين." +msgstr "لا يمكنك حذف حسابك." #. TRANS: Confirmation text for user deletion. The user has to type this exactly the same, including punctuation. msgid "I am sure." @@ -1531,9 +1601,8 @@ msgid "You must write \"%s\" exactly in the box." msgstr "يجب أن تكتب \"%s\" كما هي في الصندوق." #. TRANS: Confirmation that a user account has been deleted. -#, fuzzy msgid "Account deleted." -msgstr "حُذف الأفتار." +msgstr "حُذف الحساب." #. TRANS: Page title for page on which a user account can be deleted. #. TRANS: Option in profile settings to delete the account of the currently logged in user. @@ -1544,7 +1613,8 @@ msgstr "حذف الحساب" msgid "" "This will permanently delete your account data from this " "server." -msgstr "سوف هذا الخيار بيانات حسابك من هذا الخادوم إلى الأبد." +msgstr "" +"سوف يحذف هذا الخيار بيانات حسابك من هذا الخادوم إلى الأبد." #. TRANS: Additional form text for user deletion form shown if a user has account backup rights. #. TRANS: %s is a URL to the backup page. @@ -1571,7 +1641,7 @@ msgstr "احذف حسابك إلى الأبد" #. TRANS: Client error displayed trying to delete an application while not logged in. msgid "You must be logged in to delete an application." -msgstr "يجب أن تسجل الدخول لتحذف تطبيقا." +msgstr "يجب أن تكون والجا لتحذف تطبيقا." #. TRANS: Client error displayed trying to delete an application that does not exist. msgid "Application not found." @@ -1579,6 +1649,7 @@ msgstr "لم يوجد التطبيق." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "أنت لست مالك هذا التطبيق." @@ -1612,13 +1683,6 @@ msgstr "احذف هذا التطبيق." msgid "You must be logged in to delete a group." msgstr "يجب أن تدخل لتحذف مجموعة." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -#, fuzzy -msgid "No nickname or ID." -msgstr "لا اسم مستعار." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "لا يسمح لك بحذف هذه المجموعة." @@ -1637,9 +1701,8 @@ msgstr "%1$s ترك المجموعة %2$s" #. TRANS: Title of delete group page. #. TRANS: Form legend for deleting a group. -#, fuzzy msgid "Delete group" -msgstr "احذف المستخدم" +msgstr "حذف مجموعة" #. TRANS: Warning in form for deleleting a group. msgid "" @@ -1647,11 +1710,13 @@ msgid "" "the group from the database, without a backup. Public posts to this group " "will still appear in individual timelines." msgstr "" +"أمتأكد أنك تريد حذف هذه المجموعة؟ سوف يمسح ذلك كل بيانات المجموعة من قاعدة " +"البيانات ودون نسخ احتياطي. سوف يظل ما أرسل إلى هذه المجموعة علنًا ظاهرًا في " +"مسارات الأفراد الزمنية." #. TRANS: Submit button title for 'No' when deleting a group. -#, fuzzy msgid "Do not delete this group." -msgstr "لا تحذف هذا الإشعار" +msgstr "لا تحذف هذه المجموعة." #. TRANS: Submit button title for 'Yes' when deleting a group. msgid "Delete this group." @@ -1783,7 +1848,7 @@ msgstr "سمة مخصصة" #. TRANS: Form instructions for uploading a cutom StatusNet theme. msgid "You can upload a custom StatusNet theme as a .ZIP archive." -msgstr "" +msgstr "يمكنك رفع سمة ستاتس نت على هيأة أرشيف .ZIP." #. TRANS: Fieldset legend for theme background image. msgid "Change background image" @@ -1863,9 +1928,8 @@ msgid "Restore default designs." msgstr "استعد التصاميم المبدئية." #. TRANS: Title for button for resetting theme settings. -#, fuzzy msgid "Reset back to default." -msgstr "ارجع إلى المبدئي" +msgstr "ارجع إلى المبدئيات." #. TRANS: Title for button for saving theme settings. msgid "Save design." @@ -1895,6 +1959,7 @@ msgid "You must be logged in to edit an application." msgstr "يجب أن تكون مسجل الدخول لتعدل تطبيقا." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "لا تطبيق كهذا." @@ -1914,9 +1979,8 @@ msgstr "الاسم طويل جدا (الحد الأقصى 255 حرفا)." #. TRANS: Validation error shown when providing a name for an application that already exists in the "Edit application" form. #. TRANS: Validation error shown when providing a name for an application that already exists in the "New application" form. -#, fuzzy msgid "Name already in use. Try another one." -msgstr "الاسم المستعار مستخدم بالفعل. جرّب اسمًا آخرًا." +msgstr "الاسم مستخدم بالفعل. جرّب اسمًا آخرًا." #. TRANS: Validation error shown when not providing a description in the "Edit application" form. #. TRANS: Validation error shown when not providing a description in the "New application" form. @@ -2115,6 +2179,7 @@ msgstr "عنوان البريد الإلكتروني المُؤكد الحالي #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "ليس عنوان بريد صالح." @@ -2137,20 +2202,20 @@ 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 "" +"أرسل رمز تحقق إلى عنوان بريدك الإلكتروني الذي أضفته. التمس الرمز وتعليمات " +"استخدامه في صندوق الوارد (وصندوق الرسائل المزعجة!)" #. TRANS: Message given canceling e-mail address confirmation that is not pending. #. TRANS: Message given canceling Instant Messaging address confirmation that is not pending. #. TRANS: Message given canceling SMS phone number confirmation that is not pending. -#, fuzzy msgid "No pending confirmation to cancel." -msgstr "أُلغي تأكيد المراسلة الفورية." +msgstr "لا يوجد تأكيد قيد الانتظار لتلغيه." #. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address. msgid "That is the wrong email address." msgstr "هذا عنوان بريد إلكتروني خطأ." #. TRANS: Server error thrown on database error canceling e-mail address confirmation. -#, fuzzy msgid "Could not delete email confirmation." msgstr "تعذّر حذف تأكيد البريد الإلكتروني." @@ -2482,33 +2547,26 @@ msgstr "%1$s أعضاء المجموعة, الصفحة %2$d" msgid "A list of the users in this group." msgstr "قائمة بمستخدمي هذه المجموعة." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "إداري" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "امنع" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "عضوية %s في المجموعات" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "امنع هذا المستخدم" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s أعضاء المجموعة, الصفحة %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "اجعل المستخدم إداريًا في المجموعة" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "اجعله إداريًا" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "اجعل هذا المستخدم إداريًا" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "قائمة بمستخدمي هذه المجموعة." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, fuzzy, php-format @@ -2516,14 +2574,13 @@ msgid "Updates from members of %1$s on %2$s!" msgstr "الإشعارات التي فضلها %1$s في %2$s!" #. TRANS: Title for first page of the groups list. -#, fuzzy msgctxt "TITLE" msgid "Groups" -msgstr "مجموعات" +msgstr "المجموعات" #. TRANS: Title for all but the first page of the groups list. #. TRANS: %d is the page number. -#, fuzzy, php-format +#, php-format msgctxt "TITLE" msgid "Groups, page %d" msgstr "المجموعات، صفحة %d" @@ -2546,6 +2603,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "أنشئ مجموعة جديدة" @@ -2657,14 +2715,12 @@ msgid "Send me replies from people I'm not subscribed to." msgstr "" #. TRANS: Checkbox label in IM preferences form. -#, fuzzy msgid "Publish a MicroID" -msgstr "انشر هوية مصغّرة لعنوان بريدي الإلكتروني." +msgstr "انشر هوية مصغرة" #. TRANS: Server error thrown on database error updating IM preferences. -#, fuzzy msgid "Could not update IM preferences." -msgstr "تعذّر تحديث المستخدم." +msgstr "تعذّر تحديث تفضيلات المراسلة الفورية." #. TRANS: Confirmation message for successful IM preferences save. #. TRANS: Confirmation message after saving preferences. @@ -2672,7 +2728,6 @@ msgid "Preferences saved." msgstr "حُفِظت التفضيلات." #. TRANS: Message given saving IM address without having provided one. -#, fuzzy msgid "No screenname." msgstr "لا اسم مستعار." @@ -2687,28 +2742,24 @@ msgid "Cannot normalize that screenname." msgstr "ليست هوية جابر صالحة" #. TRANS: Message given saving IM address that not valid. -#, fuzzy msgid "Not a valid screenname." msgstr "ليس اسمًا مستعارًا صحيحًا." #. TRANS: Message given saving IM address that is already set for another user. -#, fuzzy msgid "Screenname already belongs to another user." -msgstr "هذا البريد الإلكتروني ملك مستخدم آخر بالفعل." +msgstr "هذا الاسم المستعار يعود فعلا على مستخدم آخر." #. TRANS: Message given saving valid IM address that is to be confirmed. -#, fuzzy msgid "A confirmation code was sent to the IM address you added." -msgstr "رمز التأكيد ليس لك!" +msgstr "أرسل رمز تأكيد إلى عنوان المراسلة الفورية الذي أضفته." #. TRANS: Message given canceling IM address confirmation for the wrong IM address. msgid "That is the wrong IM address." msgstr "هذا عنوان محادثة فورية خاطئ." #. TRANS: Server error thrown on database error canceling IM address confirmation. -#, fuzzy msgid "Could not delete confirmation." -msgstr "تعذّر حذف تأكيد البريد المراسلة الفورية." +msgstr "تعذّر حذف التأكيد." #. TRANS: Message given after successfully canceling IM address confirmation. msgid "IM confirmation cancelled." @@ -2716,9 +2767,8 @@ msgstr "أُلغي تأكيد المراسلة الفورية." #. TRANS: Message given trying to remove an IM address that is not #. TRANS: registered for the active user. -#, fuzzy msgid "That is not your screenname." -msgstr "هذا ليس رقم هاتفك." +msgstr "هذا ليس اسمك المستعار." #. TRANS: Message given after successfully removing a registered Instant Messaging address. msgid "The IM address was removed." @@ -2769,19 +2819,18 @@ msgstr "دعوة مستخدمين جدد" #. TRANS: is already subscribed to one or more users with the given e-mail address(es). #. TRANS: Plural form is based on the number of reported already subscribed e-mail addresses. #. TRANS: Followed by a bullet list. -#, fuzzy msgid "You are already subscribed to this user:" msgid_plural "You are already subscribed to these users:" -msgstr[0] "لست مشتركًا بأحد." -msgstr[1] "لست مشتركًا بأحد." -msgstr[2] "لست مشتركًا بأحد." -msgstr[3] "لست مشتركًا بأحد." -msgstr[4] "لست مشتركًا بأحد." -msgstr[5] "لست مشتركًا بأحد." +msgstr[0] "" +msgstr[1] "أنت مشترك فعلا بهؤلاء المستخدمين:" +msgstr[2] "أنت مشترك فعلا بهذا المستخدم:" +msgstr[3] "أنت مشترك فعلا بهذا المستخدم:" +msgstr[4] "" +msgstr[5] "" #. TRANS: Used as list item for already subscribed users (%1$s is nickname, %2$s is e-mail address). #. TRANS: Used as list item for already registered people (%1$s is nickname, %2$s is e-mail address). -#, fuzzy, php-format +#, php-format msgctxt "INVITE" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" @@ -2897,21 +2946,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s انضم للمجموعة %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "يجب أن تلج لتغادر مجموعة." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "مجموعة غير معروفة." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "لست عضوا في تلك المجموعة." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s ترك المجموعة %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -2973,9 +3017,8 @@ msgid "Type" msgstr "النوع" #. TRANS: Dropdown field instructions in the license admin panel. -#, fuzzy msgid "Select a license." -msgstr "اختر رخصة" +msgstr "اختر رخصة." #. TRANS: Form legend in the license admin panel. msgid "License details" @@ -3014,9 +3057,8 @@ msgid "URL for an image to display with the license." msgstr "مسار الصورة التي ستعرض مع الرخصة." #. TRANS: Button title in the license admin panel. -#, fuzzy msgid "Save license settings." -msgstr "احفظ إعدادات الرخصة" +msgstr "احفظ إعدادات الرخصة." #. TRANS: Client error displayed when trying to log in while already logged in. #. TRANS: Client error displayed trying to use "one time password login" when already logged in. @@ -3052,7 +3094,6 @@ msgid "Automatically login in the future; not for shared computers!" msgstr "لُج تلقائيًا في المستقبل؛ هذا الخيار ليس مُعدًا للحواسيب المشتركة!" #. TRANS: Button text for log in on login page. -#, fuzzy msgctxt "BUTTON" msgid "Login" msgstr "لُج" @@ -3070,7 +3111,7 @@ msgstr "" #. TRANS: Form instructions on login page. msgid "Login with your username and password." -msgstr "ادخل باسم مستخدمك وكلمة سرك." +msgstr "لُج باسم مستخدمك وكلمة سرك." #. TRANS: Form instructions on login page. This message contains Markdown links in the form [Link text](Link). #. TRANS: %%action.register%% is a link to the registration page. @@ -3113,7 +3154,7 @@ msgstr "تطبيق جديد" #. TRANS: Client error displayed trying to add a new application while not logged in. msgid "You must be logged in to register an application." -msgstr "يجب أن تكون مسجل الدخول لتسجل تطبيقا." +msgstr "يجب أن تكون والجا لتسجل تطبيقا." #. TRANS: Form instructions for registering a new application. msgid "Use this form to register a new application." @@ -3129,9 +3170,8 @@ msgid "Could not create application." msgstr "لم يمكن إنشاء التطبيق." #. TRANS: Form validation error on New application page when providing an invalid image upload. -#, fuzzy msgid "Invalid image." -msgstr "حجم غير صالح." +msgstr "صورة غير صالحة." #. TRANS: Title for form to create a group. msgid "New group" @@ -3262,7 +3302,7 @@ msgstr "أُرسل التنبيه!" #. TRANS: Message displayed to an anonymous user trying to view OAuth application list. msgid "You must be logged in to list your applications." -msgstr "يجب أن تكون مسجل الدخول لعرض تطبيقاتك." +msgstr "يجب أن تكون والجا لعرض تطبيقاتك." #. TRANS: Page title for OAuth applications msgid "OAuth applications" @@ -3329,11 +3369,14 @@ msgid "Notice %s not found." msgstr "لم يتم العثور على وسيلة API." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. #, fuzzy msgid "Notice has no profile." msgstr "ليس للمستخدم ملف شخصي." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "حالة %1$s في يوم %2$s" @@ -3409,7 +3452,6 @@ msgid "This is your outbox, which lists private messages you have sent." msgstr "هذا صندوق بريدك الصادر، والذي يسرد الرسائل الخاصة التي أرسلتها." #. TRANS: Title for page where to change password. -#, fuzzy msgctxt "TITLE" msgid "Change password" msgstr "تغيير كلمة السر" @@ -3434,12 +3476,10 @@ msgstr "كلمة السر الجديدة" #. TRANS: Field title on page where to change password. #. TRANS: Field title on account registration page. -#, fuzzy msgid "6 or more characters." -msgstr "6 أحرف أو أكثر" +msgstr "6 أحرف أو أكثر." #. TRANS: Field label on page where to change password. In this field the new password should be typed a second time. -#, fuzzy msgctxt "LABEL" msgid "Confirm" msgstr "أكّد" @@ -3447,12 +3487,10 @@ msgstr "أكّد" #. TRANS: Field title on page where to change password. #. TRANS: Ttile for field label for password reset form where the password has to be typed again. #. TRANS: Field title on account registration page. -#, fuzzy msgid "Same as password above." -msgstr "نفس كلمة السر أعلاه" +msgstr "نفس كلمة السر أعلاه." #. TRANS: Button text on page where to change password. -#, fuzzy msgctxt "BUTTON" msgid "Change" msgstr "غيّر" @@ -3464,14 +3502,12 @@ msgstr "يجب أن تكون كلمة السر 6 حروف أو أكثر." #. TRANS: Form validation error on password change when password confirmation does not match. #. TRANS: Form validation error displayed when trying to register with non-matching passwords. -#, fuzzy msgid "Passwords do not match." msgstr "كلمتا السر غير متطابقتين." #. TRANS: Form validation error on page where to change password. -#, fuzzy msgid "Incorrect old password." -msgstr "كلمة السر القديمة غير صحيحة" +msgstr "كلمة السر القديمة غير صحيحة." #. TRANS: Form validation error on page where to change password. msgid "Error saving user; invalid." @@ -3480,9 +3516,8 @@ msgstr "خطأ أثناء حفظ المستخدم؛ غير صالح." #. TRANS: Server error displayed on page where to change password when password change #. TRANS: could not be made because of a server error. #. TRANS: Reset password form validation error message. -#, fuzzy msgid "Cannot save new password." -msgstr "تعذّر حفظ كلمة السر الجديدة." +msgstr "!تعذّر حفظ كلمة السر الجديدة." #. TRANS: Form validation notice on page where to change password. msgid "Password saved." @@ -3495,7 +3530,7 @@ msgstr "المسارات" #. TRANS: Form instructions for Path admin panel. msgid "Path and server settings for this StatusNet site" -msgstr "" +msgstr "إعدادات المسارات والخوادم لموقع ستاتس نت هذا." #. TRANS: Client error in Paths admin panel. #. TRANS: %s is the directory that could not be read from. @@ -3523,9 +3558,8 @@ msgstr "لا يمكن قراءة دليل المحليات: %s." #. TRANS: Client error in Paths admin panel. #. TRANS: %s is the SSL server URL that is too long. -#, fuzzy msgid "Invalid SSL server. The maximum length is 255 characters." -msgstr "رسالة ترحيب غير صالحة. أقصى طول هو 255 حرف." +msgstr "خادوم SSL غير صالح. أقصى طول 255 حرف." #. TRANS: Fieldset legend in Paths admin panel. msgid "Site" @@ -3544,9 +3578,8 @@ msgid "Path" msgstr "المسار" #. TRANS: Field title in Paths admin panel. -#, fuzzy msgid "Site path." -msgstr "مسار الموقع" +msgstr "مسار الموقع." #. TRANS: Field label in Paths admin panel. #, fuzzy @@ -3563,20 +3596,17 @@ msgid "Fancy URLs" msgstr "مسارات فاخرة" #. TRANS: Field title in Paths admin panel. -#, fuzzy msgid "Use fancy URLs (more readable and memorable)?" msgstr "أأستخدم مسارات فاخرة (يمكن قراءتها وتذكرها بسهولة أكبر)؟" #. TRANS: Fieldset legend in Paths admin panel. -#, fuzzy msgctxt "LEGEND" msgid "Theme" msgstr "السمة" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Server for themes." -msgstr "سمة الموقع." +msgstr "خادوم السمات." #. TRANS: Tooltip for field label in Paths admin panel. msgid "Web path to themes." @@ -3584,30 +3614,27 @@ msgstr "" #. TRANS: Field label in Paths admin panel. msgid "SSL server" -msgstr "خادم SSL" +msgstr "خادوم SSL" #. TRANS: Tooltip for field label in Paths admin panel. msgid "SSL server for themes (default: SSL server)." -msgstr "" +msgstr "خادوم SSL للسمات (مبدئيًا نفس خادوم SSL)." #. TRANS: Field label in Paths admin panel. -#, fuzzy msgid "SSL path" -msgstr "مسار الموقع" +msgstr "مسار SSL" #. TRANS: Tooltip for field label in Paths admin panel. msgid "SSL path to themes (default: /theme/)." msgstr "" #. TRANS: Field label in Paths admin panel. -#, fuzzy msgid "Directory" -msgstr "دليل السمات" +msgstr "الدليل" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Directory where themes are located." -msgstr "مسار دليل المحليات" +msgstr "الدليل الذي فيه السمات." #. TRANS: Fieldset legend in Paths admin panel. msgid "Avatars" @@ -3618,9 +3645,8 @@ msgid "Avatar server" msgstr "خادوم الأفتارات" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Server for avatars." -msgstr "سمة الموقع." +msgstr "خادوم الأفتارت." #. TRANS: Field label in Paths admin panel. msgid "Avatar path" @@ -3633,21 +3659,19 @@ msgstr "فشل تحديث الأفتار." #. TRANS: Field label in Paths admin panel. msgid "Avatar directory" -msgstr "دليل الأفتار." +msgstr "دليل الأفتارات" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Directory where avatars are located." -msgstr "مسار دليل المحليات" +msgstr "الدليل الذي فيه الأفتارات." #. TRANS: Fieldset legend in Paths admin panel. msgid "Backgrounds" -msgstr "خلفيات" +msgstr "الخلفيات" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Server for backgrounds." -msgstr "سمة الموقع." +msgstr "خادوم الخلفيات." #. TRANS: Tooltip for field label in Paths admin panel. msgid "Web path to backgrounds." @@ -3662,18 +3686,16 @@ msgid "Web path to backgrounds on SSL pages." msgstr "" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Directory where backgrounds are located." -msgstr "مسار دليل المحليات" +msgstr "الدليل الذي فيه الخلفيات." #. TRANS: Fieldset legens in Paths admin panel. msgid "Attachments" -msgstr "مرفقات" +msgstr "المرفقات" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Server for attachments." -msgstr "سمة الموقع." +msgstr "خادوم المرفقات." #. TRANS: Tooltip for field label in Paths admin panel. #, fuzzy @@ -3681,21 +3703,18 @@ msgid "Web path to attachments." msgstr "لا مرفقات." #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Server for attachments on SSL pages." -msgstr "سمة الموقع." +msgstr "خادوم مرفقات صفحات SSL." #. TRANS: Tooltip for field label in Paths admin panel. msgid "Web path to attachments on SSL pages." msgstr "" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "Directory where attachments are located." -msgstr "مسار دليل المحليات" +msgstr "الدليل الذي فيه المرفقات." #. TRANS: Fieldset legend in Paths admin panel. -#, fuzzy msgctxt "LEGEND" msgid "SSL" msgstr "SSL" @@ -3718,7 +3737,7 @@ msgstr "استخدم SSL" #. TRANS: Tooltip for field label in Paths admin panel. msgid "When to use SSL." -msgstr "متى تستخدم SSL." +msgstr "متى أستخدم SSL." #. TRANS: Tooltip for field label in Paths admin panel. msgid "Server to direct SSL requests to." @@ -3792,9 +3811,8 @@ msgid "" msgstr "" #. TRANS: Admin form section header -#, fuzzy msgid "Default plugins" -msgstr "اللغة المبدئية" +msgstr "الملحقات المبدئية" #. TRANS: Text displayed on plugin admin page when no plugin are enabled. msgid "" @@ -3826,18 +3844,21 @@ msgstr "معلومات الملف الشخصي" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 حرفًا إنجليزيًا أو رقمًا بدون نقاط أو مسافات" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "الاسم الكامل" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "الصفحة الرئيسية" @@ -3872,6 +3893,7 @@ msgstr "السيرة" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "الموقع" @@ -3934,6 +3956,7 @@ msgstr[4] "الاسم طويل جدا (الأقصى %d حرفا)." msgstr[5] "الاسم طويل جدا (الأقصى %d حرفا)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "لم تُختر المنطقة الزمنية." @@ -4036,7 +4059,7 @@ msgid "" "friends, family, and colleagues! ([Read more](%%doc.help%%))" msgstr "" "هنا %%site.name%%، خدمة [التدوين المُصغّر](http://en.wikipedia.org/wiki/Micro-" -"blogging) المبنية على البرنامج الحر [StatusNet](http://status.net/). [انضم " +"blogging) المبنية على البرنامج الحر [ستاتس نت](http://status.net/). [انضم " "الآن](%%action.register%%) لتشارك اشعاراتك مع أصدقائك وعائلتك وزملائك! " "([اقرأ المزيد](%%doc.help%%))" @@ -4049,7 +4072,7 @@ msgid "" "tool." msgstr "" "هنا %%site.name%%، خدمة [التدوين المُصغّر](http://en.wikipedia.org/wiki/Micro-" -"blogging) المبنية على البرنامج الحر [StatusNet](http://status.net/)." +"blogging) المبنية على البرنامج الحر [ستاتس نت](http://status.net/)." #. TRANS: Public RSS feed description. %s is the StatusNet site name. #, php-format @@ -4145,10 +4168,9 @@ msgid "Recover" msgstr "استرجع" #. TRANS: Button text on password recovery page. -#, fuzzy msgctxt "BUTTON" msgid "Recover" -msgstr "استرجع" +msgstr "استعد" #. TRANS: Title for password recovery page in password reset mode. msgid "Reset password" @@ -4164,22 +4186,19 @@ msgid "Password recovery requested" msgstr "طُلبت استعادة كلمة السر" #. TRANS: Title for password recovery page in password saved mode. -#, fuzzy msgid "Password saved" -msgstr "حُفظت كلمة السر." +msgstr "حُفظت كلمة السر" #. TRANS: Title for password recovery page when an unknown action has been specified. msgid "Unknown action" msgstr "إجراء غير معروف" #. TRANS: Title for field label for password reset form. -#, fuzzy msgid "6 or more characters, and do not forget it!" -msgstr "6 أحرف أو أكثر" +msgstr "6 أحرف أو أكثر، لا تنسها!" #. TRANS: Button text for password reset form. #. TRANS: Button text on profile design page to reset all colour settings to default without saving. -#, fuzzy msgctxt "BUTTON" msgid "Reset" msgstr "أعد الضبط" @@ -4189,9 +4208,8 @@ msgid "Enter a nickname or email address." msgstr "أدخل اسمًا مستعارًا أو عنوان بريد إلكتروني." #. TRANS: Information on password recovery form if no known username or e-mail address was specified. -#, fuzzy msgid "No user with that email address or username." -msgstr "لا يوجد عنوان بريد إلكتروني مُسجّل لهذا المستخدم." +msgstr "لا مستخدم لديه عنوان البريد الإلكتروني أو اسم المستخدم هذا." #. TRANS: Client error displayed on password recovery form if a user does not have a registered e-mail address. msgid "No registered email address for that user." @@ -4206,21 +4224,19 @@ msgid "" "Instructions for recovering your password have been sent to the email " "address registered to your account." msgstr "" +"أرسلت تعليمات عن كيفية استعادة كلمة سرك إلى بريدك الإلكتروني المسجل في حسابك." #. TRANS: Client error displayed when trying to reset as password without providing a user. -#, fuzzy msgid "Unexpected password reset." -msgstr "أعد ضبط كلمة السر" +msgstr "إعادة ضبط غير متوقعة لكلمة السر." #. TRANS: Reset password form validation error message. -#, fuzzy msgid "Password must be 6 characters or more." msgstr "يجب أن تكون كلمة السر 6 محارف أو أكثر." #. TRANS: Reset password form validation error message. -#, fuzzy msgid "Password and confirmation do not match." -msgstr "كلمتا السر غير متطابقتين." +msgstr "كلمة السر وتأكيدها لا يتطابقان." #. TRANS: Server error displayed when something does wrong with the user object during password reset. #. TRANS: Server error displayed when saving fails during user registration. @@ -4238,9 +4254,9 @@ msgstr "لا مدخل هوية." #. TRANS: Client exception thrown when an invalid ID parameter was provided for a file. #. TRANS: %d is the provided ID for which the file is not present (number). -#, fuzzy, php-format +#, php-format msgid "No such file \"%d\"." -msgstr "لا ملف كهذا." +msgstr "لا ملف باسم \"%d\"." #. TRANS: Client error displayed when trying to register to an invite-only site without an invitation. msgid "Sorry, only invited people can register." @@ -4255,19 +4271,17 @@ msgid "Registration successful" msgstr "نجح التسجيل" #. TRANS: Title for registration page. -#, fuzzy msgctxt "TITLE" msgid "Register" -msgstr "سجّل" +msgstr "تسجيل" #. TRANS: Client error displayed when trying to register to a closed site. msgid "Registration not allowed." msgstr "لا يُسمح بالتسجيل." #. TRANS: Form validation error displayed when trying to register without agreeing to the site license. -#, fuzzy msgid "You cannot register if you do not agree to the license." -msgstr "لا يمكنك تكرار ملاحظتك الشخصية." +msgstr "لا يمكن أن تسجل ما لم توافق على الرخصة." msgid "Email address already exists." msgstr "عنوان البريد الإلكتروني موجود مسبقًا." @@ -4281,28 +4295,26 @@ msgid "" "With this form you can create a new account. You can then post notices and " "link up to friends and colleagues." msgstr "" +"يمكن أن تنشئ حسابًا جديدًا عبر هذا النموذج. سوف تتمكن بعد ذلك من إرسال " +"الإشعارات والارتباط بأصدقائك وزملائك." #. TRANS: Field label on account registration page. In this field the password has to be entered a second time. -#, fuzzy msgctxt "PASSWORD" msgid "Confirm" -msgstr "أكّد" +msgstr "التأكيد" #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "LABEL" msgid "Email" msgstr "البريد الإلكتروني" #. TRANS: Field title on account registration page. -#, fuzzy msgid "Used only for updates, announcements, and password recovery." -msgstr "لا يُستخدم إلا عند التحديثات، والتعميمات، ولاستعادة كلمة السر" +msgstr "لا يُستخدم إلا للإبلاغ عن التطورات والتعميمات ولاستعادة كلمة السر." #. TRANS: Field title on account registration page. -#, fuzzy msgid "Longer name, preferably your \"real\" name." -msgstr "اسم أطول. يُفضَّل استخدام اسمك الحقيقي" +msgstr "اسم أطول. يُفضَّل أن يكون اسمك \"الحقيقي\"." #. TRANS: Text area title in form for account registration. Plural #. TRANS: is decided by the number of characters available for the @@ -4318,7 +4330,6 @@ msgstr[4] "تكلم عن نفسك واهتمامتك في %d حرف" msgstr[5] "تكلم عن نفسك واهتمامتك في %d حرف" #. TRANS: Text area title on account registration page. -#, fuzzy msgid "Describe yourself and your interests." msgstr "صِف نفسك واهتماماتك" @@ -4328,7 +4339,6 @@ msgid "Where you are, like \"City, State (or Region), Country\"." msgstr "مكان تواجدك، على سبيل المثال \"المدينة، الولاية (أو المنطقة)، الدولة\"" #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "BUTTON" msgid "Register" msgstr "سجّل" @@ -4536,14 +4546,12 @@ msgid "Replies to %1$s on %2$s." msgstr "الردود على %1$s، الصفحة %2$d" #. TRANS: Client exception displayed when trying to restore an account while not logged in. -#, fuzzy msgid "Only logged-in users can restore their account." -msgstr "يستطيع المستخدمون الوالجون وحدهم تكرار الإشعارات." +msgstr "يستطيع المستخدمون الوالجون وحدهم استعادة حساباتهم." #. TRANS: Client exception displayed when trying to restore an account without having restore rights. -#, fuzzy msgid "You may not restore your account." -msgstr "يجب أن تكون مسجل الدخول لتسجل تطبيقا." +msgstr "لا يسمح لك باسترجاع حسابك." #. TRANS: Client exception displayed trying to restore an account while something went wrong uploading a file. #. TRANS: Client exception. No file; probably just a non-AJAX submission. @@ -4622,71 +4630,108 @@ msgstr "ليس للمستخدم هذا الدور." msgid "StatusNet" msgstr "ستاتس نت" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. #, fuzzy msgid "You cannot sandbox users on this site." msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. #, fuzzy msgid "User is already sandboxed." msgstr "المستخدم مسكت من قبل." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "الجلسات" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "الجلسات" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. #, fuzzy msgid "Handle sessions" msgstr "الجلسات" -msgid "Whether to handle sessions ourselves." -msgstr "" +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." +msgstr "الجلسات" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "تنقيح الجلسة" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "مكّن تنقيح مُخرجات الجلسة." -#. TRANS: Submit button title. -msgid "Save" -msgstr "أرسل" - -msgid "Save site settings" -msgstr "اذف إعدادت الموقع" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "حفظ إعدادت الوصول" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "يجب أن تكون مسجل الدخول لرؤية تطبيق." +#. TRANS: Header on the OAuth application page. #, fuzzy msgid "Application profile" msgstr "معلومات التطبيق" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" +#. TRANS: Header on the OAuth application page. #, fuzzy msgid "Application actions" msgstr "معلومات التطبيق" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "عدّل" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "احذف" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "معلومات التطبيق" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "أمتأكد من أنك تريد إعادة ضبط مفتاح المستهلك وكلمة سره؟" @@ -4799,13 +4844,12 @@ msgstr "جميع الأعضاء" msgid "Statistics" msgstr "إحصاءات" -#, fuzzy +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "أنشئت" #. TRANS: Label for member count in statistics on group page. -#, fuzzy msgctxt "LABEL" msgid "Members" msgstr "الأعضاء" @@ -4823,7 +4867,7 @@ msgid "" "of this group and many more! ([Read more](%%%%doc.help%%%%))" msgstr "" "**%s** مجموعة مستخدمين على %%%%site.name%%%%، خدمة [التدوين المُصغّر](http://" -"en.wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [StatusNet]" +"en.wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [ستاتس نت]" "(http://status.net/). يتشارك أعضاؤها رسائل قصيرة عن حياتهم واهتماماتهم. " "[انضم الآن](%%%%action.register%%%%) لتصبح عضوًا في هذه المجموعة ومجموعات " "أخرى عديدة! ([اقرأ المزيد](%%%%doc.help%%%%))" @@ -4839,10 +4883,12 @@ msgid "" "their life and interests. " msgstr "" "**%s** مجموعة مستخدمين على %%%%site.name%%%%، خدمة [التدوين المُصغّر](http://" -"en.wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [StatusNet]" +"en.wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [ستاتس نت]" "(http://status.net/). يتشارك أعضاؤها رسائل قصيرة عن حياتهم واهتماماتهم. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "الإداريون" @@ -4866,13 +4912,12 @@ msgstr "الإشعارات التي فضلها %1$s في %2$s!" msgid "Message from %1$s on %2$s" msgstr "نتائج البحث ل\"%1$s\" على %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "حُذف الإشعار." -msgid "Notice" -msgstr "إشعارات" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s، الصفحة %2$d" @@ -4907,6 +4952,8 @@ msgstr "" msgid "Notice feed for %s (RSS 2.0)" msgstr "" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "" @@ -4946,7 +4993,7 @@ msgid "" "follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))" msgstr "" "لدى **%s** حساب على %%%%site.name%%%%، خدمة [التدوين المُصغّر](http://en." -"wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [StatusNet]" +"wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [ستاتس نت]" "(http://status.net/). يتشارك أعضاؤها رسائل قصيرة عن حياتهم واهتماماتهم. " "[انضم الآن](%%%%action.register%%%%) لتتابع إشعارت **%s** وغيره! ([اقرأ " "المزيد](%%%%doc.help%%%%))" @@ -4960,7 +5007,7 @@ msgid "" "[StatusNet](http://status.net/) tool. " msgstr "" "لدى **%s** حساب على %%%%site.name%%%%، خدمة [التدوين المُصغّر](http://en." -"wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [StatusNet]" +"wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [ستاتس نت]" "(http://status.net/). " #. TRANS: Link to the author of a repeated notice. %s is a linked nickname. @@ -4968,91 +5015,139 @@ msgstr "" msgid "Repeat of %s" msgstr "تكرار ل%s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "المستخدم مسكت من قبل." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "الموقع" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "الإعدادات الأساسية لموقع StatusNet هذا." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "يجب ألا يكون طول اسم الموقع صفرًا." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "يجب أن تملك عنوان بريد إلكتروني صحيح." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "لغة غير معروفة \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "حد النص الأدنى 0 (غير محدود)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "عام" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "اسم الموقع" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "اسم موقعك، \"التدوين المصغر لشركتك\" مثلا" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "البريد الإلكتروني" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "عنوان البريد الإلكتروني للاتصال بموقعك" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "محلي" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "المنطقة الزمنية المبدئية" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "المنطقة الزمنية المبدئية للموقع؛ ت‌ع‌م عادة." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "اللغة المبدئية" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "لغة الموقع إذا لم يتوفر اكتشاف اللغة آليًا من إعدادات المتصفح" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "الحدود" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "حد النص" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "أقصى عدد للحروف في الإشعارات." +#. TRANS: Field label on site settings panel. #, fuzzy msgid "Dupe limit" msgstr "حد النص" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "الفترة (بالثواني) التي ينبغي أن ينتظرها المستخدمون قبل أن ينشروا الرسالة " "نفسها مجددًا" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "اذف إعدادت الموقع" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "إشعار الموقع" @@ -5079,9 +5174,8 @@ msgid "Site-wide notice text (255 characters maximum; HTML allowed)" msgstr "نص إشعار عام للموقع (255 حرف كحد أقصى؛ يسمح بHTML)" #. TRANS: Title for button to save site notice in admin panel. -#, fuzzy msgid "Save site notice." -msgstr "احفظ إشعار الموقع" +msgstr "احفظ إشعار الموقع." #. TRANS: Title for SMS settings. msgid "SMS settings" @@ -5260,6 +5354,10 @@ msgstr "بلّغ عن المسار" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "أرسل" + #, fuzzy msgid "Save snapshot settings" msgstr "اذف إعدادت الموقع" @@ -5576,9 +5674,8 @@ msgid "Whether to allow users to invite new users." msgstr "اسمح للمستخدمين بدعوة مستخدمين جدد." #. TRANS: Title for button to save user settings in user admin panel. -#, fuzzy msgid "Save user settings." -msgstr "احفظ إعدادات المستخدم" +msgstr "احفظ إعدادات المستخدم." #. TRANS: Page title. #, fuzzy @@ -5596,6 +5693,7 @@ msgstr "" "المستخدم. إذا لم تطلب للتو الاستماع لإشعارات شخص ما فانقر \"ارفض\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5607,6 +5705,7 @@ msgid "Subscribe to this user." msgstr "اشترك بهذا المستخدم" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -5619,7 +5718,7 @@ msgstr "ارفض هذا الاشتراك" #. TRANS: Client error displayed for an empty authorisation request. msgid "No authorization request!" -msgstr "لا طلب استيثاق!" +msgstr "لا طلب تصريح!" #. TRANS: Accept message header from Authorise subscription page. #, fuzzy @@ -5788,7 +5887,7 @@ msgid "" "Software Foundation, either version 3 of the License, or (at your option) " "any later version. " msgstr "" -"StatusNet برمجية حرة، يمكنك إعادة توزيعها وتعديلها تحت شروط رخصة غنو أفيرو " +"ستاتس نت برمجية حرة، يمكنك إعادة توزيعها وتعديلها تحت شروط رخصة غنو أفيرو " "العمومية كما نشرتها مؤسسة البرمجيات الحرة، برخصتها الثالثة أو أي نسخة تليها " "(أيهما تشاء)." @@ -5814,25 +5913,21 @@ msgid "Plugins" msgstr "الملحقات" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Name" msgstr "الاسم" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Version" msgstr "النسخة" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Author(s)" msgstr "المؤلف(ون)" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Description" msgstr "الوصف" @@ -5843,9 +5938,9 @@ msgstr "فضّل" #. TRANS: Ntofication given when a user marks a notice as favorite. #. TRANS: %1$s is a user nickname or full name, %2$s is a notice URI. -#, fuzzy, php-format +#, php-format msgid "%1$s marked notice %2$s as a favorite." -msgstr "لقد أضاف %s (@%s) إشعارك إلى مفضلاته" +msgstr "%1$s علّم الإشعار %2$s مفضّلا." #. TRANS: Server exception thrown when a URL cannot be processed. #, php-format @@ -5898,9 +5993,8 @@ msgstr[4] "" msgstr[5] "" #. TRANS: Client exception thrown if a file upload does not have a valid name. -#, fuzzy msgid "Invalid filename." -msgstr "حجم غير صالح." +msgstr "اسم ملف غير صالح." #. TRANS: Exception thrown when joining a group fails. msgid "Group join failed." @@ -6030,6 +6124,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6382,6 +6480,9 @@ msgstr "تعذّر حذف إعدادات التصميم." msgid "Home" msgstr "الرئيسية" +msgid "Admin" +msgstr "إداري" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "ضبط الموقع الأساسي" @@ -6421,6 +6522,10 @@ msgstr "ضبط المسارات" msgid "Sessions configuration" msgstr "ضبط الجلسات" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "الجلسات" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "عدّل إشعار الموقع" @@ -6531,6 +6636,7 @@ msgid "Describe your application" msgstr "صف تطبيقك" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "الوصف" @@ -6650,6 +6756,10 @@ msgstr "امنع" msgid "Block this user" msgstr "امنع هذا المستخدم" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "نتائج الأمر" @@ -6754,14 +6864,14 @@ msgid "Fullname: %s" msgstr "الاسم الكامل: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "الموقع: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7136,6 +7246,10 @@ msgstr "خطأ قاعدة بيانات" msgid "Public" msgstr "عام" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "احذف" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "احذف هذا المستخدم" @@ -7264,19 +7378,31 @@ msgstr "اذهب" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 حرفًا إنجليزيًا أو رقمًا بدون نقاط أو مسافات" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "امنع" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "امنع هذا المستخدم" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "مسار صفحة هذا التطبيق" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "صِف المجموعة أو الموضوع" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "صِف المجموعة أو الموضوع" msgstr[1] "صِف المجموعة أو الموضوع" msgstr[2] "صِف المجموعة أو الموضوع" @@ -7284,14 +7410,18 @@ msgstr[3] "صِف المجموعة أو الموضوع" msgstr[4] "صِف المجموعة أو الموضوع" msgstr[5] "صِف المجموعة أو الموضوع" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "مكان تواجدك، على سبيل المثال \"المدينة، الولاية (أو المنطقة)، الدولة\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "الكنى" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7306,6 +7436,27 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "عضو منذ" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "إداري" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7330,6 +7481,26 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "أعضاء مجموعة %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7534,35 +7705,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s يستمع الآن إلى إشعاراتك على %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s يستمع الآن إلى إشعاراتك على %2$s.\n" "\n" @@ -7575,12 +7733,26 @@ msgstr "" "----\n" "غيّر خيارات البريد الإلكتروني والإشعار في %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "الملف الشخصي" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "السيرة: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7596,10 +7768,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7626,7 +7795,7 @@ msgstr "لقد نبهك %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7636,10 +7805,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7651,7 +7817,6 @@ msgstr "رسالة خاصة جديدة من %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7664,10 +7829,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7695,10 +7857,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7716,14 +7875,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "لقد أرسل %s (@%s) إشعارًا إليك" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7739,12 +7897,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s انضم للمجموعة %2$s" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "الإشعارات التي فضلها %1$s في %2$s!" + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" #, fuzzy @@ -7786,6 +7964,20 @@ msgstr "لا عنوان بريد إلكتروني وارد." msgid "Unsupported message type: %s" msgstr "نوع رسالة غير مدعوم: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "اجعل المستخدم إداريًا في المجموعة" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "اجعله إداريًا" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "اجعل هذا المستخدم إداريًا" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -7937,7 +8129,7 @@ msgid "in context" msgstr "في السياق" msgid "Repeated by" -msgstr "مكرر بواسطة" +msgstr "كرره" msgid "Reply to this notice" msgstr "رُد على هذا الإشعار" @@ -8226,10 +8418,10 @@ msgid "Authorized connected applications" msgstr "تطبيقات OAuth" msgid "Silence" -msgstr "أسكت" +msgstr "أسكِت" msgid "Silence this user" -msgstr "أسكت هذا المستخدم" +msgstr "أسكِت هذا المستخدم" #, php-format msgid "People %s subscribes to" @@ -8246,7 +8438,7 @@ msgstr "المجموعات التي %s عضو فيها" msgid "Invite" msgstr "ادعُ" -#, fuzzy, php-format +#, php-format msgid "Invite friends and colleagues to join you on %s" msgstr "ادعُ أصدقائك وزملائك للانضمام إليك في %s" @@ -8263,9 +8455,8 @@ msgid "None" msgstr "لا شيء" #. TRANS: Server exception displayed if a theme name was invalid. -#, fuzzy msgid "Invalid theme name." -msgstr "حجم غير صالح." +msgstr "اسم سمة غير صالح." msgid "This server cannot handle theme uploads without ZIP support." msgstr "" @@ -8273,9 +8464,8 @@ msgstr "" msgid "The theme file is missing or the upload failed." msgstr "" -#, fuzzy msgid "Failed saving theme." -msgstr "فشل تحديث الأفتار." +msgstr "فشل حفظ السمة." msgid "Invalid theme: bad directory structure." msgstr "" @@ -8307,10 +8497,9 @@ msgid "Theme contains file of type '.%s', which is not allowed." msgstr "" msgid "Error opening theme archive." -msgstr "خطأ أثناء تحديث الملف الشخصي البعيد." +msgstr "خطأ في فتح أرشيف السمات." #. TRANS: Header for Notices section. -#, fuzzy msgctxt "HEADER" msgid "Notices" msgstr "الإشعارات" @@ -8338,51 +8527,48 @@ msgstr "" #. TRANS: For building a list such as "You, bob, mary and 5 others have favored this notice". #. TRANS: %1$s is a list of users, separated by a separator (default: ", "), %2$s is the last user in the list. -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "%1$s and %2$s" -msgstr "%1$s - %2$s" +msgstr "%1$s و %2$s" #. TRANS: List message for notice favoured by logged in user. -#, fuzzy msgctxt "FAVELIST" msgid "You have favored this notice." -msgstr "فضّل هذا الإشعار" +msgstr "فضّلتَ هذا الإشعار." -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "One person has favored this notice." msgid_plural "%d people have favored this notice." -msgstr[0] "ألغِ تفضيل هذا الإشعار" -msgstr[1] "ألغِ تفضيل هذا الإشعار" -msgstr[2] "ألغِ تفضيل هذا الإشعار" -msgstr[3] "ألغِ تفضيل هذا الإشعار" -msgstr[4] "ألغِ تفضيل هذا الإشعار" -msgstr[5] "ألغِ تفضيل هذا الإشعار" +msgstr[0] "لم يفضل أحد هذا الإشعار" +msgstr[1] "فضّل شخص واحد هذا الإشعار" +msgstr[2] "فضّل شخصان هذا الإشعار." +msgstr[3] "فضّل %d أشخاص هذا الإشعار" +msgstr[4] "فضّل %d شخصًا هذا الإشعار" +msgstr[5] "فضّل %d شخص هذا الإشعار." #. TRANS: List message for notice repeated by logged in user. -#, fuzzy msgctxt "REPEATLIST" msgid "You have repeated this notice." -msgstr "أنت كررت هذه الملاحظة بالفعل." +msgstr "كرّرتَ هذا الإشعار." -#, fuzzy, php-format +#, php-format msgctxt "REPEATLIST" msgid "One person has repeated this notice." msgid_plural "%d people have repeated this notice." -msgstr[0] "كرر بالفعل هذه الملاحظة." -msgstr[1] "كرر بالفعل هذه الملاحظة." -msgstr[2] "كرر بالفعل هذه الملاحظة." -msgstr[3] "كرر بالفعل هذه الملاحظة." -msgstr[4] "كرر بالفعل هذه الملاحظة." -msgstr[5] "كرر بالفعل هذه الملاحظة." +msgstr[0] "لم يكرر أحد هذا الإشعار" +msgstr[1] "كرّر شخص واحد هذا الإشعار" +msgstr[2] "كرّر شخصان هذا الإشعار." +msgstr[3] "كرّر %d أشخاص هذا الإشعار" +msgstr[4] "كرّر %d شخصًا هذا الإشعار" +msgstr[5] "كرّر %d شخص هذا الإشعار." #. TRANS: Title for top posters section. msgid "Top posters" msgstr "أعلى المرسلين" #. TRANS: Title for the form to unblock a user. -#, fuzzy msgctxt "TITLE" msgid "Unblock" msgstr "ألغِ المنع" @@ -8408,24 +8594,22 @@ msgstr "ألغِ إسكات هذا المستخدم" #. TRANS: Form legend on unsubscribe form. #. TRANS: Button title on unsubscribe form. msgid "Unsubscribe from this user" -msgstr "ألغِ الاشتراك مع هذا المستخدم" +msgstr "ألغِ الاشتراك بهذا المستخدم" #. TRANS: Button text on unsubscribe form. -#, fuzzy msgctxt "BUTTON" msgid "Unsubscribe" msgstr "ألغِ الاشتراك" #. TRANS: Exception text shown when no profile can be found for a user. #. TRANS: %1$s is a user nickname, $2$d is a user ID (number). -#, fuzzy, php-format +#, php-format msgid "User %1$s (%2$d) has no profile record." -msgstr "ليس للمستخدم ملف شخصي." +msgstr "ليس ل%1$s (%2$d) ملف شخصي مسجل." #. TRANS: Authorisation exception thrown when a user a not allowed to login. -#, fuzzy msgid "Not allowed to log in." -msgstr "لست والجًا." +msgstr "لا يسمح لك بالولوج." #. TRANS: Used in notices to indicate when the notice was made compared to now. msgid "a few seconds ago" @@ -8439,12 +8623,12 @@ msgstr "قبل دقيقة تقريبًا" #, php-format msgid "about one minute ago" msgid_plural "about %d minutes ago" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" -msgstr[3] "" -msgstr[4] "" -msgstr[5] "" +msgstr[0] "أقل من دقيقة" +msgstr[1] "حوالي دقيقة واحدة" +msgstr[2] "حوالي دقيقتين" +msgstr[3] "حوالي %d دقائق" +msgstr[4] "حوالي %d دقيقة" +msgstr[5] "حوالي %d دقيقة" #. TRANS: Used in notices to indicate when the notice was made compared to now. msgid "about an hour ago" @@ -8454,12 +8638,12 @@ msgstr "قبل ساعة تقريبًا" #, php-format msgid "about one hour ago" msgid_plural "about %d hours ago" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" -msgstr[3] "" -msgstr[4] "" -msgstr[5] "" +msgstr[0] "قبل أقل من ساعة" +msgstr[1] "قبل ساعة واحدة تقريبا" +msgstr[2] "قبل ساعتين تقريبا" +msgstr[3] "قبل %d ساعات تقريبا" +msgstr[4] "قبل %d ساعة تقريبا" +msgstr[5] "قبل %d ساعة تقريبا" #. TRANS: Used in notices to indicate when the notice was made compared to now. msgid "about a day ago" @@ -8469,12 +8653,12 @@ msgstr "قبل يوم تقريبا" #, php-format msgid "about one day ago" msgid_plural "about %d days ago" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" -msgstr[3] "" -msgstr[4] "" -msgstr[5] "" +msgstr[0] "قبل أقل من يوم" +msgstr[1] "قبل يوم واحد تقريبا" +msgstr[2] "قبل يومين تقريبا" +msgstr[3] "قبل %d أيام تقريبا" +msgstr[4] "قبل %d يوم تقريبا" +msgstr[5] "قبل %d يوما تقريبا" #. TRANS: Used in notices to indicate when the notice was made compared to now. msgid "about a month ago" @@ -8484,12 +8668,12 @@ msgstr "قبل شهر تقريبًا" #, php-format msgid "about one month ago" msgid_plural "about %d months ago" -msgstr[0] "" -msgstr[1] "" -msgstr[2] "" -msgstr[3] "" -msgstr[4] "" -msgstr[5] "" +msgstr[0] "قبل أقل من شهر" +msgstr[1] "قبل شهر واحد تقريبا" +msgstr[2] "قبل شهرين تقريبا" +msgstr[3] "قبل %d أشهر تقريبا" +msgstr[4] "قبل %d شهر تقريبا" +msgstr[5] "قبل %d شهرا تقريبا" #. TRANS: Used in notices to indicate when the notice was made compared to now. msgid "about a year ago" @@ -8515,9 +8699,8 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "تعذّر تحديث المستخدم." +#~ msgid "Notice" +#~ msgstr "إشعارات" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "تعذّر تحديث سجل المستخدم." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 حرفًا إنجليزيًا أو رقمًا بدون نقاط أو مسافات" diff --git a/locale/arz/LC_MESSAGES/statusnet.po b/locale/arz/LC_MESSAGES/statusnet.po index 5d69b97b58..f2d45f5ca6 100644 --- a/locale/arz/LC_MESSAGES/statusnet.po +++ b/locale/arz/LC_MESSAGES/statusnet.po @@ -11,19 +11,19 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:31+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:10+0000\n" "Language-Team: Egyptian Spoken Arabic \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: arz\n" "X-Message-Group: #out-statusnet-core\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" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -77,6 +77,8 @@ msgstr "اذف إعدادت الموقع" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -84,6 +86,7 @@ msgstr "اذف إعدادت الموقع" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. #, fuzzy msgctxt "BUTTON" msgid "Save" @@ -768,6 +771,7 @@ msgstr "الحساب" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "الاسم المستعار" @@ -849,6 +853,7 @@ msgstr "لا يمكنك حذف المستخدمين." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "لا إشعار كهذا." @@ -1070,6 +1075,105 @@ msgstr "الـ API method مش موجوده." msgid "User not found." msgstr "الـ API method مش موجوده." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "You must be logged in to leave a group." +msgstr "يجب أن تكون والجًا لتنشئ مجموعه." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "لا مجموعه كهذه." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#, fuzzy +msgid "No nickname or ID." +msgstr "لا اسم مستعار." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "لست والجًا." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "ليس للمستخدم ملف شخصى." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "قائمه بمستخدمى هذه المجموعه." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "ما نفعش يضم %1$s للجروپ %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s ساب جروپ %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1156,36 +1260,6 @@ msgstr "لا ملف كهذا." msgid "Cannot delete someone else's favorite." msgstr "تعذّر حذف المفضله." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "لا مجموعه كهذه." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1302,6 +1376,7 @@ msgstr "عاين" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1469,6 +1544,14 @@ msgstr "ألغِ منع هذا المستخدم" msgid "Post to %s" msgstr "مجموعات %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s ساب جروپ %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "لا رمز تأكيد." @@ -1529,6 +1612,7 @@ msgid "Notices" msgstr "الإشعارات" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1606,6 +1690,7 @@ msgstr "لم يوجد رمز التأكيد." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "انت مش بتملك الapplication دى." @@ -1640,13 +1725,6 @@ msgstr "احذف هذا الإشعار" msgid "You must be logged in to delete a group." msgstr "يجب أن تكون والجًا لتنشئ مجموعه." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -#, fuzzy -msgid "No nickname or ID." -msgstr "لا اسم مستعار." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1937,6 +2015,7 @@ msgid "You must be logged in to edit an application." msgstr "لازم يكون متسجل دخولك علشان تعدّل application." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "ما فيش application زى كده." @@ -2161,6 +2240,7 @@ msgstr "عنوان البريد الإلكترونى المُؤكد الحالى #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "ليس عنوان بريد صالح." @@ -2535,34 +2615,26 @@ msgstr "%1$s اعضاء الجروپ, صفحه %2$d" msgid "A list of the users in this group." msgstr "قائمه بمستخدمى هذه المجموعه." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "إداري" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "أعضاء مجموعه %s" -#. TRANS: Form legend for form to make a user a group admin. +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s اعضاء الجروپ, صفحه %2$d" + +#. TRANS: Page notice for group members page. #, fuzzy -msgid "Make user an admin of the group" -msgstr "لازم تكون ادارى علشان تعدّل الجروپ." - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +msgid "A list of users awaiting approval to join this group." +msgstr "قائمه بمستخدمى هذه المجموعه." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2596,6 +2668,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "أنشئ مجموعه جديدة" @@ -2947,22 +3020,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s دخل جروپ %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. +#. TRANS: Exception thrown when there is an unknown error joining a group. #, fuzzy -msgid "You must be logged in to leave a group." -msgstr "يجب أن تكون والجًا لتنشئ مجموعه." +msgid "Unknown error joining group." +msgstr "مش معروف" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "لست عضوا فى تلك المجموعه." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s ساب جروپ %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3380,11 +3447,14 @@ msgid "Notice %s not found." msgstr "الـ API method مش موجوده." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. #, fuzzy msgid "Notice has no profile." msgstr "ليس للمستخدم ملف شخصى." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, fuzzy, php-format msgid "%1$s's status on %2$s" msgstr "%1$s ساب جروپ %2$s" @@ -3877,17 +3947,20 @@ msgstr "معلومات الملف الشخصي" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "الاسم الكامل" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "الصفحه الرئيسية" @@ -3921,6 +3994,7 @@ msgstr "السيرة" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "الموقع" @@ -3981,6 +4055,7 @@ msgstr[4] "الاسم طويل جدا (اكتر حاجه %d رمز)." msgstr[5] "الاسم طويل جدا (اكتر حاجه %d رمز)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "لم تُختر المنطقه الزمنيه." @@ -4669,71 +4744,108 @@ msgstr "يوزر من-غير پروفايل زيّه." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. #, fuzzy msgid "You cannot sandbox users on this site." msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. #, fuzzy msgid "User is already sandboxed." msgstr "المستخدم مسكت من قبل." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "الجلسات" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "الجلسات" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. #, fuzzy msgid "Handle sessions" msgstr "الجلسات" -msgid "Whether to handle sessions ourselves." -msgstr "" +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." +msgstr "الجلسات" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "تنقيح الجلسة" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "مكّن تنقيح مُخرجات الجلسه." -#. TRANS: Submit button title. -msgid "Save" -msgstr "أرسل" - -msgid "Save site settings" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" msgstr "اذف إعدادت الموقع" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "لازم تكون مسجل دخولك علشان تشوف اى application." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" +#. TRANS: Header on the OAuth application page. #, fuzzy msgid "Application actions" msgstr "OAuth applications" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "عدّل" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "احذف" - +#. TRANS: Header on the OAuth application page. #, fuzzy msgid "Application info" msgstr "OAuth applications" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. #, fuzzy msgid "Are you sure you want to reset your consumer key and secret?" msgstr "أمتأكد من أنك تريد حذف هذا الإشعار؟" @@ -4847,6 +4959,7 @@ msgstr "جميع الأعضاء" msgid "Statistics" msgstr "إحصاءات" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4888,7 +5001,9 @@ msgstr "" "هنا %%site.name%%، خدمه [التدوين المُصغّر](http://en.wikipedia.org/wiki/Micro-" "blogging) المبنيه على البرنامج الحر [StatusNet](http://status.net/)." -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "الإداريون" @@ -4912,14 +5027,12 @@ msgstr "أهلا بكم فى %1$s يا @%2$s!" msgid "Message from %1$s on %2$s" msgstr "نتايج التدوير لـ\"%1$s\" على %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "حُذف الإشعار." -#, fuzzy -msgid "Notice" -msgstr "الإشعارات" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s و الصحاب, صفحه %2$d" @@ -4954,6 +5067,8 @@ msgstr "" msgid "Notice feed for %s (RSS 2.0)" msgstr "" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "" @@ -5013,91 +5128,139 @@ msgstr "" msgid "Repeat of %s" msgstr "تكرارات %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "المستخدم مسكت من قبل." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "الموقع" + +#. TRANS: Instructions for site administration panel. #, fuzzy msgid "Basic settings for this StatusNet site" msgstr "الإعدادات الأساسيه لموقع StatusNet هذا." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "يجب ألا يكون طول اسم الموقع صفرًا." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "لازم يكون عندك عنوان ايميل صالح." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "لغه مش معروفه \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. #, fuzzy msgid "Minimum text limit is 0 (unlimited)." msgstr "حد النص الأدنى هو 140 حرفًا." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "عام" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "اسم الموقع" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "اسم موقعك، \"التدوين المصغر لشركتك\" مثلا" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "البريد الإلكتروني" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "عنوان البريد الإلكترونى للاتصال بموقعك" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "محلي" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "المنطقه الزمنيه المبدئية" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "المنطقه الزمنيه المبدئيه للموقع؛ ت‌ع‌م عاده." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "اللغه المفضلة" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "الحدود" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "حد النص" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "أقصى عدد للحروف فى الإشعارات." +#. TRANS: Field label on site settings panel. #, fuzzy msgid "Dupe limit" msgstr "حد النص" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "اذف إعدادت الموقع" + #. TRANS: Page title for site-wide notice tab in admin panel. #, fuzzy msgid "Site Notice" @@ -5309,6 +5472,10 @@ msgstr "بلّغ عن المسار" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "أرسل" + #, fuzzy msgid "Save snapshot settings" msgstr "اذف إعدادت الموقع" @@ -5642,6 +5809,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5653,6 +5821,7 @@ msgid "Subscribe to this user." msgstr "اشترك بهذا المستخدم" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6073,6 +6242,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6427,6 +6600,9 @@ msgstr "تعذّر حذف إعدادات التصميم." msgid "Home" msgstr "الرئيسية" +msgid "Admin" +msgstr "إداري" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "ضبط الموقع الأساسي" @@ -6471,6 +6647,10 @@ msgstr "ضبط المسارات" msgid "Sessions configuration" msgstr "ضبط التصميم" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "الجلسات" + #. TRANS: Menu item title/tooltip #, fuzzy msgid "Edit site notice" @@ -6584,6 +6764,7 @@ msgid "Describe your application" msgstr "اوصف الapplication بتاعتك" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "الوصف" @@ -6703,6 +6884,10 @@ msgstr "امنع" msgid "Block this user" msgstr "امنع هذا المستخدم" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "نتائج الأمر" @@ -6806,14 +6991,14 @@ msgid "Fullname: %s" msgstr "الاسم الكامل: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "الموقع: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7193,6 +7378,10 @@ msgstr "خطأ قاعده بيانات" msgid "Public" msgstr "عام" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "احذف" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "احذف هذا المستخدم" @@ -7325,20 +7514,31 @@ msgstr "اذهب" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" msgstr "" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "انت مش بتملك الapplication دى." +#. TRANS: Text area title for group description when there is no text limit. #, fuzzy -msgid "Describe the group or topic" +msgid "Describe the group or topic." msgstr "اوصف الapplication بتاعتك" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "اوصف الapplication بتاعتك" msgstr[1] "اوصف الapplication بتاعتك" msgstr[2] "اوصف الapplication بتاعتك" @@ -7346,13 +7546,17 @@ msgstr[3] "اوصف الapplication بتاعتك" msgstr[4] "اوصف الapplication بتاعتك" msgstr[5] "اوصف الapplication بتاعتك" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "الكنى" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7367,6 +7571,27 @@ msgstr[3] "" msgstr[4] "" msgstr[5] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "عضو منذ" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "إداري" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7391,6 +7616,26 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "أعضاء مجموعه %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7587,43 +7832,44 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, fuzzy, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "هؤلاء هم الأشخاص الذين يستمعون إلى إشعاراتك." +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, php-format +msgid "" +"Faithfully yours,\n" +"%1$s.\n" +"\n" +"----\n" +"Change your email address or notification options at %2$s" +msgstr "" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "الملف الشخصي" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is biographical information. +#, php-format +msgid "Bio: %s" +msgstr "عن نفسك: %s" + #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. #, php-format msgid "" "If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" +"your subscribers list and report as spam to site administrators at %s." msgstr "" -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" -"\n" -"----\n" -"Change your email address or notification options at %7$s\n" -msgstr "" - -#. TRANS: Profile info line in new-subscriber notification e-mail. -#. TRANS: %s is biographical information. -#, php-format -msgid "Bio: %s" -msgstr "عن نفسك: %s" - #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, fuzzy, php-format @@ -7639,10 +7885,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7670,7 +7913,7 @@ msgstr "" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7680,10 +7923,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7695,7 +7935,6 @@ msgstr "رساله خاصه جديده من %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7708,10 +7947,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7739,10 +7975,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7760,14 +7993,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7783,12 +8015,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s دخل جروپ %2$s" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "نتايج التدوير لـ\"%1$s\" على %2$s" + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" #, fuzzy @@ -7829,6 +8081,21 @@ msgstr "" msgid "Unsupported message type: %s" msgstr "نوع رساله مش مدعوم: %s" +#. TRANS: Form legend for form to make a user a group admin. +#, fuzzy +msgid "Make user an admin of the group" +msgstr "لازم تكون ادارى علشان تعدّل الجروپ." + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8563,9 +8830,6 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "تعذّر تحديث المستخدم." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "تعذّر تحديث المستخدم." +#~ msgid "Notice" +#~ msgstr "الإشعارات" diff --git a/locale/bg/LC_MESSAGES/statusnet.po b/locale/bg/LC_MESSAGES/statusnet.po index 97655d1a22..64b9868ee3 100644 --- a/locale/bg/LC_MESSAGES/statusnet.po +++ b/locale/bg/LC_MESSAGES/statusnet.po @@ -11,17 +11,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:32+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:12+0000\n" "Language-Team: Bulgarian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: bg\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -72,6 +72,8 @@ msgstr "Запазване настройките за достъп" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -79,6 +81,7 @@ msgstr "Запазване настройките за достъп" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Запазване" @@ -748,6 +751,7 @@ msgstr "Сметка" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Псевдоним" @@ -826,6 +830,7 @@ msgstr "Не може да изтривате бележки на друг по #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Няма такава бележка." @@ -1036,6 +1041,104 @@ msgstr "Методът в API все още се разработва." msgid "User not found." msgstr "Не е открит методът в API." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "За напуснете група, трябва да сте влезли." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Няма такава група" + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#, fuzzy +msgid "No nickname or ID." +msgstr "Няма псевдоним." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Не сте влезли в системата." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Потребителят няма профил." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Списък с потребителите в тази група." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Грешка при обновяване на групата." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Бележка на %1$s от %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1119,36 +1222,6 @@ msgstr "Няма такъв файл." msgid "Cannot delete someone else's favorite." msgstr "Грешка при изтриване на любима бележка." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Няма такава група" - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1266,6 +1339,7 @@ msgstr "Преглед" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1430,6 +1504,14 @@ msgstr "Разблокиране на този потребител" msgid "Post to %s" msgstr "групи в %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s напусна групата %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Няма код за потвърждение." @@ -1489,6 +1571,7 @@ msgid "Notices" msgstr "Бележки" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1563,6 +1646,7 @@ msgstr "Приложението не е открито." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Не сте собственик на това приложение." @@ -1597,13 +1681,6 @@ msgstr "Изтриване на това приложение" msgid "You must be logged in to delete a group." msgstr "За напуснете група, трябва да сте влезли." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -#, fuzzy -msgid "No nickname or ID." -msgstr "Няма псевдоним." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1899,6 +1976,7 @@ msgid "You must be logged in to edit an application." msgstr "За да редактирате приложение, трябва да сте влезли." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Няма такова приложение." @@ -2125,6 +2203,7 @@ msgstr "Грешка при нормализиране адреса на е-по #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Неправилен адрес на е-поща." @@ -2499,34 +2578,26 @@ msgstr "Абонати на %1$s, страница %2$d" msgid "A list of the users in this group." msgstr "Списък с потребителите в тази група." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Настройки" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Блокиране" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Членове на групата %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Блокиране на този потребител" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Абонати на %1$s, страница %2$d" -#. TRANS: Form legend for form to make a user a group admin. +#. TRANS: Page notice for group members page. #, fuzzy -msgid "Make user an admin of the group" -msgstr "За да редактирате групата, трябва да сте й администратор." - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +msgid "A list of users awaiting approval to join this group." +msgstr "Списък с потребителите в тази група." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, fuzzy, php-format @@ -2560,6 +2631,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Създаване на нова група" @@ -2941,21 +3013,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s напусна групата %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "За напуснете група, трябва да сте влезли." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Непозната група." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Не членувате в тази група." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s напусна групата %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3385,10 +3452,13 @@ msgid "Notice %s not found." msgstr "Не е открит методът в API." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Потребителят няма профил." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Бележка на %1$s от %2$s" @@ -3881,18 +3951,21 @@ msgstr "Данни на профила" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "От 1 до 64 малки букви или цифри, без пунктоация и интервали" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Пълно име" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Лична страница" @@ -3923,6 +3996,7 @@ msgstr "За мен" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Местоположение" @@ -3981,6 +4055,7 @@ msgstr[0] "Биографията е твърде дълга (до %d симво msgstr[1] "Биографията е твърде дълга (до %d символа)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Не е избран часови пояс" @@ -4685,67 +4760,99 @@ msgstr "Потребител без съответстващ профил" msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Не можете да заглушавате потребители на този сайт." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Потребителят вече е заглушен." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Сесии" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Сесии" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Управление на сесии" -msgid "Whether to handle sessions ourselves." -msgstr "" +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." +msgstr "Управление на сесии" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Запазване" - -msgid "Save site settings" -msgstr "Запазване настройките на сайта" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Запазване настройките за достъп" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "За прегледате приложение, трябва да сте влезли." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Профил на приложението" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +#. TRANS: Header on the OAuth application page. #, fuzzy msgid "Application actions" msgstr "Данни за приложението" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Редактиране" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Изтриване" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Данни за приложението" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. #, fuzzy msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Наистина ли искате да изтриете тази бележка?" @@ -4854,6 +4961,7 @@ msgstr "Всички членове" msgid "Statistics" msgstr "Статистики" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4889,7 +4997,9 @@ msgid "" "their life and interests. " msgstr "" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Администратори" @@ -4913,13 +5023,12 @@ msgstr "Съобщение до %1$s в %2$s" msgid "Message from %1$s on %2$s" msgstr "Съобщение от %1$s в %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Бележката е изтрита." -msgid "Notice" -msgstr "Бележки" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, страница %2$d" @@ -4954,6 +5063,8 @@ msgstr "Емисия с бележки на %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Емисия с бележки на %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Емисия с бележки на %s (Atom)" @@ -5007,90 +5118,136 @@ msgstr "" msgid "Repeat of %s" msgstr "Повторения на %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Не можете да заглушавате потребители на този сайт." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Потребителят вече е заглушен." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Сайт" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Пътища и сървърни настройки за тази инсталация на StatusNet." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Името на сайта е задължително." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Неправилен адрес на е-поща." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Непознат език \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. #, fuzzy msgid "Minimum text limit is 0 (unlimited)." msgstr "Минималното ограничение на текста е 140 знака." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Общи" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Име на сайта" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Е-поща" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Адрес на е-поща за контакт със сайта" +#. TRANS: Fieldset legend on site settings panel. #, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Местоположение" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Часови пояс по подразбиране" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Часови пояс по подразбиране за сайта (обикновено UTC)." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Език по подразбиране" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Ограничения" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Запазване настройките на сайта" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Бележки" @@ -5301,6 +5458,10 @@ msgstr "" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Запазване" + #, fuzzy msgid "Save snapshot settings" msgstr "Запазване настройките на сайта" @@ -5640,6 +5801,7 @@ msgstr "" "на този потребител. Ако не искате абонамента, натиснете \"Cancel\" (Отказ)." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5651,6 +5813,7 @@ msgid "Subscribe to this user." msgstr "Абониране за този потребител" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6072,6 +6235,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6429,6 +6596,9 @@ msgstr "Грешка при записване настройките за Twitt msgid "Home" msgstr "Лична страница" +msgid "Admin" +msgstr "Настройки" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Основна настройка на сайта" @@ -6472,6 +6642,10 @@ msgstr "Настройка на пътищата" msgid "Sessions configuration" msgstr "Настройка на оформлението" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Сесии" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Изтриване на бележката" @@ -6581,6 +6755,7 @@ msgid "Describe your application" msgstr "Изтриване на приложението" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Описание" @@ -6702,6 +6877,10 @@ msgstr "Блокиране" msgid "Block this user" msgstr "Блокиране на потребителя" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Резултат от командата" @@ -6804,14 +6983,14 @@ msgid "Fullname: %s" msgstr "Пълно име: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Местоположение: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7176,6 +7355,10 @@ msgstr "Грешка в базата от данни" msgid "Public" msgstr "Общ поток" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Изтриване" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Изтриване на този потребител" @@ -7312,31 +7495,47 @@ msgstr "" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "От 1 до 64 малки букви или цифри, без пунктоация и интервали" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Блокиране" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Блокиране на този потребител" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "Адрес на страница, блог или профил в друг сайт на групата" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Опишете групата или темата" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Опишете групата или темата в до %d букви" msgstr[1] "Опишете групата или темата в до %d букви" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Къде се намира групата — град, община, държава и т.н. (ако е приложимо)" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Псевдоними" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7347,6 +7546,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Участник от" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Настройки" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7371,6 +7591,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Членове на групата %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7551,35 +7787,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s вече получава бележките ви в %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s вече получава бележките ви в %2$s.\n" "\n" @@ -7592,12 +7815,26 @@ msgstr "" "----\n" "Може да смените адреса и настройките за уведомяване по е-поща на %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Профил" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Биография: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7613,10 +7850,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7643,7 +7877,7 @@ msgstr "Побутнати сте от %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7653,10 +7887,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7668,7 +7899,6 @@ msgstr "Ново лично съобщение от %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7681,10 +7911,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7712,10 +7939,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7733,14 +7957,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) отбеляза бележката ви като любима" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7756,12 +7979,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s напусна групата %2$s" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s реплики на съобщения от %2$s / %3$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7800,6 +8043,21 @@ msgstr "Входящата поща не е разрешена." msgid "Unsupported message type: %s" msgstr "Форматът на файла с изображението не се поддържа." +#. TRANS: Form legend for form to make a user a group admin. +#, fuzzy +msgid "Make user an admin of the group" +msgstr "За да редактирате групата, трябва да сте й администратор." + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8502,9 +8760,8 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Грешка при обновяване на потребителя." +#~ msgid "Notice" +#~ msgstr "Бележки" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Грешка при обновяване записа на потребител." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "От 1 до 64 малки букви или цифри, без пунктоация и интервали" diff --git a/locale/br/LC_MESSAGES/statusnet.po b/locale/br/LC_MESSAGES/statusnet.po index 1807bb298a..b10e57748a 100644 --- a/locale/br/LC_MESSAGES/statusnet.po +++ b/locale/br/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:34+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:14+0000\n" "Language-Team: Breton \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: br\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -74,6 +74,8 @@ msgstr "Enrollañ an arventennoù moned" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -81,6 +83,7 @@ msgstr "Enrollañ an arventennoù moned" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Enrollañ" @@ -746,6 +749,7 @@ msgstr "Kont" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Lesanv" @@ -825,6 +829,7 @@ msgstr "Ne c'helloc'h ket dilemel statud un implijer all." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "N'eus ket eus an ali-se." @@ -1033,6 +1038,103 @@ msgstr "Hentenn API war sevel." msgid "User not found." msgstr "N'eo ket bet kavet an implijer." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Ret eo deoc'h bezañ kevreet evit kuitaat ur strollad" + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "N'eus ket eus ar strollad-se." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Lesanv pe ID ebet." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Nann-kevreet." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Mankout a ra ar profil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Roll an implijerien enrollet er strollad-mañ." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Dibosupl eo stagañ an implijer %1$s d'ar strollad %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Statud %1$s war %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1113,36 +1215,6 @@ msgstr "Restr ezvezant." msgid "Cannot delete someone else's favorite." msgstr "Diposupl eo dilemel pennroll un den all." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "N'eus ket eus ar strollad-se." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "N'eo ket ezel." @@ -1258,6 +1330,7 @@ msgstr "Rakwelet" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Dilemel" @@ -1419,6 +1492,14 @@ msgstr "Distankañ an implijer-mañ" msgid "Post to %s" msgstr "Postañ war %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s en deus kuitaet ar strollad %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Kod kadarnaat ebet." @@ -1477,6 +1558,7 @@ msgid "Notices" msgstr "Ali" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1548,6 +1630,7 @@ msgstr "N'eo ket bet kavet ar poellad" #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "N'oc'h ket perc'henn ar poellad-se." @@ -1581,12 +1664,6 @@ msgstr "Dilemel ar poelad-se" msgid "You must be logged in to delete a group." msgstr "Ret eo deoc'h bezañ kevreet evit dilemel ur strollad." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Lesanv pe ID ebet." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "N'oc'h ket aotreet da zilemel ar gont-mañ." @@ -1869,6 +1946,7 @@ msgid "You must be logged in to edit an application." msgstr "Ret eo bezañ kevreet evit kemmañ ur poellad." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "N'eus ket eus an arload-mañ." @@ -2087,6 +2165,7 @@ msgstr "Diposubl eo implijout an ID Jabber-mañ" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "N'eo ket ur chomlec'h postel reizh." @@ -2452,33 +2531,26 @@ msgstr "Izili ar strollad %1$s, pajenn %2$d" msgid "A list of the users in this group." msgstr "Roll an implijerien enrollet er strollad-mañ." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Merañ" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Stankañ" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Izili ar strollad %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Stankañ an implijer-mañ" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Izili ar strollad %1$s, pajenn %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Lakaat an implijer da vezañ ur merour eus ar strollad" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Lakaat ur merour" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Lakaat an implijer-mañ da verour" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Roll an implijerien enrollet er strollad-mañ." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2512,6 +2584,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Krouiñ ur strollad nevez" @@ -2863,21 +2936,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s en deus emezelet er strollad %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Ret eo deoc'h bezañ kevreet evit kuitaat ur strollad" +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Strollad dianav." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "N'oc'h ket un ezel eus ar strollad-mañ." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s en deus kuitaet ar strollad %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3306,10 +3374,13 @@ msgid "Notice %s not found." msgstr "N'eo ket bet kavet an hentenn API !" #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "N'en deus ket an ali a profil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Statud %1$s war %2$s" @@ -3809,18 +3880,21 @@ msgstr "Titouroù ar profil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1 da 64 lizherenn vihan pe sifr, hep poentaouiñ nag esaouenn" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Anv klok" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Pajenn degemer" @@ -3851,6 +3925,7 @@ msgstr "Buhezskrid" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Lec'hiadur" @@ -3912,6 +3987,7 @@ msgstr[0] "Re hir eo ar bio (%d arouezenn d'ar muiañ)." msgstr[1] "Re hir eo ar bio (%d arouezenn d'ar muiañ)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "N'eo bet dibabet gwerzhid-eur ebet." @@ -4610,67 +4686,99 @@ msgstr "n'en deus ket an implijer-mañ ar rol-se." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. #, fuzzy msgid "You cannot sandbox users on this site." msgstr "Ne c'helloc'h ket reiñ rolloù d'an implijerien eus al lec'hienn-mañ." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Er poull-traezh emañ dija an implijer." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Dalc'hoù" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Dalc'hoù" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Merañ an dalc'hoù" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Ma rankomp merañ an dalc'hoù hon unan." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Dizreinadenn an dalc'h" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Enrollañ" - -msgid "Save site settings" -msgstr "Enrollañ arventennoù al lec'hienn" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Enrollañ an arventennoù moned" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Rankout a reoc'h bezañ kevreet evit gwelet ur poellad." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Profil ar poellad" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Krouet gant %1$s - moned %2$s dre ziouer - %3$d implijer" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Krouet gant %1$s - moned %2$s dre ziouer - %3$d implijer" +msgstr[1] "Krouet gant %1$s - moned %2$s dre ziouer - %3$d implijer" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Obererezhioù ar poellad" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Aozañ" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Adderaouekaat an alc'hwez hag ar sekred" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Diverkañ" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Titouroù ar poelad" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Ha sur oc'h ho peus c'hoant adderaouekaat ho alc'hwez bevezer ha sekred ?" @@ -4779,6 +4887,7 @@ msgstr "An holl izili" msgid "Statistics" msgstr "Stadegoù" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Krouet" @@ -4816,7 +4925,9 @@ msgstr "" "%%site.name%% a zo ur servij [micro-blogging](http://br.wikipedia.org/wiki/" "Microblog) diazezet war ar meziant frank [StatusNet](http://status.net/)." -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Merourien" @@ -4842,14 +4953,12 @@ msgstr "Kemanadenn kaset da %1$s d'an %2$s" msgid "Message from %1$s on %2$s" msgstr "Kemenadenn resevet eus %1$s d'an %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Ali dilammet." -#, fuzzy -msgid "Notice" -msgstr "Ali" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, pajenn %2$d" @@ -4884,6 +4993,8 @@ msgstr "Neudenn an alioù evit %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Neudenn an alioù evit %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Gwazh alioù %s (Atom)" @@ -4943,91 +5054,139 @@ msgstr "" msgid "Repeat of %s" msgstr "Adkemeret eus %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. #, fuzzy msgid "You cannot silence users on this site." msgstr "Ne c'helloc'h ket reiñ rolloù d'an implijerien eus al lec'hienn-mañ." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Lakaet eo bet da mut an implijer-mañ dija." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Lec'hienn" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Arventennoù diazez evit al lec'hienn StatusNet-mañ." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Ne c'hell ket bezañ goullo anv al lec'hienn." +#. TRANS: Client error displayed trying to save site settings without a contact address. #, fuzzy msgid "You must have a valid contact email address." msgstr "N'eo ket ur chomlec'h postel reizh." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Yezh \"%s\" dizanv." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Ar vevenn izelañ evit an destenn a zo 0 arouezenn (anvevenn)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Hollek" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Anv al lec'hienn" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Anv ho lec'hienn, evel \"Microblog ho embregerezh\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Degaset gant" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Degaset dre URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Postel" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Chomlec'h postel daremprediñ ho lec'hienn" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Lec'hel" +#. TRANS: Dropdown label on site settings panel. #, fuzzy msgid "Default timezone" msgstr "Koumanantoù dre ziouer" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Yezh dre ziouer" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Bevennoù" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Bevenn testenn" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Niver brasañ a arouezennoù evit an alioù." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Bevenn a doublennoù" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Enrollañ arventennoù al lec'hienn" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Ali al lec'hienn" @@ -5234,6 +5393,10 @@ msgstr "URL an danevell" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Enrollañ" + msgid "Save snapshot settings" msgstr "Enrollañ arventennoù al lec'hienn" @@ -5578,6 +5741,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Asantiñ" @@ -5588,6 +5752,7 @@ msgid "Subscribe to this user." msgstr "En em goumanantiñ d'an implijer-mañ" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Disteurel" @@ -5995,6 +6160,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6339,6 +6508,9 @@ msgstr "Dibosupl eo dilemel an arventennoù krouiñ." msgid "Home" msgstr "Degemer" +msgid "Admin" +msgstr "Merañ" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Arventennoù diazez al lec'hienn" @@ -6378,6 +6550,10 @@ msgstr "Kefluniadur an hentoù" msgid "Sessions configuration" msgstr "Kefluniadur an dalc'hoù" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Dalc'hoù" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Kemmañ ali al lec'hienn" @@ -6483,6 +6659,7 @@ msgid "Describe your application" msgstr "Deskrivit ho poellad" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Deskrivadur" @@ -6600,6 +6777,10 @@ msgstr "Stankañ" msgid "Block this user" msgstr "Stankañ an implijer-mañ" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Disoc'hoù an urzhiad" @@ -6701,14 +6882,14 @@ msgid "Fullname: %s" msgstr "Anv klok : %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Lec'hiadur : %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7077,6 +7258,10 @@ msgstr "Fazi bank roadennoù" msgid "Public" msgstr "Foran" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Diverkañ" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Diverkañ an implijer-mañ" @@ -7210,31 +7395,46 @@ msgstr "Mont" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1 da 64 lizherenn vihan pe sifr, hep poentaouiñ nag esaouenn" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Stankañ" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Stankañ an implijer-mañ" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL pajenn degemer ar poellad-mañ" +#. TRANS: Text area title for group description when there is no text limit. #, fuzzy -msgid "Describe the group or topic" +msgid "Describe the group or topic." msgstr "Deskrivit ho poellad" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Diskrivit ho poellad gant %d arouezenn" msgstr[1] "Diskrivit ho poellad gant %d arouezenn" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "El lec'h m'emaoc'h, da skouer \"Kêr, Stad (pe Rannvro), Bro\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Aliasoù" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7245,6 +7445,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Ezel abaoe" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Merañ" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7269,6 +7490,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Izili ar strollad %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Izili ar strollad %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7450,43 +7687,44 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, fuzzy, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "Ne heuilh %s den ebet." +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, php-format +msgid "" +"Faithfully yours,\n" +"%1$s.\n" +"\n" +"----\n" +"Change your email address or notification options at %2$s" +msgstr "" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is biographical information. +#, fuzzy, php-format +msgid "Bio: %s" +msgstr "Lec'hiadur : %s" + #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. #, php-format msgid "" "If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" +"your subscribers list and report as spam to site administrators at %s." msgstr "" -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" -"\n" -"----\n" -"Change your email address or notification options at %7$s\n" -msgstr "" - -#. TRANS: Profile info line in new-subscriber notification e-mail. -#. TRANS: %s is biographical information. -#, fuzzy, php-format -msgid "Bio: %s" -msgstr "Lec'hiadur : %s" - #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7502,10 +7740,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7532,7 +7767,7 @@ msgstr "Nac'het ez eus bet deoc'h en em goumanantiñ." #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7542,10 +7777,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7557,7 +7789,6 @@ msgstr "Kemenadenn personel nevez a-berzh %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7570,10 +7801,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7601,10 +7829,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7625,14 +7850,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) en deus kaset deoc'h ur c'hemenn" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7648,12 +7872,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s a zo bet er strollad %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s a zo bet er strollad %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" #, fuzzy @@ -7696,6 +7940,20 @@ msgstr "Chomlec'h postel ebet o tont." msgid "Unsupported message type: %s" msgstr "Diembreget eo ar furmad-se." +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Lakaat an implijer da vezañ ur merour eus ar strollad" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Lakaat ur merour" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Lakaat an implijer-mañ da verour" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8393,9 +8651,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Dibosupl eo hizivaat an implijer." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Dibosupl hizivaat teuliad an implijer." +#~ msgid "Notice" +#~ msgstr "Ali" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1 da 64 lizherenn vihan pe sifr, hep poentaouiñ nag esaouenn" diff --git a/locale/ca/LC_MESSAGES/statusnet.po b/locale/ca/LC_MESSAGES/statusnet.po index dece0fc12a..babd7fc1e3 100644 --- a/locale/ca/LC_MESSAGES/statusnet.po +++ b/locale/ca/LC_MESSAGES/statusnet.po @@ -16,17 +16,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:35+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:16+0000\n" "Language-Team: Catalan \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ca\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -79,6 +79,8 @@ msgstr "Desa els paràmetres d'accés" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -86,6 +88,7 @@ msgstr "Desa els paràmetres d'accés" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Desa" @@ -761,6 +764,7 @@ msgstr "Compte" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Sobrenom" @@ -839,6 +843,7 @@ msgstr "No podeu eliminar l'estat d'un altre usuari." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "No existeix aquest avís." @@ -1046,6 +1051,103 @@ msgstr "Mètode API en construcció." msgid "User not found." msgstr "No s'ha trobat el mètode API!" +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Heu d'haver iniciat una sessió per deixar un grup." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "No s'ha trobat el grup." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Cap sobrenom o ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "No heu iniciat una sessió." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Manca el perfil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "La llista dels usuaris d'aquest grup." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "No s'ha pogut afegir l'usuari %1$s al grup %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "estat de %1$s a %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1121,36 +1223,6 @@ msgstr "No existeix el preferit." msgid "Cannot delete someone else's favorite." msgstr "No es pot eliminar què ha preferit algú altre." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "No s'ha trobat el grup." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "No és un membre." @@ -1265,6 +1337,7 @@ msgstr "Vista prèvia" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Elimina" @@ -1434,6 +1507,14 @@ msgstr "Desbloca l'usuari" msgid "Post to %s" msgstr "Publica a %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s ha abandonat el grup %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Cap codi de confirmació." @@ -1492,6 +1573,7 @@ msgid "Notices" msgstr "Avisos" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1567,6 +1649,7 @@ msgstr "No s'ha trobat l'aplicació." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "No sou el propietari d'aquesta aplicació." @@ -1601,12 +1684,6 @@ msgstr "Elimina l'aplicació." msgid "You must be logged in to delete a group." msgstr "Heu d'haver iniciat una sessió per eliminar un grup." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Cap sobrenom o ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "No teniu permisos per eliminar el grup." @@ -1886,6 +1963,7 @@ msgid "You must be logged in to edit an application." msgstr "Heu d'iniciar una sessió per editar una aplicació." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "No hi ha tal aplicació." @@ -2104,6 +2182,7 @@ msgstr "No es pot normalitzar l'adreça electrònica." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Adreça de correu electrònic no vàlida." @@ -2472,33 +2551,26 @@ msgstr "%1$s membres del grup, pàgina %2$d" msgid "A list of the users in this group." msgstr "La llista dels usuaris d'aquest grup." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Admin" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloca" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s pertinències a grup" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloca aquest usuari" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s membres del grup, pàgina %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Fes l'usuari un administrador del grup" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Fes-lo administrador" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Fes aquest usuari administrador" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "La llista dels usuaris d'aquest grup." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2536,6 +2608,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Crea un grup nou" @@ -2919,21 +2992,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s s'ha unit al grup %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Heu d'haver iniciat una sessió per deixar un grup." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Grup desconegut." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "No ets membre d'aquest grup." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s ha abandonat el grup %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3365,10 +3433,13 @@ msgid "Notice %s not found." msgstr "No s'ha trobat l'avís «%s»." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "L'avís no té cap perfil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "estat de %1$s a %2$s" @@ -3850,18 +3921,21 @@ msgstr "Informació del perfil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" "1-64 lletres en minúscula o nombres, sense signes de puntuació o espais." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nom complet" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Pàgina personal" @@ -3891,6 +3965,7 @@ msgstr "Biografia" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Ubicació" @@ -3949,6 +4024,7 @@ msgstr[0] "La biografia és massa llarga (màx. %d caràcter)." msgstr[1] "La biografia és massa llarga (màx. %d caràcters)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "No s'ha seleccionat el fus horari." @@ -4665,68 +4741,102 @@ msgstr "L'usuari no té aquest rol." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "No podeu posar els usuaris en un entorn de prova en aquest lloc." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "L'usuari ja es troba en un entorn de proves." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessions" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Paràmetres de sessió d'aquest lloc basat en StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessions" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Gestiona les sessions" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Si cal gestionar les sessions nosaltres mateixos." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Depuració de la sessió" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Activa la sortida de depuració per a les sessions." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Desa" - -msgid "Save site settings" -msgstr "Desa els paràmetres del lloc" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Desa els paràmetres d'accés" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Heu d'haver iniciat una sessió per visualitzar una aplicació." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Perfil de l'aplicació" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Creat per %1$s - %2$s accés per defecte - %3$d usuaris" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Creat per %1$s - %2$s accés per defecte - %3$d usuaris" +msgstr[1] "Creat per %1$s - %2$s accés per defecte - %3$d usuaris" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Accions d'aplicació" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Edita" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Reinicialitza la clau i la secreta" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Elimina" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Informació de l'aplicació" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Nota: Les signatures HMAC-SHA1 són vàlides; però no es permet el mètode de " "signatures en text net." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Esteu segur que voleu reinicialitzar la clau del consumidor i la secreta?" @@ -4841,6 +4951,7 @@ msgstr "Tots els membres" msgid "Statistics" msgstr "Estadístiques" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "S'ha creat" @@ -4884,7 +4995,9 @@ msgstr "" "[StatusNet](http://status.net/). Els seus membre comparteixen missatges " "curts sobre llur vida i interessos. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administradors" @@ -4908,13 +5021,12 @@ msgstr "Missatge per a %1$s a %2$s" msgid "Message from %1$s on %2$s" msgstr "Missatge de %1$s a %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "S'ha eliminat l'avís." -msgid "Notice" -msgstr "Avisos" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s etiquetats %2$s" @@ -4949,6 +5061,8 @@ msgstr "Canal d'avisos de %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Canal d'avisos de %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Canal d'avisos de %s (Atom)" @@ -5016,92 +5130,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Repetició de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "No podeu silenciar els usuaris d'aquest lloc." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "L'usuari ja està silenciat." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Lloc" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Paràmetres bàsics d'aquest lloc basat en l'StatusNet." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "El nom del lloc ha de tenir una longitud superior a zero." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Heu de tenir una adreça electrònica de contacte vàlida." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Llengua desconeguda «%s»." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "El límit de text mínim és 0 (sense cap límit)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "El límit de duplicats ha de ser d'un o més segons." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "General" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nom del lloc" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "El nom del vostre lloc, com ara «El microblog de l'empresa»" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Funciona gràcies a" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "El text que s'utilitza a l'enllaç dels crèdits al peu de cada pàgina" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL de «Funciona gràcies a»" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "L'URL que s'utilitza en els enllaços de crèdits al peu de cada pàgina" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Correu electrònic" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Adreça electrònica de contacte del vostre lloc" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Local" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Fus horari per defecte" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Fus horari per defecte del lloc; normalment UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Llengua per defecte" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Llengua del lloc quan la detecció automàtica des de la configuració del " "navegador no està disponible" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Límits" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Límits del text" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Nombre màxim de caràcters dels avisos." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Límit de duplicats" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Quant de temps cal que esperin els usuaris (en segons) per enviar el mateix " "de nou." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Desa els paràmetres del lloc" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Avís per a tot el lloc" @@ -5305,6 +5469,10 @@ msgstr "Informa de l'URL" msgid "Snapshots will be sent to this URL" msgstr "Les instantànies s'enviaran a aquest URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Desa" + msgid "Save snapshot settings" msgstr "Desa els paràmetres de les instantànies" @@ -5652,6 +5820,7 @@ msgstr "" "ningú, feu clic a «Rebutja»." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Accepta" @@ -5661,6 +5830,7 @@ msgid "Subscribe to this user." msgstr "Subscriu-me a aquest usuari" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6096,6 +6266,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6451,6 +6625,9 @@ msgstr "No s'ha pogut eliminar el paràmetre de disseny." msgid "Home" msgstr "Pàgina personal" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configuració bàsica del lloc" @@ -6490,6 +6667,10 @@ msgstr "Configuració dels camins" msgid "Sessions configuration" msgstr "Configuració de les sessions" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessions" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Edita l'avís del lloc" @@ -6595,6 +6776,7 @@ msgid "Describe your application" msgstr "Descriviu la vostra aplicació" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Descripció" @@ -6709,6 +6891,10 @@ msgstr "Bloca" msgid "Block this user" msgstr "Bloca aquest usuari" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Resultats de les comandes" @@ -6807,14 +6993,14 @@ msgid "Fullname: %s" msgstr "Nom complet: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Localització: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7175,6 +7361,10 @@ msgstr "Error de la base de dades" msgid "Public" msgstr "Públic" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Elimina" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Elimina l'usuari" @@ -7302,30 +7492,45 @@ msgstr "Vés-hi" msgid "Grant this user the \"%s\" role" msgstr "Atorga a l'usuari el rol «%s»" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"1-64 lletres en minúscula o nombres, sense signes de puntuació o espais." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloca" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloca aquest usuari" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "URL de la pàgina o blog del grup o de la temàtica." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Descriviu el grup o la temàtica" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Descriviu el grup o la temàtica en %d caràcter" msgstr[1] "Descriviu el grup o la temàtica en %d caràcters" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Ubicació del grup, si s'hi adiu cap, com ara «ciutat, comarca (o illa), país»." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Àlies" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7340,6 +7545,27 @@ msgstr[1] "" "Sobrenoms addicionals del grup, separats amb comes o espais. Es permet un " "màxim de %d àlies." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membre des de" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7364,6 +7590,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membres del grup %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s membre/s en el grup" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7554,38 +7796,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s ara està escoltant els vostres avisos a %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Si creieu que el compte s'està fent servir de forma abusiva, podeu blocar-lo " -"de la llista dels vostres subscriptors i notificar-lo com a brossa als " -"administradors del lloc a %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s ara està escoltant els vostres avisos a %2$s.\n" "\n" @@ -7598,12 +7824,29 @@ msgstr "" "----\n" "Canvieu la vostra adreça electrònica o les opcions d'avís a %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Perfil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Biografia: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Si creieu que el compte s'està fent servir de forma abusiva, podeu blocar-lo " +"de la llista dels vostres subscriptors i notificar-lo com a brossa als " +"administradors del lloc a %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7613,16 +7856,13 @@ msgstr "Nou correu electrònic per publicar a %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "Teniu una nova adreça per publicar a %1$s.\n" "\n" @@ -7657,8 +7897,8 @@ msgstr "%s us ha cridat l'atenció" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7667,10 +7907,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) què tal us trobeu is us convida a publicar algunes notícies.\n" "\n" @@ -7692,8 +7929,7 @@ msgstr "Nou missatge privat de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7705,10 +7941,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) us ha enviat un missatge privat:\n" "\n" @@ -7736,7 +7969,7 @@ msgstr "%1$s (@%2$s) ha afegit el vostre avís com a preferit" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7750,10 +7983,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) acaba d'afegir el vostre avís de %2$s com a preferit.\n" "\n" @@ -7790,14 +8020,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) us ha enviat un avís a la vostra atenció" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7813,12 +8042,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) acaba d'enviar un avís un avís a la vostra atenció (una " "resposta amb @) a %2$s.\n" @@ -7844,6 +8068,31 @@ msgstr "" "\n" "P.S. Podeu desactivar els avisos per correu aquí: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s s'ha unit al grup %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s s'ha unit al grup %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Només l'usuari pot llegir les seves safates de correu." @@ -7883,6 +8132,20 @@ msgstr "Ho sentim, no s'hi permet correu d'entrada." msgid "Unsupported message type: %s" msgstr "Tipus de missatge no permès: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Fes l'usuari un administrador del grup" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Fes-lo administrador" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Fes aquest usuari administrador" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8572,9 +8835,9 @@ msgstr "L'XML no és vàlid, hi manca l'arrel XRD." msgid "Getting backup from file '%s'." msgstr "Es recupera la còpia de seguretat del fitxer '%s'." -#~ msgid "Couldn't update user." -#~ msgstr "No s'ha pogut actualitzar l'usuari." +#~ msgid "Notice" +#~ msgstr "Avisos" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "No s'ha pogut actualitzar el registre de l'usuari." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1-64 lletres en minúscula o nombres, sense signes de puntuació o espais." diff --git a/locale/cs/LC_MESSAGES/statusnet.po b/locale/cs/LC_MESSAGES/statusnet.po index 85c2040432..e50257f7b4 100644 --- a/locale/cs/LC_MESSAGES/statusnet.po +++ b/locale/cs/LC_MESSAGES/statusnet.po @@ -11,18 +11,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:36+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:17+0000\n" "Language-Team: Czech \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: cs\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=3; plural=(n == 1) ? 0 : ( (n >= 2 && n <= 4) ? 1 : " "2 );\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -73,6 +73,8 @@ msgstr "uložit nastavení přístupu" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -80,6 +82,7 @@ msgstr "uložit nastavení přístupu" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Uložit" @@ -765,6 +768,7 @@ msgstr "Účet" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Přezdívka" @@ -844,6 +848,7 @@ msgstr "Nesmíte odstraňovat status jiného uživatele." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Žádné takové oznámení." @@ -1057,6 +1062,103 @@ msgstr "API metoda ve výstavbě." msgid "User not found." msgstr " API metoda nebyla nalezena." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Musíte být přihlášen abyste mohl opustit skupinu." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Žádný takový uživatel." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Žádná přezdívka nebo ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Nejste přihlášen(a)." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Chybějící profil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Seznam uživatelů v této skupině." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Nemohu připojit uživatele %1$s do skupiny %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "status %1 na %2" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1142,36 +1244,6 @@ msgstr "Žádný takový soubor." msgid "Cannot delete someone else's favorite." msgstr "Nelze smazat oblíbenou položku." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Žádný takový uživatel." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1288,6 +1360,7 @@ msgstr "Náhled" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1456,6 +1529,14 @@ msgstr "Odblokovat tohoto uživatele" msgid "Post to %s" msgstr "Poslat na %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s opustil(a) skupinu %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Žádný potvrzující kód." @@ -1515,6 +1596,7 @@ msgid "Notices" msgstr "Sdělení" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1591,6 +1673,7 @@ msgstr "Aplikace nebyla nalezena." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Nejste vlastníkem této aplikace." @@ -1627,12 +1710,6 @@ msgstr "Odstranit tuto aplikaci" msgid "You must be logged in to delete a group." msgstr "Musíte být přihlášen abyste mohl opustit skupinu." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Žádná přezdívka nebo ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1928,6 +2005,7 @@ msgid "You must be logged in to edit an application." msgstr "Pro úpravy aplikace musíte být přihlášen." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Aplikace neexistuje." @@ -2145,6 +2223,7 @@ msgstr "Nepodařilo se normalizovat (kanonizovat) e-mailovou adresu." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Není platnou mailovou adresou." @@ -2520,33 +2599,26 @@ msgstr "členové skupiny %1$s, strana %2$d" msgid "A list of the users in this group." msgstr "Seznam uživatelů v této skupině." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Admin" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "členové skupiny %s" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Uďelat uživatele adminem skupiny" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "členové skupiny %1$s, strana %2$d" -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Seznam uživatelů v této skupině." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2585,6 +2657,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Vytvořit novou skupinu" @@ -2970,21 +3043,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s se připojil(a) ke skupině %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Musíte být přihlášen abyste mohl opustit skupinu." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Neznámé" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Nejste členem této skupiny." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s opustil(a) skupinu %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3414,10 +3482,13 @@ msgid "Notice %s not found." msgstr " API metoda nebyla nalezena." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Uživatel nemá profil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "status %1 na %2" @@ -3918,18 +3989,21 @@ msgstr "Nastavené Profilu" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 znaků nebo čísel, bez teček, čárek a mezer" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Celé jméno" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Moje stránky" @@ -3961,6 +4035,7 @@ msgstr "O mě" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Umístění" @@ -4021,6 +4096,7 @@ msgstr[1] "Umístění příliš dlouhé (maximálně %d znaků)" msgstr[2] "Umístění příliš dlouhé (maximálně %d znaků)" #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Časové pásmo není vybráno." @@ -4747,67 +4823,104 @@ msgstr "Uživatel nemá tuto roli." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Nemůžete sandboxovat uživatele na této stránce." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Uživatel je již sandboxován." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessions" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessions" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Zpracovávat sessions" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Máme sami zpracovávat sessions?" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Debugování sessions" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Zapnout výstup pro debugování sessions" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Uložit" - -msgid "Save site settings" -msgstr "Uložit Nastavení webu" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "uložit nastavení přístupu" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Musíte být přihlášeni pro zobrazení aplikace." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Profil aplikace" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +"Vytvořil %1$s - s \"%2$s\" přístupem ve výchozím nastavení - %3$d uživatelů" +msgstr[1] "" +"Vytvořil %1$s - s \"%2$s\" přístupem ve výchozím nastavení - %3$d uživatelů" +msgstr[2] "" "Vytvořil %1$s - s \"%2$s\" přístupem ve výchozím nastavení - %3$d uživatelů" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Akce aplikace" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Editovat" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Resetovat klíč a tajemství" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Odstranit" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Info o aplikaci" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "Poznámka: podpora HMAC-SHA1 podpisů. Nepodporujeme plaintext." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Jste si jisti, že chcete resetovat svůj spotřebitelský klíč a tajemství?" @@ -4923,6 +5036,7 @@ msgstr "Všichni členové" msgid "Statistics" msgstr "Statistiky" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4967,7 +5081,9 @@ msgstr "" "[StatusNet](http://status.net/). Její členové sdílejí krátké zprávy o svém " "životě a zájmech. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Adminové" @@ -4991,14 +5107,12 @@ msgstr "Zpráva pro %1$s na %2$s" msgid "Message from %1$s on %2$s" msgstr "Zpráva od %1$s na %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Oznámení smazáno." -#, fuzzy -msgid "Notice" -msgstr "Sdělení" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, strana %2$d" @@ -5033,6 +5147,8 @@ msgstr "Feed oznámení pro %1$s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Feed oznámení pro %1$s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Feed oznámení pro %1$s (Atom)" @@ -5097,89 +5213,139 @@ msgstr "" msgid "Repeat of %s" msgstr "Opakování %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Na tomto webu nemůžete ztišovat uživatele." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Uživatel je už umlčen." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Stránky" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Základní nastavení pro tuto stránku StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Název webu musí mít nenulovou délku." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Musíte mít platnou kontaktní emailovou adresu." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Neznámý jazyk \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Minimální limit textu je 0 (bez omezení)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Duplikační limit musí být jedna nebo více sekund." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Obecné" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Název stránky" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Název vaší stránky, jako \"Mikroblog VašíSpolečnosti\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Přineseno" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Text pro děkovný odkaz (credits) v zápatí každé stránky." +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Přineseno URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "Text pro děkovný odkaz (credits) v zápatí každé stránky." +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Email" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Kontaktní e-mailová adresa pro vaše stránky" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Místní" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Výchozí časové pásmo" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Výchozí časové pásmo pro web, obvykle UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Výchozí jazyk" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "Jazyk stránky když není k dispozici autodetekce z nastavení prohlížeče" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Omezení" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Omezení textu" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Maximální počet znaků v oznámení." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Limit duplikace" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Jak dlouho uživatel musí čekat (v sekundách) než může poslat totéž znovu." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Uložit Nastavení webu" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Oznámení stránky" @@ -5384,6 +5550,10 @@ msgstr "Reportovací URL" msgid "Snapshots will be sent to this URL" msgstr "Na tuto adresu budou poslány snímky" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Uložit" + msgid "Save snapshot settings" msgstr "Uložit nastavení snímkování" @@ -5733,6 +5903,7 @@ msgstr "" "uživteli, klikněte na \"Zrušit\"" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5744,6 +5915,7 @@ msgid "Subscribe to this user." msgstr "Přihlásit se k tomuto uživateli" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6180,6 +6352,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6528,6 +6704,9 @@ msgstr "Nelze smazat nastavení vzhledu." msgid "Home" msgstr "Moje stránky" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Základní konfigurace webu" @@ -6567,6 +6746,10 @@ msgstr "Naastavení cest" msgid "Sessions configuration" msgstr "Nastavení sessions" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessions" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Upravit oznámení stránky" @@ -6675,6 +6858,7 @@ msgid "Describe your application" msgstr "Popište vaši aplikaci" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Popis" @@ -6791,6 +6975,10 @@ msgstr "Blokovat" msgid "Block this user" msgstr "Zablokovat tohoto uživatele" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Výsledky příkazu" @@ -6891,14 +7079,14 @@ msgid "Fullname: %s" msgstr "Celé jméno %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Poloha: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7261,6 +7449,10 @@ msgstr "Chyba databáze" msgid "Public" msgstr "Veřejné" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Odstranit" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Odstranit tohoto uživatele" @@ -7395,23 +7587,36 @@ msgstr "Jdi" msgid "Grant this user the \"%s\" role" msgstr "Dát tomuto uživateli roli \"%s\"" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 znaků nebo čísel, bez teček, čárek a mezer" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL domovské stránky nebo blogu skupiny nebo tématu" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Popište skupinu nebo téma" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Popište skupinu nebo téma ve %d znacích" msgstr[1] "Popište skupinu nebo téma ve %d znacích" msgstr[2] "Popište skupinu nebo téma ve %d znacích" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." @@ -7419,9 +7624,12 @@ msgstr "" "Umístění skupiny, pokud je nějaké, ve stylu \"město, stát (nebo region), země" "\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Aliasy" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7433,6 +7641,27 @@ msgstr[0] "Další přezdívky pro skupinu, oddělené čárkou nebo mezerou, ma msgstr[1] "Další přezdívky pro skupinu, oddělené čárkou nebo mezerou, max %d" msgstr[2] "Další přezdívky pro skupinu, oddělené čárkou nebo mezerou, max %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Členem od" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7457,6 +7686,23 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "členové skupiny %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7649,37 +7895,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s od teď naslouchá tvým sdělením na %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Pokud si myslíte, že tento účet je zneužíván, můžete ho zablokovat ze svého " -"seznamu přihlášených a reportovat jako spam adminům na %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s nyní naslouchá vasim oznámením na %2$s.\n" "\n" @@ -7692,12 +7923,28 @@ msgstr "" "----\n" "Zmeňte vaší e-mailovouadresu nebo nastavení upozornění na %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "O: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Pokud si myslíte, že tento účet je zneužíván, můžete ho zablokovat ze svého " +"seznamu přihlášených a reportovat jako spam adminům na %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7713,10 +7960,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Máte novou posílací aadresu na %1$s.\n" "\n" @@ -7751,8 +7995,8 @@ msgstr "%s Vás pošťouchl" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7761,10 +8005,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) by zajímalo, co poslední dobou děláte a poštouchl vás, abyste " "poslali nějaké novinky.\n" @@ -7787,8 +8028,7 @@ msgstr "Nová soukromá zpráva od %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7800,10 +8040,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) vám poslal soukromou zprávu:\n" "\n" @@ -7831,7 +8068,7 @@ msgstr "%s (@%s) přidal vaše oznámení jako oblíbené" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7845,10 +8082,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) právě přidal vaše oznámení z %2$s jako jedno ze svých " "oblíbených. \n" @@ -7886,14 +8120,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) poslal oznámení žádající o vaši pozornost" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7909,12 +8142,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) právě poslal oznámení žádající o vaši pozornost ('@-odpověď') " "na %2$s.\n" @@ -7940,6 +8168,31 @@ msgstr "" "\n" "P.S. Tato upozornění můžete vypnout zde: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s se připojil(a) ke skupině %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s se připojil(a) ke skupině %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Pouze uživatel může přečíst své vlastní schránky." @@ -7979,6 +8232,20 @@ msgstr "Je nám líto, žádný příchozí e-mail není dovolen." msgid "Unsupported message type: %s" msgstr "Nepodporovaný typ zprávy: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Uďelat uživatele adminem skupiny" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "Nastala chyba v databázi při ukládání souboru. Prosím zkuste to znovu." @@ -8687,9 +8954,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Nepodařilo se aktualizovat nastavení uživatele" - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Nelze aktualizovat záznam uživatele." +#~ msgid "Notice" +#~ msgstr "Sdělení" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 znaků nebo čísel, bez teček, čárek a mezer" diff --git a/locale/de/LC_MESSAGES/statusnet.po b/locale/de/LC_MESSAGES/statusnet.po index 243196d06b..7ce39e7d71 100644 --- a/locale/de/LC_MESSAGES/statusnet.po +++ b/locale/de/LC_MESSAGES/statusnet.po @@ -22,17 +22,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:37+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:19+0000\n" "Language-Team: German \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: de\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -84,6 +84,8 @@ msgstr "Zugangs-Einstellungen speichern" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -91,6 +93,7 @@ msgstr "Zugangs-Einstellungen speichern" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Speichern" @@ -769,6 +772,7 @@ msgstr "Profil" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Benutzername" @@ -848,6 +852,7 @@ msgstr "Du kannst den Status eines anderen Benutzers nicht löschen." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Unbekannte Nachricht." @@ -1061,6 +1066,103 @@ msgstr "API-Methode im Aufbau." msgid "User not found." msgstr "API-Methode nicht gefunden." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Du musst angemeldet sein, um aus einer Gruppe auszutreten." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Keine derartige Gruppe." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Kein Benutzername oder ID" + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Nicht angemeldet." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Benutzer hat kein Profil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Liste der Benutzer in dieser Gruppe." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Konnte Benutzer %1$s nicht der Gruppe %2$s hinzufügen." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Status von %1$s auf %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1141,36 +1243,6 @@ msgstr "Favorit nicht gefunden." msgid "Cannot delete someone else's favorite." msgstr "Kann Favoriten von jemand anderem nicht löschen." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Keine derartige Gruppe." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Kein Mitglied" @@ -1287,6 +1359,7 @@ msgstr "Vorschau" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Löschen" @@ -1455,6 +1528,14 @@ msgstr "Diesen Benutzer freigeben" msgid "Post to %s" msgstr "Versenden an %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s hat die Gruppe %2$s verlassen" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Kein Bestätigungs-Code." @@ -1513,6 +1594,7 @@ msgid "Notices" msgstr "Nachrichten" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1590,6 +1672,7 @@ msgstr "Programm nicht gefunden." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Du bist Besitzer dieses Programms" @@ -1625,12 +1708,6 @@ msgstr "Programm löschen" msgid "You must be logged in to delete a group." msgstr "Du musst angemeldet sein, um eine Gruppe zu löschen." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Kein Benutzername oder ID" - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Du darfst diese Gruppe nicht löschen." @@ -1920,6 +1997,7 @@ msgid "You must be logged in to edit an application." msgstr "Du musst angemeldet sein, um eine Anwendung zu bearbeiten." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Anwendung nicht bekannt." @@ -2142,6 +2220,7 @@ msgstr "Diese e-Mail-Adresse kann nicht normalisiert werden." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Ungültige E-Mail-Adresse." @@ -2519,33 +2598,26 @@ msgstr "%1$s Gruppen-Mitglieder, Seite %2$d" msgid "A list of the users in this group." msgstr "Liste der Benutzer in dieser Gruppe." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Admin" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Blockieren" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s Gruppen-Mitgliedschaften" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Diesen Benutzer blockieren" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s Gruppen-Mitglieder, Seite %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Benutzer zu einem Admin dieser Gruppe ernennen" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Zum Admin ernennen" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Diesen Benutzer zum Admin ernennen" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Liste der Benutzer in dieser Gruppe." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2583,6 +2655,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Neue Gruppe erstellen" @@ -2973,21 +3046,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s ist der Gruppe %2$s beigetreten" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Du musst angemeldet sein, um aus einer Gruppe auszutreten." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Unbekannte Gruppe." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Du bist kein Mitglied dieser Gruppe." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s hat die Gruppe %2$s verlassen" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3423,10 +3491,13 @@ msgid "Notice %s not found." msgstr "API-Methode nicht gefunden." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Nachricht hat kein Profil" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Status von %1$s auf %2$s" @@ -3912,17 +3983,20 @@ msgstr "Profilinformation" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 Kleinbuchstaben oder Zahlen, keine Satz- oder Leerzeichen." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Bürgerlicher Name" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Homepage" @@ -3954,6 +4028,7 @@ msgstr "Biografie" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Aufenthaltsort" @@ -4015,6 +4090,7 @@ msgstr[0] "Die Biografie ist zu lang (maximal ein Zeichen)." msgstr[1] "Die Biografie ist zu lang (maximal %d Zeichen)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Keine Zeitzone ausgewählt." @@ -4750,68 +4826,102 @@ msgstr "Benutzer verfügt nicht über diese Rolle." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Du kannst Benutzer auf dieser Seite nicht auf den Spielplaz schicken." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Benutzer ist schon blockiert." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sitzung" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Sitzungs-Einstellungen dieser StatusNet-Website" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sitzung" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Sitzung verwalten" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Sitzungsverwaltung selber übernehmen." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Sitzung untersuchen" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Fehleruntersuchung für Sitzungen aktivieren" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Speichern" - -msgid "Save site settings" -msgstr "Website-Einstellungen speichern" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Zugangs-Einstellungen speichern" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Du musst angemeldet sein, um dieses Programm zu betrachten." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Anwendungsprofil" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Erstellt von %1$s - %2$s Standard Zugang - %3$d Benutzer" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Erstellt von %1$s - %2$s Standard Zugang - %3$d Benutzer" +msgstr[1] "Erstellt von %1$s - %2$s Standard Zugang - %3$d Benutzer" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Programmaktionen" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Bearbeiten" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Schlüssel zurücksetzen" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Löschen" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Programminformation" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Hinweis: Wir unterstützen HMAC-SHA1-Signaturen. Wir unterstützen keine " "Klartext-Signaturen." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Bist du sicher, dass du den Schlüssel zurücksetzen willst?" @@ -4927,6 +5037,7 @@ msgstr "Alle Mitglieder" msgid "Statistics" msgstr "Statistik" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Erstellt" @@ -4969,7 +5080,9 @@ msgstr "" "Software [StatusNet](http://status.net/). Seine Mitglieder erstellen kurze " "Nachrichten über ihr Leben und Interessen. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Admins" @@ -4993,13 +5106,12 @@ msgstr "Nachricht an %1$s auf %2$s" msgid "Message from %1$s on %2$s" msgstr "Nachricht von %1$s auf %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Nachricht gelöscht." -msgid "Notice" -msgstr "Nachrichten" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "Von „%1$s“ mit „%2$s“ getaggte Nachrichten" @@ -5034,6 +5146,8 @@ msgstr "Feed der Nachrichten von %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Feed der Nachrichten von %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Feed der Nachrichten von %s (Atom)" @@ -5100,94 +5214,144 @@ msgstr "" msgid "Repeat of %s" msgstr "Wiederholung von %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Du kannst Benutzer dieser Seite nicht ruhig stellen." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Benutzer ist bereits ruhig gestellt." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Seite" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Grundeinstellungen dieser StatusNet-Website" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Der Seitenname darf nicht leer sein." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Du musst eine gültige E-Mail-Adresse haben." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Unbekannte Sprache „%s“" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Minimale Textlänge ist 0 Zeichen (unbegrenzt)" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Duplikatlimit muss mehr als 1 Sekunde sein" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Allgemein" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Seitenname" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Der Name deiner Seite, sowas wie „DeinUnternehmen-Mikroblog“" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Erstellt von" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "" "Text der für den Credit-Link im Fußbereich auf jeder Seite benutzt wird" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Erstellt von Adresse" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "" "Adresse, die für den Credit-Link im Fußbereich auf jeder Seite benutzt wird" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-Mail" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Kontakt-E-Mail-Adresse für deine Website." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Lokal" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Standard-Zeitzone" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Standard-Zeitzone für die Seite (meistens UTC)." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Bevorzugte Sprache" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Sprache der Seite für den Fall, dass die automatische Erkennung anhand der " "Browser-Einstellungen nicht verfügbar ist." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limit" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Textlimit" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Maximale Anzahl von Zeichen pro Nachricht" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Wiederholungslimit" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Wie lange muss ein Benutzer warten, bis er eine identische Nachricht " "abschicken kann (in Sekunden)." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Website-Einstellungen speichern" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Seitenbenachrichtigung" @@ -5392,6 +5556,10 @@ msgstr "URL melden" msgid "Snapshots will be sent to this URL" msgstr "An diese Adresse werden Snapshots gesendet" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Speichern" + msgid "Save snapshot settings" msgstr "Snapshot-Einstellungen speichern" @@ -5736,6 +5904,7 @@ msgstr "" "„Abbrechen“." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5747,6 +5916,7 @@ msgid "Subscribe to this user." msgstr "Abonniere diesen Benutzer" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6188,6 +6358,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6544,6 +6718,9 @@ msgstr "Konnte die Design-Einstellungen nicht löschen." msgid "Home" msgstr "Homepage" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Basis-Seiteneinstellungen" @@ -6583,6 +6760,10 @@ msgstr "Pfadkonfiguration" msgid "Sessions configuration" msgstr "Sitzungseinstellungen" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sitzung" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Seitennachricht bearbeiten" @@ -6686,6 +6867,7 @@ msgid "Describe your application" msgstr "Beschreibe dein Programm" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Beschreibung" @@ -6803,6 +6985,10 @@ msgstr "Blockieren" msgid "Block this user" msgstr "Diesen Benutzer blockieren" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Befehl-Ergebnisse" @@ -6902,14 +7088,14 @@ msgid "Fullname: %s" msgstr "Bürgerlicher Name: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Standort: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7268,6 +7454,10 @@ msgstr "Datenbankfehler." msgid "Public" msgstr "Zeitleiste" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Löschen" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Diesen Benutzer löschen" @@ -7400,28 +7590,44 @@ msgstr "Los geht's" msgid "Grant this user the \"%s\" role" msgstr "Teile dem Benutzer die „%s“-Rolle zu" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 Kleinbuchstaben oder Zahlen, keine Satz- oder Leerzeichen" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Blockieren" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Diesen Benutzer blockieren" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "Adresse der Homepage oder Blogs der Gruppe oder des Themas." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Beschreibe die Gruppe oder das Thema" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Beschreibe die Gruppe oder das Thema in einem Zeichen" msgstr[1] "Beschreibe die Gruppe oder das Thema in %d Zeichen" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "Ort der Gruppe, optional, beispielsweise „Stadt, Region, Land“." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Pseudonyme" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7436,6 +7642,27 @@ msgstr[1] "" "Zusätzliche Spitznamen für die Gruppe, Komma oder Leerzeichen getrennt, " "maximal %d." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Mitglied seit" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7460,6 +7687,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "%s-Gruppen-Mitglieder" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s Gruppen-Mitglieder" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7650,38 +7893,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s hat deine Nachrichten auf „%2$s“ abonniert." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Wenn du dir sicher bist, dass dieses Benutzerkonto missbräuchlich benutzt " -"wurde, kannst du das Benutzerkonto von deiner Liste der Abonnenten sperren " -"und es den Seitenadministratoren unter %s als Spam melden." - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s hat deine Nachrichten auf %2$s abonniert.\n" "\n" @@ -7695,12 +7922,29 @@ msgstr "" "Du kannst deine E-Mail-Adresse und die Benachrichtigungseinstellungen auf %7" "$s ändern.\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Biografie: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Wenn du dir sicher bist, dass dieses Benutzerkonto missbräuchlich benutzt " +"wurde, kannst du das Benutzerkonto von deiner Liste der Abonnenten sperren " +"und es den Seitenadministratoren unter %s als Spam melden." + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7710,16 +7954,13 @@ msgstr "Neue E-Mail-Adresse, um auf „%s“ zu schreiben" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "Du hast eine neue Adresse zum Hinzufügen von Nachrichten auf „%1$s“.\n" "\n" @@ -7756,8 +7997,8 @@ msgstr "Du wurdest von „%s“ angestupst" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7766,10 +8007,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) fragt sich, was du zur Zeit wohl so machst und lädt dich ein, " "etwas Neues zu posten.\n" @@ -7792,8 +8030,7 @@ msgstr "Neue private Nachricht von „%s“" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7805,10 +8042,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) hat dir eine private Nachricht geschickt:\n" "\n" @@ -7836,7 +8070,7 @@ msgstr "%1$s (@%2$s) hat deine Nachricht als Favorit gespeichert" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7850,10 +8084,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) hat gerade deine Mitteilung von %2$s als Favorit hinzugefügt.\n" "Die Adresse der Nachricht ist:\n" @@ -7886,14 +8117,13 @@ msgstr "" "erlangen" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7909,12 +8139,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) hat dir gerade eine Nachricht (eine „@-Antwort“) auf „%2$s“ " "gesendet.\n" @@ -7940,6 +8165,31 @@ msgstr "" "\n" "P.S. Diese E-Mail Benachrichtigung kannst du hier deaktivieren: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s ist der Gruppe „%2$s“ beigetreten." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s ist der Gruppe „%2$s“ beigetreten." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Nur der Benutzer selbst kann seinen Posteingang lesen." @@ -7979,6 +8229,20 @@ msgstr "Sorry, keine eingehenden E-Mails gestattet." msgid "Unsupported message type: %s" msgstr "Nachrichten-Typ „%s“ wird nicht unterstützt." +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Benutzer zu einem Admin dieser Gruppe ernennen" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Zum Admin ernennen" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Diesen Benutzer zum Admin ernennen" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8678,9 +8942,8 @@ msgstr "Ungültiges XML, XRD-Root fehlt." msgid "Getting backup from file '%s'." msgstr "Hole Backup von der Datei „%s“." -#~ msgid "Couldn't update user." -#~ msgstr "Konnte Benutzerdaten nicht aktualisieren." +#~ msgid "Notice" +#~ msgstr "Nachrichten" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Konnte Benutzereintrag nicht schreiben" +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 Kleinbuchstaben oder Zahlen, keine Satz- oder Leerzeichen" diff --git a/locale/en_GB/LC_MESSAGES/statusnet.po b/locale/en_GB/LC_MESSAGES/statusnet.po index ae025931a1..6cdfe7ec38 100644 --- a/locale/en_GB/LC_MESSAGES/statusnet.po +++ b/locale/en_GB/LC_MESSAGES/statusnet.po @@ -14,17 +14,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:38+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:21+0000\n" "Language-Team: British English \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: en-gb\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -75,6 +75,8 @@ msgstr "Save access settings" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -82,6 +84,7 @@ msgstr "Save access settings" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Save" @@ -759,6 +762,7 @@ msgstr "Account" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Nickname" @@ -836,6 +840,7 @@ msgstr "You may not delete another user's status." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "No such notice." @@ -1046,6 +1051,103 @@ msgstr "API method under construction." msgid "User not found." msgstr "API method not found." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "You must be logged in to leave a group." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "No such group." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "No nickname or ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Not logged in." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Missing profile." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "A list of the users in this group." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Could not join user %1$s to group %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s's status on %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1131,36 +1233,6 @@ msgstr "No such file." msgid "Cannot delete someone else's favorite." msgstr "Could not delete favourite." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "No such group." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1277,6 +1349,7 @@ msgstr "Preview" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1445,6 +1518,14 @@ msgstr "Unblock this user" msgid "Post to %s" msgstr "Post to %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s left group %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "No confirmation code." @@ -1504,6 +1585,7 @@ msgid "Notices" msgstr "Notices" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1580,6 +1662,7 @@ msgstr "Application not found." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "You are not the owner of this application." @@ -1616,12 +1699,6 @@ msgstr "Delete this application" msgid "You must be logged in to delete a group." msgstr "You must be logged in to delete a group." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "No nickname or ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "You are not allowed to delete this group." @@ -1914,6 +1991,7 @@ msgid "You must be logged in to edit an application." msgstr "You must be logged in to edit an application." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "No such application." @@ -2131,6 +2209,7 @@ msgstr "Cannot normalise that e-mail address" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Not a valid e-mail address." @@ -2504,33 +2583,26 @@ msgstr "%1$s group members, page %2$d" msgid "A list of the users in this group." msgstr "A list of the users in this group." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Admin" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s group members" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Make user an admin of the group" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s group members, page %2$d" -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "A list of the users in this group." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2569,6 +2641,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Create a new group" @@ -2953,21 +3026,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s joined group %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "You must be logged in to leave a group." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Unknown" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "You are not a member of that group." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s left group %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3395,10 +3463,13 @@ msgid "Notice %s not found." msgstr "API method not found." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Notice has no profile." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s's status on %2$s" @@ -3884,18 +3955,21 @@ msgstr "Profile information" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 lowercase letters or numbers, no punctuation or spaces" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Full name" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Homepage" @@ -3926,6 +4000,7 @@ msgstr "Bio" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Location" @@ -3985,6 +4060,7 @@ msgstr[0] "Bio is too long (max %d chars)." msgstr[1] "Bio is too long (max %d chars)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Timezone not selected." @@ -4702,66 +4778,97 @@ msgstr "User doesn't have this role." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "You cannot sandbox users on this site." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "User is already sandboxed." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessions" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessions" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +msgid "Handle sessions ourselves." msgstr "" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Save" - -msgid "Save site settings" -msgstr "Save site settings" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Save access settings" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "You must be logged in to view an application." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Application profile" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Application actions" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Edit" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Delete" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Application information" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Are you sure you want to reset your consumer key and secret?" @@ -4876,6 +4983,7 @@ msgstr "All members" msgid "Statistics" msgstr "Statistics" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4920,7 +5028,9 @@ msgstr "" "[StatusNet](http://status.net/) tool. Its members share short messages about " "their life and interests. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Admins" @@ -4944,13 +5054,12 @@ msgstr "Message to %1$s on %2$s" msgid "Message from %1$s on %2$s" msgstr "Message from %1$s on %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Notice deleted." -msgid "Notice" -msgstr "Notices" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, page %2$d" @@ -4985,6 +5094,8 @@ msgstr "Notice feed for %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Notice feed for %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Notice feed for %s (Atom)" @@ -5047,88 +5158,133 @@ msgstr "" msgid "Repeat of %s" msgstr "Repeat of %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "You cannot silence users on this site." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "User is already silenced." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Site" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Basic settings for this StatusNet site" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "" +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "You must have a valid contact email address." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Minimum text limit is 0 (unlimited)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +msgctxt "LEGEND" msgid "General" msgstr "" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Site name" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Contact e-mail address for your site" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Local" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Default timezone" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Default language" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +msgctxt "LEGEND" msgid "Limits" msgstr "" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Save site settings" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Site Notice" @@ -5331,6 +5487,10 @@ msgstr "Report URL" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Save" + msgid "Save snapshot settings" msgstr "Save snapshot settings" @@ -5670,6 +5830,7 @@ msgstr "" "click “Reject”." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5681,6 +5842,7 @@ msgid "Subscribe to this user." msgstr "Subscribe to this user" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6103,6 +6265,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6451,6 +6617,9 @@ msgstr "Unable to delete design setting." msgid "Home" msgstr "Homepage" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Basic site configuration" @@ -6490,6 +6659,10 @@ msgstr "Paths configuration" msgid "Sessions configuration" msgstr "Sessions configuration" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessions" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Edit site notice" @@ -6595,6 +6768,7 @@ msgid "Describe your application" msgstr "Describe your application" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Description" @@ -6709,6 +6883,10 @@ msgstr "Block" msgid "Block this user" msgstr "Block this user" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Command results" @@ -6805,14 +6983,14 @@ msgid "Fullname: %s" msgstr "Fullname: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Location: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7167,6 +7345,10 @@ msgstr "" msgid "Public" msgstr "Public" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Delete" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Delete this user" @@ -7300,31 +7482,47 @@ msgstr "Go" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 lowercase letters or numbers, no punctuation or spaces" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL of the homepage or blog of the group or topic" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Describe the group or topic" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Describe the group or topic in %d characters" msgstr[1] "Describe the group or topic in %d characters" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Location for the group, if any, like \"City, State (or Region), Country\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7335,6 +7533,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Member since" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7359,6 +7578,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s group members" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7535,35 +7770,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s is now listening to your notices on %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s is now listening to your notices on %2$s.\n" "\n" @@ -7576,12 +7798,26 @@ msgstr "" "----\n" "Change your email address or notification options at %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profile" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Bio: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7597,10 +7833,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "You have a new posting address on %1$s.\n" "\n" @@ -7635,7 +7868,7 @@ msgstr "You've been nudged by %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7645,10 +7878,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7660,7 +7890,6 @@ msgstr "New private message from %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7673,10 +7902,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7704,10 +7930,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7725,14 +7948,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) sent a notice to your attention" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7748,12 +7970,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s joined group %2$s" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s updates favourited by %2$s / %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7792,6 +8034,20 @@ msgstr "Sorry, no incoming e-mail allowed." msgid "Unsupported message type: %s" msgstr "Unsupported message type: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Make user an admin of the group" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8482,9 +8738,8 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Could not update user." +#~ msgid "Notice" +#~ msgstr "Notices" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Couldn't update user record." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 lowercase letters or numbers, no punctuation or spaces" diff --git a/locale/eo/LC_MESSAGES/statusnet.po b/locale/eo/LC_MESSAGES/statusnet.po index 354c628dac..6faad67c5f 100644 --- a/locale/eo/LC_MESSAGES/statusnet.po +++ b/locale/eo/LC_MESSAGES/statusnet.po @@ -17,17 +17,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:39+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:23+0000\n" "Language-Team: Esperanto \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: eo\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -78,6 +78,8 @@ msgstr "Konservi atingan agordon" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -85,6 +87,7 @@ msgstr "Konservi atingan agordon" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Konservi" @@ -758,6 +761,7 @@ msgstr "Konto" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Kromnomo" @@ -838,6 +842,7 @@ msgstr "Vi ne povas forigi la staton de alia uzanto." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Ne estas tiu avizo." @@ -1049,6 +1054,103 @@ msgstr "API-metodo farata." msgid "User not found." msgstr "Uzanto ne ekzistas." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Ensalutu por eksaniĝi." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Ne estas tiu grupo." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Ne estas alinomo aŭ ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Ne konektita." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Mankas profilo." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Listo de uzantoj en tiu ĉi grupo" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "La uzanto %1$*s ne povas aliĝi al la grupo %2$*s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Stato de %1$s ĉe %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1131,36 +1233,6 @@ msgstr "Ne ekzistas tia ŝatataĵo." msgid "Cannot delete someone else's favorite." msgstr "Malsukcesis forigi ŝataton." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Ne estas tiu grupo." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1276,6 +1348,7 @@ msgstr "Antaŭrigardo" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Forigi" @@ -1445,6 +1518,14 @@ msgstr "Malbloki ĉi tiun uzanton" msgid "Post to %s" msgstr "Sendi al %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s eksaniĝis de grupo %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Neniu konfirma kodo." @@ -1504,6 +1585,7 @@ msgid "Notices" msgstr "Avizoj" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1581,6 +1663,7 @@ msgstr "Aplikaĵo ne trovita." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Vi ne estas la posedanto de ĉi tiu aplikaĵo." @@ -1614,12 +1697,6 @@ msgstr "Forigi ĉi tiun aplikaĵon." msgid "You must be logged in to delete a group." msgstr "Por povi forigi grupon, oni devas ensaluti." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Ne estas alinomo aŭ ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Vi ne rajtas forigi ĉi tiun grupon." @@ -1906,6 +1983,7 @@ msgid "You must be logged in to edit an application." msgstr "Ensalutu por redakti la aplikaĵon." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Ne estas tia aplikaĵo." @@ -2123,6 +2201,7 @@ msgstr "Malsukcesis normigi tiun retpoŝtadreson" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Retpoŝta adreso ne valida" @@ -2492,33 +2571,26 @@ msgstr "Grupanoj de %1$s, paĝo %2$d" msgid "A list of the users in this group." msgstr "Listo de uzantoj en tiu ĉi grupo" -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administranto" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloki" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Grupanecoj de %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloki ĉi tiun uzanton" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Grupanoj de %1$s, paĝo %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Elekti uzanton grupestro." - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Estrigi" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Estrigi la uzanton" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Listo de uzantoj en tiu ĉi grupo" #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2556,6 +2628,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Krei novan grupon" @@ -2928,21 +3001,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s aniĝis al grupo %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Ensalutu por eksaniĝi." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Nekonata grupo." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Vi ne estas grupano." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s eksaniĝis de grupo %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3368,10 +3436,13 @@ msgid "Notice %s not found." msgstr "Avizo %s ne trovitas." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Avizo sen profilo" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Stato de %1$s ĉe %2$s" @@ -3854,18 +3925,21 @@ msgstr "Profila informo" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 minusklaj literoj aŭ ciferoj, neniu interpunkcio aŭ spaco" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Plena nomo" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Hejmpaĝo" @@ -3896,6 +3970,7 @@ msgstr "Biografio" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Loko" @@ -3954,6 +4029,7 @@ msgstr[0] "Biografio tro longas (maksimume %d literoj)" msgstr[1] "Biografio tro longas (maksimume %d literoj)" #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Horzono ne elektita" @@ -4676,68 +4752,102 @@ msgstr "La uzanto ne havas la rolon." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Vi ne rajtas provejigi uzantojn ĉe tiu ĉi retejo." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "La uzanto jam provejiĝis." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Seancoj" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Seancoj" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Trakti seancojn" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Ĉu traktu seancojn ni mem." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Seanca sencimigado" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Ŝalti sencimigadan eligon por seanco." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Konservi" - -msgid "Save site settings" -msgstr "Konservi retejan agordon" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Konservi atingan agordon" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Ensalutu por vidi la aplikaĵon." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Aplikaĵa profilo" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Kreita de %1$s - %2$s defaŭlta aliroj - %3$d uzantoj" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Kreita de %1$s - %2$s defaŭlta aliroj - %3$d uzantoj" +msgstr[1] "Kreita de %1$s - %2$s defaŭlta aliroj - %3$d uzantoj" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Aplikaĵa ago" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Redakti" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Rekomencigi ŝlosilon & sekreton" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Forigi" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Aplikaĵa informo" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Rimarku: Ni subtenas HMAC-SHA1-subskribo. Ni ne subtenas platteksta " "subskribado-metodon." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Ĉu vi certe volas rekomencigi vian konsumantan ŝlosilon kaj sekreton?" @@ -4850,6 +4960,7 @@ msgstr "Ĉiuj grupanoj" msgid "Statistics" msgstr "Statistiko" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4893,7 +5004,9 @@ msgstr "" "Molvaro [StatusNet](*http://*status.*net/), kie anoj konigas mesaĝetojn pri " "siaj vivoj kaj ŝatokupoj. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administrantoj" @@ -4917,14 +5030,12 @@ msgstr "Mesaĝo al %1$s ĉe %2$s" msgid "Message from %1$s on %2$s" msgstr "Mesaĝo de %1$s ĉe %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Avizo viŝiĝas" -#, fuzzy -msgid "Notice" -msgstr "Avizoj" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, paĝo %2$d" @@ -4959,6 +5070,8 @@ msgstr "Avizofluo pri %1$s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Avizofluo pri %1$s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Avizofluo pri %1$s (Atom)" @@ -5022,89 +5135,139 @@ msgstr "" msgid "Repeat of %s" msgstr "Ripeto de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Vi ne rajtas silentigi uzanton ĉe ĉi tiu retejo." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "La uzanto jam silentiĝas." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Retejo" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Baza agordo por ĉi tiu StatusNet-retejo." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "La sita nomo devas pli ol nula longeco" +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Vi devas havi validan kontakteblan retpoŝtadreson" +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Nekonata lingvo \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Teksto estu almenaŭ 0 literojn (senlime)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Refoja limo estu almenaŭ unu sekundo." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Ĝenerala" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nomo de retejo" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Nomo de via retejo, ekzemple \"Viafirmo Mikroblogo\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Eblige de" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Teksto por dankado-ligilo je subo por ĉiu paĝo" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Alportita de URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL por danko-ligilo je subaĵo sur ĉiu paĝo" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Retpoŝto" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Kontakta retpoŝtadreso por via retejo" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Loka" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Defaŭlta horzono" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Defaŭlta horzono de la retejo; kutime UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Defaŭlta lingvo" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "Reteja lingvo por kiam lingva prefero ne troviĝas el la foliumilo" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limoj" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Teksta longlimo" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Longlimo por afiŝoj." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Refoja limo" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Kiel longe devas uzantoj atendas (je sekundo) antaŭ afiŝi la saman refejo." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Konservi retejan agordon" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Reteja Anonco" @@ -5309,6 +5472,10 @@ msgstr "Alraporta URL" msgid "Snapshots will be sent to this URL" msgstr "Momentfotoj sendiĝos al ĉi tiu URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Konservi" + msgid "Save snapshot settings" msgstr "Konservi retejan agordon" @@ -5653,6 +5820,7 @@ msgstr "" "tiu uzanto. Se ne simple alklaku “Rifuzi\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5664,6 +5832,7 @@ msgid "Subscribe to this user." msgstr "Aboni la uzanton" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6088,6 +6257,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6440,6 +6613,9 @@ msgstr "Malsukcesas forigi desegnan agordon." msgid "Home" msgstr "Hejmpaĝo" +msgid "Admin" +msgstr "Administranto" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Baza reteja agordo" @@ -6479,6 +6655,10 @@ msgstr "Voja agordo" msgid "Sessions configuration" msgstr "Seanca agodo" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Seancoj" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Redakti retejan anoncon" @@ -6584,6 +6764,7 @@ msgid "Describe your application" msgstr "Priskribu vian aplikaĵon" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Priskribo" @@ -6700,6 +6881,10 @@ msgstr "Bloki" msgid "Block this user" msgstr "Bloki la uzanton" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Komandaj rezultoj" @@ -6800,14 +6985,14 @@ msgid "Fullname: %s" msgstr "Plennomo: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Loko: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7168,6 +7353,10 @@ msgstr "Datumbaza eraro" msgid "Public" msgstr "Publika" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Forigi" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Forigi la uzanton" @@ -7301,31 +7490,47 @@ msgstr "Iri" msgid "Grant this user the \"%s\" role" msgstr "Donu al la uzanto rolon \"%s\"" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 minusklaj literoj aŭ ciferoj, neniu interpunkcio aŭ spaco" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloki" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloki ĉi tiun uzanton" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL de la hejmpaĝo aŭ blogo de la grupo aŭ temo" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Priskribo de grupo aŭ temo" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Priskribo de grupo aŭ temo, apenaŭ je %d literoj" msgstr[1] "Priskribo de grupo aŭ temo, apenaŭ je %d literoj" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Loko de la grupo, se iu ajn, ekzemple \"Urbo, Stato (aŭ Regiono), Lando\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Alnomo" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7338,6 +7543,27 @@ msgstr[0] "" msgstr[1] "" "Kromaj alnomoj por la grupo, apartigita per komo aŭ spaco, apenaŭ %d literoj" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Ano ekde" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administranto" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7362,6 +7588,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Grupanoj de %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s grupanoj" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7551,37 +7793,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s nun rigardas viajn avizojn ĉe %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Se vi kredas, ke ĉi tiun konton iu misuzas, vi rajtas bloki ĝin de via " -"abonanto-listo kaj raporti ĝin kiel rubmesaĝanto al administrantoj ĉe %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s nun rigardas vian avizojn ĉe %2$s.\n" "\n" @@ -7594,12 +7821,28 @@ msgstr "" "----\n" "Ŝanĝu vian retpoŝtadreson aŭ la sciigan agordon ĉe %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profilo" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Biografio: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Se vi kredas, ke ĉi tiun konton iu misuzas, vi rajtas bloki ĝin de via " +"abonanto-listo kaj raporti ĝin kiel rubmesaĝanto al administrantoj ĉe %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7615,10 +7858,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Vi havas novan afiŝan adreson ĉe %1$s.\n" "\n" @@ -7653,8 +7893,8 @@ msgstr "Vin puŝetis %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7663,10 +7903,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) scivolas, kion faras vi lastatempe kaj invitas al vi afiŝi kelke " "da novaĵoj.\n" @@ -7689,8 +7926,7 @@ msgstr "Nova privata mesaĝo de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7702,10 +7938,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) sendis al vi privatan mesaĝon:\n" "\n" @@ -7733,7 +7966,7 @@ msgstr "%s (@%s) ŝatis vian avizon" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7747,10 +7980,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) ĵus aldoniss vian mesaĝon ĉe %2$s al sia ŝatolisto.\n" "\n" @@ -7787,14 +8017,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) afiŝis avizon al vi" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7810,12 +8039,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) ĵus afiŝis al vi (\"@-respondo\") ĉe %2$s.\n" "\n" @@ -7840,6 +8064,31 @@ msgstr "" "\n" "P.S. Vi rajtas malŝalti tian ĉi retpoŝtan sciigon ĉi tie: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s aniĝis grupon %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s aniĝis grupon %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Nur uzanto povas legi sian propran paŝton." @@ -7879,6 +8128,20 @@ msgstr "Pardonon, neniu alvena mesaĝo permesiĝas." msgid "Unsupported message type: %s" msgstr "Nesubtenata mesaĝo-tipo: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Elekti uzanton grupestro." + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Estrigi" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Estrigi la uzanton" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "Databaze eraris konservi vian dosieron. Bonvole reprovu." @@ -8575,8 +8838,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Ne povus ĝisdatigi uzanton." +#, fuzzy +#~ msgid "Notice" +#~ msgstr "Avizoj" -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Malsukcesis ĝisdatigo de tujmesaĝaj agordoj de uzanto." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 minusklaj literoj aŭ ciferoj, neniu interpunkcio aŭ spaco" diff --git a/locale/es/LC_MESSAGES/statusnet.po b/locale/es/LC_MESSAGES/statusnet.po index ee9a769a28..05700a60c7 100644 --- a/locale/es/LC_MESSAGES/statusnet.po +++ b/locale/es/LC_MESSAGES/statusnet.po @@ -19,17 +19,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:40+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:24+0000\n" "Language-Team: Spanish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: es\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -80,6 +80,8 @@ msgstr "Guardar la configuración de acceso" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -87,6 +89,7 @@ msgstr "Guardar la configuración de acceso" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Guardar" @@ -763,6 +766,7 @@ msgstr "Cuenta" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Usuario" @@ -842,6 +846,7 @@ msgstr "No puedes borrar el estado de otro usuario." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "No existe ese mensaje." @@ -1012,7 +1017,7 @@ msgstr "" #. TRANS: Client error displayed attempting to post an empty API notice. msgid "Atom post must not be empty." -msgstr "" +msgstr "El mensaje Atom no debe estar vacío." #. TRANS: Client error displayed attempting to post an API that is not well-formed XML. msgid "Atom post must be well-formed XML." @@ -1052,6 +1057,103 @@ msgstr "Método API en construcción." msgid "User not found." msgstr "Método de API no encontrado." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Debes estar conectado para dejar un grupo." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "No existe ese grupo." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Ningún nombre de usuario o ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "No conectado." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Perfil ausente." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Lista de los usuarios en este grupo." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "No se pudo unir el usuario %s al grupo %s" + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "estado de %1$s en %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1132,36 +1234,6 @@ msgstr "No existe tal archivo." msgid "Cannot delete someone else's favorite." msgstr "No se pudo borrar favorito." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "No existe ese grupo." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1278,6 +1350,7 @@ msgstr "Vista previa" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Borrar" @@ -1443,6 +1516,14 @@ msgstr "Desbloquear este usuario" msgid "Post to %s" msgstr "Postear a %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s ha dejado el grupo %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Ningún código de confirmación." @@ -1502,6 +1583,7 @@ msgid "Notices" msgstr "Mensajes" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1579,6 +1661,7 @@ msgstr "Aplicación no encontrada." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "No eres el propietario de esta aplicación." @@ -1615,12 +1698,6 @@ msgstr "Borrar esta aplicación" msgid "You must be logged in to delete a group." msgstr "Debe estar conectado para eliminar un grupo." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Ningún nombre de usuario o ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "No puede eliminar este grupo." @@ -1895,7 +1972,7 @@ msgstr "Agregar a favoritos" #. TRANS: %s is the non-existing document. #, fuzzy, php-format msgid "No such document \"%s\"." -msgstr "No existe tal documento \"%s\"" +msgstr "No existe el documento «%s»." #. TRANS: Title for "Edit application" form. #. TRANS: Form legend. @@ -1907,6 +1984,7 @@ msgid "You must be logged in to edit an application." msgstr "Debes haber iniciado sesión para editar una aplicación." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "No existe tal aplicación." @@ -2129,6 +2207,7 @@ msgstr "No se puede normalizar esta dirección de correo electrónico." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Correo electrónico no válido" @@ -2507,33 +2586,26 @@ msgstr "%1$s miembros de grupo, página %2$d" msgid "A list of the users in this group." msgstr "Lista de los usuarios en este grupo." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Admin" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloquear" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s miembros en el grupo" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloquear a este usuario" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s miembros de grupo, página %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Convertir al usuario en administrador del grupo" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Convertir en administrador" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Convertir a este usuario en administrador" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Lista de los usuarios en este grupo." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2571,6 +2643,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Crear un nuevo grupo" @@ -2667,7 +2740,7 @@ msgstr "Dirección de mensajería instantánea" #. TRANS: Field title for IM address. %s is the IM service name. #, php-format msgid "%s screenname." -msgstr "" +msgstr "Nombre en pantalla de %s." #. TRANS: Header for IM preferences form. #, fuzzy @@ -2956,21 +3029,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s se ha unido al grupo %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Debes estar conectado para dejar un grupo." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Desconocido" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "No eres miembro de este grupo." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s ha dejado el grupo %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3029,7 +3097,7 @@ msgstr "Creative Commons" #. TRANS: Dropdown field label in the license admin panel. msgid "Type" -msgstr "" +msgstr "Tipo" #. TRANS: Dropdown field instructions in the license admin panel. #, fuzzy @@ -3356,7 +3424,7 @@ msgstr "Aplicaciones conectadas" #. TRANS: Instructions for OAuth connection settings. msgid "The following connections exist for your account." -msgstr "" +msgstr "Existen las siguientes conexiones para su cuenta." #. TRANS: Client error when trying to revoke access for an application while not being a user of it. msgid "You are not a user of that application." @@ -3402,10 +3470,13 @@ msgid "Notice %s not found." msgstr "Método de API no encontrado." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Mensaje sin perfil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "estado de %1$s en %2$s" @@ -3892,6 +3963,7 @@ msgstr "Información del perfil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" @@ -3899,12 +3971,14 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nombre completo" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Página de inicio" @@ -3935,6 +4009,7 @@ msgstr "Biografía" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Ubicación" @@ -3996,6 +4071,7 @@ msgstr[0] "La biografía es muy larga (máx. %d caracteres)." msgstr[1] "La biografía es muy larga (máx. %d caracteres)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Zona horaria no seleccionada" @@ -4725,68 +4801,102 @@ msgstr "El usuario no tiene esta función." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "No puedes imponer restricciones a los usuarios en este sitio." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Al usuario ya se le ha impuesto restricciones." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sesiones" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sesiones" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Gestionar sesiones" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Si manejamos las sesiones nosotros mismos." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Depuración de sesión" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Activar la salida de depuración para sesiones." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Guardar" - -msgid "Save site settings" -msgstr "Guardar la configuración del sitio" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Guardar la configuración de acceso" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Tienes que haber iniciado sesión para poder ver aplicaciones." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Perfil de la aplicación" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Creado por %1$s - acceso predeterminado %2$s - %3$d usuarios" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Creado por %1$s - acceso predeterminado %2$s - %3$d usuarios" +msgstr[1] "Creado por %1$s - acceso predeterminado %2$s - %3$d usuarios" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Acciones de la aplicación" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Editar" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Reiniciar clave y secreto" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Borrar" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Información de la aplicación" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Nota: Nuestro sistema sólo es compatible con firmas HMAC-SHA1. No son " "compatibles las firmas de texto sin formato." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "¿realmente deseas reiniciar tu clave y secreto de consumidor?" @@ -4901,6 +5011,7 @@ msgstr "Todos los miembros" msgid "Statistics" msgstr "Estadísticas" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Creado" @@ -4944,7 +5055,9 @@ msgstr "" "herramienta de software libre [StatusNet](http://status.net/). Sus miembros " "comparten mensajes cortos acerca de su vida e intereses. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administradores" @@ -4968,13 +5081,12 @@ msgstr "Mensaje a %1$s en %2$s" msgid "Message from %1$s on %2$s" msgstr "Mensaje de %1$s en %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Mensaje borrado" -msgid "Notice" -msgstr "Mensajes" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, página %2$s" @@ -5009,6 +5121,8 @@ msgstr "Canal de mensajes para %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Canal de mensajes para %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Canal de mensajes para %s (Atom)" @@ -5074,90 +5188,140 @@ msgstr "" msgid "Repeat of %s" msgstr "Repetición de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "No puedes silenciar a otros usuarios en este sitio." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "El usuario ya ha sido silenciado." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Sitio" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Configuración básica de este sitio StatusNet." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "El nombre del sitio debe tener longitud diferente de cero." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Debes tener una dirección de correo electrónico válida." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Idioma desconocido \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "El límite mínimo de texto es 0 (sin límite)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "El límite de duplicación debe ser de 1 o más segundos." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "General" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nombre del sitio" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "El nombre de tu sitio, por ejemplo, \"Microblog tucompañía\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Traído por" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Texto utilizado para los vínculos a créditos en el pie de cada página" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Traído por URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL utilizado para el vínculo a los créditos en el pie de cada página" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Correo electrónico" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Correo electrónico de contacto para tu sitio" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Configuraciones regionales" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Zona horaria predeterminada" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Zona horaria predeterminada del sitio; generalmente UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "!Idioma predeterminado" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Idioma del sitio cuando la autodetección de la configuración del navegador " "no está disponible" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Límites" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Límite de texto" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Cantidad máxima de caracteres para los mensajes." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Límite de duplicados" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "Cuántos segundos es necesario esperar para publicar lo mismo de nuevo." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Guardar la configuración del sitio" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Aviso del mensaje" @@ -5368,6 +5532,10 @@ msgstr "Reportar URL" msgid "Snapshots will be sent to this URL" msgstr "Las capturas se enviarán a este URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Guardar" + msgid "Save snapshot settings" msgstr "Guardar la configuración de instantáneas" @@ -5717,6 +5885,7 @@ msgstr "" "haz clic en \"Cancelar\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Aceptar" @@ -5726,6 +5895,7 @@ msgid "Subscribe to this user." msgstr "Suscribirse a este usuario." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Rechazar" @@ -6160,6 +6330,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6515,6 +6689,9 @@ msgstr "No se puede eliminar la configuración de diseño." msgid "Home" msgstr "Página de inicio" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configuración básica del sitio" @@ -6554,6 +6731,10 @@ msgstr "Configuración de rutas" msgid "Sessions configuration" msgstr "Configuración de sesiones" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sesiones" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Editar el mensaje del sitio" @@ -6659,6 +6840,7 @@ msgid "Describe your application" msgstr "Describe tu aplicación" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Descripción" @@ -6775,6 +6957,10 @@ msgstr "Bloquear" msgid "Block this user" msgstr "Bloquear este usuario." +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Resultados de comando" @@ -6876,14 +7062,14 @@ msgid "Fullname: %s" msgstr "Nombre completo: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Lugar: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7245,6 +7431,10 @@ msgstr "Error de la base de datos" msgid "Public" msgstr "Público" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Borrar" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Borrar este usuario" @@ -7377,23 +7567,35 @@ msgstr "Ir" msgid "Grant this user the \"%s\" role" msgstr "Otorgar al usuario el papel de \"%$\"" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"1-64 letras en minúscula o números, sin signos de puntuación o espacios" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloquear" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloquear a este usuario" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL de página de inicio o blog del grupo o tema" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Describir al grupo o tema" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Describir al grupo o tema en %d caracteres" msgstr[1] "Describir al grupo o tema en %d caracteres" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." @@ -7401,9 +7603,12 @@ msgstr "" "Ubicación del grupo, si existe, por ejemplo \"Ciudad, Estado (o Región), País" "\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Alias" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7416,6 +7621,27 @@ msgstr[0] "" msgstr[1] "" "Nombres adicionales para el grupo, separados por comas o espacios. Máximo: %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Miembro desde" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7440,6 +7666,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Miembros del grupo %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Miembros del grupo %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7629,38 +7871,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s ahora está escuchando tus avisos en %2$s" -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Si crees que esta cuenta está siendo utilizada de forma abusiva, puedes " -"bloquearla de tu lista de suscriptores y reportar la como cuenta no deseada " -"a los administradores de sitios en %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s ahora está escuchando tus avisos en %2$s.\n" "\n" @@ -7675,12 +7901,29 @@ msgstr "" "----\n" "Cambia tu correo electrónico o las opciones de notificación en %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Perfil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Bio: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Si crees que esta cuenta está siendo utilizada de forma abusiva, puedes " +"bloquearla de tu lista de suscriptores y reportar la como cuenta no deseada " +"a los administradores de sitios en %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7696,10 +7939,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "You have a new posting address on %1$s.\n" "\n" @@ -7734,8 +7974,8 @@ msgstr "%s te ha dado un toque" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7744,10 +7984,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) se pregunta que será de tí durante estos días y te invita a " "publicar algunas noticias.\n" @@ -7770,8 +8007,7 @@ msgstr "Nuevo mensaje privado de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7783,10 +8019,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) Te ha enviado un mensaje privado:\n" "\n" @@ -7814,7 +8047,7 @@ msgstr "%1$s (@%2$s) agregó tu mensaje como favorito." #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7828,10 +8061,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) acaba de añadir un mensaje de %2$s a su listado de favoritos.\n" "\n" @@ -7868,14 +8098,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) ha enviado un aviso para tu atención" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7891,12 +8120,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) ha enviado un aviso a tu atención (una '@-respuesta') en %2$s.\n" "\n" @@ -7922,6 +8146,31 @@ msgstr "" "P.D. Puedes desactivar las notificaciones que recibes en tu correo " "electrónico aquí: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s se unió al grupo %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s se unió al grupo %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Sólo el usuario puede leer sus bandejas de correo." @@ -7961,6 +8210,20 @@ msgstr "Lo sentimos, pero no se permite correos entrantes" msgid "Unsupported message type: %s" msgstr "Tipo de mensaje no compatible: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Convertir al usuario en administrador del grupo" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Convertir en administrador" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Convertir a este usuario en administrador" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8658,9 +8921,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "No se pudo actualizar el usuario." +#~ msgid "Notice" +#~ msgstr "Mensajes" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "No se pudo actualizar información de usuario." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1-64 letras en minúscula o números, sin signos de puntuación o espacios" diff --git a/locale/fa/LC_MESSAGES/statusnet.po b/locale/fa/LC_MESSAGES/statusnet.po index 7d5882d10b..3cf5fdd38a 100644 --- a/locale/fa/LC_MESSAGES/statusnet.po +++ b/locale/fa/LC_MESSAGES/statusnet.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:41+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:26+0000\n" "Last-Translator: Ahmad Sufi Mahmudi\n" "Language-Team: Persian \n" "MIME-Version: 1.0\n" @@ -27,9 +27,9 @@ msgstr "" "X-Language-Code: fa\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -80,6 +80,8 @@ msgstr "ذخیرهٔ تنظیمات دسترسی" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -87,6 +89,7 @@ msgstr "ذخیرهٔ تنظیمات دسترسی" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "ذخیره" @@ -759,6 +762,7 @@ msgstr "حساب کاربری" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "نام کاربری" @@ -838,6 +842,7 @@ msgstr "شما توانایی حذف وضعیت کاربر دیگری را ند #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "چنین پیامی وجود ندارد." @@ -1047,6 +1052,103 @@ msgstr "روش API در دست ساخت." msgid "User not found." msgstr "رابط مورد نظر پیدا نشد." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "برای ترک یک گروه، شما باید وارد شده باشید." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "چنین گروهی وجود ندارد." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "نام‌مستعار یا شناسه‌ای وجود ندارد." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "شما به سیستم وارد نشده اید." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "نمایه وجود ندارد." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "یک فهرست از کاربران در این گروه" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "نمی‌توان کاربر %1$s را عضو گروه %2$s کرد." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "وضعیت %1$s در %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1130,36 +1232,6 @@ msgstr "چنین پرونده‌ای وجود ندارد." msgid "Cannot delete someone else's favorite." msgstr "نمی‌توان پیام برگزیده را حذف کرد." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "چنین گروهی وجود ندارد." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1277,6 +1349,7 @@ msgstr "پیش‌نمایش" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1444,6 +1517,14 @@ msgstr "آزاد سازی کاربر" msgid "Post to %s" msgstr "فرستادن به %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s گروه %2$s را ترک کرد" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "بدون کد تصدیق." @@ -1503,6 +1584,7 @@ msgid "Notices" msgstr "پیام‌ها" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1577,6 +1659,7 @@ msgstr "برنامه یافت نشد." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "شما مالک این برنامه نیستید." @@ -1614,12 +1697,6 @@ msgstr "این برنامه حذف شود" msgid "You must be logged in to delete a group." msgstr "برای ترک یک گروه، شما باید وارد شده باشید." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "نام‌مستعار یا شناسه‌ای وجود ندارد." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1916,6 +1993,7 @@ msgid "You must be logged in to edit an application." msgstr "برای ویرایش یک برنامه باید وارد شده باشید." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "چنین برنامه‌ای وجود ندارد." @@ -2138,6 +2216,7 @@ msgstr "نمی‌توان نشانی را قانونی کرد" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "یک نشانی پست الکترونیکی معتبر نیست." @@ -2509,33 +2588,26 @@ msgstr "اعضای گروه %1$s، صفحهٔ %2$d" msgid "A list of the users in this group." msgstr "یک فهرست از کاربران در این گروه" -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "مدیر" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "بستن کاربر" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "اعضای گروه %s" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "کاربر یک مدیر گروه شود" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "اعضای گروه %1$s، صفحهٔ %2$d" -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "کاربر را مدیر کن" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "یک فهرست از کاربران در این گروه" #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2574,6 +2646,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "یک گروه جدید بساز" @@ -2953,21 +3026,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s به گروه %2$s پیوست" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "برای ترک یک گروه، شما باید وارد شده باشید." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "گروه ناشناخته." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "شما یک کاربر این گروه نیستید." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s گروه %2$s را ترک کرد" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3394,10 +3462,13 @@ msgid "Notice %s not found." msgstr "رابط مورد نظر پیدا نشد." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "این پیام نمایه‌ای ندارد." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "وضعیت %1$s در %2$s" @@ -3898,18 +3969,21 @@ msgstr "اطلاعات نمایه" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "۱-۶۴ کاراکتر کوچک یا اعداد، بدون نقطه گذاری یا فاصله" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "نام‌کامل" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "صفحهٔ خانگی" @@ -3939,6 +4013,7 @@ msgstr "شرح‌حال" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "موقعیت" @@ -3997,6 +4072,7 @@ msgid_plural "Bio is too long (maximum %d characters)." msgstr[0] "شرح‌حال خیلی طولانی است (بیشینه %d نویسه)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "منطقهٔ زمانی انتخاب نشده است." @@ -4719,71 +4795,103 @@ msgstr "کاربر این نقش را ندارد." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. #, fuzzy msgid "You cannot sandbox users on this site." msgstr "شما نمی توانید کاربری را در این سایت ساکت کنید." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. #, fuzzy msgid "User is already sandboxed." msgstr "کاربر قبلا ساکت شده است." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "نشست‌ها" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "نشست‌ها" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "مدیریت نشست‌ها" +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. #, fuzzy -msgid "Whether to handle sessions ourselves." +msgid "Handle sessions ourselves." msgstr "چنان‌که به کاربران اجازهٔ دعوت‌کردن کاربران تازه داده شود." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "اشکال‌زدایی نشست" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "خروجی اشکال‌زدایی برای نشست‌ها روشن شود." -#. TRANS: Submit button title. -msgid "Save" -msgstr "ذخیره‌کردن" - -msgid "Save site settings" -msgstr "ذخیرهٔ تنظیمات وب‌گاه" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "ذخیرهٔ تنظیمات دسترسی" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "برای دیدن یک برنامه باید وارد شده باشید." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "نمایهٔ برنامه" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "ساخته شده توسط %1$s - دسترسی %2$s به صورت پیش‌فرض - %3$d کاربر" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "ساخته شده توسط %1$s - دسترسی %2$s به صورت پیش‌فرض - %3$d کاربر" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "اعمال برنامه" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "ویرایش" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "حذف" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "اطلاعات برنامه" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "توجه: ما امضاهای HMAC-SHA1 را پشتیبانی می‌کنیم. ما روش امضای plaintext را " "پشتیبانی نمی‌کنیم." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "آیا مطمئن هستید که می‌خواهید کلید و رمز خریدار را دوباره تعیین کنید؟" @@ -4898,6 +5006,7 @@ msgstr "همهٔ اعضا" msgid "Statistics" msgstr "آمار" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4944,7 +5053,9 @@ msgstr "" "است. کاربران آن پیام‌های کوتاهی را دربارهٔ زندگی و علاقه‌مندی‌هایشان به اشتراک " "می‌گذارند. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "مدیران" @@ -4968,14 +5079,12 @@ msgstr "پیام به %1$s در %2$s" msgid "Message from %1$s on %2$s" msgstr "پیام از %1$s در %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "پیام پاک شد." -#, fuzzy -msgid "Notice" -msgstr "پیام‌ها" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s، صفحهٔ %2$d" @@ -5010,6 +5119,8 @@ msgstr "خوراک پیام‌های %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "خوراک پیام‌های %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "خوراک پیام‌های %s (Atom)" @@ -5075,90 +5186,140 @@ msgstr "" msgid "Repeat of %s" msgstr "تکرار %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "شما نمی توانید کاربری را در این سایت ساکت کنید." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "کاربر قبلا ساکت شده است." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "وب‌گاه" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "تنظیمات پایه برای این وب‌گاه StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "نام وب‌گاه باید طولی غیر صفر داشته باشد." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "شما باید یک نشانی پست الکترونیکی معتبر برای ارتباط داشته باشید." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "زبان «%s» ناشناس است." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "کمینهٔ محدودیت متن ۰ است (نامحدود)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "عمومی" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "نام وب‌گاه" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "نام وب‌گاه شما، مانند «میکروبلاگ شرکت شما»" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "آورده‌شده به وسیلهٔ" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "متن استفاده‌شده برای پیوند سازندگان در انتهای هر صفحه" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "آورده‌شده با نشانی اینترنتی" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "نشانی اینترنتی استفاده‌شده برای پیوند سازندگان در انتهای هر صفحه" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "پست الکترونیکی" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "نشانی پست الکترونیکی تماس برای وب‌گاه شما" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "محلی" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "منطقهٔ زمانی پیش‌فرض" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "منظقهٔ زمانی پیش‌فرض برای وب‌گاه؛ معمولا UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "زبان پیش‌فرض" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "شناسایی خودکار زبان وب‌گاه از راه تنظیمات مرورگر در دسترس نیست." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "محدودیت ها" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "محدودیت متن" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "بیشینهٔ تعداد نویسه‌ها برای پیام‌ها." +#. TRANS: Field label on site settings panel. #, fuzzy msgid "Dupe limit" msgstr "محدودیت متن" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "چه مدت کاربران باید منتظر بمانند (به ثانیه) تا همان چیز را دوباره بفرستند." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "ذخیرهٔ تنظیمات وب‌گاه" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "پیام وب‌گاه" @@ -5365,6 +5526,10 @@ msgstr "نشانی اینترنتی گزارش" msgid "Snapshots will be sent to this URL" msgstr "تصاویر لحظه‌ای به این نشانی اینترنتی فرستاده می‌شوند" +#. TRANS: Submit button title. +msgid "Save" +msgstr "ذخیره‌کردن" + msgid "Save snapshot settings" msgstr "ذخیرهٔ تنظیمات تصویر لحظه‌ای" @@ -5711,6 +5876,7 @@ msgstr "" "کردن» کلیک کنید." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5722,6 +5888,7 @@ msgid "Subscribe to this user." msgstr "مشترک شدن این کاربر" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6143,6 +6310,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6495,6 +6666,9 @@ msgstr "نمی توان تنظیمات طراحی شده را پاک کرد ." msgid "Home" msgstr "خانه" +msgid "Admin" +msgstr "مدیر" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "پیکربندی اولیه وب‌گاه" @@ -6534,6 +6708,10 @@ msgstr "پیکربندی مسیرها" msgid "Sessions configuration" msgstr "پیکربندی نشست‌ها" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "نشست‌ها" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "ویرایش پیام وب‌گاه" @@ -6640,6 +6818,7 @@ msgid "Describe your application" msgstr "برنامهٔ خود را توصیف کنید" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "توصیف" @@ -6756,6 +6935,10 @@ msgstr "بازداشتن" msgid "Block this user" msgstr "کاربر را مسدود کن" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "نتیجه دستور" @@ -6857,14 +7040,14 @@ msgid "Fullname: %s" msgstr "نام کامل : %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "موقعیت : %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7221,6 +7404,10 @@ msgstr "خطای پایگاه داده" msgid "Public" msgstr "عمومی" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "حذف" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "حذف این کاربر" @@ -7356,29 +7543,45 @@ msgstr "برو" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "۱-۶۴ کاراکتر کوچک یا اعداد، بدون نقطه گذاری یا فاصله" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "بستن کاربر" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "نشانی اینترنتی صفحهٔ‌خانگی یا وبلاگ گروه یا موضوع" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "گروه یا موضوع را توصیف کنید" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "گروه یا موضوع را در %d نویسه توصیف کنید" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "مکان گروه، در صورت وجود داشتن، مانند «شهر، ایالت (یا استان)، کشور»" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "نام های مستعار" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7389,6 +7592,27 @@ msgid_plural "" msgstr[0] "" "نام‌های مستعار اضافی برای گروه، با کاما- یا فاصله- جدا شود، بیشینه %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "عضو شده از" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "مدیر" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7413,6 +7637,21 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "اعضای گروه %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7602,35 +7841,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s اکنون پیام‌های شما را در %2$s دنبال می‌کند." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s اکنون پیام‌های شما را در %2$s دنبال می‌کند.\n" "\n" @@ -7643,12 +7869,26 @@ msgstr "" "----\n" "نشانی پست الکترونیک یا گزینه‌های آگاه‌سازی را در %8$s تغییر دهید\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "نمایه" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "شرح‌حال: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7664,10 +7904,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "شما یک نشانی ارسال تازه در %1$s دارید.\n" "\n" @@ -7702,8 +7939,8 @@ msgstr "شما توسط %s یادآوری شدید." #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7712,10 +7949,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) کنجکاو است که این روزها چکار می‌کنید و شما را برای فرستادن " "خبرهایی دعوت کرده است.\n" @@ -7738,8 +7972,7 @@ msgstr "پیام خصوصی تازه از %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7751,10 +7984,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) یک پیام خصوصی برای شما فرستاده است:\n" "\n" @@ -7782,7 +8012,7 @@ msgstr "پیام شما را به برگزیده‌های خود اضافه کر #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7796,10 +8026,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) پیام شما در %2$s را به‌عنوان یکی از برگزیده‌هایشان افزوده است.\n" "\n" @@ -7840,14 +8067,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) به توجه شما یک پیام فرستاد" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7863,12 +8089,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) یک پاسخ به پیام شما (یک «@-پاسخ») در %2$s داده است.\n" "\n" @@ -7893,6 +8114,31 @@ msgstr "" "\n" "پ.ن. شما می‌توانید این آگاه‌سازی با نامه را این‌جا خاموش کنید:%8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s به گروه %2$s پیوست." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s به گروه %2$s پیوست." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "تنها کاربران می تواند صندوق نامهٔ خودشان را بخوانند." @@ -7929,6 +8175,20 @@ msgstr "با عرض پوزش، اجازه‌ی ورودی پست الکترون msgid "Unsupported message type: %s" msgstr "نوع پیام پشتیبانی نشده است: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "کاربر یک مدیر گروه شود" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "کاربر را مدیر کن" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8622,9 +8882,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "نمی‌توان کاربر را به‌هنگام‌سازی کرد." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "نمی‌توان اطلاعات کاربر را به روز کرد." +#~ msgid "Notice" +#~ msgstr "پیام‌ها" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "۱-۶۴ کاراکتر کوچک یا اعداد، بدون نقطه گذاری یا فاصله" diff --git a/locale/fi/LC_MESSAGES/statusnet.po b/locale/fi/LC_MESSAGES/statusnet.po index b1e92fcc04..15150a9210 100644 --- a/locale/fi/LC_MESSAGES/statusnet.po +++ b/locale/fi/LC_MESSAGES/statusnet.po @@ -16,17 +16,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:43+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:28+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -78,6 +78,8 @@ msgstr "Tallenna käyttöoikeusasetukset" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -85,6 +87,7 @@ msgstr "Tallenna käyttöoikeusasetukset" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Tallenna" @@ -385,11 +388,11 @@ msgstr "Viestissä ei ole tekstiä!" #. TRANS: %d is the maximum number of characters for a message. #. TRANS: Form validation error displayed when message content is too long. #. TRANS: %d is the maximum number of characters for a message. -#, fuzzy, php-format +#, php-format msgid "That's too long. Maximum message size is %d character." msgid_plural "That's too long. Maximum message size is %d characters." -msgstr[0] "Päivitys on liian pitkä. Maksimipituus on %d merkki." -msgstr[1] "Päivitys on liian pitkä. Maksimipituus on %d merkkiä." +msgstr[0] "Viesti on liian pitkä. Viestin enimmäispituus on yksi merkki." +msgstr[1] "Viesti on liian pitkä. Viestin enimmäispituus on %d merkkiä." #. TRANS: Client error displayed if a recipient user could not be found (403). msgid "Recipient user not found." @@ -754,6 +757,7 @@ msgstr "Käyttäjätili" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Tunnus" @@ -833,6 +837,7 @@ msgstr "Et voi poistaa toisen käyttäjän päivitystä." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Päivitystä ei ole." @@ -923,7 +928,7 @@ msgstr "Käyttäjän %1$s päivitys %2$s" #. TRANS: %3$s is a user nickname. #, php-format msgid "%1$s updates favorited by %2$s / %3$s." -msgstr "Käyttäjän %2$s / %3$s suosikit palvelussa %1$s." +msgstr "Käyttäjän %2$s / %3$s suosikit sivulla %1$s." #. TRANS: Title for timeline of most recent mentions of a user. #. TRANS: %1$s is the StatusNet sitename, %2$s is a user nickname. @@ -992,7 +997,7 @@ msgstr "Käyttäjän %1$s suosikit palvelussa %2$s!" #. TRANS: Client error displayed trying to add a notice to another user's timeline. msgid "Only the user can add to their own timeline." -msgstr "Vain käyttäjä voi lisätä viestejä omalle aikajanalleen." +msgstr "Vain käyttäjä itse voi lisätä viestejä omalle aikajanalleen." #. TRANS: Client error displayed when using another format than AtomPub. msgid "Only accept AtomPub for Atom feeds." @@ -1040,6 +1045,103 @@ msgstr "API-metodi on työn alla!" msgid "User not found." msgstr "API-metodia ei löytynyt." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Sinun pitää olla kirjautunut sisään, jotta voit erota ryhmästä." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Tuota ryhmää ei ole." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Tunnusta tai ID:tä ei ole." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Et ole kirjautunut sisään." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Käyttäjällä ei ole profiilia." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Lista ryhmän käyttäjistä." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Käyttäjä %1$s ei voinut liittyä ryhmään %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Käyttäjän %1$s päivitys %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1050,12 +1152,12 @@ msgstr "Profiilia ei löydy." #. TRANS: %1$s is a user nickname, %2$s is the StatusNet sitename. #, php-format msgid "Notices %1$s has favorited on %2$s" -msgstr "Ilmoitukset joita %1$s on lisännyt suosikiksi palvelussa %2$s" +msgstr "Käyttäjän %1$s lempi-ilmoitukset sivulla %2$s" #. TRANS: Client exception thrown when trying to set a favorite for another user. #. TRANS: Client exception thrown when trying to subscribe another user. msgid "Cannot add someone else's subscription." -msgstr "Ei voi lisätä tietoja vieraaseen liittymään." +msgstr "Ei voi lisätä muuttaa toisen käyttäjän tilauksia." #. TRANS: Client exception thrown when trying use an incorrect activity verb for the Atom pub method. msgid "Can only handle favorite activities." @@ -1087,7 +1189,7 @@ msgstr "Ryhmät, joiden jäsen %1$s on palvelimella %2$s" #. TRANS: Client exception thrown when trying subscribe someone else to a group. msgid "Cannot add someone else's membership." -msgstr "Ei voi lisätä jäsenyyttä vieraan tiliin." +msgstr "Ei voi lisätä toista jäseneksi." #. TRANS: Client error displayed when not using the POST verb. #. TRANS: Do not translate POST. @@ -1114,43 +1216,13 @@ msgstr "Suosikkia ei ole." msgid "Cannot delete someone else's favorite." msgstr "Et voi poistaa jonkin toisen käyttäjän suosikkia." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Tuota ryhmää ei ole." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Et ole jäsen." #. TRANS: Client exception thrown when deleting someone else's membership. msgid "Cannot delete someone else's membership." -msgstr "Et voi poistaa vieraan käyttäjän jäsenyyttä." +msgstr "Et voi poistaa toisen käyttäjän jäsenyyttä." #. TRANS: Client exception thrown when trying to display a subscription for a non-existing profile ID. #. TRANS: %d is the non-existing profile ID number. @@ -1166,7 +1238,7 @@ msgstr "Et ole tilannut tämän käyttäjän päivityksiä." #. TRANS: Client exception thrown when trying to delete a subscription of another user. msgid "Cannot delete someone else's subscription." -msgstr "Et voi poistaa vieraan käyttäjän tilausta." +msgstr "Et voi toisen vieraan käyttäjän tilausta." #. TRANS: Subtitle for Atom subscription feed. #. TRANS: %1$s is a user nickname, %s$s is the StatusNet sitename. @@ -1192,7 +1264,7 @@ msgstr "Profiili %s on tuntematon." #. TRANS: %s is the profile the user already has a subscription on. #, php-format msgid "Already subscribed to %s." -msgstr "Tilaus %s on jo tilattu." +msgstr "Profiili %s on jo tilattu." #. TRANS: Client error displayed trying to get a non-existing attachment. msgid "No such attachment." @@ -1257,6 +1329,7 @@ msgstr "Esikatselu" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Poista" @@ -1421,6 +1494,14 @@ msgstr "Poista esto tältä käyttäjältä" msgid "Post to %s" msgstr "Vastaukset käyttäjälle %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "Käyttäjän %1$s päivitys %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Varmistuskoodia ei ole annettu." @@ -1479,6 +1560,7 @@ msgid "Notices" msgstr "Päivitykset" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1554,6 +1636,7 @@ msgstr "Vahvistuskoodia ei löytynyt." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Et ole tämän sovelluksen omistaja." @@ -1588,12 +1671,6 @@ msgstr "Poista tämä sovellus." msgid "You must be logged in to delete a group." msgstr "Sinun pitää olla kirjautunut sisään, jotta voit poistaa ryhmän." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Tunnusta tai ID:tä ei ole." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Sinulla ei ole oikeutta poistaa tätä ryhmää." @@ -1723,7 +1800,7 @@ msgstr "Virheellinen logon URL-osoite." #. TRANS: Client error displayed when an SSL logo URL is invalid. msgid "Invalid SSL logo URL." -msgstr "Virheellinen SSL logon URL-osoite." +msgstr "Virheellinen logon salattu URL-osoite." #. TRANS: Client error displayed when a theme is submitted through the form that is not in the theme list. #. TRANS: %s is the chosen unavailable theme. @@ -1757,7 +1834,7 @@ msgstr "Teema sivustolle." #. TRANS: Field label for uploading a cutom theme. msgid "Custom theme" -msgstr "Mukautettu teema" +msgstr "Mukautettu ulkoasu" #. TRANS: Form instructions for uploading a cutom StatusNet theme. msgid "You can upload a custom StatusNet theme as a .ZIP archive." @@ -1869,9 +1946,10 @@ msgstr "Muokkaa sovellusta" #. TRANS: Client error displayed trying to edit an application while not logged in. msgid "You must be logged in to edit an application." -msgstr "Sinun täytyy olla kirjautuneena muokataksesi sovellusta." +msgstr "Sovelluksen muokkaaminen vaatii sisäänkirjautumisen." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Sovellusta ei ole." @@ -2091,6 +2169,7 @@ msgstr "Tätä sähköpostiosoitetta ei voi normalisoida." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Tuo ei ole kelvollinen sähköpostiosoite." @@ -2235,7 +2314,7 @@ msgstr "Esittelyssä olevat käyttäjät, sivu %d" #. TRANS: Description on page displaying featured users. #, php-format msgid "A selection of some great users on %s." -msgstr "Valikoima hienoja käyttäjiä palvelussa %s." +msgstr "Valikoima sivuston %s hienoja käyttäjiä." #. TRANS: Client error displayed when no notice ID was given trying do display a file. msgid "No notice ID." @@ -2453,33 +2532,26 @@ msgstr "Ryhmän %s jäsenet" msgid "A list of the users in this group." msgstr "Lista ryhmän käyttäjistä." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Ylläpito" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Estä" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s ryhmien jäsenyydet" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Estä tämä käyttäjä" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Ryhmän %s jäsenet" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Tee tästä käyttäjästä ylläpitäjä" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Tee ylläpitäjäksi" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Tee tästä käyttäjästä ylläpitäjä" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Lista ryhmän käyttäjistä." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2512,6 +2584,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Luo uusi ryhmä" @@ -2521,9 +2594,9 @@ 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 "" -"Hae ryhmiä palvelusta %%site.name%% nimen, sijainnin tai kuvauksen " -"perusteella. Erota hakutermit käyttäen välilyöntejä; hakutermien tulee olla " -"kolmen tai useamman merkin pituisia." +"Voit hakea ryhmiä sivustolta %%site.name%% nimen, sijainnin tai kuvauksen " +"perusteella. Erota hakusanat käyttäen välilyöntejä. Hakusanojen tulee olla " +"vähintään kolmen kirjaimen pituisia." #. TRANS: Title for page where groups can be searched. msgid "Group search" @@ -2765,11 +2838,10 @@ msgstr[1] "" #. TRANS: Message displayed inviting users to use a StatusNet site. Plural form is #. TRANS: based on the number of invitations sent. Followed by a bullet list of #. TRANS: e-mail addresses to which invitations were sent. -#, fuzzy msgid "Invitation sent to the following person:" msgid_plural "Invitations sent to the following people:" msgstr[0] "Kutsu lähetettiin seuraavalle henkilölle:" -msgstr[1] "Kutsut lähetettiin seuraaville henkilöille:" +msgstr[1] "Kutsu lähetettiin seuraaville henkilöille:" #. TRANS: Generic message displayed after sending out one or more invitations to #. TRANS: people to join a StatusNet site. @@ -2888,21 +2960,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%s liittyi ryhmään %s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Sinun pitää olla kirjautunut sisään, jotta voit erota ryhmästä." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Tuntematon ryhmä." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Sinä et kuulu tähän ryhmään." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "Käyttäjän %1$s päivitys %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3342,10 +3409,13 @@ msgid "Notice %s not found." msgstr "API-metodia ei löytynyt." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Käyttäjällä ei ole profiilia." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Käyttäjän %1$s päivitys %2$s" @@ -3851,6 +3921,7 @@ msgstr "Profiilitieto" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" @@ -3859,12 +3930,14 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Koko nimi" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Kotisivu" @@ -3895,6 +3968,7 @@ msgstr "Tietoja" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Kotipaikka" @@ -3957,6 +4031,7 @@ msgstr[0] "kuvaus on liian pitkä (max %d merkkiä)." msgstr[1] "kuvaus on liian pitkä (max %d merkkiä)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Aikavyöhykettä ei ole valittu." @@ -4683,71 +4758,100 @@ msgstr "Käyttäjälle ei löydy profiilia" msgid "StatusNet" msgstr "Päivitys poistettu." +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. #, fuzzy msgid "You cannot sandbox users on this site." msgstr "Et voi lähettää viestiä tälle käyttäjälle." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. #, fuzzy msgid "User is already sandboxed." msgstr "Käyttäjä on asettanut eston sinulle." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" -msgstr "" +msgstr "Omat" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Omat" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +msgid "Handle sessions ourselves." msgstr "" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Tallenna" - +#. TRANS: Title for submit button on the sessions administration panel. #, fuzzy -msgid "Save site settings" -msgstr "Profiilikuva-asetukset" +msgid "Save session settings" +msgstr "Tallenna käyttöoikeusasetukset" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. #, fuzzy msgid "You must be logged in to view an application." msgstr "Sinun pitää olla kirjautunut sisään, jotta voit erota ryhmästä." +#. TRANS: Header on the OAuth application page. #, fuzzy msgid "Application profile" msgstr "Päivitykselle ei ole profiilia" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "" +#. TRANS: Link text to edit application on the OAuth application page. +msgctxt "EDITAPP" +msgid "Edit" +msgstr "" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Poista" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. #, fuzzy msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Oletko varma että haluat poistaa tämän päivityksen?" @@ -4857,6 +4961,7 @@ msgstr "Kaikki jäsenet" msgid "Statistics" msgstr "Tilastot" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4894,7 +4999,9 @@ msgstr "" "**%s** on ryhmä palvelussa %%%%site.name%%%%, joka on [mikroblogauspalvelu]" "(http://en.wikipedia.org/wiki/Micro-blogging)" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Ylläpitäjät" @@ -4918,13 +5025,12 @@ msgstr "Viesti käyttäjälle %1$s, %2$s" msgid "Message from %1$s on %2$s" msgstr "Viesti käyttäjältä %1$s, %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Päivitys on poistettu." -msgid "Notice" -msgstr "Päivitykset" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "Ryhmät, sivu %d" @@ -4959,6 +5065,8 @@ msgstr "Syöte ryhmän %s päivityksille (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Syöte ryhmän %s päivityksille (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Syöte ryhmän %s päivityksille (Atom)" @@ -5018,95 +5126,138 @@ msgstr "" msgid "Repeat of %s" msgstr "Vastaukset käyttäjälle %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. #, fuzzy msgid "You cannot silence users on this site." msgstr "Et voi lähettää viestiä tälle käyttäjälle." +#. TRANS: Client error displayed trying to silence an already silenced user. #, fuzzy msgid "User is already silenced." msgstr "Käyttäjä on asettanut eston sinulle." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Kutsu" + +#. TRANS: Instructions for site administration panel. #, fuzzy msgid "Basic settings for this StatusNet site" msgstr "Ulkoasuasetukset tälle StatusNet palvelulle." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "" +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Tuo ei ole kelvollinen sähköpostiosoite." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +msgctxt "LEGEND" msgid "General" msgstr "" +#. TRANS: Field label on site settings panel. #, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Palvelun ilmoitus" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Sähköposti" +#. TRANS: Field title on site settings panel. #, fuzzy -msgid "Contact email address for your site" +msgid "Contact email address for your site." msgstr "Uusi sähköpostiosoite päivityksien lähettämiseen palveluun %s" +#. TRANS: Fieldset legend on site settings panel. #, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Paikalliset näkymät" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "" +#. TRANS: Dropdown label on site settings panel. #, fuzzy msgid "Default language" msgstr "Ensisijainen kieli" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +msgctxt "LEGEND" msgid "Limits" msgstr "" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +#, fuzzy +msgid "Save site settings" +msgstr "Profiilikuva-asetukset" + #. TRANS: Page title for site-wide notice tab in admin panel. #, fuzzy msgid "Site Notice" @@ -5318,6 +5469,10 @@ msgstr "" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Tallenna" + #, fuzzy msgid "Save snapshot settings" msgstr "Profiilikuva-asetukset" @@ -5667,6 +5822,7 @@ msgstr "" "paina \"Peruuta\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5678,6 +5834,7 @@ msgid "Subscribe to this user." msgstr "Tilaa tämä käyttäjä" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6098,6 +6255,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6459,6 +6620,9 @@ msgstr "Twitter-asetuksia ei voitu tallentaa!" msgid "Home" msgstr "Kotisivu" +msgid "Admin" +msgstr "Ylläpito" + #. TRANS: Menu item title/tooltip #, fuzzy msgid "Basic site configuration" @@ -6506,6 +6670,10 @@ msgstr "SMS vahvistus" msgid "Sessions configuration" msgstr "SMS vahvistus" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "" + #. TRANS: Menu item title/tooltip #, fuzzy msgid "Edit site notice" @@ -6615,6 +6783,7 @@ msgid "Describe your application" msgstr "Kuvaus" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Kuvaus" @@ -6737,6 +6906,10 @@ msgstr "Estä" msgid "Block this user" msgstr "Estä tämä käyttäjä" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Komennon tulos" @@ -6836,14 +7009,14 @@ msgid "Fullname: %s" msgstr "Koko nimi: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Kotipaikka: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7208,6 +7381,10 @@ msgstr "Tietokantavirhe" msgid "Public" msgstr "Julkinen" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Poista" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Poista käyttäjä" @@ -7346,25 +7523,35 @@ msgstr "Mene" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"1-64 pientä kirjainta tai numeroa, ei ääkkösiä eikä välimerkkejä tai " -"välilyöntejä" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Estä" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Estä tämä käyttäjä" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "Ryhmän tai aiheen kotisivun tai blogin osoite" +#. TRANS: Text area title for group description when there is no text limit. #, fuzzy -msgid "Describe the group or topic" +msgid "Describe the group or topic." msgstr "Kuvaile ryhmää tai aihetta 140 merkillä" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Kuvaile itseäsi ja kiinnostuksen kohteitasi %d merkillä" msgstr[1] "Kuvaile itseäsi ja kiinnostuksen kohteitasi %d merkillä" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." @@ -7372,9 +7559,12 @@ msgstr "" "Ryhmän paikka, jos sellainen on, kuten \"Kaupunki, Maakunta (tai Lääni), Maa" "\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Aliakset" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7385,6 +7575,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Käyttäjänä alkaen" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Ylläpito" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7409,6 +7620,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Ryhmän %s jäsenet" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7588,35 +7815,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s seuraa nyt päivityksiäsi palvelussa %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s seuraa nyt päivityksiäsi palvelussa %2$s.\n" "\n" @@ -7629,12 +7843,26 @@ msgstr "" "----\n" "Voit vaihtaa sähköpostiosoitetta tai ilmoitusasetuksiasi %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profiili" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Kotipaikka: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7650,10 +7878,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Sinulla on uusi päivityksien lähetysosoite palvelussa %1$s.\n" "\n" @@ -7688,7 +7913,7 @@ msgstr "%s tönäisi sinua" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7698,10 +7923,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7713,7 +7935,6 @@ msgstr "Uusi yksityisviesti käyttäjältä %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7726,10 +7947,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7757,10 +7975,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7778,14 +7993,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7801,12 +8015,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%s liittyi ryhmään %s" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "Käyttäjän %2$s / %3$s suosikit sivulla %1$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7845,6 +8079,20 @@ msgstr "Valitettavasti päivitysten teko sähköpostilla ei ole sallittua." msgid "Unsupported message type: %s" msgstr "Kuvatiedoston formaattia ei ole tuettu." +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Tee tästä käyttäjästä ylläpitäjä" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Tee ylläpitäjäksi" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Tee tästä käyttäjästä ylläpitäjä" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8558,8 +8806,10 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Käyttäjän päivitys epäonnistui." +#~ msgid "Notice" +#~ msgstr "Päivitykset" -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Käyttäjän pikaviestinasetusten päivittäminen epäonnistui." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1-64 pientä kirjainta tai numeroa, ei ääkkösiä eikä välimerkkejä tai " +#~ "välilyöntejä" diff --git a/locale/fr/LC_MESSAGES/statusnet.po b/locale/fr/LC_MESSAGES/statusnet.po index c597021e9d..7599dfd4fe 100644 --- a/locale/fr/LC_MESSAGES/statusnet.po +++ b/locale/fr/LC_MESSAGES/statusnet.po @@ -3,6 +3,7 @@ # # Author: Brion # Author: Crochet.david +# Author: Hashar # Author: IAlex # Author: Isoph # Author: Jean-Frédéric @@ -21,17 +22,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:44+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:29+0000\n" "Language-Team: French \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fr\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -82,6 +83,8 @@ msgstr "Sauvegarder les paramètres d’accès" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -89,6 +92,7 @@ msgstr "Sauvegarder les paramètres d’accès" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Enregistrer" @@ -408,11 +412,10 @@ msgid "Recipient user not found." msgstr "Destinataire non trouvé." #. TRANS: Client error displayed trying to direct message another user who's not a friend (403). -#, fuzzy msgid "Cannot send direct messages to users who aren't your friend." msgstr "" -"Vous ne pouvez envoyer des messages personnels qu’aux utilisateurs inscrits " -"comme amis." +"Impossible d’envoyer des messages directement aux utilisateurs qui ne sont " +"pas votre ami." #. TRANS: Client error displayed trying to direct message self (403). msgid "" @@ -668,7 +671,6 @@ msgstr "" #. TRANS: API validation exception thrown when alias is the same as nickname. #. TRANS: Group create form validation error. -#, fuzzy msgid "Alias cannot be the same as nickname." msgstr "L’alias ne peut pas être le même que le pseudo." @@ -773,6 +775,7 @@ msgstr "Compte" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Pseudo" @@ -852,6 +855,7 @@ msgstr "Vous ne pouvez pas supprimer le statut d’un autre utilisateur." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Avis non trouvé." @@ -876,9 +880,9 @@ msgstr "Méthode HTTP non trouvée !" #. TRANS: Exception thrown requesting an unsupported notice output format. #. TRANS: %s is the requested output format. -#, fuzzy, php-format +#, php-format msgid "Unsupported format: %s." -msgstr "Format non supporté : %s" +msgstr "Format non pris en charge : %s." #. TRANS: Client error displayed requesting a deleted status. msgid "Status deleted." @@ -985,9 +989,9 @@ msgstr "Repris pour %s" #. TRANS: Subtitle for API action that shows most recent notices that are repeats in user's inbox. #. TRANS: %1$s is the sitename, %2$s is a user nickname, %3$s is a user profile name. -#, fuzzy, php-format +#, php-format msgid "%1$s notices that were to repeated to %2$s / %3$s." -msgstr "%1$s statuts en réponses aux statuts de %2$s / %3$s." +msgstr "%1$s avis qui ont été répétées à %2$s / %3$s." #. TRANS: Title of list of repeated notices of the logged in user. #. TRANS: %s is the nickname of the logged in user. @@ -995,9 +999,9 @@ msgstr "%1$s statuts en réponses aux statuts de %2$s / %3$s." msgid "Repeats of %s" msgstr "Reprises de %s" -#, fuzzy, php-format +#, php-format msgid "%1$s notices that %2$s / %3$s has repeated." -msgstr "%1$s a marqué l’avis %2$s comme favori." +msgstr "%1$s avis que %2$s / %3$s a répété." #. TRANS: Title for timeline with lastest notices with a given tag. #. TRANS: %s is the tag. @@ -1022,9 +1026,8 @@ msgid "Only accept AtomPub for Atom feeds." msgstr "N’accepte que AtomPub pour les flux atom." #. TRANS: Client error displayed attempting to post an empty API notice. -#, fuzzy msgid "Atom post must not be empty." -msgstr "Une publication Atom doit être une entrée « Atom »." +msgstr "Un post atom ne doit pas être vide." #. TRANS: Client error displayed attempting to post an API that is not well-formed XML. #, fuzzy @@ -1036,9 +1039,8 @@ msgid "Atom post must be an Atom entry." msgstr "Une publication Atom doit être une entrée « Atom »." #. TRANS: Client error displayed when not using the POST verb. Do not translate POST. -#, fuzzy msgid "Can only handle POST activities." -msgstr "Ne peut gérer que les activités de publication." +msgstr "Ne peut traiter que des activités POST." #. TRANS: Client error displayed when using an unsupported activity object type. #. TRANS: %s is the unsupported activity object type. @@ -1048,9 +1050,9 @@ msgstr "Ne peut gérer l’objet d’activité de type « %s »" #. TRANS: Client error displayed when posting a notice without content through the API. #. TRANS: %d is the notice ID (number). -#, fuzzy, php-format +#, php-format msgid "No content for notice %d." -msgstr "Chercher dans le contenu des avis" +msgstr "Aucun contenu pour avis %d." #. TRANS: Client error displayed when using another format than AtomPub. #. TRANS: %s is the notice URI. @@ -1066,6 +1068,103 @@ msgstr "Méthode API en construction." msgid "User not found." msgstr "Page non trouvée." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Vous devez ouvrir une session pour quitter un groupe." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Aucun groupe trouvé." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Aucun pseudo ou ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Non connecté." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Profil manquant." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Liste des utilisateurs inscrits à ce groupe." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Impossible d’inscrire l’utilisateur %1$s au groupe %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Statut de %1$s sur %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1151,36 +1250,6 @@ msgstr "Fichier non trouvé." msgid "Cannot delete someone else's favorite." msgstr "Impossible de supprimer le favori." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Aucun groupe trouvé." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1300,6 +1369,7 @@ msgstr "Aperçu" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Supprimer" @@ -1464,6 +1534,14 @@ msgstr "Débloquer cet utilisateur" msgid "Post to %s" msgstr "Poster sur %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s a quitté le groupe %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Aucun code de confirmation." @@ -1522,6 +1600,7 @@ msgid "Notices" msgstr "Avis" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1598,6 +1677,7 @@ msgstr "Application non trouvée." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Vous n’êtes pas le propriétaire de cette application." @@ -1634,12 +1714,6 @@ msgstr "Supprimer cette application" msgid "You must be logged in to delete a group." msgstr "Vous devez ouvrir une session pour supprimer un groupe." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Aucun pseudo ou ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Vous n’êtes pas autorisé à supprimer ce groupe." @@ -1736,7 +1810,6 @@ msgid "You can only delete local users." msgstr "Vous pouvez seulement supprimer les utilisateurs locaux." #. TRANS: Title of delete user page. -#, fuzzy msgctxt "TITLE" msgid "Delete user" msgstr "Supprimer l’utilisateur" @@ -1754,12 +1827,10 @@ msgstr "" "données à son propos de la base de données, sans sauvegarde." #. TRANS: Submit button title for 'No' when deleting a user. -#, fuzzy msgid "Do not delete this user." msgstr "Ne pas supprimer ce groupe" #. TRANS: Submit button title for 'Yes' when deleting a user. -#, fuzzy msgid "Delete this user." msgstr "Supprimer cet utilisateur" @@ -1857,7 +1928,6 @@ msgid "Tile background image" msgstr "Répéter l’image d’arrière plan" #. TRANS: Fieldset legend for theme colors. -#, fuzzy msgid "Change colors" msgstr "Modifier les couleurs" @@ -1934,6 +2004,7 @@ msgid "You must be logged in to edit an application." msgstr "Vous devez être connecté pour modifier une application." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Application non trouvée." @@ -2151,6 +2222,7 @@ msgstr "Impossible d’utiliser cette adresse courriel" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Adresse courriel invalide." @@ -2527,33 +2599,26 @@ msgstr "Membres du groupe %1$s - page %2$d" msgid "A list of the users in this group." msgstr "Liste des utilisateurs inscrits à ce groupe." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administrer" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloquer" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Membres du groupe %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloquer cet utilisateur" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Membres du groupe %1$s - page %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Faire de cet utilisateur un administrateur du groupe" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Rendre administrateur" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Faire de cet utilisateur un administrateur" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Liste des utilisateurs inscrits à ce groupe." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2593,6 +2658,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Créer un nouveau groupe" @@ -2982,26 +3048,21 @@ msgid "You must be logged in to join a group." msgstr "Vous devez ouvrir une session pour rejoindre un groupe." #. TRANS: Title for join group page after joining. -#, fuzzy, php-format +#, php-format msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s a rejoint le groupe %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Vous devez ouvrir une session pour quitter un groupe." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Inconnu" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Vous n’êtes pas membre de ce groupe." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s a quitté le groupe %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3442,10 +3503,13 @@ msgid "Notice %s not found." msgstr "L’avis parent correspondant à cette réponse n’a pas été trouvé." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "L’avis n’a pas de profil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Statut de %1$s sur %2$s" @@ -3522,7 +3586,6 @@ msgstr "" "Cette boîte d’envoi regroupe les messages personnels que vous avez envoyés." #. TRANS: Title for page where to change password. -#, fuzzy msgctxt "TITLE" msgid "Change password" msgstr "Changer de mot de passe" @@ -3547,12 +3610,10 @@ msgstr "Nouveau mot de passe" #. TRANS: Field title on page where to change password. #. TRANS: Field title on account registration page. -#, fuzzy msgid "6 or more characters." msgstr "6 caractères ou plus" #. TRANS: Field label on page where to change password. In this field the new password should be typed a second time. -#, fuzzy msgctxt "LABEL" msgid "Confirm" msgstr "Confirmer" @@ -3930,17 +3991,20 @@ msgstr "Information de profil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nom complet" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Site personnel" @@ -3971,6 +4035,7 @@ msgstr "Bio" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Emplacement" @@ -4032,6 +4097,7 @@ msgstr[0] "La biographie est trop longue (limitée à %d caractère maximum)." msgstr[1] "La biographie est trop longue (limitée à %d caractères maximum)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Aucun fuseau horaire n’a été choisi." @@ -4769,69 +4835,103 @@ msgstr "L'utilisateur ne possède pas ce rôle." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "" "Vous ne pouvez pas mettre des utilisateur dans le bac à sable sur ce site." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "L’utilisateur est déjà dans le bac à sable." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessions" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Paramètres de session pour ce site StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessions" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Gérer les sessions" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "S’il faut gérer les sessions nous-même." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Déboguage de session" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Activer la sortie de déboguage pour les sessions." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Enregistrer" - -msgid "Save site settings" -msgstr "Sauvegarder les paramètres du site" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Sauvegarder les paramètres d’accès" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Vous devez être connecté pour voir une application." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Profil de l’application" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Créé par %1$s - accès %2$s par défaut - %3$d utilisateurs" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Créé par %1$s - accès %2$s par défaut - %3$d utilisateurs" +msgstr[1] "Créé par %1$s - accès %2$s par défaut - %3$d utilisateurs" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Actions de l’application" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Modifier" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Réinitialiser la clé et le secret" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Supprimer" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Informations sur l’application" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Note : Nous utilisons les signatures HMAC-SHA1. Nous n’utilisons pas la " "méthode de signature en texte clair." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Voulez-vous vraiment réinitialiser votre clé consommateur et secrète ?" @@ -4947,6 +5047,7 @@ msgstr "Tous les membres" msgid "Statistics" msgstr "Statistiques" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Créé" @@ -4990,7 +5091,9 @@ msgstr "" "logiciel libre [StatusNet](http://status.net/). Ses membres partagent des " "messages courts à propos de leur vie et leurs intérêts. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administrateurs" @@ -5016,13 +5119,12 @@ msgstr "Message adressé à %1$s le %2$s" msgid "Message from %1$s on %2$s" msgstr "Message reçu de %1$s le %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Avis supprimé." -msgid "Notice" -msgstr "Avis" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s a marqué « %2$s »" @@ -5057,6 +5159,8 @@ msgstr "Flux des avis de %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Flux des avis de %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Flux des avis de %s (Atom)" @@ -5123,92 +5227,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Reprises de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Vous ne pouvez pas réduire des utilisateurs au silence sur ce site." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Cet utilisateur est déjà réduit au silence." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Site" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Paramètres basiques pour ce site StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Le nom du site ne peut pas être vide." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Vous devez avoir une adresse électronique de contact valide." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Langue « %s » inconnue." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "La limite minimale de texte est de 0 caractères (illimité)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "La limite de doublon doit être d’une seconde ou plus." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Général" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nom du site" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Le nom de votre site, comme « Microblog de votre compagnie »" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Apporté par" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Texte utilisé pour le lien de crédits au bas de chaque page" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Apporté par URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL utilisée pour le lien de crédits au bas de chaque page" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Courriel" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Adresse de courriel de contact de votre site" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Local" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Zone horaire par défaut" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Zone horaire par défaut pour ce site ; généralement UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Langue par défaut" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Langue du site lorsque la détection automatique des paramètres du navigateur " "n'est pas disponible" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limites" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Limite de texte" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Nombre maximal de caractères pour les avis." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Limite de doublons" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Combien de temps (en secondes) les utilisateurs doivent attendre pour poster " "la même chose de nouveau." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Sauvegarder les paramètres du site" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Avis du site" @@ -5420,6 +5574,10 @@ msgstr "URL de rapport" msgid "Snapshots will be sent to this URL" msgstr "Les instantanés seront envoyés à cette URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Enregistrer" + msgid "Save snapshot settings" msgstr "Sauvegarder les paramètres des instantanés" @@ -5769,6 +5927,7 @@ msgstr "" "abonner aux avis de quelqu’un, cliquez « Rejeter »." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5780,6 +5939,7 @@ msgid "Subscribe to this user." msgstr "S’abonner à cet utilisateur" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6218,6 +6378,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6575,6 +6739,9 @@ msgstr "Impossible de supprimer les paramètres de conception." msgid "Home" msgstr "Site personnel" +msgid "Admin" +msgstr "Administrer" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configuration basique du site" @@ -6614,6 +6781,10 @@ msgstr "Configuration des chemins" msgid "Sessions configuration" msgstr "Configuration des sessions" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessions" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Modifier l'avis du site" @@ -6722,6 +6893,7 @@ msgid "Describe your application" msgstr "Décrivez votre application" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Description" @@ -6839,6 +7011,10 @@ msgstr "Bloquer" msgid "Block this user" msgstr "Bloquer cet utilisateur" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Résultats de la commande" @@ -6938,14 +7114,14 @@ msgid "Fullname: %s" msgstr "Nom complet : %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Emplacement : %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7312,6 +7488,10 @@ msgstr "Erreur de la base de données" msgid "Public" msgstr "Public" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Supprimer" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Supprimer cet utilisateur" @@ -7443,30 +7623,46 @@ msgstr "Aller" msgid "Grant this user the \"%s\" role" msgstr "Accorder le rôle « %s » à cet utilisateur" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloquer" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloquer cet utilisateur" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "Adresse URL du site web ou blogue pour le groupe ou sujet." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Description du groupe ou du sujet" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Description du groupe ou du sujet, en %d caractère ou moins" msgstr[1] "Description du groupe ou du sujet, en %d caractères ou moins" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Emplacement du groupe, s’il y a lieu, de la forme « Ville, État (ou région), " "pays »" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Alias" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7481,6 +7677,27 @@ msgstr[1] "" "Pseudonymes supplémentaires pour le groupe, séparés par des virgules ou des " "espaces. Un maximum de %d synonymes est autorisé." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membre depuis" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administrer" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7505,6 +7722,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membres du groupe « %s »" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Membres du groupe %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7697,38 +7930,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s suit maintenant vos avis sur %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Si vous pensez que ce compte est utilisé à des fins abusives, vous pouvez le " -"bloquer de votre liste d'abonnés et le signaler comme spam aux " -"administrateurs du site, sur %s." - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s suit dorénavant vos avis sur %2$s.\n" "\n" @@ -7742,12 +7959,29 @@ msgstr "" "Vous pouvez changer votre adresse de courriel ou vos options de notification " "sur %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Bio : %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Si vous pensez que ce compte est utilisé à des fins abusives, vous pouvez le " +"bloquer de votre liste d'abonnés et le signaler comme spam aux " +"administrateurs du site, sur %s." + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7757,16 +7991,13 @@ msgstr "Nouvelle adresse courriel pour poster dans %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "Une nouvelle adresse vous a été attribuée pour poster vos avis sur %1$s.\n" "\n" @@ -7802,8 +8033,8 @@ msgstr "Vous avez reçu un clin d’œil de %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7812,10 +8043,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) se demande ce que vous devenez ces temps-ci et vous invite à " "poster des nouvelles.\n" @@ -7838,8 +8066,7 @@ msgstr "Nouveau message personnel de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7851,10 +8078,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) vous a envoyé un message privé:\n" "\n" @@ -7882,7 +8106,7 @@ msgstr "%1$s (@%2$s) a ajouté votre avis à ses favoris" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7896,10 +8120,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) vient de marquer votre message de %2$s comme un de ses " "favoris.\n" @@ -7937,14 +8158,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) a envoyé un avis à votre attention" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7960,12 +8180,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) vient de soumettre un avis à votre attention (un « @-reply ») " "sur %2$s.\n" @@ -7991,6 +8206,31 @@ msgstr "" "\n" "P.S. Vous pouvez désactiver ces notifications électroniques ici : %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s a rejoint le groupe %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s a rejoint le groupe %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "L’accès à cette boîte de réception est réservé à son utilisateur." @@ -8030,6 +8270,20 @@ msgstr "Désolé, la réception de courriels n’est pas permise." msgid "Unsupported message type: %s" msgstr "Type de message non supporté : %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Faire de cet utilisateur un administrateur du groupe" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Rendre administrateur" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Faire de cet utilisateur un administrateur" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8731,9 +8985,8 @@ msgstr "XML invalide, racine XRD manquante." msgid "Getting backup from file '%s'." msgstr "Obtention de la sauvegarde depuis le fichier « %s »." -#~ msgid "Couldn't update user." -#~ msgstr "Impossible de mettre à jour l’utilisateur." +#~ msgid "Notice" +#~ msgstr "Avis" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Impossible de mettre à jour le dossier de l’utilisateur." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces." diff --git a/locale/fur/LC_MESSAGES/statusnet.po b/locale/fur/LC_MESSAGES/statusnet.po index 248e58b2d0..711997bb79 100644 --- a/locale/fur/LC_MESSAGES/statusnet.po +++ b/locale/fur/LC_MESSAGES/statusnet.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:45+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:31+0000\n" "Language-Team: Friulian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fur\n" "X-Message-Group: #out-statusnet-core\n" @@ -70,6 +70,8 @@ msgstr "" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -77,6 +79,7 @@ msgstr "" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Salve" @@ -730,6 +733,7 @@ msgstr "Identitât" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Sorenon" @@ -805,6 +809,7 @@ msgstr "" #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "L'avîs nol esist." @@ -1012,6 +1017,103 @@ msgstr "" msgid "User not found." msgstr "L'utent nol è stât cjatât." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "" + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "" + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "No tu sês jentrât." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Il profîl nol esist." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Une liste dai utents in chest grup." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "No si à podût zontâ l'utent %1$s al grup %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Stât di %1$s su %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1087,36 +1189,6 @@ msgstr "" msgid "Cannot delete someone else's favorite." msgstr "" -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "" - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "" @@ -1231,6 +1303,7 @@ msgstr "Anteprime" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Elimine" @@ -1387,6 +1460,14 @@ msgstr "Disbloche chest utent" msgid "Post to %s" msgstr "Publiche su %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s al à lassât il grup %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "" @@ -1445,6 +1526,7 @@ msgid "Notices" msgstr "Avîs" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1516,6 +1598,7 @@ msgstr "" #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "" @@ -1547,12 +1630,6 @@ msgstr "Elimine cheste aplicazion" msgid "You must be logged in to delete a group." msgstr "" -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "" - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "" @@ -1826,6 +1903,7 @@ msgid "You must be logged in to edit an application." msgstr "" #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "" @@ -2040,6 +2118,7 @@ msgstr "" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "La direzion di pueste eletroniche no je valide." @@ -2393,33 +2472,26 @@ msgstr "Membris dal grup %1$s, pagjine %2$d" msgid "A list of the users in this group." msgstr "Une liste dai utents in chest grup." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Aministradôr" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloche" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloche chest utent" - -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Apartignincis ai grups di %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Membris dal grup %1$s, pagjine %2$d" + +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Une liste dai utents in chest grup." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2457,6 +2529,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Cree un gnûf grup" @@ -2794,8 +2867,8 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s si à unît al grup %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." +#. TRANS: Exception thrown when there is an unknown error joining a group. +msgid "Unknown error joining group." msgstr "" #. TRANS: Client error displayed when trying to join a group while already a member. @@ -2803,12 +2876,6 @@ msgstr "" msgid "You are not a member of that group." msgstr "No tu fasis part di chest grup." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s al à lassât il grup %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3227,10 +3294,13 @@ msgid "Notice %s not found." msgstr "" #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Stât di %1$s su %2$s" @@ -3707,17 +3777,20 @@ msgstr "Informazions sul profîl" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Non complet" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Pagjine web" @@ -3747,6 +3820,7 @@ msgstr "Biografie" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Lûc" @@ -3801,6 +3875,7 @@ msgstr[0] "" msgstr[1] "" #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "No tu âs sielt il fûs orari." @@ -4476,66 +4551,97 @@ msgstr "L'utent nol à un profîl." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "" +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "" -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessions" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessions" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +msgid "Handle sessions ourselves." msgstr "" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Salve" - -msgid "Save site settings" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" msgstr "Salve lis impuestazions dal sît" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "" +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Cambie" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Elimine" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" @@ -4643,6 +4749,7 @@ msgstr "Ducj i membris" msgid "Statistics" msgstr "Statistichis" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Creât" @@ -4686,7 +4793,9 @@ msgstr "" "[StatusNet](http://status.net/). I siei membris a condividin messaçs curts " "su la vite e i lôr interès. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Aministradôrs" @@ -4710,14 +4819,12 @@ msgstr "Messaç par %1$s su %2$s" msgid "Message from %1$s on %2$s" msgstr "Messaç di %1$s su %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "L'avîs al è stât eliminât." -#, fuzzy -msgid "Notice" -msgstr "Avîs" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s cun etichete %2$s" @@ -4752,6 +4859,8 @@ msgstr "Canâl dai avîs par %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Canâl dai avîs par %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Canâl dai avîs par %s (Atom)" @@ -4814,88 +4923,135 @@ msgstr "" msgid "Repeat of %s" msgstr "Ripetizion di %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "" +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "" +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Sît" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "" +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "" +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Gjenerâl" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Non dal sît" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Pueste eletroniche" -msgid "Contact email address for your site" -msgstr "" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." +msgstr "La direzion di pueste eletroniche no je valide: %s" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Locâl" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Fûs orari predeterminât" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Lenghe predeterminade" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limits" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Limits dal test" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Salve lis impuestazions dal sît" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "" @@ -5089,6 +5245,10 @@ msgstr "" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Salve" + msgid "Save snapshot settings" msgstr "" @@ -5412,6 +5572,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Acete" @@ -5421,6 +5582,7 @@ msgid "Subscribe to this user." msgstr "Sotscrivimi a chest utent." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Refude" @@ -5823,6 +5985,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6173,6 +6339,9 @@ msgstr "" msgid "Home" msgstr "Pagjine web" +msgid "Admin" +msgstr "Aministradôr" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "" @@ -6212,6 +6381,10 @@ msgstr "" msgid "Sessions configuration" msgstr "" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessions" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "" @@ -6313,6 +6486,7 @@ msgid "Describe your application" msgstr "" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Descrizion" @@ -6426,6 +6600,10 @@ msgstr "Bloche" msgid "Block this user" msgstr "Bloche chest utent" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "" @@ -6524,14 +6702,14 @@ msgid "Fullname: %s" msgstr "Non complet: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Lûc: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -6888,6 +7066,10 @@ msgstr "Erôr de base di dâts" msgid "Public" msgstr "Public" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Elimine" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Elimine chest utent" @@ -7016,28 +7198,44 @@ msgstr "Va" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloche" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloche chest utent" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "URL de pagjine web o blog dal grup o dal argoment." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Descrîf il grup o l'argoment" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" -msgstr[0] "" -msgstr[1] "" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." +msgstr[0] "Descrîf il grup o l'argoment" +msgstr[1] "Descrîf il grup o l'argoment" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "Lûc dal grup, se al esist, come \"Citât, Regjon, Stât\"." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7048,6 +7246,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membri dai" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Aministradôr" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7072,6 +7291,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membris dal grup %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Membris dal grup %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7250,43 +7485,44 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "" +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, php-format +msgid "" +"Faithfully yours,\n" +"%1$s.\n" +"\n" +"----\n" +"Change your email address or notification options at %2$s" +msgstr "" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profîl" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is biographical information. +#, php-format +msgid "Bio: %s" +msgstr "Biografie: %s" + #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. #, php-format msgid "" "If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" +"your subscribers list and report as spam to site administrators at %s." msgstr "" -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" -"\n" -"----\n" -"Change your email address or notification options at %7$s\n" -msgstr "" - -#. TRANS: Profile info line in new-subscriber notification e-mail. -#. TRANS: %s is biographical information. -#, php-format -msgid "Bio: %s" -msgstr "Biografie: %s" - #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7302,10 +7538,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7332,7 +7565,7 @@ msgstr "" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7342,10 +7575,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7357,7 +7587,6 @@ msgstr "Gnûf messaç privât di %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7370,10 +7599,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7401,10 +7627,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7422,14 +7645,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7445,12 +7667,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s si à unît al grup %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s si à unît al grup %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7490,6 +7732,20 @@ msgstr "" msgid "Unsupported message type: %s" msgstr "" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8180,3 +8436,7 @@ msgstr "" #, php-format msgid "Getting backup from file '%s'." msgstr "" + +#, fuzzy +#~ msgid "Notice" +#~ msgstr "Avîs" diff --git a/locale/gl/LC_MESSAGES/statusnet.po b/locale/gl/LC_MESSAGES/statusnet.po index 2b635e3d35..f5bb1f0b01 100644 --- a/locale/gl/LC_MESSAGES/statusnet.po +++ b/locale/gl/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:46+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:32+0000\n" "Language-Team: Galician \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: gl\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -73,6 +73,8 @@ msgstr "Gardar a configuración de acceso" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -80,6 +82,7 @@ msgstr "Gardar a configuración de acceso" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Gardar" @@ -755,6 +758,7 @@ msgstr "Conta" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Alcume" @@ -831,6 +835,7 @@ msgstr "Non pode borrar o estado doutro usuario." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Non existe tal nota." @@ -1045,6 +1050,103 @@ msgstr "Método API en desenvolvemento." msgid "User not found." msgstr "Non se atopou o método da API." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Ten que identificarse para deixar un grupo." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Non existe tal grupo." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Nin alcume nin ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Non iniciou sesión." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Falta o perfil de usuario." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Unha lista dos usuarios pertencentes a este grupo." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "O usuario %1$s non se puido engadir ao grupo %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Estado de %1$s en %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1130,36 +1232,6 @@ msgstr "Non existe tal ficheiro." msgid "Cannot delete someone else's favorite." msgstr "Non se puido eliminar o favorito." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Non existe tal grupo." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1278,6 +1350,7 @@ msgstr "Vista previa" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Borrar" @@ -1442,6 +1515,14 @@ msgstr "Desbloquear este usuario" msgid "Post to %s" msgstr "Publicar en %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s deixou o grupo %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Sen código de confirmación." @@ -1501,6 +1582,7 @@ msgid "Notices" msgstr "Notas" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1577,6 +1659,7 @@ msgstr "Non se atopou a aplicación." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Non é o dono desa aplicación." @@ -1614,12 +1697,6 @@ msgstr "Borrar a aplicación" msgid "You must be logged in to delete a group." msgstr "Ten que identificarse para deixar un grupo." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Nin alcume nin ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1915,6 +1992,7 @@ msgid "You must be logged in to edit an application." msgstr "Ten que iniciar sesión para editar unha aplicación." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Non existe esa aplicación." @@ -2139,6 +2217,7 @@ msgstr "Non se pode normalizar ese enderezo de correo electrónico" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "O enderezo de correo electrónico é incorrecto." @@ -2513,33 +2592,26 @@ msgstr "Membros do grupo %1$s, páxina %2$d" msgid "A list of the users in this group." msgstr "Unha lista dos usuarios pertencentes a este grupo." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administrador" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloquear" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Membros do grupo %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloquear este usuario" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Membros do grupo %1$s, páxina %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Converter ao usuario en administrador do grupo" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Converter en administrador" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Converter a este usuario en administrador" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Unha lista dos usuarios pertencentes a este grupo." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2578,6 +2650,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Crear un grupo novo" @@ -2964,21 +3037,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s uniuse ao grupo %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Ten que identificarse para deixar un grupo." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Descoñecida" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Non pertence a ese grupo." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s deixou o grupo %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3414,10 +3482,13 @@ msgid "Notice %s not found." msgstr "Non se atopou o método da API." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Non hai perfil para a nota." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Estado de %1$s en %2$s" @@ -3913,6 +3984,7 @@ msgstr "Información do perfil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" @@ -3921,12 +3993,14 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nome completo" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Páxina persoal" @@ -3957,6 +4031,7 @@ msgstr "Biografía" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Lugar" @@ -4018,6 +4093,7 @@ msgstr[0] "A biografía é longa de máis (o límite son %d caracteres)." msgstr[1] "A biografía é longa de máis (o límite son %d caracteres)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Non se escolleu ningún fuso horario." @@ -4758,68 +4834,102 @@ msgstr "O usuario non ten este rol." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Non pode illar usuarios neste sitio." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "O usuario xa está illado." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sesións" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Configuración de sesión para este sitio StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sesións" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Manexar as sesións" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Manexar ou non as sesións nós mesmos." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Depuración da sesión" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Activar a saída de depuración para as sesións." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Gardar" - -msgid "Save site settings" -msgstr "Gardar a configuración do sitio" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Gardar a configuración de acceso" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Debe estar identificado para ver unha aplicación." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Perfil da aplicación" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Creado por %1$s - acceso %2$s por defecto - %3$d usuarios" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Creado por %1$s - acceso %2$s por defecto - %3$d usuarios" +msgstr[1] "Creado por %1$s - acceso %2$s por defecto - %3$d usuarios" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Accións da aplicación" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Modificar" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Restablecer o contrasinal ou a pregunta secreta" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Borrar" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Información da aplicación" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Nota: sopórtanse as sinaturas HMAC-SHA1. Non se soporta o método de asinado " "con texto sinxelo." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Seguro que quere restablecer a súa clave e maila súa pregunta secreta de " @@ -4936,6 +5046,7 @@ msgstr "Todos os membros" msgid "Statistics" msgstr "Estatísticas" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4980,7 +5091,9 @@ msgstr "" "baseado na ferramenta de software libre [StatusNet](http://status.net/). Os " "seus membros comparten mensaxes curtas sobre as súas vidas e intereses. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administradores" @@ -5004,14 +5117,12 @@ msgstr "Mensaxe a %1$s en %2$s" msgid "Message from %1$s on %2$s" msgstr "Mensaxe de %1$s en %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Borrouse a nota." -#, fuzzy -msgid "Notice" -msgstr "Notas" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, páxina %2$d" @@ -5046,6 +5157,8 @@ msgstr "Fonte de novas das notas para %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Fonte de novas das notas para %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Fonte de novas das notas para %s (Atom)" @@ -5111,94 +5224,144 @@ msgstr "" msgid "Repeat of %s" msgstr "Repeticións de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Non pode silenciar usuarios neste sitio." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "O usuario xa está silenciado." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Sitio" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Configuración básica para este sitio StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "O nome do sitio non pode quedar baleiro." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Ten que ter un enderezo de correo electrónico de contacto correcto." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Non se coñece a lingua \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "O límite mínimo de texto é 0 (ilimitado)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "O tempo límite de repetición debe ser de 1 ou máis segundos." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Xeral" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nome do sitio" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" "O nome do seu sitio, como por exemplo \"O sitio de mensaxes de blogue curtas " "da miña empresa\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Publicado por" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Texto utilizado para a ligazón aos créditos ao pé de cada páxina" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL do publicador" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL utilizado para a ligazón aos créditos ao pé de cada páxina" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Correo electrónico" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Enderezo de correo electrónico de contacto para o seu sitio" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Local" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Fuso horario por defecto" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Fuso horario por defecto para este sitio. Adoita poñerse o UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Lingua por defecto" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Lingua do sitio para cando a detección automática a partir do navegador non " "sexa posible" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Límites" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Límite de texto" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Número máximo de caracteres para as notas." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Tempo límite de repetición" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Tempo (en segundos) que teñen que agardar os usuarios para publicar unha " "nota de novo." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Gardar a configuración do sitio" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Nota do sitio" @@ -5407,6 +5570,10 @@ msgstr "URL de envío" msgid "Snapshots will be sent to this URL" msgstr "As instantáneas enviaranse a este URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Gardar" + msgid "Save snapshot settings" msgstr "Gardar a configuración das instantáneas" @@ -5758,6 +5925,7 @@ msgstr "" "\"Rexeitar\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5769,6 +5937,7 @@ msgid "Subscribe to this user." msgstr "Subscribirse a este usuario" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6203,6 +6372,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6560,6 +6733,9 @@ msgstr "Non se puido borrar a configuración do deseño." msgid "Home" msgstr "Páxina persoal" +msgid "Admin" +msgstr "Administrador" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configuración básica do sitio" @@ -6599,6 +6775,10 @@ msgstr "Configuración das rutas" msgid "Sessions configuration" msgstr "Configuración das sesións" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sesións" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Modificar a nota do sitio" @@ -6710,6 +6890,7 @@ msgid "Describe your application" msgstr "Describa a súa aplicación" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Descrición" @@ -6828,6 +7009,10 @@ msgstr "Excluír" msgid "Block this user" msgstr "Bloquear este usuario" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Resultados da orde" @@ -6928,14 +7113,14 @@ msgid "Fullname: %s" msgstr "Nome completo: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Localidade: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7298,6 +7483,10 @@ msgstr "Houbo un erro na base de datos" msgid "Public" msgstr "Públicas" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Borrar" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Borrar o usuario" @@ -7432,24 +7621,35 @@ msgstr "Continuar" msgid "Grant this user the \"%s\" role" msgstr "Outorgarlle a este usuario o rol \"%s\"" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"Entre 1 e 64 letras minúsculas ou números, sen signos de puntuación, " -"espazos, tiles ou eñes" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloquear" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloquear este usuario" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL do sitio web persoal ou blogue do grupo ou tema" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Describa o grupo ou o tema" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Describa o grupo ou o tema en %d caracteres" msgstr[1] "Describa o grupo ou o tema en %d caracteres" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." @@ -7457,9 +7657,12 @@ msgstr "" "Localidade do grupo, se a ten, como por exemplo \"Cidade, Provincia, " "Comunidade, País\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Pseudónimos" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7474,6 +7677,27 @@ msgstr[1] "" "Alcumes adicionais para o grupo, separados por comas ou espazos, %d como " "máximo" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membro dende" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administrador" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7498,6 +7722,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membros do grupo %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Membros do grupo %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7687,37 +7927,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "Agora %1$s segue as súas notas en %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Se cre que esta conta se está usando con fins abusivos, pode bloquear a súa " -"lista de subscritores e informar disto aos administradores do sitio en %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "Agora %1$s segue as súas notas en %2$s.\n" "\n" @@ -7731,12 +7956,28 @@ msgstr "" "Modifique o seu enderezo de correo electrónico ou as súas preferencias de " "notificación en %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Perfil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Biografía: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Se cre que esta conta se está usando con fins abusivos, pode bloquear a súa " +"lista de subscritores e informar disto aos administradores do sitio en %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7752,10 +7993,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Ten un novo enderezo de correo electrónico para publicar en %1$s.\n" "\n" @@ -7791,8 +8029,8 @@ msgstr "%s fíxolle un aceno" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7801,10 +8039,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) pregúntase que estivo a facer vostede estes días, e convídao a " "publicar algunha nova.\n" @@ -7827,8 +8062,7 @@ msgstr "Nova mensaxe privada de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7840,10 +8074,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) envioulle unha mensaxe privada:\n" "\n" @@ -7871,7 +8102,7 @@ msgstr "%s (@%s) marcou a súa nota como favorita" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7885,10 +8116,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) acaba de marcar a súa nota en %2$s coma unha das súas " "favoritas.\n" @@ -7926,14 +8154,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) enviou unha nota á súa atención" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7949,12 +8176,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) acaba de enviar unha nota á súa atención (unha resposta) en %2" "$s.\n" @@ -7980,6 +8202,31 @@ msgstr "" "\n" "P.S.: pode desactivar estas notificacións por correo electrónico en %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s uniuse ao grupo %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s uniuse ao grupo %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Só o usuario pode ler as súas caixas de entrada." @@ -8018,6 +8265,20 @@ msgstr "Non se permite recibir correo electrónico." msgid "Unsupported message type: %s" msgstr "Non se soporta o tipo de mensaxe: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Converter ao usuario en administrador do grupo" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Converter en administrador" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Converter a este usuario en administrador" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8726,9 +8987,11 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Non se puido actualizar o usuario." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Non se puido actualizar o rexistro do usuario." +#~ msgid "Notice" +#~ msgstr "Notas" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "Entre 1 e 64 letras minúsculas ou números, sen signos de puntuación, " +#~ "espazos, tiles ou eñes" diff --git a/locale/hsb/LC_MESSAGES/statusnet.po b/locale/hsb/LC_MESSAGES/statusnet.po index a4f5908d12..6187a9608d 100644 --- a/locale/hsb/LC_MESSAGES/statusnet.po +++ b/locale/hsb/LC_MESSAGES/statusnet.po @@ -11,18 +11,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:47+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:34+0000\n" "Language-Team: Upper Sorbian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: hsb\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : (n%100==3 || " "n%100==4) ? 2 : 3)\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -73,6 +73,8 @@ msgstr "Přistupne nastajenja składować" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -80,6 +82,7 @@ msgstr "Přistupne nastajenja składować" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Składować" @@ -742,6 +745,7 @@ msgstr "Konto" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Přimjeno" @@ -817,6 +821,7 @@ msgstr "Njemóžeš status druheho wužiwarja zničić." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Zdźělenka njeeksistuje." @@ -1026,6 +1031,103 @@ msgstr "API-metoda njeskónčena." msgid "User not found." msgstr "Wužiwar njenamakany." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Dyrbiš přizjewjeny być, zo by skupinu wopušćił." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Skupina njeeksistuje." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Žane přimjeno abo žadyn ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Njepřizjewjeny." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Falowacy profil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Lisćina wužiwarjow w tutej skupinje." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Njebě móžno wužiwarja %1$s skupinje %2%s přidać." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Status %1$s na %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1100,36 +1202,6 @@ msgstr "Faworit njeeksistuje." msgid "Cannot delete someone else's favorite." msgstr "Faworit druheho njeda so zhašeć." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Skupina njeeksistuje." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Njeje čłon." @@ -1244,6 +1316,7 @@ msgstr "Přehlad" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Zhašeć" @@ -1400,6 +1473,14 @@ msgstr "Tutoho wužiwarja wotblokować" msgid "Post to %s" msgstr "Na %s pósłać" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s je skupinu %2$s wopušćił" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Žadyn wobkrućenski kod." @@ -1424,14 +1505,12 @@ msgstr "Tuta adresa bu hižo wobkrućena." #. TRANS: Server error displayed when updating IM preferences fails. #. TRANS: Server error thrown on database error removing a registered IM address. -#, fuzzy msgid "Could not update user IM preferences." -msgstr "Datowa sadźba wužiwarja njeda so aktualizować." +msgstr "Wužiwarske IM-nastajenja njedachu so aktualizować." #. TRANS: Server error displayed when adding IM preferences fails. -#, fuzzy msgid "Could not insert user IM preferences." -msgstr "Nowy abonement njeda so zasunyć." +msgstr "IM-nastajenja njedachu so zasunyć." #. TRANS: Server error displayed when an address confirmation code deletion from the #. TRANS: database fails in the contact address confirmation action. @@ -1458,10 +1537,10 @@ msgid "Notices" msgstr "Zdźělenki" #. TRANS: Title for conversation page. -#, fuzzy +#. TRANS: Title for page that shows a notice. msgctxt "TITLE" msgid "Notice" -msgstr "Zdźělenki" +msgstr "Zdźělenka" #. TRANS: Client exception displayed trying to delete a user account while not logged in. msgid "Only logged-in users can delete their account." @@ -1531,6 +1610,7 @@ msgstr "Aplikaciska njenamakana." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Njejsy wobsedźer tuteje aplikacije." @@ -1562,12 +1642,6 @@ msgstr "Tutu aplikaciju zhašeć." msgid "You must be logged in to delete a group." msgstr "Dyrbiš přizjewjeny być, zo by skupinu zhašał." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Žane přimjeno abo žadyn ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Njesměš tutu skupinu zhašeć." @@ -1841,6 +1915,7 @@ msgid "You must be logged in to edit an application." msgstr "Dyrbiš přizjewjeny być, zo by skupinu wobdźěłał." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Aplikacija njeeksistuje." @@ -2053,6 +2128,7 @@ msgstr "Tuta e-mejlowa adresa njehodźi so normalizować." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Njepłaćiwa e-mejlowa adresa." @@ -2408,33 +2484,26 @@ msgstr "%1$s skupinskich čłonow, strona %2$d" msgid "A list of the users in this group." msgstr "Lisćina wužiwarjow w tutej skupinje." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administrator" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Blokować" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s skupisnkich čłonstwow" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Tutoho wužiwarja blokować" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s skupinskich čłonow, strona %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Wužiwarja k administratorej skupiny činić" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "K administratorej činić" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Tutoho wužiwarja k administratorej činić" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Lisćina wužiwarjow w tutej skupinje." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2467,6 +2536,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Nowu skupinu wutworić" @@ -2558,9 +2628,8 @@ msgid "%s screenname." msgstr "Wužiwarske mjeno %s." #. TRANS: Header for IM preferences form. -#, fuzzy msgid "IM Preferences" -msgstr "IM-nastajenja" +msgstr "M-nastajenja" #. TRANS: Checkbox label in IM preferences form. #, fuzzy @@ -2818,21 +2887,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s je do skupiny %2$s zastupił" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Dyrbiš přizjewjeny być, zo by skupinu wopušćił." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Njeznata skupina" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Njejsy čłon teje skupiny." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s je skupinu %2$s wopušćił" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3243,10 +3307,13 @@ msgid "Notice %s not found." msgstr "Zdźělenka %s njenamakana." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Zdźělenka nima profil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Status %1$s na %2$s" @@ -3374,7 +3441,6 @@ msgstr "Hesło dyrbi 6 abo wjace znamješkow měć." #. TRANS: Form validation error on password change when password confirmation does not match. #. TRANS: Form validation error displayed when trying to register with non-matching passwords. -#, fuzzy msgid "Passwords do not match." msgstr "Hesle so njekryjetej." @@ -3653,14 +3719,12 @@ msgid "This action only accepts POST requests." msgstr "" #. TRANS: Client error displayed when trying to enable or disable a plugin without access rights. -#, fuzzy msgid "You cannot administer plugins." -msgstr "Njemóžeš wužiwarjow wušmórnyć." +msgstr "Njemóžeš tykače zrjadować." #. TRANS: Client error displayed when trying to enable or disable a non-existing plugin. -#, fuzzy msgid "No such plugin." -msgstr "Strona njeeksistuje." +msgstr "Tykač njeeksistuje." #. TRANS: Page title for AJAX form return when enabling a plugin. msgctxt "plugin" @@ -3668,7 +3732,6 @@ msgid "Enabled" msgstr "" #. TRANS: Tab and title for plugins admin panel. -#, fuzzy msgctxt "TITLE" msgid "Plugins" msgstr "Tykače" @@ -3681,9 +3744,8 @@ msgid "" msgstr "" #. TRANS: Admin form section header -#, fuzzy msgid "Default plugins" -msgstr "Standardna rěč" +msgstr "Standardna tykače" #. TRANS: Text displayed on plugin admin page when no plugin are enabled. msgid "" @@ -3717,6 +3779,7 @@ msgstr "Profilowe informacije" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" "1-64 małopisanych pismikow abo ličbow, žane interpunkciske znamješka abo " @@ -3724,12 +3787,14 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Dospołne mjeno" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Startowa strona" @@ -3761,6 +3826,7 @@ msgstr "Biografija" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Městno" @@ -3818,6 +3884,7 @@ msgstr[2] "Biografija je předołha (maks. %d znamješka)." msgstr[3] "Biografija je předołha (maks. %d znamješkow)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Časowe pasmo njeje wubrane." @@ -4476,66 +4543,100 @@ msgstr "Wužiwar nima tutu rólu." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Njemóžeš wužiwarjow na tutym sydle do pěskoweho kašćika słać." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Wužiwar je hižo w pěskowym kašćiku." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Posedźenja" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Nastajenja posedźenja za tute sydło StatusNet." +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Posedźenja" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Z posedźenjemi wobchadźeć" -msgid "Whether to handle sessions ourselves." -msgstr "" +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." +msgstr "Z posedźenjemi wobchadźeć" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Składować" - -msgid "Save site settings" -msgstr "Sydłowe nastajenja składować" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Přistupne nastajenja składować" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Dyrbiš přizjewjeny być, zo by sej aplikaciju wobhladał." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Aplikaciski profil" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Aplikaciske akcije" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Wobdźěłać" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Zničić" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Aplikaciske informacije" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Chceš woprawdźe swój přetrjebowarski kluč a potajny kod wróćo stajić?" @@ -4643,6 +4744,7 @@ msgstr "Wšitcy čłonojo" msgid "Statistics" msgstr "Statistika" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Wutworjeny" @@ -4676,7 +4778,9 @@ msgid "" "their life and interests. " msgstr "" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administratorojo" @@ -4700,14 +4804,12 @@ msgstr "Powěsć do %1$s na %2$s" msgid "Message from %1$s on %2$s" msgstr "Powěsć wot %1$s na %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Zdźělenka zničena." -#, fuzzy -msgid "Notice" -msgstr "Zdźělenki" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s z %2$s woznamjenjeny" @@ -4742,6 +4844,8 @@ msgstr "Zdźělenski kanal za %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Zdźělenski kanal za %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Zdźělenski kanal za %s (Atom)" @@ -4795,90 +4899,138 @@ msgstr "" msgid "Repeat of %s" msgstr "Wospjetowanje wot %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Njemóžeš wužiwarjam na tutym sydle hubu zatykać." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Wužiwarjej je hižo huba zatykana." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Sydło" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Zakładne nastajenja za tute sydło StatusNet." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Sydłowe mjeno njesmě prózdne być." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Dyrbiš płaćiwu kontaktowu e-mejlowu adresu měć." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Njeznata rěč \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Minimalna tekstowa dołhosć je 0 (njewobmjezowany)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Powšitkowny" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Sydłowe mjeno" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Mjeno twojeho sydła, kaž \"TwojePředewzaće Microblog\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mejl" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Kontaktowa e-mejlowa adresa za twoje sydło" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Lokalny" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Standardne časowe pasmo" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Standardne časowe pasmo za sydło; zwjetša UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Standardna rěč" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Rěč sydła, jeli awtomatiske spóznawanje po nastajenjach wobhladowaka k " "dispoziciji njesteji" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limity" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Tekstowy limit" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Maksimalna ličba znamješkow za zdźělenki." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Limit duplikatow" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Sydłowe nastajenja składować" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Sydłowa zdźělenka" @@ -5072,6 +5224,10 @@ msgstr "URL rozprawy" msgid "Snapshots will be sent to this URL" msgstr "Njejapke fotki budu so do tutoho URL słać." +#. TRANS: Submit button title. +msgid "Save" +msgstr "Składować" + msgid "Save snapshot settings" msgstr "Nastajenja wobrazowkoweho fota składować" @@ -5397,6 +5553,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Akceptować" @@ -5406,6 +5563,7 @@ msgid "Subscribe to this user." msgstr "Tutoho wužiwarja abonować." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Wotpokazać" @@ -5811,6 +5969,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6152,6 +6314,9 @@ msgstr "Njeje móžno, designowe nastajenje zhašeć." msgid "Home" msgstr "Startowa strona" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Zakładna sydłowa konfiguracija" @@ -6191,6 +6356,10 @@ msgstr "Konfiguracija šćežkow" msgid "Sessions configuration" msgstr "Konfiguracija posedźenjow" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Posedźenja" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Sydłowu zdźělenku wobdźěłać" @@ -6294,6 +6463,7 @@ msgid "Describe your application" msgstr "Wopisaj swoju aplikaciju" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Wopisanje" @@ -6407,6 +6577,10 @@ msgstr "Blokować" msgid "Block this user" msgstr "Tutoho wužiwarja blokować" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Přikazowe wuslědki" @@ -6506,14 +6680,14 @@ msgid "Fullname: %s" msgstr "Dospołne mjeno: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Městno: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -6890,6 +7064,10 @@ msgstr "Zmylk w datowej bance" msgid "Public" msgstr "Zjawny" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Zničić" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Tutoho wužiwarja wušmórnyć" @@ -7019,34 +7197,48 @@ msgstr "Start" msgid "Grant this user the \"%s\" role" msgstr "Tutomu wužiwarjej rólu \"%s\" dać" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"1-64 małopisanych pismikow abo ličbow, žane interpunkciske znamješka abo " -"mjezery." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Blokować" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Tutoho wužiwarja blokować" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "URL startoweje strony abo bloga skupiny abo temy." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Skupinu abo temu wopisać" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Skupinu abo temu w %d znamješce wopisać" msgstr[1] "Skupinu abo temu w %d znamješkomaj wopisać" msgstr[2] "Skupinu abo temu w %d znamješkach wopisać" msgstr[3] "Skupinu abo temu w %d znamješkach wopisać" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Městno za skupinu, jeli eksistuje, na př. \"město, zwjazkowy kraj (abo " "region), kraj\"." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Aliasy" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7059,6 +7251,27 @@ msgstr[1] "" msgstr[2] "" msgstr[3] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Čłon wot" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7083,6 +7296,24 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Čłonojo skupiny %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s skupinskich čłonow" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7269,43 +7500,44 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s slěduje twoje zdźělenki na %2$s." +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, php-format +msgid "" +"Faithfully yours,\n" +"%1$s.\n" +"\n" +"----\n" +"Change your email address or notification options at %2$s" +msgstr "" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is biographical information. +#, php-format +msgid "Bio: %s" +msgstr "Biografija: %s" + #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. #, php-format msgid "" "If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" +"your subscribers list and report as spam to site administrators at %s." msgstr "" -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" -"\n" -"----\n" -"Change your email address or notification options at %7$s\n" -msgstr "" - -#. TRANS: Profile info line in new-subscriber notification e-mail. -#. TRANS: %s is biographical information. -#, php-format -msgid "Bio: %s" -msgstr "Biografija: %s" - #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7321,10 +7553,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7351,7 +7580,7 @@ msgstr "%s je će storčił" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7361,10 +7590,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7376,7 +7602,6 @@ msgstr "Nowa priwatna powěsć wot %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7389,10 +7614,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7420,10 +7642,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7444,14 +7663,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) je zdźělenku k twojej kedźbnosći pósłał" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7467,12 +7685,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s je do skupiny %2$s zastupił." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s je do skupiny %2$s zastupił." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7514,6 +7752,20 @@ msgstr "Wodaj, dochadźaće e-mejle njejsu dowolene." msgid "Unsupported message type: %s" msgstr "Njepodpěrany powěsćowy typ: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Wužiwarja k administratorej skupiny činić" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "K administratorej činić" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Tutoho wužiwarja k administratorej činić" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8225,9 +8477,11 @@ msgstr "Njepłaćiwy XML, korjeń XRD faluje." msgid "Getting backup from file '%s'." msgstr "Wobstaruje so zawěsćenje z dataje \"%s\"-" -#~ msgid "Couldn't update user." -#~ msgstr "Wužiwar njeda aktualizować." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Datowa sadźba wužiwarja njeda so aktualizować." +#~ msgid "Notice" +#~ msgstr "Zdźělenki" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1-64 małopisanych pismikow abo ličbow, žane interpunkciske znamješka abo " +#~ "mjezery." diff --git a/locale/hu/LC_MESSAGES/statusnet.po b/locale/hu/LC_MESSAGES/statusnet.po index 323d6be80a..ed3392c881 100644 --- a/locale/hu/LC_MESSAGES/statusnet.po +++ b/locale/hu/LC_MESSAGES/statusnet.po @@ -12,13 +12,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:48+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:35+0000\n" "Language-Team: Hungarian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: hu\n" "X-Message-Group: #out-statusnet-core\n" @@ -75,6 +75,8 @@ msgstr "Hozzáférések beállításainak mentése" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -82,6 +84,7 @@ msgstr "Hozzáférések beállításainak mentése" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Mentés" @@ -748,6 +751,7 @@ msgstr "Kontó" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Becenév" @@ -826,6 +830,7 @@ msgstr "Nem törölheted más felhasználók állapotait." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Nincs ilyen hír." @@ -1038,6 +1043,103 @@ msgstr "Az API-metódus fejlesztés alatt áll." msgid "User not found." msgstr "Az API-metódus nem található." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Be kell jelentkezned hogy elhagyhass egy csoportot." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Nincs ilyen csoport." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Nincs nicknév vagy azonosító." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Nem vagy bejelentkezve." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Nincs ilyen profil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "A csoportban lévő felhasználók listája." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Nem sikerült %1$s felhasználót hozzáadni a %2$s csoporthoz." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s / %2$s kedvencei" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1123,36 +1225,6 @@ msgstr "Nincs ilyen fájl." msgid "Cannot delete someone else's favorite." msgstr "Nem sikerült törölni a kedvencet." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Nincs ilyen csoport." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1269,6 +1341,7 @@ msgstr "Előnézet" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1434,6 +1507,14 @@ msgstr "Ezen felhasználó blokkjának feloldása" msgid "Post to %s" msgstr "Küldés ide: %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s csatlakozott a(z) %2$s csoporthoz" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Nincs megerősítő kód." @@ -1493,6 +1574,7 @@ msgid "Notices" msgstr "Hírek" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1569,6 +1651,7 @@ msgstr "" #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "" @@ -1603,12 +1686,6 @@ msgstr "Alkalmazás törlése" msgid "You must be logged in to delete a group." msgstr "Be kell jelentkezned hogy elhagyhass egy csoportot." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Nincs nicknév vagy azonosító." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1901,6 +1978,7 @@ msgid "You must be logged in to edit an application." msgstr "" #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Nincs ilyen alkalmazás." @@ -2121,6 +2199,7 @@ msgstr "Nem sikerült normalizálni az e-mail címet" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Érvénytelen email cím." @@ -2490,33 +2569,26 @@ msgstr "" msgid "A list of the users in this group." msgstr "A csoportban lévő felhasználók listája." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Adminisztrátor" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s csoport tagjai" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "A felhasználó legyen a csoport kezelője" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s csoport, %2$d. oldal" -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "A csoportban lévő felhasználók listája." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2550,6 +2622,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Új csoport létrehozása" @@ -2900,21 +2973,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s csatlakozott a(z) %2$s csoporthoz" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Be kell jelentkezned hogy elhagyhass egy csoportot." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Ismeretlen művelet" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Nem vagy tagja annak a csoportnak." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s csatlakozott a(z) %2$s csoporthoz" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3331,10 +3399,13 @@ msgid "Notice %s not found." msgstr "Az API-metódus nem található." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "" @@ -3831,18 +3902,21 @@ msgstr "Személyes profil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 kisbetű vagy számjegy, nem lehet benne írásjel vagy szóköz" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Teljes név" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Honlap" @@ -3875,6 +3949,7 @@ msgstr "Életrajz" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Helyszín" @@ -3936,6 +4011,7 @@ msgstr[0] "Az bemutatkozás túl hosszú (max %d karakter)." msgstr[1] "Az bemutatkozás túl hosszú (max %d karakter)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Nem választottál időzónát." @@ -4617,66 +4693,98 @@ msgstr "A felhasználónak már van ilyen szerepe." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "" +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "" -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Munkamenetek" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Munkamenetek" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Kezeljük a munkameneteket" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Mi magunk kezeljük-e a munkameneteket." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Mentés" - -msgid "Save site settings" -msgstr "Mentsük el a webhely beállításait" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Hozzáférések beállításainak mentése" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "" +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Szerkesztés" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Törlés" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" @@ -4784,6 +4892,7 @@ msgstr "Összes tag" msgid "Statistics" msgstr "Statisztika" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4825,7 +4934,9 @@ msgid "" "their life and interests. " msgstr "" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Adminisztrátorok" @@ -4849,14 +4960,12 @@ msgstr "" msgid "Message from %1$s on %2$s" msgstr "" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "A hírt töröltük." -#, fuzzy -msgid "Notice" -msgstr "Hírek" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr " %s megcímkézve" @@ -4891,6 +5000,8 @@ msgstr "%s RSS 1.0 hírcsatornája" msgid "Notice feed for %s (RSS 2.0)" msgstr "%s RSS 2.0 hírcsatornája" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "%s Atom hírcsatornája" @@ -4952,88 +5063,135 @@ msgstr "" msgid "Repeat of %s" msgstr "%s ismétlése" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Ezen a webhelyen nem hallgattathatod el a felhasználókat." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "A felhasználó már el van hallgattatva." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Webhely" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "A webhely nevének legalább egy karakter hosszúnak kell lennie." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Valódi kapcsolattartó email címet kell megadnod." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Ismeretlen nyelv: \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Általános" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "A webhely neve" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "A webhelyhez tartozó kapcsolattartó email cím" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Helyi" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Alapértelmezett időzóna" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "A webhely alapértelmezett időzónája; többnyire GMT+1." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Alapértelmezett nyelv" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Korlátok" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Szöveg hosszának korlátja" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "A hírek maximális karakterszáma." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Duplázások korlátja" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Mentsük el a webhely beállításait" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "" @@ -5230,6 +5388,10 @@ msgstr "URL jelentése" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Mentés" + msgid "Save snapshot settings" msgstr "" @@ -5558,6 +5720,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5569,6 +5732,7 @@ msgid "Subscribe to this user." msgstr "Ezen felhasználók híreire már feliratkoztál:" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -5970,6 +6134,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s - %2$s" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6313,6 +6481,9 @@ msgstr "Nem sikerült törölni a megjelenés beállításait." msgid "Home" msgstr "Otthon" +msgid "Admin" +msgstr "Adminisztrátor" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "A webhely elemi beállításai" @@ -6352,6 +6523,10 @@ msgstr "Az útvonalak beállításai" msgid "Sessions configuration" msgstr "Munkamenetek beállításai" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Munkamenetek" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "" @@ -6456,6 +6631,7 @@ msgid "Describe your application" msgstr "" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Leírás" @@ -6572,6 +6748,10 @@ msgstr "Blokkolás" msgid "Block this user" msgstr "Felhasználó blokkolása" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "" @@ -6672,14 +6852,14 @@ msgid "Fullname: %s" msgstr "Teljes név: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Helyszín: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7030,6 +7210,10 @@ msgstr "Adatbázishiba" msgid "Public" msgstr "" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Törlés" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Töröljük ezt a felhasználót" @@ -7162,22 +7346,35 @@ msgstr "Menjünk" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 kisbetű vagy számjegy, nem lehet benne írásjel vagy szóköz" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "A csoporthoz vagy témához tartozó honlap illetve blog URL-je" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Jellemezd a csoportot vagy a témát" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Jellemezd a csoportot vagy a témát %d karakterben" msgstr[1] "Jellemezd a csoportot vagy a témát %d karakterben" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." @@ -7185,9 +7382,12 @@ msgstr "" "A csoport földrajzi elhelyezkedése, ha van ilyen, pl. \"Város, Megye, Ország" "\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Álnevek" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7202,6 +7402,27 @@ msgstr[1] "" "Extra becenevek a csoport számára, vesszővel vagy szóközökkel elválasztva, " "legfeljebb %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Tagság kezdete:" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Adminisztrátor" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7226,6 +7447,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s csoport tagjai" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7415,35 +7652,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s feliratkozott a híreidre a %2$s webhelyen." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s feliratkozott a híreidre a %2$s webhelyen.\n" "\n" @@ -7457,12 +7681,26 @@ msgstr "" "Az email címed és az üzenetekre vonatkozó beállításaid itt változtathatod " "meg: %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Bemutatkozás: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7478,10 +7716,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7508,8 +7743,8 @@ msgstr "%s megbökött téged." #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7518,10 +7753,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) azon tűnődött, mi lehet veled mostanában, és arra hív, küldj " "valami hírt.\n" @@ -7544,8 +7776,7 @@ msgstr "Új privát üzenetet küldött neked %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7557,10 +7788,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) privát üzenetet küldött neked:\n" "\n" @@ -7588,7 +7816,7 @@ msgstr "%s (@%s) az általad küldött hírt hozzáadta a kedvenceihez" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7602,10 +7830,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) hozzáadta azt a hírt a kedvenceihez, amit innen küldtél: %2$s.\n" "\n" @@ -7639,14 +7864,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) figyelmedbe ajánlott egy hírt" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7662,12 +7886,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s csatlakozott a(z) %2$s csoporthoz" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s csatlakozott a(z) %2$s csoporthoz" + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7711,6 +7955,20 @@ msgstr "Sajnos a bejövő email nincs engedélyezve." msgid "Unsupported message type: %s" msgstr "Nem támogatott üzenet-típus: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "A felhasználó legyen a csoport kezelője" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "Adatbázis-hiba történt a fájlod elmentése közben. Kérlek próbáld újra." @@ -8403,9 +8661,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Nem sikerült frissíteni a felhasználót." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Nem sikerült frissíteni a felhasználó rekordját." +#~ msgid "Notice" +#~ msgstr "Hírek" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 kisbetű vagy számjegy, nem lehet benne írásjel vagy szóköz" diff --git a/locale/ia/LC_MESSAGES/statusnet.po b/locale/ia/LC_MESSAGES/statusnet.po index dbe0bb6ed4..7f17e745b8 100644 --- a/locale/ia/LC_MESSAGES/statusnet.po +++ b/locale/ia/LC_MESSAGES/statusnet.po @@ -9,17 +9,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:49+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:37+0000\n" "Language-Team: Interlingua \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ia\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -70,6 +70,8 @@ msgstr "Salveguardar configurationes de accesso" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -77,6 +79,7 @@ msgstr "Salveguardar configurationes de accesso" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Salveguardar" @@ -749,6 +752,7 @@ msgstr "Conto" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Pseudonymo" @@ -828,6 +832,7 @@ msgstr "Tu non pote deler le stato de un altere usator." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Nota non trovate." @@ -1038,6 +1043,103 @@ msgstr "Methodo API in construction." msgid "User not found." msgstr "Usator non trovate." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Tu debe aperir un session pro quitar un gruppo." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Gruppo non existe." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Nulle pseudonymo o ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Tu non ha aperite un session." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Profilo mancante." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Un lista de usatores in iste gruppo." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Non poteva inscriber le usator %1$s in le gruppo %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Le stato de %1$s in %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1112,36 +1214,6 @@ msgstr "Iste favorite non existe." msgid "Cannot delete someone else's favorite." msgstr "Non pote deler le favorite de un altere persona." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Gruppo non existe." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Non es membro." @@ -1256,6 +1328,7 @@ msgstr "Previsualisation" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Deler" @@ -1421,6 +1494,14 @@ msgstr "Disblocar iste usator" msgid "Post to %s" msgstr "Publicar in %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s quitava le gruppo %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Nulle codice de confirmation." @@ -1445,12 +1526,10 @@ msgstr "Iste adresse ha ja essite confirmate." #. TRANS: Server error displayed when updating IM preferences fails. #. TRANS: Server error thrown on database error removing a registered IM address. -#, fuzzy msgid "Could not update user IM preferences." msgstr "Non poteva actualisar le preferentias de MI del usator." #. TRANS: Server error displayed when adding IM preferences fails. -#, fuzzy msgid "Could not insert user IM preferences." msgstr "Non poteva inserer le preferentias de MI del usator." @@ -1479,7 +1558,7 @@ msgid "Notices" msgstr "Notas" #. TRANS: Title for conversation page. -#, fuzzy +#. TRANS: Title for page that shows a notice. msgctxt "TITLE" msgid "Notice" msgstr "Nota" @@ -1554,6 +1633,7 @@ msgstr "Application non trovate." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Tu non es le proprietario de iste application." @@ -1588,12 +1668,6 @@ msgstr "Deler iste application." msgid "You must be logged in to delete a group." msgstr "Tu debe aperir un session pro deler un gruppo." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Nulle pseudonymo o ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Tu non ha le permission de deler iste gruppo." @@ -1876,6 +1950,7 @@ msgid "You must be logged in to edit an application." msgstr "Tu debe aperir un session pro modificar un application." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Application non trovate." @@ -2093,6 +2168,7 @@ msgstr "Non pote normalisar iste adresse de e-mail." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Adresse de e-mail invalide." @@ -2461,33 +2537,26 @@ msgstr "Membros del gruppo %1$s, pagina %2$d" msgid "A list of the users in this group." msgstr "Un lista de usatores in iste gruppo." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administrator" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Blocar" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Membratos del gruppo %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Blocar iste usator" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Membros del gruppo %1$s, pagina %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Facer le usator administrator del gruppo" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Facer admin" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Facer iste usator un administrator" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Un lista de usatores in iste gruppo." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2525,6 +2594,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Crear un nove gruppo" @@ -2606,13 +2676,13 @@ msgstr "Adresse de %s actualmente confirmate." #. TRANS: Form note in IM settings form. #. TRANS: %s is the IM service name, %2$s is the IM address set. -#, fuzzy, php-format +#, php-format msgid "" "Awaiting confirmation on this address. Check your %1$s account for a message " "with further instructions. (Did you add %2$s to your buddy list?)" msgstr "" -"Attende confirmation de iste adresse. Verifica tu conto de %s pro un message " -"con ulterior instructiones. (Ha tu addite %s a tu lista de amicos?)" +"Iste adresse require confirmation. Cerca in tu conto de %1$s un message con " +"ulterior instructiones. (Ha tu addite %2$s a tu lista de amicos?)" #. TRANS: Field label for IM address. msgid "IM address" @@ -2644,7 +2714,6 @@ msgid "Publish a MicroID" msgstr "Publicar un MicroID" #. TRANS: Server error thrown on database error updating IM preferences. -#, fuzzy msgid "Could not update IM preferences." msgstr "Non poteva actualisar le preferentias de MI." @@ -2662,14 +2731,12 @@ msgid "No transport." msgstr "Nulle transporto." #. TRANS: Message given saving IM address that cannot be normalised. -#, fuzzy msgid "Cannot normalize that screenname." -msgstr "Non pote normalisar iste pseudonymo" +msgstr "Non pote normalisar iste pseudonymo." #. TRANS: Message given saving IM address that not valid. -#, fuzzy msgid "Not a valid screenname." -msgstr "Non un pseudonymo valide" +msgstr "Iste pseudonymo non es valide." #. TRANS: Message given saving IM address that is already set for another user. msgid "Screenname already belongs to another user." @@ -2686,7 +2753,6 @@ msgid "That is the wrong IM address." msgstr "Iste adresse de messageria instantanee es erronee." #. TRANS: Server error thrown on database error canceling IM address confirmation. -#, fuzzy msgid "Could not delete confirmation." msgstr "Non poteva deler le confirmation." @@ -2896,21 +2962,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s se jungeva al gruppo %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Tu debe aperir un session pro quitar un gruppo." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Gruppo incognite." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Tu non es membro de iste gruppo." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s quitava le gruppo %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3338,10 +3399,13 @@ msgid "Notice %s not found." msgstr "Nota %s non trovate." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Le nota ha nulle profilo." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Le stato de %1$s in %2$s" @@ -3468,7 +3532,6 @@ msgstr "Le contrasigno debe haber al minus 6 characteres." #. TRANS: Form validation error on password change when password confirmation does not match. #. TRANS: Form validation error displayed when trying to register with non-matching passwords. -#, fuzzy msgid "Passwords do not match." msgstr "Le contrasignos non corresponde." @@ -3816,17 +3879,20 @@ msgstr "Informationes del profilo" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 minusculas o numeros, sin punctuation o spatios." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nomine complete" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Pagina personal" @@ -3856,6 +3922,7 @@ msgstr "Bio" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Loco" @@ -3914,6 +3981,7 @@ msgstr[0] "Bio es troppo longe (maximo %d character)." msgstr[1] "Bio es troppo longe (maximo %d characteres)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Fuso horari non seligite." @@ -4209,15 +4277,14 @@ msgid "New password successfully saved. You are now logged in." msgstr "Nove contrasigno salveguardate con successo. Tu session es ora aperte." #. TRANS: Client exception thrown when no ID parameter was provided. -#, fuzzy msgid "No id parameter." -msgstr "Nulle parametro de ID" +msgstr "Nulle parametro de ID." #. TRANS: Client exception thrown when an invalid ID parameter was provided for a file. #. TRANS: %d is the provided ID for which the file is not present (number). -#, fuzzy, php-format +#, php-format msgid "No such file \"%d\"." -msgstr "File \"%d\" non existe" +msgstr "File \"%d\" non existe." #. TRANS: Client error displayed when trying to register to an invite-only site without an invitation. msgid "Sorry, only invited people can register." @@ -4232,7 +4299,6 @@ msgid "Registration successful" msgstr "Registration succedite" #. TRANS: Title for registration page. -#, fuzzy msgctxt "TITLE" msgid "Register" msgstr "Crear conto" @@ -4242,7 +4308,6 @@ msgid "Registration not allowed." msgstr "Creation de conto non permittite." #. TRANS: Form validation error displayed when trying to register without agreeing to the site license. -#, fuzzy msgid "You cannot register if you do not agree to the license." msgstr "Tu non pote crear un conto si tu non accepta le licentia." @@ -4262,13 +4327,11 @@ msgstr "" "notas e mitter te in contacto con amicos e collegas." #. TRANS: Field label on account registration page. In this field the password has to be entered a second time. -#, fuzzy msgctxt "PASSWORD" msgid "Confirm" msgstr "Confirmar" #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "LABEL" msgid "Email" msgstr "E-mail" @@ -4286,23 +4349,21 @@ msgstr "Nomine plus longe, preferibilemente tu nomine \"real\"." #. TRANS: Text area title in form for account registration. Plural #. TRANS: is decided by the number of characters available for the #. TRANS: biography (%d). -#, fuzzy, php-format +#, php-format msgid "Describe yourself and your interests in %d character." msgid_plural "Describe yourself and your interests in %d characters." -msgstr[0] "Describe te e tu interesses in %d character" -msgstr[1] "Describe te e tu interesses in %d characteres" +msgstr[0] "Describe te e tu interesses in %d character." +msgstr[1] "Describe te e tu interesses in %d characteres." #. TRANS: Text area title on account registration page. -#, fuzzy msgid "Describe yourself and your interests." -msgstr "Describe te e tu interesses" +msgstr "Describe te e tu interesses." #. TRANS: Field title on account registration page. msgid "Where you are, like \"City, State (or Region), Country\"." msgstr "Ubi tu es, como \"Citate, Stato (o Region), Pais\"." #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "BUTTON" msgid "Register" msgstr "Crear conto" @@ -4420,7 +4481,6 @@ msgid "URL of your profile on another compatible microblogging service." msgstr "URL de tu profilo in un altere servicio de microblogging compatibile." #. TRANS: Button text on page for remote subscribe. -#, fuzzy msgctxt "BUTTON" msgid "Subscribe" msgstr "Subscriber" @@ -4616,7 +4676,6 @@ msgid "You cannot revoke user roles on this site." msgstr "Tu non pote revocar rolos de usatores in iste sito." #. TRANS: Client error displayed when trying to revoke a role that is not set. -#, fuzzy msgid "User does not have this role." msgstr "Le usator non ha iste rolo." @@ -4625,68 +4684,102 @@ msgstr "Le usator non ha iste rolo." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Tu non pote mitter usatores in le cassa de sablo in iste sito." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Usator es ja in cassa de sablo." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessiones" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Parametros de session pro iste sito StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessiones" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Gerer sessiones" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Si nos debe gerer le sessiones nos mesme." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Cercar defectos de session" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Producer informationes technic pro cercar defectos in sessiones." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Salveguardar" - -msgid "Save site settings" -msgstr "Salveguardar configurationes del sito" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Salveguardar configurationes de accesso" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Tu debe aperir un session pro vider un application." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Profilo del application" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Create per %1$s - accesso %2$s per predefinition - %3$d usatores" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Create per %1$s - accesso %2$s per predefinition - %3$d usatores" +msgstr[1] "Create per %1$s - accesso %2$s per predefinition - %3$d usatores" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Actiones de application" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Modificar" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Reinitialisar clave e secreto" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Deler" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Info del application" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Nota: Nos supporta le signaturas HMAC-SHA1. Nos non accepta signaturas in " "texto simple." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Es tu secur de voler reinitialisar tu clave e secreto de consumitor?" @@ -4802,6 +4895,7 @@ msgstr "Tote le membros" msgid "Statistics" msgstr "Statisticas" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Create" @@ -4844,7 +4938,9 @@ msgstr "" "[StatusNet](http://status.net/). Su membros condivide breve messages super " "lor vita e interesses. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administratores" @@ -4868,13 +4964,12 @@ msgstr "Message a %1$s in %2$s" msgid "Message from %1$s on %2$s" msgstr "Message de %1$s in %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Nota delite." -msgid "Notice" -msgstr "Nota" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s etiquettate con %2$s" @@ -4909,6 +5004,8 @@ msgstr "Syndication de notas pro %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Syndication de notas pro %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Syndication de notas pro %s (Atom)" @@ -4975,92 +5072,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Repetition de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Tu non pote silentiar usatores in iste sito." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Usator es ja silentiate." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Sito" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Configurationes de base pro iste sito StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Le longitude del nomine del sito debe esser plus que zero." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Tu debe haber un valide adresse de e-mail pro contacto." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Lingua \"%s\" incognite." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Le limite minimal del texto es 0 (illimitate)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Le limite de duplicatos debe esser un o plus secundas." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "General" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nomine del sito" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Le nomine de tu sito, como \"Le microblog de TuCompania\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Realisate per" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Le texto usate pro le ligamine al creditos in le pede de cata pagina" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL pro \"Realisate per\"" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL usate pro le ligamine al creditos in le pede de cata pagina" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Le adresse de e-mail de contacto pro tu sito" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Local" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Fuso horari predefinite" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Fuso horari predefinite pro le sito; normalmente UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Lingua predefinite" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Le lingua del sito quando le detection automatic ex le configuration del " "navigator non es disponibile" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limites" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Limite de texto" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Numero maxime de characteres pro notas." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Limite de duplicatos" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Quante tempore (in secundas) le usatores debe attender ante de poter " "publicar le mesme cosa de novo." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Salveguardar configurationes del sito" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Aviso del sito" @@ -5182,9 +5329,8 @@ msgid "That is the wrong confirmation number." msgstr "Iste codice de confirmation es incorrecte." #. TRANS: Server error thrown on database error canceling SMS phone number confirmation. -#, fuzzy msgid "Could not delete SMS confirmation." -msgstr "Non poteva deler le confirmation." +msgstr "Non poteva deler le confirmation de SMS." #. TRANS: Message given after successfully canceling SMS phone number confirmation. msgid "SMS confirmation cancelled." @@ -5262,6 +5408,10 @@ msgstr "URL pro reporto" msgid "Snapshots will be sent to this URL" msgstr "Le instantaneos essera inviate a iste URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Salveguardar" + msgid "Save snapshot settings" msgstr "Salveguardar configuration de instantaneos" @@ -5607,6 +5757,7 @@ msgstr "" "de alcuno, clicca \"Rejectar\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Acceptar" @@ -5616,6 +5767,7 @@ msgid "Subscribe to this user." msgstr "Subscriber a iste usator." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Rejectar" @@ -5836,25 +5988,21 @@ msgid "Plugins" msgstr "Plug-ins" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Name" msgstr "Nomine" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Version" msgstr "Version" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Author(s)" msgstr "Autor(es)" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Description" msgstr "Description" @@ -6044,6 +6192,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6394,6 +6546,9 @@ msgstr "Impossibile deler configuration de apparentia." msgid "Home" msgstr "Initio" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configuration basic del sito" @@ -6433,6 +6588,10 @@ msgstr "Configuration del camminos" msgid "Sessions configuration" msgstr "Configuration del sessiones" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessiones" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Modificar aviso del sito" @@ -6541,6 +6700,7 @@ msgid "Describe your application" msgstr "Describe tu application" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Description" @@ -6656,6 +6816,10 @@ msgstr "Blocar" msgid "Block this user" msgstr "Blocar iste usator" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Resultatos del commando" @@ -6754,14 +6918,14 @@ msgid "Fullname: %s" msgstr "Nomine complete: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Loco: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7106,6 +7270,10 @@ msgstr "Error de base de datos" msgid "Public" msgstr "Public" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Deler" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Deler iste usator" @@ -7233,29 +7401,45 @@ msgstr "Ir" msgid "Grant this user the \"%s\" role" msgstr "Conceder le rolo \"%s\" a iste usator" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 minusculas o numeros, sin punctuation o spatios" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Blocar" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Blocar iste usator" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "URL del pagina initial o blog del gruppo o topico." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Describe le gruppo o topico" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Describe le gruppo o topico in %d character o minus" msgstr[1] "Describe le gruppo o topico in %d characteres o minus" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Loco del gruppo, si existe, como \"Citate, Provincia (o Region), Pais\"." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Aliases" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7269,6 +7453,27 @@ msgstr[1] "" "Pseudonymos additional pro le gruppo, separate per commas o spatios. Un " "maximo de %d aliases es permittite." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membro depost" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7293,6 +7498,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membros del gruppo %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Membros del gruppo %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7486,38 +7707,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s seque ora tu notas in %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Si tu crede que iste conto es usate abusivemente, tu pote blocar lo de tu " -"lista de subscriptores e reportar lo como spam al administratores del sito a " -"%s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s seque ora tu notas in %2$s.\n" "\n" @@ -7530,12 +7735,29 @@ msgstr "" "----\n" "Cambia tu adresse de e-mail o optiones de notification a %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profilo" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Bio: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Si tu crede que iste conto es usate abusivemente, tu pote blocar lo de tu " +"lista de subscriptores e reportar lo como spam al administratores del sito a " +"%s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7545,16 +7767,13 @@ msgstr "Nove adresse de e-mail pro publicar in %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "Tu ha un nove adresse pro publication in %1$s.\n" "\n" @@ -7589,8 +7808,8 @@ msgstr "%s te ha pulsate" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7599,10 +7818,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) se demanda lo que tu face iste dies e te invita a scriber alique " "de nove.\n" @@ -7625,8 +7841,7 @@ msgstr "Nove message private de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7638,10 +7853,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) te ha inviate un message private:\n" "\n" @@ -7669,7 +7881,7 @@ msgstr "%1$s (@%2$s) ha addite tu nota como favorite" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7683,10 +7895,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) addeva ante un momento tu nota de %2$s como un de su " "favorites.\n" @@ -7724,14 +7933,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) ha inviate un nota a tu attention" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7747,12 +7955,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) ha inviate un nota a tu attention (un '@-responsa') in %2$s.\n" "\n" @@ -7777,6 +7980,31 @@ msgstr "" "\n" "P.S. Tu pote disactivar iste notificationes electronic hic: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s se ha jungite al gruppo %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s se ha jungite al gruppo %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Solmente le usator pote leger su proprie cassas postal." @@ -7816,6 +8044,20 @@ msgstr "Pardono, le reception de e-mail non es permittite." msgid "Unsupported message type: %s" msgstr "Typo de message non supportate: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Facer le usator administrator del gruppo" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Facer admin" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Facer iste usator un administrator" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8334,60 +8576,57 @@ msgid "Error opening theme archive." msgstr "Error durante le apertura del archivo del apparentia." #. TRANS: Header for Notices section. -#, fuzzy msgctxt "HEADER" msgid "Notices" msgstr "Notas" #. TRANS: Link to show replies for a notice. #. TRANS: %d is the number of replies to a notice and used for plural. -#, fuzzy, php-format +#, php-format msgid "Show reply" msgid_plural "Show all %d replies" -msgstr[0] "Monstrar %d responsa" +msgstr[0] "Monstrar responsa" msgstr[1] "Monstrar tote le %d responsas" #. TRANS: Reference to the logged in user in favourite list. msgctxt "FAVELIST" msgid "You" -msgstr "" +msgstr "Tu" #. TRANS: Separator in list of user names like "You, Bob, Mary". msgid ", " -msgstr "" +msgstr ", " #. TRANS: For building a list such as "You, bob, mary and 5 others have favored this notice". #. TRANS: %1$s is a list of users, separated by a separator (default: ", "), %2$s is the last user in the list. -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "%1$s and %2$s" -msgstr "%1$s - %2$s" +msgstr "%1$s e %2$s" #. TRANS: List message for notice favoured by logged in user. -#, fuzzy msgctxt "FAVELIST" msgid "You have favored this notice." -msgstr "Favorir iste nota" +msgstr "Tu ha favorite iste nota." -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "One person has favored this notice." msgid_plural "%d people have favored this notice." -msgstr[0] "Disfavorir iste nota" -msgstr[1] "Disfavorir iste nota" +msgstr[0] "Un persona ha favorite iste nota." +msgstr[1] "%d personas ha favorite iste nota." #. TRANS: List message for notice repeated by logged in user. -#, fuzzy msgctxt "REPEATLIST" msgid "You have repeated this notice." -msgstr "Tu ha ja repetite iste nota." +msgstr "Tu ha repetite iste nota." -#, fuzzy, php-format +#, php-format msgctxt "REPEATLIST" msgid "One person has repeated this notice." msgid_plural "%d people have repeated this notice." -msgstr[0] "Iste nota ha ja essite repetite." -msgstr[1] "Iste nota ha ja essite repetite." +msgstr[0] "Un persona ha repetite iste nota." +msgstr[1] "%d personas ha repetite iste nota." #. TRANS: Title for top posters section. msgid "Top posters" @@ -8399,7 +8638,6 @@ msgid "Unblock" msgstr "Disblocar" #. TRANS: Title for unsandbox form. -#, fuzzy msgctxt "TITLE" msgid "Unsandbox" msgstr "Retirar del cassa de sablo" @@ -8422,7 +8660,6 @@ msgid "Unsubscribe from this user" msgstr "Cancellar subscription a iste usator" #. TRANS: Button text on unsubscribe form. -#, fuzzy msgctxt "BUTTON" msgid "Unsubscribe" msgstr "Cancellar subscription" @@ -8508,8 +8745,8 @@ msgstr "XML invalide, radice XRD mancante." msgid "Getting backup from file '%s'." msgstr "Obtene copia de reserva ex file '%s'." -#~ msgid "Couldn't update user." -#~ msgstr "Non poteva actualisar usator." +#~ msgid "Notice" +#~ msgstr "Nota" -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Non poteva actualisar le preferentias de MI del usator." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 minusculas o numeros, sin punctuation o spatios" diff --git a/locale/it/LC_MESSAGES/statusnet.po b/locale/it/LC_MESSAGES/statusnet.po index d5f63ac6f2..cccbe0f951 100644 --- a/locale/it/LC_MESSAGES/statusnet.po +++ b/locale/it/LC_MESSAGES/statusnet.po @@ -11,17 +11,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:50+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:39+0000\n" "Language-Team: Italian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: it\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -74,6 +74,8 @@ msgstr "Salva impostazioni di accesso" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -81,6 +83,7 @@ msgstr "Salva impostazioni di accesso" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Salva" @@ -764,6 +767,7 @@ msgstr "Account" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Soprannome" @@ -843,6 +847,7 @@ msgstr "Non puoi eliminare il messaggio di un altro utente." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Nessun messaggio." @@ -1055,6 +1060,103 @@ msgstr "Metodo delle API in lavorazione." msgid "User not found." msgstr "Metodo delle API non trovato." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Devi eseguire l'accesso per lasciare un gruppo." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Nessuna gruppo." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Nessun soprannome o ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Accesso non effettuato." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Profilo mancante." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Un elenco degli utenti in questo gruppo." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Impossibile iscrivere l'utente %1$s al gruppo %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Stato di %1$s su %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1140,36 +1242,6 @@ msgstr "Nessun file." msgid "Cannot delete someone else's favorite." msgstr "Impossibile eliminare un preferito." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Nessuna gruppo." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1287,6 +1359,7 @@ msgstr "Anteprima" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1455,6 +1528,14 @@ msgstr "Sblocca questo utente" msgid "Post to %s" msgstr "Invia a %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s ha lasciato il gruppo %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Nessun codice di conferma." @@ -1514,6 +1595,7 @@ msgid "Notices" msgstr "Messaggi" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1590,6 +1672,7 @@ msgstr "Applicazione non trovata." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Questa applicazione non è di tua proprietà." @@ -1626,12 +1709,6 @@ msgstr "Elimina l'applicazione" msgid "You must be logged in to delete a group." msgstr "Devi eseguire l'accesso per lasciare un gruppo." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Nessun soprannome o ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1928,6 +2005,7 @@ msgid "You must be logged in to edit an application." msgstr "Devi eseguire l'accesso per modificare un'applicazione." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Nessuna applicazione." @@ -2149,6 +2227,7 @@ msgstr "Impossibile normalizzare quell'indirizzo email" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Non è un indirizzo email valido." @@ -2525,33 +2604,26 @@ msgstr "Membri del gruppo %1$s, pagina %2$d" msgid "A list of the users in this group." msgstr "Un elenco degli utenti in questo gruppo." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Amministra" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Blocca" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Membri del gruppo %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Blocca questo utente" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Membri del gruppo %1$s, pagina %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Rende l'utente amministratore del gruppo" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Rendi amministratore" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Fa diventare questo utente un amministratore" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Un elenco degli utenti in questo gruppo." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2590,6 +2662,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Crea un nuovo gruppo" @@ -2978,21 +3051,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s fa ora parte del gruppo %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Devi eseguire l'accesso per lasciare un gruppo." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Sconosciuto" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Non fai parte di quel gruppo." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s ha lasciato il gruppo %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3423,10 +3491,13 @@ msgid "Notice %s not found." msgstr "Metodo delle API non trovato." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Il messaggio non ha un profilo." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Stato di %1$s su %2$s" @@ -3929,6 +4000,7 @@ msgstr "Informazioni sul profilo" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" @@ -3936,12 +4008,14 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nome" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Pagina web" @@ -3972,6 +4046,7 @@ msgstr "Biografia" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Ubicazione" @@ -4032,6 +4107,7 @@ msgstr[0] "La biografia è troppo lunga (max %d caratteri)." msgstr[1] "La biografia è troppo lunga (max %d caratteri)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Fuso orario non selezionato" @@ -4760,68 +4836,102 @@ msgstr "L'utente non ricopre questo ruolo." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Non puoi mettere in \"sandbox\" gli utenti su questo sito." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "L'utente è già nella \"sandbox\"." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessioni" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Impostazioni sessione per questo sito StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessioni" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Gestione sessioni" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Indica se gestire autonomamente le sessioni" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Debug delle sessioni" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Abilita il debug per le sessioni" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Salva" - -msgid "Save site settings" -msgstr "Salva impostazioni" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Salva impostazioni di accesso" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Devi eseguire l'accesso per visualizzare un'applicazione." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Profilo applicazione" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "creata da %1$s - %2$s accessi predefiniti - %3$d utenti" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "creata da %1$s - %2$s accessi predefiniti - %3$d utenti" +msgstr[1] "creata da %1$s - %2$s accessi predefiniti - %3$d utenti" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Azioni applicazione" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Modifica" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Reimposta chiave e segreto" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Elimina" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Informazioni applicazione" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Nota: sono supportate firme HMAC-SHA1, ma non è supportato il metodo di " "firma di testo in chiaro." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Ripristinare la chiave e il segreto?" @@ -4935,6 +5045,7 @@ msgstr "Tutti i membri" msgid "Statistics" msgstr "Statistiche" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4979,7 +5090,9 @@ msgstr "" "(http://it.wikipedia.org/wiki/Microblogging) basato sul software libero " "[StatusNet](http://status.net/)." -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Amministratori" @@ -5003,13 +5116,12 @@ msgstr "Messaggio a %1$s su %2$s" msgid "Message from %1$s on %2$s" msgstr "Messaggio da %1$s su %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Messaggio eliminato." -msgid "Notice" -msgstr "Messaggi" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, pagina %2$s" @@ -5044,6 +5156,8 @@ msgstr "Feed dei messaggi per %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Feed dei messaggi per %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Feed dei messaggi per %s (Atom)" @@ -5109,92 +5223,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Ripetizione di %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Non puoi zittire gli utenti su questo sito." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "L'utente è già stato zittito." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Sito" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Impostazioni di base per questo sito StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Il nome del sito non deve avere lunghezza parti a zero." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Devi avere un'email di contatto valida." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Lingua \"%s\" sconosciuta." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Il limite minimo del testo è di 0 caratteri (illimitato)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Il limite per i duplicati deve essere di 1 o più secondi." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Generale" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nome del sito" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Il nome del tuo sito, topo \"Acme Microblog\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Offerto da" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Testo usato per i crediti nel piè di pagina di ogni pagina" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL per offerto da" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL usato per i crediti nel piè di pagina di ogni pagina" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Email" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Indirizzo email di contatto per il sito" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Locale" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Fuso orario predefinito" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Fuso orario predefinito; tipicamente UTC" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Lingua predefinita" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Lingua del sito quando il rilevamento automatico del browser non è " "disponibile" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limiti" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Limiti del testo" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Numero massimo di caratteri per messaggo" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Limite duplicati" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Quanto tempo gli utenti devono attendere (in secondi) prima di inviare " "nuovamente lo stesso messaggio" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Salva impostazioni" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Messaggio del sito" @@ -5400,6 +5564,10 @@ msgstr "URL per la segnalazione" msgid "Snapshots will be sent to this URL" msgstr "Gli snapshot verranno inviati a questo URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Salva" + msgid "Save snapshot settings" msgstr "Salva impostazioni snapshot" @@ -5750,6 +5918,7 @@ msgstr "" "messaggi di questo utente. Se non hai richiesto ciò, fai clic su \"Rifiuta\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5761,6 +5930,7 @@ msgid "Subscribe to this user." msgstr "Abbonati a questo utente" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6197,6 +6367,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6553,6 +6727,9 @@ msgstr "Impossibile eliminare le impostazioni dell'aspetto." msgid "Home" msgstr "Pagina web" +msgid "Admin" +msgstr "Amministra" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configurazione di base" @@ -6592,6 +6769,10 @@ msgstr "Configurazione percorsi" msgid "Sessions configuration" msgstr "Configurazione sessioni" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessioni" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Modifica messaggio del sito" @@ -6699,6 +6880,7 @@ msgid "Describe your application" msgstr "Descrivi l'applicazione" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Descrizione" @@ -6817,6 +6999,10 @@ msgstr "Blocca" msgid "Block this user" msgstr "Blocca questo utente" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Risultati comando" @@ -6917,14 +7103,14 @@ msgid "Fullname: %s" msgstr "Nome completo: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Posizione: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7285,6 +7471,10 @@ msgstr "Errore del database" msgid "Public" msgstr "Pubblico" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Elimina" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Elimina questo utente" @@ -7419,31 +7609,46 @@ msgstr "Vai" msgid "Grant this user the \"%s\" role" msgstr "Concedi a questo utente il ruolo \"%s\"" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"1-64 lettere minuscole o numeri, senza spazi o simboli di punteggiatura" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Blocca" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Blocca questo utente" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL della pagina web, blog del gruppo o l'argomento" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Descrivi il gruppo o l'argomento" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Descrivi il gruppo o l'argomento in %d caratteri" msgstr[1] "Descrivi il gruppo o l'argomento in %d caratteri" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "Dove è situato il gruppo, tipo \"città, regione, stato\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Alias" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7456,6 +7661,27 @@ msgstr[0] "" msgstr[1] "" "Soprannomi aggiuntivi per il gruppo, separati da virgole o spazi, max %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membro dal" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Amministra" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7480,6 +7706,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membri del gruppo %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Membri del gruppo %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7669,38 +7911,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s sta ora seguendo i tuoi messaggi su %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Se credi che questo account non sia usato correttamente, puoi bloccarlo " -"dall'elenco dei tuoi abbonati e segnalarlo come spam all'amministratore del " -"sito presso %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s sta ora seguendo i tuoi messaggi su %2$s.\n" "\n" @@ -7713,12 +7939,29 @@ msgstr "" "----\n" "Modifica il tuo indirizzo email o le opzioni di notifica presso %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profilo" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Biografia: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Se credi che questo account non sia usato correttamente, puoi bloccarlo " +"dall'elenco dei tuoi abbonati e segnalarlo come spam all'amministratore del " +"sito presso %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7734,10 +7977,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Hai un nuovo indirizzo di invio su %1$s.\n" "\n" @@ -7773,8 +8013,8 @@ msgstr "%s ti ha richiamato" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7783,10 +8023,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) si sta chiedendo cosa tu stia facendo in questi giorni e ti " "invita a scrivere qualche cosa.\n" @@ -7809,8 +8046,7 @@ msgstr "Nuovo messaggio privato da %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7822,10 +8058,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) ti ha inviato un messaggio privato:\n" "\n" @@ -7853,7 +8086,7 @@ msgstr "%s (@%s) ha aggiunto il tuo messaggio tra i suoi preferiti" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7867,10 +8100,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) ha appena aggiunto il tuo messaggio da %2$s tra i suoi " "preferiti.\n" @@ -7908,14 +8138,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) ti ha inviato un messaggio" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7931,12 +8160,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) ti ha appena inviato un messaggio (una \"@-risposta\") su %2" "$s.\n" @@ -7962,6 +8186,31 @@ msgstr "" "\n" "P.S: puoi disabilitare le notifiche via email qui: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "L'utente %1$s è entrato nel gruppo %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "L'utente %1$s è entrato nel gruppo %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Solo l'utente può leggere la propria casella di posta." @@ -8001,6 +8250,20 @@ msgstr "Email di ricezione non consentita." msgid "Unsupported message type: %s" msgstr "Tipo di messaggio non supportato: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Rende l'utente amministratore del gruppo" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Rendi amministratore" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Fa diventare questo utente un amministratore" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8703,9 +8966,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Impossibile aggiornare l'utente." +#~ msgid "Notice" +#~ msgstr "Messaggi" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Impossibile aggiornare il record dell'utente." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1-64 lettere minuscole o numeri, senza spazi o simboli di punteggiatura" diff --git a/locale/ja/LC_MESSAGES/statusnet.po b/locale/ja/LC_MESSAGES/statusnet.po index 351ddf8e54..dcf62936c5 100644 --- a/locale/ja/LC_MESSAGES/statusnet.po +++ b/locale/ja/LC_MESSAGES/statusnet.po @@ -14,17 +14,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:51+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:40+0000\n" "Language-Team: Japanese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ja\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -76,6 +76,8 @@ msgstr "アクセス設定の保存" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -83,6 +85,7 @@ msgstr "アクセス設定の保存" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "保存" @@ -755,6 +758,7 @@ msgstr "アカウント" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "ニックネーム" @@ -835,6 +839,7 @@ msgstr "他のユーザのステータスを消すことはできません。" #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "そのようなつぶやきはありません。" @@ -1044,6 +1049,104 @@ msgstr "API メソッドが工事中です。" msgid "User not found." msgstr "API メソッドが見つかりません。" +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "グループから離れるにはログインしていなければなりません。" + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "そのようなグループはありません。" + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#, fuzzy +msgid "No nickname or ID." +msgstr "ニックネームがありません。" + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "ログインしていません。" + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "ユーザはプロフィールをもっていません。" + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "このグループのユーザのリスト。" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "ユーザ %1$s はグループ %2$s に参加できません。" + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%2$s における %1$s のステータス" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1130,36 +1233,6 @@ msgstr "そのようなファイルはありません。" msgid "Cannot delete someone else's favorite." msgstr "お気に入りを取り消すことができません。" -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "そのようなグループはありません。" - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1276,6 +1349,7 @@ msgstr "プレビュー" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1446,6 +1520,14 @@ msgstr "このユーザをアンブロックする" msgid "Post to %s" msgstr "%s 上のグループ" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s はグループ %2$s に残りました。" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "確認コードがありません。" @@ -1505,6 +1587,7 @@ msgid "Notices" msgstr "つぶやき" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1581,6 +1664,7 @@ msgstr "アプリケーションが見つかりません。" #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "このアプリケーションのオーナーではありません。" @@ -1618,13 +1702,6 @@ msgstr "このアプリケーションを削除" msgid "You must be logged in to delete a group." msgstr "グループから離れるにはログインしていなければなりません。" -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -#, fuzzy -msgid "No nickname or ID." -msgstr "ニックネームがありません。" - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1922,6 +1999,7 @@ msgid "You must be logged in to edit an application." msgstr "アプリケーションを編集するにはログインしていなければなりません。" #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "そのようなアプリケーションはありません。" @@ -2145,6 +2223,7 @@ msgstr "そのメールアドレスを正規化できません" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "有効なメールアドレスではありません。" @@ -2526,33 +2605,26 @@ msgstr "%1$s グループメンバー、ページ %2$d" msgid "A list of the users in this group." msgstr "このグループのユーザのリスト。" -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "管理者" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s グループメンバー" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "ユーザをグループの管理者にする" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s グループメンバー、ページ %2$d" -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "このグループのユーザのリスト。" #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2591,6 +2663,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "新しいグループを作成" @@ -2975,21 +3048,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s はグループ %2$s に参加しました" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "グループから離れるにはログインしていなければなりません。" +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "不明" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "あなたはそのグループのメンバーではありません。" -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s はグループ %2$s に残りました。" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3419,10 +3487,13 @@ msgid "Notice %s not found." msgstr "API メソッドが見つかりません。" #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "ユーザはプロフィールをもっていません。" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%2$s における %1$s のステータス" @@ -3924,18 +3995,21 @@ msgstr "プロファイル情報" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64文字の、小文字アルファベットか数字で、スペースや句読点は除く" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "フルネーム" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "ホームページ" @@ -3965,6 +4039,7 @@ msgstr "自己紹介" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "場所" @@ -4023,6 +4098,7 @@ msgid_plural "Bio is too long (maximum %d characters)." msgstr[0] "自己紹介が長すぎます (最長%d文字)。" #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "タイムゾーンが選ばれていません。" @@ -4750,68 +4826,101 @@ msgstr "合っているプロフィールのないユーザ" msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "あなたはこのサイトのサンドボックスユーザができません。" +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "ユーザはすでにサンドボックスです。" -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "セッション" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "セッション" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "セッションの扱い" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "自分達でセッションを扱うのであるかどうか。" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "セッションデバッグ" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "セッションのためのデバッグ出力をオン。" -#. TRANS: Submit button title. -msgid "Save" -msgstr "保存" - -msgid "Save site settings" -msgstr "サイト設定の保存" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "アクセス設定の保存" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "!!アプリケーションを見るためにはログインしていなければなりません。" +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "アプリケーションプロファイル" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "アプリケーションアクション" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "編集" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "key と secret のリセット" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "削除" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "アプリケーション情報" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "注意: 私たちはHMAC-SHA1署名をサポートします。 私たちは平文署名メソッドをサ" "ポートしません。" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. #, fuzzy msgid "Are you sure you want to reset your consumer key and secret?" msgstr "本当にこのつぶやきを削除しますか?" @@ -4927,6 +5036,7 @@ msgstr "全てのメンバー" msgid "Statistics" msgstr "統計データ" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4971,7 +5081,9 @@ msgstr "" "wikipedia.org/wiki/Micro-blogging) サービス。メンバーは彼らの暮らしと興味に関" "する短いメッセージを共有します。" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "管理者" @@ -4995,13 +5107,12 @@ msgstr "%2$s 上の %1$s へのメッセージ" msgid "Message from %1$s on %2$s" msgstr "%2$s 上の %1$s からのメッセージ" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "つぶやきを削除しました。" -msgid "Notice" -msgstr "つぶやき" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s、ページ %2$d" @@ -5036,6 +5147,8 @@ msgstr "%sのつぶやきフィード (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "%sのつぶやきフィード (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "%sのつぶやきフィード (Atom)" @@ -5101,95 +5214,145 @@ msgstr "" msgid "Repeat of %s" msgstr "%s の繰り返し" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "あなたはこのサイトでユーザを黙らせることができません。" +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "ユーザは既に黙っています。" +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "サイト" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "この StatusNet サイトのデザイン設定。" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "サイト名は長さ0ではいけません。" +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "有効な連絡用メールアドレスがなければなりません。" +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "不明な言語 \"%s\"" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. #, fuzzy msgid "Minimum text limit is 0 (unlimited)." msgstr "最小のテキスト制限は140字です。" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. #, fuzzy msgid "Dupe limit must be one or more seconds." msgstr "デュープ制限は1秒以上でなければなりません。" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "一般" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "サイト名" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "あなたのサイトの名前、\"Yourcompany Microblog\"のような。" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "持って来られます" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "" "クレジットに使用されるテキストは、それぞれのページのフッターでリンクされま" "す。" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URLで、持って来られます" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "" "クレジットに使用されるURLは、それぞれのページのフッターでリンクされます。" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "メール" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "あなたのサイトにコンタクトするメールアドレス" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "ローカル" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "デフォルトタイムゾーン" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "サイトのデフォルトタイムゾーン; 通常UTC。" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "ご希望の言語" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "制限" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "テキスト制限" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "つぶやきの文字の最大数" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "デュープ制限" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "どれくらい長い間(秒)、ユーザは、再び同じものを投稿するのを待たなければならな" "いか。" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "サイト設定の保存" + #. TRANS: Page title for site-wide notice tab in admin panel. #, fuzzy msgid "Site Notice" @@ -5403,6 +5566,10 @@ msgstr "レポート URL" msgid "Snapshots will be sent to this URL" msgstr "このURLにスナップショットを送るでしょう" +#. TRANS: Submit button title. +msgid "Save" +msgstr "保存" + #, fuzzy msgid "Save snapshot settings" msgstr "サイト設定の保存" @@ -5752,6 +5919,7 @@ msgstr "" "フォローするために尋ねない場合は、\"Reject\" をクリックして下さい。" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5763,6 +5931,7 @@ msgid "Subscribe to this user." msgstr "このユーザーをフォロー" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6184,6 +6353,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6538,6 +6711,9 @@ msgstr "デザイン設定を削除できません。" msgid "Home" msgstr "ホームページ" +msgid "Admin" +msgstr "管理者" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "基本サイト設定" @@ -6579,6 +6755,10 @@ msgstr "パス設定" msgid "Sessions configuration" msgstr "セッション設定" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "セッション" + #. TRANS: Menu item title/tooltip #, fuzzy msgid "Edit site notice" @@ -6687,6 +6867,7 @@ msgid "Describe your application" msgstr "あなたのアプリケーションを記述" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "概要" @@ -6807,6 +6988,10 @@ msgstr "ブロック" msgid "Block this user" msgstr "このユーザをブロックする" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "コマンド結果" @@ -6909,14 +7094,14 @@ msgid "Fullname: %s" msgstr "フルネーム: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "場所: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7272,6 +7457,10 @@ msgstr "データベースエラー" msgid "Public" msgstr "パブリック" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "削除" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "このユーザを削除" @@ -7406,29 +7595,45 @@ msgstr "移動" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64文字の、小文字アルファベットか数字で、スペースや句読点は除く" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "グループやトピックのホームページやブログの URL" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "グループやトピックを記述" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "グループやトピックを %d 字以内記述" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "グループの場所, 例えば \"都市, 都道府県 (または 地域), 国\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "別名" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7439,6 +7644,27 @@ msgid_plural "" msgstr[0] "" "グループのエクストラニックネーム、カンマまたはスペース区切り、最大 %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "利用開始日" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "管理者" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7463,6 +7689,21 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s グループメンバー" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7651,35 +7892,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s は %2$s であなたのつぶやきを聞いています。" -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s は %2$s であなたのつぶやきを聞いています。\n" "\n" @@ -7692,12 +7920,26 @@ msgstr "" "----\n" "%8$s でメールアドレスか通知オプションを変えてください。\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "プロファイル" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "自己紹介: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7713,10 +7955,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "あなたは %1$s に関する新しい投稿アドレスを持っています。\n" "\n" @@ -7751,7 +7990,7 @@ msgstr "あなたは %s に合図されています" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, fuzzy, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7761,10 +8000,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s ($2$s) は、最近まであなたが何であるかと思っていて、あなたが何らかの" "ニュースを投稿するよう誘っています。\n" @@ -7787,7 +8023,6 @@ msgstr "%s からの新しいプライベートメッセージ" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7800,10 +8035,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) はあなたにプライベートメッセージを送りました:\n" "\n" @@ -7845,10 +8077,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) は彼らのお気に入りのひとりとして %2$s からあなたのつぶやきを加え" "ました。\n" @@ -7883,14 +8112,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) はあなた宛てにつぶやきを送りました" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7906,12 +8134,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s はグループ %2$s に参加しました" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s は %2$s でお気に入りを更新しました / %2$s。" + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7953,6 +8201,20 @@ msgstr "すみません、入ってくるメールは許可されていません msgid "Unsupported message type: %s" msgstr "サポート外のメッセージタイプ: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "ユーザをグループの管理者にする" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8644,9 +8906,8 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "ユーザを更新できませんでした。" +#~ msgid "Notice" +#~ msgstr "つぶやき" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "ユーザレコードを更新できません。" +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64文字の、小文字アルファベットか数字で、スペースや句読点は除く" diff --git a/locale/ka/LC_MESSAGES/statusnet.po b/locale/ka/LC_MESSAGES/statusnet.po index defae13f0b..beaf3ec8de 100644 --- a/locale/ka/LC_MESSAGES/statusnet.po +++ b/locale/ka/LC_MESSAGES/statusnet.po @@ -9,17 +9,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:52+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:42+0000\n" "Language-Team: Georgian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ka\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -70,6 +70,8 @@ msgstr "შეინახე შესვლის პარამეტრე #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -77,6 +79,7 @@ msgstr "შეინახე შესვლის პარამეტრე #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "შეინახე" @@ -741,6 +744,7 @@ msgstr "ანგარიში" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "მეტსახელი" @@ -820,6 +824,7 @@ msgstr "სხვა მომხმარებლის სტატუსი #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "ასეთი შეტყობინება არ არსებობს." @@ -1029,6 +1034,103 @@ msgstr "API მეთოდი დამუშავების პროცე msgid "User not found." msgstr "API მეთოდი ვერ მოიძებნა." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "გჯუფის დატოვებისათვის საჭიროა ავტორიზაცია." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "ასეთი ჯგუფი ვერ მოიძებნა." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "მეტსახელი ან ID უცნობია." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "ავტორიზებული არ ხართ." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "პროფილი არ არსებობს." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "ამ ჯგუფის წევრების სია." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "ვერ მოხერხდა მომხმარებელ %1$s-სთან ერთად ჯგუფ %2$s-ში გაერთიანება." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s–ის სტატუსი %2$s–ზე" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1113,36 +1215,6 @@ msgstr "ასეთი ფაილი არ არსებობს." msgid "Cannot delete someone else's favorite." msgstr "ფავორიტის წაშლა ვერ მოხერხდა." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "ასეთი ჯგუფი ვერ მოიძებნა." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1260,6 +1332,7 @@ msgstr "წინასწარი გადახედვა" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1425,6 +1498,14 @@ msgstr "მომხმარებლის ბლოკირების მ msgid "Post to %s" msgstr "დაუპოსტე %s-ს" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s-მა დატოვა ჯგუფი %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "დასადასტურებელი კოდი არ არის." @@ -1484,6 +1565,7 @@ msgid "Notices" msgstr "შეტყობინებები" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1560,6 +1642,7 @@ msgstr "აპლიკაცია ვერ მოიძებნა." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "თქვენ არ ხართ ამ აპლიკაციის მფლობელი." @@ -1596,12 +1679,6 @@ msgstr "აპლიკაციის წაშლა" msgid "You must be logged in to delete a group." msgstr "გჯუფის დატოვებისათვის საჭიროა ავტორიზაცია." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "მეტსახელი ან ID უცნობია." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1897,6 +1974,7 @@ msgid "You must be logged in to edit an application." msgstr "აპლიკაციის ჩასასწორებლად საჭიროა ავროტიზაცია." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "ასეთი აპლიკაცია არ არის." @@ -2116,6 +2194,7 @@ msgstr "Jabber ID-ს ნორმალიზაცია ვერ ხერ #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "არასწორი ელ. ფოსტის მისამართი." @@ -2490,33 +2569,26 @@ msgstr "%1$s ჯგუფის წევრი, გვერდი %2$d" msgid "A list of the users in this group." msgstr "ამ ჯგუფის წევრების სია." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "ადმინი" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s ჯგუფის წევრი" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "მიანიჭე მომხმარებელს ჯგუფის ადმინობა" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s ჯგუფის წევრი, გვერდი %2$d" -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "ამ ჯგუფის წევრების სია." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2555,6 +2627,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "შექმენი ახალი ჯგუფი" @@ -2940,21 +3013,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s გაწევრიანდა ჯგუფში %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "გჯუფის დატოვებისათვის საჭიროა ავტორიზაცია." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "უცნობი" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "თვენ არ ხართ ამ ჯგუფის წევრი." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s-მა დატოვა ჯგუფი %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3379,10 +3447,13 @@ msgid "Notice %s not found." msgstr "API მეთოდი ვერ მოიძებნა." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "შეტყობინებას პრფილი არ გააჩნია." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s–ის სტატუსი %2$s–ზე" @@ -3880,18 +3951,21 @@ msgstr "ინფორმაცია პროფილზე" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1–64 პატარა ასოები ან ციფრები. პუნქტუაციები ან სივრცეები დაუშვებელია" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "სრული სახელი" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "ვებ. გვერსი" @@ -3921,6 +3995,7 @@ msgstr "ბიოგრაფია" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "მდებარეობა" @@ -3980,6 +4055,7 @@ msgid_plural "Bio is too long (maximum %d characters)." msgstr[0] "ბიოგრაფია ძალიან გრძელია (არაუმეტეს %d სიმბოლო)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "დროის სარტყელი არ არის არჩეული." @@ -4704,68 +4780,100 @@ msgstr "მომხმარებელს არ გააჩნია ეს msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "თქვენ ვერ შეძლებთ მომხმარებლების იზოლირებას ამ საიტზე." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "მომხმარებელი უკვე იზოლირებულია." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "სესიები" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "სესიები" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "სესიების მართვა" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "ვმართოთ თუ არა სესიები ჩვენით." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "სესიების შეცდომების გამოსწორება (debugging)" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "შენახვა" - -msgid "Save site settings" -msgstr "საიტის პარამეტრების შენახვა" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "შეინახე შესვლის პარამეტრები" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "აპლიკაციის სანახავად საჭიროა ავროტიზაცია." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "აპლიკაციის პროფილი" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "აპლიკაციის მოქმედებები" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "რედაქტირება" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "გასაღების და საიდუმლოს გადაყენება" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "წაშლა" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "ინფო აპლიკაციაზე" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "შენიშვნა: ჩვენ მხარს ვუჭერთ HMAC-SHA1 ხელმოწერებს. ჩვენ არ ვუჭერთ მხარს " "მხოლოდ ტექსტური ხელმოწერის მეთოდს." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "დარწმუნებული ხართ რომ გნებავთ თქვენი მომხმარებლის გასაღების და საიდუმლოს " @@ -4877,6 +4985,7 @@ msgstr "" msgid "Statistics" msgstr "სტატისტიკა" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4912,9 +5021,11 @@ msgid "" "their life and interests. " msgstr "" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" -msgstr "" +msgstr "ადმინი" #. TRANS: Client error displayed requesting a single message that does not exist. msgid "No such message." @@ -4936,14 +5047,12 @@ msgstr "" msgid "Message from %1$s on %2$s" msgstr "" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "" -#, fuzzy -msgid "Notice" -msgstr "შეტყობინებები" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s - %2$s" @@ -4978,6 +5087,8 @@ msgstr "" msgid "Notice feed for %s (RSS 2.0)" msgstr "" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "" @@ -5033,89 +5144,139 @@ msgstr "" msgid "Repeat of %s" msgstr "" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "თქვენ ვერ შეძლებთ მომხმარებლების დადუმებას ამ საიტზე." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "მომხმარებელი უკვე დადუმებულია." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "საიტი" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "ამ საიტის ძირითადი პარამეტრები" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "საიტის სახელი არ უნდა იყოს ნულოვანი სიგრძის." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "თქვენ უნდა გქონდეთ ნამდვილი საკონტაქტო ელ. ფოსტის მისამართი." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "უცნობი ენა \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "ტექსტის მინიმალური ზღვარია 0 (ულიმიტო)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "ძირითადი" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "საიტის სახელი" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "თქვენი საიტის სახელი, როგორც \"თქვენი კომპანიის მიკრობლოგი\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "ტექსტი გამოყენებული თითოეული გვერდის ბოლოს კრედიტებისთვის" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "მომწოდებლის URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL გამოყენებული კრედიტებისათვის თითოეული გვერდი ბოლოს" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "ელ. ფოსტა" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "თქვენი საიტის საკონტაქტო ელ. ფოსტის მისამართი" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "ლოკალური" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "პირვანდელი დროის სარტყელი" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "პირვანდელი დროის სარტყელი ამ საიტისთვის; ძირითადად UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "პირვანდელი ენა" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "საიტის ენა, როდესაც ბროუზერის ავტოდამდგენი არ არის ხელმისაწვდომი" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "ზღვრები" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "ტექსტის ზღვარი" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "შეტყობინების სიმბოლოთა მაქსიმალური რაოდენობა." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "რამდენი ხანი (წამებში) უნდა ელოდოს მომხმარებელი რომ დაპოსტოს ერთი და იგივე." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "საიტის პარამეტრების შენახვა" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "საიტის შეტყობინება" @@ -5324,6 +5485,10 @@ msgstr "" msgid "Snapshots will be sent to this URL" msgstr "მდგომარეობა გაიგზავნება ამ URL-ზე" +#. TRANS: Submit button title. +msgid "Save" +msgstr "შენახვა" + msgid "Save snapshot settings" msgstr "დაიმახსოვრე მდგომარეობის პარამეტრები" @@ -5675,6 +5840,7 @@ msgstr "" "\"უარყოფა\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5686,6 +5852,7 @@ msgid "Subscribe to this user." msgstr "გამოიწერე ეს მომხმარებელი" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6116,6 +6283,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6469,6 +6640,9 @@ msgstr "დიზაინის პარამეტრების წაშ msgid "Home" msgstr "ვებ. გვერსი" +msgid "Admin" +msgstr "ადმინი" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "საიტის ძირითადი კონფიგურაცია" @@ -6508,6 +6682,10 @@ msgstr "გზების კონფიგურაცია" msgid "Sessions configuration" msgstr "სესიების კონფიგურაცია" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "სესიები" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "საიტის შეტყობინების რედაქტირება" @@ -6614,6 +6792,7 @@ msgid "Describe your application" msgstr "აღწერეთ თქვენი აპლიკაცია" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "აღწერა" @@ -6732,6 +6911,10 @@ msgstr "ბლოკირება" msgid "Block this user" msgstr "დაბლოკე ეს მომხმარებელი" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "ბრძანების შედეგები" @@ -6832,14 +7015,14 @@ msgid "Fullname: %s" msgstr "სრული სახელი: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "მდებარეობა: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7193,6 +7376,10 @@ msgstr "მონაცემთა ბაზის შეცდომა" msgid "Public" msgstr "საჯარო" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "წაშლა" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "ამ მომხმარებლის წაშლა" @@ -7326,21 +7513,34 @@ msgstr "წინ" msgid "Grant this user the \"%s\" role" msgstr "მიანიჭე ამ მომხმარებელს \"%s\" როლი" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1–64 პატარა ასოები ან ციფრები. პუნქტუაციები ან სივრცეები დაუშვებელია" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "საწყისი გვერდის URL, ან ჯგუფის/თემის ბლოგი" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "აღწერე ჯგუფი ან თემა" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "არწერე ჯგუფი ან თემა %d სიმბოლოთი" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." @@ -7348,9 +7548,12 @@ msgstr "" "ჯგუფის მდებარეობა არსებობის შემთხვევაში. მაგ.: \"ქალაქი, ქვეყანა (ან რეგიონი)" "\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7362,6 +7565,26 @@ msgstr[0] "" "ჯგუფის დამატებითი მეტსახელები. გამოყავით მძიმით ან სივრცით. მაქსიმუმ %d " "სიმბოლო" +#. TRANS: Dropdown fieldd label on group edit form. +msgid "Membership policy" +msgstr "" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "ადმინი" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7386,6 +7609,21 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s ჯგუფის წევრი" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7573,38 +7811,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s ამიერიდან ყურს უგდებს თქვენს შეტყობინებებს %2$s-ზე." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"ტუ თქვენ გგონიათ, რომ ეს ანგარიში არაკეთილსინგისიერად გამოიყენება, შეგიძლიათ " -"დაბლოკოთ ის თქვნი გამომწერებიდან და უჩივლოთ მას საიტის ადმინისტრაციასთან აქ %" -"s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s ამიერიდან ყურს უგდებს თქვენს შეტყობინებებს %2$s-ზე.\n" "\n" @@ -7617,12 +7839,29 @@ msgstr "" "----\n" "შეცვალეთ თქვენი ელ. ფოსტის მისამართი ან შეტყობინებების პარამეტრები აქ %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "პროფილი" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "ბიოგრაფია: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"ტუ თქვენ გგონიათ, რომ ეს ანგარიში არაკეთილსინგისიერად გამოიყენება, შეგიძლიათ " +"დაბლოკოთ ის თქვნი გამომწერებიდან და უჩივლოთ მას საიტის ადმინისტრაციასთან აქ %" +"s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7638,10 +7877,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "თქვენ ახალი დასაპოსტი ელ. ფოსტის მისამართი გაქვთ %1$s-ზე.\n" "\n" @@ -7677,8 +7913,8 @@ msgstr "თქვენ აგეკრძალათ გამოწერა. #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7687,10 +7923,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) დაინტერესდა თუ რას აკეთებთ ამ დღეებში და გეპატიჟებათ რაიმე " "სიახლეების დასაპოსტად.\n" @@ -7713,8 +7946,7 @@ msgstr "ახალი პირადი შეტყობინება %s- #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7726,10 +7958,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s-მა (%2$s) გამოგიგზავნათ პირადი შეტყობინება:\n" "\n" @@ -7757,7 +7986,7 @@ msgstr "%s-მა (@%s) დაამატა თქვენი შეტყო #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7771,10 +8000,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s-მა (@%7$s) ეხლახანს დაამატა თქვენი შეტყობინება თავის რჩეულებში %2$s-" "ზე.\n" @@ -7812,14 +8038,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s-მა (@%s) გამოაგზავნა შეტყობინება თქვენს საყურადღებოდ" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7835,12 +8060,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s გაწევრიანდა ჯგუფში %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s გაწევრიანდა ჯგუფში %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7884,6 +8129,20 @@ msgstr "ბოდიში, შემომავალი ელ. ფოსტ msgid "Unsupported message type: %s" msgstr "შეტყობინების ტიპი არ არის მხარდაჭერილი: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "მიანიჭე მომხმარებელს ჯგუფის ადმინობა" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "ფაილის შენახვისას მოხდა მონაცემთა ბაზის შეცდომა. გთხოვთ კიდევ სცადოთ." @@ -8577,9 +8836,10 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "მომხმარებლის განახლება ვერ მოხერხდა." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "მომხმარებლის ჩანაწერის განახლება ვერ მოხერხდა." +#~ msgid "Notice" +#~ msgstr "შეტყობინებები" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1–64 პატარა ასოები ან ციფრები. პუნქტუაციები ან სივრცეები დაუშვებელია" diff --git a/locale/ko/LC_MESSAGES/statusnet.po b/locale/ko/LC_MESSAGES/statusnet.po index d37cb55eb4..3a88455aa8 100644 --- a/locale/ko/LC_MESSAGES/statusnet.po +++ b/locale/ko/LC_MESSAGES/statusnet.po @@ -11,17 +11,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:54+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:43+0000\n" "Language-Team: Korean \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ko\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -72,6 +72,8 @@ msgstr "접근 설정을 저장" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -79,6 +81,7 @@ msgstr "접근 설정을 저장" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "저장" @@ -747,6 +750,7 @@ msgstr "계정" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "별명" @@ -826,6 +830,7 @@ msgstr "당신은 다른 사용자의 상태를 삭제하지 않아도 된다." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "그러한 통지는 없습니다." @@ -1034,6 +1039,104 @@ msgstr "API 메서드를 구성중 입니다." msgid "User not found." msgstr "API 메서드 발견 안 됨." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "그룹을 떠나기 위해서는 로그인해야 합니다." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "그러한 그룹이 없습니다." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#, fuzzy +msgid "No nickname or ID." +msgstr "별명이 없습니다." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "로그인하고 있지 않습니다." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "프로파일이 없습니다." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "이 그룹의 회원리스트" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "이용자 %1$s 의 그룹 %2$s 가입에 실패했습니다." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s의 상태 (%2$s에서)" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1119,36 +1222,6 @@ msgstr "해당하는 파일이 없습니다." msgid "Cannot delete someone else's favorite." msgstr "관심소식을 삭제할 수 없습니다." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "그러한 그룹이 없습니다." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1265,6 +1338,7 @@ msgstr "미리보기" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #, fuzzy msgctxt "BUTTON" msgid "Delete" @@ -1433,6 +1507,14 @@ msgstr "이 사용자를 차단해제합니다." msgid "Post to %s" msgstr "%s 사이트의 그룹" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s의 상태 (%2$s에서)" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "확인 코드가 없습니다." @@ -1492,6 +1574,7 @@ msgid "Notices" msgstr "통지" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1568,6 +1651,7 @@ msgstr "인증 코드가 없습니다." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "이 응용프로그램 삭제 않기" @@ -1602,13 +1686,6 @@ msgstr "이 응용프로그램 삭제" msgid "You must be logged in to delete a group." msgstr "그룹을 떠나기 위해서는 로그인해야 합니다." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -#, fuzzy -msgid "No nickname or ID." -msgstr "별명이 없습니다." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1898,6 +1975,7 @@ msgid "You must be logged in to edit an application." msgstr "응용 프로그램 수정을 위해서는 로그인해야 합니다." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "신규 응용 프로그램" @@ -2117,6 +2195,7 @@ msgstr "메일 주소를 정규화 할 수 없습니다." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "올바른 메일 주소가 아닙니다." @@ -2491,34 +2570,27 @@ msgstr "%s 그룹 회원" msgid "A list of the users in this group." msgstr "이 그룹의 회원리스트" -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "관리자" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "차단" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "이 사용자 차단" - -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "사용자를 그룹의 관리자로 만듭니다" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "관리자 만들기" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s 그룹 회원" + +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%s 그룹 회원" + +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "이 그룹의 회원리스트" + #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, fuzzy, php-format msgid "Updates from members of %1$s on %2$s!" @@ -2551,6 +2623,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "새 그룹을 만듭니다." @@ -2920,21 +2993,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s의 상태 (%2$s에서)" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "그룹을 떠나기 위해서는 로그인해야 합니다." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "알려지지 않은 행동" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "당신은 해당 그룹의 멤버가 아닙니다." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s의 상태 (%2$s에서)" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3362,10 +3430,13 @@ msgid "Notice %s not found." msgstr "API 메서드 발견 안 됨." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "이용자가 프로필을 가지고 있지 않습니다." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s의 상태 (%2$s에서)" @@ -3859,18 +3930,21 @@ msgstr "프로필 정보" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64자 사이에 영소문자, 숫자로만 씁니다. 기호나 공백을 쓰면 안 됩니다." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "실명" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "홈페이지" @@ -3900,6 +3974,7 @@ msgstr "자기소개" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "위치" @@ -3956,6 +4031,7 @@ msgid_plural "Bio is too long (maximum %d characters)." msgstr[0] "설명이 너무 깁니다. (최대 %d 글자)" #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "타임존이 설정 되지 않았습니다." @@ -4663,66 +4739,96 @@ msgstr "이용자가 프로필을 가지고 있지 않습니다." msgid "StatusNet" msgstr "StatusNet %s" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "이 사이트의 이용자에 대해 권한정지 할 수 없습니다." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "이용자의 지속적인 게시글이 없습니다." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "세션" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "세션" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +msgid "Handle sessions ourselves." msgstr "" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "세션 디버깅" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "저장" - -msgid "Save site settings" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" msgstr "접근 설정을 저장" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "응용 프로그램 수정을 위해서는 로그인해야 합니다." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "신규 응용 프로그램" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "인증 코드가 없습니다." +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "편집" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "삭제" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "인증 코드가 없습니다." +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. #, fuzzy msgid "Are you sure you want to reset your consumer key and secret?" msgstr "정말로 통지를 삭제하시겠습니까?" @@ -4831,6 +4937,7 @@ msgstr "모든 회원" msgid "Statistics" msgstr "통계" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4868,8 +4975,9 @@ msgstr "" "**%s** 는 %%%%site.name%%%% [마이크로블로깅)(http://en.wikipedia.org/wiki/" "Micro-blogging)의 사용자 그룹입니다. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. #, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "관리자" @@ -4893,14 +5001,13 @@ msgstr "%2$s에서 %1$s까지 메시지" msgid "Message from %1$s on %2$s" msgstr "%1$s에서 %2$s까지 메시지" +#. TRANS: Client error displayed trying to show a deleted notice. #, fuzzy msgid "Notice deleted." msgstr "게시글이 등록되었습니다." -msgid "Notice" -msgstr "통지" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%s 및 친구들, %d 페이지" @@ -4935,6 +5042,8 @@ msgstr "%s 그룹을 위한 공지피드 (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "%s 그룹을 위한 공지피드 (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "%s 그룹을 위한 공지피드 (Atom)" @@ -4992,91 +5101,136 @@ msgstr "" msgid "Repeat of %s" msgstr "%s에 답신" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "이 사이트의 이용자에 대해 권한정지 할 수 없습니다." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "사용자가 귀하를 차단했습니다." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "사이트" + +#. TRANS: Instructions for site administration panel. #, fuzzy msgid "Basic settings for this StatusNet site" msgstr "이 StatusNet 사이트에 대한 디자인 설정" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "" +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "올바른 메일 주소가 아닙니다." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "일반" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "사이트 테마" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "메일" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "%s에 포스팅 할 새로운 메일 주소" +#. TRANS: Fieldset legend on site settings panel. #, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "로컬 뷰" +#. TRANS: Dropdown label on site settings panel. #, fuzzy msgid "Default timezone" msgstr "기본 언어" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "기본 언어" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +msgctxt "LEGEND" msgid "Limits" msgstr "" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "접근 설정을 저장" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "사이트 공지 사항" @@ -5284,6 +5438,10 @@ msgstr "소스 코드 URL" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "저장" + msgid "Save snapshot settings" msgstr "접근 설정을 저장" @@ -5621,6 +5779,7 @@ msgstr "" "\"를 클릭해 주세요." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5632,6 +5791,7 @@ msgid "Subscribe to this user." msgstr "이 회원을 구독합니다." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6059,6 +6219,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6414,6 +6578,9 @@ msgstr "디자인 설정을 저장할 수 없습니다." msgid "Home" msgstr "홈페이지" +msgid "Admin" +msgstr "관리자" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "메일 주소 확인" @@ -6453,6 +6620,10 @@ msgstr "메일 주소 확인" msgid "Sessions configuration" msgstr "메일 주소 확인" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "세션" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "사이트 공지 편집" @@ -6557,6 +6728,7 @@ msgid "Describe your application" msgstr "응용프로그램 삭제" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "설명" @@ -6677,6 +6849,10 @@ msgstr "차단하기" msgid "Block this user" msgstr "이 사용자 차단하기" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "실행결과" @@ -6776,14 +6952,14 @@ msgid "Fullname: %s" msgstr "전체이름: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "위치: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7139,6 +7315,10 @@ msgstr "데이터베이스 오류" msgid "Public" msgstr "공개" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "삭제" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "이 사용자 삭제" @@ -7273,29 +7453,45 @@ msgstr "이동" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64자 사이에 영소문자, 숫자로만 씁니다. 기호나 공백을 쓰면 안 됩니다." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "차단" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "이 사용자 차단" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "그룹 혹은 토픽의 홈페이지나 블로그 URL" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "응용프로그램 삭제" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "140글자로 그룹이나 토픽 설명하기" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "그룹의 위치, \"시/군/구, 도, 국가\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7305,6 +7501,27 @@ msgid_plural "" "aliases allowed." msgstr[0] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "가입한 때" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "관리자" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7329,6 +7546,21 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s 그룹 회원" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7502,47 +7734,48 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s님이 귀하의 알림 메시지를 %2$s에서 듣고 있습니다." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s님이 귀하의 알림 메시지를 %2$s에서 듣고 있습니다.\n" "\t%3$s\n" "\n" "그럼 이만,%4$s.\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "프로필" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "위치: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7558,10 +7791,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "포스팅 주소는 %1$s입니다.새 메시지를 등록하려면 %2$s 주소로 이메일을 보내십시" "오.이메일 사용법은 %3$s 페이지를 보십시오.안녕히,%4$s" @@ -7590,7 +7820,7 @@ msgstr "%s 사용자가 찔러 봤습니다." #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7600,10 +7830,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7615,7 +7842,6 @@ msgstr "%s로부터 새로운 비밀 메시지가 도착하였습니다." #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7628,10 +7854,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7659,10 +7882,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7680,14 +7900,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "누군가 내 글을 좋아하는 게시글로 추가했을 때, 메일을 보냅니다." #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7703,12 +7922,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s의 상태 (%2$s에서)" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s님이 %2$s/%3$s의 업데이트에 답변했습니다." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7747,6 +7986,20 @@ msgstr "죄송합니다. 이메일이 허용되지 않습니다." msgid "Unsupported message type: %s" msgstr "지원하지 않는 그림 파일 형식입니다." +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "사용자를 그룹의 관리자로 만듭니다" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "관리자 만들기" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8440,9 +8693,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "이용자를 업데이트 할 수 없습니다." +#~ msgid "Notice" +#~ msgstr "통지" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "사용자 기록을 업데이트 할 수 없습니다." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1-64자 사이에 영소문자, 숫자로만 씁니다. 기호나 공백을 쓰면 안 됩니다." diff --git a/locale/mk/LC_MESSAGES/statusnet.po b/locale/mk/LC_MESSAGES/statusnet.po index 277d4accf5..fb2d321788 100644 --- a/locale/mk/LC_MESSAGES/statusnet.po +++ b/locale/mk/LC_MESSAGES/statusnet.po @@ -10,17 +10,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:55+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:45+0000\n" "Language-Team: Macedonian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -73,6 +73,8 @@ msgstr "Зачувај нагодувања на пристап" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -80,6 +82,7 @@ msgstr "Зачувај нагодувања на пристап" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Зачувај" @@ -752,6 +755,7 @@ msgstr "Сметка" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Прекар" @@ -831,6 +835,7 @@ msgstr "Не можете да избришете статус на друг к #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Нема таква забелешка." @@ -1040,6 +1045,103 @@ msgstr "API-методот е во изработка." msgid "User not found." msgstr "Корисникот не е пронајден." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Мора да сте најавени за да можете да ја напуштите групата." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Нема таква група." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Нема прекар или ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Не сте најавени." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Недостасува профил." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Список на корисниците на оваа група." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Не можам да го зачленам корисникот %1$s во групата 2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s статус на %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1114,36 +1216,6 @@ msgstr "Нема таква бендисана ставка." msgid "Cannot delete someone else's favorite." msgstr "Не можам да избришам туѓo бендисанo." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Нема таква група." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Не членувате." @@ -1259,6 +1331,7 @@ msgstr "Преглед" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Избриши" @@ -1424,6 +1497,14 @@ msgstr "Одблокирај го овој корсник" msgid "Post to %s" msgstr "Објави во %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s ја напушти групата %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Нема потврден код." @@ -1448,12 +1529,10 @@ msgstr "Оваа адреса веќе е потврдена." #. TRANS: Server error displayed when updating IM preferences fails. #. TRANS: Server error thrown on database error removing a registered IM address. -#, fuzzy msgid "Could not update user IM preferences." -msgstr "Не можев да ги подновам корисничките нагодувања." +msgstr "Не можев да ги подновам нагодувањата за IM." #. TRANS: Server error displayed when adding IM preferences fails. -#, fuzzy msgid "Could not insert user IM preferences." msgstr "Не можев да се вметнам кориснички нагодувања за IM." @@ -1482,10 +1561,10 @@ msgid "Notices" msgstr "Забелешки" #. TRANS: Title for conversation page. -#, fuzzy +#. TRANS: Title for page that shows a notice. msgctxt "TITLE" msgid "Notice" -msgstr "Забелешки" +msgstr "Забелешка" #. TRANS: Client exception displayed trying to delete a user account while not logged in. msgid "Only logged-in users can delete their account." @@ -1556,6 +1635,7 @@ msgstr "Програмот не е пронајден." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Не сте сопственик на овој програм." @@ -1590,12 +1670,6 @@ msgstr "Избриши го програмов." msgid "You must be logged in to delete a group." msgstr "Мора да сте најавени за да избришете група." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Нема прекар или ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Не Ви е дозволено да ја избришете оваа група." @@ -1876,6 +1950,7 @@ msgid "You must be logged in to edit an application." msgstr "Мора да сте најавени за да можете да уредувате програми." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Нема таков програм." @@ -2095,6 +2170,7 @@ msgstr "Не можам да ја нормализирам таа е-поште #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Неправилна адреса за е-пошта." @@ -2466,33 +2542,26 @@ msgstr "Членови на групата %1$s, стр. %2$d" msgid "A list of the users in this group." msgstr "Список на корисниците на оваа група." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Администратор" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Блокирај" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Членства на групата %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Блокирај го корисников" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Членови на групата %1$s, стр. %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Направи го корисникот администратор на групата" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Назначи за администратор" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Назначи го корисников за администратор" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Список на корисниците на оваа група." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2531,6 +2600,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Создај нова група" @@ -2612,13 +2682,13 @@ msgstr "Тековна потврдена адреса на %s." #. TRANS: Form note in IM settings form. #. TRANS: %s is the IM service name, %2$s is the IM address set. -#, fuzzy, php-format +#, php-format msgid "" "Awaiting confirmation on this address. Check your %1$s account for a message " "with further instructions. (Did you add %2$s to your buddy list?)" msgstr "" -"Чекам потврда за оваа адреса. Проверете ја Вашата сметка на %s - треба да " -"добиете порака со понатамошни напатствија. (Дали го/ја додадовте %s на " +"Чекам потврда за оваа адреса. Проверете ја Вашата сметка на %1$s - треба да " +"добиете порака со понатамошни напатствија. (Дали го/ја додадовте %2$s на " "Вашиот список со пријатели?)" #. TRANS: Field label for IM address. @@ -2651,7 +2721,6 @@ msgid "Publish a MicroID" msgstr "Објави MicroID" #. TRANS: Server error thrown on database error updating IM preferences. -#, fuzzy msgid "Could not update IM preferences." msgstr "Не можев да ги подновам нагодувањата за IM." @@ -2669,14 +2738,12 @@ msgid "No transport." msgstr "Нема пренос." #. TRANS: Message given saving IM address that cannot be normalised. -#, fuzzy msgid "Cannot normalize that screenname." -msgstr "Не можам да го нормализирам тој прекар" +msgstr "Не можам да го нормализирам тој прекар." #. TRANS: Message given saving IM address that not valid. -#, fuzzy msgid "Not a valid screenname." -msgstr "Ова не е важечки прекар" +msgstr "Ова не е важечки прекар." #. TRANS: Message given saving IM address that is already set for another user. msgid "Screenname already belongs to another user." @@ -2691,7 +2758,6 @@ msgid "That is the wrong IM address." msgstr "Ова е погрешната IM адреса." #. TRANS: Server error thrown on database error canceling IM address confirmation. -#, fuzzy msgid "Could not delete confirmation." msgstr "Не можев да ја избришам потврдата." @@ -2901,21 +2967,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s се зачлени во групата %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Мора да сте најавени за да можете да ја напуштите групата." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Непозната група." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Не членувате во таа група." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s ја напушти групата %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3346,10 +3407,13 @@ msgid "Notice %s not found." msgstr "Забелешката %s не е пронајдена." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Забелешката нема профил." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s статус на %2$s" @@ -3477,7 +3541,6 @@ msgstr "Лозинката мора да содржи барем 6 знаци." #. TRANS: Form validation error on password change when password confirmation does not match. #. TRANS: Form validation error displayed when trying to register with non-matching passwords. -#, fuzzy msgid "Passwords do not match." msgstr "Лозинките не се совпаѓаат." @@ -3825,17 +3888,20 @@ msgstr "Информации за профил" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 мали букви или бројки, без интерпукциски знаци и празни места." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Име и презиме" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Домашна страница" @@ -3866,6 +3932,7 @@ msgstr "Биографија" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Местоположба" @@ -3925,6 +3992,7 @@ msgstr[0] "Биографијата е предолга (највеќе до %d msgstr[1] "Биографијата е предолга (највеќе до %d знаци)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Не е избрана часовна зона." @@ -4223,15 +4291,14 @@ msgid "New password successfully saved. You are now logged in." msgstr "Новата лозинка е успешно зачувана. Сега сте најавени." #. TRANS: Client exception thrown when no ID parameter was provided. -#, fuzzy msgid "No id parameter." -msgstr "Нема параметар за ID" +msgstr "Нема параметар за ID." #. TRANS: Client exception thrown when an invalid ID parameter was provided for a file. #. TRANS: %d is the provided ID for which the file is not present (number). -#, fuzzy, php-format +#, php-format msgid "No such file \"%d\"." -msgstr "Нема податотека „%d“" +msgstr "Нема податотека „%d“." #. TRANS: Client error displayed when trying to register to an invite-only site without an invitation. msgid "Sorry, only invited people can register." @@ -4246,17 +4313,15 @@ msgid "Registration successful" msgstr "Регистрацијата е успешна" #. TRANS: Title for registration page. -#, fuzzy msgctxt "TITLE" msgid "Register" -msgstr "Регистрирај се" +msgstr "Регистрација" #. TRANS: Client error displayed when trying to register to a closed site. msgid "Registration not allowed." msgstr "Регистрирањето не е дозволено." #. TRANS: Form validation error displayed when trying to register without agreeing to the site license. -#, fuzzy msgid "You cannot register if you do not agree to the license." msgstr "Не може да се регистрирате ако не ја прифаќате лиценцата." @@ -4276,13 +4341,11 @@ msgstr "" "објавувате забелешки и да се поврзувате со пријатели и колеги." #. TRANS: Field label on account registration page. In this field the password has to be entered a second time. -#, fuzzy msgctxt "PASSWORD" msgid "Confirm" msgstr "Потврди" #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "LABEL" msgid "Email" msgstr "Е-пошта" @@ -4298,26 +4361,24 @@ msgstr "Подолго име, по можност Вашето „вистин #. TRANS: Text area title in form for account registration. Plural #. TRANS: is decided by the number of characters available for the #. TRANS: biography (%d). -#, fuzzy, php-format +#, php-format msgid "Describe yourself and your interests in %d character." msgid_plural "Describe yourself and your interests in %d characters." msgstr[0] "Опишете се себеси и своите интереси со %d знак." msgstr[1] "Опишете се себеси и своите интереси со %d знаци." #. TRANS: Text area title on account registration page. -#, fuzzy msgid "Describe yourself and your interests." -msgstr "Опишете се себеси и Вашите интереси" +msgstr "Опишете се себеси и Вашите интереси." #. TRANS: Field title on account registration page. msgid "Where you are, like \"City, State (or Region), Country\"." msgstr "Каде се наоѓате, на пр. „Град, Сојуз. држава (или Област), Земја“." #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "BUTTON" msgid "Register" -msgstr "Регистрирај се" +msgstr "Регистрација" #. TRANS: Copyright checkbox label in registration dialog, for private sites. #. TRANS: %1$s is the StatusNet sitename. @@ -4434,7 +4495,6 @@ msgid "URL of your profile on another compatible microblogging service." msgstr "!URL на Вашиот профил на друга складна служба за микроблогирање." #. TRANS: Button text on page for remote subscribe. -#, fuzzy msgctxt "BUTTON" msgid "Subscribe" msgstr "Претплати се" @@ -4633,7 +4693,6 @@ msgid "You cannot revoke user roles on this site." msgstr "На ова мрежно место не можете да одземате кориснички улоги." #. TRANS: Client error displayed when trying to revoke a role that is not set. -#, fuzzy msgid "User does not have this role." msgstr "Корисникот ја нема оваа улога." @@ -4642,68 +4701,102 @@ msgstr "Корисникот ја нема оваа улога." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Не можете да ставате корисници во песочен режим на ова мрежно место." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Корисникот е веќе во песочен режим." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Сесии" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Сесиски нагодувања за ова StatusNet-мрежно место" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Сесии" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Раководење со сесии" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Дали самите да си раководиме со сесиите." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Поправка на грешки во сесија" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Вклучи извод од поправка на грешки за сесии." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Зачувај" - -msgid "Save site settings" -msgstr "Зачувај нагодувања на мреж. место" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Зачувај нагодувања на пристап" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Мора да сте најавени за да можете да го видите програмот." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Профил на програмот" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Создадено од %1$s - основен пристап: %2$s - %3$d корисници" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Создадено од %1$s - основен пристап: %2$s - %3$d корисници" +msgstr[1] "Создадено од %1$s - основен пристап: %2$s - %3$d корисници" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Дејства на програмот" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Уреди" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Клуч за промена и тајна" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Избриши" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Инфо за програмот" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Напомена: Поддржуваме HMAC-SHA1 потписи. Не поддржуваме потпишување со прост " "текст." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Дали сте сигурни дека сакате да го смените Вашиот кориснички клуч и тајна?" @@ -4820,6 +4913,7 @@ msgstr "Сите членови" msgid "Statistics" msgstr "Статистики" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Создадено" @@ -4863,7 +4957,9 @@ msgstr "" "слободната програмска алатка [StatusNet](http://status.net/). Нејзините " "членови си разменуваат кратки пораки за нивниот живот и интереси. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Администратори" @@ -4887,13 +4983,12 @@ msgstr "Порака за %1$s на %2$s" msgid "Message from %1$s on %2$s" msgstr "Порака од %1$s на %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Избришана забелешка" -msgid "Notice" -msgstr "Забелешки" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s го/ја означи %2$s" @@ -4928,6 +5023,8 @@ msgstr "Канал со забелешки за %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Канал со забелешки за %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Канал со забелешки за %s (Atom)" @@ -4993,94 +5090,144 @@ msgstr "" msgid "Repeat of %s" msgstr "Повторувања на %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Не можете да замолчувате корисници на ова мрежно место." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Корисникот е веќе замолчен." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Мреж. место" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Основни поставки за оваа StatusNet-мрежно место." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Должината на името на мрежното место не може да изнесува нула." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Мора да имате важечка контактна е-поштенска адреса." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Непознат јазик „%s“" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Минималниот дозволен текст изнесува 0 (неограничено)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Ограничувањето на дуплирањето мора да изнесува барем 1 секунда." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Општи" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Име на мрежното место" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Името на Вашето мрежно место, како на пр. „Микроблог на Вашафирма“" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Овозможено од" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "" "Текст за врската за наведување на авторите во долната колонцифра на секоја " "страница" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL-адреса на овозможувачот на услугите" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "" "URL-адресата која е користи за врски за автори во долната колоцифра на " "секоја страница" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Е-пошта" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Контактна е-пошта за Вашето мрежното место" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Локално" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Основна часовна зона" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Матична часовна зона за мрежното место; обично UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Основен јазик" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "Јазик на мрежното место ако прелистувачот не може да го препознае сам" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Ограничувања" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Ограничување на текстот" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Максимален број на знаци за забелешки." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Ограничување на дуплирањето" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Колку долго треба да почекаат корисниците (во секунди) за да можат повторно " "да го објават истото." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Зачувај нагодувања на мреж. место" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Објава на страница" @@ -5205,9 +5352,8 @@ msgid "That is the wrong confirmation number." msgstr "Ова е погрешен потврден број." #. TRANS: Server error thrown on database error canceling SMS phone number confirmation. -#, fuzzy msgid "Could not delete SMS confirmation." -msgstr "Не можев да ја избришам потврдата." +msgstr "Не можев да ја избришам потврдата на СМС." #. TRANS: Message given after successfully canceling SMS phone number confirmation. msgid "SMS confirmation cancelled." @@ -5285,6 +5431,10 @@ msgstr "URL на извештајот" msgid "Snapshots will be sent to this URL" msgstr "Снимките ќе се испраќаат на оваа URL-адреса" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Зачувај" + msgid "Save snapshot settings" msgstr "Зачувај поставки за снимки" @@ -5629,6 +5779,7 @@ msgstr "" "стиснете на „Одбиј“." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Прифати" @@ -5638,6 +5789,7 @@ msgid "Subscribe to this user." msgstr "Претплати се на корисников." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Одбиј" @@ -5858,25 +6010,21 @@ msgid "Plugins" msgstr "Приклучоци" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Name" msgstr "Име" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Version" msgstr "Верзија" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Author(s)" msgstr "Автор(и)" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Description" msgstr "Опис" @@ -6071,6 +6219,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6422,6 +6574,9 @@ msgstr "Не можам да ги избришам нагодувањата за msgid "Home" msgstr "Домашна страница" +msgid "Admin" +msgstr "Администратор" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Основни нагодувања на мрежното место" @@ -6461,6 +6616,10 @@ msgstr "Поставки на патеки" msgid "Sessions configuration" msgstr "Поставки на сесиите" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Сесии" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Уреди објава за мрежното место" @@ -6566,6 +6725,7 @@ msgid "Describe your application" msgstr "Опишете го Вашиот програм" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Опис" @@ -6680,6 +6840,10 @@ msgstr "Блокирај" msgid "Block this user" msgstr "Блокирај го корисников" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Резултати од наредбата" @@ -6778,14 +6942,14 @@ msgid "Fullname: %s" msgstr "Име и презиме: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Местоположба: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7134,6 +7298,10 @@ msgstr "Грешка во базата на податоци" msgid "Public" msgstr "Јавен" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Избриши" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Избриши овој корисник" @@ -7261,29 +7429,45 @@ msgstr "Оди" msgid "Grant this user the \"%s\" role" msgstr "Додели улога „%s“ на корисников" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 мали букви или бројки, без интерпукциски знаци и празни места." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Блокирај" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Блокирај го корисников" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "URL на страницата или блогот на групата или темата" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Опишете ја групата или темата" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Опишете ја групата или темата со највеќе %d знак" msgstr[1] "Опишете ја групата или темата со највеќе %d знаци" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Местоположба на групата (ако има). На пр. „Град, Сој. држава/област, Земја“" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Алијаси" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7298,6 +7482,27 @@ msgstr[1] "" "Дополнителни прекари за групата, одделени со запирка или празно место, " "највеќе до %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Член од" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Администратор" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7322,6 +7527,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Членови на групата „%s“" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Членови на групата %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7517,38 +7738,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s сега ги следи Вашите забелешки на %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Доколку сметате дека сметкава се злоупотребува, тогаш можете да ја блокирате " -"од списокот на претплатници и да ја пријавите како спам кај администраторите " -"на %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s сега ги следи Вашите забелешки на %2$s.\n" "\n" @@ -7562,12 +7767,29 @@ msgstr "" "Изменете си ја е-поштенската адреса или ги нагодувањата за известувања на %7" "$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Профил" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Биографија: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Доколку сметате дека сметкава се злоупотребува, тогаш можете да ја блокирате " +"од списокот на претплатници и да ја пријавите како спам кај администраторите " +"на %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7577,16 +7799,13 @@ msgstr "Нова е-поштенска адреса за објавување н #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "Имате нова адреса за објавување пораки на %1$s.\n" "\n" @@ -7621,8 +7840,8 @@ msgstr "%s Ве подбуцна" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7631,10 +7850,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) се прашува што се случува со Вас во последно време и Ве поканува " "да објавите што има ново.\n" @@ -7657,8 +7873,7 @@ msgstr "Нова приватна порака од %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7670,10 +7885,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) Ви испрати приватна порака:\n" "\n" @@ -7701,7 +7913,7 @@ msgstr "%1$s (@%2$s) ја бендиса вашата забелешка" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7715,10 +7927,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) штотуку ја бендиса Вашата забелешка од %2$s.\n" "\n" @@ -7755,14 +7964,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) Ви испрати забелешка што сака да ја прочитате" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7778,12 +7986,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) штотуку Ви даде на знаење за забелешката ('@-одговор') на %2" "$s.\n" @@ -7809,6 +8012,31 @@ msgstr "" "\n" "П.С. Можете да ги исклучите овие известувања по е-пошта тука: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s се зачлени во групата %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s се зачлени во групата %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Само корисникот може да го чита своето сандаче." @@ -7848,6 +8076,20 @@ msgstr "Жалиме, приемната пошта не е дозволена." msgid "Unsupported message type: %s" msgstr "Неподдржан формат на порака: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Направи го корисникот администратор на групата" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Назначи за администратор" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Назначи го корисников за администратор" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8361,60 +8603,57 @@ msgid "Error opening theme archive." msgstr "Грешка при отворањето на архивот за мотив." #. TRANS: Header for Notices section. -#, fuzzy msgctxt "HEADER" msgid "Notices" msgstr "Забелешки" #. TRANS: Link to show replies for a notice. #. TRANS: %d is the number of replies to a notice and used for plural. -#, fuzzy, php-format +#, php-format msgid "Show reply" msgid_plural "Show all %d replies" -msgstr[0] "Прикажи %d одговор" +msgstr[0] "Прикажи одговор" msgstr[1] "Прикажи ги сите %d одговори" #. TRANS: Reference to the logged in user in favourite list. msgctxt "FAVELIST" msgid "You" -msgstr "" +msgstr "Вие" #. TRANS: Separator in list of user names like "You, Bob, Mary". msgid ", " -msgstr "" +msgstr ", " #. TRANS: For building a list such as "You, bob, mary and 5 others have favored this notice". #. TRANS: %1$s is a list of users, separated by a separator (default: ", "), %2$s is the last user in the list. -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "%1$s and %2$s" -msgstr "%1$s - %2$s" +msgstr "%1$s и %2$s" #. TRANS: List message for notice favoured by logged in user. -#, fuzzy msgctxt "FAVELIST" msgid "You have favored this notice." -msgstr "Бендисај ја забелешкава" +msgstr "Ја бендисавте забелешкава." -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "One person has favored this notice." msgid_plural "%d people have favored this notice." -msgstr[0] "Одбендисај ја забелешкава" -msgstr[1] "Одбендисај ја забелешкава" +msgstr[0] "Белешкава ја бендиса едно лице." +msgstr[1] "Белешкава ја бендисаа %d лица." #. TRANS: List message for notice repeated by logged in user. -#, fuzzy msgctxt "REPEATLIST" msgid "You have repeated this notice." -msgstr "Веќе ја имате повторено таа забелешка." +msgstr "Ја повторивте забелешкава." -#, fuzzy, php-format +#, php-format msgctxt "REPEATLIST" msgid "One person has repeated this notice." msgid_plural "%d people have repeated this notice." -msgstr[0] "Забелешката е веќе повторена." -msgstr[1] "Забелешката е веќе повторена." +msgstr[0] "Забелешкава ја има повторено едно лице." +msgstr[1] "Забелешкава ја имаат повторено %d лица." #. TRANS: Title for top posters section. msgid "Top posters" @@ -8426,7 +8665,6 @@ msgid "Unblock" msgstr "Одблокирај" #. TRANS: Title for unsandbox form. -#, fuzzy msgctxt "TITLE" msgid "Unsandbox" msgstr "Извади од песочен режим" @@ -8449,10 +8687,9 @@ msgid "Unsubscribe from this user" msgstr "Откажи претплата од овој корсиник" #. TRANS: Button text on unsubscribe form. -#, fuzzy msgctxt "BUTTON" msgid "Unsubscribe" -msgstr "Откажи ја претплатата" +msgstr "Отпиши се" #. TRANS: Exception text shown when no profile can be found for a user. #. TRANS: %1$s is a user nickname, $2$d is a user ID (number). @@ -8536,8 +8773,8 @@ msgstr "Неважечки XML. Нема XRD-корен." msgid "Getting backup from file '%s'." msgstr "Земам резерва на податотеката „%s“." -#~ msgid "Couldn't update user." -#~ msgstr "Не можев да го подновам корисникот." +#~ msgid "Notice" +#~ msgstr "Забелешки" -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Не можев да ги подновам корисничките нагодувања за IM." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 мали букви или бројки, без интерпукциски знаци и празни места." diff --git a/locale/ml/LC_MESSAGES/statusnet.po b/locale/ml/LC_MESSAGES/statusnet.po index e72e0d8b4d..1e3b933271 100644 --- a/locale/ml/LC_MESSAGES/statusnet.po +++ b/locale/ml/LC_MESSAGES/statusnet.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:56+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:47+0000\n" "Language-Team: Malayalam \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ml\n" "X-Message-Group: #out-statusnet-core\n" @@ -70,6 +70,8 @@ msgstr "അഭിഗമ്യതാ സജ്ജീകരണങ്ങൾ സേ #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -77,6 +79,7 @@ msgstr "അഭിഗമ്യതാ സജ്ജീകരണങ്ങൾ സേ #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "സേവ് ചെയ്യുക" @@ -726,6 +729,7 @@ msgstr "അംഗത്വം" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "വിളിപ്പേര്" @@ -801,6 +805,7 @@ msgstr "മറ്റൊരു ഉപയോക്താവിന്റെ സ് #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "അത്തരത്തിൽ ഒരു അറിയിപ്പ് ഇല്ല." @@ -1008,6 +1013,102 @@ msgstr "എ.പി.ഐ. മെഥേഡ് നിർമ്മാണത്തി msgid "User not found." msgstr "ഉപയോക്താവിനെ കണ്ടത്താനായില്ല." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "ഒരു സംഘത്തിൽ നിന്നും പുറത്തുപോകാൻ താങ്കൾ ലോഗിൻ ചെയ്തിരിക്കേണ്ടതാണ്." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "അങ്ങനെ ഒരു സംഘം ഇല്ല." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "വിളിപ്പേരോ ഐ.ഡി.യോ ഇല്ല." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "ലോഗിൻ ചെയ്തിട്ടില്ല" + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +msgid "Must specify a profile." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "ഈ സംഘത്തിലെ ഉപയോക്താക്കളുടെ പട്ടിക." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "%2$s എന്ന സംഘത്തിൽ %1$s എന്ന ഉപയോക്താവിനെ ചേർക്കാൻ കഴിഞ്ഞില്ല." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%2$s പദ്ധതിയിൽ %1$s എന്ന ഉപയോക്താവിന്റെ സ്ഥിതിവിവരം" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1084,36 +1185,6 @@ msgstr "അത്തരത്തിൽ പ്രിയങ്കരമാക് msgid "Cannot delete someone else's favorite." msgstr "മറ്റൊരാൾക്ക് പ്രിയങ്കരമാണ് എന്നത് മായ്ക്കാനാവില്ല." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "അങ്ങനെ ഒരു സംഘം ഇല്ല." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "അംഗം അല്ല" @@ -1227,6 +1298,7 @@ msgstr "എങ്ങനെയുണ്ടെന്നു കാണുക" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "മായ്ക്കുക" @@ -1384,6 +1456,14 @@ msgstr "ഈ ഉപയോക്താവിന്റെ തടയൽ നീക് msgid "Post to %s" msgstr "" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s %2$s എന്ന സംഘത്തിൽ നിന്നും ഒഴിവായി" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "സ്ഥിരീകരണ കോഡ് ഇല്ല." @@ -1442,6 +1522,7 @@ msgid "Notices" msgstr "അറിയിപ്പുകൾ" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1514,6 +1595,7 @@ msgstr "" #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "" @@ -1547,12 +1629,6 @@ msgstr "ഈ അറിയിപ്പ് മായ്ക്കുക" msgid "You must be logged in to delete a group." msgstr "" -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "വിളിപ്പേരോ ഐ.ഡി.യോ ഇല്ല." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "" @@ -1832,6 +1908,7 @@ msgid "You must be logged in to edit an application." msgstr "" #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "" @@ -2049,6 +2126,7 @@ msgstr "സാധുവായ ഇമെയിൽ വിലാസം അല്ല #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "സാധുവായ ഇമെയിൽ വിലാസം അല്ല." @@ -2412,33 +2490,26 @@ msgstr "%1$s സംഘത്തിലെ അംഗങ്ങൾ, താൾ %2$d" msgid "A list of the users in this group." msgstr "ഈ സംഘത്തിലെ ഉപയോക്താക്കളുടെ പട്ടിക." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "കാര്യനിർവാഹകൻ" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "തടയുക" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s സംഘ അംഗത്വങ്ങൾ" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "ഈ ഉപയോക്താവിനെ തടയുക" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s സംഘത്തിലെ അംഗങ്ങൾ, താൾ %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "ഉപയോക്താവിനെ സംഘത്തിന്റെ കാര്യനിർവ്വാഹകനാക്കുക" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "കാര്യനിർവ്വാഹകനാക്കുക" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "ഈ ഉപയോക്താവിനെ കാര്യനിർവ്വാഹകനാക്കുക" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "ഈ സംഘത്തിലെ ഉപയോക്താക്കളുടെ പട്ടിക." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2476,6 +2547,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "പുതിയൊരു സംഘം സൃഷ്ടിക്കുക" @@ -2826,21 +2898,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s %2$s എന്ന സംഘത്തിൽ ചേർന്നു" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "ഒരു സംഘത്തിൽ നിന്നും പുറത്തുപോകാൻ താങ്കൾ ലോഗിൻ ചെയ്തിരിക്കേണ്ടതാണ്." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "അജ്ഞാത സംഘം." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "താങ്കൾ ആ സംഘത്തിൽ അംഗമല്ല." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s %2$s എന്ന സംഘത്തിൽ നിന്നും ഒഴിവായി" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3258,10 +3325,13 @@ msgid "Notice %s not found." msgstr "%s എന്ന അറിയിപ്പ് കണ്ടെത്താനായില്ല." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%2$s പദ്ധതിയിൽ %1$s എന്ന ഉപയോക്താവിന്റെ സ്ഥിതിവിവരം" @@ -3737,17 +3807,20 @@ msgstr "" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "പൂർണ്ണനാമം" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "ഹോംപേജ്" @@ -3779,6 +3852,7 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "സ്ഥലം" @@ -3833,6 +3907,7 @@ msgstr[0] "" msgstr[1] "" #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "സമയമേഖല തിരഞ്ഞെടുത്തിട്ടില്ല." @@ -4509,68 +4584,100 @@ msgstr "ഉപയോക്താവ് സംഘത്തിലെ അംഗമ msgid "StatusNet" msgstr "സ്റ്റാറ്റസ്‌നെറ്റ്" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "" +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "" -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" -msgstr "" +msgstr "പതിപ്പ്" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "ഈ സ്റ്റാറ്റസ്‌നെറ്റ് സൈറ്റിന്റെ സെഷൻ സജ്ജീകരണങ്ങൾ" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "പതിപ്പ്" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +msgid "Handle sessions ourselves." msgstr "" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "സേവ് ചെയ്യുക" - -msgid "Save site settings" -msgstr "സൈറ്റ് സജ്ജീകരണങ്ങൾ ചേവ് ചെയ്യുക" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "അഭിഗമ്യതാ സജ്ജീകരണങ്ങൾ സേവ് ചെയ്യുക" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "" +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "തിരുത്തുക" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "പുനഃക്രമീകരണ ചാവിയും രഹസ്യവും" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "മായ്ക്കുക" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "ശ്രദ്ധിക്കുക: HMAC-SHA1 ഒപ്പുകളാണ് ഞങ്ങൾ പിന്തുണയ്ക്കുന്നത്. പ്ലെയിൻ-ടെക്സ്റ്റ് ഒപ്പ് രീതി ഞങ്ങൾ " "പിന്തുണയ്ക്കുന്നില്ല." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "ഉപയോക്തൃ ചാവിയും രഹസ്യവും പുനഃക്രമീകരണം എന്ന് താങ്കൾക്ക് തീർച്ചയാണോ?" @@ -4681,6 +4788,7 @@ msgstr "എല്ലാ അംഗങ്ങളും" msgid "Statistics" msgstr "സ്ഥിതിവിവരക്കണക്കുകൾ" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "സൃഷ്ടിച്ചിരിക്കുന്നു" @@ -4714,7 +4822,9 @@ msgid "" "their life and interests. " msgstr "" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "കാര്യനിർവാഹകർ" @@ -4738,14 +4848,12 @@ msgstr "%2$s സംരംഭത്തിൽ %1$s എന്ന ഉപയോക് msgid "Message from %1$s on %2$s" msgstr "%2$s സംരംഭത്തിൽ %1$s അയച്ച സന്ദേശങ്ങൾ" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "അറിയിപ്പ് മായ്ച്ചിരിക്കുന്നു." -#, fuzzy -msgid "Notice" -msgstr "അറിയിപ്പുകൾ" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "" @@ -4780,6 +4888,8 @@ msgstr "" msgid "Notice feed for %s (RSS 2.0)" msgstr "" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "" @@ -4843,90 +4953,137 @@ msgstr "" msgid "Repeat of %s" msgstr "%s എന്ന ഉപയോക്താവിന്റെ ആവർത്തനം" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "ഈ സൈറ്റിലെ ഉപയോക്താക്കളെ താങ്കൾക്ക് നിശബ്ദരാക്കാനാകില്ല." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "ഉപയോക്താവ് മുമ്പ് തന്നെ നിശബ്ദനാക്കപ്പെട്ടിരിക്കുന്നു." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "സൈറ്റ്" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "ഈ സ്റ്റാറ്റസ്‌നെറ്റ് സൈറ്റിന്റെ അടിസ്ഥാന സജ്ജീകരണങ്ങൾ" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "സൈറ്റിന്റെ പേര് ശൂന്യമായിരിക്കരുത്." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "താങ്കളെ ബന്ധപ്പെടാനായി സാധുവായ ഇമെയിൽ വിലാസമുണ്ടായിരിക്കണം." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "അപരിചിതമായ ഭാഷ \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "എഴുത്തുകളുടെ ഏറ്റവും ചെറിയ പരിധി 0 ആണ് (പരിധിയില്ല)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "സാർവത്രികം" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "സൈറ്റിന്റെ പേര്‌" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "ഇമെയിൽ" -msgid "Contact email address for your site" -msgstr "" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." +msgstr "ആ ഇമെയിൽ വിലാസമോ ഉപയോക്തൃനാമമോ ഉപയോഗിക്കുന്ന ഒരു ഉപയോക്താവും ഇല്ല." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" -msgstr "" +msgstr "സ്ഥലം" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "സ്വതേ വേണ്ട സമയമേഖല" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "സൈറ്റിന്റെ സ്വതേയുള്ള സമയമേഖല; സാധാരണ ഗതിയിൽ യു.റ്റി.സി.." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "സ്വതേ വേണ്ട ഭാഷ" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "പരിധികൾ" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "എഴുത്തിന്റെ പരിധി" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "അറിയിപ്പുകളിലെ അക്ഷരങ്ങളുടെ പരമാവധി പരിധി." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "ഒരേ കാര്യം വീണ്ടും പ്രസിദ്ധീകരിക്കാൻ ഉപയോക്താക്കൾ എത്ര നേരമാണ് (സെക്കന്റുകളിൽ) " "കാത്തിരിക്കേണ്ടത്." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "സൈറ്റ് സജ്ജീകരണങ്ങൾ ചേവ് ചെയ്യുക" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "സൈറ്റ് അറിയിപ്പ്" @@ -5124,6 +5281,10 @@ msgstr "യൂ.ആർ.എൽ. അറിയിക്കുക" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "സേവ് ചെയ്യുക" + msgid "Save snapshot settings" msgstr "" @@ -5450,6 +5611,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "സ്വീകരിക്കുക" @@ -5459,6 +5621,7 @@ msgid "Subscribe to this user." msgstr "ഈ ഉപയോക്താവിന്റെ വരിക്കാരൻ/വരിക്കാരി ആകുക." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "നിരസിക്കുക" @@ -5864,6 +6027,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6206,6 +6373,9 @@ msgstr "രൂപകല്പനാ സജ്ജീകരണങ്ങൾ മാ msgid "Home" msgstr "ഹോംപേജ്" +msgid "Admin" +msgstr "കാര്യനിർവാഹകൻ" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "സൈറ്റിന്റെ അടിസ്ഥാന ക്രമീകരണം" @@ -6245,6 +6415,10 @@ msgstr "" msgid "Sessions configuration" msgstr "" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "സൈറ്റ് അറിയിപ്പ് തിരുത്തുക" @@ -6346,6 +6520,7 @@ msgid "Describe your application" msgstr "" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "വിവരണം" @@ -6459,6 +6634,10 @@ msgstr "തടയുക" msgid "Block this user" msgstr "ഈ ഉപയോക്താവിനെ തടയുക" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "" @@ -6558,14 +6737,14 @@ msgid "Fullname: %s" msgstr "പൂർണ്ണനാമം: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "സ്ഥാനം: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -6916,6 +7095,10 @@ msgstr "ഡാറ്റാബേസ് പിഴവ്" msgid "Public" msgstr "സാർവ്വജനികം" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "മായ്ക്കുക" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "ഈ ഉപയോക്താവിനെ നീക്കം ചെയ്യുക" @@ -7045,30 +7228,46 @@ msgstr "പോകൂ" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "തടയുക" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "ഈ ഉപയോക്താവിനെ തടയുക" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "സംഘത്തെക്കുറിച്ചോ വിഷയത്തെക്കുറിച്ചോ വിവരിക്കുക" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "സംഘത്തെക്കുറിച്ചോ വിഷയത്തെക്കുറിച്ചോ %d അക്ഷരത്തിൽ കൂടാതെ വിവരിക്കുക." msgstr[1] "സംഘത്തെക്കുറിച്ചോ വിഷയത്തെക്കുറിച്ചോ %d അക്ഷരങ്ങളിൽ കൂടാതെ വിവരിക്കുക." +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "സംഘത്തിന്റെ പ്രദേശം, അങ്ങനെയൊന്നുണ്ടെങ്കിൽ - ഉദാ: \"പട്ടണം, സംസ്ഥാനം (അഥവാ പ്രദേശം), " "രാജ്യം\"." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7079,6 +7278,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "അംഗമായത്" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "കാര്യനിർവാഹകൻ" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7103,6 +7323,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "%s സംഘ അംഗങ്ങൾ" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s സംഘ അംഗങ്ങൾ" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7280,41 +7516,42 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "" +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, php-format +msgid "" +"Faithfully yours,\n" +"%1$s.\n" +"\n" +"----\n" +"Change your email address or notification options at %2$s" +msgstr "" + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "അജ്ഞാതമായ കുറിപ്പ്." + +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is biographical information. +#, php-format +msgid "Bio: %s" +msgstr "" + #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. #, php-format msgid "" "If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" -"\n" -"----\n" -"Change your email address or notification options at %7$s\n" -msgstr "" - -#. TRANS: Profile info line in new-subscriber notification e-mail. -#. TRANS: %s is biographical information. -#, php-format -msgid "Bio: %s" +"your subscribers list and report as spam to site administrators at %s." msgstr "" #. TRANS: Subject of notification mail for new posting email address. @@ -7332,10 +7569,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7362,7 +7596,7 @@ msgstr "" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7372,10 +7606,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7387,7 +7618,6 @@ msgstr "%s അയച്ച സ്വകാര്യ സന്ദേശങ്ങ #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7400,10 +7630,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7431,10 +7658,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7455,14 +7679,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) താങ്കളുടെ ശ്രദ്ധയ്ക്കായി ഒരു അറിയിപ്പ് അയച്ചിരിക്കുന്നു" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7478,12 +7701,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%2$s എന്ന സംഘത്തിൽ %1$s എന്ന ഉപയോക്താവ് ചേർന്നു." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%2$s എന്ന സംഘത്തിൽ %1$s എന്ന ഉപയോക്താവ് ചേർന്നു." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7525,6 +7768,20 @@ msgstr "ക്ഷമിക്കുക, ഇങ്ങോട്ട് ഇമെയ msgid "Unsupported message type: %s" msgstr "പിന്തുണയില്ലാത്ത തരം സന്ദേശം: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "ഉപയോക്താവിനെ സംഘത്തിന്റെ കാര്യനിർവ്വാഹകനാക്കുക" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "കാര്യനിർവ്വാഹകനാക്കുക" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "ഈ ഉപയോക്താവിനെ കാര്യനിർവ്വാഹകനാക്കുക" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "താങ്കളുടെ പ്രമാണം സേവ് ചെയ്തപ്പോൾ ഡേറ്റാബേസ് പിഴവുണ്ടായി. ദയവായി വീണ്ടും ശ്രമിക്കുക." @@ -8219,9 +8476,6 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "ഉപയോക്തൃ വിവരങ്ങൾ പുതുക്കാൻ കഴിഞ്ഞില്ല." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "ഉപയോക്തൃ രേഖകൾ പുതുക്കാൻ കഴിഞ്ഞില്ല." +#~ msgid "Notice" +#~ msgstr "അറിയിപ്പുകൾ" diff --git a/locale/nb/LC_MESSAGES/statusnet.po b/locale/nb/LC_MESSAGES/statusnet.po index 67393fb7df..1e6f551c1d 100644 --- a/locale/nb/LC_MESSAGES/statusnet.po +++ b/locale/nb/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:58+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:50+0000\n" "Language-Team: Norwegian (bokmål)‬ \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: no\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -73,6 +73,8 @@ msgstr "Lagre tilgangsinnstillinger" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -80,6 +82,7 @@ msgstr "Lagre tilgangsinnstillinger" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Lagre" @@ -752,6 +755,7 @@ msgstr "Konto" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Nick" @@ -831,6 +835,7 @@ msgstr "Du kan ikke slette statusen til en annen bruker." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Ingen slik notis." @@ -1037,6 +1042,103 @@ msgstr "API-metode under utvikling." msgid "User not found." msgstr "Bruker ikke funnet." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Du må være innlogget for å forlate en gruppe." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Ingen slik gruppe." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "ngen kallenavn eller ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Ikke logget inn." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Manglende profil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "En liste over brukerne i denne gruppen." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Kunne ikke legge bruker %1$s til gruppe %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s sin status på %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1122,36 +1224,6 @@ msgstr "Ingen slik fil." msgid "Cannot delete someone else's favorite." msgstr "Kunne ikke slette favoritt." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Ingen slik gruppe." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1268,6 +1340,7 @@ msgstr "Forhåndsvis" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Slett" @@ -1432,6 +1505,14 @@ msgstr "Opphev blokkering av denne brukeren" msgid "Post to %s" msgstr "Post til %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s forlot gruppe %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Ingen bekreftelseskode." @@ -1490,6 +1571,7 @@ msgid "Notices" msgstr "Notiser" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1566,6 +1648,7 @@ msgstr "Program ikke funnet." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Du er ikke eieren av dette programmet." @@ -1603,12 +1686,6 @@ msgstr "Slett dette programmet" msgid "You must be logged in to delete a group." msgstr "Du må være innlogget for å slette en gruppe." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "ngen kallenavn eller ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Du har ikke tillatelse til å slette denne gruppen." @@ -1900,6 +1977,7 @@ msgid "You must be logged in to edit an application." msgstr "Du må være innlogget for å redigere et program." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Inget slikt program." @@ -2115,6 +2193,7 @@ msgstr "Klarer ikke normalisere epostadressen" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Ugyldig e-postadresse." @@ -2488,33 +2567,26 @@ msgstr "%1$s gruppemedlemmer, side %2$d" msgid "A list of the users in this group." msgstr "En liste over brukerne i denne gruppen." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administrator" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Blokker" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s gruppemedlemmer" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Blokker denne brukeren" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s gruppemedlemmer, side %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Gjør brukeren til en administrator for gruppen" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Gjør til administrator" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Gjør denne burkeren til administrator" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "En liste over brukerne i denne gruppen." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2553,6 +2625,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Opprett en ny gruppe" @@ -2930,21 +3003,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s ble med i gruppen %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Du må være innlogget for å forlate en gruppe." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Ukjent" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Du er ikke et medlem av den gruppen." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s forlot gruppe %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3372,10 +3440,13 @@ msgid "Notice %s not found." msgstr "Foreldrenotis ikke funnet." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Notisen har ingen profil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s sin status på %2$s" @@ -3859,17 +3930,20 @@ msgstr "Profilinformasjon" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1‒64 små bokstaver eller tall, ingen tegnsetting eller mellomrom." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Fullt navn" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Hjemmesiden" @@ -3899,6 +3973,7 @@ msgstr "Om meg" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Plassering" @@ -3959,6 +4034,7 @@ msgstr[0] "Biografien er for lang (maks %d tegn)." msgstr[1] "Biografien er for lang (maks %d tegn)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Tidssone ikke valgt." @@ -4682,68 +4758,102 @@ msgstr "Brukeren har ikke denne rollen." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Du kan ikke flytte brukere til sandkassen på dette nettstedet." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Brukeren er allerede i sandkassen." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Økter" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Økter" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Håndter økter" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Hvorvidt økter skal håndteres av oss selv." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Øktfeilsøking" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Slå på feilsøkingsutdata for økter." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Lagre" - -msgid "Save site settings" -msgstr "Lagre nettstedsinnstillinger" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Lagre tilgangsinnstillinger" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Du må være innlogget for å se et program." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Programprofil" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Opprettet av %1$s - %2$s standardtilgang - %3$d brukere" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Opprettet av %1$s - %2$s standardtilgang - %3$d brukere" +msgstr[1] "Opprettet av %1$s - %2$s standardtilgang - %3$d brukere" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Programhandlinger" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Rediger" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Tilbakestill nøkkel & hemmelighet" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Slett" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Programinformasjon" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Merk: Vi støtter HMAC-SHA1-signaturer. Vi støtter ikke metoden for " "klartekstsignatur." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Er du sikker på at du vil tilbakestille din forbrukernøkkel og -hemmelighet?" @@ -4859,6 +4969,7 @@ msgstr "Alle medlemmer" msgid "Statistics" msgstr "Statistikk" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Opprettet" @@ -4902,7 +5013,9 @@ msgstr "" "programvareverktøyet [StatusNet](http://status.net/). Dets medlemmer deler " "korte meldinger om deres liv og interesser. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administratorer" @@ -4926,14 +5039,12 @@ msgstr "Melding til %1$s på %2$s" msgid "Message from %1$s on %2$s" msgstr "Melding fra %1$s på %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Notis slettet." -#, fuzzy -msgid "Notice" -msgstr "Notiser" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, side %2$d" @@ -4968,6 +5079,8 @@ msgstr "Notismating for %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Notismating for %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Notismating for %s (Atom)" @@ -5032,89 +5145,137 @@ msgstr "" msgid "Repeat of %s" msgstr "Repetisjon av %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Du kan ikke bringe brukere til taushet på dette nettstedet." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Bruker er allerede brakt til taushet." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Nettsted" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Grunninnstillinger for dette StatusNet-nettstedet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Nettstedsnavnet må være minst ett tegn langt." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Du må ha en gyldig e-postadresse." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Ukjent språk «%s»." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Minste tekstgrense er 0 (ubegrenset)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Generell" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nettstedsnavn" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Navnet på nettstedet ditt, for eksempel «Foretaksnavn mikroblogg»" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-post" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Kontakte-postadresse for nettstedet ditt" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Lokal" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Standard tidssone" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Standard tidssone for nettstedet; vanligvis UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Standardspråk" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Grenser" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Tekstgrense" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Maks antall tegn for notiser." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Duplikatsgrense" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Hvor lenge en bruker må vente (i sekund) for å poste den samme tingen igjen." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Lagre nettstedsinnstillinger" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Nettstedsnotis" @@ -5324,6 +5485,10 @@ msgstr "Nettadresse til kilde" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Lagre" + msgid "Save snapshot settings" msgstr "Lagre nettstedsinnstillinger" @@ -5663,6 +5828,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5674,6 +5840,7 @@ msgid "Subscribe to this user." msgstr "Abonner på denne brukeren" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6085,6 +6252,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6437,6 +6608,9 @@ msgstr "Kunne ikke lagre dine innstillinger for utseende." msgid "Home" msgstr "Hjemmesiden" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item title/tooltip #, fuzzy msgid "Basic site configuration" @@ -6479,6 +6653,10 @@ msgstr "Stikonfigurasjon" msgid "Sessions configuration" msgstr "Tilgangskonfigurasjon" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Økter" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Rediger nettstedsnotis" @@ -6585,6 +6763,7 @@ msgid "Describe your application" msgstr "Beskriv programmet ditt" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Beskrivelse" @@ -6705,6 +6884,10 @@ msgstr "Blokkér" msgid "Block this user" msgstr "Blokker denne brukeren" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Kommandoresultat" @@ -6806,14 +6989,14 @@ msgid "Fullname: %s" msgstr "Fullt navn: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Posisjon: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7175,6 +7358,10 @@ msgstr "Databasefeil" msgid "Public" msgstr "Offentlig" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Slett" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Slett denne brukeren" @@ -7312,30 +7499,46 @@ msgstr "Gå" msgid "Grant this user the \"%s\" role" msgstr "Innvilg denne brukeren rollen «%s»" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 små bokstaver eller tall, ingen punktum eller mellomrom" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Blokker" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Blokker denne brukeren" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "Nettadresse til hjemmesiden for dette programmet" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Beskriv programmet ditt" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Beskriv programmet ditt med %d tegn" msgstr[1] "Beskriv programmet ditt med %d tegn" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "Hvor du er, for eksempel «By, fylke (eller region), land»" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Alias" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7346,6 +7549,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Medlem siden" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7370,6 +7594,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s gruppemedlemmer" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7558,35 +7798,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s lytter nå til dine notiser på %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s lytter nå til dine notiser på %2$s.\n" "\n" @@ -7599,12 +7826,26 @@ msgstr "" "----\n" "Endre e-postadressen din eller dine varslingsvalg på %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Biografi: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7620,10 +7861,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Du har en ny adresse for posting på %1$s.\n" "\n" @@ -7658,8 +7896,8 @@ msgstr "Du har blitt knuffet av %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7668,10 +7906,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) lurer på hva du gjør nå for tiden og inviterer deg til å poste " "noen nyheter.\n" @@ -7694,8 +7929,7 @@ msgstr "Ny privat melding fra %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7707,10 +7941,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) sendte deg en privat melding:\n" "\n" @@ -7738,7 +7969,7 @@ msgstr "%s /@%s) la din notis til som en favoritt" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7752,10 +7983,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) la akkurat din notis fra %2$s til som en av sine favoritter.\n" "\n" @@ -7792,14 +8020,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) sendte en notis for din oppmerksomhet" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7815,12 +8042,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) sendte deg akkurat varsel for din oppmerksomhet (et '@-svar') " "på %2$s.\n" @@ -7846,6 +8068,31 @@ msgstr "" "\n" "P.S. Du kan slå av disse e-postvarslene her: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s ble med i gruppen %2$s" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s-oppdateringer markert som favoritt av %2$s / %3$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Bare brukeren kan lese sine egne postbokser." @@ -7887,6 +8134,20 @@ msgstr "Ingen innkommende e-postadresse." msgid "Unsupported message type: %s" msgstr "Meldingstypen støttes ikke: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Gjør brukeren til en administrator for gruppen" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Gjør til administrator" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Gjør denne burkeren til administrator" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8597,9 +8858,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Kunne ikke oppdatere bruker." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Kunne ikke oppdatere brukeroppføring." +#~ msgid "Notice" +#~ msgstr "Notiser" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 små bokstaver eller tall, ingen punktum eller mellomrom" diff --git a/locale/nl/LC_MESSAGES/statusnet.po b/locale/nl/LC_MESSAGES/statusnet.po index 7f7bc5ce4b..6c26b1b1ea 100644 --- a/locale/nl/LC_MESSAGES/statusnet.po +++ b/locale/nl/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:57+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:49+0000\n" "Language-Team: Dutch \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -73,6 +73,8 @@ msgstr "Toegangsinstellingen opslaan" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -80,6 +82,7 @@ msgstr "Toegangsinstellingen opslaan" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Opslaan" @@ -762,6 +765,7 @@ msgstr "Gebruikersgegevens" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Gebruikersnaam" @@ -841,6 +845,7 @@ msgstr "U kunt de status van een andere gebruiker niet verwijderen." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "De mededeling bestaat niet." @@ -1051,6 +1056,103 @@ msgstr "De API-functie is in bewerking." msgid "User not found." msgstr "De pagina is niet aangetroffen." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "U moet aangemeld zijn om een groep te kunnen verlaten." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "De opgegeven groep bestaat niet." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Geen gebruikersnaam of ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Niet aangemeld." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Ontbrekend profiel." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Ledenlijst van deze groep" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Het was niet mogelijk gebruiker %1$s toe te voegen aan de groep %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Status van %1$s op %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1129,36 +1231,6 @@ msgstr "De favoriet bestaat niet." msgid "Cannot delete someone else's favorite." msgstr "Het is niet mogelijk om een favoriet van een ander te verwijderen." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "De opgegeven groep bestaat niet." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Geen lid." @@ -1276,6 +1348,7 @@ msgstr "Voorvertoning" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Verwijderen" @@ -1441,6 +1514,14 @@ msgstr "Deblokkeer deze gebruiker." msgid "Post to %s" msgstr "Verzenden naar %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s heeft de groep %2$s verlaten" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Geen bevestigingscode." @@ -1465,13 +1546,11 @@ msgstr "Dit adres is al bevestigd." #. TRANS: Server error displayed when updating IM preferences fails. #. TRANS: Server error thrown on database error removing a registered IM address. -#, fuzzy msgid "Could not update user IM preferences." msgstr "" "Het was niet mogelijk de IM-instellingen van de gebruiker bij te werken." #. TRANS: Server error displayed when adding IM preferences fails. -#, fuzzy msgid "Could not insert user IM preferences." msgstr "Het was niet mogelijk de IM-instelingen voor de gebruiker op te slaan." @@ -1500,7 +1579,7 @@ msgid "Notices" msgstr "Mededelingen" #. TRANS: Title for conversation page. -#, fuzzy +#. TRANS: Title for page that shows a notice. msgctxt "TITLE" msgid "Notice" msgstr "Mededeling" @@ -1577,6 +1656,7 @@ msgstr "De applicatie is niet gevonden." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "U bent niet de eigenaar van deze applicatie." @@ -1611,12 +1691,6 @@ msgstr "Deze applicatie verwijderen." msgid "You must be logged in to delete a group." msgstr "U moet aangemeld zijn om een groep te kunnen verwijderen." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Geen gebruikersnaam of ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "U mag deze groep niet verwijderen." @@ -1899,6 +1973,7 @@ msgid "You must be logged in to edit an application." msgstr "U moet aangemeld zijn om een applicatie te kunnen bewerken." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "De applicatie bestaat niet." @@ -2117,6 +2192,7 @@ msgstr "Kan het e-mailadres niet normaliseren." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Geen geldig e-mailadres." @@ -2493,33 +2569,26 @@ msgstr "%1$s groeps leden, pagina %2$d" msgid "A list of the users in this group." msgstr "Ledenlijst van deze groep" -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Beheerder" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Blokkeren" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "groepslidmaatschappen van %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Deze gebruiker blokkeren" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s groeps leden, pagina %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Deze gebruiker groepsbeheerder maken" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Beheerder maken" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Deze gebruiker beheerder maken" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Ledenlijst van deze groep" #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2558,6 +2627,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Nieuwe groep aanmaken" @@ -2640,13 +2710,13 @@ msgstr "Huidige bevestigde adres voor %s." #. TRANS: Form note in IM settings form. #. TRANS: %s is the IM service name, %2$s is the IM address set. -#, fuzzy, php-format +#, php-format msgid "" "Awaiting confirmation on this address. Check your %1$s account for a message " "with further instructions. (Did you add %2$s to your buddy list?)" msgstr "" -"Er wordt gewacht op bevestiging van dit adres. Controleer uw gebruiker bij %" -"s op een bericht met nadere instructies. Hebt u %s aan uw contactenlijst " +"Er wordt gewacht op bevestiging van dit adres. Controleer uw gebruiker bij %1" +"$s op een bericht met nadere instructies. Hebt u %2$s aan uw contactenlijst " "toegevoegd?" #. TRANS: Field label for IM address. @@ -2679,7 +2749,6 @@ msgid "Publish a MicroID" msgstr "Een MicroID voor publiceren." #. TRANS: Server error thrown on database error updating IM preferences. -#, fuzzy msgid "Could not update IM preferences." msgstr "Het was niet mogelijk de IM-voorkeuren bij te werken." @@ -2697,14 +2766,12 @@ msgid "No transport." msgstr "Geen transport." #. TRANS: Message given saving IM address that cannot be normalised. -#, fuzzy msgid "Cannot normalize that screenname." msgstr "Het was niet mogelijk om die schermnaam te normaliseren." #. TRANS: Message given saving IM address that not valid. -#, fuzzy msgid "Not a valid screenname." -msgstr "Ongeldige schermnaam" +msgstr "Ongeldige schermnaam." #. TRANS: Message given saving IM address that is already set for another user. msgid "Screenname already belongs to another user." @@ -2719,7 +2786,6 @@ msgid "That is the wrong IM address." msgstr "Dat is het verkeerde IM-adres." #. TRANS: Server error thrown on database error canceling IM address confirmation. -#, fuzzy msgid "Could not delete confirmation." msgstr "De bevestiging kon niet verwijderd worden." @@ -2929,21 +2995,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s is lid geworden van de groep %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "U moet aangemeld zijn om een groep te kunnen verlaten." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Onbekende groep." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "U bent geen lid van deze groep" -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s heeft de groep %2$s verlaten" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3376,10 +3437,13 @@ msgid "Notice %s not found." msgstr "Opmerking \"%s\" is niet gevonden." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Mededeling heeft geen profiel." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Status van %1$s op %2$s" @@ -3505,7 +3569,6 @@ msgstr "Het wachtwoord moet zes of meer tekens bevatten." #. TRANS: Form validation error on password change when password confirmation does not match. #. TRANS: Form validation error displayed when trying to register with non-matching passwords. -#, fuzzy msgid "Passwords do not match." msgstr "De wachtwoorden komen niet overeen." @@ -3854,17 +3917,20 @@ msgstr "Profielinformatie" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 kleine letters of cijfers, geen leestekens of spaties." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Volledige naam" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Startpagina" @@ -3894,6 +3960,7 @@ msgstr "Beschrijving" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Locatie" @@ -3952,6 +4019,7 @@ msgstr[0] "De persoonlijke beschrijving is te lang (maximaal %d teken)." msgstr[1] "De persoonlijke beschrijving is te lang (maximaal %d tekens)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Er is geen tijdzone geselecteerd." @@ -4255,13 +4323,12 @@ msgid "New password successfully saved. You are now logged in." msgstr "Het nieuwe wachtwoord is opgeslagen. U bent nu aangemeld." #. TRANS: Client exception thrown when no ID parameter was provided. -#, fuzzy msgid "No id parameter." -msgstr "Geen ID-argument" +msgstr "Geen ID-argument." #. TRANS: Client exception thrown when an invalid ID parameter was provided for a file. #. TRANS: %d is the provided ID for which the file is not present (number). -#, fuzzy, php-format +#, php-format msgid "No such file \"%d\"." msgstr "Het bestand \"%d\" bestaat niet." @@ -4278,7 +4345,6 @@ msgid "Registration successful" msgstr "De registratie is voltooid" #. TRANS: Title for registration page. -#, fuzzy msgctxt "TITLE" msgid "Register" msgstr "Registreren" @@ -4288,7 +4354,6 @@ msgid "Registration not allowed." msgstr "Registratie is niet toegestaan." #. TRANS: Form validation error displayed when trying to register without agreeing to the site license. -#, fuzzy msgid "You cannot register if you do not agree to the license." msgstr "U kunt zich niet registreren als u niet akkoord gaat met de licentie." @@ -4308,16 +4373,14 @@ msgstr "" "mededelingen uitsturen en contact maken met vrienden en collega's." #. TRANS: Field label on account registration page. In this field the password has to be entered a second time. -#, fuzzy msgctxt "PASSWORD" msgid "Confirm" -msgstr "Bevestigen" +msgstr "Geef uw wachtwoord opnieuw in" #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "LABEL" msgid "Email" -msgstr "E-mail" +msgstr "E-mailadres" #. TRANS: Field title on account registration page. msgid "Used only for updates, announcements, and password recovery." @@ -4330,23 +4393,21 @@ msgstr "Een langere naam, mogelijk uw echte naam." #. TRANS: Text area title in form for account registration. Plural #. TRANS: is decided by the number of characters available for the #. TRANS: biography (%d). -#, fuzzy, php-format +#, php-format msgid "Describe yourself and your interests in %d character." msgid_plural "Describe yourself and your interests in %d characters." -msgstr[0] "Beschrijf uzelf en uw interesses in %d teken" -msgstr[1] "Beschrijf uzelf en uw interesses in %d tekens" +msgstr[0] "Beschrijf uzelf en uw interesses in %d teken." +msgstr[1] "Beschrijf uzelf en uw interesses in %d tekens." #. TRANS: Text area title on account registration page. -#, fuzzy msgid "Describe yourself and your interests." -msgstr "Beschrijf uzelf en uw interesses" +msgstr "Beschrijf uzelf en uw interesses." #. TRANS: Field title on account registration page. msgid "Where you are, like \"City, State (or Region), Country\"." msgstr "Waar u bent, bijvoorbeeld \"woonplaats, land\" of \"postcode, land\"." #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "BUTTON" msgid "Register" msgstr "Registreren" @@ -4465,7 +4526,6 @@ msgid "URL of your profile on another compatible microblogging service." msgstr "De URL van uw profiel bij een andere, compatibele microblogdienst." #. TRANS: Button text on page for remote subscribe. -#, fuzzy msgctxt "BUTTON" msgid "Subscribe" msgstr "Abonneren" @@ -4504,7 +4564,7 @@ msgstr "U kunt uw eigen mededeling niet herhalen." #. TRANS: Client error displayed when trying to repeat an already repeated notice. msgid "You already repeated that notice." -msgstr "U hent die mededeling al herhaald." +msgstr "U hebt die mededeling al herhaald." #. TRANS: Title after repeating a notice. msgid "Repeated" @@ -4664,7 +4724,6 @@ msgid "You cannot revoke user roles on this site." msgstr "U kunt geen gebruikersrollen intrekken op deze website." #. TRANS: Client error displayed when trying to revoke a role that is not set. -#, fuzzy msgid "User does not have this role." msgstr "Deze gebruiker heeft deze rol niet." @@ -4673,68 +4732,102 @@ msgstr "Deze gebruiker heeft deze rol niet." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Op deze website kunt u gebruikers niet in de zandbak plaatsen." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Deze gebruiker is al in de zandbak geplaatst." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessies" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Sessieinstellingen voor deze StatusNet-website" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessies" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Sessieafhandeling" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Of sessies door de software zelf afgehandeld moeten worden." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Sessies debuggen" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Debuguitvoer voor sessies inschakelen." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Opslaan" - -msgid "Save site settings" -msgstr "Websiteinstellingen opslaan" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Toegangsinstellingen opslaan" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "U moet aangemeld zijn om een applicatie te kunnen bekijken." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Applicatieprofiel" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Aangemaakt door %1$s - standaardtoegang \"%2$s\" - %3$d gebruikers" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Aangemaakt door %1$s - standaardtoegang \"%2$s\" - %3$d gebruikers" +msgstr[1] "Aangemaakt door %1$s - standaardtoegang \"%2$s\" - %3$d gebruikers" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Applicatiehandelingen" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Bewerken" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Sleutel en wachtwoord op nieuw instellen" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Verwijderen" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Applicatieinformatie" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Opmerking: HMAC-SHA1 ondertekening wordt ondersteund. Ondertekening in " "platte tekst is niet mogelijk." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Weet u zeker dat u uw gebruikerssleutel en geheime code wilt verwijderen?" @@ -4852,6 +4945,7 @@ msgstr "Alle leden" msgid "Statistics" msgstr "Statistieken" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Aangemaakt" @@ -4895,7 +4989,9 @@ msgstr "" "[StatusNet](http://status.net/). De leden wisselen korte mededelingen uit " "over hun ervaringen en interesses. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Beheerders" @@ -4919,13 +5015,12 @@ msgstr "Bericht aan %1$s op %2$s" msgid "Message from %1$s on %2$s" msgstr "Bericht van %1$s op %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Deze mededeling is verwijderd." -msgid "Notice" -msgstr "Mededeling" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%2$s gelabeld door %1$s" @@ -4960,6 +5055,8 @@ msgstr "Mededelingenfeed voor %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Mededelingenfeed voor %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Mededelingenfeed voor %s (Atom)" @@ -5026,97 +5123,147 @@ msgstr "" msgid "Repeat of %s" msgstr "Herhaald van %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "U kunt gebruikers op deze website niet muilkorven." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Deze gebruiker is al gemuilkorfd." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Website" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Basisinstellingen voor deze StatusNet-website" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "De sitenaam moet ingevoerd worden en mag niet leeg zijn." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "" "U moet een geldig e-mailadres opgeven waarop contact opgenomen kan worden." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "De taal \"%s\" is niet bekend." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "De minimale tekstlimiet is 0 tekens (ongelimiteerd)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "De duplicaatlimiet moet één of meer seconden zijn." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Algemeen" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Websitenaam" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "De naam van de website, zoals \"UwBedrijf Microblog\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Mogelijk gemaakt door" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "" "De tekst die gebruikt worden in de \"creditsverwijzing\" in de voettekst van " "iedere pagina" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "\"Mogelijk gemaakt door\"-URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "" "URL die wordt gebruikt voor de verwijzing naar de hoster en dergelijke in de " "voettekst van iedere pagina" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "E-mailadres om contact op te nemen met de websitebeheerder" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Lokaal" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Standaardtijdzone" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Standaardtijdzone voor de website. Meestal UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Standaardtaal" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "De taal voor de website als deze niet uit de browserinstellingen opgemaakt " "kan worden" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limieten" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Tekstlimiet" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Maximaal aantal te gebruiken tekens voor mededelingen." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Duplicaatlimiet" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Hoe lang gebruikers moeten wachten (in seconden) voor ze hetzelfde kunnen " "zenden." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Websiteinstellingen opslaan" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Websitebrede mededeling" @@ -5239,9 +5386,8 @@ msgid "That is the wrong confirmation number." msgstr "Dit is het verkeerde bevestigingsnummer." #. TRANS: Server error thrown on database error canceling SMS phone number confirmation. -#, fuzzy msgid "Could not delete SMS confirmation." -msgstr "De bevestiging kon niet verwijderd worden." +msgstr "De SMS-bevestiging kon niet verwijderd worden." #. TRANS: Message given after successfully canceling SMS phone number confirmation. msgid "SMS confirmation cancelled." @@ -5320,6 +5466,10 @@ msgstr "Rapportage-URL" msgid "Snapshots will be sent to this URL" msgstr "Snapshots worden naar deze URL verzonden" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Opslaan" + msgid "Save snapshot settings" msgstr "Snapshotinstellingen opslaan" @@ -5665,15 +5815,17 @@ msgstr "" "klik dan op \"Afwijzen\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Aanvaarden" #. TRANS: Title for button on Authorise Subscription page. msgid "Subscribe to this user." -msgstr "Abonneren op deze gebruiker." +msgstr "Op deze gebruiker abonneren." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Afwijzen" @@ -5894,25 +6046,21 @@ msgid "Plugins" msgstr "Plug-ins" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Name" msgstr "Naam" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Version" msgstr "Versie" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Author(s)" msgstr "Auteur(s)" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Description" msgstr "Beschrijving" @@ -6112,6 +6260,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6471,6 +6623,9 @@ msgstr "Het was niet mogelijk om de ontwerpinstellingen te verwijderen." msgid "Home" msgstr "Start" +msgid "Admin" +msgstr "Beheerder" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Basisinstellingen voor de website" @@ -6510,6 +6665,10 @@ msgstr "Padinstellingen" msgid "Sessions configuration" msgstr "Sessieinstellingen" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessies" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Websitebrede mededeling opslaan" @@ -6618,6 +6777,7 @@ msgid "Describe your application" msgstr "Beschrijf uw applicatie" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Beschrijving" @@ -6732,6 +6892,10 @@ msgstr "Blokkeren" msgid "Block this user" msgstr "Deze gebruiker blokkeren" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Commandoresultaten" @@ -6832,14 +6996,14 @@ msgid "Fullname: %s" msgstr "Volledige naam: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Locatie: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7194,6 +7358,10 @@ msgstr "Databasefout" msgid "Public" msgstr "Openbaar" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Verwijderen" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Gebruiker verwijderen" @@ -7321,29 +7489,45 @@ msgstr "OK" msgid "Grant this user the \"%s\" role" msgstr "Deze gebruiker de rol \"%s\" geven" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 kleine letters of cijfers, geen leestekens of spaties." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Blokkeren" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Deze gebruiker blokkeren" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "De URL van de thuispagina of de blog van de groep of het onderwerp" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Beschrijf de groep of het onderwerp" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Beschrijf de group in %d teken of minder" msgstr[1] "Beschrijf de group in %d tekens of minder" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Locatie voor de groep - als relevant. Iets als \"Plaats, regio, land\"." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Aliassen" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7356,6 +7540,27 @@ msgstr[1] "" "Extra bijnamen voor de groep, gescheiden met komma's of spaties. Maximaal %d " "aliasen toegestaan." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Lid sinds" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Beheerder" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7380,6 +7585,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Leden van de groep %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "leden van de groep %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7576,37 +7797,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s volgt nu uw berichten %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Als u denkt dat deze gebruiker wordt misbruikt, dan kunt u deze voor uw " -"abonnees blokkeren en als spam rapporteren naar de websitebeheerders op %s." - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s volgt nu uw medelingen op %2$s.\n" "\n" @@ -7619,12 +7825,28 @@ msgstr "" "----\n" "Wijzig uw e-mailadres of instellingen op %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profiel" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Beschrijving: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Als u denkt dat deze gebruiker wordt misbruikt, dan kunt u deze voor uw " +"abonnees blokkeren en als spam rapporteren naar de websitebeheerders op %s." + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7634,16 +7856,13 @@ msgstr "Nieuw e-mailadres om e-mail te versturen aan %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "U hebt een nieuw postadres op %1$s.\n" "\n" @@ -7678,8 +7897,8 @@ msgstr "%s heeft u gepord" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7688,10 +7907,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) vraagt zich af wat u tegenwoordig doet en nodigt u uit om dat te " "delen.\n" @@ -7715,8 +7931,7 @@ msgstr "U hebt een nieuw privébericht van %s." #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7728,10 +7943,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) heeft u een privébericht gezonden:\n" "\n" @@ -7760,7 +7972,7 @@ msgstr "%1$s (@%2$s) heeft uw mededeling als favoriet toegevoegd" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7774,10 +7986,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) heeft uw mededeling van %2$s zojuist op de favorietenlijst " "geplaatst.\n" @@ -7815,14 +8024,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) heeft u een mededeling gestuurd" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7838,12 +8046,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) heeft u zojuist een mededeling gezonden (een '@-antwoord') op %2" "$s.\n" @@ -7869,6 +8072,31 @@ msgstr "" "\n" "Ps. U kunt de e-mailmeldingen hier uitschakelen: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s is lid geworden van de groep %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s is lid geworden van de groep %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Gebruikers kunnen alleen hun eigen postvakken lezen." @@ -7907,6 +8135,20 @@ msgstr "Inkomende e-mail is niet toegestaan." msgid "Unsupported message type: %s" msgstr "Niet ondersteund berichttype: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Deze gebruiker groepsbeheerder maken" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Beheerder maken" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Deze gebruiker beheerder maken" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8362,7 +8604,7 @@ msgid "Invite friends and colleagues to join you on %s" msgstr "Vrienden en collega's uitnodigen om u te vergezellen op %s" msgid "Subscribe to this user" -msgstr "Abonneren op deze gebruiker" +msgstr "Op deze gebruiker abonneren" msgid "People Tagcloud as self-tagged" msgstr "Gebruikerslabelwolk als zelf gelabeld" @@ -8427,14 +8669,13 @@ msgstr "" "vormgeving." #. TRANS: Header for Notices section. -#, fuzzy msgctxt "HEADER" msgid "Notices" msgstr "Mededelingen" #. TRANS: Link to show replies for a notice. #. TRANS: %d is the number of replies to a notice and used for plural. -#, fuzzy, php-format +#, php-format msgid "Show reply" msgid_plural "Show all %d replies" msgstr[0] "Antwoord weergegeven" @@ -8443,44 +8684,44 @@ msgstr[1] "Alle %d antwoorden weergegeven" #. TRANS: Reference to the logged in user in favourite list. msgctxt "FAVELIST" msgid "You" -msgstr "" +msgstr "U" #. TRANS: Separator in list of user names like "You, Bob, Mary". msgid ", " -msgstr "" +msgstr ", " #. TRANS: For building a list such as "You, bob, mary and 5 others have favored this notice". #. TRANS: %1$s is a list of users, separated by a separator (default: ", "), %2$s is the last user in the list. -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "%1$s and %2$s" -msgstr "%1$s - %2$s" +msgstr "%1$s en %2$s" #. TRANS: List message for notice favoured by logged in user. -#, fuzzy msgctxt "FAVELIST" msgid "You have favored this notice." -msgstr "Op de favorietenlijst plaatsen" +msgstr "U hebt deze mededeling op uw favorietenlijst geplaatst." -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "One person has favored this notice." msgid_plural "%d people have favored this notice." -msgstr[0] "Uit de favorietenlijst verwijderen" -msgstr[1] "Uit de favorietenlijst verwijderen" +msgstr[0] "" +"Een gebruiker heeft deze mededeling op de favorietenlijst geplaatst." +msgstr[1] "" +"%d gebruikers hebben deze mededeling op hun favorietenlijst geplaatst." #. TRANS: List message for notice repeated by logged in user. -#, fuzzy msgctxt "REPEATLIST" msgid "You have repeated this notice." -msgstr "U hent die mededeling al herhaald." +msgstr "U hebt deze mededeling herhaald." -#, fuzzy, php-format +#, php-format msgctxt "REPEATLIST" msgid "One person has repeated this notice." msgid_plural "%d people have repeated this notice." -msgstr[0] "U hebt die mededeling al herhaald." -msgstr[1] "U hebt die mededeling al herhaald." +msgstr[0] "Een persoon heeft deze mededeling herhaald." +msgstr[1] "%d personen hebben deze mededeling herhaald." #. TRANS: Title for top posters section. msgid "Top posters" @@ -8492,7 +8733,6 @@ msgid "Unblock" msgstr "Deblokkeren" #. TRANS: Title for unsandbox form. -#, fuzzy msgctxt "TITLE" msgid "Unsandbox" msgstr "Uit de zandbak halen" @@ -8515,7 +8755,6 @@ msgid "Unsubscribe from this user" msgstr "Uitschrijven van deze gebruiker" #. TRANS: Button text on unsubscribe form. -#, fuzzy msgctxt "BUTTON" msgid "Unsubscribe" msgstr "Abonnement opheffen" @@ -8601,8 +8840,8 @@ msgstr "Ongeldige XML. De XRD-root mist." msgid "Getting backup from file '%s'." msgstr "De back-up wordt uit het bestand \"%s\" geladen." -#~ msgid "Couldn't update user." -#~ msgstr "De gebruiker kon gebruiker niet bijwerkt worden." +#~ msgid "Notice" +#~ msgstr "Mededeling" -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Kan de IM-instellingen van de gebruiker niet bijwerken." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 kleine letters of cijfers, geen leestekens of spaties." diff --git a/locale/pl/LC_MESSAGES/statusnet.po b/locale/pl/LC_MESSAGES/statusnet.po index 13d79eab91..97dfebad3f 100644 --- a/locale/pl/LC_MESSAGES/statusnet.po +++ b/locale/pl/LC_MESSAGES/statusnet.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:47:59+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:52+0000\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" @@ -20,11 +20,11 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n == 1) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && " "(n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pl\n" "X-Message-Group: #out-statusnet-core\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -75,6 +75,8 @@ msgstr "Zapisz ustawienia dostępu" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -82,6 +84,7 @@ msgstr "Zapisz ustawienia dostępu" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Zapisz" @@ -760,6 +763,7 @@ msgstr "Konto" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Pseudonim" @@ -839,6 +843,7 @@ msgstr "Nie można usuwać stanów innych użytkowników." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Nie ma takiego wpisu." @@ -1049,6 +1054,103 @@ msgstr "Metoda API jest w trakcie tworzenia." msgid "User not found." msgstr "Nie odnaleziono strony." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Musisz być zalogowany, aby opuścić grupę." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Nie ma takiej grupy." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Brak pseudonimu lub identyfikatora." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Niezalogowany." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Brak profilu." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Lista użytkowników znajdujących się w tej grupie." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Nie można dołączyć użytkownika %1$s do grupy %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Stan użytkownika %1$s na %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1124,36 +1226,6 @@ msgstr "Nie ma takiego ulubionego wpisu." msgid "Cannot delete someone else's favorite." msgstr "Nie można usunąć ulubionego wpisu innej osoby." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Nie ma takiej grupy." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Nie jest członkiem." @@ -1267,6 +1339,7 @@ msgstr "Podgląd" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Usuń" @@ -1437,6 +1510,14 @@ msgstr "Odblokuj tego użytkownika" msgid "Post to %s" msgstr "Wyślij do %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "Użytkownik %1$s opuścił grupę %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Brak kodu potwierdzającego." @@ -1495,6 +1576,7 @@ msgid "Notices" msgstr "Wpisy" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1569,6 +1651,7 @@ msgstr "Nie odnaleziono aplikacji." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Nie jesteś właścicielem tej aplikacji." @@ -1604,12 +1687,6 @@ msgstr "Usuń tę aplikację" msgid "You must be logged in to delete a group." msgstr "Musisz być zalogowany, aby usunąć grupę." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Brak pseudonimu lub identyfikatora." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Brak uprawnienia do usunięcia tej grupy." @@ -1897,6 +1974,7 @@ msgid "You must be logged in to edit an application." msgstr "Musisz być zalogowany, aby zmodyfikować aplikację." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Nie ma takiej aplikacji." @@ -2115,6 +2193,7 @@ msgstr "Nie można znormalizować tego adresu e-mail" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "To nie jest prawidłowy adres e-mail." @@ -2484,33 +2563,26 @@ msgstr "Członkowie grupy %1$s, strona %2$d" msgid "A list of the users in this group." msgstr "Lista użytkowników znajdujących się w tej grupie." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administrator" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Zablokuj" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s członków grupy" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Zablokuj tego użytkownika" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Członkowie grupy %1$s, strona %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Uczyń użytkownika administratorem grupy" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Uczyń administratorem" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Nadaje temu użytkownikowi uprawnienia administratora" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Lista użytkowników znajdujących się w tej grupie." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2549,6 +2621,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Utwórz nową grupę" @@ -2938,21 +3011,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "Użytkownik %1$s dołączył do grupy %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Musisz być zalogowany, aby opuścić grupę." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Nieznana grupa." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Nie jesteś członkiem tej grupy." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "Użytkownik %1$s opuścił grupę %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3385,10 +3453,13 @@ msgid "Notice %s not found." msgstr "Nie odnaleziono wpisu nadrzędnego." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Wpis nie posiada profilu." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Stan użytkownika %1$s na %2$s" @@ -3869,17 +3940,20 @@ msgstr "Informacje o profilu" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 małe litery lub liczby, bez spacji i znaków przestankowych." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Imię i nazwisko" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Strona domowa" @@ -3910,6 +3984,7 @@ msgstr "O mnie" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Położenie" @@ -3971,6 +4046,7 @@ msgstr[1] "Wpis \"O mnie\" jest za długi (maksymalnie %d znaki)." msgstr[2] "Wpis \"O mnie\" jest za długi (maksymalnie %d znaków)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Nie wybrano strefy czasowej." @@ -4688,68 +4764,103 @@ msgstr "Użytkownik nie ma tej roli." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Nie można ograniczać użytkowników na tej witrynie." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Użytkownik jest już ograniczony." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sesje" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Ustawienia sesji tej witryny StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sesje" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Obsługa sesji" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Czy samodzielnie obsługiwać sesje." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Debugowanie sesji" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Włącza wyjście debugowania dla sesji." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Zapisz" - -msgid "Save site settings" -msgstr "Zapisz ustawienia witryny" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Zapisz ustawienia dostępu" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Musisz być zalogowany, aby wyświetlić aplikację." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Profil aplikacji" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Utworzona przez %1$s - domyślny dostęp: %2$s - %3$d użytkowników" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Utworzona przez %1$s - domyślny dostęp: %2$s - %3$d użytkowników" +msgstr[1] "Utworzona przez %1$s - domyślny dostęp: %2$s - %3$d użytkowników" +msgstr[2] "Utworzona przez %1$s - domyślny dostęp: %2$s - %3$d użytkowników" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Czynności aplikacji" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Edycja" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Przywrócenie klucza i sekretu" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Usuń" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Informacje o aplikacji" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Uwaga: obsługiwane są podpisy HMAC-SHA1. Metoda podpisu w zwykłym tekście " "nie jest obsługiwana." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Jesteś pewien, że chcesz przywrócić klucz i sekret klienta?" @@ -4865,6 +4976,7 @@ msgstr "Wszyscy członkowie" msgid "Statistics" msgstr "Statystyki" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Utworzono" @@ -4908,7 +5020,9 @@ msgstr "" "narzędziu [StatusNet](http://status.net/). Jej członkowie dzielą się " "krótkimi wiadomościami o swoim życiu i zainteresowaniach. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administratorzy" @@ -4932,13 +5046,12 @@ msgstr "Wiadomość do użytkownika %1$s na %2$s" msgid "Message from %1$s on %2$s" msgstr "Wiadomość od użytkownika %1$s na %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Usunięto wpis." -msgid "Notice" -msgstr "Wpisy" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s nadał etykietę %2$s" @@ -4973,6 +5086,8 @@ msgstr "Kanał wpisów dla %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Kanał wpisów dla %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Kanał wpisów dla %s (Atom)" @@ -5039,92 +5154,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Powtórzenia %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Nie można wyciszać użytkowników na tej witrynie." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Użytkownik jest już wyciszony." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Witryny" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Podstawowe ustawienia tej witryny StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Nazwa witryny nie może mieć zerową długość." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Należy posiadać prawidłowy kontaktowy adres e-mail." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Nieznany język \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Minimalne ograniczenie tekstu to 0 (bez ograniczenia)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Ograniczenie duplikatów musi wynosić jedną lub więcej sekund." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Ogólne" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nazwa witryny" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Nazwa strony, taka jak \"Mikroblog firmy X\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Dostarczane przez" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Tekst używany do odnośnika do zasług w stopce każdej strony" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Adres URL \"Dostarczane przez\"" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "Adres URL używany do odnośnika do zasług w stopce każdej strony" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Kontaktowy adres e-mail witryny" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Lokalne" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Domyślna strefa czasowa" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Domyśla strefa czasowa witryny, zwykle UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Domyślny język" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Język witryny, kiedy automatyczne wykrywanie z ustawień przeglądarki nie " "jest dostępne" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Ograniczenia" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Ograniczenie tekstu" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Maksymalna liczba znaków wpisów." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Ograniczenie duplikatów" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Ile czasu użytkownicy muszą czekać (w sekundach), aby ponownie wysłać to " "samo." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Zapisz ustawienia witryny" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Wpis witryny" @@ -5329,6 +5494,10 @@ msgstr "Adres URL zgłaszania" msgid "Snapshots will be sent to this URL" msgstr "Migawki będą wysyłane na ten adres URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Zapisz" + msgid "Save snapshot settings" msgstr "Zapisz ustawienia migawki" @@ -5676,6 +5845,7 @@ msgstr "" "naciśnij \"Odrzuć\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5687,6 +5857,7 @@ msgid "Subscribe to this user." msgstr "Subskrybuj tego użytkownika" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6131,6 +6302,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6485,6 +6660,9 @@ msgstr "Nie można usunąć ustawienia wyglądu." msgid "Home" msgstr "Strona domowa" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Podstawowa konfiguracja witryny" @@ -6524,6 +6702,10 @@ msgstr "Konfiguracja ścieżek" msgid "Sessions configuration" msgstr "Konfiguracja sesji" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sesje" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Zmodyfikuj wpis witryny" @@ -6628,6 +6810,7 @@ msgid "Describe your application" msgstr "Opisz aplikację" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Opis" @@ -6742,6 +6925,10 @@ msgstr "Zablokuj" msgid "Block this user" msgstr "Zablokuj tego użytkownika" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Wyniki polecenia" @@ -6841,14 +7028,14 @@ msgid "Fullname: %s" msgstr "Imię i nazwisko: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Położenie: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7209,6 +7396,10 @@ msgstr "Błąd bazy danych" msgid "Public" msgstr "Publiczny" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Usuń" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Usuń tego użytkownika" @@ -7337,31 +7528,47 @@ msgstr "Przejdź" msgid "Grant this user the \"%s\" role" msgstr "Nadaj użytkownikowi rolę \"%s\"" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 małe litery lub liczby, bez spacji i znaków przestankowych." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Zablokuj" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Zablokuj tego użytkownika" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "Adres URL strony domowej lub bloga grupy, albo temat." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Opisz grupę lub temat" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Opisz grupę lub temat w %d znaku" msgstr[1] "Opisz grupę lub temat w %d znakach" msgstr[2] "Opisz grupę lub temat w %d znakach" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Położenie grupy, jeśli istnieje, np. \"miasto, województwo (lub region), kraj" "\"." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Aliasy" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7379,6 +7586,27 @@ msgstr[2] "" "Dodatkowe pseudonimy grupy, oddzielone przecinkami lub spacjami, maksymalnie " "%d." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Członek od" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administrator" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7403,6 +7631,23 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Członkowie grupy %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Członkowie grupy %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7595,38 +7840,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "Użytkownik %1$s obserwuje teraz twoje wpisy na %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Jeśli użytkownik uważa, że to konto jest używane w złośliwych celach, może " -"zablokować je z listy subskrybentów i zgłosić je jako spam do " -"administratorów witryny na %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "Użytkownik %1$s obserwuje teraz twoje wpisy w witrynie %2$s.\n" "\n" @@ -7639,12 +7868,29 @@ msgstr "" "----\n" "Zmień adres e-mail lub opcje powiadamiania na %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "O mnie: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Jeśli użytkownik uważa, że to konto jest używane w złośliwych celach, może " +"zablokować je z listy subskrybentów i zgłosić je jako spam do " +"administratorów witryny na %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7654,16 +7900,13 @@ msgstr "Nowy adres e-mail do wysyłania do %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "Posiadasz nowy adres wysyłania w witrynie %1$s.\n" "\n" @@ -7698,8 +7941,8 @@ msgstr "Zostałeś szturchnięty przez użytkownika %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7708,10 +7951,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "Użytkownik %1$s (%2$s) zastanawia się, co się z Tobą dzieje w ostatnich " "dniach i zaprasza cię do wysłania aktualności.\n" @@ -7734,8 +7974,7 @@ msgstr "Nowa prywatna wiadomość od użytkownika %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7747,10 +7986,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "Użytkownik %1$s (%2$s) wysłał ci prywatną wiadomość:\n" "\n" @@ -7778,7 +8014,7 @@ msgstr "Użytkownik %1$s (@%2$s) dodał twój wpis jako ulubiony" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7792,10 +8028,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "Użytkownik %1$s (@%7$s) właśnie dodał twój wpis z %2$s jako jeden ze swoich " "ulubionych.\n" @@ -7833,14 +8066,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "Użytkownik %1$s (@%2$s) wysłał wpis wymagający twojej uwagi" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7856,12 +8088,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "Użytkownik %1$s (@%9$s) właśnie wysłał wpis dla ciebie (odpowiedź \\\"@\\\") " "na %2$s.\n" @@ -7887,6 +8114,31 @@ msgstr "" "\n" "PS Można wyłączyć powiadomienia przez e-mail tutaj: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "Użytkownik %1$s dołączył do grupy %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "Użytkownik %1$s dołączył do grupy %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Tylko użytkownik może czytać swoje skrzynki pocztowe." @@ -7926,6 +8178,20 @@ msgstr "Przychodzący e-mail nie jest dozwolony." msgid "Unsupported message type: %s" msgstr "Nieobsługiwany typ wiadomości: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Uczyń użytkownika administratorem grupy" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Uczyń administratorem" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Nadaje temu użytkownikowi uprawnienia administratora" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "Wystąpił błąd bazy danych podczas zapisywania pliku. Spróbuj ponownie." @@ -8636,9 +8902,8 @@ msgstr "Nieprawidłowy kod XML, brak głównego XRD." msgid "Getting backup from file '%s'." msgstr "Pobieranie kopii zapasowej z pliku \"%s\"." -#~ msgid "Couldn't update user." -#~ msgstr "Nie można zaktualizować użytkownika." +#~ msgid "Notice" +#~ msgstr "Wpisy" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Nie można zaktualizować wpisu użytkownika." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 małe litery lub liczby, bez spacji i znaków przestankowych." diff --git a/locale/pt/LC_MESSAGES/statusnet.po b/locale/pt/LC_MESSAGES/statusnet.po index 2aeabcd835..81c4175cd4 100644 --- a/locale/pt/LC_MESSAGES/statusnet.po +++ b/locale/pt/LC_MESSAGES/statusnet.po @@ -17,17 +17,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:00+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:54+0000\n" "Language-Team: Portuguese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pt\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -78,6 +78,8 @@ msgstr "Gravar configurações de acesso" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -85,6 +87,7 @@ msgstr "Gravar configurações de acesso" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Gravar" @@ -754,6 +757,7 @@ msgstr "Conta" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Utilizador" @@ -829,6 +833,7 @@ msgstr "Não pode apagar o estado de outro utilizador." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Nota não foi encontrada." @@ -1034,6 +1039,103 @@ msgstr "Método da API em desenvolvimento." msgid "User not found." msgstr "Utilizador não encontrado." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Tem de iniciar uma sessão para deixar um grupo." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Grupo não foi encontrado." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Nenhum utilizador ou ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Não iniciou sessão." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Perfil não existe." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Uma lista dos utilizadores neste grupo." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Não foi possível adicionar %1$s ao grupo %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Estado de %1$s em %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1109,36 +1211,6 @@ msgstr "Nenhum favorito encontrado." msgid "Cannot delete someone else's favorite." msgstr "Não foi possível eliminar o favorito." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Grupo não foi encontrado." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Não é membro." @@ -1253,6 +1325,7 @@ msgstr "Antevisão" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Apagar" @@ -1412,6 +1485,14 @@ msgstr "Desbloquear este utilizador" msgid "Post to %s" msgstr "Publicar em %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s deixou o grupo %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Sem código de confimação." @@ -1470,6 +1551,7 @@ msgid "Notices" msgstr "Notas" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1544,6 +1626,7 @@ msgstr "Aplicação não foi encontrada." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Não é o proprietário desta aplicação." @@ -1578,12 +1661,6 @@ msgstr "Apagar esta aplicação." msgid "You must be logged in to delete a group." msgstr "Precisas estar logado para excluir um grupo." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Nenhum utilizador ou ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Não tens permissão para apagar este grupo." @@ -1866,6 +1943,7 @@ msgid "You must be logged in to edit an application." msgstr "Tem de iniciar uma sessão para editar uma aplicação." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Aplicação não foi encontrada." @@ -2087,6 +2165,7 @@ msgstr "Não é possível normalizar esse endereço electrónico" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Correio electrónico é inválido." @@ -2460,33 +2539,26 @@ msgstr "Membros do grupo %1$s, página %2$d" msgid "A list of the users in this group." msgstr "Uma lista dos utilizadores neste grupo." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Gestor" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloquear" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s membros do grupo" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloquear este utilizador" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Membros do grupo %1$s, página %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Tornar utilizador o gestor do grupo" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Tornar Gestor" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Tornar este utilizador um gestor" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Uma lista dos utilizadores neste grupo." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2524,6 +2596,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Criar um grupo novo" @@ -2906,21 +2979,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s juntou-se ao grupo %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Tem de iniciar uma sessão para deixar um grupo." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Grupo desconhecido." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Não é um membro desse grupo." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s deixou o grupo %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3346,10 +3414,13 @@ msgid "Notice %s not found." msgstr "Método da API não encontrado." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Nota não tem perfil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Estado de %1$s em %2$s" @@ -3840,18 +3911,21 @@ msgstr "Informação do perfil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 letras minúsculas ou números, sem pontuação ou espaços" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nome completo" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Página pessoal" @@ -3882,6 +3956,7 @@ msgstr "Biografia" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Localidade" @@ -3940,6 +4015,7 @@ msgstr[0] "Biografia demasiado extensa (máx. %d caracteres)." msgstr[1] "Biografia demasiado extensa (máx. %d caracteres)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Fuso horário não foi seleccionado." @@ -4673,68 +4749,102 @@ msgstr "O utilizador não tem esta função." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Não pode impedir notas públicas neste site." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Utilizador já está impedido de criar notas públicas." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessões" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessões" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Gerir sessões" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Se devemos gerir sessões nós próprios." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Depuração de sessões" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Ligar a impressão de dados de depuração, para sessões." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Gravar" - -msgid "Save site settings" -msgstr "Gravar configurações do site" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Gravar configurações de acesso" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Tem de iniciar uma sessão para ver uma aplicação." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Perfil da aplicação" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Criado por %1$s - acesso por omissão %2$s - %3$d utilizadores" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Criado por %1$s - acesso por omissão %2$s - %3$d utilizadores" +msgstr[1] "Criado por %1$s - acesso por omissão %2$s - %3$d utilizadores" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Operações da aplicação" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Editar" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Reiniciar chave e segredo" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Apagar" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Informação da aplicação" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Nota: Assinaturas HMAC-SHA1 são suportadas. O método de assinatura com texto " "simples não é suportado." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Tem a certeza de que quer reiniciar a sua chave e segredo de consumidor?" @@ -4851,6 +4961,7 @@ msgstr "Todos os membros" msgid "Statistics" msgstr "Estatísticas" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Criado" @@ -4894,7 +5005,9 @@ msgstr "" "programa de Software Livre [StatusNet](http://status.net/). Os membros deste " "grupo partilham mensagens curtas acerca das suas vidas e interesses. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Gestores" @@ -4918,14 +5031,12 @@ msgstr "Mensagem para %1$s a %2$s" msgid "Message from %1$s on %2$s" msgstr "Mensagem de %1$s a %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Avatar actualizado." -#, fuzzy -msgid "Notice" -msgstr "Notas" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s etiquetado como %2$s" @@ -4960,6 +5071,8 @@ msgstr "Fonte de notas para %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Fonte de notas para %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Fonte de notas para %s (Atom)" @@ -5025,92 +5138,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Repetições de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Não pode silenciar utilizadores neste site." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "O utilizador já está silenciado." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Site" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Configurações básicas para este site StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Nome do site não pode ter comprimento zero." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Tem de ter um endereço válido para o correio electrónico de contacto." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Língua desconhecida \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "O limite mínimo para o texto é 0 (sem limite)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "O limite de duplicados tem de ser um ou mais segundos." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Geral" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nome do site" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "O nome do seu site, por exemplo \"Microblogue NomeDaEmpresa\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Disponibilizado por" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Texto usado para a ligação de atribuição no rodapé de cada página" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL da atribuição" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL usada para a ligação de atribuição no rodapé de cada página" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Correio" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Endereço de correio electrónico de contacto para o site" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Local" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Fuso horário, por omissão" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Fuso horário por omissão, para o site; normalmente, UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Língua, por omissão" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Língua do site quando a sua detecção na configuração do browser não é " "possível" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limites" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Limite de texto" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Número máximo de caracteres nas notas." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Limite de duplicações" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Quanto tempo os utilizadores terão de esperar (em segundos) para publicar a " "mesma coisa outra vez." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Gravar configurações do site" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Aviso do Site" @@ -5316,6 +5479,10 @@ msgstr "URL para relatórios" msgid "Snapshots will be sent to this URL" msgstr "Instantâneos serão enviados para esta URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Gravar" + msgid "Save snapshot settings" msgstr "Gravar configurações do instantâneo" @@ -5663,6 +5830,7 @@ msgstr "" "as notas de alguém, simplesmente clique \"Rejeitar\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Aceitar" @@ -5673,6 +5841,7 @@ msgid "Subscribe to this user." msgstr "Subscrever este utilizador" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Rejeitar" @@ -6106,6 +6275,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6464,6 +6637,9 @@ msgstr "Não foi possível apagar a configuração do estilo." msgid "Home" msgstr "Página pessoal" +msgid "Admin" +msgstr "Gestor" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configuração básica do site" @@ -6503,6 +6679,10 @@ msgstr "Configuração das localizações" msgid "Sessions configuration" msgstr "Configuração das sessões" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessões" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Editar aviso do site" @@ -6607,6 +6787,7 @@ msgid "Describe your application" msgstr "Descreva a sua aplicação" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Descrição" @@ -6723,6 +6904,10 @@ msgstr "Bloquear" msgid "Block this user" msgstr "Bloquear este utilizador" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Resultados do comando" @@ -6823,14 +7008,14 @@ msgid "Fullname: %s" msgstr "Nome completo: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Localidade: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7187,6 +7372,10 @@ msgstr "Erro de base de dados" msgid "Public" msgstr "Público" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Apagar" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Apagar este utilizador" @@ -7320,30 +7509,46 @@ msgstr "Prosseguir" msgid "Grant this user the \"%s\" role" msgstr "Atribuir a este utilizador a função \"%s\"" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 letras minúsculas ou números, sem pontuação ou espaços" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloquear" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloquear este utilizador" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL da página ou do blogue, deste grupo ou assunto" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Descreva o grupo ou assunto" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Descreva o grupo ou o assunto em %d caracteres" msgstr[1] "Descreva o grupo ou o assunto em %d caracteres" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "Localidade do grupo, se aplicável, por ex. \"Cidade, Região, País\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Nomes alternativos" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7356,6 +7561,27 @@ msgstr[0] "" msgstr[1] "" "Nomes adicionais para o grupo, separados por vírgulas ou espaços, máx. %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membro desde" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Gestor" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7380,6 +7606,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membros do grupo %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Membros do grupo %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7568,38 +7810,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s está agora a ouvir as suas notas em %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Se acredita que esta conta está sendo usada abusivamente pode bloqueá-la da " -"sua lista de subscritores e reportá-la como spam aos administradores do site " -"em %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s está agora a ouvir as suas notas em %2$s.\n" "\n" @@ -7613,12 +7839,29 @@ msgstr "" "Altere o seu endereço de correio electrónico ou as opções de notificação em %" "8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Perfil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Bio: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Se acredita que esta conta está sendo usada abusivamente pode bloqueá-la da " +"sua lista de subscritores e reportá-la como spam aos administradores do site " +"em %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7634,10 +7877,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Tem um novo endereço electrónico para fazer publicações no site %1$s.\n" "\n" @@ -7672,8 +7912,8 @@ msgstr "%s envia-lhe um toque" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7682,10 +7922,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) está a perguntar-se o que anda você a fazer e convida-o a " "publicar as novidades.\n" @@ -7708,8 +7945,7 @@ msgstr "Nova mensagem privada de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7721,10 +7957,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) enviou-lhe uma mensagem privada:\n" "\n" @@ -7752,7 +7985,7 @@ msgstr "%s (@%s) adicionou a sua nota às favoritas." #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7766,10 +7999,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) acaba de adicionar a sua nota de %2$s às favoritas.\n" "\n" @@ -7806,14 +8036,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) enviou uma nota à sua atenção" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7829,12 +8058,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) acaba de enviar uma nota à sua atenção (uma 'resposta-@') em %2" "$s.\n" @@ -7860,6 +8084,31 @@ msgstr "" "\n" "P.S. Pode desligar estas notificações electrónicas aqui: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s juntou-se ao grupo %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s juntou-se ao grupo %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Só o próprio utilizador pode ler a sua caixa de correio." @@ -7899,6 +8148,20 @@ msgstr "Desculpe, não lhe é permitido receber correio electrónico." msgid "Unsupported message type: %s" msgstr "Tipo de mensagem não suportado: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Tornar utilizador o gestor do grupo" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Tornar Gestor" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Tornar este utilizador um gestor" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8602,9 +8865,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Não foi possível actualizar o utilizador." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Não foi possível actualizar o registo do utilizador." +#~ msgid "Notice" +#~ msgstr "Notas" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 letras minúsculas ou números, sem pontuação ou espaços" diff --git a/locale/pt_BR/LC_MESSAGES/statusnet.po b/locale/pt_BR/LC_MESSAGES/statusnet.po index 15bb8a3f8b..58c8e208c8 100644 --- a/locale/pt_BR/LC_MESSAGES/statusnet.po +++ b/locale/pt_BR/LC_MESSAGES/statusnet.po @@ -15,18 +15,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:01+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:55+0000\n" "Language-Team: Brazilian Portuguese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pt-br\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -77,6 +77,8 @@ msgstr "Salvar as configurações de acesso" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -84,6 +86,7 @@ msgstr "Salvar as configurações de acesso" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Salvar" @@ -765,6 +768,7 @@ msgstr "Conta" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Usuário" @@ -844,6 +848,7 @@ msgstr "Você não pode excluir uma mensagem de outro usuário." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Essa mensagem não existe." @@ -1049,6 +1054,103 @@ msgstr "O método da API está em construção." msgid "User not found." msgstr "O método da API não foi encontrado!" +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Você deve estar autenticado para sair de um grupo." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Esse grupo não existe." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Nenhum apelido ou identificação." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Você não está autenticado." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Perfil não existe." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Uma lista dos usuários deste grupo." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Não foi possível associar o usuário %1$s ao grupo %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Mensagem de %1$s no %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1128,36 +1230,6 @@ msgstr "Essa Favorita não existe." msgid "Cannot delete someone else's favorite." msgstr "Não é possível excluir a Favorita de outra pessoa" -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Esse grupo não existe." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1275,6 +1347,7 @@ msgstr "Pré-visualizar" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Excluir" @@ -1446,6 +1519,14 @@ msgstr "Desbloquear este usuário" msgid "Post to %s" msgstr "Publicar em %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s deixou o grupo %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Nenhum código de confirmação." @@ -1504,6 +1585,7 @@ msgid "Notices" msgstr "Mensagens" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1580,6 +1662,7 @@ msgstr "A aplicação não foi encontrada." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Você não é o dono desta aplicação." @@ -1616,12 +1699,6 @@ msgstr "Excluir esta aplicação" msgid "You must be logged in to delete a group." msgstr "Você deve estar autenticado para excluir um grupo." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Nenhum apelido ou identificação." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Você não tem permissão para excluir este grupo." @@ -1916,6 +1993,7 @@ msgid "You must be logged in to edit an application." msgstr "Você precisa estar autenticado para editar uma aplicação." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Essa aplicação não existe." @@ -2135,6 +2213,7 @@ msgstr "Não foi possível normalizar este endereço de e-mail" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Não é um endereço de e-mail válido." @@ -2513,33 +2592,26 @@ msgstr "Membros do grupo %1$s, pág. %2$d" msgid "A list of the users in this group." msgstr "Uma lista dos usuários deste grupo." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Admin" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Bloquear" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Membros do grupo %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bloquear este usuário" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Membros do grupo %1$s, pág. %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Tornar o usuário um administrador do grupo" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Tornar administrador" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Torna este usuário um administrador" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Uma lista dos usuários deste grupo." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2578,6 +2650,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Criar um novo grupo" @@ -2962,21 +3035,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s associou-se ao grupo %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Você deve estar autenticado para sair de um grupo." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Grupo desconhecido." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Você não é um membro desse grupo." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s deixou o grupo %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3418,10 +3486,13 @@ msgid "Notice %s not found." msgstr "A mensagem pai não foi encontrada." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "A mensagem não está associada a nenhum perfil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Mensagem de %1$s no %2$s" @@ -3906,17 +3977,20 @@ msgstr "Informações do perfil" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 letras minúsculas ou números, sem pontuações ou espaços." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Nome completo" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Site" @@ -3946,6 +4020,7 @@ msgstr "Descrição" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Localização" @@ -4006,6 +4081,7 @@ msgstr[0] "A descrição é muito extensa (máximo %d caractere)." msgstr[1] "A descrição é muito extensa (máximo %d caracteres)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "O fuso horário não foi selecionado." @@ -4741,68 +4817,102 @@ msgstr "O usuário não possui este papel." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Você não pode colocar usuários deste site em isolamento." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "O usuário já está em isolamento." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessões" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Configurações de sessão para este site StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessões" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Gerenciar sessões" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Define se as sessões terão gerenciamento próprio." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Depuração da sessão" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Ativa a saída de depuração para as sessões." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Salvar" - -msgid "Save site settings" -msgstr "Salvar as configurações do site" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Salvar as configurações de acesso" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Você deve estar autenticado para visualizar uma aplicação." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Perfil da aplicação" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Criado por %1$s - acesso %2$s por padrão - %3$d usuários" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Criado por %1$s - acesso %2$s por padrão - %3$d usuários" +msgstr[1] "Criado por %1$s - acesso %2$s por padrão - %3$d usuários" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Ações da aplicação" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Editar" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Restaurar a chave e o segredo" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Excluir" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Informação da aplicação" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Nota: Nós suportamos assinaturas HMAC-SHA1. Nós não suportamos o método de " "assinatura em texto plano." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Tem certeza que deseja restaurar sua chave e segredo de consumidor?" @@ -4917,6 +5027,7 @@ msgstr "Todos os membros" msgid "Statistics" msgstr "Estatísticas" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Criado" @@ -4960,7 +5071,9 @@ msgstr "" "[StatusNet](http://status.net/). Seus membros compartilham mensagens curtas " "sobre suas vidas e interesses. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administradores" @@ -4984,13 +5097,12 @@ msgstr "Mensagem para %1$s no %2$s" msgid "Message from %1$s on %2$s" msgstr "Mensagem de %1$s no %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "A mensagem excluída." -msgid "Notice" -msgstr "Mensagens" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "Mensagens de %1$s etiquetadas como %2$s" @@ -5025,6 +5137,8 @@ msgstr "Fonte de mensagens de %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Fonte de mensagens de %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Fonte de mensagens de %s (Atom)" @@ -5092,92 +5206,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Repetição de %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Você não pode silenciar os usuários neste site." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "O usuário já está silenciado." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Site" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Configurações básicas para esta instância do StatusNet." +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Você deve digitar alguma coisa para o nome do site." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Você deve ter um endereço de e-mail para contato válido." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Idioma \"%s\" desconhecido." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "O valor mínimo para o limite de texto é 0 (sem limites)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "O limite de duplicatas deve ser de um ou mais segundos." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Geral" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Nome do site" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "O nome do seu site, por exemplo \"Microblog da Sua Empresa\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Disponibilizado por" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Texto utilizado para o link de créditos no rodapé de cada página" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL do disponibilizado por" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL utilizada para o link de créditos no rodapé de cada página" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Endereço de e-mail para contatos do seu site" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Local" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Fuso horário padrão" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Fuso horário padrão para o seu site; geralmente UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Idioma padrão" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Idioma do site quando as configurações de autodetecção a partir do navegador " "não estiverem disponíveis" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Limites" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Limite do texto" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Número máximo de caracteres para as mensagens." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Limite de duplicatas" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Quanto tempo (em segundos) os usuários devem esperar para publicar a mesma " "coisa novamente." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Salvar as configurações do site" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Avisos do site" @@ -5381,6 +5545,10 @@ msgstr "URL para envio" msgid "Snapshots will be sent to this URL" msgstr "As estatísticas serão enviadas para esta URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Salvar" + msgid "Save snapshot settings" msgstr "Salvar as configurações de estatísticas" @@ -5726,6 +5894,7 @@ msgstr "" "alguém, clique em \"Recusar\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5737,6 +5906,7 @@ msgid "Subscribe to this user." msgstr "Assinar este usuário" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6171,6 +6341,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6525,6 +6699,9 @@ msgstr "Não foi possível excluir as configurações da aparência." msgid "Home" msgstr "Site" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Configuração básica do site" @@ -6564,6 +6741,10 @@ msgstr "Configuração dos caminhos" msgid "Sessions configuration" msgstr "Configuração das sessões" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessões" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Editar os avisos do site" @@ -6673,6 +6854,7 @@ msgid "Describe your application" msgstr "Descreva sua aplicação" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Descrição" @@ -6790,6 +6972,10 @@ msgstr "Bloquear" msgid "Block this user" msgstr "Bloquear este usuário" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Resultados do comando" @@ -6891,14 +7077,14 @@ msgid "Fullname: %s" msgstr "Nome completo: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Localização: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7261,6 +7447,10 @@ msgstr "Erro no banco de dados" msgid "Public" msgstr "Público" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Excluir" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Excluir este usuário" @@ -7394,22 +7584,35 @@ msgstr "Ir" msgid "Grant this user the \"%s\" role" msgstr "Associa o papel \"%s\" a este usuário" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 letras minúsculas ou números, sem pontuações ou espaços." +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Bloquear" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bloquear este usuário" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL para o site ou blog do grupo ou tópico" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Descreva o grupo ou tópico" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Descreva o grupo ou tópico em %d caracteres." msgstr[1] "Descreva o grupo ou tópico em %d caracteres." +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." @@ -7417,9 +7620,12 @@ msgstr "" "Localização do grupo, caso tenha alguma, como \"cidade, estado (ou região), " "país\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Apelidos" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7432,6 +7638,27 @@ msgstr[0] "" msgstr[1] "" "Apelidos extras para o grupo, separado por vírgulas ou espaços, no máximo %d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Membro desde" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Admin" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7456,6 +7683,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Membros do grupo %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Membros do grupo %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7645,38 +7888,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s agora está acompanhando suas mensagens no %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Se você acredita que esse usuário está se comportando de forma abusiva, você " -"pode bloqueá-lo da sua lista de assinantes e reportá-lo como spammer ao " -"administrador do site em %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s agora está acompanhando suas mensagens no %2$s.\n" "\n" @@ -7689,12 +7916,29 @@ msgstr "" "----\n" "Altere seu endereço de e-mail e suas opções de notificação em %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Perfil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Descrição: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Se você acredita que esse usuário está se comportando de forma abusiva, você " +"pode bloqueá-lo da sua lista de assinantes e reportá-lo como spammer ao " +"administrador do site em %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7710,10 +7954,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Você tem um novo endereço para publicação no %1$s.\n" "\n" @@ -7750,8 +7991,8 @@ msgstr "Você teve a atenção chamada por %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7760,10 +8001,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) quer saber notícias suas e o está convidando para publicar " "alguma mensagem..\n" @@ -7786,8 +8024,7 @@ msgstr "Nova mensagem particular de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7799,10 +8036,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) lhe enviou uma mensagem particular:\n" "\n" @@ -7830,7 +8064,7 @@ msgstr "%s (@%s) marcou sua mensagem como favorita" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7844,10 +8078,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) acabou de adicionar sua mensagem do %2$s como uma favorita.\n" "\n" @@ -7884,14 +8115,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) enviou uma mensagem citando você" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7907,12 +8137,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) acabou de enviar uma mensagem citando você (do tipo '@usuário') " "em %2$s.\n" @@ -7938,6 +8163,31 @@ msgstr "" "\n" "P.S.: Você pode cancelar a notificações por e-mail aqui: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s associou-se ao grupo %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s associou-se ao grupo %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "As caixas postais são legíveis somente pelo seu próprio usuário." @@ -7977,6 +8227,20 @@ msgstr "Desculpe-me, mas não é permitido o recebimento de e-mails." msgid "Unsupported message type: %s" msgstr "Tipo de mensagem não suportado: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Tornar o usuário um administrador do grupo" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Tornar administrador" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Torna este usuário um administrador" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8678,9 +8942,8 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Não foi possível atualizar o usuário." +#~ msgid "Notice" +#~ msgstr "Mensagens" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Não foi possível atualizar o registro do usuário." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 letras minúsculas ou números, sem pontuações ou espaços." diff --git a/locale/ru/LC_MESSAGES/statusnet.po b/locale/ru/LC_MESSAGES/statusnet.po index 135c92c3dc..8c77dc3334 100644 --- a/locale/ru/LC_MESSAGES/statusnet.po +++ b/locale/ru/LC_MESSAGES/statusnet.po @@ -18,18 +18,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:03+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:57+0000\n" "Language-Team: Russian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ru\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= " "2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -81,6 +81,8 @@ msgstr "Сохранить настройки доступа" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -88,6 +90,7 @@ msgstr "Сохранить настройки доступа" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Сохранить" @@ -767,6 +770,7 @@ msgstr "Аккаунт" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Имя" @@ -846,6 +850,7 @@ msgstr "Вы не можете удалять статус других поль #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Нет такой записи." @@ -985,9 +990,9 @@ msgstr "Записи %1$s, повторённые для %2$s / %3$s." msgid "Repeats of %s" msgstr "Повторы за %s" -#, fuzzy, php-format +#, php-format msgid "%1$s notices that %2$s / %3$s has repeated." -msgstr "%1$s добавил запись %2$s в число любимых." +msgstr "Записи %1$s, повторённые %2$s / %3$s." #. TRANS: Title for timeline with lastest notices with a given tag. #. TRANS: %s is the tag. @@ -1053,6 +1058,103 @@ msgstr "Метод API реконструируется." msgid "User not found." msgstr "Метод API не найден." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Вы должны авторизоваться, чтобы покинуть группу." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Нет такой группы." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Нет имени или ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Не авторизован." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Отсутствующий профиль." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Список пользователей, являющихся членами этой группы." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Не удаётся присоединить пользователя %1$s к группе %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "Статус %1$s на %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1061,9 +1163,9 @@ msgstr "Нет такого профиля." #. TRANS: Subtitle for Atom favorites feed. #. TRANS: %1$s is a user nickname, %2$s is the StatusNet sitename. -#, fuzzy, php-format +#, php-format msgid "Notices %1$s has favorited on %2$s" -msgstr "Обновлено от %1$s и его друзей на %2$s!" +msgstr "Список любимых записей %1$s на %2$s" #. TRANS: Client exception thrown when trying to set a favorite for another user. #. TRANS: Client exception thrown when trying to subscribe another user. @@ -1079,9 +1181,8 @@ msgid "Can only fave notices." msgstr "Возможно только добавление записей в число любимых." #. TRANS: Client exception thrown when trying favorite a notice without content. -#, fuzzy msgid "Unknown notice." -msgstr "Неизвестная запись" +msgstr "Неизвестная запись." #. TRANS: Client exception thrown when trying favorite an already favorited notice. msgid "Already a favorite." @@ -1095,9 +1196,9 @@ msgstr "Участники группы %s" #. TRANS: Subtitle for group membership feed. #. TRANS: %1$s is a username, %2$s is the StatusNet sitename. -#, fuzzy, php-format +#, php-format msgid "Groups %1$s is a member of on %2$s" -msgstr "Группы, в которых состоит %s" +msgstr "Группы, в которых состоит %1$s на %2$s" #. TRANS: Client exception thrown when trying subscribe someone else to a group. msgid "Cannot add someone else's membership." @@ -1105,9 +1206,8 @@ msgstr "Не удаётся добавить пользователя в гру #. TRANS: Client error displayed when not using the POST verb. #. TRANS: Do not translate POST. -#, fuzzy msgid "Can only handle join activities." -msgstr "Возможна обработка только POST-запросов." +msgstr "Возможна обработка только запросов на присоединение." #. TRANS: Client exception thrown when trying to subscribe to a non-existing group. msgid "Unknown group." @@ -1129,36 +1229,6 @@ msgstr "Нет такой записи среди любимых." msgid "Cannot delete someone else's favorite." msgstr "Не удаётся удалить запись из чужого списка любимых." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Нет такой группы." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Не является участником." @@ -1273,6 +1343,7 @@ msgstr "Просмотр" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Удалить" @@ -1440,6 +1511,14 @@ msgstr "Разблокировать пользователя." msgid "Post to %s" msgstr "Отправить в %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s покинул группу %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Нет кода подтверждения." @@ -1464,12 +1543,10 @@ msgstr "Этот адрес уже подтверждён." #. TRANS: Server error displayed when updating IM preferences fails. #. TRANS: Server error thrown on database error removing a registered IM address. -#, fuzzy msgid "Could not update user IM preferences." msgstr "Не удаётся обновить настройки сервиса мгновенных сообщений." #. TRANS: Server error displayed when adding IM preferences fails. -#, fuzzy msgid "Could not insert user IM preferences." msgstr "" "Не удаётся поместить настройки сервиса мгновенных сообщений в базу данных." @@ -1499,10 +1576,10 @@ msgid "Notices" msgstr "Записи" #. TRANS: Title for conversation page. -#, fuzzy +#. TRANS: Title for page that shows a notice. msgctxt "TITLE" msgid "Notice" -msgstr "Записи" +msgstr "Запись" #. TRANS: Client exception displayed trying to delete a user account while not logged in. msgid "Only logged-in users can delete their account." @@ -1577,6 +1654,7 @@ msgstr "Приложение не найдено." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Вы не являетесь владельцем этого приложения." @@ -1611,12 +1689,6 @@ msgstr "Удалить это приложение." msgid "You must be logged in to delete a group." msgstr "Вы должны авторизоваться, чтобы удалить группу." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Нет имени или ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Вы не можете удалить эту группу." @@ -1897,6 +1969,7 @@ msgid "You must be logged in to edit an application." msgstr "Вы должны авторизоваться, чтобы изменить приложение." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Нет такого приложения." @@ -2123,6 +2196,7 @@ msgstr "Email-адрес не может быть нормализован." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Неверный электронный адрес." @@ -2492,33 +2566,26 @@ msgstr "Участники группы %1$s, страница %2$d" msgid "A list of the users in this group." msgstr "Список пользователей, являющихся членами этой группы." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Настройки" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Заблокировать" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Участники группы %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Заблокировать этого пользователя" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Участники группы %1$s, страница %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Сделать пользователя администратором группы" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Сделать администратором" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Сделать этого пользователя администратором" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Список пользователей, являющихся членами этой группы." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2556,6 +2623,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Создать новую группу" @@ -2637,13 +2705,13 @@ msgstr "Текущий подтверждённый адрес %s." #. TRANS: Form note in IM settings form. #. TRANS: %s is the IM service name, %2$s is the IM address set. -#, fuzzy, php-format +#, php-format msgid "" "Awaiting confirmation on this address. Check your %1$s account for a message " "with further instructions. (Did you add %2$s to your buddy list?)" msgstr "" -"Ожидание подтверждения этого адреса. Проверьте свою учётную запись %s на " -"наличие сообщения с дальнейшими инструкциями. (Вы не забыли добавить %s в " +"Ожидание подтверждения этого адреса. Проверьте свою учётную запись %1$s на " +"наличие сообщения с дальнейшими инструкциями. (Вы не забыли добавить %2$s в " "список контактов?)" #. TRANS: Field label for IM address. @@ -2676,7 +2744,6 @@ msgid "Publish a MicroID" msgstr "Опубликовать MicroID" #. TRANS: Server error thrown on database error updating IM preferences. -#, fuzzy msgid "Could not update IM preferences." msgstr "Не удаётся обновить настройки быстрых сообщений." @@ -2694,12 +2761,10 @@ msgid "No transport." msgstr "Нет сервера передачи." #. TRANS: Message given saving IM address that cannot be normalised. -#, fuzzy msgid "Cannot normalize that screenname." -msgstr "Не удаётся нормализовать выбранный псевдоним" +msgstr "Не удаётся нормализовать выбранный псевдоним." #. TRANS: Message given saving IM address that not valid. -#, fuzzy msgid "Not a valid screenname." msgstr "Недопустимый псевдоним." @@ -2716,7 +2781,6 @@ msgid "That is the wrong IM address." msgstr "Это неверный IM-адрес." #. TRANS: Server error thrown on database error canceling IM address confirmation. -#, fuzzy msgid "Could not delete confirmation." msgstr "Не удаётся удалить подтверждение." @@ -2933,21 +2997,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s вступил в группу %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Вы должны авторизоваться, чтобы покинуть группу." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Неизвестная группа." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Вы не являетесь членом этой группы." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s покинул группу %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3372,10 +3431,13 @@ msgid "Notice %s not found." msgstr "Запись %s не найдена." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Уведомление не имеет профиля." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "Статус %1$s на %2$s" @@ -3503,7 +3565,6 @@ msgstr "Пароль должен быть длиной не менее 6 сим #. TRANS: Form validation error on password change when password confirmation does not match. #. TRANS: Form validation error displayed when trying to register with non-matching passwords. -#, fuzzy msgid "Passwords do not match." msgstr "Пароли не совпадают." @@ -3848,18 +3909,21 @@ msgstr "Информация профиля" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" "1-64 латинских строчных буквы или цифры, без знаков препинания и пробелов" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Полное имя" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Главная" @@ -3890,6 +3954,7 @@ msgstr "Биография" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Месторасположение" @@ -3948,6 +4013,7 @@ msgstr[1] "Слишком длинная биография (максимум %d msgstr[2] "Слишком длинная биография (максимум %d символов)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Часовой пояс не выбран." @@ -4242,13 +4308,12 @@ msgid "New password successfully saved. You are now logged in." msgstr "Новый пароль успешно сохранён. Вы авторизовались." #. TRANS: Client exception thrown when no ID parameter was provided. -#, fuzzy msgid "No id parameter." msgstr "Не указан параметр id." #. TRANS: Client exception thrown when an invalid ID parameter was provided for a file. #. TRANS: %d is the provided ID for which the file is not present (number). -#, fuzzy, php-format +#, php-format msgid "No such file \"%d\"." msgstr "Нет такого файла «%d»." @@ -4265,7 +4330,6 @@ msgid "Registration successful" msgstr "Регистрация успешна!" #. TRANS: Title for registration page. -#, fuzzy msgctxt "TITLE" msgid "Register" msgstr "Регистрация" @@ -4275,7 +4339,6 @@ msgid "Registration not allowed." msgstr "Регистрация недопустима." #. TRANS: Form validation error displayed when trying to register without agreeing to the site license. -#, fuzzy msgid "You cannot register if you do not agree to the license." msgstr "" "Вы не можете зарегистрироваться без подтверждения лицензионного соглашения." @@ -4296,16 +4359,14 @@ msgstr "" "сможете публиковать записи и устанавливать связи с друзьями и коллегами." #. TRANS: Field label on account registration page. In this field the password has to be entered a second time. -#, fuzzy msgctxt "PASSWORD" msgid "Confirm" msgstr "Подтверждение" #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "LABEL" msgid "Email" -msgstr "Email" +msgstr "Электронная почта" #. TRANS: Field title on account registration page. msgid "Used only for updates, announcements, and password recovery." @@ -4319,24 +4380,22 @@ msgstr "Полное имя, предпочтительно ваше насто #. TRANS: Text area title in form for account registration. Plural #. TRANS: is decided by the number of characters available for the #. TRANS: biography (%d). -#, fuzzy, php-format +#, php-format msgid "Describe yourself and your interests in %d character." msgid_plural "Describe yourself and your interests in %d characters." -msgstr[0] "Опишите себя и свои увлечения при помощи %d символа" -msgstr[1] "Опишите себя и свои увлечения при помощи %d символов" -msgstr[2] "Опишите себя и свои увлечения при помощи %d символов" +msgstr[0] "Опишите себя и свои увлечения при помощи %d символа." +msgstr[1] "Опишите себя и свои увлечения при помощи %d символов." +msgstr[2] "Опишите себя и свои увлечения при помощи %d символов." #. TRANS: Text area title on account registration page. -#, fuzzy msgid "Describe yourself and your interests." -msgstr "Опишите себя и свои интересы" +msgstr "Опишите себя и свои интересы." #. TRANS: Field title on account registration page. msgid "Where you are, like \"City, State (or Region), Country\"." msgstr "Где вы находитесь, например «Город, область (или регион), страна»." #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "BUTTON" msgid "Register" msgstr "Регистрация" @@ -4454,7 +4513,6 @@ msgid "URL of your profile on another compatible microblogging service." msgstr "URL-адрес вашего профиля на другом совместимом сервисе микроблогинга." #. TRANS: Button text on page for remote subscribe. -#, fuzzy msgctxt "BUTTON" msgid "Subscribe" msgstr "Подписаться" @@ -4647,78 +4705,112 @@ msgid "You cannot revoke user roles on this site." msgstr "Вы не можете снимать роли пользователей на этом сайте." #. TRANS: Client error displayed when trying to revoke a role that is not set. -#, fuzzy msgid "User does not have this role." -msgstr "Пользователь не имеет этой роли." +msgstr "У пользователя нет этой роли." #. TRANS: Engine name for RSD. #. TRANS: Engine name. msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "" "Вы не можете устанавливать режим песочницы для пользователей этого сайта." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Пользователь уже в режиме песочницы." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Сессии" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Настройки сессии для этого сайта StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Сессии" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Управление сессиями" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Управлять ли сессиями самостоятельно." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Отладка сессий" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Включить отладочный вывод для сессий." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Сохранить" - -msgid "Save site settings" -msgstr "Сохранить настройки сайта" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Сохранить настройки доступа" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Вы должны авторизоваться, чтобы просматривать приложения." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Профиль приложения" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Создано %1$s — доступ по умолчанию: %2$s — %3$d польз." +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Создано %1$s — доступ по умолчанию: %2$s — %3$d польз." +msgstr[1] "Создано %1$s — доступ по умолчанию: %2$s — %3$d польз." +msgstr[2] "Создано %1$s — доступ по умолчанию: %2$s — %3$d польз." +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Действия приложения" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Редактировать" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Сбросить ключ и секретную фразу" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Удалить" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Информация о приложении" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Примечание: Мы поддерживаем подписи HMAC-SHA1. Мы не поддерживаем метод " "подписи открытым текстом." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Вы уверены, что хотите сбросить ваш ключ потребителя и секретную фразу?" @@ -4834,6 +4926,7 @@ msgstr "Все участники" msgid "Statistics" msgstr "Статистика" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Дата создания" @@ -4877,7 +4970,9 @@ msgstr "" "обеспечении [StatusNet](http://status.net/). Участники обмениваются " "короткими сообщениями о своей жизни и интересах. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Администраторы" @@ -4901,13 +4996,12 @@ msgstr "Сообщение для %1$s на %2$s" msgid "Message from %1$s on %2$s" msgstr "Сообщение от %1$s на %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Запись удалена." -msgid "Notice" -msgstr "Записи" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s с тегом %2$s" @@ -4942,6 +5036,8 @@ msgstr "Лента записей для %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Лента записей для %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Лента записей для %s (Atom)" @@ -5009,92 +5105,142 @@ msgstr "" msgid "Repeat of %s" msgstr "Повтор за %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Вы не можете заглушать пользователей на этом сайте." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Пользователь уже заглушён." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Сайт" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Основные настройки для этого сайта StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Имя сайта должно быть ненулевой длины." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "У вас должен быть действительный контактный email-адрес." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Неизвестный язык «%s»." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Минимальное ограничение текста составляет 0 (без ограничений)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Ограничение дублирования должно составлять одну или более секунд." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Базовые" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Имя сайта" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Имя вашего сайта, например, «Yourcompany Microblog»" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Предоставлено" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "" "Текст, используемый для указания авторов в нижнем колонтитуле каждой страницы" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL-адрес поставщика услуг" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "" "URL, используемый для ссылки на авторов в нижнем колонтитуле каждой страницы" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Email" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Контактный email-адрес для вашего сайта" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Внутренние настройки" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Часовой пояс по умолчанию" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Часовой пояс по умолчанию для сайта; обычно UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Язык по умолчанию" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Язык сайта в случае, если автоопределение из настроек браузера не сработало" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Границы" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Границы текста" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Максимальное число символов для записей." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Предел дубликатов" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Сколько нужно ждать пользователям (в секундах) для отправки того же ещё раз." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Сохранить настройки сайта" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Уведомление сайта" @@ -5217,9 +5363,8 @@ msgid "That is the wrong confirmation number." msgstr "Это неверный номер подтверждения." #. TRANS: Server error thrown on database error canceling SMS phone number confirmation. -#, fuzzy msgid "Could not delete SMS confirmation." -msgstr "Не удаётся удалить подтверждение." +msgstr "Не удаётся удалить SMS-подтверждение." #. TRANS: Message given after successfully canceling SMS phone number confirmation. msgid "SMS confirmation cancelled." @@ -5297,6 +5442,10 @@ msgstr "URL отчёта" msgid "Snapshots will be sent to this URL" msgstr "Снимки будут отправляться по этому URL-адресу" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Сохранить" + msgid "Save snapshot settings" msgstr "Сохранить настройки снимка" @@ -5631,37 +5780,34 @@ msgid "Authorize subscription" msgstr "Авторизовать подписку" #. TRANS: Page notice on "Auhtorize subscription" page. -#, fuzzy 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 "" -"Пожалуйста, проверьте эти подробности, чтобы быть уверенным, что вы хотите " -"подписаться на записи этого пользователя. Если Вы этого не хотите делать, " -"нажмите «Отказ»." +"Пожалуйста, проверьте эту информацию, чтобы быть уверенным, что вы хотите " +"подписаться на записи этого пользователя. Если вы этого не хотите делать, " +"нажмите «Отказаться»." #. TRANS: Button text on Authorise Subscription page. -#, fuzzy +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Принять" #. TRANS: Title for button on Authorise Subscription page. -#, fuzzy msgid "Subscribe to this user." -msgstr "Подписаться на этого пользователя" +msgstr "Подписаться на этого пользователя." #. TRANS: Button text on Authorise Subscription page. -#, fuzzy +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" -msgstr "Отбросить" +msgstr "Отказаться" #. TRANS: Title for button on Authorise Subscription page. -#, fuzzy msgid "Reject this subscription." -msgstr "Отвергнуть эту подписку" +msgstr "Отказаться от этой подписки." #. TRANS: Client error displayed for an empty authorisation request. msgid "No authorization request!" @@ -5693,31 +5839,31 @@ msgstr "" #. TRANS: Exception thrown when no valid user is found for an authorisation request. #. TRANS: %s is a listener URI. -#, fuzzy, php-format +#, php-format msgid "Listener URI \"%s\" not found here." -msgstr "Смотрящий URI «%s» здесь не найден." +msgstr "Принимающий URI «%s» не найден." #. TRANS: Exception thrown when listenee URI is too long for an authorisation request. #. TRANS: %s is a listenee URI. -#, fuzzy, php-format +#, php-format msgid "Listenee URI \"%s\" is too long." -msgstr "Просматриваемый URI «%s» слишком длинный." +msgstr "Просматривающий URI «%s» слишком длинный." #. TRANS: Exception thrown when listenee URI is a local user for an authorisation request. #. TRANS: %s is a listenee URI. -#, fuzzy, php-format +#, php-format msgid "Listenee URI \"%s\" is a local user." -msgstr "Просматриваемый URI «%s» — локальный пользователь." +msgstr "Просматривающий URI «%s» является локальным пользователем." #. TRANS: Exception thrown when profile URL is a local user for an authorisation request. #. TRANS: %s is a profile URL. -#, fuzzy, php-format +#, php-format msgid "Profile URL \"%s\" is for a local user." msgstr "URL профиля «%s» предназначен только для локального пользователя." #. TRANS: Exception thrown when licenses are not compatible for an authorisation request. #. TRANS: %1$s is the license for the listenee, %2$s is the license for "this" StatusNet site. -#, fuzzy, php-format +#, php-format msgid "" "Listenee stream license \"%1$s\" is not compatible with site license \"%2$s" "\"." @@ -5726,19 +5872,19 @@ msgstr "" #. TRANS: Exception thrown when avatar URL is invalid for an authorisation request. #. TRANS: %s is an avatar URL. -#, fuzzy, php-format +#, php-format msgid "Avatar URL \"%s\" is not valid." msgstr "URL аватары «%s» недействителен." #. TRANS: Exception thrown when avatar URL could not be read for an authorisation request. #. TRANS: %s is an avatar URL. -#, fuzzy, php-format +#, php-format msgid "Cannot read avatar URL \"%s\"." -msgstr "Не удаётся прочитать URL аватары «%s»" +msgstr "Не удаётся прочитать URL аватары «%s»." #. TRANS: Exception thrown when avatar URL return an invalid image type for an authorisation request. #. TRANS: %s is an avatar URL. -#, fuzzy, php-format +#, php-format msgid "Wrong image type for avatar URL \"%s\"." msgstr "Неверный тип изображения для URL аватары «%s»." @@ -5761,9 +5907,8 @@ msgid "Enjoy your hotdog!" msgstr "Приятного аппетита!" #. TRANS: Form legend on Profile design page. -#, fuzzy msgid "Design settings" -msgstr "Сохранить настройки сайта" +msgstr "Настройки оформления" #. TRANS: Checkbox label on Profile design page. msgid "View profile designs" @@ -5873,25 +6018,21 @@ msgid "Plugins" msgstr "Плагины" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Name" -msgstr "Имя" +msgstr "Название" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Version" msgstr "Версия" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Author(s)" msgstr "Автор(ы)" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Description" msgstr "Описание" @@ -6087,6 +6228,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6180,21 +6325,21 @@ msgstr "Не удаётся сохранить информацию о лока #. TRANS: Exception thrown when an account could not be located when it should be moved. #. TRANS: %s is the remote site. -#, fuzzy, php-format +#, php-format msgid "Cannot locate account %s." -msgstr "Вы не можете удалять пользователей." +msgstr "Не удаётся найти учётную запись %s." #. TRANS: Exception thrown when a service document could not be located account move. #. TRANS: %s is the remote site. #, php-format msgid "Cannot find XRD for %s." -msgstr "" +msgstr "Не удаётся найти XRD для %s." #. TRANS: Exception thrown when an account could not be located when it should be moved. #. TRANS: %s is the remote site. #, php-format msgid "No AtomPub API service for %s." -msgstr "" +msgstr "Нет сервиса AtomPub API для %s." #. TRANS: H2 for user actions in a profile. #. TRANS: H2 for entity actions in a profile. @@ -6258,7 +6403,6 @@ msgid "Show more" msgstr "Показать ещё" #. TRANS: Inline reply form submit button: submits a reply comment. -#, fuzzy msgctxt "BUTTON" msgid "Reply" msgstr "Ответить" @@ -6266,7 +6410,7 @@ msgstr "Ответить" #. TRANS: Placeholder text for inline reply form. Clicking in this box will turn it into a mini notice form. #. TRANS: Field label for reply mini form. msgid "Write a reply..." -msgstr "" +msgstr "Напишите ответ…" msgid "Status" msgstr "Состояние" @@ -6343,56 +6487,54 @@ msgid "Expecting a root feed element but got a whole XML document." msgstr "Ожидался корневой элемент потока, а получен XML-документ целиком." #. TRANS: Client exception thrown when using an unknown verb for the activity importer. -#, fuzzy, php-format +#, php-format msgid "Unknown verb: \"%s\"." -msgstr "Неизвестный язык «%s»." +msgstr "Неизвестное действие «%s»." #. TRANS: Client exception thrown when trying to force a subscription for an untrusted user. msgid "Cannot force subscription for untrusted user." -msgstr "" +msgstr "Принудительная подписка на ненадёжных пользователей невозможна." #. TRANS: Client exception thrown when trying to for a remote user to subscribe. -#, fuzzy msgid "Cannot force remote user to subscribe." -msgstr "Укажите имя пользователя для подписки." +msgstr "Принудительная подписка на удалённых пользователей невозможна." #. TRANS: Client exception thrown when trying to subscribe to an unknown profile. -#, fuzzy msgid "Unknown profile." -msgstr "Неподдерживаемый тип файла" +msgstr "Неизвестный профиль." #. TRANS: Client exception thrown when trying to import an event not related to the importing user. msgid "This activity seems unrelated to our user." -msgstr "" +msgstr "Импортируемые действия не связаны с выбранным пользователем." #. TRANS: Client exception thrown when trying to join a remote group that is not a group. msgid "Remote profile is not a group!" -msgstr "" +msgstr "Удалённый профиль не является группой!" #. TRANS: Client exception thrown when trying to join a group the importing user is already a member of. -#, fuzzy msgid "User is already a member of this group." -msgstr "Вы уже являетесь членом этой группы." +msgstr "Пользователь уже является участником этой группы." #. TRANS: Client exception thrown when trying to import a notice by another user. #. TRANS: %1$s is the source URI of the notice, %2$s is the URI of the author. #, php-format msgid "Already know about notice %1$s and it has a different author %2$s." -msgstr "" +msgstr "Запись %1$s уже известна и имеет другого автора — %2$s." #. TRANS: Client exception thrown when trying to overwrite the author information for a non-trusted user during import. msgid "Not overwriting author info for non-trusted user." msgstr "" +"Нельзя перезаписать информацию по авторству для ненадёжного пользователя." #. TRANS: Client exception thrown when trying to import a notice without content. #. TRANS: %s is the notice URI. -#, fuzzy, php-format +#, php-format msgid "No content for notice %s." -msgstr "Найти запись по содержимому" +msgstr "Нет содержания для записи %s." -#, fuzzy, php-format +#, php-format msgid "No such user %s." -msgstr "Нет такого пользователя." +msgstr "Нет такого пользователя %s." #. TRANS: Client exception thrown when post to collection fails with a 400 status. #. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason. @@ -6400,10 +6542,10 @@ msgstr "Нет такого пользователя." #. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason. #. TRANS: Exception thrown when post to collection fails with a status that is not handled. #. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason. -#, fuzzy, php-format +#, php-format msgctxt "URLSTATUSREASON" msgid "%1$s %2$s %3$s" -msgstr "%1$s — %2$s" +msgstr "%1$s %2$s %3$s" #. TRANS: Client exception thrown when there is no source attribute. msgid "Can't handle remote content yet." @@ -6441,6 +6583,9 @@ msgstr "Не удаётся удалить настройки оформлени msgid "Home" msgstr "Главная" +msgid "Admin" +msgstr "Настройки" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Основная конфигурация сайта" @@ -6480,6 +6625,10 @@ msgstr "Конфигурация путей" msgid "Sessions configuration" msgstr "Конфигурация сессий" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Сессии" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Изменить уведомление сайта" @@ -6497,9 +6646,8 @@ msgid "Set site license" msgstr "Установить лицензию сайта" #. TRANS: Menu item title/tooltip -#, fuzzy msgid "Plugins configuration" -msgstr "Конфигурация путей" +msgstr "Конфигурация расширений" #. TRANS: Client error 401. msgid "API resource requires read-write access, but you only have read access." @@ -6512,7 +6660,7 @@ msgid "No application for that consumer key." msgstr "Нет приложения для этого пользовательского ключа." msgid "Not allowed to use API." -msgstr "" +msgstr "Не разрешается использовать API." #. TRANS: OAuth exception given when an incorrect access token was given for a user. msgid "Bad access token." @@ -6547,9 +6695,8 @@ msgstr "Ошибка выдачи ключа доступа." msgid "Database error inserting OAuth application user." msgstr "Ошибка базы данных при добавлении пользователя приложения OAuth." -#, fuzzy msgid "Database error updating OAuth application user." -msgstr "Ошибка базы данных при добавлении пользователя приложения OAuth." +msgstr "Ошибка базы данных при обновлении пользователя приложения OAuth." #. TRANS: Exception thrown when an attempt is made to revoke an unknown token. msgid "Tried to revoke unknown token." @@ -6585,6 +6732,7 @@ msgid "Describe your application" msgstr "Опишите ваше приложение" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Описание" @@ -6668,14 +6816,12 @@ msgctxt "BUTTON" msgid "Revoke" msgstr "Отозвать" -#, fuzzy msgid "Author element must contain a name element." msgstr "Элемент author должен содержать элемент name." #. TRANS: Server exception thrown when using the method setActivitySubject() in the class Atom10Feed. -#, fuzzy msgid "Do not use this method!" -msgstr "Не удаляйте эту группу" +msgstr "Не используйте этот метод!" #. TRANS: Title. msgid "Notices where this attachment appears" @@ -6701,6 +6847,10 @@ msgstr "Блокировать" msgid "Block this user" msgstr "Заблокировать пользователя." +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Команда исполнена" @@ -6767,9 +6917,8 @@ msgstr "" "Записей: %3$s" #. TRANS: Error message text shown when a favorite could not be set because it has already been favorited. -#, fuzzy msgid "Could not create favorite: already favorited." -msgstr "Не удаётся создать любимую запись." +msgstr "Повторное добавление записи в число любимых невозможно." #. TRANS: Text shown when a notice has been marked as favourite successfully. msgid "Notice marked as fave." @@ -6800,14 +6949,14 @@ msgid "Fullname: %s" msgstr "Полное имя: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Месторасположение: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -6985,151 +7134,140 @@ msgstr[1] "Вы являетесь участником следующих гр msgstr[2] "Вы являетесь участником следующих групп:" #. TRANS: Header line of help text for commands. -#, fuzzy msgctxt "COMMANDHELP" msgid "Commands:" -msgstr "Команда исполнена" +msgstr "Команды:" #. TRANS: Help message for IM/SMS command "on" -#, fuzzy msgctxt "COMMANDHELP" msgid "turn on notifications" -msgstr "Есть оповещение." +msgstr "включить оповещения" #. TRANS: Help message for IM/SMS command "off" -#, fuzzy msgctxt "COMMANDHELP" msgid "turn off notifications" -msgstr "Нет оповещения." +msgstr "отключить оповещения" #. TRANS: Help message for IM/SMS command "help" msgctxt "COMMANDHELP" msgid "show this help" -msgstr "" +msgstr "показать эту справку" #. TRANS: Help message for IM/SMS command "follow " -#, fuzzy msgctxt "COMMANDHELP" msgid "subscribe to user" -msgstr "Подписаться на этого пользователя" +msgstr "подписаться на пользователя" #. TRANS: Help message for IM/SMS command "groups" msgctxt "COMMANDHELP" msgid "lists the groups you have joined" -msgstr "" +msgstr "список групп, к которым вы присоединились" #. TRANS: Help message for IM/SMS command "subscriptions" msgctxt "COMMANDHELP" msgid "list the people you follow" -msgstr "" +msgstr "список людей, за которыми вы следите" #. TRANS: Help message for IM/SMS command "subscribers" msgctxt "COMMANDHELP" msgid "list the people that follow you" -msgstr "" +msgstr "список людей, которые следят за вами" #. TRANS: Help message for IM/SMS command "leave " -#, fuzzy msgctxt "COMMANDHELP" msgid "unsubscribe from user" -msgstr "Отписаться от этого пользователя" +msgstr "отписаться от пользователя" #. TRANS: Help message for IM/SMS command "d " -#, fuzzy msgctxt "COMMANDHELP" msgid "direct message to user" -msgstr "Прямые сообщения для %s" +msgstr "прямое сообщение для пользователя" #. TRANS: Help message for IM/SMS command "get " msgctxt "COMMANDHELP" msgid "get last notice from user" -msgstr "" +msgstr "получить последнюю запись пользователя" #. TRANS: Help message for IM/SMS command "whois " -#, fuzzy msgctxt "COMMANDHELP" msgid "get profile info on user" -msgstr "Информация профиля" +msgstr "получить информацию из профиля пользователя" #. TRANS: Help message for IM/SMS command "lose " msgctxt "COMMANDHELP" msgid "force user to stop following you" -msgstr "" +msgstr "запретить пользователю следить за вами" #. TRANS: Help message for IM/SMS command "fav " msgctxt "COMMANDHELP" msgid "add user's last notice as a 'fave'" -msgstr "" +msgstr "добавить последнюю запись пользователя в число любимых" #. TRANS: Help message for IM/SMS command "fav #" msgctxt "COMMANDHELP" msgid "add notice with the given id as a 'fave'" -msgstr "" +msgstr "добавить запись с заданным номером в число любимых" #. TRANS: Help message for IM/SMS command "repeat #" msgctxt "COMMANDHELP" msgid "repeat a notice with a given id" -msgstr "" +msgstr "повторить запись с заданным номером" #. TRANS: Help message for IM/SMS command "repeat " -#, fuzzy msgctxt "COMMANDHELP" msgid "repeat the last notice from user" -msgstr "Повторить эту запись" +msgstr "повторить последнюю запись пользователя" #. TRANS: Help message for IM/SMS command "reply #" msgctxt "COMMANDHELP" msgid "reply to notice with a given id" -msgstr "" +msgstr "ответить на запись с заданным номером" #. TRANS: Help message for IM/SMS command "reply " -#, fuzzy msgctxt "COMMANDHELP" msgid "reply to the last notice from user" -msgstr "Ответить на эту запись" +msgstr "ответить на последнюю запись пользователя" #. TRANS: Help message for IM/SMS command "join " -#, fuzzy msgctxt "COMMANDHELP" msgid "join group" -msgstr "Неизвестно" +msgstr "присоединиться к группе" #. TRANS: Help message for IM/SMS command "login" msgctxt "COMMANDHELP" msgid "Get a link to login to the web interface" -msgstr "" +msgstr "Получить ссылку на вход в веб-интерфейс" #. TRANS: Help message for IM/SMS command "drop " -#, fuzzy msgctxt "COMMANDHELP" msgid "leave group" -msgstr "Удалить группу" +msgstr "покинуть группу" #. TRANS: Help message for IM/SMS command "stats" msgctxt "COMMANDHELP" msgid "get your stats" -msgstr "" +msgstr "получить статистику о себе" #. TRANS: Help message for IM/SMS command "stop" #. TRANS: Help message for IM/SMS command "quit" msgctxt "COMMANDHELP" msgid "same as 'off'" -msgstr "" +msgstr "то же, что и «off»" #. TRANS: Help message for IM/SMS command "sub " msgctxt "COMMANDHELP" msgid "same as 'follow'" -msgstr "" +msgstr "то же, что и «follow»" #. TRANS: Help message for IM/SMS command "unsub " msgctxt "COMMANDHELP" msgid "same as 'leave'" -msgstr "" +msgstr "то же, что и «leave»" #. TRANS: Help message for IM/SMS command "last " msgctxt "COMMANDHELP" msgid "same as 'get'" -msgstr "" +msgstr "то же, что и «get»" #. TRANS: Help message for IM/SMS command "on " #. TRANS: Help message for IM/SMS command "off " @@ -7140,15 +7278,14 @@ msgstr "" #. TRANS: Help message for IM/SMS command "untrack all" #. TRANS: Help message for IM/SMS command "tracks" #. TRANS: Help message for IM/SMS command "tracking" -#, fuzzy msgctxt "COMMANDHELP" msgid "not yet implemented." -msgstr "Команда ещё не выполнена." +msgstr "пока не реализовано." #. TRANS: Help message for IM/SMS command "nudge " msgctxt "COMMANDHELP" msgid "remind a user to update." -msgstr "" +msgstr "напомнить пользователю обновиться." #. TRANS: Error message displayed when no configuration file was found for a StatusNet installation. msgid "No configuration file found." @@ -7174,13 +7311,16 @@ msgstr "Ошибка базы данных" msgid "Public" msgstr "Общее" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Удалить" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Удалить этого пользователя" -#, fuzzy msgid "Change design" -msgstr "Сохранить оформление" +msgstr "Изменение оформления" #. TRANS: Fieldset legend on profile design page to change profile page colours. msgid "Change colours" @@ -7234,9 +7374,9 @@ msgid "Design defaults restored." msgstr "Оформление по умолчанию восстановлено." #. TRANS: Exception. %s is an ID. -#, fuzzy, php-format +#, php-format msgid "Unable to find services for %s." -msgstr "Не удаётся отозвать доступ для приложения: %s." +msgstr "Не удаётся найти сервисы для %s." #. TRANS: Form legend for removing the favourite status for a favourite notice. #. TRANS: Title for button text for removing the favourite status for a favourite notice. @@ -7244,10 +7384,9 @@ msgid "Disfavor this notice" msgstr "Мне не нравится эта запись" #. TRANS: Button text for removing the favourite status for a favourite notice. -#, fuzzy msgctxt "BUTTON" msgid "Disfavor favorite" -msgstr "Разлюбить" +msgstr "Убрать из любимых" #. TRANS: Form legend for adding the favourite status to a notice. #. TRANS: Title for button text for adding the favourite status to a notice. @@ -7255,10 +7394,9 @@ msgid "Favor this notice" msgstr "Мне нравится эта запись" #. TRANS: Button text for adding the favourite status to a notice. -#, fuzzy msgctxt "BUTTON" msgid "Favor" -msgstr "Пометить" +msgstr "В любимые" msgid "RSS 1.0" msgstr "RSS 1.0" @@ -7272,15 +7410,14 @@ msgstr "Atom" msgid "FOAF" msgstr "FOAF" -#, fuzzy msgid "Not an atom feed." -msgstr "Все участники" +msgstr "Не является лентой Atom." msgid "No author in the feed." -msgstr "" +msgstr "Не указан автор в ленте." msgid "Can't import without a user." -msgstr "" +msgstr "Невозможно импортировать без пользователя." #. TRANS: Header for feed links (h2). msgid "Feeds" @@ -7305,31 +7442,47 @@ msgstr "Перейти" msgid "Grant this user the \"%s\" role" msgstr "Назначить этому пользователю роль «%s»" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 латинских строчных буквы или цифры, без пробелов" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Заблокировать" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Заблокировать этого пользователя" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "Адрес домашней страницы или блога группы или темы." -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Опишите группу или тему" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Опишите группу или тему, используя до %d символов" msgstr[1] "Опишите группу или тему, используя до %d символов" msgstr[2] "Опишите группу или тему, используя до %d символов" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Местонахождение группы, если есть, например «Город, область (или регион), " "страна»." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Алиасы" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7347,6 +7500,27 @@ msgstr[2] "" "Дополнительные имена для группы, разделённые запятой или пробелом, максимум %" "d имён." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Регистрация" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Настройки" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7371,6 +7545,23 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Участники группы %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Участники группы %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7495,6 +7686,11 @@ msgid "" "user isn't you, or if you didn't request this confirmation, just ignore this " "message." msgstr "" +"Пользователь «%s» на сайте %s сообщил, что псевдоним %s принадлежит ему. Если " +"это действительно так, вы можете подтвердить это, нажав на следующую ссылку: " +"%s. (Если вы не можете нажать на ссылку, скопируйте адрес в адресную строку " +"браузера.) Если вы не являетесь упомянутым пользователем или не запрашивали " +"это подтверждение, просто проигнорируйте это сообщение." #, php-format msgid "Unknown inbox source %d." @@ -7564,38 +7760,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s теперь следит за вашими записями на %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Если вы считаете, эта учётная запись используется со злоупотреблениями, вы " -"можете заблокировать её включение в свой список подписчиков и сообщить о " -"спаме администраторам сайта по %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s сейчас следит за вашими записями на %2$s.\n" "\n" @@ -7608,12 +7788,29 @@ msgstr "" "----\n" "Измените email-адрес и настройки уведомлений на %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Профиль" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Биография: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Если вы считаете, эта учётная запись используется со злоупотреблениями, вы " +"можете заблокировать её включение в свой список подписчиков и сообщить о " +"спаме администраторам сайта по %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7623,16 +7820,13 @@ msgstr "Новый электронный адрес для постинга %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "У вас новый адрес отправки на %1$s.\n" "\n" @@ -7661,14 +7855,14 @@ msgstr "%s. Подтвердите, что это ваш телефон, сле #. TRANS: Subject for 'nudge' notification email. #. TRANS: %s is the nudging user. -#, fuzzy, php-format +#, php-format msgid "You have been nudged by %s" msgstr "Вас «подтолкнул» пользователь %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7677,10 +7871,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) интересуется, что произошло с вами за эти дни и предлагает " "отправить немного новостей.\n" @@ -7703,8 +7894,7 @@ msgstr "Новое приватное сообщение от %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7716,10 +7906,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) отправил вам личное сообщение:\n" "\n" @@ -7747,7 +7934,7 @@ msgstr "%1$s (@%2$s) добавил вашу запись в число свои #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7761,10 +7948,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) только что добавил запись из %2$s в число своих любимых.\n" "\n" @@ -7801,14 +7985,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) отправил запись для вашего внимания" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7824,12 +8007,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) отправил вам сообщение («@-ответ») на %2$s.\n" "\n" @@ -7854,6 +8032,31 @@ msgstr "" "\n" "PS Вы можете отключить эти уведомления по электронной почте здесь: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s присоединился к группе %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s присоединился к группе %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Только сам пользователь может читать собственный почтовый ящик." @@ -7893,6 +8096,20 @@ msgstr "Простите, входящих писем нет." msgid "Unsupported message type: %s" msgstr "Неподдерживаемый формат файла изображения: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Сделать пользователя администратором группы" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Сделать администратором" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Сделать этого пользователя администратором" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -7948,26 +8165,23 @@ msgctxt "Send button for sending notice" msgid "Send" msgstr "Отправить" -#, fuzzy msgid "Messages" -msgstr "Сообщение" +msgstr "Сообщения" msgid "from" msgstr "от" msgid "Can't get author for activity." -msgstr "" +msgstr "Не удаётся получить автора действий." -#, fuzzy msgid "Bookmark not posted to this group." -msgstr "Вы не можете удалить эту группу." +msgstr "Закладки не была добавлена в эту группу." -#, fuzzy msgid "Object not posted to this user." -msgstr "Не удаляйте эту группу" +msgstr "Объект не добавлен для этого пользователя." msgid "Don't know how to handle this kind of target." -msgstr "" +msgstr "Способ обработки цели такого типа неизвестен." #. TRANS: Validation error in form for registration, profile and group settings, etc. msgid "Nickname cannot be empty." @@ -7995,9 +8209,8 @@ msgid "Attach" msgstr "Прикрепить" #. TRANS: Title for input field to attach a file to a notice. -#, fuzzy msgid "Attach a file." -msgstr "Прикрепить файл" +msgstr "Прикрепить файл." #. TRANS: Field label to add location to a notice. msgid "Share my location" @@ -8060,7 +8273,7 @@ msgid "Notice repeated" msgstr "Запись повторена" msgid "Update your status..." -msgstr "" +msgstr "Обновите свой статус…" msgid "Nudge this user" msgstr "«Подтолкнуть» этого пользователя" @@ -8087,9 +8300,8 @@ msgstr "Дублирующаяся запись." msgid "Couldn't insert new subscription." msgstr "Не удаётся вставить новую подписку." -#, fuzzy msgid "Your profile" -msgstr "Профиль группы" +msgstr "Ваш профиль" msgid "Replies" msgstr "Ответы" @@ -8109,27 +8321,25 @@ msgstr "Неизвестно" #. TRANS: Plugin admin panel controls msgctxt "plugin" msgid "Disable" -msgstr "" +msgstr "Отключить" #. TRANS: Plugin admin panel controls msgctxt "plugin" msgid "Enable" -msgstr "" +msgstr "Включить" msgctxt "plugin-description" msgid "(Plugin descriptions unavailable when disabled.)" -msgstr "" +msgstr "(Описание отключённых расширений недоступно.)" msgid "Settings" msgstr "Установки СМС" -#, fuzzy msgid "Change your personal settings" -msgstr "Изменить ваши настройки профиля" +msgstr "Изменение персональных настроек" -#, fuzzy msgid "Site configuration" -msgstr "Конфигурация пользователя" +msgstr "Конфигурация сайта" msgid "Logout" msgstr "Выход" @@ -8143,7 +8353,6 @@ msgstr "Войти" msgid "Search" msgstr "Поиск" -#, fuzzy msgid "Search the site" msgstr "Поиск по сайту" @@ -8317,7 +8526,7 @@ msgid "URL" msgstr "URL" msgid "URL shorteners" -msgstr "" +msgstr "Сокращатели ссылок" msgid "Updates by instant messenger (IM)" msgstr "Обновлено по IM" @@ -8419,14 +8628,13 @@ msgid "Error opening theme archive." msgstr "Ошибка открытия архива темы." #. TRANS: Header for Notices section. -#, fuzzy msgctxt "HEADER" msgid "Notices" msgstr "Записи" #. TRANS: Link to show replies for a notice. #. TRANS: %d is the number of replies to a notice and used for plural. -#, fuzzy, php-format +#, php-format msgid "Show reply" msgid_plural "Show all %d replies" msgstr[0] "Показать %d ответ" @@ -8436,46 +8644,44 @@ msgstr[2] "Показать %d ответов" #. TRANS: Reference to the logged in user in favourite list. msgctxt "FAVELIST" msgid "You" -msgstr "" +msgstr "Я" #. TRANS: Separator in list of user names like "You, Bob, Mary". msgid ", " -msgstr "" +msgstr ", " #. TRANS: For building a list such as "You, bob, mary and 5 others have favored this notice". #. TRANS: %1$s is a list of users, separated by a separator (default: ", "), %2$s is the last user in the list. -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "%1$s and %2$s" -msgstr "%1$s — %2$s" +msgstr "%1$s и %2$s" #. TRANS: List message for notice favoured by logged in user. -#, fuzzy msgctxt "FAVELIST" msgid "You have favored this notice." -msgstr "Мне нравится эта запись" +msgstr "Мне нравится эта запись." -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "One person has favored this notice." msgid_plural "%d people have favored this notice." -msgstr[0] "Мне не нравится эта запись" -msgstr[1] "Мне не нравится эта запись" -msgstr[2] "Мне не нравится эта запись" +msgstr[0] "Эта запись понравилась %d пользователю." +msgstr[1] "Эта запись понравилась %d пользователям." +msgstr[2] "Эта запись понравилась %d пользователям." #. TRANS: List message for notice repeated by logged in user. -#, fuzzy msgctxt "REPEATLIST" msgid "You have repeated this notice." msgstr "Вы уже повторили эту запись." -#, fuzzy, php-format +#, php-format msgctxt "REPEATLIST" msgid "One person has repeated this notice." msgid_plural "%d people have repeated this notice." -msgstr[0] "Запись уже повторена." -msgstr[1] "Запись уже повторена." -msgstr[2] "Запись уже повторена." +msgstr[0] "Запись повторена %d пользователем." +msgstr[1] "Запись повторена %d пользователями." +msgstr[2] "Запись повторена %d пользователями." #. TRANS: Title for top posters section. msgid "Top posters" @@ -8487,7 +8693,6 @@ msgid "Unblock" msgstr "Разблокировать" #. TRANS: Title for unsandbox form. -#, fuzzy msgctxt "TITLE" msgid "Unsandbox" msgstr "Снять режим песочницы" @@ -8510,7 +8715,6 @@ msgid "Unsubscribe from this user" msgstr "Отписаться от этого пользователя" #. TRANS: Button text on unsubscribe form. -#, fuzzy msgctxt "BUTTON" msgid "Unsubscribe" msgstr "Отписаться" @@ -8602,8 +8806,8 @@ msgstr "Неверный XML, отсутствует корень XRD." msgid "Getting backup from file '%s'." msgstr "Получение резервной копии из файла «%s»." -#~ msgid "Couldn't update user." -#~ msgstr "Не удаётся обновить пользователя." +#~ msgid "Notice" +#~ msgstr "Записи" -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Не удаётся обновить настройки быстрых сообщений пользователя." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 латинских строчных буквы или цифры, без пробелов" diff --git a/locale/statusnet.pot b/locale/statusnet.pot index facd64e695..19634500c4 100644 --- a/locale/statusnet.pot +++ b/locale/statusnet.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -76,6 +76,8 @@ msgstr "" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -83,14 +85,16 @@ msgstr "" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. #: actions/accessadminpanel.php:193 actions/designadminpanel.php:732 #: actions/emailsettings.php:251 actions/imsettings.php:201 #: actions/licenseadminpanel.php:335 actions/pathsadminpanel.php:517 -#: actions/profilesettings.php:198 actions/sitenoticeadminpanel.php:197 +#: actions/profilesettings.php:198 actions/sessionsadminpanel.php:202 +#: actions/siteadminpanel.php:319 actions/sitenoticeadminpanel.php:197 #: actions/smssettings.php:204 actions/subscriptions.php:261 #: actions/tagother.php:134 actions/urlsettings.php:152 #: actions/useradminpanel.php:298 lib/applicationeditform.php:355 -#: lib/designform.php:320 lib/groupeditform.php:201 +#: lib/designform.php:320 lib/groupeditform.php:228 msgctxt "BUTTON" msgid "Save" msgstr "" @@ -164,7 +168,7 @@ msgstr "" #: actions/remotesubscribe.php:165 actions/replies.php:72 #: actions/repliesrss.php:38 actions/rsd.php:114 actions/showfavorites.php:106 #: actions/userbyid.php:75 actions/usergroups.php:95 actions/userrss.php:40 -#: actions/userxrd.php:59 actions/xrds.php:71 lib/command.php:509 +#: actions/userxrd.php:59 actions/xrds.php:71 lib/command.php:503 #: lib/galleryaction.php:59 lib/mailbox.php:80 lib/profileaction.php:77 msgid "No such user." msgstr "" @@ -235,7 +239,7 @@ msgstr "" #. TRANS: %1$s is a user nickname. This message contains a Markdown link in the form [link text](link). #. TRANS: Second sentence of empty message for anonymous users. %s is a user nickname. #. TRANS: This message contains a Markdown link. Keep "](" together. -#: actions/all.php:149 actions/replies.php:214 actions/showstream.php:219 +#: actions/all.php:149 actions/replies.php:214 actions/showstream.php:222 #, php-format msgid "" "Why not [register an account](%%%%action.register%%%%) and then nudge %s or " @@ -283,8 +287,8 @@ msgstr "" #: actions/apifavoritecreate.php:98 actions/apifavoritedestroy.php:98 #: actions/apifriendshipscreate.php:99 actions/apifriendshipsdestroy.php:99 #: actions/apifriendshipsshow.php:124 actions/apigroupcreate.php:138 -#: actions/apigroupismember.php:115 actions/apigroupjoin.php:151 -#: actions/apigroupleave.php:141 actions/apigrouplist.php:134 +#: actions/apigroupismember.php:115 actions/apigroupjoin.php:148 +#: actions/apigroupleave.php:138 actions/apigrouplist.php:134 #: actions/apigrouplistall.php:120 actions/apigroupmembership.php:105 #: actions/apigroupprofileupdate.php:97 actions/apigroupprofileupdate.php:215 #: actions/apigroupshow.php:114 actions/apihelptest.php:84 @@ -602,7 +606,7 @@ msgstr "" #. TRANS: Validation error in form for profile settings. #. TRANS: Form validation error displayed when trying to register with an existing nickname. #: actions/apigroupcreate.php:156 actions/apigroupprofileupdate.php:256 -#: actions/editgroup.php:191 actions/newgroup.php:137 +#: actions/editgroup.php:192 actions/newgroup.php:138 #: actions/profilesettings.php:274 actions/register.php:209 msgid "Nickname already in use. Try another one." msgstr "" @@ -614,7 +618,7 @@ msgstr "" #. TRANS: Validation error in form for profile settings. #. TRANS: Form validation error displayed when trying to register with an invalid nickname. #: actions/apigroupcreate.php:164 actions/apigroupprofileupdate.php:261 -#: actions/editgroup.php:195 actions/newgroup.php:141 +#: actions/editgroup.php:196 actions/newgroup.php:142 #: actions/profilesettings.php:244 actions/register.php:212 msgid "Not a valid nickname." msgstr "" @@ -628,8 +632,8 @@ msgstr "" #. TRANS: Validation error in form for profile settings. #. TRANS: Form validation error displayed when trying to register with an invalid homepage URL. #: actions/apigroupcreate.php:181 actions/apigroupprofileupdate.php:280 -#: actions/editapplication.php:235 actions/editgroup.php:202 -#: actions/newapplication.php:221 actions/newgroup.php:148 +#: actions/editapplication.php:235 actions/editgroup.php:203 +#: actions/newapplication.php:221 actions/newgroup.php:149 #: actions/profilesettings.php:249 actions/register.php:220 msgid "Homepage is not a valid URL." msgstr "" @@ -641,7 +645,7 @@ msgstr "" #. TRANS: Validation error in form for profile settings. #. TRANS: Form validation error displayed when trying to register with a too long full name. #: actions/apigroupcreate.php:191 actions/apigroupprofileupdate.php:290 -#: actions/editgroup.php:206 actions/newgroup.php:152 +#: actions/editgroup.php:207 actions/newgroup.php:153 #: actions/profilesettings.php:253 actions/register.php:224 msgid "Full name is too long (maximum 255 characters)." msgstr "" @@ -658,8 +662,8 @@ msgstr "" #. TRANS: Group create form validation error. #. TRANS: %d is the maximum number of allowed characters. #: actions/apigroupcreate.php:201 actions/apigroupprofileupdate.php:300 -#: actions/editapplication.php:202 actions/editgroup.php:211 -#: actions/newapplication.php:182 actions/newgroup.php:157 +#: actions/editapplication.php:202 actions/editgroup.php:212 +#: actions/newapplication.php:182 actions/newgroup.php:158 #, php-format msgid "Description is too long (maximum %d character)." msgid_plural "Description is too long (maximum %d characters)." @@ -673,7 +677,7 @@ msgstr[1] "" #. TRANS: Validation error in form for profile settings. #. TRANS: Form validation error displayed when trying to register with a too long location. #: actions/apigroupcreate.php:215 actions/apigroupprofileupdate.php:312 -#: actions/editgroup.php:218 actions/newgroup.php:164 +#: actions/editgroup.php:219 actions/newgroup.php:165 #: actions/profilesettings.php:266 actions/register.php:236 msgid "Location is too long (maximum 255 characters)." msgstr "" @@ -687,7 +691,7 @@ msgstr "" #. TRANS: Group create form validation error. #. TRANS: %d is the maximum number of allowed aliases. #: actions/apigroupcreate.php:236 actions/apigroupprofileupdate.php:331 -#: actions/editgroup.php:231 actions/newgroup.php:177 +#: actions/editgroup.php:232 actions/newgroup.php:178 #, php-format msgid "Too many aliases! Maximum %d allowed." msgid_plural "Too many aliases! Maximum %d allowed." @@ -710,14 +714,14 @@ msgstr "" #. TRANS: Group edit form validation error. #. TRANS: Group create form validation error. %s is the already used alias. #: actions/apigroupcreate.php:264 actions/apigroupprofileupdate.php:360 -#: actions/editgroup.php:246 actions/newgroup.php:193 +#: actions/editgroup.php:247 actions/newgroup.php:194 #, php-format msgid "Alias \"%s\" already in use. Try another one." msgstr "" #. TRANS: Client error displayed when trying to use an alias during group creation that is the same as the group's nickname. #. TRANS: Group edit form validation error. -#: actions/apigroupcreate.php:278 actions/editgroup.php:253 +#: actions/apigroupcreate.php:278 actions/editgroup.php:254 msgid "Alias can't be the same as nickname." msgstr "" @@ -753,7 +757,7 @@ msgstr "" #. TRANS: %1$s is the joining user's nickname, $2$s is the group nickname for which the join failed. #. TRANS: Message given having failed to add a user to a group. #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group. -#: actions/apigroupjoin.php:136 actions/joingroup.php:139 lib/command.php:362 +#: actions/apigroupjoin.php:133 actions/joingroup.php:136 lib/command.php:359 #, php-format msgid "Could not join user %1$s to group %2$s." msgstr "" @@ -767,8 +771,8 @@ msgstr "" #. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. #. TRANS: Message given having failed to remove a user from a group. #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group. -#: actions/apigroupleave.php:127 actions/leavegroup.php:133 -#: lib/command.php:410 +#: actions/apigroupleave.php:124 actions/leavegroup.php:130 +#: lib/command.php:404 #, php-format msgid "Could not remove user %1$s from group %2$s." msgstr "" @@ -811,15 +815,15 @@ msgstr "" #. TRANS: Server error displayed when group update fails. #. TRANS: Server error displayed when editing a group fails. -#: actions/apigroupprofileupdate.php:172 actions/editgroup.php:274 +#: actions/apigroupprofileupdate.php:172 actions/editgroup.php:276 msgid "Could not update group." msgstr "" #. TRANS: Server error displayed when adding group aliases fails. #. TRANS: Server error displayed when group aliases could not be added. #. TRANS: Server exception thrown when creating group aliases failed. -#: actions/apigroupprofileupdate.php:195 actions/editgroup.php:281 -#: classes/User_group.php:540 +#: actions/apigroupprofileupdate.php:195 actions/editgroup.php:283 +#: classes/User_group.php:578 msgid "Could not create aliases." msgstr "" @@ -831,7 +835,7 @@ msgstr "" #. TRANS: API validation exception thrown when alias is the same as nickname. #. TRANS: Group create form validation error. -#: actions/apigroupprofileupdate.php:369 actions/newgroup.php:200 +#: actions/apigroupprofileupdate.php:369 actions/newgroup.php:201 msgid "Alias cannot be the same as nickname." msgstr "" @@ -957,9 +961,10 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. #: actions/apioauthauthorize.php:459 actions/login.php:231 #: actions/profilesettings.php:107 actions/register.php:436 -#: actions/userauthorization.php:146 lib/groupeditform.php:145 +#: actions/userauthorization.php:146 lib/groupeditform.php:147 msgid "Nickname" msgstr "" @@ -1050,21 +1055,22 @@ msgstr "" #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. #: actions/apistatusesretweet.php:74 actions/apistatusesretweets.php:70 #: actions/atompubshowfavorite.php:82 actions/deletenotice.php:61 -#: actions/shownotice.php:95 +#: actions/shownotice.php:92 msgid "No such notice." msgstr "" #. TRANS: Client error displayed trying to repeat an own notice through the API. #. TRANS: Error text shown when trying to repeat an own notice. -#: actions/apistatusesretweet.php:83 lib/command.php:549 +#: actions/apistatusesretweet.php:83 lib/command.php:543 msgid "Cannot repeat your own notice." msgstr "" #. TRANS: Client error displayed trying to re-repeat a notice through the API. #. TRANS: Error text shown when trying to repeat an notice that was already repeated by the user. -#: actions/apistatusesretweet.php:92 lib/command.php:555 +#: actions/apistatusesretweet.php:92 lib/command.php:549 msgid "Already repeated that notice." msgstr "" @@ -1303,6 +1309,131 @@ msgstr "" msgid "User not found." msgstr "" +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#: actions/approvegroup.php:59 actions/cancelgroup.php:59 +#: actions/leavegroup.php:59 +msgid "You must be logged in to leave a group." +msgstr "" + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +#: actions/approvegroup.php:82 actions/approvegroup.php:95 +#: actions/atompubshowmembership.php:81 actions/blockedfromgroup.php:81 +#: actions/blockedfromgroup.php:89 actions/cancelgroup.php:81 +#: actions/cancelgroup.php:94 actions/deletegroup.php:87 +#: actions/deletegroup.php:100 actions/editgroup.php:102 +#: actions/foafgroup.php:46 actions/foafgroup.php:65 actions/foafgroup.php:73 +#: actions/groupblock.php:89 actions/groupbyid.php:83 +#: actions/groupdesignsettings.php:101 actions/grouplogo.php:103 +#: actions/groupmembers.php:84 actions/groupmembers.php:92 +#: actions/groupqueue.php:85 actions/groupqueue.php:93 actions/grouprss.php:97 +#: actions/grouprss.php:105 actions/groupunblock.php:89 +#: actions/joingroup.php:82 actions/joingroup.php:95 actions/leavegroup.php:82 +#: actions/leavegroup.php:95 actions/makeadmin.php:91 +#: actions/showgroup.php:134 actions/showgroup.php:143 lib/command.php:168 +#: lib/command.php:389 +msgid "No such group." +msgstr "" + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#: actions/approvegroup.php:89 actions/cancelgroup.php:88 +#: actions/deletegroup.php:94 actions/joingroup.php:89 +#: actions/leavegroup.php:89 +msgid "No nickname or ID." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#: actions/approvegroup.php:102 actions/cancelgroup.php:101 +msgid "Must be logged in." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +#: actions/approvegroup.php:110 actions/cancelgroup.php:110 +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#: actions/approvegroup.php:115 +msgid "Must specify a profile." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#: actions/approvegroup.php:124 actions/cancelgroup.php:123 +#, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +#: actions/approvegroup.php:131 +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +#: actions/approvegroup.php:135 +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#: actions/approvegroup.php:163 actions/cancelgroup.php:147 +#, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "" + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#: actions/approvegroup.php:172 +#, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "" + +#: actions/approvegroup.php:178 +msgid "Join request approved." +msgstr "" + +#: actions/approvegroup.php:180 +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1395,49 +1526,6 @@ msgstr "" msgid "Cannot delete someone else's favorite." msgstr "" -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -#: actions/atompubshowmembership.php:81 actions/blockedfromgroup.php:81 -#: actions/blockedfromgroup.php:89 actions/deletegroup.php:87 -#: actions/deletegroup.php:100 actions/editgroup.php:102 -#: actions/foafgroup.php:46 actions/foafgroup.php:65 actions/foafgroup.php:73 -#: actions/groupblock.php:89 actions/groupbyid.php:83 -#: actions/groupdesignsettings.php:101 actions/grouplogo.php:103 -#: actions/groupmembers.php:84 actions/groupmembers.php:92 -#: actions/grouprss.php:97 actions/grouprss.php:105 -#: actions/groupunblock.php:89 actions/joingroup.php:82 -#: actions/joingroup.php:95 actions/leavegroup.php:82 -#: actions/leavegroup.php:95 actions/makeadmin.php:91 -#: actions/showgroup.php:134 actions/showgroup.php:143 lib/command.php:168 -#: lib/command.php:392 -msgid "No such group." -msgstr "" - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #: actions/atompubshowmembership.php:91 msgid "Not a member." @@ -1516,7 +1604,7 @@ msgstr "" #: actions/avatarbynickname.php:60 actions/blockedfromgroup.php:73 #: actions/editgroup.php:85 actions/groupdesignsettings.php:84 #: actions/grouplogo.php:86 actions/groupmembers.php:76 -#: actions/grouprss.php:89 actions/showgroup.php:116 +#: actions/groupqueue.php:77 actions/grouprss.php:89 actions/showgroup.php:116 msgid "No nickname." msgstr "" @@ -1581,7 +1669,9 @@ msgstr "" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. #: actions/avatarsettings.php:155 actions/deleteaccount.php:319 +#: actions/showapplication.php:242 msgctxt "BUTTON" msgid "Delete" msgstr "" @@ -1771,6 +1861,15 @@ msgstr "" msgid "Post to %s" msgstr "" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#: actions/cancelgroup.php:157 actions/leavegroup.php:139 +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. #: actions/confirmaddress.php:74 msgid "No confirmation code." @@ -1840,7 +1939,8 @@ msgid "Notices" msgstr "" #. TRANS: Title for conversation page. -#: actions/conversationreplies.php:83 +#. TRANS: Title for page that shows a notice. +#: actions/conversationreplies.php:83 actions/shownotice.php:242 msgctxt "TITLE" msgid "Notice" msgstr "" @@ -1924,14 +2024,15 @@ msgstr "" #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. #: actions/deleteapplication.php:79 actions/editapplication.php:78 -#: actions/showapplication.php:90 +#: actions/showapplication.php:93 msgid "You are not the owner of this application." msgstr "" #. TRANS: Client error text when there is a problem with the session token. #: actions/deleteapplication.php:102 actions/editapplication.php:131 -#: actions/newapplication.php:112 actions/showapplication.php:113 +#: actions/newapplication.php:112 actions/showapplication.php:116 #: lib/action.php:1456 msgid "There was a problem with your session token." msgstr "" @@ -1965,14 +2066,6 @@ msgstr "" msgid "You must be logged in to delete a group." msgstr "" -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -#: actions/deletegroup.php:94 actions/joingroup.php:89 -#: actions/leavegroup.php:89 -msgid "No nickname or ID." -msgstr "" - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #: actions/deletegroup.php:107 msgid "You are not allowed to delete this group." @@ -2307,7 +2400,8 @@ msgid "You must be logged in to edit an application." msgstr "" #. TRANS: Client error displayed trying to edit an application that does not exist. -#: actions/editapplication.php:83 actions/showapplication.php:83 +#. TRANS: Client error displayed trying to display a non-existing OAuth application. +#: actions/editapplication.php:83 actions/showapplication.php:85 msgid "No such application." msgstr "" @@ -2406,13 +2500,13 @@ msgstr "" #. TRANS: Group edit form validation error. #. TRANS: Group create form validation error. #. TRANS: %s is the invalid alias. -#: actions/editgroup.php:241 actions/newgroup.php:188 +#: actions/editgroup.php:242 actions/newgroup.php:189 #, php-format msgid "Invalid alias: \"%s\"" msgstr "" #. TRANS: Group edit form success message. -#: actions/editgroup.php:301 +#: actions/editgroup.php:303 msgid "Options saved." msgstr "" @@ -2565,6 +2659,7 @@ msgstr "" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. #: actions/emailsettings.php:394 actions/register.php:206 #: actions/siteadminpanel.php:144 msgid "Not a valid email address." @@ -2882,7 +2977,7 @@ msgstr "" #. TRANS: Title for block user from group page. #. TRANS: Form legend for form to block user from a group. -#: actions/groupblock.php:141 actions/groupmembers.php:364 +#: actions/groupblock.php:141 lib/groupblockform.php:91 msgid "Block user from group" msgstr "" @@ -3003,38 +3098,28 @@ msgstr "" msgid "A list of the users in this group." msgstr "" -#. TRANS: Indicator in group members list that this user is a group administrator. -#: actions/groupmembers.php:190 lib/adminpanelnav.php:77 lib/primarynav.php:63 -msgid "Admin" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +#: actions/groupqueue.php:100 +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -#: actions/groupmembers.php:397 -msgctxt "BUTTON" -msgid "Block" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#: actions/groupqueue.php:111 +#, php-format +msgid "%s group members awaiting approval" msgstr "" -#. TRANS: Submit button title. -#: actions/groupmembers.php:401 -msgctxt "TOOLTIP" -msgid "Block this user" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#: actions/groupqueue.php:116 +#, php-format +msgid "%1$s group members awaiting approval, page %2$d" msgstr "" -#. TRANS: Form legend for form to make a user a group admin. -#: actions/groupmembers.php:488 -msgid "Make user an admin of the group" -msgstr "" - -#. TRANS: Button text for the form that will make a user administrator. -#: actions/groupmembers.php:521 -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "" - -#. TRANS: Submit button title. -#: actions/groupmembers.php:525 -msgctxt "TOOLTIP" -msgid "Make this user an admin" +#. TRANS: Page notice for group members page. +#: actions/groupqueue.php:132 +msgid "A list of users awaiting approval to join this group." msgstr "" #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. @@ -3072,7 +3157,8 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. -#: actions/groups.php:107 actions/usergroups.php:130 lib/groupeditform.php:115 +#. TRANS: Form legend for group edit form. +#: actions/groups.php:107 actions/usergroups.php:130 lib/groupeditform.php:116 msgid "Create a new group" msgstr "" @@ -3445,30 +3531,23 @@ msgid "You must be logged in to join a group." msgstr "" #. TRANS: Title for join group page after joining. -#: actions/joingroup.php:148 +#: actions/joingroup.php:145 #, php-format msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -#: actions/leavegroup.php:59 -msgid "You must be logged in to leave a group." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#: actions/joingroup.php:158 +msgid "Unknown error joining group." msgstr "" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. -#: actions/leavegroup.php:103 lib/command.php:398 +#: actions/leavegroup.php:103 lib/command.php:395 msgid "You are not a member of that group." msgstr "" -#. TRANS: Title for leave group page after leaving. -#: actions/leavegroup.php:142 -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "" - #. TRANS: User admin panel title #: actions/licenseadminpanel.php:54 msgctxt "TITLE" @@ -3737,7 +3816,7 @@ msgid "New group" msgstr "" #. TRANS: Client exception thrown when a user tries to create a group while banned. -#: actions/newgroup.php:73 classes/User_group.php:485 +#: actions/newgroup.php:73 classes/User_group.php:518 msgid "You are not allowed to create groups on this site." msgstr "" @@ -3762,8 +3841,8 @@ msgstr "" #. TRANS: Client error displayed trying to send a notice without content. #. TRANS: Command exception text shown when trying to send a direct message to another user without content. #. TRANS: Command exception text shown when trying to reply to a notice without providing content for the reply. -#: actions/newmessage.php:150 actions/newnotice.php:139 lib/command.php:490 -#: lib/command.php:593 +#: actions/newmessage.php:150 actions/newnotice.php:139 lib/command.php:484 +#: lib/command.php:587 msgid "No content!" msgstr "" @@ -3774,7 +3853,7 @@ msgstr "" #. TRANS: Client error displayed trying to send a direct message to self. #. TRANS: Error text shown when trying to send a direct message to self. -#: actions/newmessage.php:177 lib/command.php:517 +#: actions/newmessage.php:177 lib/command.php:511 msgid "" "Don't send a message to yourself; just say it to yourself quietly instead." msgstr "" @@ -3788,7 +3867,7 @@ msgstr "" #. TRANS: %s is the direct message recipient. #. TRANS: Message given have sent a direct message to another user. #. TRANS: %s is the name of the other user. -#: actions/newmessage.php:201 lib/command.php:525 +#: actions/newmessage.php:201 lib/command.php:519 #, php-format msgid "Direct message to %s sent." msgstr "" @@ -3960,12 +4039,15 @@ msgid "Notice %s not found." msgstr "" #. TRANS: Server error displayed in oEmbed action when notice has not profile. -#: actions/oembed.php:85 actions/shownotice.php:103 +#. TRANS: Server error displayed trying to show a notice without a connected profile. +#: actions/oembed.php:85 actions/shownotice.php:101 msgid "Notice has no profile." msgstr "" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. -#: actions/oembed.php:89 actions/shownotice.php:175 +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. +#: actions/oembed.php:89 actions/shownotice.php:171 #, php-format msgid "%1$s's status on %2$s" msgstr "" @@ -4190,7 +4272,7 @@ msgid "Invalid SSL server. The maximum length is 255 characters." msgstr "" #. TRANS: Fieldset legend in Paths admin panel. -#: actions/pathsadminpanel.php:235 actions/siteadminpanel.php:58 +#: actions/pathsadminpanel.php:235 msgid "Site" msgstr "" @@ -4534,22 +4616,26 @@ msgstr "" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #: actions/profilesettings.php:110 actions/register.php:438 +#: lib/groupeditform.php:150 msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. #: actions/profilesettings.php:114 actions/register.php:469 -#: lib/groupeditform.php:150 +#: lib/groupeditform.php:154 msgid "Full name" msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. #: actions/profilesettings.php:119 actions/register.php:476 -#: lib/applicationeditform.php:236 lib/groupeditform.php:154 +#: lib/applicationeditform.php:236 lib/groupeditform.php:159 msgid "Homepage" msgstr "" @@ -4583,8 +4669,9 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. #: actions/profilesettings.php:146 actions/register.php:503 -#: lib/groupeditform.php:173 +#: lib/groupeditform.php:184 msgid "Location" msgstr "" @@ -4651,7 +4738,8 @@ msgstr[0] "" msgstr[1] "" #. TRANS: Validation error in form for profile settings. -#: actions/profilesettings.php:270 actions/siteadminpanel.php:151 +#. TRANS: Client error displayed trying to save site settings without a timezone. +#: actions/profilesettings.php:270 actions/siteadminpanel.php:152 msgid "Timezone not selected." msgstr "" @@ -5424,88 +5512,112 @@ msgstr "" msgid "StatusNet" msgstr "" -#: actions/sandbox.php:65 actions/unsandbox.php:65 +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. +#: actions/sandbox.php:64 actions/unsandbox.php:65 msgid "You cannot sandbox users on this site." msgstr "" +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. #: actions/sandbox.php:72 msgid "User is already sandboxed." msgstr "" -#. TRANS: Menu item for site administration -#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170 -#: lib/adminpanelnav.php:126 +#. TRANS: Title for the sessions administration panel. +#: actions/sessionsadminpanel.php:53 +msgctxt "TITLE" msgid "Sessions" msgstr "" -#: actions/sessionsadminpanel.php:65 +#. TRANS: Instructions for the sessions administration panel. +#: actions/sessionsadminpanel.php:64 msgid "Session settings for this StatusNet site" msgstr "" -#: actions/sessionsadminpanel.php:175 +#. TRANS: Fieldset legend on the sessions administration panel. +#: actions/sessionsadminpanel.php:165 +msgctxt "LEGEND" +msgid "Sessions" +msgstr "" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#: actions/sessionsadminpanel.php:172 msgid "Handle sessions" msgstr "" -#: actions/sessionsadminpanel.php:177 -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#: actions/sessionsadminpanel.php:176 +msgid "Handle sessions ourselves." msgstr "" -#: actions/sessionsadminpanel.php:181 +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. +#: actions/sessionsadminpanel.php:182 msgid "Session debugging" msgstr "" -#: actions/sessionsadminpanel.php:183 -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#: actions/sessionsadminpanel.php:185 +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292 -#: actions/snapshotadminpanel.php:245 lib/applicationeditform.php:357 -msgid "Save" +#. TRANS: Title for submit button on the sessions administration panel. +#: actions/sessionsadminpanel.php:206 +msgid "Save session settings" msgstr "" -#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292 -msgid "Save site settings" -msgstr "" - -#: actions/showapplication.php:78 +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. +#: actions/showapplication.php:79 msgid "You must be logged in to view an application." msgstr "" -#: actions/showapplication.php:151 +#. TRANS: Header on the OAuth application page. +#: actions/showapplication.php:155 msgid "Application profile" msgstr "" -#: actions/showapplication.php:179 +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#: actions/showapplication.php:186 #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +msgstr[1] "" -#: actions/showapplication.php:189 +#. TRANS: Header on the OAuth application page. +#: actions/showapplication.php:199 msgid "Application actions" msgstr "" -#: actions/showapplication.php:212 +#. TRANS: Link text to edit application on the OAuth application page. +#: actions/showapplication.php:206 +msgctxt "EDITAPP" +msgid "Edit" +msgstr "" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. +#: actions/showapplication.php:225 msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -#: actions/showapplication.php:228 lib/deletegroupform.php:121 -#: lib/deleteuserform.php:64 lib/noticelistitem.php:583 -msgid "Delete" -msgstr "" - -#: actions/showapplication.php:237 +#. TRANS: Header on the OAuth application page. +#: actions/showapplication.php:252 msgid "Application info" msgstr "" -#: actions/showapplication.php:255 +#. TRANS: Note on the OAuth application page about signature support. +#: actions/showapplication.php:271 msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" -#: actions/showapplication.php:275 +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. +#: actions/showapplication.php:292 msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" @@ -5634,13 +5746,14 @@ msgstr "" msgid "Statistics" msgstr "" -#: actions/showgroup.php:327 +#. TRANS: Label for group creation date. +#: actions/showgroup.php:329 msgctxt "LABEL" msgid "Created" msgstr "" #. TRANS: Label for member count in statistics on group page. -#: actions/showgroup.php:332 +#: actions/showgroup.php:334 msgctxt "LABEL" msgid "Members" msgstr "" @@ -5649,7 +5762,7 @@ msgstr "" #. TRANS: **%s** is the group alias, %%%%site.name%%%% is the site name, #. TRANS: %%%%action.register%%%% is the URL for registration, %%%%doc.help%%%% is a URL to help. #. TRANS: This message contains Markdown links. Ensure they are formatted correctly: [Description](link). -#: actions/showgroup.php:347 +#: actions/showgroup.php:349 #, php-format msgid "" "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en." @@ -5662,7 +5775,7 @@ msgstr "" #. TRANS: Notice on group pages for anonymous users for StatusNet sites that accept no new registrations. #. TRANS: **%s** is the group alias, %%%%site.name%%%% is the site name, #. TRANS: This message contains Markdown links. Ensure they are formatted correctly: [Description](link). -#: actions/showgroup.php:357 +#: actions/showgroup.php:359 #, php-format msgid "" "**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en." @@ -5671,8 +5784,9 @@ msgid "" "their life and interests. " msgstr "" -#. TRANS: Header for list of group administrators on a group page (h2). -#: actions/showgroup.php:386 +#. TRANS: Title for list of group administrators on a group page. +#: actions/showgroup.php:388 +msgctxt "TITLE" msgid "Admins" msgstr "" @@ -5700,75 +5814,75 @@ msgstr "" msgid "Message from %1$s on %2$s" msgstr "" -#: actions/shownotice.php:93 +#. TRANS: Client error displayed trying to show a deleted notice. +#: actions/shownotice.php:89 msgid "Notice deleted." msgstr "" -#: actions/shownotice.php:248 -msgid "Notice" -msgstr "" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. -#: actions/showstream.php:69 +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. +#: actions/showstream.php:70 #, php-format msgid "%1$s tagged %2$s" msgstr "" #. TRANS: Page title showing tagged notices in one user's stream. #. TRANS: %1$s is the username, %2$s is the hash tag, %3$d is the page number. -#: actions/showstream.php:73 +#: actions/showstream.php:74 #, php-format msgid "%1$s tagged %2$s, page %3$d" msgstr "" #. TRANS: Extended page title showing tagged notices in one user's stream. #. TRANS: %1$s is the username, %2$d is the page number. -#: actions/showstream.php:81 +#: actions/showstream.php:82 #, php-format msgid "%1$s, page %2$d" msgstr "" #. TRANS: Title for link to notice feed. #. TRANS: %1$s is a user nickname, %2$s is a hashtag. -#: actions/showstream.php:131 +#: actions/showstream.php:132 #, php-format msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)" msgstr "" #. TRANS: Title for link to notice feed. #. TRANS: %s is a user nickname. -#: actions/showstream.php:140 +#: actions/showstream.php:141 #, php-format msgid "Notice feed for %s (RSS 1.0)" msgstr "" #. TRANS: Title for link to notice feed. #. TRANS: %s is a user nickname. -#: actions/showstream.php:149 +#: actions/showstream.php:150 #, php-format msgid "Notice feed for %s (RSS 2.0)" msgstr "" -#: actions/showstream.php:156 +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. +#: actions/showstream.php:159 #, php-format msgid "Notice feed for %s (Atom)" msgstr "" #. TRANS: Title for link to notice feed. FOAF stands for Friend of a Friend. #. TRANS: More information at http://www.foaf-project.org. %s is a user nickname. -#: actions/showstream.php:163 +#: actions/showstream.php:166 #, php-format msgid "FOAF for %s" msgstr "" #. TRANS: First sentence of empty list message for a stream. $1%s is a user nickname. -#: actions/showstream.php:203 +#: actions/showstream.php:206 #, php-format msgid "This is the timeline for %1$s, but %1$s hasn't posted anything yet." msgstr "" #. TRANS: Second sentence of empty list message for a stream for the user themselves. -#: actions/showstream.php:209 +#: actions/showstream.php:212 msgid "" "Seen anything interesting recently? You haven't posted any notices yet, now " "would be a good time to start :)" @@ -5776,7 +5890,7 @@ msgstr "" #. TRANS: Second sentence of empty list message for a non-self stream. %1$s is a user nickname, %2$s is a part of a URL. #. TRANS: This message contains a Markdown link. Keep "](" together. -#: actions/showstream.php:213 +#: actions/showstream.php:216 #, php-format msgid "" "You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%" @@ -5785,7 +5899,7 @@ msgstr "" #. TRANS: Announcement for anonymous users showing a stream if site registrations are open. #. TRANS: This message contains a Markdown link. Keep "](" together. -#: actions/showstream.php:256 +#: actions/showstream.php:259 #, php-format msgid "" "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en." @@ -5796,7 +5910,7 @@ msgstr "" #. TRANS: Announcement for anonymous users showing a stream if site registrations are closed or invite only. #. TRANS: This message contains a Markdown link. Keep "](" together. -#: actions/showstream.php:263 +#: actions/showstream.php:266 #, php-format msgid "" "**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en." @@ -5805,120 +5919,163 @@ msgid "" msgstr "" #. TRANS: Link to the author of a repeated notice. %s is a linked nickname. -#: actions/showstream.php:327 +#: actions/showstream.php:330 #, php-format msgid "Repeat of %s" msgstr "" -#: actions/silence.php:65 actions/unsilence.php:65 +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. +#: actions/silence.php:64 actions/unsilence.php:65 msgid "You cannot silence users on this site." msgstr "" +#. TRANS: Client error displayed trying to silence an already silenced user. #: actions/silence.php:72 msgid "User is already silenced." msgstr "" -#: actions/siteadminpanel.php:69 +#. TRANS: Title for site administration panel. +#: actions/siteadminpanel.php:57 +msgctxt "TITLE" +msgid "Site" +msgstr "" + +#. TRANS: Instructions for site administration panel. +#: actions/siteadminpanel.php:68 msgid "Basic settings for this StatusNet site" msgstr "" -#: actions/siteadminpanel.php:133 +#. TRANS: Client error displayed trying to save an empty site name. +#: actions/siteadminpanel.php:131 msgid "Site name must have non-zero length." msgstr "" -#: actions/siteadminpanel.php:141 +#. TRANS: Client error displayed trying to save site settings without a contact address. +#: actions/siteadminpanel.php:140 msgid "You must have a valid contact email address." msgstr "" -#: actions/siteadminpanel.php:159 +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. +#: actions/siteadminpanel.php:162 #, php-format msgid "Unknown language \"%s\"." msgstr "" -#: actions/siteadminpanel.php:165 +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. +#: actions/siteadminpanel.php:169 msgid "Minimum text limit is 0 (unlimited)." msgstr "" -#: actions/siteadminpanel.php:171 +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. +#: actions/siteadminpanel.php:176 msgid "Dupe limit must be one or more seconds." msgstr "" -#: actions/siteadminpanel.php:221 +#. TRANS: Fieldset legend on site settings panel. +#: actions/siteadminpanel.php:223 +msgctxt "LEGEND" msgid "General" msgstr "" -#: actions/siteadminpanel.php:224 +#. TRANS: Field label on site settings panel. +#: actions/siteadminpanel.php:227 +msgctxt "LABEL" msgid "Site name" msgstr "" -#: actions/siteadminpanel.php:225 -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#: actions/siteadminpanel.php:229 +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" -#: actions/siteadminpanel.php:229 +#. TRANS: Field label on site settings panel. +#: actions/siteadminpanel.php:234 msgid "Brought by" msgstr "" -#: actions/siteadminpanel.php:230 -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#: actions/siteadminpanel.php:236 +msgid "Text used for credits link in footer of each page." msgstr "" -#: actions/siteadminpanel.php:234 +#. TRANS: Field label on site settings panel. +#: actions/siteadminpanel.php:241 msgid "Brought by URL" msgstr "" -#: actions/siteadminpanel.php:235 -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#: actions/siteadminpanel.php:243 +msgid "URL used for credits link in footer of each page." msgstr "" -#: actions/siteadminpanel.php:238 lib/settingsnav.php:98 +#. TRANS: Field label on site settings panel. +#: actions/siteadminpanel.php:247 lib/settingsnav.php:98 msgid "Email" msgstr "" -#: actions/siteadminpanel.php:239 -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#: actions/siteadminpanel.php:249 +msgid "Contact email address for your site." msgstr "" -#: actions/siteadminpanel.php:245 +#. TRANS: Fieldset legend on site settings panel. +#: actions/siteadminpanel.php:256 +msgctxt "LEGEND" msgid "Local" msgstr "" -#: actions/siteadminpanel.php:256 +#. TRANS: Dropdown label on site settings panel. +#: actions/siteadminpanel.php:268 msgid "Default timezone" msgstr "" -#: actions/siteadminpanel.php:257 +#. TRANS: Dropdown title on site settings panel. +#: actions/siteadminpanel.php:270 msgid "Default timezone for the site; usually UTC." msgstr "" -#: actions/siteadminpanel.php:262 +#. TRANS: Dropdown label on site settings panel. +#: actions/siteadminpanel.php:277 msgid "Default language" msgstr "" -#: actions/siteadminpanel.php:263 +#. TRANS: Dropdown title on site settings panel. +#: actions/siteadminpanel.php:280 msgid "Site language when autodetection from browser settings is not available" msgstr "" -#: actions/siteadminpanel.php:271 +#. TRANS: Fieldset legend on site settings panel. +#: actions/siteadminpanel.php:289 +msgctxt "LEGEND" msgid "Limits" msgstr "" -#: actions/siteadminpanel.php:274 +#. TRANS: Field label on site settings panel. +#: actions/siteadminpanel.php:294 msgid "Text limit" msgstr "" -#: actions/siteadminpanel.php:274 +#. TRANS: Field title on site settings panel. +#: actions/siteadminpanel.php:296 msgid "Maximum number of characters for notices." msgstr "" -#: actions/siteadminpanel.php:278 +#. TRANS: Field label on site settings panel. +#: actions/siteadminpanel.php:302 msgid "Dupe limit" msgstr "" -#: actions/siteadminpanel.php:278 +#. TRANS: Field title on site settings panel. +#: actions/siteadminpanel.php:304 msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +#: actions/siteadminpanel.php:323 +msgid "Save site settings" +msgstr "" + #. TRANS: Page title for site-wide notice tab in admin panel. #: actions/sitenoticeadminpanel.php:55 msgid "Site Notice" @@ -6160,6 +6317,11 @@ msgstr "" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +#: actions/snapshotadminpanel.php:245 lib/applicationeditform.php:357 +msgid "Save" +msgstr "" + #: actions/snapshotadminpanel.php:248 msgid "Save snapshot settings" msgstr "" @@ -6552,7 +6714,8 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. -#: actions/userauthorization.php:202 +#. TRANS: Submit button text to accept a group membership request on approve group form. +#: actions/userauthorization.php:202 lib/approvegroupform.php:116 msgctxt "BUTTON" msgid "Accept" msgstr "" @@ -6563,7 +6726,8 @@ msgid "Subscribe to this user." msgstr "" #. TRANS: Button text on Authorise Subscription page. -#: actions/userauthorization.php:207 +#. TRANS: Submit button text to reject a group membership request on approve group form. +#: actions/userauthorization.php:207 lib/approvegroupform.php:118 msgctxt "BUTTON" msgid "Reject" msgstr "" @@ -6820,13 +6984,13 @@ msgid "Description" msgstr "" #. TRANS: Activity title when marking a notice as favorite. -#: classes/Fave.php:166 +#: classes/Fave.php:176 msgid "Favor" msgstr "" #. TRANS: Ntofication given when a user marks a notice as favorite. #. TRANS: %1$s is a user nickname or full name, %2$s is a notice URI. -#: classes/Fave.php:169 +#: classes/Fave.php:179 #, php-format msgid "%1$s marked notice %2$s as a favorite." msgstr "" @@ -6880,42 +7044,42 @@ msgid "Invalid filename." msgstr "" #. TRANS: Exception thrown when joining a group fails. -#: classes/Group_member.php:51 +#: classes/Group_member.php:52 msgid "Group join failed." msgstr "" #. TRANS: Exception thrown when trying to leave a group the user is not a member of. -#: classes/Group_member.php:64 +#: classes/Group_member.php:65 msgid "Not part of group." msgstr "" #. TRANS: Exception thrown when trying to leave a group fails. -#: classes/Group_member.php:72 +#: classes/Group_member.php:73 msgid "Group leave failed." msgstr "" #. TRANS: Exception thrown providing an invalid profile ID. #. TRANS: %s is the invalid profile ID. -#: classes/Group_member.php:85 +#: classes/Group_member.php:86 #, php-format msgid "Profile ID %s is invalid." msgstr "" #. TRANS: Exception thrown providing an invalid group ID. #. TRANS: %s is the invalid group ID. -#: classes/Group_member.php:98 +#: classes/Group_member.php:99 #, php-format msgid "Group ID %s is invalid." msgstr "" #. TRANS: Activity title. -#: classes/Group_member.php:147 lib/joinform.php:114 +#: classes/Group_member.php:148 lib/joinform.php:114 msgid "Join" msgstr "" #. TRANS: Success message for subscribe to group attempt through OStatus. #. TRANS: %1$s is the member name, %2$s is the subscribed group's name. -#: classes/Group_member.php:151 +#: classes/Group_member.php:152 #, php-format msgid "%1$s has joined group %2$s." msgstr "" @@ -7000,46 +7164,51 @@ msgid "Problem saving notice." msgstr "" #. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups(). -#: classes/Notice.php:980 +#: classes/Notice.php:939 msgid "Bad type provided to saveKnownGroups." msgstr "" #. TRANS: Server exception thrown when an update for a group inbox fails. -#: classes/Notice.php:1079 +#: classes/Notice.php:1038 msgid "Problem saving group inbox." msgstr "" #. TRANS: Server exception thrown when a reply cannot be saved. #. TRANS: %1$d is a notice ID, %2$d is the ID of the mentioned user. -#: classes/Notice.php:1195 +#: classes/Notice.php:1154 #, php-format msgid "Could not save reply for %1$d, %2$d." msgstr "" #. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'. #. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice. -#: classes/Notice.php:1714 +#: classes/Notice.php:1618 #, php-format msgid "RT @%1$s %2$s" msgstr "" #. TRANS: Full name of a profile or group followed by nickname in parens -#: classes/Profile.php:172 classes/User_group.php:242 +#: classes/Profile.php:172 classes/User_group.php:275 #, php-format msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +#: classes/Profile.php:407 +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). -#: classes/Profile.php:779 +#: classes/Profile.php:865 #, php-format msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist." msgstr "" #. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query. #. TRANS: %1$s is the role name, %2$s is the user ID (number). -#: classes/Profile.php:788 +#: classes/Profile.php:874 #, php-format msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error." msgstr "" @@ -7103,38 +7272,38 @@ msgstr "" #. TRANS: Notice given on user registration. #. TRANS: %1$s is the sitename, $2$s is the registering user's nickname. -#: classes/User.php:390 +#: classes/User.php:393 #, php-format msgid "Welcome to %1$s, @%2$s!" msgstr "" #. TRANS: Server exception. -#: classes/User.php:923 +#: classes/User.php:946 msgid "No single user defined for single-user mode." msgstr "" #. TRANS: Server exception. -#: classes/User.php:927 +#: classes/User.php:950 msgid "Single-user mode code called when not enabled." msgstr "" #. TRANS: Server exception thrown when creating a group failed. -#: classes/User_group.php:522 +#: classes/User_group.php:560 msgid "Could not create group." msgstr "" #. TRANS: Server exception thrown when updating a group URI failed. -#: classes/User_group.php:532 +#: classes/User_group.php:570 msgid "Could not set group URI." msgstr "" #. TRANS: Server exception thrown when setting group membership failed. -#: classes/User_group.php:555 +#: classes/User_group.php:593 msgid "Could not set group membership." msgstr "" #. TRANS: Server exception thrown when saving local group information failed. -#: classes/User_group.php:570 +#: classes/User_group.php:608 msgid "Could not save local group info." msgstr "" @@ -7360,19 +7529,19 @@ msgstr "" #. TRANS: Client exception thrown when trying to import a notice by another user. #. TRANS: %1$s is the source URI of the notice, %2$s is the URI of the author. -#: lib/activityimporter.php:201 +#: lib/activityimporter.php:198 #, php-format msgid "Already know about notice %1$s and it has a different author %2$s." msgstr "" #. TRANS: Client exception thrown when trying to overwrite the author information for a non-trusted user during import. -#: lib/activityimporter.php:207 +#: lib/activityimporter.php:204 msgid "Not overwriting author info for non-trusted user." msgstr "" #. TRANS: Client exception thrown when trying to import a notice without content. #. TRANS: %s is the notice URI. -#: lib/activityimporter.php:223 +#: lib/activityimporter.php:220 #, php-format msgid "No content for notice %s." msgstr "" @@ -7441,6 +7610,10 @@ msgstr "" msgid "Home" msgstr "" +#: lib/adminpanelnav.php:77 lib/primarynav.php:63 +msgid "Admin" +msgstr "" + #. TRANS: Menu item title/tooltip #: lib/adminpanelnav.php:84 msgid "Basic site configuration" @@ -7459,7 +7632,7 @@ msgstr "" #. TRANS: Menu item for site administration #. TRANS: Menu item in the group navigation page. Only shown for group administrators. -#: lib/adminpanelnav.php:94 lib/groupnav.php:133 +#: lib/adminpanelnav.php:94 lib/groupnav.php:143 msgctxt "MENU" msgid "Design" msgstr "" @@ -7489,6 +7662,11 @@ msgstr "" msgid "Sessions configuration" msgstr "" +#. TRANS: Menu item for site administration +#: lib/adminpanelnav.php:126 +msgid "Sessions" +msgstr "" + #. TRANS: Menu item title/tooltip #: lib/adminpanelnav.php:132 msgid "Edit site notice" @@ -7613,7 +7791,8 @@ msgid "Describe your application" msgstr "" #. TRANS: Form input field label. -#: lib/applicationeditform.php:208 lib/groupeditform.php:168 +#. TRANS: Text area label on group edit form; contains description of group. +#: lib/applicationeditform.php:208 lib/groupeditform.php:178 msgid "Description" msgstr "" @@ -7754,6 +7933,11 @@ msgstr "" msgid "Block this user" msgstr "" +#. TRANS: Submit button text on form to cancel group join request. +#: lib/cancelgroupform.php:115 +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. #: lib/channel.php:104 lib/channel.php:125 msgid "Command results" @@ -7781,7 +7965,7 @@ msgstr "" #. TRANS: Command exception text shown when a last user notice is requested and it does not exist. #. TRANS: Error text shown when a last user notice is requested and it does not exist. -#: lib/command.php:99 lib/command.php:642 +#: lib/command.php:99 lib/command.php:636 msgid "User has no last notice." msgstr "" @@ -7840,57 +8024,57 @@ msgstr "" #. TRANS: Message given having added a user to a group. #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group. -#: lib/command.php:369 +#: lib/command.php:366 #, php-format msgid "%1$s joined group %2$s." msgstr "" #. TRANS: Message given having removed a user from a group. #. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group. -#: lib/command.php:417 +#: lib/command.php:411 #, php-format msgid "%1$s left group %2$s." msgstr "" #. TRANS: Whois output. #. TRANS: %1$s nickname of the queried user, %2$s is their profile URL. -#: lib/command.php:438 +#: lib/command.php:432 #, php-format msgctxt "WHOIS" msgid "%1$s (%2$s)" msgstr "" #. TRANS: Whois output. %s is the full name of the queried user. -#: lib/command.php:442 +#: lib/command.php:436 #, php-format msgid "Fullname: %s" msgstr "" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. -#: lib/command.php:446 lib/mail.php:275 +#: lib/command.php:440 lib/mail.php:296 #, php-format msgid "Location: %s" msgstr "" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. -#: lib/command.php:450 lib/mail.php:279 +#: lib/command.php:444 lib/mail.php:301 #, php-format msgid "Homepage: %s" msgstr "" #. TRANS: Whois output. %s is the bio information of the queried user. -#: lib/command.php:454 +#: lib/command.php:448 #, php-format msgid "About: %s" msgstr "" #. TRANS: Command exception text shown when trying to send a direct message to a remote user (a user not registered at the current server). #. TRANS: %s is a remote profile. -#: lib/command.php:483 +#: lib/command.php:477 #, php-format msgid "" "%s is a remote profile; you can only send direct messages to users on the " @@ -7899,7 +8083,7 @@ msgstr "" #. TRANS: Message given if content is too long. %1$sd is used for plural. #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters. -#: lib/command.php:500 +#: lib/command.php:494 #, php-format msgid "Message too long - maximum is %1$d character, you sent %2$d." msgid_plural "Message too long - maximum is %1$d characters, you sent %2$d." @@ -7907,30 +8091,30 @@ msgstr[0] "" msgstr[1] "" #. TRANS: Error text shown when trying to send a direct message to a user without a mutual subscription (each user must be subscribed to the other). -#: lib/command.php:513 +#: lib/command.php:507 msgid "You can't send a message to this user." msgstr "" #. TRANS: Error text shown sending a direct message fails with an unknown reason. -#: lib/command.php:528 +#: lib/command.php:522 msgid "Error sending direct message." msgstr "" #. TRANS: Message given having repeated a notice from another user. #. TRANS: %s is the name of the user for which the notice was repeated. -#: lib/command.php:565 +#: lib/command.php:559 #, php-format msgid "Notice from %s repeated." msgstr "" #. TRANS: Error text shown when repeating a notice fails with an unknown reason. -#: lib/command.php:568 +#: lib/command.php:562 msgid "Error repeating notice." msgstr "" #. TRANS: Message given if content of a notice for a reply is too long. %1$d is used for plural. #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters. -#: lib/command.php:603 +#: lib/command.php:597 #, php-format msgid "Notice too long - maximum is %1$d character, you sent %2$d." msgid_plural "Notice too long - maximum is %1$d characters, you sent %2$d." @@ -7939,100 +8123,100 @@ msgstr[1] "" #. TRANS: Text shown having sent a reply to a notice successfully. #. TRANS: %s is the nickname of the user of the notice the reply was sent to. -#: lib/command.php:616 +#: lib/command.php:610 #, php-format msgid "Reply to %s sent." msgstr "" #. TRANS: Error text shown when a reply to a notice fails with an unknown reason. -#: lib/command.php:619 +#: lib/command.php:613 msgid "Error saving notice." msgstr "" #. TRANS: Error text shown when no username was provided when issuing a subscribe command. -#: lib/command.php:666 +#: lib/command.php:660 msgid "Specify the name of the user to subscribe to." msgstr "" #. TRANS: Command exception text shown when trying to subscribe to an OMB profile using the subscribe command. -#: lib/command.php:675 +#: lib/command.php:669 msgid "Can't subscribe to OMB profiles by command." msgstr "" #. TRANS: Text shown after having subscribed to another user successfully. #. TRANS: %s is the name of the user the subscription was requested for. -#: lib/command.php:683 +#: lib/command.php:677 #, php-format msgid "Subscribed to %s." msgstr "" #. TRANS: Error text shown when no username was provided when issuing an unsubscribe command. #. TRANS: Error text shown when no username was provided when issuing the command. -#: lib/command.php:704 lib/command.php:815 +#: lib/command.php:698 lib/command.php:809 msgid "Specify the name of the user to unsubscribe from." msgstr "" #. TRANS: Text shown after having unsubscribed from another user successfully. #. TRANS: %s is the name of the user the unsubscription was requested for. -#: lib/command.php:715 +#: lib/command.php:709 #, php-format msgid "Unsubscribed from %s." msgstr "" #. TRANS: Error text shown when issuing the command "off" with a setting which has not yet been implemented. #. TRANS: Error text shown when issuing the command "on" with a setting which has not yet been implemented. -#: lib/command.php:735 lib/command.php:761 +#: lib/command.php:729 lib/command.php:755 msgid "Command not yet implemented." msgstr "" #. TRANS: Text shown when issuing the command "off" successfully. -#: lib/command.php:739 +#: lib/command.php:733 msgid "Notification off." msgstr "" #. TRANS: Error text shown when the command "off" fails for an unknown reason. -#: lib/command.php:742 +#: lib/command.php:736 msgid "Can't turn off notification." msgstr "" #. TRANS: Text shown when issuing the command "on" successfully. -#: lib/command.php:765 +#: lib/command.php:759 msgid "Notification on." msgstr "" #. TRANS: Error text shown when the command "on" fails for an unknown reason. -#: lib/command.php:768 +#: lib/command.php:762 msgid "Can't turn on notification." msgstr "" #. TRANS: Error text shown when issuing the login command while login is disabled. -#: lib/command.php:782 +#: lib/command.php:776 msgid "Login command is disabled." msgstr "" #. TRANS: Text shown after issuing the login command successfully. #. TRANS: %s is a logon link.. -#: lib/command.php:795 +#: lib/command.php:789 #, php-format msgid "This link is useable only once and is valid for only 2 minutes: %s." msgstr "" #. TRANS: Text shown after issuing the lose command successfully (stop another user from following the current user). #. TRANS: %s is the name of the user the unsubscription was requested for. -#: lib/command.php:824 +#: lib/command.php:818 #, php-format msgid "Unsubscribed %s." msgstr "" #. TRANS: Text shown after requesting other users a user is subscribed to without having any subscriptions. -#: lib/command.php:842 +#: lib/command.php:836 msgid "You are not subscribed to anyone." msgstr "" #. TRANS: Text shown after requesting other users a user is subscribed to. #. TRANS: This message supports plural forms. This message is followed by a #. TRANS: hard coded space and a comma separated list of subscribed users. -#: lib/command.php:847 +#: lib/command.php:841 msgid "You are subscribed to this person:" msgid_plural "You are subscribed to these people:" msgstr[0] "" @@ -8040,14 +8224,14 @@ msgstr[1] "" #. TRANS: Text shown after requesting other users that are subscribed to a user #. TRANS: (followers) without having any subscribers. -#: lib/command.php:869 +#: lib/command.php:863 msgid "No one is subscribed to you." msgstr "" #. TRANS: Text shown after requesting other users that are subscribed to a user (followers). #. TRANS: This message supports plural forms. This message is followed by a #. TRANS: hard coded space and a comma separated list of subscribing users. -#: lib/command.php:874 +#: lib/command.php:868 msgid "This person is subscribed to you:" msgid_plural "These people are subscribed to you:" msgstr[0] "" @@ -8055,178 +8239,178 @@ msgstr[1] "" #. TRANS: Text shown after requesting groups a user is subscribed to without having #. TRANS: any group subscriptions. -#: lib/command.php:896 +#: lib/command.php:890 msgid "You are not a member of any groups." msgstr "" #. TRANS: Text shown after requesting groups a user is subscribed to. #. TRANS: This message supports plural forms. This message is followed by a #. TRANS: hard coded space and a comma separated list of subscribed groups. -#: lib/command.php:901 +#: lib/command.php:895 msgid "You are a member of this group:" msgid_plural "You are a member of these groups:" msgstr[0] "" msgstr[1] "" #. TRANS: Header line of help text for commands. -#: lib/command.php:915 +#: lib/command.php:909 msgctxt "COMMANDHELP" msgid "Commands:" msgstr "" #. TRANS: Help message for IM/SMS command "on" -#: lib/command.php:917 +#: lib/command.php:911 msgctxt "COMMANDHELP" msgid "turn on notifications" msgstr "" #. TRANS: Help message for IM/SMS command "off" -#: lib/command.php:919 +#: lib/command.php:913 msgctxt "COMMANDHELP" msgid "turn off notifications" msgstr "" #. TRANS: Help message for IM/SMS command "help" -#: lib/command.php:921 +#: lib/command.php:915 msgctxt "COMMANDHELP" msgid "show this help" msgstr "" #. TRANS: Help message for IM/SMS command "follow " -#: lib/command.php:923 +#: lib/command.php:917 msgctxt "COMMANDHELP" msgid "subscribe to user" msgstr "" #. TRANS: Help message for IM/SMS command "groups" -#: lib/command.php:925 +#: lib/command.php:919 msgctxt "COMMANDHELP" msgid "lists the groups you have joined" msgstr "" #. TRANS: Help message for IM/SMS command "subscriptions" -#: lib/command.php:927 +#: lib/command.php:921 msgctxt "COMMANDHELP" msgid "list the people you follow" msgstr "" #. TRANS: Help message for IM/SMS command "subscribers" -#: lib/command.php:929 +#: lib/command.php:923 msgctxt "COMMANDHELP" msgid "list the people that follow you" msgstr "" #. TRANS: Help message for IM/SMS command "leave " -#: lib/command.php:931 +#: lib/command.php:925 msgctxt "COMMANDHELP" msgid "unsubscribe from user" msgstr "" #. TRANS: Help message for IM/SMS command "d " -#: lib/command.php:933 +#: lib/command.php:927 msgctxt "COMMANDHELP" msgid "direct message to user" msgstr "" #. TRANS: Help message for IM/SMS command "get " -#: lib/command.php:935 +#: lib/command.php:929 msgctxt "COMMANDHELP" msgid "get last notice from user" msgstr "" #. TRANS: Help message for IM/SMS command "whois " -#: lib/command.php:937 +#: lib/command.php:931 msgctxt "COMMANDHELP" msgid "get profile info on user" msgstr "" #. TRANS: Help message for IM/SMS command "lose " -#: lib/command.php:939 +#: lib/command.php:933 msgctxt "COMMANDHELP" msgid "force user to stop following you" msgstr "" #. TRANS: Help message for IM/SMS command "fav " -#: lib/command.php:941 +#: lib/command.php:935 msgctxt "COMMANDHELP" msgid "add user's last notice as a 'fave'" msgstr "" #. TRANS: Help message for IM/SMS command "fav #" -#: lib/command.php:943 +#: lib/command.php:937 msgctxt "COMMANDHELP" msgid "add notice with the given id as a 'fave'" msgstr "" #. TRANS: Help message for IM/SMS command "repeat #" -#: lib/command.php:945 +#: lib/command.php:939 msgctxt "COMMANDHELP" msgid "repeat a notice with a given id" msgstr "" #. TRANS: Help message for IM/SMS command "repeat " -#: lib/command.php:947 +#: lib/command.php:941 msgctxt "COMMANDHELP" msgid "repeat the last notice from user" msgstr "" #. TRANS: Help message for IM/SMS command "reply #" -#: lib/command.php:949 +#: lib/command.php:943 msgctxt "COMMANDHELP" msgid "reply to notice with a given id" msgstr "" #. TRANS: Help message for IM/SMS command "reply " -#: lib/command.php:951 +#: lib/command.php:945 msgctxt "COMMANDHELP" msgid "reply to the last notice from user" msgstr "" #. TRANS: Help message for IM/SMS command "join " -#: lib/command.php:953 +#: lib/command.php:947 msgctxt "COMMANDHELP" msgid "join group" msgstr "" #. TRANS: Help message for IM/SMS command "login" -#: lib/command.php:955 +#: lib/command.php:949 msgctxt "COMMANDHELP" msgid "Get a link to login to the web interface" msgstr "" #. TRANS: Help message for IM/SMS command "drop " -#: lib/command.php:957 +#: lib/command.php:951 msgctxt "COMMANDHELP" msgid "leave group" msgstr "" #. TRANS: Help message for IM/SMS command "stats" -#: lib/command.php:959 +#: lib/command.php:953 msgctxt "COMMANDHELP" msgid "get your stats" msgstr "" #. TRANS: Help message for IM/SMS command "stop" #. TRANS: Help message for IM/SMS command "quit" -#: lib/command.php:961 lib/command.php:963 +#: lib/command.php:955 lib/command.php:957 msgctxt "COMMANDHELP" msgid "same as 'off'" msgstr "" #. TRANS: Help message for IM/SMS command "sub " -#: lib/command.php:965 +#: lib/command.php:959 msgctxt "COMMANDHELP" msgid "same as 'follow'" msgstr "" #. TRANS: Help message for IM/SMS command "unsub " -#: lib/command.php:967 +#: lib/command.php:961 msgctxt "COMMANDHELP" msgid "same as 'leave'" msgstr "" #. TRANS: Help message for IM/SMS command "last " -#: lib/command.php:969 +#: lib/command.php:963 msgctxt "COMMANDHELP" msgid "same as 'get'" msgstr "" @@ -8240,15 +8424,15 @@ msgstr "" #. TRANS: Help message for IM/SMS command "untrack all" #. TRANS: Help message for IM/SMS command "tracks" #. TRANS: Help message for IM/SMS command "tracking" -#: lib/command.php:971 lib/command.php:973 lib/command.php:977 +#: lib/command.php:965 lib/command.php:967 lib/command.php:971 +#: lib/command.php:973 lib/command.php:975 lib/command.php:977 #: lib/command.php:979 lib/command.php:981 lib/command.php:983 -#: lib/command.php:985 lib/command.php:987 lib/command.php:989 msgctxt "COMMANDHELP" msgid "not yet implemented." msgstr "" #. TRANS: Help message for IM/SMS command "nudge " -#: lib/command.php:975 +#: lib/command.php:969 msgctxt "COMMANDHELP" msgid "remind a user to update." msgstr "" @@ -8283,6 +8467,12 @@ msgstr "" msgid "Public" msgstr "" +#. TRANS: Title of form for deleting a user. +#: lib/deletegroupform.php:121 lib/deleteuserform.php:64 +#: lib/noticelistitem.php:583 +msgid "Delete" +msgstr "" + #. TRANS: Description of form for deleting a user. #: lib/deleteuserform.php:75 msgid "Delete this user" @@ -8440,35 +8630,51 @@ msgstr "" msgid "Grant this user the \"%s\" role" msgstr "" -#: lib/groupeditform.php:147 -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#. TRANS: Button text for the form that will block a user from a group. +#: lib/groupblockform.php:124 +msgctxt "BUTTON" +msgid "Block" msgstr "" -#: lib/groupeditform.php:156 +#. TRANS: Submit button title. +#: lib/groupblockform.php:128 +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "" + +#. TRANS: Field title on group edit form. +#: lib/groupeditform.php:162 msgid "URL of the homepage or blog of the group or topic." msgstr "" -#: lib/groupeditform.php:161 -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#: lib/groupeditform.php:168 +msgid "Describe the group or topic." msgstr "" -#: lib/groupeditform.php:163 +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#: lib/groupeditform.php:172 #, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "" msgstr[1] "" -#: lib/groupeditform.php:175 +#. TRANS: Field title on group edit form. +#: lib/groupeditform.php:187 msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" -#: lib/groupeditform.php:180 +#. TRANS: Field label on group edit form. +#: lib/groupeditform.php:193 msgid "Aliases" msgstr "" -#: lib/groupeditform.php:183 +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. +#: lib/groupeditform.php:198 #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -8479,71 +8685,113 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#: lib/groupeditform.php:207 +msgid "Membership policy" +msgstr "" + +#: lib/groupeditform.php:208 +msgid "Open to all" +msgstr "" + +#: lib/groupeditform.php:209 +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +#: lib/groupeditform.php:211 +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#: lib/groupmemberlistitem.php:21 +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "" + #. TRANS: Menu item in the group navigation page. -#: lib/groupnav.php:84 +#: lib/groupnav.php:81 msgctxt "MENU" msgid "Group" msgstr "" #. TRANS: Tooltip for menu item in the group navigation page. #. TRANS: %s is the nickname of the group. -#: lib/groupnav.php:87 +#: lib/groupnav.php:84 #, php-format msgctxt "TOOLTIP" msgid "%s group" msgstr "" #. TRANS: Menu item in the group navigation page. -#: lib/groupnav.php:93 +#: lib/groupnav.php:90 msgctxt "MENU" msgid "Members" msgstr "" #. TRANS: Tooltip for menu item in the group navigation page. #. TRANS: %s is the nickname of the group. -#: lib/groupnav.php:96 +#: lib/groupnav.php:93 #, php-format msgctxt "TOOLTIP" msgid "%s group members" msgstr "" #. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. #: lib/groupnav.php:106 +#, php-format msgctxt "MENU" -msgid "Blocked" -msgstr "" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. #. TRANS: %s is the nickname of the group. #: lib/groupnav.php:109 #, php-format msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "" + +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#: lib/groupnav.php:116 +msgctxt "MENU" +msgid "Blocked" +msgstr "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#: lib/groupnav.php:119 +#, php-format +msgctxt "TOOLTIP" msgid "%s blocked users" msgstr "" #. TRANS: Menu item in the group navigation page. Only shown for group administrators. -#: lib/groupnav.php:115 +#: lib/groupnav.php:125 msgctxt "MENU" msgid "Admin" msgstr "" #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. #. TRANS: %s is the nickname of the group. -#: lib/groupnav.php:118 +#: lib/groupnav.php:128 #, php-format msgctxt "TOOLTIP" msgid "Edit %s group properties" msgstr "" #. TRANS: Menu item in the group navigation page. Only shown for group administrators. -#: lib/groupnav.php:124 +#: lib/groupnav.php:134 msgctxt "MENU" msgid "Logo" msgstr "" #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. #. TRANS: %s is the nickname of the group. -#: lib/groupnav.php:127 +#: lib/groupnav.php:137 #, php-format msgctxt "TOOLTIP" msgid "Add or edit %s logo" @@ -8551,7 +8799,7 @@ msgstr "" #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. #. TRANS: %s is the nickname of the group. -#: lib/groupnav.php:136 +#: lib/groupnav.php:146 #, php-format msgctxt "TOOLTIP" msgid "Add or edit %s design" @@ -8714,50 +8962,52 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. -#: lib/mail.php:243 +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. +#: lib/mail.php:243 lib/mail.php:250 #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "" -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#: lib/mail.php:250 +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#: lib/mail.php:267 #, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#: lib/mail.php:260 -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#: lib/mail.php:292 +#, php-format +msgid "Profile: %s" +msgstr "" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. -#: lib/mail.php:283 +#: lib/mail.php:306 #, php-format msgid "Bio: %s" msgstr "" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#: lib/mail.php:316 +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. -#: lib/mail.php:312 +#: lib/mail.php:344 #, php-format msgid "New email address for posting to %s" msgstr "" @@ -8765,49 +9015,46 @@ msgstr "" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#: lib/mail.php:318 +#: lib/mail.php:350 #, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. #. TRANS: %s is the posting user's nickname. -#: lib/mail.php:439 +#: lib/mail.php:471 #, php-format msgid "%s status" msgstr "" #. TRANS: Subject line for SMS-by-email address confirmation message. -#: lib/mail.php:465 +#: lib/mail.php:497 msgid "SMS confirmation" msgstr "" #. TRANS: Main body heading for SMS-by-email address confirmation message. #. TRANS: %s is the addressed user's nickname. -#: lib/mail.php:469 +#: lib/mail.php:501 #, php-format msgid "%s: confirm you own this phone number with this code:" msgstr "" #. TRANS: Subject for 'nudge' notification email. #. TRANS: %s is the nudging user. -#: lib/mail.php:490 +#: lib/mail.php:522 #, php-format msgid "You have been nudged by %s" msgstr "" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#: lib/mail.php:497 +#. TRANS: %3$s is a URL to post notices at. +#: lib/mail.php:529 #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -8817,15 +9064,12 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. #. TRANS: %s is the sending user's nickname. -#: lib/mail.php:544 +#: lib/mail.php:574 #, php-format msgid "New private message from %s" msgstr "" @@ -8833,8 +9077,7 @@ msgstr "" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#: lib/mail.php:552 +#: lib/mail.php:581 #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -8847,15 +9090,12 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. #. TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname. -#: lib/mail.php:604 +#: lib/mail.php:631 #, php-format msgid "%1$s (@%2$s) added your notice as a favorite" msgstr "" @@ -8865,7 +9105,7 @@ msgstr "" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#: lib/mail.php:611 +#: lib/mail.php:638 #, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" @@ -8880,14 +9120,11 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. -#: lib/mail.php:669 +#: lib/mail.php:695 #, php-format msgid "" "The full conversation can be read here:\n" @@ -8897,21 +9134,20 @@ msgstr "" #. TRANS: E-mail subject for notice notification. #. TRANS: %1$s is the sending user's long name, %2$s is the adding user's nickname. -#: lib/mail.php:677 +#: lib/mail.php:703 #, php-format msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#: lib/mail.php:685 +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#: lib/mail.php:710 #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -8927,12 +9163,35 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#: lib/mail.php:781 lib/mail.php:791 +#, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#: lib/mail.php:828 +#, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "" + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#: lib/mail.php:836 +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" #: lib/mailbox.php:87 @@ -8982,6 +9241,23 @@ msgstr "" msgid "Unsupported message type: %s" msgstr "" +#. TRANS: Form legend for form to make a user a group admin. +#: lib/makeadminform.php:87 +msgid "Make user an admin of the group" +msgstr "" + +#. TRANS: Button text for the form that will make a user administrator. +#: lib/makeadminform.php:120 +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +#: lib/makeadminform.php:124 +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. #: lib/mediafile.php:102 lib/mediafile.php:174 msgid "There was a database error while saving your file. Please try again." @@ -9378,7 +9654,7 @@ msgid "Revoke the \"%s\" role from this user" msgstr "" #. TRANS: Client error on action trying to visit a non-existing page. -#: lib/router.php:1004 +#: lib/router.php:1008 msgid "Page not found." msgstr "" diff --git a/locale/sv/LC_MESSAGES/statusnet.po b/locale/sv/LC_MESSAGES/statusnet.po index f797c46d0a..5e179d22cb 100644 --- a/locale/sv/LC_MESSAGES/statusnet.po +++ b/locale/sv/LC_MESSAGES/statusnet.po @@ -13,17 +13,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:04+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:12:59+0000\n" "Language-Team: Swedish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: sv\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -75,6 +75,8 @@ msgstr "Spara inställningar för åtkomst" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -82,6 +84,7 @@ msgstr "Spara inställningar för åtkomst" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Spara" @@ -755,6 +758,7 @@ msgstr "Konto" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Smeknamn" @@ -833,6 +837,7 @@ msgstr "Du kan inte ta bort en annan användares status." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Ingen sådan notis." @@ -1041,6 +1046,103 @@ msgstr "API-metoden är under uppbyggnad." msgid "User not found." msgstr "API-metod hittades inte." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Du måste vara inloggad för att lämna en grupp." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Ingen sådan grupp." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Inget smeknamn eller ID." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Inte inloggad." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Saknar profil." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "En lista av användarna i denna grupp." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Kunde inte ansluta användare %1$s till grupp %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$ss status den %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1122,36 +1224,6 @@ msgstr "Ingen sådan favorit." msgid "Cannot delete someone else's favorite." msgstr "Kan inte ta bort någon annans favoriter." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Ingen sådan grupp." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Inte medlem." @@ -1267,6 +1339,7 @@ msgstr "Förhandsgranska" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Ta bort" @@ -1432,6 +1505,14 @@ msgstr "Häv blockering av denna användare" msgid "Post to %s" msgstr "Posta till %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s lämnade grupp %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Ingen bekräftelsekod." @@ -1490,6 +1571,7 @@ msgid "Notices" msgstr "Notiser" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1564,6 +1646,7 @@ msgstr "Applikation hittades inte." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Du är inte ägaren av denna applikation." @@ -1600,12 +1683,6 @@ msgstr "Ta bort denna applikation" msgid "You must be logged in to delete a group." msgstr "Du måste vara inloggad för att ta bort en grupp." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Inget smeknamn eller ID." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Du får inte ta bort denna grupp." @@ -1897,6 +1974,7 @@ msgid "You must be logged in to edit an application." msgstr "Du måste vara inloggad för att redigera en applikation." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Ingen sådan applikation." @@ -2113,6 +2191,7 @@ msgstr "Kan inte normalisera den e-postadressen" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Inte en giltig e-postadress." @@ -2488,33 +2567,26 @@ msgstr "%1$s gruppmedlemmar, sida %2$d" msgid "A list of the users in this group." msgstr "En lista av användarna i denna grupp." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Administratör" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Blockera" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s gruppmedlemmar" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Blockera denna användare" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s gruppmedlemmar, sida %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Gör användare till en administratör för gruppen" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Gör till administratör" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Gör denna användare till administratör" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "En lista av användarna i denna grupp." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2552,6 +2624,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Skapa en ny grupp" @@ -2940,21 +3013,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s gick med i grupp %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Du måste vara inloggad för att lämna en grupp." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Okänd grupp." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Du är inte en medlem i den gruppen." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s lämnade grupp %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3383,10 +3451,13 @@ msgid "Notice %s not found." msgstr "API-metod hittades inte." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Notisen har ingen profil." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$ss status den %2$s" @@ -3878,18 +3949,21 @@ msgstr "Profilinformation" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 små bokstäver eller nummer, inga punkter eller mellanslag" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Fullständigt namn" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Hemsida" @@ -3920,6 +3994,7 @@ msgstr "Biografi" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Plats" @@ -3981,6 +4056,7 @@ msgstr[0] "Biografin är för lång (max %d tecken)." msgstr[1] "Biografin är för lång (max %d tecken)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Tidszon inte valt." @@ -4711,68 +4787,102 @@ msgstr "Användare har inte denna roll." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Du kan inte flytta användare till sandlådan på denna webbplats." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Användare är redan flyttad till sandlådan." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessioner" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessioner" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Hantera sessioner" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Hurvida sessioner skall hanteras av oss själva." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Sessionsfelsökning" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Sätt på felsökningsutdata för sessioner." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Spara" - -msgid "Save site settings" -msgstr "Spara webbplatsinställningar" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Spara inställningar för åtkomst" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Du måste vara inloggad för att se en applikation." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Applikationsprofil" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Skapad av %1$s - %2$s standardåtkomst - %3$d användare" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Skapad av %1$s - %2$s standardåtkomst - %3$d användare" +msgstr[1] "Skapad av %1$s - %2$s standardåtkomst - %3$d användare" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Åtgärder för applikation" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Redigera" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Återställ nyckel & hemlighet" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Ta bort" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Information om applikation" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "Notera: Vi stöjder HMAC-SHA1-signaturer. Vi stödjer inte metoden med " "klartextsignatur." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" "Är du säker på att du vill återställa din konsumentnyckel och -hemlighet?" @@ -4888,6 +4998,7 @@ msgstr "Alla medlemmar" msgid "Statistics" msgstr "Statistik" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Skapad" @@ -4930,7 +5041,9 @@ msgstr "" "[StatusNet](http://status.net/). Dess medlemmar delar korta meddelande om " "sina liv och intressen. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Administratörer" @@ -4954,13 +5067,12 @@ msgstr "Meddelande till %1$s på %2$s" msgid "Message from %1$s on %2$s" msgstr "Meddelande från %1$s på %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Notis borttagen." -msgid "Notice" -msgstr "Notiser" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s taggade %2$d" @@ -4995,6 +5107,8 @@ msgstr "Flöde av notiser för %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Flöde av notiser för %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Flöde av notiser för %s (Atom)" @@ -5059,91 +5173,141 @@ msgstr "" msgid "Repeat of %s" msgstr "Upprepning av %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Du kan inte tysta ned användare på denna webbplats." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Användaren är redan nedtystad." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Webbplats" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Grundinställningar för din StatusNet-webbplats" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Webbplatsnamnet måste vara minst ett tecken långt." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Du måste ha en giltig e-postadress." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Okänt språk \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Minsta textbegränsning är 0 (obegränsat)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "Duplikatgräns måste vara en eller fler sekuner." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Allmänt" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Webbplatsnamn" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Namnet på din webbplats, t.ex. \"Företagsnamn mikroblogg\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Tillhandahållen av" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Text som används för tillskrivningslänkar i sidfoten på varje sida." +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Tillhandahållen av URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL som används för tillskrivningslänkar i sidfoten på varje sida" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-post" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Kontakte-postadress för din webbplats" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Lokal" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Standardtidszon" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Standardtidzon för denna webbplats; vanligtvis UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Standardspråk" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Webbplatsspråk när automatisk identifiering av inställningar i webbläsaren " "inte är tillgänglig" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Begränsningar" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Textbegränsning" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Maximala antalet tecken för notiser." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Duplikatbegränsning" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Hur länge användare måste vänta (i sekunder) för att posta samma sak igen." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Spara webbplatsinställningar" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Webbplatsnotis" @@ -5349,6 +5513,10 @@ msgstr "URL för rapport" msgid "Snapshots will be sent to this URL" msgstr "Ögonblicksbild kommer skickat till denna URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Spara" + msgid "Save snapshot settings" msgstr "Spara inställningar för ögonblicksbild" @@ -5700,6 +5868,7 @@ msgstr "" "på någons meddelanden, klicka på \"Avvisa\"." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5711,6 +5880,7 @@ msgid "Subscribe to this user." msgstr "Prenumerera på denna användare" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6145,6 +6315,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6494,6 +6668,9 @@ msgstr "Kunde inte ta bort utseendeinställning." msgid "Home" msgstr "Hemsida" +msgid "Admin" +msgstr "Administratör" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Grundläggande webbplatskonfiguration" @@ -6533,6 +6710,10 @@ msgstr "Konfiguration av sökvägar" msgid "Sessions configuration" msgstr "Konfiguration av sessioner" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessioner" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Redigera webbplatsnotis" @@ -6639,6 +6820,7 @@ msgid "Describe your application" msgstr "Beskriv din applikation" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Beskrivning" @@ -6754,6 +6936,10 @@ msgstr "Blockera" msgid "Block this user" msgstr "Blockera denna användare" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Resultat av kommando" @@ -6853,14 +7039,14 @@ msgid "Fullname: %s" msgstr "Fullständigt namn: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Plats: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7218,6 +7404,10 @@ msgstr "Databasfel" msgid "Public" msgstr "Publikt" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Ta bort" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Ta bort denna användare" @@ -7350,30 +7540,46 @@ msgstr "Gå" msgid "Grant this user the \"%s\" role" msgstr "Bevilja denna användare \"%s\"-rollen" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 små bokstäver eller nummer, inga punkter eller mellanslag" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Blockera" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Blockera denna användare" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "URL till gruppen eller ämnets hemsida eller blogg" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Beskriv gruppen eller ämnet" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Beskriv gruppen eller ämnet med högst %d tecken" msgstr[1] "Beskriv gruppen eller ämnet med högst %d tecken" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "Plats för gruppen, om den finns, såsom \"Stad, Län, Land\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Alias" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, fuzzy, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7386,6 +7592,27 @@ msgstr[0] "" msgstr[1] "" "Extra smeknamn för gruppen, komma- eller mellanslagsseparerade, max &d" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Medlem sedan" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Administratör" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7410,6 +7637,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "%s gruppmedlemmar" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s gruppmedlemmar" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7598,38 +7841,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s lyssnar nu på dina notiser på %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Om du anser att kontot används oriktigt kan du blockera det från listan över " -"dina prenumeranter och rapportera det som skräppost till administratörer på %" -"s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s lyssnar nu på dina notiser på %2$s.\n" "\n" @@ -7642,12 +7869,29 @@ msgstr "" "----\n" "Ändra din e-postadress eller notiferingsinställningar på %8$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Biografi: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Om du anser att kontot används oriktigt kan du blockera det från listan över " +"dina prenumeranter och rapportera det som skräppost till administratörer på %" +"s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7663,10 +7907,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" "Du har en ny adress på %1$s.\n" "\n" @@ -7701,8 +7942,8 @@ msgstr "Du har blivit knuffad av %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7711,10 +7952,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) undrar vad du håller på med nuförtiden och inbjuder dig att " "lägga upp några nyheter.\n" @@ -7737,8 +7975,7 @@ msgstr "Nytt privat meddelande från %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7750,10 +7987,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) skickade ett privat meddelande till dig:\n" "\n" @@ -7781,7 +8015,7 @@ msgstr "%s (@%s) lade till din notis som en favorit" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7795,10 +8029,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) la precis till din notis från %2$s som en av sina favoriter.\n" "\n" @@ -7835,14 +8066,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%s (@%s) skickade en notis för din uppmärksamhet" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7858,12 +8088,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) skickade precis en notis för din uppmärksamhet (ett '@-svar') " "på %2$s.\n" @@ -7888,6 +8113,31 @@ msgstr "" "\n" "P.S. Du kan stänga av dessa e-postnotifikationer här: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s gick med i grupp %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s gick med i grupp %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "Bara användaren kan läsa sina egna brevlådor." @@ -7927,6 +8177,20 @@ msgstr "Tyvärr, ingen inkommande e-post tillåts." msgid "Unsupported message type: %s" msgstr "Formatet %s för meddelande stödjs inte." +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Gör användare till en administratör för gruppen" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Gör till administratör" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Gör denna användare till administratör" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8625,9 +8889,8 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Kunde inte uppdatera användare." +#~ msgid "Notice" +#~ msgstr "Notiser" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Kunde inte uppdatera användaruppgift." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 små bokstäver eller nummer, inga punkter eller mellanslag" diff --git a/locale/te/LC_MESSAGES/statusnet.po b/locale/te/LC_MESSAGES/statusnet.po index f99c15869b..ba57a9fd4b 100644 --- a/locale/te/LC_MESSAGES/statusnet.po +++ b/locale/te/LC_MESSAGES/statusnet.po @@ -10,17 +10,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:05+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:00+0000\n" "Language-Team: Telugu \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: te\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -71,6 +71,8 @@ msgstr "అందుబాటు అమరికలను భద్రపరచ #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -78,6 +80,7 @@ msgstr "అందుబాటు అమరికలను భద్రపరచ #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "భద్రపరచు" @@ -737,6 +740,7 @@ msgstr "ఖాతా" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "పేరు" @@ -814,6 +818,7 @@ msgstr "ఇతర వాడుకరుల స్థితిని మీరు #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "అటువంటి సందేశమేమీ లేదు." @@ -1022,6 +1027,103 @@ msgstr "నిర్ధారణ సంకేతం కనబడలేదు." msgid "User not found." msgstr "వాడుకరి దొరకలేదు." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "గుంపుని వదిలివెళ్ళడానికి మీరు ప్రవేశించి ఉండాలి." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "అటువంటి గుంపు లేదు." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Jabber ID లేదు." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "లోనికి ప్రవేశించలేదు." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "వాడుకరికి ప్రొఫైలు లేదు." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "ఈ గుంపులో వాడుకరులు జాబితా." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "వాడుకరి %1$sని %2$s గుంపులో చేర్చలేకపోయాం" + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%2$sలో %1$s యొక్క స్థితి" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1103,36 +1205,6 @@ msgstr "అటువంటి ఇష్టాంశం లేదు." msgid "Cannot delete someone else's favorite." msgstr "మరొకరి ఇష్టాంశాన్ని తొలగించలేరు." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "అటువంటి గుంపు లేదు." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "సభ్యులు కాదు." @@ -1249,6 +1321,7 @@ msgstr "మునుజూపు" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "తొలగించు" @@ -1410,6 +1483,14 @@ msgstr "ఈ వాడుకరిని నిరోధించు" msgid "Post to %s" msgstr "%sకి టపాచెయ్యి" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%2$s గుంపు నుండి %1$s వైదొలిగారు" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "నిర్ధారణ సంకేతం లేదు." @@ -1469,15 +1550,15 @@ msgid "Notices" msgstr "సందేశాలు" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" msgstr "సందేశాలు" #. TRANS: Client exception displayed trying to delete a user account while not logged in. -#, fuzzy msgid "Only logged-in users can delete their account." -msgstr "కేవలం ప్రవేశించిన వాడుకరులు మాత్రమే నోటీసులని పునరావృతించగలరు." +msgstr "కేవలం ప్రవేశించిన వాడుకరులు మాత్రమే వారి ఖాతాను తొలగించుకోగలరు." #. TRANS: Client exception displayed trying to delete a user account without have the rights to do that. msgid "You cannot delete your account." @@ -1541,6 +1622,7 @@ msgstr "ఉపకరణం కనబడలేదు." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "మీరు ఈ ఉపకరణం యొక్క యజమాని కాదు." @@ -1574,12 +1656,6 @@ msgstr "ఈ ఉపకరణాన్ని తొలగించు." msgid "You must be logged in to delete a group." msgstr "గుంపుని తొలగించడానికి మీరు ప్రవేశించి ఉండాలి." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Jabber ID లేదు." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "ఈ గుంపును తొలగించడానికి మీకు అనుమతి లేదు." @@ -1862,6 +1938,7 @@ msgid "You must be logged in to edit an application." msgstr "ఉపకరణాలని మార్చడానికి మీరు ప్రవేశించి ఉండాలి." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "అటువంటి ఉపకరణం లేదు." @@ -2082,6 +2159,7 @@ msgstr "ప్రస్తుత నిర్ధారిత ఈమెయిల #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "సరైన ఈమెయిల్ చిరునామా కాదు:" @@ -2451,33 +2529,26 @@ msgstr "%1$s గుంపు సభ్యులు, పేజీ %2$d" msgid "A list of the users in this group." msgstr "ఈ గుంపులో వాడుకరులు జాబితా." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "నిర్వాహకులు" - -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "నిరోధించు" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "ఈ వాడుకరిని నిరోధించు" - -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "వాడుకరిని గుంపుకి ఒక నిర్వాహకునిగా చేయి" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." msgstr "" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s గుంపు సభ్యత్వాలు" + +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%1$s గుంపు సభ్యులు, పేజీ %2$d" + +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "ఈ గుంపులో వాడుకరులు జాబితా." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2514,6 +2585,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "కొత్త గుంపుని సృష్టించు" @@ -2538,7 +2610,7 @@ msgstr "ఫలితాలేమీ లేవు." #. TRANS: Additional text on page where groups can be searched if no results were found for a query for a logged in user. #. TRANS: This message contains Markdown links in the form [link text](link). -#, fuzzy, php-format +#, php-format msgid "" "If you cannot find the group you're looking for, you can [create it](%%" "action.newgroup%%) yourself." @@ -2586,9 +2658,9 @@ msgid "IM is not available." msgstr "IM అందుబాటులో లేదు." #. TRANS: Form note in IM settings form. %s is the type of IM address that was confirmed. -#, fuzzy, php-format +#, php-format msgid "Current confirmed %s address." -msgstr "ప్రస్తుత నిర్ధారిత ఈమెయిలు చిరునామా." +msgstr "ప్రస్తుత నిర్ధారిత %s చిరునామా." #. TRANS: Form note in IM settings form. #. TRANS: %s is the IM service name, %2$s is the IM address set. @@ -2610,7 +2682,6 @@ msgid "%s screenname." msgstr "" #. TRANS: Header for IM preferences form. -#, fuzzy msgid "IM Preferences" msgstr "IM అభిరుచులు" @@ -2625,7 +2696,7 @@ msgstr "" #. TRANS: Checkbox label in IM preferences form. msgid "Send me replies from people I'm not subscribed to." -msgstr "" +msgstr "నేను చందాచేరని వ్యక్తుల నుండి వచ్చే స్పందనలను కూడా నాకు పంపించు." #. TRANS: Checkbox label in IM preferences form. #, fuzzy @@ -2882,21 +2953,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s %2$s గుంపులో చేరారు" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "గుంపుని వదిలివెళ్ళడానికి మీరు ప్రవేశించి ఉండాలి." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "గుర్తుతెలియని గుంపు." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "మీరు ఆ గుంపులో సభ్యులు కాదు." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%2$s గుంపు నుండి %1$s వైదొలిగారు" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3316,10 +3382,13 @@ msgid "Notice %s not found." msgstr "నిర్ధారణ సంకేతం కనబడలేదు." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "నోటీసుకి ప్రొఫైలు లేదు." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%2$sలో %1$s యొక్క స్థితి" @@ -3750,9 +3819,8 @@ msgid "This action only accepts POST requests." msgstr "" #. TRANS: Client error displayed when trying to enable or disable a plugin without access rights. -#, fuzzy msgid "You cannot administer plugins." -msgstr "మీరు వాడుకరులని తొలగించలేరు." +msgstr "మీరు ప్లగిన్లను నిర్వహించలేరు." #. TRANS: Client error displayed when trying to enable or disable a non-existing plugin. #, fuzzy @@ -3814,18 +3882,21 @@ msgstr "ప్రొఫైలు సమాచారం" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 చిన్నబడి అక్షరాలు లేదా అంకెలు, విరామచిహ్నాలు మరియు ఖాళీలు తప్ప" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "పూర్తి పేరు" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "హోమ్ పేజీ" @@ -3856,6 +3927,7 @@ msgstr "స్వపరిచయం" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "ప్రాంతం" @@ -3911,6 +3983,7 @@ msgstr[0] "స్వపరిచయం చాలా పెద్దగా ఉం msgstr[1] "స్వపరిచయం చాలా పెద్దగా ఉంది (%d అక్షరాలు గరిష్ఠం)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "కాలమండలాన్ని ఎంచుకోలేదు." @@ -4041,7 +4114,7 @@ msgstr "ట్యాగు మేఘం" #. TRANS: %s is the StatusNet sitename. #, php-format msgid "These are most popular recent tags on %s" -msgstr "" +msgstr "%sలో అత్యంత ప్రాచుర్యమైన ట్యాగులు ఇవి" #. TRANS: This message contains a Markdown URL. The link description is between #. TRANS: square brackets, and the link between parentheses. Do not separate "](" @@ -4418,10 +4491,9 @@ msgid "URL of your profile on another compatible microblogging service." msgstr "" #. TRANS: Button text on page for remote subscribe. -#, fuzzy msgctxt "BUTTON" msgid "Subscribe" -msgstr "చందాచేరు" +msgstr "చందాచేరండి" #. TRANS: Form validation error on page for remote subscribe when an invalid profile URL was provided. msgid "Invalid profile URL (bad format)." @@ -4452,7 +4524,6 @@ msgid "No notice specified." msgstr "గుంపు ఏమీ పేర్కొనలేదు." #. TRANS: Client error displayed when trying to repeat an own notice. -#, fuzzy msgid "You cannot repeat your own notice." msgstr "మీ నోటీసుని మీరే పునరావృతించలేరు." @@ -4619,69 +4690,99 @@ msgstr "వాడుకరికి ఈ పాత్ర లేదు." msgid "StatusNet" msgstr "స్టేటస్‌నెట్" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "ఈ సైటులో మీరు వాడుకరలకి పాత్రలను ఇవ్వలేరు." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. #, fuzzy msgid "User is already sandboxed." msgstr "వాడుకరిని ఇప్పటికే గుంపునుండి నిరోధించారు." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. #, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "సంచిక" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "సంచిక" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "" +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. #, fuzzy -msgid "Whether to handle sessions ourselves." +msgid "Handle sessions ourselves." msgstr "వాడుకరులను కొత్త వారిని ఆహ్వానించడానికి అనుమతించాలా వద్దా." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "భద్రపరచు" - -msgid "Save site settings" -msgstr "సైటు అమరికలను భద్రపరచు" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "అందుబాటు అమరికలను భద్రపరచు" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "ఉపకరణాలని చూడడానికి మీరు తప్పనిసరిగా ప్రవేశించి ఉండాలి." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "ఉపకరణ ప్రవర" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "సృష్టించినది %1$s - అప్రమేయ అందుబాటు %2$s - %3$d వాడుకరులు" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "సృష్టించినది %1$s - అప్రమేయ అందుబాటు %2$s - %3$d వాడుకరులు" +msgstr[1] "సృష్టించినది %1$s - అప్రమేయ అందుబాటు %2$s - %3$d వాడుకరులు" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "ఉపకరణ చర్యలు" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "మార్చు" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "తొలగించు" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "ఉపకరణ సమాచారం" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. #, fuzzy msgid "Are you sure you want to reset your consumer key and secret?" msgstr "మీరు నిజంగానే ఈ నోటీసుని తొలగించాలనుకుంటున్నారా?" @@ -4793,6 +4894,7 @@ msgstr "అందరు సభ్యులూ" msgid "Statistics" msgstr "గణాంకాలు" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4839,7 +4941,9 @@ msgstr "" "చాల వాటిలో భాగస్తులవ్వడానికి [ఇప్పుడే చేరండి](%%%%action.register%%%%)! ([మరింత చదవండి](%%%%" "doc.help%%%%))" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "నిర్వాహకులు" @@ -4863,14 +4967,12 @@ msgstr "%2$sలో %1$sకి స్పందనలు!" msgid "Message from %1$s on %2$s" msgstr "%2$sలో %1$sకి స్పందనలు!" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "నోటీసుని తొలగించాం." -#, fuzzy -msgid "Notice" -msgstr "సందేశాలు" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%1$s, %2$dవ పేజీ" @@ -4905,6 +5007,8 @@ msgstr "%s కొరకు స్పందనల ఫీడు (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "%s కొరకు స్పందనల ఫీడు (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "%s కొరకు స్పందనల ఫీడు (ఆటమ్)" @@ -4968,91 +5072,139 @@ msgstr "" msgid "Repeat of %s" msgstr "%s యొక్క పునరావృతం" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. #, fuzzy msgid "You cannot silence users on this site." msgstr "ఈ సైటులో మీరు వాడుకరలకి పాత్రలను ఇవ్వలేరు." +#. TRANS: Client error displayed trying to silence an already silenced user. #, fuzzy msgid "User is already silenced." msgstr "వాడుకరిని ఇప్పటికే గుంపునుండి నిరోధించారు." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "సైటు" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "ఈ స్టేటస్‌నెట్ సైటుకి ప్రాధమిక అమరికలు" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "సైటు పేరు తప్పనిసరిగా సున్నా కంటే ఎక్కువ పొడవుండాలి." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "మీకు సరైన సంప్రదింపు ఈమెయిలు చిరునామా ఉండాలి." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "గుర్తు తెలియని భాష \"%s\"." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "కనిష్ఠ పాఠ్య పరిమితి 0 (అపరిమితం)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "సాధారణ" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "సైటు పేరు" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "మీ సైటు యొక్క పేరు, ఇలా \"మీకంపెనీ మైక్రోబ్లాగు\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "అందిస్తున్నవారు" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "అందిస్తున్నవారి URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "ఈమెయిల్" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "మీ సైటుకి సంప్రదింపుల ఈమెయిల్ చిరునామా" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "స్థానిక" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "అప్రమేయ కాలమండలం" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "అప్రమేయ భాష" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "విహారిణి అమరికల నుండి భాషని స్వయంచాలకంగా పొందలేకపోయినప్పుడు ఉపయోగించే సైటు భాష" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "పరిమితులు" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "పాఠ్యపు పరిమితి" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "సందేశాలలోని అక్షరాల గరిష్ఠ సంఖ్య." +#. TRANS: Field label on site settings panel. #, fuzzy msgid "Dupe limit" msgstr "పాఠ్యపు పరిమితి" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "అదే విషయాన్ని మళ్ళీ టపా చేయడానికి వాడుకరులు ఎంత సమయం (క్షణాల్లో) వేచివుండాలి." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "సైటు అమరికలను భద్రపరచు" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "సైటు గమనిక" @@ -5146,9 +5298,8 @@ msgid "" msgstr "" #. TRANS: Confirmation message for successful SMS preferences save. -#, fuzzy msgid "SMS preferences saved." -msgstr "అభిరుచులు భద్రమయ్యాయి." +msgstr "SMS అభిరుచులు భద్రమయ్యాయి." #. TRANS: Message given saving SMS phone number without having provided one. msgid "No phone number." @@ -5259,6 +5410,10 @@ msgstr "" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "భద్రపరచు" + #, fuzzy msgid "Save snapshot settings" msgstr "సైటు అమరికలను భద్రపరచు" @@ -5593,6 +5748,7 @@ msgid "" msgstr "" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "అంగీకరించు" @@ -5602,6 +5758,7 @@ msgid "Subscribe to this user." msgstr "ఈ వాడుకరికి చందాచేరండి." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "తిరస్కరించు" @@ -6007,6 +6164,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6357,6 +6518,9 @@ msgstr "మీ రూపురేఖల అమరికలని భద్రప msgid "Home" msgstr "ముంగిలి" +msgid "Admin" +msgstr "నిర్వాహకులు" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "ప్రాథమిక సైటు స్వరూపణం" @@ -6397,6 +6561,11 @@ msgstr "వాడుకరి స్వరూపణం" msgid "Sessions configuration" msgstr "రూపకల్పన స్వరూపణం" +#. TRANS: Menu item for site administration +#, fuzzy +msgid "Sessions" +msgstr "సంచిక" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "సైటు గమనికని భద్రపరచు" @@ -6503,6 +6672,7 @@ msgid "Describe your application" msgstr "మీ ఉపకరణాన్ని వివరించండి" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "వివరణ" @@ -6619,6 +6789,10 @@ msgstr "నిరోధించు" msgid "Block this user" msgstr "ఈ వాడుకరిని నిరోధించు" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "ఆదేశ ఫలితాలు" @@ -6721,14 +6895,14 @@ msgid "Fullname: %s" msgstr "పూర్తిపేరు: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "ప్రాంతం: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -6917,13 +7091,12 @@ msgstr "మీ నోటీసుని మీరే పునరావృతి #. TRANS: Help message for IM/SMS command "help" msgctxt "COMMANDHELP" msgid "show this help" -msgstr "" +msgstr "ఈ సహాయాన్ని చూపిస్తుంది" #. TRANS: Help message for IM/SMS command "follow " -#, fuzzy msgctxt "COMMANDHELP" msgid "subscribe to user" -msgstr "ఈ వాడుకరికి చందాచేరు" +msgstr "వాడుకరికి చందాచేరండి" #. TRANS: Help message for IM/SMS command "groups" msgctxt "COMMANDHELP" @@ -7020,7 +7193,7 @@ msgstr "గుంపు తొలగింపు" #. TRANS: Help message for IM/SMS command "stats" msgctxt "COMMANDHELP" msgid "get your stats" -msgstr "" +msgstr "మీ గణాంకాలను చూపిస్తుంది" #. TRANS: Help message for IM/SMS command "stop" #. TRANS: Help message for IM/SMS command "quit" @@ -7089,6 +7262,10 @@ msgstr "" msgid "Public" msgstr "ప్రజా" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "తొలగించు" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "ఈ వాడుకరిని తొలగించు" @@ -7221,30 +7398,46 @@ msgstr "వెళ్ళు" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1-64 చిన్నబడి అక్షరాలు లేదా అంకెలు, విరామచిహ్నాలు మరియు ఖాళీలు తప్ప" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "నిరోధించు" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "ఈ వాడుకరిని నిరోధించు" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "ఈ ఉపకరణం యొక్క హోమ్‌పేజీ చిరునామా" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "గుంపుని లేదా విషయాన్ని వివరించండి" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "గుంపు లేదా విషయాన్ని గురించి %d అక్షరాల్లో వివరించండి" msgstr[1] "గుంపు లేదా విషయాన్ని గురించి %d అక్షరాల్లో వివరించండి" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "గుంపు యొక్క ప్రాంతం, ఉంటే, \"నగరం, రాష్ట్రం (లేదా ప్రాంతం), దేశం\"" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "మారుపేర్లు" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7255,6 +7448,27 @@ msgid_plural "" msgstr[0] "" msgstr[1] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "సభ్యులైన తేదీ" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "నిర్వాహకులు" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7279,6 +7493,22 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "%s సమూహ సభ్యులు" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s గుంపు సభ్యులు" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7301,7 +7531,7 @@ msgstr "నిర్వాహకులు" #, php-format msgctxt "TOOLTIP" msgid "Edit %s group properties" -msgstr "" +msgstr "%s గుంపు లక్షణాలను మార్చండి" #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" @@ -7437,7 +7667,7 @@ msgstr "ఈమెయిల్ చిరునామా నిర్ధారణ" #. TRANS: Body for address confirmation email. #. TRANS: %1$s is the addressed user's nickname, %2$s is the StatusNet sitename, #. TRANS: %3$s is the URL to confirm at. -#, fuzzy, php-format +#, php-format msgid "" "Hey, %1$s.\n" "\n" @@ -7452,50 +7682,37 @@ msgid "" "Thanks for your time, \n" "%2$s\n" msgstr "" -"హోయి, %s.\n" +"హాయ్, %1$s.\n" "\n" -"%sలో ఎవరో మీ ఈమెయిలు చిరునామాని ఇచ్చారు.\n" +"%2$sలో ఎవరో మీ ఈమెయిలు చిరునామాను ఇచ్చారు.\n" "\n" -"అది మీరే అయితే, మరియు మీ పద్దుని మీరు నిర్ధారించాలనుకుంటే, క్రింది చిరునామాపై నొక్కండి:\n" +"అది మీరే అయితే, మరియు మీ పద్దుని మీరు నిర్ధారించాలనుకుంటే, క్రింది లంకెపై నొక్కండి:\n" "\n" -"%s\n" +"%3$s\n" "\n" "మీరు కాకపోతే, ఈ సందేశాన్ని పట్టించుకోకండి.\n" "\n" "మీ సమయానికి కృతజ్ఞతలు, \n" -"%s\n" +"%2$s\n" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s ఇప్పుడు %2$sలో మీ నోటీసులని వింటున్నారు." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s ఇప్పుడు %2$sలో మీ నోటీసులని వింటున్నారు.\n" "\n" @@ -7508,12 +7725,26 @@ msgstr "" "----\n" "మీ ఈమెయిలు చిరునామాని లేదా గమనింపుల ఎంపికలను %8$s వద్ద మార్చుకోండి\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "ప్రొఫైలు" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "స్వపరిచయం: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7529,10 +7760,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7559,8 +7787,8 @@ msgstr "చందాచేరడం నుండి మిమ్మల్ని #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7569,10 +7797,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) మీరేం చేస్తున్నారో అని విస్మయం చెందుతున్నారు మరియు ఏవైనా విశేషాలని వ్రాయమని మిమ్మల్ని " "ఆహ్వానిస్తున్నారు.\n" @@ -7595,8 +7820,7 @@ msgstr "%s నుండి కొత్త అంతరంగిక సందే #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7608,10 +7832,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) మీకు ఒక అంతరంగిక సందేశాన్ని పంపించారు:\n" "\n" @@ -7639,7 +7860,7 @@ msgstr "%1$s (@%2$s) మీ నోటీసుని ఇష్టపడ్డా #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7653,10 +7874,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%2$s లోని మీ నోటీసుని %1$s (@%7$s) తన ఇష్టాంశాలలో ఇప్పుడే చేర్చుకున్నారు.\n" "\n" @@ -7693,14 +7911,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) మీ దృష్టికి ఒక నోటిసుని పంపించారు" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7716,12 +7933,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%2$sలో %1$s (@%9$s) ఒక నోటీసుని మీ దృష్టికి ('@-స్పందన') పంపించారు.\n" "\n" @@ -7746,6 +7958,31 @@ msgstr "" "\n" "తా.క. ఈ ఈమెయిలు గమనింపులని మీరు ఇక్కడ నిలిపివేసుకోవచ్చు: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s %2$s గుంపులో చేరారు." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s %2$s గుంపులో చేరారు." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "ఎవరి తపాలాపెట్టెలను ఆ వాడుకరి మాత్రమే చదవలగరు." @@ -7786,6 +8023,20 @@ msgstr "క్షమించండి, అది మీ లోనికివ msgid "Unsupported message type: %s" msgstr "%s కి నేరు సందేశాలు" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "వాడుకరిని గుంపుకి ఒక నిర్వాహకునిగా చేయి" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -7828,9 +8079,8 @@ msgid "Select recipient:" msgstr "" #. TRANS Entry in drop-down selection box in direct-message inbox/outbox when no one is available to message. -#, fuzzy msgid "No mutual subscribers." -msgstr "చందాదార్లు" +msgstr "పరస్పర చందాదార్లు ఎవరూలేరు." msgid "To" msgstr "" @@ -8321,18 +8571,18 @@ msgstr[1] "మరింత చూపించు" #. TRANS: Reference to the logged in user in favourite list. msgctxt "FAVELIST" msgid "You" -msgstr "" +msgstr "మీరు" #. TRANS: Separator in list of user names like "You, Bob, Mary". msgid ", " -msgstr "" +msgstr ", " #. TRANS: For building a list such as "You, bob, mary and 5 others have favored this notice". #. TRANS: %1$s is a list of users, separated by a separator (default: ", "), %2$s is the last user in the list. -#, fuzzy, php-format +#, php-format msgctxt "FAVELIST" msgid "%1$s and %2$s" -msgstr "%1$s - %2$s" +msgstr "%1$s మరియు %2$s" #. TRANS: List message for notice favoured by logged in user. #, fuzzy @@ -8348,10 +8598,9 @@ msgstr[0] "ఈ నోటీసుని తొలగించు" msgstr[1] "ఈ నోటీసుని తొలగించు" #. TRANS: List message for notice repeated by logged in user. -#, fuzzy msgctxt "REPEATLIST" msgid "You have repeated this notice." -msgstr "మీరు ఇప్పటికే ఆ నోటీసుని పునరావృతించారు." +msgstr "మీరు ఈ నోటీసును పునరావృతించారు." #, fuzzy, php-format msgctxt "REPEATLIST" @@ -8479,9 +8728,9 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "వాడుకరిని తాజాకరించలేకున్నాం." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "వాడుకరిని తాజాకరించలేకున్నాం." +#~ msgid "Notice" +#~ msgstr "సందేశాలు" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1-64 చిన్నబడి అక్షరాలు లేదా అంకెలు, విరామచిహ్నాలు మరియు ఖాళీలు తప్ప" diff --git a/locale/tr/LC_MESSAGES/statusnet.po b/locale/tr/LC_MESSAGES/statusnet.po index f01705d888..12b59fead9 100644 --- a/locale/tr/LC_MESSAGES/statusnet.po +++ b/locale/tr/LC_MESSAGES/statusnet.po @@ -2,6 +2,7 @@ # Exported from translatewiki.net # # Author: Emperyan +# Author: George Animal # Author: Joseph # Author: Maidis # Author: McDutchie @@ -12,17 +13,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:06+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:02+0000\n" "Language-Team: Turkish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: tr\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -74,6 +75,8 @@ msgstr "Erişim ayarlarını kaydet" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -81,6 +84,7 @@ msgstr "Erişim ayarlarını kaydet" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Kaydet" @@ -396,9 +400,8 @@ msgid "Recipient user not found." msgstr "Alıcı kullanıcı bulunamadı." #. TRANS: Client error displayed trying to direct message another user who's not a friend (403). -#, fuzzy msgid "Cannot send direct messages to users who aren't your friend." -msgstr "Arkadaşınız olmayan kullanıcılara özel mesaj gönderemezsiniz." +msgstr "Arkadaşınız olmayan kullanıcılara özel mesaj gönderilmez." #. TRANS: Client error displayed trying to direct message self (403). msgid "" @@ -652,7 +655,6 @@ msgstr "" #. TRANS: API validation exception thrown when alias is the same as nickname. #. TRANS: Group create form validation error. -#, fuzzy msgid "Alias cannot be the same as nickname." msgstr "Diğerisim, kullanıcı adı ile aynı olamaz." @@ -753,6 +755,7 @@ msgstr "Hesap" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Takma ad" @@ -832,6 +835,7 @@ msgstr "Başka bir kullanıcının durum mesajını silemezsiniz." #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Böyle bir durum mesajı yok." @@ -856,9 +860,9 @@ msgstr "HTTP yöntemi desteklenmiyor." #. TRANS: Exception thrown requesting an unsupported notice output format. #. TRANS: %s is the requested output format. -#, fuzzy, php-format +#, php-format msgid "Unsupported format: %s." -msgstr "Desteklenmeyen biçim: %s" +msgstr "Desteklenmeyen biçim: %s." #. TRANS: Client error displayed requesting a deleted status. msgid "Status deleted." @@ -874,7 +878,6 @@ msgstr "Yalnızca Atom biçimi kullanılarak silinebilir." #. TRANS: Client error displayed when a user has no rights to delete notices of other users. #. TRANS: Error message displayed trying to delete a notice that was not made by the current user. -#, fuzzy msgid "Cannot delete this notice." msgstr "Bu durum mesajı silinemiyor." @@ -1010,7 +1013,7 @@ msgstr "" #. TRANS: Client error displayed when not using the POST verb. Do not translate POST. msgid "Can only handle POST activities." -msgstr "" +msgstr "Sadece POST faaliyetleri idare edilebilir." #. TRANS: Client error displayed when using an unsupported activity object type. #. TRANS: %s is the unsupported activity object type. @@ -1039,6 +1042,104 @@ msgstr "UPA metodu yapım aşamasında." msgid "User not found." msgstr "Onay kodu bulunamadı." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "" + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Böyle bir kullanıcı yok." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#, fuzzy +msgid "No nickname or ID." +msgstr "Takma ad yok" + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Giriş yapılmadı." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Profil yok." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Bu gruptaki kullanıcıların listesi." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "%1$s kullanıcısı, %2$s grubuna katılamadı." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s'in %2$s'deki durum mesajları " + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1125,36 +1226,6 @@ msgstr "Böyle bir dosya yok." msgid "Cannot delete someone else's favorite." msgstr "Favori silinemedi." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Böyle bir kullanıcı yok." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group #, fuzzy msgid "Not a member." @@ -1190,7 +1261,7 @@ msgstr "Uzaktan abonelik" #. TRANS: Client error displayed when not using the follow verb. msgid "Can only handle Follow activities." -msgstr "" +msgstr "Sadece Takip faaliyetleri idare edilebilir." #. TRANS: Client exception thrown when subscribing to an object that is not a person. msgid "Can only follow people." @@ -1273,6 +1344,7 @@ msgstr "Önizleme" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Sil" @@ -1439,6 +1511,14 @@ msgstr "Bu kullanıcının engellemesini kaldır" msgid "Post to %s" msgstr "%s için cevaplar" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s'in %2$s'deki durum mesajları " + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Onay kodu yok." @@ -1498,6 +1578,7 @@ msgid "Notices" msgstr "Durum mesajları" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1573,6 +1654,7 @@ msgstr "Onay kodu bulunamadı." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Bu uygulamanın sahibi değilsiniz." @@ -1610,13 +1692,6 @@ msgstr "Bu uygulamayı sil" msgid "You must be logged in to delete a group." msgstr "Bir grup oluşturmak için giriş yapmış olmanız gerekir." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -#, fuzzy -msgid "No nickname or ID." -msgstr "Takma ad yok" - #. TRANS: Client error when trying to delete a group without having the rights to delete it. #, fuzzy msgid "You are not allowed to delete this group." @@ -1714,7 +1789,6 @@ msgid "You can only delete local users." msgstr "Sadece yerel kullanıcıları silebilirsiniz." #. TRANS: Title of delete user page. -#, fuzzy msgctxt "TITLE" msgid "Delete user" msgstr "Kullanıcıyı sil" @@ -1737,9 +1811,8 @@ msgid "Do not delete this user." msgstr "Bu durum mesajını silme" #. TRANS: Submit button title for 'Yes' when deleting a user. -#, fuzzy msgid "Delete this user." -msgstr "Bu kullanıcıyı sil" +msgstr "Bu kullanıcıyı sil." #. TRANS: Message used as title for design settings for the site. msgid "Design" @@ -1835,7 +1908,6 @@ msgid "Tile background image" msgstr "Arkaplan resmini döşe" #. TRANS: Fieldset legend for theme colors. -#, fuzzy msgid "Change colors" msgstr "Renkleri değiştir" @@ -1912,6 +1984,7 @@ msgid "You must be logged in to edit an application." msgstr "Bir uygulamayı düzenlemek için giriş yapmış olmanız gerekir." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Böyle bir uygulama yok." @@ -2135,6 +2208,7 @@ msgstr "Jabber işlemlerinde bir hata oluştu." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Geçersiz bir eposta adresi." @@ -2511,33 +2585,26 @@ msgstr "" msgid "A list of the users in this group." msgstr "Bu gruptaki kullanıcıların listesi." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Yönetici" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Engelle" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s grup üyeleri" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Bu kullanıcıyı engelle" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Bütün abonelikler" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Kullanıcıyı grubun bir yöneticisi yap" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Yönetici Yap" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Bu kullanıcıyı yönetici yap" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Bu gruptaki kullanıcıların listesi." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, fuzzy, php-format @@ -2571,6 +2638,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Yeni bir grup oluştur" @@ -2917,21 +2985,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s'in %2$s'deki durum mesajları " -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "" +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Yeni grup" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Bu grubun bir üyesi değilsiniz." -#. TRANS: Title for leave group page after leaving. -#, fuzzy, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s'in %2$s'deki durum mesajları " - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3357,10 +3420,13 @@ msgid "Notice %s not found." msgstr "Üst durum mesajı bulunamadı." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Kullanıcının profili yok." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s'in %2$s'deki durum mesajları " @@ -3598,7 +3664,7 @@ msgstr "" #. TRANS: Fieldset legend in Paths admin panel. msgctxt "LEGEND" msgid "Theme" -msgstr "" +msgstr "Tema" #. TRANS: Tooltip for field label in Paths admin panel. #, fuzzy @@ -3670,7 +3736,7 @@ msgstr "" #. TRANS: Fieldset legend in Paths admin panel. msgid "Backgrounds" -msgstr "" +msgstr "Arkaplanlar" #. TRANS: Tooltip for field label in Paths admin panel. #, fuzzy @@ -3683,7 +3749,7 @@ msgstr "" #. TRANS: Tooltip for field label in Paths admin panel. msgid "Server for backgrounds on SSL pages." -msgstr "" +msgstr "SSL sayfalarındaki arkaplanlar için sunucu." #. TRANS: Tooltip for field label in Paths admin panel. msgid "Web path to backgrounds on SSL pages." @@ -3859,6 +3925,7 @@ msgstr "Profil ayarları" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. #, fuzzy msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "" @@ -3867,12 +3934,14 @@ msgstr "" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Tam İsim" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Başlangıç Sayfası" @@ -3904,6 +3973,7 @@ msgstr "Hakkında" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Yer" @@ -3962,6 +4032,7 @@ msgid_plural "Bio is too long (maximum %d characters)." msgstr[0] "Yer bilgisi çok uzun (azm: %d karakter)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Zaman dilimi seçilmedi." @@ -4657,69 +4728,98 @@ msgstr "Kullanıcının profili yok." msgid "StatusNet" msgstr "İstatistikler" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. #, fuzzy msgid "You cannot sandbox users on this site." msgstr "Bize o profili yollamadınız" +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. #, fuzzy msgid "User is already sandboxed." msgstr "Kullanıcının profili yok." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" -msgstr "" +msgstr "Sürüm" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sürüm" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +msgid "Handle sessions ourselves." msgstr "" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +msgid "Enable debugging output for sessions." msgstr "" -#. TRANS: Submit button title. -msgid "Save" -msgstr "Kaydet" - -msgid "Save site settings" -msgstr "Profil ayarları" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Erişim ayarlarını kaydet" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "" +#. TRANS: Header on the OAuth application page. #, fuzzy msgid "Application profile" msgstr "Bu durum mesajının ait oldugu kullanıcı profili yok" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. #, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "" +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "" +#. TRANS: Link text to edit application on the OAuth application page. +msgctxt "EDITAPP" +msgid "Edit" +msgstr "" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Sil" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "" +#. TRANS: Note on the OAuth application page about signature support. msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "" @@ -4828,6 +4928,7 @@ msgstr "Tüm üyeler" msgid "Statistics" msgstr "İstatistikler" +#. TRANS: Label for group creation date. #, fuzzy msgctxt "LABEL" msgid "Created" @@ -4863,7 +4964,9 @@ msgid "" "their life and interests. " msgstr "" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Yöneticiler" @@ -4887,14 +4990,12 @@ msgstr "" msgid "Message from %1$s on %2$s" msgstr "" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Durum mesajı silindi." -#, fuzzy -msgid "Notice" -msgstr "Durum mesajları" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, fuzzy, php-format msgid "%1$s tagged %2$s" msgstr "%s ve arkadaşları" @@ -4929,6 +5030,8 @@ msgstr "%s için durum RSS beslemesi" msgid "Notice feed for %s (RSS 2.0)" msgstr "%s için durum RSS beslemesi" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, fuzzy, php-format msgid "Notice feed for %s (Atom)" msgstr "%s için durum RSS beslemesi" @@ -4984,91 +5087,136 @@ msgstr "" msgid "Repeat of %s" msgstr "%s için cevaplar" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "" +#. TRANS: Client error displayed trying to silence an already silenced user. #, fuzzy msgid "User is already silenced." msgstr "Kullanıcının profili yok." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Site" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "" +#. TRANS: Client error displayed trying to save site settings without a contact address. #, fuzzy msgid "You must have a valid contact email address." msgstr "Geçersiz bir eposta adresi." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Genel" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Site ismi" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "Text used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +msgid "URL used for credits link in footer of each page." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Eposta" +#. TRANS: Field title on site settings panel. #, fuzzy -msgid "Contact email address for your site" +msgid "Contact email address for your site." msgstr "Kullanıcı için kaydedilmiş eposta adresi yok." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Yerel" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Öntanımlı saat dilimi" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Öntanımlı dil" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" +#. TRANS: Fieldset legend on site settings panel. +msgctxt "LEGEND" msgid "Limits" msgstr "" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Profil ayarları" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Durum mesajları" @@ -5283,6 +5431,10 @@ msgstr "" msgid "Snapshots will be sent to this URL" msgstr "" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Kaydet" + #, fuzzy msgid "Save snapshot settings" msgstr "Ayarlar" @@ -5629,6 +5781,7 @@ msgstr "" "bulunmadıysanız \"İptal\" tuşuna basın. " #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Accept" @@ -5640,6 +5793,7 @@ msgid "Subscribe to this user." msgstr "Bize o profili yollamadınız" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. #, fuzzy msgctxt "BUTTON" msgid "Reject" @@ -6046,6 +6200,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s'in %2$s'deki durum mesajları " +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6398,6 +6556,9 @@ msgstr "Dizayn ayarı silinemedi." msgid "Home" msgstr "Başlangıç Sayfası" +msgid "Admin" +msgstr "Yönetici" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Temel site yapılandırması" @@ -6438,6 +6599,10 @@ msgstr "Yol yapılandırması" msgid "Sessions configuration" msgstr "Eposta adresi onayı" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Site durum mesajını düzenle" @@ -6546,6 +6711,7 @@ msgid "Describe your application" msgstr "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Tanım" @@ -6667,6 +6833,10 @@ msgstr "Engelle" msgid "Block this user" msgstr "Bu kullanıcıyı engelle" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "" @@ -6764,14 +6934,14 @@ msgid "Fullname: %s" msgstr "Tam İsim: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Yer: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, fuzzy, php-format msgid "Homepage: %s" @@ -7126,6 +7296,10 @@ msgstr "" msgid "Public" msgstr "Genel" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Sil" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Bu kullanıcıyı sil" @@ -7261,33 +7435,46 @@ msgstr "" msgid "Grant this user the \"%s\" role" msgstr "" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"1-64 küçük harf veya rakam, noktalama işaretlerine ve boşluklara izin " -"verilmez" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Engelle" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Bu kullanıcıyı engelle" + +#. TRANS: Field title on group edit form. #, fuzzy msgid "URL of the homepage or blog of the group or topic." msgstr "" "Web Sitenizin, blogunuzun ya da varsa başka bir sitedeki profilinizin adresi" +#. TRANS: Text area title for group description when there is no text limit. #, fuzzy -msgid "Describe the group or topic" +msgid "Describe the group or topic." msgstr "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. #, fuzzy, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın" +#. TRANS: Field title on group edit form. #, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "Bulunduğunuz yer, \"Şehir, Eyalet (veya Bölge), Ülke\" gibi" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Diğerisimler" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7297,6 +7484,27 @@ msgid_plural "" "aliases allowed." msgstr[0] "" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Üyelik başlangıcı" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Yönetici" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7321,6 +7529,21 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s grup üyeleri" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7499,35 +7722,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s %2$s'da durumunuzu takip ediyor" -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format -msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. #, fuzzy, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s %2$s durum mesajlarınızı takip etmeye başladı.\n" "\n" @@ -7536,12 +7746,26 @@ msgstr "" "Kendisini durumsuz bırakmayın!,\n" "%4$s.\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Profil" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, fuzzy, php-format msgid "Bio: %s" msgstr "Hakkında" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, fuzzy, php-format @@ -7557,10 +7781,7 @@ msgid "" "\n" "Send email to %2$s to post new messages.\n" "\n" -"More email instructions at %3$s.\n" -"\n" -"Faithfully yours,\n" -"%1$s" +"More email instructions at %3$s." msgstr "" #. TRANS: Subject line for SMS-by-email notification messages. @@ -7588,7 +7809,7 @@ msgstr "" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. +#. TRANS: %3$s is a URL to post notices at. #, php-format msgid "" "%1$s (%2$s) is wondering what you are up to these days and is inviting you " @@ -7598,10 +7819,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for direct-message notification email. @@ -7613,7 +7831,6 @@ msgstr "" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. #, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" @@ -7626,10 +7843,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" #. TRANS: Subject for favorite notification e-mail. @@ -7657,10 +7871,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. @@ -7678,14 +7889,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, #, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7701,12 +7911,32 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" +msgstr "" + +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s'in %2$s'deki durum mesajları " + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%2$s / %3$s tarafından favorilere eklenen %1$s güncellemeleri." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" msgstr "" msgid "Only the user can read their own mailboxes." @@ -7745,6 +7975,20 @@ msgstr "" msgid "Unsupported message type: %s" msgstr "Desteklenmeyen mesaj türü: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Kullanıcıyı grubun bir yöneticisi yap" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Yönetici Yap" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Bu kullanıcıyı yönetici yap" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "" @@ -8450,9 +8694,11 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Couldn't update user." -#~ msgstr "Kullanıcı güncellenemedi." - #, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "Kullanıcı kayıtları güncellenemedi." +#~ msgid "Notice" +#~ msgstr "Durum mesajları" + +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "" +#~ "1-64 küçük harf veya rakam, noktalama işaretlerine ve boşluklara izin " +#~ "verilmez" diff --git a/locale/uk/LC_MESSAGES/statusnet.po b/locale/uk/LC_MESSAGES/statusnet.po index 5f6861fa55..4527c0786c 100644 --- a/locale/uk/LC_MESSAGES/statusnet.po +++ b/locale/uk/LC_MESSAGES/statusnet.po @@ -12,18 +12,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:07+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:03+0000\n" "Language-Team: Ukrainian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: uk\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= " "2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -76,6 +76,8 @@ msgstr "Зберегти параметри доступу" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -83,6 +85,7 @@ msgstr "Зберегти параметри доступу" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "Зберегти" @@ -767,6 +770,7 @@ msgstr "Акаунт" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "Ім’я користувача" @@ -846,6 +850,7 @@ msgstr "Ви не можете видалити статус іншого кор #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "Такого допису немає." @@ -1059,6 +1064,103 @@ msgstr "API метод наразі знаходиться у розробці." msgid "User not found." msgstr "Сторінку не знайдено." +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "Ви повинні спочатку увійти на сайт, аби залишити спільноту." + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "Такої спільноти не існує." + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "Немає імені або ІД." + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "Не увійшли." + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "Загублений профіль." + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "Список учасників цієї спільноти." + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "Не вдалось долучити користувача %1$s до спільноти %2$s." + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s має статус на %2$s" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1133,36 +1235,6 @@ msgstr "Немає такого обраного допису." msgid "Cannot delete someone else's favorite." msgstr "Не вдається видалити допис з чужого списку обраних." -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "Такої спільноти не існує." - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "Не є учасником." @@ -1276,6 +1348,7 @@ msgstr "Перегляд" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "Видалити" @@ -1443,6 +1516,14 @@ msgstr "Розблокувати цього користувача" msgid "Post to %s" msgstr "Опублікувати в %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "%1$s залишив спільноту %2$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "Немає коду підтвердження." @@ -1501,6 +1582,7 @@ msgid "Notices" msgstr "Дописи" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1577,6 +1659,7 @@ msgstr "Додаток не виявлено." #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "Ви не є власником цього додатку." @@ -1611,12 +1694,6 @@ msgstr "Видалити додаток." msgid "You must be logged in to delete a group." msgstr "Ви повинні спочатку увійти на сайт, аби видалити спільноту." -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "Немає імені або ІД." - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "Вам не дозволено видаляти цю спільноту." @@ -1895,6 +1972,7 @@ msgid "You must be logged in to edit an application." msgstr "Ви маєте спочатку увійти, аби мати змогу керувати додатком." #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "Такого додатку немає." @@ -2111,6 +2189,7 @@ msgstr "Не можна полагодити цю поштову адресу." #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "Це недійсна електронна адреса." @@ -2479,33 +2558,26 @@ msgstr "Учасники спільноти %1$s, сторінка %2$d" msgid "A list of the users in this group." msgstr "Список учасників цієї спільноти." -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "Адмін" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "Блок" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "Учасники спільноти %s" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "Блокувати користувача" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "Учасники спільноти %1$s, сторінка %2$d" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "Надати користувачеві права адміністратора" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "Зробити адміном" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "Надати цьому користувачеві права адміністратора" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "Список учасників цієї спільноти." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2543,6 +2615,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "Створити нову спільноту" @@ -2919,21 +2992,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s приєднався до спільноти %2$s" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "Ви повинні спочатку увійти на сайт, аби залишити спільноту." +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "Невідома спільнота." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "Ви не є учасником цієї спільноти." -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "%1$s залишив спільноту %2$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3364,10 +3432,13 @@ msgid "Notice %s not found." msgstr "Допис %s не знайдено." #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "Допис не має профілю." #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s має статус на %2$s" @@ -3841,17 +3912,20 @@ msgstr "Інформація профілю" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1-64 рядкових літер і цифр, ніякої пунктуації або інтервалів." #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "Повне ім’я" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "Веб-сторінка" @@ -3882,6 +3956,7 @@ msgstr "Про себе" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "Розташування" @@ -3940,6 +4015,7 @@ msgstr[1] "Біографія надто довга (не більше %d сим msgstr[2] "Біографія надто довга (не більше %d символів)." #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "Часовий пояс не обрано." @@ -4651,68 +4727,103 @@ msgstr "Користувач не має цієї ролі." msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "Ви не можете нікого ізолювати на цьому сайті." +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "Користувача ізольовано доки набереться уму-розуму." -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Сесії" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "Налаштування сесії для даного сайту StatusNet" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Сесії" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "Сесії обробки даних" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "Обробка даних сесій самостійно." +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Сесія наладки" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "Виводити дані сесії наладки." -#. TRANS: Submit button title. -msgid "Save" -msgstr "Зберегти" - -msgid "Save site settings" -msgstr "Зберегти налаштування сайту" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" +msgstr "Зберегти параметри доступу" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "Ви повинні спочатку увійти, аби переглянути додаток." +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "Профіль додатку" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "Створено %1$s — %2$s доступ за замовч. — %3$d користувачів" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "Створено %1$s — %2$s доступ за замовч. — %3$d користувачів" +msgstr[1] "Створено %1$s — %2$s доступ за замовч. — %3$d користувачів" +msgstr[2] "Створено %1$s — %2$s доступ за замовч. — %3$d користувачів" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "Можливості додатку" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "Правка" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "Призначити новий ключ і таємне слово" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "Видалити" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "Інфо додатку" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "" "До уваги: Всі підписи шифруються за методом HMAC-SHA1. Ми не підтримуємо " "шифрування підписів відкритим текстом." +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "Ви впевнені, що бажаєте скинути ваш ключ споживача і секретний код?" @@ -4828,6 +4939,7 @@ msgstr "Всі учасники" msgid "Statistics" msgstr "Статистика" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "Створено" @@ -4871,7 +4983,9 @@ msgstr "" "програмному забезпеченні [StatusNet](http://status.net/). Учасники цієї " "спільноти роблять короткі дописи про своє життя та інтереси. " -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "Адміни" @@ -4895,13 +5009,12 @@ msgstr "Повідомлення до %1$s на %2$s" msgid "Message from %1$s on %2$s" msgstr "Повідомлення від %1$s на %2$s" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "Допис видалено." -msgid "Notice" -msgstr "Дописи" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "Дописи %1$s позначені теґом %2$s" @@ -4936,6 +5049,8 @@ msgstr "Стрічка дописів для %s (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "Стрічка дописів для %s (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "Стрічка дописів для %s (Atom)" @@ -5001,94 +5116,144 @@ msgstr "" msgid "Repeat of %s" msgstr "Повторення за %s" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "Ви не можете позбавляти користувачів права голосу на цьому сайті." +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "Користувачу наразі заклеїли рота скотчем." +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "Сайт" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "Основні налаштування цього сайту StatusNet" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "Ім’я сайту не може бути порожнім." +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "Електронна адреса має бути чинною." +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "Невідома мова «%s»." +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "Ліміт текстових повідомлень становить 0 (необмежено)." +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "" "Обмеження часу при повторному надісланні того самого повідомлення має " "становити одну і більше секунд." +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "Основні" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "Назва сайту" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Назва сайту, щось на зразок «Мікроблоґи компанії...»" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Надано" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "Текст використаний для посілань кредитів унизу кожної сторінки" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "Наданий URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "URL використаний для посілань кредитів унизу кожної сторінки" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "Пошта" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "Контактна електронна адреса для вашого сайту" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "Локаль" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "Часовий пояс за замовчуванням" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "Часовий пояс за замовчуванням для сайту; зазвичай UTC." +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "Мова за замовчуванням" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "" "Мова сайту на випадок, коли автовизначення мови за настройками браузера не " "доступно" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "Обмеження" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "Текстові обмеження" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "Максимальна кількість знаків у дописі (0 — необмежено)." +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "Часове обмеження" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "" "Як довго користувачі мають зачекати (в секундах) аби надіслати той самий " "допис ще раз." +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "Зберегти налаштування сайту" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "Повідомлення сайту" @@ -5290,6 +5455,10 @@ msgstr "Звітня URL-адреса" msgid "Snapshots will be sent to this URL" msgstr "Снепшоти надсилатимуться на цю URL-адресу" +#. TRANS: Submit button title. +msgid "Save" +msgstr "Зберегти" + msgid "Save snapshot settings" msgstr "Зберегти налаштування знімку" @@ -5632,6 +5801,7 @@ msgstr "" "підписуватись, то просто натисніть «Відмінити»." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "Погодитись" @@ -5641,6 +5811,7 @@ msgid "Subscribe to this user." msgstr "Підписатися до цього користувача." #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "Відхилити" @@ -6073,6 +6244,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6420,6 +6595,9 @@ msgstr "Немає можливості видалити налаштуванн msgid "Home" msgstr "Веб-сторінка" +msgid "Admin" +msgstr "Адмін" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "Основна конфігурація сайту" @@ -6459,6 +6637,10 @@ msgstr "Конфігурація шляху" msgid "Sessions configuration" msgstr "Конфігурація сесій" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Сесії" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "Редагувати повідомлення сайту" @@ -6562,6 +6744,7 @@ msgid "Describe your application" msgstr "Опишіть ваш додаток" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "Опис" @@ -6676,6 +6859,10 @@ msgstr "Блок" msgid "Block this user" msgstr "Блокувати користувача" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "Результати команди" @@ -6774,14 +6961,14 @@ msgid "Fullname: %s" msgstr "Повне ім’я: %s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "Розташування: %s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -7152,6 +7339,10 @@ msgstr "Помилка бази даних" msgid "Public" msgstr "Загал" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "Видалити" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "Видалити цього користувача" @@ -7278,31 +7469,46 @@ msgstr "Вперед" msgid "Grant this user the \"%s\" role" msgstr "Надати цьому користувачеві роль «%s»" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "" -"1-64 літери нижнього регістру і цифри, ніякої пунктуації або інтервалів" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "Блок" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "Блокувати користувача" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "URL-адреса веб-сторінки або тематичного блоґу спільноти" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "Опишіть спільноту або тему" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Опишіть спільноту або тему, вкладаючись у %d знак" msgstr[1] "Опишіть спільноту або тему, вкладаючись у %d знаків" msgstr[2] "Опишіть спільноту або тему, вкладаючись у %d знаків" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "" "Розташування спільноти, на кшталт «Місто, область (або регіон), країна»." +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "Додаткові імена" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7320,6 +7526,27 @@ msgstr[2] "" "Додаткові імена для спільноти, відокремлювати комами або пробілами, максимум " "— %d імен." +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "Реєстрація" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "Адмін" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7344,6 +7571,23 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "Учасники спільноти %s" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "Учасники спільноти %s" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7542,38 +7786,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s тепер слідкує за вашими дописами на %2$s." -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"Якщо ви вважаєте, що цей акаунт використовується неправомірно, ви можете " -"заблокувати його у списку своїх читачів і повідомити адміністраторів сайту " -"про факт спаму на %s" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s тепер слідкує за вашими дописами на %2$s.\n" "\n" @@ -7586,12 +7814,29 @@ msgstr "" "----\n" "Змінити електронну адресу або умови сповіщення — %7$s\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "Профіль" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "Про себе: %s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"Якщо ви вважаєте, що цей акаунт використовується неправомірно, ви можете " +"заблокувати його у списку своїх читачів і повідомити адміністраторів сайту " +"про факт спаму на %s" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7601,16 +7846,13 @@ msgstr "Нова електронна адреса для надсилання #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "Ви маєте нову електронну адресу для надсилання дописів на %1$s.\n" "\n" @@ -7647,8 +7889,8 @@ msgstr "Вас спробував «розштовхати» %s" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7657,10 +7899,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) цікавиться як ваші справи останнім часом і пропонує про це " "написати.\n" @@ -7683,8 +7922,7 @@ msgstr "Нове приватне повідомлення від %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7696,10 +7934,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) надіслав(ла) вам приватне повідомлення:\n" "\n" @@ -7727,7 +7962,7 @@ msgstr "%1$s (@%2$s) додав(ла) ваш допис обраних" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7741,10 +7976,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) щойно додав(ла) ваш допис %2$s до обраних.\n" "\n" @@ -7781,14 +8013,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) пропонує до вашої уваги наступний допис" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7804,12 +8035,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) щойно надіслав(ла) вам повідомлення («@-відповідь») на %2$s.\n" "\n" @@ -7834,6 +8060,31 @@ msgstr "" "\n" "P.S. Ви можете вимкнути сповіщення електронною поштою тут: %8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s долучився до спільноти %2$s." + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s долучився до спільноти %2$s." + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "" "Лише користувач має можливість переглядати свою власну поштову скриньку." @@ -7875,6 +8126,20 @@ msgstr "" msgid "Unsupported message type: %s" msgstr "Формат повідомлення не підтримується: %s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "Надати користувачеві права адміністратора" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "Зробити адміном" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "Надати цьому користувачеві права адміністратора" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "Виникла помилка під час завантаження вашого файлу. Спробуйте ще." @@ -8574,9 +8839,9 @@ msgstr "Неправильний XML, корінь XRD відсутній." msgid "Getting backup from file '%s'." msgstr "Отримання резервної копії файлу «%s»." -#~ msgid "Couldn't update user." -#~ msgstr "Не вдалося оновити користувача." +#~ msgid "Notice" +#~ msgstr "Дописи" -#~ msgid "Couldn't update user im prefs." +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" #~ msgstr "" -#~ "Не вдалося оновити користувацькі налаштування служби миттєвих повідомлень." +#~ "1-64 літери нижнього регістру і цифри, ніякої пунктуації або інтервалів" diff --git a/locale/zh_CN/LC_MESSAGES/statusnet.po b/locale/zh_CN/LC_MESSAGES/statusnet.po index 5f85813e48..f9c15d1546 100644 --- a/locale/zh_CN/LC_MESSAGES/statusnet.po +++ b/locale/zh_CN/LC_MESSAGES/statusnet.po @@ -15,18 +15,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:08+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:05+0000\n" "Language-Team: Simplified Chinese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: zh-hans\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-17 13:01:02+0000\n" +"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -77,6 +77,8 @@ msgstr "保存访问设置" #. TRANS: Button text in the license admin panel. #. TRANS: Button text to store form data in the Paths admin panel. #. TRANS: Button to save input in profile settings. +#. TRANS: Submit button text on the sessions administration panel. +#. TRANS: Button text for saving site settings. #. TRANS: Button text for saving site notice in admin panel. #. TRANS: Button label to save SMS preferences. #. TRANS: Save button for settings for a profile in a subscriptions list. @@ -84,6 +86,7 @@ msgstr "保存访问设置" #. TRANS: Button text to save user settings in user admin panel. #. TRANS: Button label in the "Edit application" form. #. TRANS: Button text on profile design page to save settings. +#. TRANS: Text for save button on group edit form. msgctxt "BUTTON" msgid "Save" msgstr "保存" @@ -738,6 +741,7 @@ msgstr "帐号" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Label for nickname on user authorisation page. +#. TRANS: Field label on group edit form. msgid "Nickname" msgstr "昵称" @@ -813,6 +817,7 @@ msgstr "你不能删除其他用户的消息。" #. TRANS: Client error displayed trying to display redents of a non-exiting notice. #. TRANS: Client exception thrown when referencing a non-existing notice. #. TRANS: Error message displayed trying to delete a non-existing notice. +#. TRANS: Client error displayed trying to show a non-existing notice. msgid "No such notice." msgstr "没有这条消息。" @@ -1016,6 +1021,103 @@ msgstr "API 方法尚未实现。" msgid "User not found." msgstr "API方法没有找到。" +#. TRANS: Client error displayed when trying to leave a group while not logged in. +msgid "You must be logged in to leave a group." +msgstr "你必须登录才能离开小组。" + +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client exception thrown when referencing a non-existing group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. +#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error when trying to delete a non-local group. +#. TRANS: Client error when trying to delete a non-existing group. +#. TRANS: Client error displayed trying to edit a non-existing group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. +#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. +#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. +#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. +#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. +#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when trying to view group members for a non-existing group. +#. TRANS: Client error displayed when trying to view group members for an object that is not a group. +#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. +#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. +#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. +#. TRANS: Client error displayed when trying to join a non-local group. +#. TRANS: Client error displayed when trying to join a non-existing group. +#. TRANS: Client error displayed when trying to leave a non-local group. +#. TRANS: Client error displayed when trying to leave a non-existing group. +#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. +#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. +#. TRANS: Client error displayed if no local group with a given name was found requesting group page. +#. TRANS: Command exception text shown when a group is requested that does not exist. +#. TRANS: Error text shown when trying to leave a group that does not exist. +msgid "No such group." +msgstr "没有这个组。" + +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. +#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. +#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. +msgid "No nickname or ID." +msgstr "没有昵称或 ID。" + +#. TRANS: Client error displayed trying to approve group membership while not logged in. +#. TRANS: Client error displayed when trying to leave a group while not logged in. +#, fuzzy +msgid "Must be logged in." +msgstr "未登录。" + +#. TRANS: Client error displayed trying to approve group membership while not a group administrator. +#. TRANS: Client error displayed when trying to approve or cancel a group join request without +#. TRANS: being a group administrator. +msgid "Only group admin can approve or cancel join requests." +msgstr "" + +#. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. +#, fuzzy +msgid "Must specify a profile." +msgstr "丢失的个人信息。" + +#. TRANS: Client error displayed trying to approve group membership for a non-existing request. +#. TRANS: Client error displayed when trying to approve a non-existing group join request. +#. TRANS: %s is a user nickname. +#, fuzzy, php-format +msgid "%s is not in the moderation queue for this group." +msgstr "该小组的成员列表。" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received neither cancel nor abort." +msgstr "" + +#. TRANS: Client error displayed trying to approve/deny group membership. +msgid "Internal error: received both cancel and abort." +msgstr "" + +#. TRANS: Server error displayed when cancelling a queued group join request fails. +#. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. +#, fuzzy, php-format +msgid "Could not cancel request for user %1$s to join group %2$s." +msgstr "无法把用户%1$s添加到%2$s小组" + +#. TRANS: Title for leave group page after group join request is approved/disapproved. +#, fuzzy, php-format +msgctxt "TITLE" +msgid "%1$s's request for %2$s" +msgstr "%1$s在%2$s时发的消息" + +msgid "Join request approved." +msgstr "" + +msgid "Join request canceled." +msgstr "" + #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. #. TRANS: Client error displayed trying to subscribe to a non-existing profile. @@ -1091,36 +1193,6 @@ msgstr "没有这种喜欢。" msgid "Cannot delete someone else's favorite." msgstr "不能删除其他人的最爱。" -#. TRANS: Client exception thrown when referencing a non-existing group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-local group. -#. TRANS: Client error displayed when requesting a list of blocked users for a non-existing group. -#. TRANS: Client error when trying to delete a non-local group. -#. TRANS: Client error when trying to delete a non-existing group. -#. TRANS: Client error displayed trying to edit a non-existing group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed without providing a group nickname. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a non-local group. -#. TRANS: Client error displayed when requesting Friends of a Friend feed for a nickname that is not a group. -#. TRANS: Client error displayed trying to block a user from a group while specifying a non-existing group. -#. TRANS: Client error displayed referring to a group's permalink for a non-existing group ID. -#. TRANS: Client error displayed trying to change group design settings while providing a nickname for a non-existing group. -#. TRANS: Client error displayed when trying to update logo settings for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for a non-existing group. -#. TRANS: Client error displayed when trying to view group members for an object that is not a group. -#. TRANS: Client error displayed when requesting a group RSS feed for group that does not exist. -#. TRANS: Client error displayed when requesting a group RSS feed for an object that is not a group. -#. TRANS: Client error displayed when trying to unblock a user from a non-existing group. -#. TRANS: Client error displayed when trying to join a non-local group. -#. TRANS: Client error displayed when trying to join a non-existing group. -#. TRANS: Client error displayed when trying to leave a non-local group. -#. TRANS: Client error displayed when trying to leave a non-existing group. -#. TRANS: Client error displayed when providing an invalid group ID on the Make Admin page. -#. TRANS: Client error displayed if no remote group with a given name was found requesting group page. -#. TRANS: Client error displayed if no local group with a given name was found requesting group page. -#. TRANS: Command exception text shown when a group is requested that does not exist. -#. TRANS: Error text shown when trying to leave a group that does not exist. -msgid "No such group." -msgstr "没有这个组。" - #. TRANS: Client exception thrown when trying to show membership of a non-subscribed group msgid "Not a member." msgstr "不是会员。" @@ -1234,6 +1306,7 @@ msgstr "预览" #. TRANS: Button on avatar upload page to delete current avatar. #. TRANS: Button text for user account deletion. +#. TRANS: Submit button text the OAuth application page to delete an application. msgctxt "BUTTON" msgid "Delete" msgstr "删除" @@ -1395,6 +1468,14 @@ msgstr "取消屏蔽这个用户。" msgid "Post to %s" msgstr "发布到 %s" +#. TRANS: Title for leave group page after leaving. +#. TRANS: %s$s is the leaving user's name, %2$s is the group name. +#. TRANS: Title for leave group page after leaving. +#, php-format +msgctxt "TITLE" +msgid "%1$s left group %2$s" +msgstr "离开 %2$s 组的 %1$s" + #. TRANS: Client error displayed when not providing a confirmation code in the contact address confirmation action. msgid "No confirmation code." msgstr "没有确认码" @@ -1453,6 +1534,7 @@ msgid "Notices" msgstr "消息" #. TRANS: Title for conversation page. +#. TRANS: Title for page that shows a notice. #, fuzzy msgctxt "TITLE" msgid "Notice" @@ -1524,6 +1606,7 @@ msgstr "未找到应用。" #. TRANS: Client error displayed trying to delete an application the current user does not own. #. TRANS: Client error displayed trying to edit an application while not being its owner. +#. TRANS: Client error displayed trying to display an OAuth application for which the logged in user is not the owner. msgid "You are not the owner of this application." msgstr "你不是该应用的拥有者。" @@ -1557,12 +1640,6 @@ msgstr "删除此应用程序。" msgid "You must be logged in to delete a group." msgstr "你必须登录才能删除小组。" -#. TRANS: Client error when trying to delete a group without providing a nickname or ID for the group. -#. TRANS: Client error displayed when trying to join a group without providing a group name or group ID. -#. TRANS: Client error displayed when trying to leave a group without providing a group name or group ID. -msgid "No nickname or ID." -msgstr "没有昵称或 ID。" - #. TRANS: Client error when trying to delete a group without having the rights to delete it. msgid "You are not allowed to delete this group." msgstr "你不能删除这个小组。" @@ -1837,6 +1914,7 @@ msgid "You must be logged in to edit an application." msgstr "你必须登录后才能编辑应用。" #. TRANS: Client error displayed trying to edit an application that does not exist. +#. TRANS: Client error displayed trying to display a non-existing OAuth application. msgid "No such application." msgstr "没有这个应用。" @@ -2052,6 +2130,7 @@ msgstr "无法识别此电子邮件。" #. TRANS: Message given saving e-mail address that not valid. #. TRANS: Form validation error displayed when trying to register without a valid e-mail address. +#. TRANS: Client error displayed trying to save site settings without a valid contact address. msgid "Not a valid email address." msgstr "不是有效的电子邮件。" @@ -2409,33 +2488,26 @@ msgstr "%s 的小组成员,第%2$d页" msgid "A list of the users in this group." msgstr "该小组的成员列表。" -#. TRANS: Indicator in group members list that this user is a group administrator. -msgid "Admin" -msgstr "管理" +#. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. +msgid "Only the group admin may approve users." +msgstr "" -#. TRANS: Button text for the form that will block a user from a group. -msgctxt "BUTTON" -msgid "Block" -msgstr "屏蔽" +#. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %s is the name of the group. +#, fuzzy, php-format +msgid "%s group members awaiting approval" +msgstr "%s 组成员身份" -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Block this user" -msgstr "屏蔽这个用户" +#. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. +#. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. +#, fuzzy, php-format +msgid "%1$s group members awaiting approval, page %2$d" +msgstr "%s 的小组成员,第%2$d页" -#. TRANS: Form legend for form to make a user a group admin. -msgid "Make user an admin of the group" -msgstr "使用户成为小组的管理员" - -#. TRANS: Button text for the form that will make a user administrator. -msgctxt "BUTTON" -msgid "Make Admin" -msgstr "设置管理员" - -#. TRANS: Submit button title. -msgctxt "TOOLTIP" -msgid "Make this user an admin" -msgstr "将这个用户设为管理员" +#. TRANS: Page notice for group members page. +#, fuzzy +msgid "A list of users awaiting approval to join this group." +msgstr "该小组的成员列表。" #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2472,6 +2544,7 @@ msgstr "" #. TRANS: Link to create a new group on the group list page. #. TRANS: Link text on group page to create a new group. +#. TRANS: Form legend for group edit form. msgid "Create a new group" msgstr "新建一个小组" @@ -2834,21 +2907,16 @@ msgctxt "TITLE" msgid "%1$s joined group %2$s" msgstr "%1$s 加入 %2$s 组" -#. TRANS: Client error displayed when trying to leave a group while not logged in. -msgid "You must be logged in to leave a group." -msgstr "你必须登录才能离开小组。" +#. TRANS: Exception thrown when there is an unknown error joining a group. +#, fuzzy +msgid "Unknown error joining group." +msgstr "未知的组。" #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. msgid "You are not a member of that group." msgstr "你不是该群小组成员。" -#. TRANS: Title for leave group page after leaving. -#, php-format -msgctxt "TITLE" -msgid "%1$s left group %2$s" -msgstr "离开 %2$s 组的 %1$s" - #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" @@ -3267,10 +3335,13 @@ msgid "Notice %s not found." msgstr "找不到 %s 的通知。" #. TRANS: Server error displayed in oEmbed action when notice has not profile. +#. TRANS: Server error displayed trying to show a notice without a connected profile. msgid "Notice has no profile." msgstr "消息没有对应用户。" #. TRANS: oEmbed title. %1$s is the author name, %2$s is the creation date. +#. TRANS: Title of the page that shows a notice. +#. TRANS: %1$s is a user name, %2$s is the notice creation date/time. #, php-format msgid "%1$s's status on %2$s" msgstr "%1$s在%2$s时发的消息" @@ -3746,17 +3817,20 @@ msgstr "个人信息" #. TRANS: Tooltip for field label in form for profile settings. #. TRANS: Field title on account registration page. +#. TRANS: Field title on group edit form. msgid "1-64 lowercase letters or numbers, no punctuation or spaces." msgstr "1 到 64 个小写字母或数字,不包含标点或空格。" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Full name" msgstr "全名" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. #. TRANS: Form input field label. +#. TRANS: Field label on group edit form; points to "more info" for a group. msgid "Homepage" msgstr "主页" @@ -3785,6 +3859,7 @@ msgstr "自述" #. TRANS: Field label in form for profile settings. #. TRANS: Field label on account registration page. +#. TRANS: Field label on group edit form. msgid "Location" msgstr "位置" @@ -3839,6 +3914,7 @@ msgid_plural "Bio is too long (maximum %d characters)." msgstr[0] "自述过长(不能超过%d个字符)。" #. TRANS: Validation error in form for profile settings. +#. TRANS: Client error displayed trying to save site settings without a timezone. msgid "Timezone not selected." msgstr "未选择时区。" @@ -4519,66 +4595,99 @@ msgstr "用户没有此权限。" msgid "StatusNet" msgstr "StatusNet" +#. TRANS: Client error displayed trying to sandbox users on a site where the feature is not enabled. msgid "You cannot sandbox users on this site." msgstr "你不能在这个网站授予用户权限。" +#. TRANS: Client error displayed trying to sandbox an already sandboxed user. msgid "User is already sandboxed." msgstr "用于已经在沙盒中了。" -#. TRANS: Menu item for site administration +#. TRANS: Title for the sessions administration panel. +#, fuzzy +msgctxt "TITLE" msgid "Sessions" msgstr "Sessions" +#. TRANS: Instructions for the sessions administration panel. msgid "Session settings for this StatusNet site" msgstr "这个 StatusNet 网站的 session 设置" +#. TRANS: Fieldset legend on the sessions administration panel. +#, fuzzy +msgctxt "LEGEND" +msgid "Sessions" +msgstr "Sessions" + +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. msgid "Handle sessions" msgstr "管理 sessions" -msgid "Whether to handle sessions ourselves." +#. TRANS: Checkbox title on the sessions administration panel. +#. TRANS: Indicates if StatusNet should handle session administration. +#, fuzzy +msgid "Handle sessions ourselves." msgstr "是否自己处理sessions。" +#. TRANS: Checkbox label on the sessions administration panel. +#. TRANS: Indicates if StatusNet should write session debugging output. msgid "Session debugging" msgstr "Session 调试" -msgid "Turn on debugging output for sessions." +#. TRANS: Checkbox title on the sessions administration panel. +#, fuzzy +msgid "Enable debugging output for sessions." msgstr "打开 sessions 的调试输出。" -#. TRANS: Submit button title. -msgid "Save" -msgstr "保存" - -msgid "Save site settings" +#. TRANS: Title for submit button on the sessions administration panel. +#, fuzzy +msgid "Save session settings" msgstr "保存访问设置" +#. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." msgstr "你必须登录才能创建小组。" +#. TRANS: Header on the OAuth application page. msgid "Application profile" msgstr "未找到应用。" -#, php-format -msgid "Created by %1$s - %2$s access by default - %3$d users" -msgstr "由%1$s创建 - 默认访问权限%2$s - %3$d个用户" +#. TRANS: Information output on an OAuth application page. +#. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", +#. TRANS: %3$d is the number of users using the OAuth application. +#, fuzzy, php-format +msgid "Created by %1$s - %2$s access by default - %3$d user" +msgid_plural "Created by %1$s - %2$s access by default - %3$d users" +msgstr[0] "由%1$s创建 - 默认访问权限%2$s - %3$d个用户" +#. TRANS: Header on the OAuth application page. msgid "Application actions" msgstr "应用程序动作" +#. TRANS: Link text to edit application on the OAuth application page. +#, fuzzy +msgctxt "EDITAPP" +msgid "Edit" +msgstr "编辑" + +#. TRANS: Button text on the OAuth application page. +#. TRANS: Resets the OAuth consumer key and secret. msgid "Reset key & secret" msgstr "重置key和secret" -#. TRANS: Title of form for deleting a user. -msgid "Delete" -msgstr "删除" - +#. TRANS: Header on the OAuth application page. msgid "Application info" msgstr "应用程序信息" +#. TRANS: Note on the OAuth application page about signature support. +#, fuzzy msgid "" -"Note: We support HMAC-SHA1 signatures. We do not support the plaintext " -"signature method." +"Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " +"not supported." msgstr "提示:我们支持HMAC-SHA1签名。我们不支持明文的签名方法。" +#. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" msgstr "你确定要重置你的consumer key和secret吗?" @@ -4690,6 +4799,7 @@ msgstr "所有成员" msgid "Statistics" msgstr "统计" +#. TRANS: Label for group creation date. msgctxt "LABEL" msgid "Created" msgstr "已创建" @@ -4732,7 +4842,9 @@ msgstr "" "E5%BE%AE%E5%8D%9A%E5%AE%A2)。%%%%site.name%%%%的用户分享关于他们生活和各种兴" "趣的消息。" -#. TRANS: Header for list of group administrators on a group page (h2). +#. TRANS: Title for list of group administrators on a group page. +#, fuzzy +msgctxt "TITLE" msgid "Admins" msgstr "管理员" @@ -4756,13 +4868,12 @@ msgstr "发送给 %1$s 的 %2$s 消息" msgid "Message from %1$s on %2$s" msgstr "来自 %1$s 的 %2$s 消息" +#. TRANS: Client error displayed trying to show a deleted notice. msgid "Notice deleted." msgstr "消息已删除" -msgid "Notice" -msgstr "消息" - -#. TRANS: Page title showing tagged notices in one user's stream. %1$s is the username, %2$s is the hash tag. +#. TRANS: Page title showing tagged notices in one user's stream. +#. TRANS: %1$s is the username, %2$s is the hash tag. #, php-format msgid "%1$s tagged %2$s" msgstr "%1$s 的标签 %2$s" @@ -4797,6 +4908,8 @@ msgstr "%s的消息聚合 (RSS 1.0)" msgid "Notice feed for %s (RSS 2.0)" msgstr "%s的消息聚合 (RSS 2.0)" +#. TRANS: Title for link to notice feed. +#. TRANS: %s is a user nickname. #, php-format msgid "Notice feed for %s (Atom)" msgstr "%s的消息聚合 (Atom)" @@ -4859,88 +4972,138 @@ msgstr "" msgid "Repeat of %s" msgstr "%s 的转发" +#. TRANS: Client error displayed trying to silence a user on a site where the feature is not enabled. msgid "You cannot silence users on this site." msgstr "你不能在这个站点上将用户禁言。" +#. TRANS: Client error displayed trying to silence an already silenced user. msgid "User is already silenced." msgstr "用户已经被禁言。" +#. TRANS: Title for site administration panel. +#, fuzzy +msgctxt "TITLE" +msgid "Site" +msgstr "网站" + +#. TRANS: Instructions for site administration panel. msgid "Basic settings for this StatusNet site" msgstr "这个 StatusNet 网站的基本设置" +#. TRANS: Client error displayed trying to save an empty site name. msgid "Site name must have non-zero length." msgstr "网站名称长度必须大于零。" +#. TRANS: Client error displayed trying to save site settings without a contact address. msgid "You must have a valid contact email address." msgstr "你必须有一个有效的 email 地址。" +#. TRANS: Client error displayed trying to save site settings with an invalid language code. +#. TRANS: %s is the invalid language code. #, php-format msgid "Unknown language \"%s\"." msgstr "未知的语言“%s”" +#. TRANS: Client error displayed trying to save site settings with a text limit below 0. msgid "Minimum text limit is 0 (unlimited)." msgstr "最短的文字限制为0(没有限制)。" +#. TRANS: Client error displayed trying to save site settings with a text limit below 1. msgid "Dupe limit must be one or more seconds." msgstr "防刷新限制至少要1秒或者更长。" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "General" msgstr "一般" +#. TRANS: Field label on site settings panel. +#, fuzzy +msgctxt "LABEL" msgid "Site name" msgstr "网站名称" -msgid "The name of your site, like \"Yourcompany Microblog\"" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "你的网站名称,例如\\\"你公司网站的微博\\\"" +#. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "提供商" -msgid "Text used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Text used for credits link in footer of each page." msgstr "用于每页页脚的 credits 链接文字" +#. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "提供商 URL" -msgid "URL used for credits link in footer of each page" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "URL used for credits link in footer of each page." msgstr "用于每页页脚的 credits URL" +#. TRANS: Field label on site settings panel. msgid "Email" msgstr "电子邮件" -msgid "Contact email address for your site" +#. TRANS: Field title on site settings panel. +#, fuzzy +msgid "Contact email address for your site." msgstr "网站的联系我们电子邮件地址" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Local" msgstr "本地" +#. TRANS: Dropdown label on site settings panel. msgid "Default timezone" msgstr "默认时区" +#. TRANS: Dropdown title on site settings panel. msgid "Default timezone for the site; usually UTC." msgstr "默认的网站时区;通常使用 UTC。" +#. TRANS: Dropdown label on site settings panel. msgid "Default language" msgstr "默认语言" +#. TRANS: Dropdown title on site settings panel. msgid "Site language when autodetection from browser settings is not available" msgstr "当从浏览器自动获取语言不可用时网站的语言" +#. TRANS: Fieldset legend on site settings panel. +#, fuzzy +msgctxt "LEGEND" msgid "Limits" msgstr "限制" +#. TRANS: Field label on site settings panel. msgid "Text limit" msgstr "文字限制" +#. TRANS: Field title on site settings panel. msgid "Maximum number of characters for notices." msgstr "消息最长的字符数。" +#. TRANS: Field label on site settings panel. msgid "Dupe limit" msgstr "防刷新限制" +#. TRANS: Field title on site settings panel. msgid "How long users must wait (in seconds) to post the same thing again." msgstr "用户再次发布相同内容时需要等待的时间(秒)。" +#. TRANS: Button title for saving site settings. +msgid "Save site settings" +msgstr "保存访问设置" + #. TRANS: Page title for site-wide notice tab in admin panel. msgid "Site Notice" msgstr "网站公告" @@ -5137,6 +5300,10 @@ msgstr "报告 URL" msgid "Snapshots will be sent to this URL" msgstr "快照将被发送到这个 URL" +#. TRANS: Submit button title. +msgid "Save" +msgstr "保存" + msgid "Save snapshot settings" msgstr "保存访问设置" @@ -5469,6 +5636,7 @@ msgstr "" "阅,请单击\"拒绝\"。" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to accept a group membership request on approve group form. msgctxt "BUTTON" msgid "Accept" msgstr "接受" @@ -5478,6 +5646,7 @@ msgid "Subscribe to this user." msgstr "订阅此用户。" #. TRANS: Button text on Authorise Subscription page. +#. TRANS: Submit button text to reject a group membership request on approve group form. msgctxt "BUTTON" msgid "Reject" msgstr "拒绝" @@ -5881,6 +6050,10 @@ msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "%1$s (%2$s)" +#. TRANS: Exception thrown trying to approve a non-existing group join request. +msgid "Invalid group join approval: not pending." +msgstr "" + #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). #, php-format @@ -6225,6 +6398,9 @@ msgstr "无法删除外观设置。" msgid "Home" msgstr "主页" +msgid "Admin" +msgstr "管理" + #. TRANS: Menu item title/tooltip msgid "Basic site configuration" msgstr "基本网站配置" @@ -6264,6 +6440,10 @@ msgstr "路径配置" msgid "Sessions configuration" msgstr "会话配置" +#. TRANS: Menu item for site administration +msgid "Sessions" +msgstr "Sessions" + #. TRANS: Menu item title/tooltip msgid "Edit site notice" msgstr "编辑网站消息" @@ -6364,6 +6544,7 @@ msgid "Describe your application" msgstr "描述你的应用" #. TRANS: Form input field label. +#. TRANS: Text area label on group edit form; contains description of group. msgid "Description" msgstr "描述" @@ -6477,6 +6658,10 @@ msgstr "屏蔽" msgid "Block this user" msgstr "屏蔽这个用户" +#. TRANS: Submit button text on form to cancel group join request. +msgid "BUTTON" +msgstr "" + #. TRANS: Title for command results. msgid "Command results" msgstr "执行结果" @@ -6576,14 +6761,14 @@ msgid "Fullname: %s" msgstr "全名:%s" #. TRANS: Whois output. %s is the location of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a location. #, php-format msgid "Location: %s" msgstr "位置:%s" #. TRANS: Whois output. %s is the homepage of the queried user. -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a homepage. #, php-format msgid "Homepage: %s" @@ -6931,6 +7116,10 @@ msgstr "数据库错误" msgid "Public" msgstr "公共" +#. TRANS: Title of form for deleting a user. +msgid "Delete" +msgstr "删除" + #. TRANS: Description of form for deleting a user. msgid "Delete this user" msgstr "删除这个用户" @@ -7058,27 +7247,43 @@ msgstr "执行" msgid "Grant this user the \"%s\" role" msgstr "给这个用户添加\\\"%s\\\"权限" -msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -msgstr "1 到 64 个小写字母或数字,不包含标点或空格" +#. TRANS: Button text for the form that will block a user from a group. +msgctxt "BUTTON" +msgid "Block" +msgstr "屏蔽" +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Block this user" +msgstr "屏蔽这个用户" + +#. TRANS: Field title on group edit form. msgid "URL of the homepage or blog of the group or topic." msgstr "这个小组或主题的主页或博客 URL。" -msgid "Describe the group or topic" +#. TRANS: Text area title for group description when there is no text limit. +#, fuzzy +msgid "Describe the group or topic." msgstr "小组或主题的描述" -#, php-format -msgid "Describe the group or topic in %d character or less" -msgid_plural "Describe the group or topic in %d characters or less" +#. TRANS: Text area title for group description. +#. TRANS: %d is the number of characters available for the description. +#, fuzzy, php-format +msgid "Describe the group or topic in %d character or less." +msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "用不超过%d个字符描述下这个小组或者主题" +#. TRANS: Field title on group edit form. msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." msgstr "小组的地理位置,例如“国家、省份、城市”。" +#. TRANS: Field label on group edit form. msgid "Aliases" msgstr "别名" +#. TRANS: Input field title for group aliases. +#. TRANS: %d is the maximum number of group aliases available. #, php-format msgid "" "Extra nicknames for the group, separated with commas or spaces. Maximum %d " @@ -7088,6 +7293,27 @@ msgid_plural "" "aliases allowed." msgstr[0] "该小组额外的昵称,用逗号或者空格分隔开,最多%d个别名。" +#. TRANS: Dropdown fieldd label on group edit form. +#, fuzzy +msgid "Membership policy" +msgstr "注册时间" + +msgid "Open to all" +msgstr "" + +msgid "Admin must approve all members" +msgstr "" + +#. TRANS: Dropdown field title on group edit form. +msgid "Whether admin approval is required to join this group." +msgstr "" + +#. TRANS: Indicator in group members list that this user is a group administrator. +#, fuzzy +msgctxt "GROUPADMIN" +msgid "Admin" +msgstr "管理" + #. TRANS: Menu item in the group navigation page. msgctxt "MENU" msgid "Group" @@ -7112,6 +7338,21 @@ msgctxt "TOOLTIP" msgid "%s group members" msgstr "%s 小组成员" +#. TRANS: Menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %d is the number of pending members. +#, php-format +msgctxt "MENU" +msgid "Pending members (%d)" +msgid_plural "Pending members (%d)" +msgstr[0] "" + +#. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. +#. TRANS: %s is the nickname of the group. +#, fuzzy, php-format +msgctxt "TOOLTIP" +msgid "%s pending members" +msgstr "%s 的小组成员" + #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" msgid "Blocked" @@ -7297,37 +7538,22 @@ msgstr "" #. TRANS: Subject of new-subscriber notification e-mail. #. TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. +#. TRANS: Main body of new-subscriber notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. #, php-format msgid "%1$s is now listening to your notices on %2$s." msgstr "%1$s 开始关注你在 %2$s 的消息。" -#. TRANS: This is a paragraph in a new-subscriber e-mail. -#. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, php-format +#. TRANS: Common footer block for StatusNet notification emails. +#. TRANS: %1$s is the StatusNet sitename, +#. TRANS: %2$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format msgid "" -"If you believe this account is being used abusively, you can block them from " -"your subscribers list and report as spam to site administrators at %s" -msgstr "" -"如果你认为此帐户正被人恶意使用,你可以将其从你的关注者中屏蔽掉并到 %s 报告给" -"网站的管理员为他们在发垃圾信息。" - -#. TRANS: Main body of new-subscriber notification e-mail. -#. TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename, -#. TRANS: %3$s is the subscriber's profile URL, %4$s is the subscriber's location (or empty) -#. TRANS: %5$s is the subscriber's homepage URL (or empty), %6%s is the subscriber's bio (or empty) -#. TRANS: %7$s is a link to the addressed user's e-mail settings. -#, 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" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Change your email address or notification options at %7$s\n" +"Change your email address or notification options at %2$s" msgstr "" "%1$s开始关注你在%2$s的消息。\n" "\n" @@ -7340,12 +7566,28 @@ msgstr "" "----\n" "在%7$s更改你的 email 地址或通知选项\n" -#. TRANS: Profile info line in new-subscriber notification e-mail. +#. TRANS: Profile info line in notification e-mail. +#. TRANS: %s is a URL. +#, fuzzy, php-format +msgid "Profile: %s" +msgstr "个人信息" + +#. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. #, php-format msgid "Bio: %s" msgstr "自我介绍:%s" +#. TRANS: This is a paragraph in a new-subscriber e-mail. +#. TRANS: %s is a URL where the subscriber can be reported as abusive. +#, fuzzy, php-format +msgid "" +"If you believe this account is being used abusively, you can block them from " +"your subscribers list and report as spam to site administrators at %s." +msgstr "" +"如果你认为此帐户正被人恶意使用,你可以将其从你的关注者中屏蔽掉并到 %s 报告给" +"网站的管理员为他们在发垃圾信息。" + #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. #, php-format @@ -7355,16 +7597,13 @@ msgstr "新的电子邮件地址,用于发布 %s 信息" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, php-format +#, fuzzy, 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" -"%1$s" +"More email instructions at %3$s." msgstr "" "你的 %1$s 发布用地址已更新。\n" "\n" @@ -7400,8 +7639,8 @@ msgstr "您被 %s 已推动" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, -#. TRANS: %3$s is a URL to post notices at, %4$s is the StatusNet sitename. -#, php-format +#. TRANS: %3$s is a URL to post notices at. +#, fuzzy, 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" @@ -7410,10 +7649,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) 想知道你这几天在做什么并邀请你来发布一些消息。\n" "\n" @@ -7435,8 +7671,7 @@ msgstr "来自%s的私信" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#. TRANS: %5$s is the StatusNet sitename. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7448,10 +7683,7 @@ msgid "" "\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" +"Don't reply to this email; it won't get to them." msgstr "" "%1$s (%2$s) 给你发了一条私信“:\n" "\n" @@ -7479,7 +7711,7 @@ msgstr "%1$s (@%2$s) 收藏了你的消息" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, php-format +#, fuzzy, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7493,10 +7725,7 @@ msgid "" "\n" "You can see the list of %1$s's favorites here:\n" "\n" -"%5$s\n" -"\n" -"Faithfully yours,\n" -"%6$s\n" +"%5$s" msgstr "" "%1$s (@%7$s) 刚刚在 %2$s 收藏了一条你的消息。\n" "\n" @@ -7533,14 +7762,13 @@ msgid "%1$s (@%2$s) sent a notice to your attention" msgstr "%1$s (@%2$s) 给你发送了一条消息" #. TRANS: Body of @-reply notification e-mail. -#. TRANS: %1$s is the sending user's long name, $2$s is the StatusNet sitename, +#. TRANS: %1$s is the sending user's name, $2$s is the StatusNet sitename, #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), -#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replied for the addressed user, -#. TRANS: %8$s is a URL to the addressed user's e-mail settings, %9$s is the sender's nickname. -#, php-format +#. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, +#, fuzzy, php-format msgid "" -"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n" +"%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" "The notice is here:\n" "\n" @@ -7556,12 +7784,7 @@ msgid "" "\n" "The list of all @-replies for you here:\n" "\n" -"%7$s\n" -"\n" -"Faithfully yours,\n" -"%2$s\n" -"\n" -"P.S. You can turn off these email notifications here: %8$s\n" +"%7$s" msgstr "" "%1$s (@%9$s) 刚刚在%2$s通过(@回复)发送了一条消息给你。\n" "\n" @@ -7586,6 +7809,31 @@ msgstr "" "\n" "P.S. 你可以到这里关掉这些邮件提醒:%8$s\n" +#. TRANS: Subject of group join notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#. TRANS: Main body of group join notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %4$s is a block of profile info about the subscriber. +#. TRANS: %5$s is a link to the addressed user's e-mail settings. +#, fuzzy, php-format +msgid "%1$s has joined your group %2$s on %3$s." +msgstr "%1$s加入了%2$s小组。" + +#. TRANS: Subject of pending group join request notification e-mail. +#. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. +#, fuzzy, php-format +msgid "%1$s wants to join your group %2$s on %3$s." +msgstr "%1$s加入了%2$s小组。" + +#. TRANS: Main body of pending group join request notification e-mail. +#. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, +#. TRANS: %3$s is the URL to the moderation queue page. +#, php-format +msgid "" +"%1$s would like to join your group %2$s on %3$s. You may approve or reject " +"their group membership at %4$s" +msgstr "" + msgid "Only the user can read their own mailboxes." msgstr "只有该用户才能查看自己的私信。" @@ -7624,6 +7872,20 @@ msgstr "抱歉,现在不允许电子邮件发布。" msgid "Unsupported message type: %s" msgstr "不支持的信息格式:%s" +#. TRANS: Form legend for form to make a user a group admin. +msgid "Make user an admin of the group" +msgstr "使用户成为小组的管理员" + +#. TRANS: Button text for the form that will make a user administrator. +msgctxt "BUTTON" +msgid "Make Admin" +msgstr "设置管理员" + +#. TRANS: Submit button title. +msgctxt "TOOLTIP" +msgid "Make this user an admin" +msgstr "将这个用户设为管理员" + #. TRANS: Client exception thrown when a database error was thrown during a file upload operation. msgid "There was a database error while saving your file. Please try again." msgstr "保存你的文件时数据库出现了一个错误。请重试。" @@ -8298,9 +8560,8 @@ msgstr "不合法的XML, 缺少XRD根" msgid "Getting backup from file '%s'." msgstr "从文件'%s'获取备份。" -#~ msgid "Couldn't update user." -#~ msgstr "无法更新用户。" +#~ msgid "Notice" +#~ msgstr "消息" -#, fuzzy -#~ msgid "Couldn't update user im prefs." -#~ msgstr "无法更新用户记录。" +#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgstr "1 到 64 个小写字母或数字,不包含标点或空格" diff --git a/plugins/AccountManager/locale/fi/LC_MESSAGES/AccountManager.po b/plugins/AccountManager/locale/fi/LC_MESSAGES/AccountManager.po index 48a4f27527..1f6da8b17c 100644 --- a/plugins/AccountManager/locale/fi/LC_MESSAGES/AccountManager.po +++ b/plugins/AccountManager/locale/fi/LC_MESSAGES/AccountManager.po @@ -1,6 +1,7 @@ # Translation of StatusNet - AccountManager to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - AccountManager\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:09+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:06+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-11 18:51:35+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:05:57+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-accountmanager\n" @@ -23,4 +24,4 @@ msgstr "" msgid "" "The Account Manager plugin implements the Account Manager specification." -msgstr "Account Manager plugin toteuttaa Account Manager -määrityksen." +msgstr "Account Manager -liitännäinen toteuttaa Account Manager -määrityksen." diff --git a/plugins/AccountManager/locale/fr/LC_MESSAGES/AccountManager.po b/plugins/AccountManager/locale/fr/LC_MESSAGES/AccountManager.po new file mode 100644 index 0000000000..b740efece3 --- /dev/null +++ b/plugins/AccountManager/locale/fr/LC_MESSAGES/AccountManager.po @@ -0,0 +1,27 @@ +# Translation of StatusNet - AccountManager to French (Français) +# Exported from translatewiki.net +# +# Author: Crochet.david +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - AccountManager\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:06+0000\n" +"Language-Team: French \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:05:57+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: fr\n" +"X-Message-Group: #out-statusnet-plugin-accountmanager\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "" +"The Account Manager plugin implements the Account Manager specification." +msgstr "" +"Le plugin gestionnaire de compte implémente la spécification Account Manager." diff --git a/plugins/Autocomplete/locale/fi/LC_MESSAGES/Autocomplete.po b/plugins/Autocomplete/locale/fi/LC_MESSAGES/Autocomplete.po index 4b2be92b7a..6e4affefc5 100644 --- a/plugins/Autocomplete/locale/fi/LC_MESSAGES/Autocomplete.po +++ b/plugins/Autocomplete/locale/fi/LC_MESSAGES/Autocomplete.po @@ -1,6 +1,7 @@ # Translation of StatusNet - Autocomplete to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Autocomplete\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:46+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:15+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:12+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-11 18:51:39+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:01+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-autocomplete\n" @@ -26,7 +27,6 @@ msgid "" "replies. When an \"@\" is typed into the notice text area, an autocomplete " "box is displayed populated with the user's friend' screen names." msgstr "" -"Laajennuksen automaattinen täydennys avulla käyttäjät voivat automaattisesti " -"täydentää käyttäjänimiä @-vastauksissa. Kun \"@\" kirjoitetaan viestin " -"tekstialueelle, automaattinen täydennys -laatikko näyttää käyttäjän kaverien " -"käyttäjänimiä." +"Automaattinen täydennys -liitännäisen avulla käyttäjät voivat " +"automaattisesti täydentää käyttäjänimiä @-vastauksissa. Kun @-merkki " +"kirjoitetaan viestiin, ponnahtaa esiin lista käyttäjän kavereista." diff --git a/plugins/Awesomeness/locale/fi/LC_MESSAGES/Awesomeness.po b/plugins/Awesomeness/locale/fi/LC_MESSAGES/Awesomeness.po index b0b3c393e0..b7c6e9691c 100644 --- a/plugins/Awesomeness/locale/fi/LC_MESSAGES/Awesomeness.po +++ b/plugins/Awesomeness/locale/fi/LC_MESSAGES/Awesomeness.po @@ -1,6 +1,7 @@ # Translation of StatusNet - Awesomeness to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Awesomeness\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:17+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:14+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:12:52+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:02+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-awesomeness\n" @@ -25,5 +26,5 @@ msgid "" "The Awesomeness plugin adds additional awesomeness to a StatusNet " "installation." msgstr "" -"Awesomeness lisäosa lisää ylimääräistä upeutta (awesomeness) StatusNet " -"asennukseen." +"Awesomeness-liitännäinen lisää ylimääräistä upeutta (awesomeness) StatusNet-" +"asennukseesi." diff --git a/plugins/BlogspamNet/locale/fi/LC_MESSAGES/BlogspamNet.po b/plugins/BlogspamNet/locale/fi/LC_MESSAGES/BlogspamNet.po index 638d13929a..a97cb31b11 100644 --- a/plugins/BlogspamNet/locale/fi/LC_MESSAGES/BlogspamNet.po +++ b/plugins/BlogspamNet/locale/fi/LC_MESSAGES/BlogspamNet.po @@ -1,6 +1,7 @@ # Translation of StatusNet - BlogspamNet to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,17 +10,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - BlogspamNet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:46+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:22+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:20+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:12:56+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:04+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-blogspamnet\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Plugin to check submitted notices with blogspam.net." -msgstr "Liitännäinen viestien tarkastamiseen blogspam.net palvelun avulla." +msgstr "Liitännäinen viestien tarkastamiseen blogspam.net-palvelun avulla." diff --git a/plugins/Bookmark/locale/ar/LC_MESSAGES/Bookmark.po b/plugins/Bookmark/locale/ar/LC_MESSAGES/Bookmark.po new file mode 100644 index 0000000000..2389a45a01 --- /dev/null +++ b/plugins/Bookmark/locale/ar/LC_MESSAGES/Bookmark.po @@ -0,0 +1,38 @@ +# Translation of StatusNet - Bookmark to Arabic (العربية) +# Exported from translatewiki.net +# +# Author: OsamaK +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Bookmark\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:21+0000\n" +"Language-Team: Arabic \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:06:05+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ar\n" +"X-Message-Group: #out-statusnet-plugin-bookmark\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" + +msgid "Simple extension for supporting bookmarks." +msgstr "" + +msgid "Bookmark" +msgstr "علّم" + +msgctxt "BUTTON" +msgid "Upload" +msgstr "ارفع" + +msgctxt "BUTTON" +msgid "Save" +msgstr "احفظ" diff --git a/plugins/Bookmark/locale/fr/LC_MESSAGES/Bookmark.po b/plugins/Bookmark/locale/fr/LC_MESSAGES/Bookmark.po index 8bb2939862..9d04d357e8 100644 --- a/plugins/Bookmark/locale/fr/LC_MESSAGES/Bookmark.po +++ b/plugins/Bookmark/locale/fr/LC_MESSAGES/Bookmark.po @@ -1,6 +1,7 @@ # Translation of StatusNet - Bookmark to French (Français) # Exported from translatewiki.net # +# Author: Crochet.david # Author: IAlex # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Bookmark\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:23+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:21+0000\n" "Language-Team: French \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-11 18:52:29+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:05+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fr\n" "X-Message-Group: #out-statusnet-plugin-bookmark\n" @@ -25,7 +26,7 @@ msgid "Simple extension for supporting bookmarks." msgstr "Simple extension pour supporter les signets." msgid "Bookmark" -msgstr "" +msgstr "Favoris" msgctxt "BUTTON" msgid "Upload" diff --git a/plugins/Comet/locale/fi/LC_MESSAGES/Comet.po b/plugins/Comet/locale/fi/LC_MESSAGES/Comet.po index 0df90032ce..bb6bbb2d11 100644 --- a/plugins/Comet/locale/fi/LC_MESSAGES/Comet.po +++ b/plugins/Comet/locale/fi/LC_MESSAGES/Comet.po @@ -1,6 +1,7 @@ # Translation of StatusNet - Comet to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Comet\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:27+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:25+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:13:00+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:07+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-comet\n" @@ -23,5 +24,5 @@ msgstr "" msgid "Plugin to do \"real time\" updates using Comet/Bayeux." msgstr "" -"Liitännäinen \"reaaliaikaisten\" päivitysten tekemiseen Comet/Bayeux " -"järjestelmää käyttäen." +"Liitännäinen \"reaaliaikaisten\" päivitysten tekemiseen Comet/Bayeux-" +"yhteyskäytäntöjä käyttäen." diff --git a/plugins/DirectionDetector/locale/fi/LC_MESSAGES/DirectionDetector.po b/plugins/DirectionDetector/locale/fi/LC_MESSAGES/DirectionDetector.po index 3069e5da5f..520dcc867f 100644 --- a/plugins/DirectionDetector/locale/fi/LC_MESSAGES/DirectionDetector.po +++ b/plugins/DirectionDetector/locale/fi/LC_MESSAGES/DirectionDetector.po @@ -1,6 +1,7 @@ # Translation of StatusNet - DirectionDetector to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - DirectionDetector\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:28+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:26+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:13:01+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:08+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-directiondetector\n" @@ -23,5 +24,5 @@ msgstr "" msgid "Shows notices with right-to-left content in correct direction." msgstr "" -"Näyttää ilmoitukset joiden sisältö kirjoitetaan oikealta vasemmalle oikeaan " -"suuntaan." +"Näyttää oikein ilmoitukset, joiden sisältö on kirjoitettu oikealta " +"vasemmalle." diff --git a/plugins/Directory/locale/tl/LC_MESSAGES/Directory.po b/plugins/Directory/locale/tl/LC_MESSAGES/Directory.po new file mode 100644 index 0000000000..08c4f28ffc --- /dev/null +++ b/plugins/Directory/locale/tl/LC_MESSAGES/Directory.po @@ -0,0 +1,54 @@ +# Translation of StatusNet - Directory to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Directory\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:28+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-17 10:24:35+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-directory\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#, php-format +msgid "User Directory, page %d" +msgstr "Direktoryo ng Tagagamit, pahina %d" + +msgid "User directory" +msgstr "Direktoryo ng tagagamit" + +#, php-format +msgid "User directory - %s" +msgstr "Direktoryo ng tagagamit - %s" + +#, php-format +msgid "User directory - %s, page %d" +msgstr "Direktoryo ng tagagamit - %s, pahina %d" + +msgctxt "BUTTON" +msgid "Search" +msgstr "Hanapin" + +#, php-format +msgid "No users starting with %s" +msgstr "Walang mga tagagamit na nagsisimula sa %s" + +msgid "Add a user directory." +msgstr "Magdagdag ng isang direktoryo ng tagagamit." + +msgid "Nickname" +msgstr "Palayaw" + +msgid "Created" +msgstr "Nalikha na" diff --git a/plugins/DiskCache/locale/fi/LC_MESSAGES/DiskCache.po b/plugins/DiskCache/locale/fi/LC_MESSAGES/DiskCache.po index aa9c70a461..6bdaf3aa3a 100644 --- a/plugins/DiskCache/locale/fi/LC_MESSAGES/DiskCache.po +++ b/plugins/DiskCache/locale/fi/LC_MESSAGES/DiskCache.po @@ -1,6 +1,7 @@ # Translation of StatusNet - DiskCache to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,17 +10,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - DiskCache\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:30+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:28+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:13:02+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:08+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-diskcache\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" msgid "Plugin to implement cache interface with disk files." -msgstr "Liitännäinen joka toteuttaa välimuistiliittymän käyttäen tiedostoja." +msgstr "Liitännäinen joka toteuttaa tiedostopohjaisen välimuistirajapinnan." diff --git a/plugins/EmailAuthentication/locale/fi/LC_MESSAGES/EmailAuthentication.po b/plugins/EmailAuthentication/locale/fi/LC_MESSAGES/EmailAuthentication.po index 171681b026..ce56401ec8 100644 --- a/plugins/EmailAuthentication/locale/fi/LC_MESSAGES/EmailAuthentication.po +++ b/plugins/EmailAuthentication/locale/fi/LC_MESSAGES/EmailAuthentication.po @@ -1,6 +1,7 @@ # Translation of StatusNet - EmailAuthentication to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - EmailAuthentication\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:46+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:33+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:32+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:17:20+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:06:10+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-emailauthentication\n" @@ -25,5 +26,5 @@ msgid "" "The Email Authentication plugin allows users to login using their email " "address." msgstr "" -"Email todennus -liitännäisen avulla käyttäjät voivat kirjautua sisään " -"käyttämällä sähköpostiosoitettaan." +"Sähköpostitodennusliitännäisen avulla käyttäjät voivat kirjautua sisään " +"sähköpostiosoitteellaan." diff --git a/plugins/Event/locale/tl/LC_MESSAGES/Event.po b/plugins/Event/locale/tl/LC_MESSAGES/Event.po new file mode 100644 index 0000000000..4549122d4c --- /dev/null +++ b/plugins/Event/locale/tl/LC_MESSAGES/Event.po @@ -0,0 +1,48 @@ +# Translation of StatusNet - Event to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Event\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:34+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-17 10:24:36+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-event\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgctxt "BUTTON" +msgid "Cancel" +msgstr "Huwag ituloy" + +msgctxt "BUTTON" +msgid "Yes" +msgstr "Oo" + +msgctxt "BUTTON" +msgid "No" +msgstr "Hindi" + +msgctxt "BUTTON" +msgid "Maybe" +msgstr "Siguro" + +msgctxt "BUTTON" +msgid "Save" +msgstr "Sagipin" + +msgid "Event invitations and RSVPs." +msgstr "Mga paanyaya sa kaganapan at mga paghingi ng tugon." + +msgid "Event" +msgstr "Kaganapan" diff --git a/plugins/Event/locale/tr/LC_MESSAGES/Event.po b/plugins/Event/locale/tr/LC_MESSAGES/Event.po new file mode 100644 index 0000000000..ebf6e07d38 --- /dev/null +++ b/plugins/Event/locale/tr/LC_MESSAGES/Event.po @@ -0,0 +1,48 @@ +# Translation of StatusNet - Event to Turkish (Türkçe) +# Exported from translatewiki.net +# +# Author: Maidis +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Event\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:34+0000\n" +"Language-Team: Turkish \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-17 10:24:36+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tr\n" +"X-Message-Group: #out-statusnet-plugin-event\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +msgctxt "BUTTON" +msgid "Cancel" +msgstr "" + +msgctxt "BUTTON" +msgid "Yes" +msgstr "Evet" + +msgctxt "BUTTON" +msgid "No" +msgstr "Hayır" + +msgctxt "BUTTON" +msgid "Maybe" +msgstr "Belki" + +msgctxt "BUTTON" +msgid "Save" +msgstr "Kaydet" + +msgid "Event invitations and RSVPs." +msgstr "" + +msgid "Event" +msgstr "" diff --git a/plugins/ExtendedProfile/locale/mk/LC_MESSAGES/ExtendedProfile.po b/plugins/ExtendedProfile/locale/mk/LC_MESSAGES/ExtendedProfile.po index 759c7d3eb6..e0cb453e7e 100644 --- a/plugins/ExtendedProfile/locale/mk/LC_MESSAGES/ExtendedProfile.po +++ b/plugins/ExtendedProfile/locale/mk/LC_MESSAGES/ExtendedProfile.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - ExtendedProfile\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:38+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:37+0000\n" "Language-Team: Macedonian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 13:01:04+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:07:05+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: #out-statusnet-plugin-extendedprofile\n" @@ -94,26 +94,26 @@ msgid "Company" msgstr "Фирма" msgid "Start" -msgstr "" +msgstr "Почеток" msgid "End" -msgstr "" +msgstr "Завршеток" msgid "Current" -msgstr "" +msgstr "Тековно" msgid "Institution" msgstr "Установа" msgid "Degree" -msgstr "" +msgstr "Диплома" msgid "Description" -msgstr "" +msgstr "Опис" msgctxt "BUTTON" msgid "Save" -msgstr "" +msgstr "Зачувај" msgid "Phone" msgstr "Телефон" diff --git a/plugins/FacebookBridge/locale/ar/LC_MESSAGES/FacebookBridge.po b/plugins/FacebookBridge/locale/ar/LC_MESSAGES/FacebookBridge.po new file mode 100644 index 0000000000..b0d500ec10 --- /dev/null +++ b/plugins/FacebookBridge/locale/ar/LC_MESSAGES/FacebookBridge.po @@ -0,0 +1,246 @@ +# Translation of StatusNet - FacebookBridge to Arabic (العربية) +# Exported from translatewiki.net +# +# Author: OsamaK +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - FacebookBridge\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:40+0000\n" +"Language-Team: Arabic \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:07:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ar\n" +"X-Message-Group: #out-statusnet-plugin-facebookbridge\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" + +msgid "Already logged in." +msgstr "" + +#. TRANS: Instructions. +msgid "Login with your Facebook Account" +msgstr "" + +#. TRANS: Page title. +msgid "Login with Facebook" +msgstr "" + +msgid "Facebook" +msgstr "" + +msgid "Facebook integration settings" +msgstr "" + +msgid "Invalid Facebook ID. Max length is 255 characters." +msgstr "" + +msgid "Invalid Facebook secret. Max length is 255 characters." +msgstr "" + +msgid "Facebook application settings" +msgstr "" + +msgid "Application ID" +msgstr "" + +msgid "ID of your Facebook application" +msgstr "" + +msgid "Secret" +msgstr "" + +msgid "Application secret" +msgstr "" + +msgid "Save" +msgstr "احفظ" + +msgid "Save Facebook settings" +msgstr "احفظ إعدادات فيسبك" + +msgid "There was a problem with your session token. Try again, please." +msgstr "" + +#. TRANS: Page title for Facebook settings. +#. TRANS: Tooltip for menu item "Facebook". +msgid "Facebook settings" +msgstr "إعدادات فيسبك" + +msgid "Connected Facebook user" +msgstr "" + +msgid "Publish my notices to Facebook." +msgstr "انشر إشعاراتي على فيسبك." + +msgid "Send \"@\" replies to Facebook." +msgstr "أرسل الردود \"@\" إلى فيسبك." + +#. TRANS: Submit button to save synchronisation settings. +msgctxt "BUTTON" +msgid "Save" +msgstr "احفظ" + +#. TRANS: Legend. +msgid "Disconnect my account from Facebook" +msgstr "اقطع اتصال حسابي بفيسبك." + +#, php-format +msgid "" +"Disconnecting your Faceboook would make it impossible to log in! Please [set " +"a password](%s) first." +msgstr "" +"قطع اتصال حسابك بفيسبك سيجعل دخولك مستحيلا! الرجاء [ضبط كلمة سر](%s) أولا." + +#, php-format +msgid "" +"Keep your %1$s account but disconnect from Facebook. You'll use your %1$s " +"password to log in." +msgstr "" +"أبقِ حسابك على %1$s واقطع الاتصال بفيسبك. سوف يتعين عليك استخدام كلمة السر " +"على %1$s للدخول." + +#. TRANS: Submit button. +msgctxt "BUTTON" +msgid "Disconnect" +msgstr "اقطع الاتصال" + +msgid "There was a problem saving your sync preferences." +msgstr "" + +#. TRANS: Confirmation that synchronisation settings have been saved into the system. +msgid "Sync preferences saved." +msgstr "حُفظت تفضيلات المزامنة." + +msgid "Couldn't delete link to Facebook." +msgstr "تعذر حذف وصلة فيسبك." + +msgid "You have disconnected from Facebook." +msgstr "لقد قطعت الاتصال من فيسبك." + +msgid "" +"You must be logged into Facebook to register a local account using Facebook." +msgstr "" + +msgid "There is already a local account linked with that Facebook account." +msgstr "" + +msgid "You can't register if you don't agree to the license." +msgstr "" + +msgid "An unknown error has occured." +msgstr "" + +#, php-format +msgid "" +"This is the first time you've logged into %s so we must connect your " +"Facebook to a local account. You can either create a new local account, or " +"connect with an existing local account." +msgstr "" + +#. TRANS: Page title. +msgid "Facebook Setup" +msgstr "ضبط فيسبك" + +#. TRANS: Legend. +msgid "Connection options" +msgstr "خيارات الاتصال" + +#. TRANS: %s is the name of the license used by the user for their status updates. +#, php-format +msgid "" +"My text and files are available under %s except this private data: password, " +"email address, IM address, and phone number." +msgstr "" + +#. TRANS: Legend. +msgid "Create new account" +msgstr "" + +msgid "Create a new user with this nickname." +msgstr "" + +#. TRANS: Field label. +msgid "New nickname" +msgstr "" + +msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +msgstr "" + +#. TRANS: Submit button. +msgctxt "BUTTON" +msgid "Create" +msgstr "" + +msgid "Connect existing account" +msgstr "" + +msgid "" +"If you already have an account, login with your username and password to " +"connect it to your Facebook." +msgstr "" + +#. TRANS: Field label. +msgid "Existing nickname" +msgstr "" + +msgid "Password" +msgstr "" + +#. TRANS: Submit button. +msgctxt "BUTTON" +msgid "Connect" +msgstr "" + +#. TRANS: Client error trying to register with registrations not allowed. +#. TRANS: Client error trying to register with registrations 'invite only'. +msgid "Registration not allowed." +msgstr "" + +#. TRANS: Client error trying to register with an invalid invitation code. +msgid "Not a valid invitation code." +msgstr "" + +msgid "Nickname not allowed." +msgstr "" + +msgid "Nickname already in use. Try another one." +msgstr "الاسم المستعار مستخدم بالفعل. جرّب اسمًا آخرًا." + +msgid "Error connecting user to Facebook." +msgstr "خطأ في ربط المستخدم بفيسبك." + +msgid "Invalid username or password." +msgstr "اسم مستخدم أو كلمة سر غير صالحة." + +#. TRANS: Menu item. +#. TRANS: Menu item tab. +msgctxt "MENU" +msgid "Facebook" +msgstr "فيسبك" + +#. TRANS: Tooltip for menu item "Facebook". +msgid "Login or register using Facebook" +msgstr "لُج أو سجّل باستخدام فيسبك" + +#. TRANS: Tooltip for menu item "Facebook". +msgid "Facebook integration configuration" +msgstr "ضبط تكامل فيسبك" + +msgid "A plugin for integrating StatusNet with Facebook." +msgstr "" + +msgid "Your Facebook connection has been removed" +msgstr "" + +#, php-format +msgid "Contact the %s administrator to retrieve your account" +msgstr "" diff --git a/plugins/ForceGroup/locale/ForceGroup.pot b/plugins/ForceGroup/locale/ForceGroup.pot index 9657493908..9649954900 100644 --- a/plugins/ForceGroup/locale/ForceGroup.pot +++ b/plugins/ForceGroup/locale/ForceGroup.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,13 +18,13 @@ msgstr "" #. TRANS: Server exception. #. TRANS: %1$s is a user nickname, %2$s is a group nickname. -#: ForceGroupPlugin.php:78 +#: ForceGroupPlugin.php:75 #, php-format msgid "Could not join user %1$s to group %2$s." msgstr "" #. TRANS: Plugin description. -#: ForceGroupPlugin.php:104 +#: ForceGroupPlugin.php:101 msgid "" "Allows forced group memberships and forces all notices to appear in groups " "that users were forced in." diff --git a/plugins/GeoURL/locale/fi/LC_MESSAGES/GeoURL.po b/plugins/GeoURL/locale/fi/LC_MESSAGES/GeoURL.po index 90000fefa4..f2eff317f8 100644 --- a/plugins/GeoURL/locale/fi/LC_MESSAGES/GeoURL.po +++ b/plugins/GeoURL/locale/fi/LC_MESSAGES/GeoURL.po @@ -1,6 +1,7 @@ # Translation of StatusNet - GeoURL to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - GeoURL\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:46+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:46+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:45+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:17:27+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:07:09+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-geourl\n" @@ -25,5 +26,5 @@ msgid "" "Ping GeoURL when new geolocation-enhanced " "notices are posted." msgstr "" -"Pingaa GeoURL palvelua kun uusi " -"geolocationilla varustettu ilmoitus lähetetään." +"Pingaa GeoURL-palvelua, kun uusi " +"paikkatiedoin varustettu ilmoitus lähetetään." diff --git a/plugins/Geonames/locale/fi/LC_MESSAGES/Geonames.po b/plugins/Geonames/locale/fi/LC_MESSAGES/Geonames.po index 42989a4e7b..079be03533 100644 --- a/plugins/Geonames/locale/fi/LC_MESSAGES/Geonames.po +++ b/plugins/Geonames/locale/fi/LC_MESSAGES/Geonames.po @@ -1,6 +1,7 @@ # Translation of StatusNet - Geonames to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Geonames\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:45+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:44+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:17:26+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:07:09+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-geonames\n" @@ -26,4 +27,4 @@ msgid "" "readable names for locations based on user-provided lat/long pairs." msgstr "" "Käyttää Geonames-palvelua käyttäjän " -"antamia lev/pit tietoja vastaavien paikannimien hakemiseen." +"antamia koordinaatteja vastaavien paikannimien hakemiseen." diff --git a/plugins/GoogleAnalytics/locale/fi/LC_MESSAGES/GoogleAnalytics.po b/plugins/GoogleAnalytics/locale/fi/LC_MESSAGES/GoogleAnalytics.po index 226866bcf4..d14b06a320 100644 --- a/plugins/GoogleAnalytics/locale/fi/LC_MESSAGES/GoogleAnalytics.po +++ b/plugins/GoogleAnalytics/locale/fi/LC_MESSAGES/GoogleAnalytics.po @@ -1,6 +1,7 @@ # Translation of StatusNet - GoogleAnalytics to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - GoogleAnalytics\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:46+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:47+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:46+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:17:27+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:07:10+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-googleanalytics\n" @@ -25,5 +26,5 @@ msgid "" "Use Google Analytics to " "track web access." msgstr "" -"Käytä Google Analytics " -"palvelua web käytön seuraamiseen." +"Käytä Google Analytics -" +"palvelua verkkosivun käyttäjien seuraamiseen." diff --git a/plugins/GroupPrivateMessage/locale/GroupPrivateMessage.pot b/plugins/GroupPrivateMessage/locale/GroupPrivateMessage.pot index b946bdaa09..253471a03a 100644 --- a/plugins/GroupPrivateMessage/locale/GroupPrivateMessage.pot +++ b/plugins/GroupPrivateMessage/locale/GroupPrivateMessage.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:46+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -25,7 +25,7 @@ msgstr "" msgid "Private messages for this group" msgstr "" -#: GroupPrivateMessagePlugin.php:502 +#: GroupPrivateMessagePlugin.php:504 msgid "Allow posting DMs to a group." msgstr "" diff --git a/plugins/Irc/locale/fi/LC_MESSAGES/Irc.po b/plugins/Irc/locale/fi/LC_MESSAGES/Irc.po index 7fe46ec145..41a7e290d7 100644 --- a/plugins/Irc/locale/fi/LC_MESSAGES/Irc.po +++ b/plugins/Irc/locale/fi/LC_MESSAGES/Irc.po @@ -1,6 +1,7 @@ # Translation of StatusNet - Irc to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Irc\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:54+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:52+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-11 18:53:19+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:37+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-irc\n" @@ -36,4 +37,5 @@ msgstr "" msgid "Your nickname is not registered so IRC connectivity cannot be enabled" msgstr "" -"IRC nick ei ole rekisteröity joten IRC yhteyttä ei voida ottaa käyttöön" +"IRC-nimimerkkiäsi ei ole rekisteröity, joten IRC-yhteyttä ei voida ottaa " +"käyttöön" diff --git a/plugins/Irc/locale/fr/LC_MESSAGES/Irc.po b/plugins/Irc/locale/fr/LC_MESSAGES/Irc.po new file mode 100644 index 0000000000..82b9cb7f7b --- /dev/null +++ b/plugins/Irc/locale/fr/LC_MESSAGES/Irc.po @@ -0,0 +1,40 @@ +# Translation of StatusNet - Irc to French (Français) +# Exported from translatewiki.net +# +# Author: Coyau +# Author: Hashar +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Irc\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:52+0000\n" +"Language-Team: French \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:08:37+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: fr\n" +"X-Message-Group: #out-statusnet-plugin-irc\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "IRC" +msgstr "IRC" + +msgid "" +"The IRC plugin allows users to send and receive notices over an IRC network." +msgstr "" +"Le plugin IRC permet aux utilisateurs d'envoyer et de recevoir des messages " +"depuis un réseau IRC." + +#, php-format +msgid "Could not increment attempts count for %d" +msgstr "" + +msgid "Your nickname is not registered so IRC connectivity cannot be enabled" +msgstr "" +"Votre pseudo n'est pas enregistré, la connexion IRC ne peut pas être activée" diff --git a/plugins/LdapAuthentication/locale/fi/LC_MESSAGES/LdapAuthentication.po b/plugins/LdapAuthentication/locale/fi/LC_MESSAGES/LdapAuthentication.po index 2e87a22336..92e173ae72 100644 --- a/plugins/LdapAuthentication/locale/fi/LC_MESSAGES/LdapAuthentication.po +++ b/plugins/LdapAuthentication/locale/fi/LC_MESSAGES/LdapAuthentication.po @@ -1,6 +1,7 @@ # Translation of StatusNet - LdapAuthentication to Finnish (Suomi) # Exported from translatewiki.net # +# Author: Nike # Author: XTL # -- # This file is distributed under the same license as the StatusNet package. @@ -9,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - LdapAuthentication\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:48:54+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:13:53+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:17:33+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:10+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-plugin-ldapauthentication\n" @@ -25,5 +26,5 @@ msgid "" "The LDAP Authentication plugin allows for StatusNet to handle authentication " "through LDAP." msgstr "" -"LDAP liitännäinen mahdollistaa StatusNet käyttäjien tunnistamisen LDAP " -"järjestelmän kautta." +"LDAP-liitännäinen mahdollistaa StatusNet-käyttäjien tunnistamisen LDAPin " +"kautta." diff --git a/plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po b/plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po new file mode 100644 index 0000000000..3950678e59 --- /dev/null +++ b/plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po @@ -0,0 +1,74 @@ +# Translation of StatusNet - MobileProfile to Arabic (العربية) +# Exported from translatewiki.net +# +# Author: OsamaK +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - MobileProfile\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:05+0000\n" +"Language-Team: Arabic \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:08:20+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ar\n" +"X-Message-Group: #out-statusnet-plugin-mobileprofile\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" + +msgid "This page is not available in a media type you accept." +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Account" +msgstr "الحساب" + +msgid "Connect" +msgstr "اربط" + +msgid "Admin" +msgstr "إدارة" + +msgid "Change site configuration" +msgstr "غيّر ضبط الموقع" + +msgid "Invite" +msgstr "أدع" + +msgid "Logout" +msgstr "اخرج" + +msgid "Register" +msgstr "سجل" + +msgid "Login" +msgstr "لُج" + +msgid "Search" +msgstr "ابحث" + +msgid "Attach" +msgstr "أرفق" + +msgid "Attach a file" +msgstr "أرفق ملفًا" + +#. TRANS: Link to switch site layout from mobile to desktop mode. Appears at very bottom of page. +msgid "Switch to desktop site layout." +msgstr "" + +#. TRANS: Link to switch site layout from desktop to mobile mode. Appears at very bottom of page. +msgid "Switch to mobile site layout." +msgstr "" + +msgid "XHTML MobileProfile output for supporting user agents." +msgstr "" diff --git a/plugins/ModPlus/locale/ModPlus.pot b/plugins/ModPlus/locale/ModPlus.pot index fb1588fffa..954abd5239 100644 --- a/plugins/ModPlus/locale/ModPlus.pot +++ b/plugins/ModPlus/locale/ModPlus.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -38,6 +38,6 @@ msgstr "" msgid "UI extensions for profile moderation actions." msgstr "" -#: ModPlusPlugin.php:110 +#: ModPlusPlugin.php:139 msgid "Remote profile options..." msgstr "" diff --git a/plugins/Msn/locale/fr/LC_MESSAGES/Msn.po b/plugins/Msn/locale/fr/LC_MESSAGES/Msn.po new file mode 100644 index 0000000000..ceb6d36e37 --- /dev/null +++ b/plugins/Msn/locale/fr/LC_MESSAGES/Msn.po @@ -0,0 +1,31 @@ +# Translation of StatusNet - Msn to French (Français) +# Exported from translatewiki.net +# +# Author: Hashar +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Msn\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:08+0000\n" +"Language-Team: French \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:08:22+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: fr\n" +"X-Message-Group: #out-statusnet-plugin-msn\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +msgid "MSN" +msgstr "MSN" + +msgid "" +"The MSN plugin allows users to send and receive notices over the MSN network." +msgstr "" +"Le plugin MSN permet aux utilisateurs d'envoyer et de recevoir des messages " +"depuis le réseau MSN." diff --git a/plugins/NewMenu/locale/ar/LC_MESSAGES/NewMenu.po b/plugins/NewMenu/locale/ar/LC_MESSAGES/NewMenu.po index 5dbdfaefb1..41e5fc0d88 100644 --- a/plugins/NewMenu/locale/ar/LC_MESSAGES/NewMenu.po +++ b/plugins/NewMenu/locale/ar/LC_MESSAGES/NewMenu.po @@ -10,12 +10,12 @@ msgstr "" "Project-Id-Version: StatusNet - NewMenu\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2011-01-29 21:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:09+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:09+0000\n" "Language-Team: Arabic \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:18:34+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:23+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ar\n" "X-Message-Group: #out-statusnet-plugin-newmenu\n" @@ -24,46 +24,46 @@ msgstr "" "99) ? 4 : 5 ) ) ) );\n" msgid "Home" -msgstr "" +msgstr "الرئيسية" msgid "Friends timeline" -msgstr "" +msgstr "مسار الأصدقاء الزمني" msgid "Profile" -msgstr "" +msgstr "الملف الشخصي" msgid "Your profile" -msgstr "" +msgstr "ملفك الشخصي" msgid "Public" msgstr "" msgid "Everyone on this site" -msgstr "" +msgstr "كل من هم على هذا الموقع" msgid "Settings" -msgstr "" +msgstr "إعدادات" msgid "Change your personal settings" -msgstr "" +msgstr "غيرّ إعدادتك الشخصية" msgid "Admin" -msgstr "" +msgstr "إدارة" msgid "Site configuration" -msgstr "" +msgstr "ضبط الموقع" msgid "Logout" -msgstr "" +msgstr "اخرج" msgid "Logout from the site" -msgstr "" +msgstr "اخرج من الموقع" msgid "Login" -msgstr "ادخل" +msgstr "لُج" msgid "Login to the site" -msgstr "ادخل الموقع" +msgstr "لُج في الموقع" msgid "Search" msgstr "ابحث" diff --git a/plugins/OStatus/locale/OStatus.pot b/plugins/OStatus/locale/OStatus.pot index 2bcc527741..f73f44775c 100644 --- a/plugins/OStatus/locale/OStatus.pot +++ b/plugins/OStatus/locale/OStatus.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -317,22 +317,17 @@ msgid "Already a member!" msgstr "" #. TRANS: OStatus remote group subscription dialog error. -#: actions/ostatusgroup.php:151 +#: actions/ostatusgroup.php:148 msgid "Remote group join failed!" msgstr "" -#. TRANS: OStatus remote group subscription dialog error. -#: actions/ostatusgroup.php:155 -msgid "Remote group join aborted!" -msgstr "" - #. TRANS: Page title for OStatus remote group join form -#: actions/ostatusgroup.php:167 +#: actions/ostatusgroup.php:161 msgid "Confirm joining remote group" msgstr "" #. TRANS: Instructions. -#: actions/ostatusgroup.php:178 +#: actions/ostatusgroup.php:172 msgid "" "You can subscribe to groups from other supported sites. Paste the group's " "profile URI below:" @@ -396,7 +391,7 @@ msgid "Can't read profile to set up group membership." msgstr "" #. TRANS: Client error. -#: actions/groupsalmon.php:134 actions/groupsalmon.php:177 +#: actions/groupsalmon.php:134 actions/groupsalmon.php:170 msgid "Groups can't join groups." msgstr "" @@ -405,17 +400,17 @@ msgid "You have been blocked from that group by the admin." msgstr "" #. TRANS: Server error. %1$s is a profile URI, %2$s is a group nickname. -#: actions/groupsalmon.php:162 +#: actions/groupsalmon.php:155 #, php-format msgid "Could not join remote user %1$s to group %2$s." msgstr "" -#: actions/groupsalmon.php:174 +#: actions/groupsalmon.php:167 msgid "Can't read profile to cancel group membership." msgstr "" #. TRANS: Server error. %1$s is a profile URI, %2$s is a group nickname. -#: actions/groupsalmon.php:191 +#: actions/groupsalmon.php:180 #, php-format msgid "Could not remove remote user %1$s from group %2$s." msgstr "" diff --git a/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po index 3934b46fc5..4187430696 100644 --- a/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po @@ -10,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:28+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:28+0000\n" "Language-Team: German \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:18:35+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: de\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -285,10 +285,6 @@ msgstr "Bereits Mitglied!" msgid "Remote group join failed!" msgstr "Beitritt in Remote-Gruppe fehlgeschlagen!" -#. TRANS: OStatus remote group subscription dialog error. -msgid "Remote group join aborted!" -msgstr "Beitritt in Remote-Gruppe abgebrochen!" - #. TRANS: Page title for OStatus remote group join form msgid "Confirm joining remote group" msgstr "Bestätige das Beitreten einer Remotegruppe" @@ -635,3 +631,6 @@ msgstr "Dieses Ziel versteht das Verlassen von Events nicht." #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Einen Salmon-Slap von einem unidentifizierten Aktor empfangen." + +#~ msgid "Remote group join aborted!" +#~ msgstr "Beitritt in Remote-Gruppe abgebrochen!" diff --git a/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po index 4caaa92951..1a56858486 100644 --- a/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po @@ -11,13 +11,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:28+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:28+0000\n" "Language-Team: French \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:18:35+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fr\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -297,10 +297,6 @@ msgstr "Déjà membre !" msgid "Remote group join failed!" msgstr "L’adhésion au groupe distant a échoué !" -#. TRANS: OStatus remote group subscription dialog error. -msgid "Remote group join aborted!" -msgstr "L’adhésion au groupe distant a été avortée !" - #. TRANS: Page title for OStatus remote group join form msgid "Confirm joining remote group" msgstr "Confirmer l’adhésion au groupe distant" @@ -656,3 +652,6 @@ msgstr "Cette cible ne reconnaît pas les indications de retrait d’évènement #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Réception d’une giffle Salmon d’un acteur non identifié." + +#~ msgid "Remote group join aborted!" +#~ msgstr "L’adhésion au groupe distant a été avortée !" diff --git a/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po index 6ac9d94701..74b10b7f9a 100644 --- a/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:28+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" "Language-Team: Interlingua \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:18:35+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ia\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -284,10 +284,6 @@ msgstr "Ja membro!" msgid "Remote group join failed!" msgstr "Le adhesion al gruppo remote ha fallite!" -#. TRANS: OStatus remote group subscription dialog error. -msgid "Remote group join aborted!" -msgstr "Le adhesion al gruppo remote ha essite abortate!" - #. TRANS: Page title for OStatus remote group join form msgid "Confirm joining remote group" msgstr "Confirmar adhesion a gruppo remote" @@ -626,3 +622,6 @@ msgstr "Iste destination non comprende eventos de partita." #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Recipeva un claffo de salmon de un actor non identificate." + +#~ msgid "Remote group join aborted!" +#~ msgstr "Le adhesion al gruppo remote ha essite abortate!" diff --git a/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po index 2fb9e780e6..e690390121 100644 --- a/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:28+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" "Language-Team: Macedonian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:18:35+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -282,10 +282,6 @@ msgstr "Веќе членувате!" msgid "Remote group join failed!" msgstr "Придружувањето на далечинската група не успеа!" -#. TRANS: OStatus remote group subscription dialog error. -msgid "Remote group join aborted!" -msgstr "Придружувањето на далечинската група е откажано!" - #. TRANS: Page title for OStatus remote group join form msgid "Confirm joining remote group" msgstr "Потврди придружување кон далечинска група." @@ -629,3 +625,6 @@ msgstr "Оваа цел не разбира напуштање на настан #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Примив Salmon-шамар од непознат учесник." + +#~ msgid "Remote group join aborted!" +#~ msgstr "Придружувањето на далечинската група е откажано!" diff --git a/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po index 665dc9c51c..a5a464e053 100644 --- a/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po @@ -10,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:29+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" "Language-Team: Dutch \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:18:35+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -223,7 +223,7 @@ msgstr "Bevestigen" #. TRANS: Tooltip for button "Confirm". msgid "Subscribe to this user" -msgstr "Abonneren op deze gebruiker" +msgstr "Op deze gebruiker abonneren" msgid "You are already subscribed to this user." msgstr "U bent al geabonneerd op deze gebruiker." @@ -293,10 +293,6 @@ msgstr "U bent al lid!" msgid "Remote group join failed!" msgstr "Het verlaten van de groep bij een andere dienst is mislukt." -#. TRANS: OStatus remote group subscription dialog error. -msgid "Remote group join aborted!" -msgstr "Het lid worden van de groep bij een andere dienst is afgebroken." - #. TRANS: Page title for OStatus remote group join form msgid "Confirm joining remote group" msgstr "Lid worden van groep bij andere dienst" @@ -658,3 +654,6 @@ msgstr "Deze bestemming begrijpt uitschrijven van gebeurtenissen niet." #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Er is een Salmonslap ontvangen van een niet-geïdentificeerde actor." + +#~ msgid "Remote group join aborted!" +#~ msgstr "Het lid worden van de groep bij een andere dienst is afgebroken." diff --git a/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po index 0d0ca48f21..8e286d01a8 100644 --- a/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:29+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" "Language-Team: Ukrainian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:18:35+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: uk\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -287,10 +287,6 @@ msgstr "Ви вже учасник!" msgid "Remote group join failed!" msgstr "Приєднатися до віддаленої спільноти не вдалося!" -#. TRANS: OStatus remote group subscription dialog error. -msgid "Remote group join aborted!" -msgstr "Приєднання до віддаленої спільноти перервано!" - #. TRANS: Page title for OStatus remote group join form msgid "Confirm joining remote group" msgstr "Підтвердження приєднання до віддаленої спільноти" @@ -640,3 +636,6 @@ msgstr "Ціль не розуміє, що таке «залишати поді #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Отримано ляпаса від невизначеного учасника за протоколом Salmon." + +#~ msgid "Remote group join aborted!" +#~ msgstr "Приєднання до віддаленої спільноти перервано!" diff --git a/plugins/OpenID/locale/ar/LC_MESSAGES/OpenID.po b/plugins/OpenID/locale/ar/LC_MESSAGES/OpenID.po index 86c42ba286..fe0444adb4 100644 --- a/plugins/OpenID/locale/ar/LC_MESSAGES/OpenID.po +++ b/plugins/OpenID/locale/ar/LC_MESSAGES/OpenID.po @@ -1,5 +1,5 @@ # Translation of StatusNet - OpenID to Arabic (العربية) -# Expored from translatewiki.net +# Exported from translatewiki.net # # Author: OsamaK # -- @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OpenID\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-12-16 15:08+0000\n" -"PO-Revision-Date: 2010-12-16 15:12:28+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:18+0000\n" "Language-Team: Arabic \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2010-11-30 20:43:49+0000\n" -"X-Generator: MediaWiki 1.18alpha (r78478); Translate extension (2010-09-17)\n" +"X-POT-Import-Date: 2011-03-18 20:08:25+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ar\n" "X-Message-Group: #out-statusnet-plugin-openid\n" @@ -23,362 +23,127 @@ msgstr "" "2) ? 2 : ( (n%100 >= 3 && n%100 <= 10) ? 3 : ( (n%100 >= 11 && n%100 <= " "99) ? 4 : 5 ) ) ) );\n" -#: openidsettings.php:58 openidadminpanel.php:65 -msgid "OpenID settings" -msgstr "إعدادات الهوية المفتوحة" +msgid "OpenID Identity Verification" +msgstr "التحقق من الهوية المفتوحة" + +msgid "" +"This page should only be reached during OpenID processing, not directly." +msgstr "" +"يجب أن يتم الوصول إلى هذه الصفحة أثناء معالجة الهوية المفتوحة وليس مباشرة." -#: openidsettings.php:69 #, php-format msgid "" -"[OpenID](%%doc.openid%%) lets you log into many sites with the same user " -"account. Manage your associated OpenIDs from here." +"%s has asked to verify your identity. Click Continue to verify your " +"identity and login without creating a new password." msgstr "" -"تمكنك [الهوية المفتوحة](%%doc.openid%%) من الولوج إلى مواقع كثيرة بنفس حساب " -"المستخدم. أدر هوياتك المفتوحة هنا." +"طلب %s التحقق من هويتك. انقر استمر لتؤكد هويتك وتدخل دون إنشاء كلمة سر." -#: openidsettings.php:100 -msgid "Add OpenID" -msgstr "أضف هوية مفتوحة" +msgid "Continue" +msgstr "استمر" -#: openidsettings.php:103 -msgid "" -"If you want to add an OpenID to your account, enter it in the box below and " -"click \"Add\"." -msgstr "" -"إذا أردت إضافة هوية مفتوحة إلى حسابك، أدخلها إلى الصندوق أدناه وانقر \"أضف\"." - -#. TRANS: OpenID plugin logon form field label. -#: openidsettings.php:108 OpenIDPlugin.php:681 openidlogin.php:161 -msgid "OpenID URL" -msgstr "مسار الهوية المفتوحة" - -#: openidsettings.php:118 -msgid "Add" -msgstr "أضف" - -#: openidsettings.php:130 -msgid "Remove OpenID" -msgstr "أزل الهوية المفتوحة" - -#: openidsettings.php:135 -msgid "" -"Removing your only OpenID would make it impossible to log in! If you need to " -"remove it, add another OpenID first." -msgstr "" -"إن حذف هويتك المفتوحة الوحيدة سيجعل من المستحيل الولوج! إذا أردت إضافة هذه " -"فأضف هوية مفتوحة أخرى أولا." - -#: openidsettings.php:150 -msgid "" -"You can remove an OpenID from your account by clicking the button marked " -"\"Remove\"." -msgstr "يمكنك إزالة هوية مفتوحة من حسابك بنفر الزر المُعلّم \"أزل\"." - -#: openidsettings.php:173 openidsettings.php:214 -msgid "Remove" -msgstr "أزل" - -#: openidsettings.php:187 -msgid "OpenID Trusted Sites" -msgstr "مواقع الهوية المفتوحة الموثوقة" - -#: openidsettings.php:190 -msgid "" -"The following sites are allowed to access your identity and log you in. You " -"can remove a site from this list to deny it access to your OpenID." -msgstr "" -"يسمح للمواقع التالية بالوصول إلى هويتك والولوج بها. يمكنك إزالة موقع من " -"القائمة لمنعه من الوصول إلى هويتك المفتوحة." - -#. TRANS: Message given when there is a problem with the user's session token. -#: openidsettings.php:232 finishopenidlogin.php:42 openidlogin.php:51 -msgid "There was a problem with your session token. Try again, please." -msgstr "" - -#: openidsettings.php:239 -msgid "Can't add new providers." -msgstr "" - -#: openidsettings.php:252 -msgid "Something weird happened." -msgstr "" - -#: openidsettings.php:276 -msgid "No such OpenID trustroot." -msgstr "" - -#: openidsettings.php:280 -msgid "Trustroots removed" -msgstr "" - -#: openidsettings.php:303 -msgid "No such OpenID." -msgstr "لا هوية مفتوحة كهذه." - -#: openidsettings.php:308 -msgid "That OpenID does not belong to you." -msgstr "تلك الهوية المفتوحة ليست لك." - -#: openidsettings.php:312 -msgid "OpenID removed." -msgstr "أزيلت الهوية المفتوحة." - -#: openidadminpanel.php:54 -msgid "OpenID" -msgstr "الهوية المفتوحة" - -#: openidadminpanel.php:147 -msgid "Invalid provider URL. Max length is 255 characters." -msgstr "مسار المزود غير صالح. أقصى طول 255 حرف." - -#: openidadminpanel.php:153 -msgid "Invalid team name. Max length is 255 characters." -msgstr "اسم فريق غير صالح. أقصى طول 255 حرف." - -#: openidadminpanel.php:210 -msgid "Trusted provider" -msgstr "مزود موثوق" - -#: openidadminpanel.php:212 -msgid "" -"By default, users are allowed to authenticate with any OpenID provider. If " -"you are using your own OpenID service for shared sign-in, you can restrict " -"access to only your own users here." -msgstr "" - -#: openidadminpanel.php:220 -msgid "Provider URL" -msgstr "" - -#: openidadminpanel.php:221 -msgid "" -"All OpenID logins will be sent to this URL; other providers may not be used." -msgstr "" - -#: openidadminpanel.php:228 -msgid "Append a username to base URL" -msgstr "" - -#: openidadminpanel.php:230 -msgid "" -"Login form will show the base URL and prompt for a username to add at the " -"end. Use when OpenID provider URL should be the profile page for individual " -"users." -msgstr "" - -#: openidadminpanel.php:238 -msgid "Required team" -msgstr "" - -#: openidadminpanel.php:239 -msgid "Only allow logins from users in the given team (Launchpad extension)." -msgstr "" - -#: openidadminpanel.php:251 -msgid "Options" -msgstr "" - -#: openidadminpanel.php:258 -msgid "Enable OpenID-only mode" -msgstr "" - -#: openidadminpanel.php:260 -msgid "" -"Require all users to login via OpenID. Warning: disables password " -"authentication for all users!" -msgstr "" - -#: openidadminpanel.php:278 -msgid "Save OpenID settings" -msgstr "" - -#. TRANS: OpenID plugin server error. -#: openid.php:138 -msgid "Cannot instantiate OpenID consumer object." -msgstr "" - -#. TRANS: OpenID plugin message. Given when an OpenID is not valid. -#: openid.php:150 -msgid "Not a valid OpenID." -msgstr "" - -#. TRANS: OpenID plugin server error. Given when the OpenID authentication request fails. -#. TRANS: %s is the failure message. -#: openid.php:155 -#, php-format -msgid "OpenID failure: %s" -msgstr "" - -#. TRANS: OpenID plugin server error. Given when the OpenID authentication request cannot be redirected. -#. TRANS: %s is the failure message. -#: openid.php:205 -#, php-format -msgid "Could not redirect to server: %s" -msgstr "" - -#. TRANS: OpenID plugin user instructions. -#: openid.php:244 -msgid "" -"This form should automatically submit itself. If not, click the submit " -"button to go to your OpenID provider." -msgstr "" - -#. TRANS: OpenID plugin server error. -#: openid.php:280 -msgid "Error saving the profile." -msgstr "" - -#. TRANS: OpenID plugin server error. -#: openid.php:292 -msgid "Error saving the user." -msgstr "" - -#. TRANS: OpenID plugin client exception (403). -#: openid.php:322 -msgid "Unauthorized URL used for OpenID login." -msgstr "" - -#. TRANS: Title -#: openid.php:370 -msgid "OpenID Login Submission" -msgstr "" - -#. TRANS: OpenID plugin message used while requesting authorization user's OpenID login provider. -#: openid.php:381 -msgid "Requesting authorization from your login provider..." -msgstr "" - -#. TRANS: OpenID plugin message. User instruction while requesting authorization user's OpenID login provider. -#: openid.php:385 -msgid "" -"If you are not redirected to your login provider in a few seconds, try " -"pushing the button below." -msgstr "" +msgid "Cancel" +msgstr "ألغِ" #. TRANS: Tooltip for main menu option "Login" -#: OpenIDPlugin.php:218 msgctxt "TOOLTIP" msgid "Login to the site" -msgstr "" +msgstr "لُج في الموقع" #. TRANS: Main menu option when not logged in to log in -#: OpenIDPlugin.php:221 msgctxt "MENU" msgid "Login" -msgstr "" +msgstr "لُج" #. TRANS: Tooltip for main menu option "Help" -#: OpenIDPlugin.php:226 msgctxt "TOOLTIP" msgid "Help me!" msgstr "ساعدني!" #. TRANS: Main menu option for help on the StatusNet site -#: OpenIDPlugin.php:229 msgctxt "MENU" msgid "Help" -msgstr "" +msgstr "مساعدة" #. TRANS: Tooltip for main menu option "Search" -#: OpenIDPlugin.php:235 msgctxt "TOOLTIP" msgid "Search for people or text" -msgstr "" +msgstr "ابحث عن أشخاص أو نصوص" #. TRANS: Main menu option when logged in or when the StatusNet instance is not private -#: OpenIDPlugin.php:238 msgctxt "MENU" msgid "Search" -msgstr "" +msgstr "بحث" #. TRANS: OpenID plugin menu item on site logon page. #. TRANS: OpenID plugin menu item on user settings page. #. TRANS: OpenID configuration menu item. -#: OpenIDPlugin.php:295 OpenIDPlugin.php:331 OpenIDPlugin.php:605 msgctxt "MENU" msgid "OpenID" -msgstr "" +msgstr "هوية مفتوحة" #. TRANS: OpenID plugin tooltip for logon menu item. -#: OpenIDPlugin.php:297 msgid "Login or register with OpenID" -msgstr "" +msgstr "لُج أو سجّل بهوية مفتوحة" #. TRANS: OpenID plugin tooltip for user settings menu item. -#: OpenIDPlugin.php:333 msgid "Add or remove OpenIDs" -msgstr "" +msgstr "أضف أو احذف هويات مفتوحة" #. TRANS: Tooltip for OpenID configuration menu item. -#: OpenIDPlugin.php:607 msgid "OpenID configuration" -msgstr "" +msgstr "ضبط الهوية المفتوحة" #. TRANS: OpenID plugin description. -#: OpenIDPlugin.php:631 msgid "Use OpenID to login to the site." -msgstr "" +msgstr "استخدم هوية مفتوحة للدخول للموقع." #. TRANS: button label for OAuth authorization page when needing OpenID authentication first. -#: OpenIDPlugin.php:641 msgctxt "BUTTON" msgid "Continue" msgstr "استمر" #. TRANS: OpenID plugin logon form legend. -#: OpenIDPlugin.php:658 openidlogin.php:140 msgid "OpenID login" -msgstr "" +msgstr "الدخول بهوية مفتوحة" #. TRANS: Field label. -#: OpenIDPlugin.php:666 openidlogin.php:148 msgid "OpenID provider" -msgstr "" +msgstr "مزود هوية مفتوحة" #. TRANS: Form guide. -#: OpenIDPlugin.php:675 openidlogin.php:156 msgid "Enter your username." msgstr "أدخل اسم مستخدمك." #. TRANS: Form guide. -#: OpenIDPlugin.php:677 openidlogin.php:157 msgid "You will be sent to the provider's site for authentication." -msgstr "" +msgstr "سوف تُرسل إلى موقع المزود من أجل الاستيثاق." + +#. TRANS: OpenID plugin logon form field label. +msgid "OpenID URL" +msgstr "مسار الهوية المفتوحة" #. TRANS: OpenID plugin logon form field instructions. -#: OpenIDPlugin.php:684 openidlogin.php:164 msgid "Your OpenID URL" -msgstr "" - -#. TRANS: OpenID plugin client error given trying to add an unauthorised OpenID to a user (403). -#: openidserver.php:116 -#, php-format -msgid "You are not authorized to use the identity %s." -msgstr "" - -#. TRANS: OpenID plugin client error given when not getting a response for a given OpenID provider (500). -#: openidserver.php:137 -msgid "Just an OpenID provider. Nothing to see here, move along..." -msgstr "" +msgstr "مسار هويتك المفتوحة" #. TRANS: Client error message trying to log on with OpenID while already logged on. -#: finishopenidlogin.php:37 openidlogin.php:33 msgid "Already logged in." +msgstr "داخل فعلا." + +#. TRANS: Message given when there is a problem with the user's session token. +msgid "There was a problem with your session token. Try again, please." msgstr "" #. TRANS: Message given if user does not agree with the site's license. -#: finishopenidlogin.php:48 msgid "You can't register if you don't agree to the license." -msgstr "" +msgstr "لا يمكن أن تسجل ما لم توافق على الرخصة." #. TRANS: Messag given on an unknown error. -#: finishopenidlogin.php:57 msgid "An unknown error has occured." -msgstr "" +msgstr "حدث خطأ غير معروف." #. TRANS: Instructions given after a first successful logon using OpenID. #. TRANS: %s is the site name. -#: finishopenidlogin.php:73 #, php-format msgid "" "This is the first time you've logged into %s so we must connect your OpenID " @@ -387,203 +152,336 @@ msgid "" msgstr "" #. TRANS: Title -#: finishopenidlogin.php:80 msgid "OpenID Account Setup" -msgstr "" +msgstr "إعداد حساب هوية مفتوحة" -#: finishopenidlogin.php:117 msgid "Create new account" msgstr "أنشئ حسابًا جديدًا" -#: finishopenidlogin.php:119 msgid "Create a new user with this nickname." -msgstr "" +msgstr "أنشئ مستخدمًا جديدًا بهذا الاسم المستعار." -#: finishopenidlogin.php:122 msgid "New nickname" -msgstr "" +msgstr "الاسم المستعار الجديد" -#: finishopenidlogin.php:124 msgid "1-64 lowercase letters or numbers, no punctuation or spaces" msgstr "" #. TRANS: Button label in form in which to create a new user on the site for an OpenID. -#: finishopenidlogin.php:149 msgctxt "BUTTON" msgid "Create" -msgstr "" +msgstr "أنشئ" #. TRANS: Used as form legend for form in which to connect an OpenID to an existing user on the site. -#: finishopenidlogin.php:163 msgid "Connect existing account" -msgstr "" +msgstr "اربط الحساب الموجود" #. TRANS: User instructions for form in which to connect an OpenID to an existing user on the site. -#: finishopenidlogin.php:166 msgid "" "If you already have an account, login with your username and password to " "connect it to your OpenID." msgstr "" +"إذا كان لديك حساب فعلا، لج باسم مستخدمك وكلمة سرك لتربطه بهويتك المفتوحة." #. TRANS: Field label in form in which to connect an OpenID to an existing user on the site. -#: finishopenidlogin.php:170 msgid "Existing nickname" -msgstr "" +msgstr "الاسم المستعار الموجود" #. TRANS: Field label in form in which to connect an OpenID to an existing user on the site. -#: finishopenidlogin.php:174 msgid "Password" msgstr "كلمة السر" #. TRANS: Button label in form in which to connect an OpenID to an existing user on the site. -#: finishopenidlogin.php:178 msgctxt "BUTTON" msgid "Connect" -msgstr "" +msgstr "اربط" #. TRANS: Status message in case the response from the OpenID provider is that the logon attempt was cancelled. -#: finishopenidlogin.php:191 finishaddopenid.php:90 msgid "OpenID authentication cancelled." -msgstr "" +msgstr "ألغي استيثاق الهوية المفتوحة" #. TRANS: OpenID authentication failed; display the error message. %s is the error message. #. TRANS: OpenID authentication failed; display the error message. #. TRANS: %s is the error message. -#: finishopenidlogin.php:195 finishaddopenid.php:95 #, php-format msgid "OpenID authentication failed: %s" -msgstr "" +msgstr "فشل استيثاق الهوية المفتوحة: %s" -#: finishopenidlogin.php:215 finishaddopenid.php:111 msgid "" "OpenID authentication aborted: you are not allowed to login to this site." -msgstr "" +msgstr "أجهض استيثاق الهوية المفتوحة: لا يسمح لك بدخول هذا الموقع." #. TRANS: OpenID plugin message. No new user registration is allowed on the site. #. TRANS: OpenID plugin message. No new user registration is allowed on the site without an invitation code, and none was provided. -#: finishopenidlogin.php:267 finishopenidlogin.php:277 msgid "Registration not allowed." -msgstr "" +msgstr "لا يسمح بالتسجيل." #. TRANS: OpenID plugin message. No new user registration is allowed on the site without an invitation code, and the one provided was not valid. -#: finishopenidlogin.php:285 msgid "Not a valid invitation code." -msgstr "" +msgstr "رمز الدعوة غير صالح." #. TRANS: OpenID plugin message. The entered new user name is blacklisted. -#: finishopenidlogin.php:299 msgid "Nickname not allowed." -msgstr "" +msgstr "لا يسمح بهذا الاسم المستعار." #. TRANS: OpenID plugin message. The entered new user name is already used. -#: finishopenidlogin.php:305 msgid "Nickname already in use. Try another one." msgstr "" #. TRANS: OpenID plugin server error. A stored OpenID cannot be retrieved. #. TRANS: OpenID plugin server error. A stored OpenID cannot be found. -#: finishopenidlogin.php:313 finishopenidlogin.php:400 msgid "Stored OpenID not found." msgstr "" #. TRANS: OpenID plugin server error. -#: finishopenidlogin.php:323 msgid "Creating new account for OpenID that already has a user." msgstr "" #. TRANS: OpenID plugin message. -#: finishopenidlogin.php:388 msgid "Invalid username or password." msgstr "" #. TRANS: OpenID plugin server error. The user or user profile could not be saved. -#: finishopenidlogin.php:408 msgid "Error connecting user to OpenID." msgstr "" +#. TRANS: OpenID plugin server error. +msgid "Cannot instantiate OpenID consumer object." +msgstr "" + +#. TRANS: OpenID plugin message. Given when an OpenID is not valid. +msgid "Not a valid OpenID." +msgstr "" + +#. TRANS: OpenID plugin server error. Given when the OpenID authentication request fails. +#. TRANS: %s is the failure message. +#, php-format +msgid "OpenID failure: %s" +msgstr "" + +#. TRANS: OpenID plugin server error. Given when the OpenID authentication request cannot be redirected. +#. TRANS: %s is the failure message. +#, php-format +msgid "Could not redirect to server: %s" +msgstr "" + +#. TRANS: OpenID plugin user instructions. +msgid "" +"This form should automatically submit itself. If not, click the submit " +"button to go to your OpenID provider." +msgstr "" + +#. TRANS: OpenID plugin server error. +msgid "Error saving the profile." +msgstr "خطأ أثناء حفظ الملف." + +#. TRANS: OpenID plugin server error. +msgid "Error saving the user." +msgstr "خطأ في حفظ المستخدم." + +#. TRANS: OpenID plugin client exception (403). +msgid "Unauthorized URL used for OpenID login." +msgstr "أُستخدِم مسار غير مصرح به للولوج بالهوية المفتوحة." + +#. TRANS: Title +msgid "OpenID Login Submission" +msgstr "إرسال ولوج الهوية المفتوحة" + +#. TRANS: OpenID plugin message used while requesting authorization user's OpenID login provider. +msgid "Requesting authorization from your login provider..." +msgstr "طلب التصريح من مزود الولوج..." + +#. TRANS: OpenID plugin message. User instruction while requesting authorization user's OpenID login provider. +msgid "" +"If you are not redirected to your login provider in a few seconds, try " +"pushing the button below." +msgstr "إذا لم تُحوّل إلى مزود الولوج خلال ثوانٍ قليلة، حاول نقر الزر أدناه." + +msgid "OpenID" +msgstr "الهوية المفتوحة" + +msgid "OpenID settings" +msgstr "إعدادات الهوية المفتوحة" + +msgid "Invalid provider URL. Max length is 255 characters." +msgstr "مسار المزود غير صالح. أقصى طول 255 حرف." + +msgid "Invalid team name. Max length is 255 characters." +msgstr "اسم فريق غير صالح. أقصى طول 255 حرف." + +msgid "Trusted provider" +msgstr "مزود موثوق" + +msgid "" +"By default, users are allowed to authenticate with any OpenID provider. If " +"you are using your own OpenID service for shared sign-in, you can restrict " +"access to only your own users here." +msgstr "" + +msgid "Provider URL" +msgstr "" + +msgid "" +"All OpenID logins will be sent to this URL; other providers may not be used." +msgstr "" + +msgid "Append a username to base URL" +msgstr "" + +msgid "" +"Login form will show the base URL and prompt for a username to add at the " +"end. Use when OpenID provider URL should be the profile page for individual " +"users." +msgstr "" + +msgid "Required team" +msgstr "" + +msgid "Only allow logins from users in the given team (Launchpad extension)." +msgstr "" + +msgid "Options" +msgstr "خيارات" + +msgid "Enable OpenID-only mode" +msgstr "" + +msgid "" +"Require all users to login via OpenID. Warning: disables password " +"authentication for all users!" +msgstr "" + +msgid "Save OpenID settings" +msgstr "" + +#. TRANS: Client error message +msgid "Not logged in." +msgstr "لست والجًا." + +#. TRANS: message in case a user tries to add an OpenID that is already connected to them. +msgid "You already have this OpenID!" +msgstr "" + +#. TRANS: message in case a user tries to add an OpenID that is already used by another user. +msgid "Someone else already has this OpenID." +msgstr "" + +#. TRANS: message in case the OpenID object cannot be connected to the user. +msgid "Error connecting user." +msgstr "" + +#. TRANS: message in case the user or the user profile cannot be saved in StatusNet. +msgid "Error updating profile" +msgstr "" + +#. TRANS: Title after getting the status of the OpenID authorisation request. +#. TRANS: OpenID plugin message. Title. +msgid "OpenID Login" +msgstr "ولوج الهوية المفتوحة" + +#, php-format +msgid "" +"[OpenID](%%doc.openid%%) lets you log into many sites with the same user " +"account. Manage your associated OpenIDs from here." +msgstr "" +"تمكنك [الهوية المفتوحة](%%doc.openid%%) من الولوج إلى مواقع كثيرة بنفس حساب " +"المستخدم. أدر هوياتك المفتوحة هنا." + +msgid "Add OpenID" +msgstr "أضف هوية مفتوحة" + +msgid "" +"If you want to add an OpenID to your account, enter it in the box below and " +"click \"Add\"." +msgstr "" +"إذا أردت إضافة هوية مفتوحة إلى حسابك، أدخلها إلى الصندوق أدناه وانقر \"أضف\"." + +msgid "Add" +msgstr "أضف" + +msgid "Remove OpenID" +msgstr "أزل الهوية المفتوحة" + +msgid "" +"Removing your only OpenID would make it impossible to log in! If you need to " +"remove it, add another OpenID first." +msgstr "" +"إن حذف هويتك المفتوحة الوحيدة سيجعل من المستحيل الولوج! إذا أردت إضافة هذه " +"فأضف هوية مفتوحة أخرى أولا." + +msgid "" +"You can remove an OpenID from your account by clicking the button marked " +"\"Remove\"." +msgstr "يمكنك إزالة هوية مفتوحة من حسابك بنفر الزر المُعلّم \"أزل\"." + +msgid "Remove" +msgstr "أزل" + +msgid "OpenID Trusted Sites" +msgstr "مواقع الهوية المفتوحة الموثوقة" + +msgid "" +"The following sites are allowed to access your identity and log you in. You " +"can remove a site from this list to deny it access to your OpenID." +msgstr "" +"يسمح للمواقع التالية بالوصول إلى هويتك والولوج بها. يمكنك إزالة موقع من " +"القائمة لمنعه من الوصول إلى هويتك المفتوحة." + +msgid "Can't add new providers." +msgstr "تعذرت إضافة مزودين جدد." + +msgid "Something weird happened." +msgstr "حدث شيء غريب." + +msgid "No such OpenID trustroot." +msgstr "" + +msgid "Trustroots removed" +msgstr "" + +msgid "No such OpenID." +msgstr "لا هوية مفتوحة كهذه." + +msgid "That OpenID does not belong to you." +msgstr "تلك الهوية المفتوحة ليست لك." + +msgid "OpenID removed." +msgstr "أزيلت الهوية المفتوحة." + +#. TRANS: OpenID plugin client error given trying to add an unauthorised OpenID to a user (403). +#, php-format +msgid "You are not authorized to use the identity %s." +msgstr "ليس مصرحًا لك باستخدام الهوية %s." + +#. TRANS: OpenID plugin client error given when not getting a response for a given OpenID provider (500). +msgid "Just an OpenID provider. Nothing to see here, move along..." +msgstr "مزود هوية مفتوحة لا أكثر. لا شيء يمكن أن تراه هنا، واصل..." + #. TRANS: OpenID plugin message. Rememberme logins have to reauthenticate before changing any profile settings. #. TRANS: "OpenID" is the display text for a link with URL "(%%doc.openid%%)". -#: openidlogin.php:82 #, php-format msgid "" "For security reasons, please re-login with your [OpenID](%%doc.openid%%) " "before changing your settings." msgstr "" +"لأسباب أمنية، الرجاء إعادة الولوج ب[هويتك المفتوحة](%%doc.openid%%) قبل " +"تغيير إعداداتك." #. TRANS: OpenID plugin message. #. TRANS: "OpenID" is the display text for a link with URL "(%%doc.openid%%)". -#: openidlogin.php:88 #, php-format msgid "Login with an [OpenID](%%doc.openid%%) account." -msgstr "" - -#. TRANS: OpenID plugin message. Title. -#. TRANS: Title after getting the status of the OpenID authorisation request. -#: openidlogin.php:122 finishaddopenid.php:187 -msgid "OpenID Login" -msgstr "" +msgstr "لُج بحساب [هوية مفتوحة](%%doc.openid%%)" #. TRANS: OpenID plugin logon form checkbox label for setting to put the OpenID information in a cookie. -#: openidlogin.php:169 msgid "Remember me" msgstr "تذكرني" #. TRANS: OpenID plugin logon form field instructions. -#: openidlogin.php:171 msgid "Automatically login in the future; not for shared computers!" -msgstr "" +msgstr "لُج تلقائيًا في المستقبل؛ هذا الخيار ليس مُعدًا للحواسيب المشتركة!" #. TRANS: OpenID plugin logon form button label to start logon with the data provided in the logon form. -#: openidlogin.php:176 msgctxt "BUTTON" msgid "Login" -msgstr "" - -#: openidtrust.php:52 -msgid "OpenID Identity Verification" -msgstr "" - -#: openidtrust.php:70 -msgid "" -"This page should only be reached during OpenID processing, not directly." -msgstr "" - -#: openidtrust.php:118 -#, php-format -msgid "" -"%s has asked to verify your identity. Click Continue to verify your " -"identity and login without creating a new password." -msgstr "" - -#: openidtrust.php:136 -msgid "Continue" -msgstr "استمر" - -#: openidtrust.php:137 -msgid "Cancel" -msgstr "ألغِ" - -#. TRANS: Client error message -#: finishaddopenid.php:68 -msgid "Not logged in." -msgstr "لست والجًا." - -#. TRANS: message in case a user tries to add an OpenID that is already connected to them. -#: finishaddopenid.php:122 -msgid "You already have this OpenID!" -msgstr "" - -#. TRANS: message in case a user tries to add an OpenID that is already used by another user. -#: finishaddopenid.php:125 -msgid "Someone else already has this OpenID." -msgstr "" - -#. TRANS: message in case the OpenID object cannot be connected to the user. -#: finishaddopenid.php:138 -msgid "Error connecting user." -msgstr "" - -#. TRANS: message in case the user or the user profile cannot be saved in StatusNet. -#: finishaddopenid.php:145 -msgid "Error updating profile" -msgstr "" +msgstr "لُج" diff --git a/plugins/Poll/locale/tl/LC_MESSAGES/Poll.po b/plugins/Poll/locale/tl/LC_MESSAGES/Poll.po new file mode 100644 index 0000000000..985e639667 --- /dev/null +++ b/plugins/Poll/locale/tl/LC_MESSAGES/Poll.po @@ -0,0 +1,153 @@ +# Translation of StatusNet - Poll to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Poll\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:32+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-17 10:19:34+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-poll\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. TRANS: Client exception thrown trying to view a non-existing poll. +msgid "No such poll." +msgstr "Walang ganyang botohan." + +#. TRANS: Client exception thrown trying to view a non-existing poll notice. +msgid "No such poll notice." +msgstr "Walang ganyang pabatid na pangbotohan." + +#. TRANS: Client exception thrown trying to view a poll of a non-existing user. +msgid "No such user." +msgstr "Walang ganyang tagagamit." + +#. TRANS: Server exception thrown trying to view a poll for a user for which the profile could not be loaded. +msgid "User without a profile." +msgstr "Tagagamit na walang balangkas." + +#. TRANS: Page title for a poll. +#. TRANS: %1$s is the nickname of the user that created the poll, %2$s is the poll question. +#, php-format +msgid "%1$s's poll: %2$s" +msgstr "%1$s ng botohan: %2$s" + +#. TRANS: Field label on the page to create a poll. +msgid "Question" +msgstr "Katanungan" + +#. TRANS: Field title on the page to create a poll. +msgid "What question are people answering?" +msgstr "Ang katanungan ang sinasagot ng mga tao?" + +#. TRANS: Field label for an answer option on the page to create a poll. +#. TRANS: %d is the option number. +#, php-format +msgid "Option %d" +msgstr "Mapipili na %d" + +#. TRANS: Button text for saving a new poll. +msgctxt "BUTTON" +msgid "Save" +msgstr "Sagipin" + +#. TRANS: Plugin description. +msgid "Simple extension for supporting basic polls." +msgstr "Payak na dugtong para sa pagtangkilik ng payak na mga botohan." + +#. TRANS: Exception thrown trying to respond to a poll without a poll reference. +msgid "Invalid poll response: no poll reference." +msgstr "" +"Hindi katanggap-tanggap na tugon sa botohan: walang sanggunian ng botohan" + +#. TRANS: Exception thrown trying to respond to a non-existing poll. +msgid "Invalid poll response: poll is unknown." +msgstr "Hindi katanggap-tanggap na tugon: hindi nalalaman ang botohan." + +#. TRANS: Exception thrown when performing an unexpected action on a poll. +#. TRANS: %s is the unpexpected object type. +#, php-format +msgid "Unexpected type for poll plugin: %s." +msgstr "Hindi inaasahang uri ng pampasak ng botohan: %s." + +#. TRANS: Application title. +msgctxt "APPTITLE" +msgid "Poll" +msgstr "Botohan" + +#. TRANS: Client exception thrown when responding to a poll with an invalid option. +#. TRANS: Client exception thrown responding to a poll with an invalid answer. +msgid "Invalid poll selection." +msgstr "Hindi katanggap-tanggap na napiling botohan." + +#. TRANS: Notice content voting for a poll. +#. TRANS: %s is the chosen option in the poll. +#. TRANS: Rendered version of the notice content voting for a poll. +#. TRANS: %s a link to the poll with the chosen option as link description. +#, php-format +msgid "voted for \"%s\"" +msgstr "bumoto para sa \"%s \"" + +#. TRANS: Button text for submitting a poll response. +msgctxt "BUTTON" +msgid "Submit" +msgstr "Ipasa" + +#. TRANS: Notice content creating a poll. +#. TRANS: %1$s is the poll question, %2$s is a link to the poll. +#, php-format +msgid "Poll: %1$s %2$s" +msgstr "Botohan: %1$s %2$s" + +#. TRANS: Rendered version of the notice content creating a poll. +#. TRANS: %s a link to the poll with the question as link description. +#, php-format +msgid "Poll: %s" +msgstr "Botohan: %s" + +#. TRANS: Title for poll page. +msgid "New poll" +msgstr "Bagong botohan" + +#. TRANS: Client exception thrown trying to create a poll while not logged in. +msgid "You must be logged in to post a poll." +msgstr "Kinakailangan mong lumagda muna upang makapagpaskil ng isang botohan." + +#. TRANS: Client exception thrown trying to create a poll without a question. +msgid "Poll must have a question." +msgstr "Dapat na may isang katanungan ang botohan." + +#. TRANS: Client exception thrown trying to create a poll with fewer than two options. +msgid "Poll must have at least two options." +msgstr "Ang botohan ay dapat na may kahit na dalawang mapagpipilian." + +#. TRANS: Page title after sending a notice. +msgid "Notice posted" +msgstr "Ipinaskil na ang pabatid" + +#. TRANS: Page title for poll response. +msgid "Poll response" +msgstr "Tugon sa botohan" + +#. TRANS: Client exception thrown trying to respond to a poll while not logged in. +msgid "You must be logged in to respond to a poll." +msgstr "Dapat kang nakalagda upang makatugon sa isang botohan." + +#. TRANS: Client exception thrown trying to respond to a non-existing poll. +msgid "Invalid or missing poll." +msgstr "Hindi katanggap-tanggap o nawawalang botohan." + +#. TRANS: Page title after sending a poll response. +msgid "Poll results" +msgstr "Mga kinalabasan ng botohan" diff --git a/plugins/Realtime/locale/ar/LC_MESSAGES/Realtime.po b/plugins/Realtime/locale/ar/LC_MESSAGES/Realtime.po new file mode 100644 index 0000000000..5360b9fe30 --- /dev/null +++ b/plugins/Realtime/locale/ar/LC_MESSAGES/Realtime.po @@ -0,0 +1,54 @@ +# Translation of StatusNet - Realtime to Arabic (العربية) +# Exported from translatewiki.net +# +# Author: OsamaK +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Realtime\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:35+0000\n" +"Language-Team: Arabic \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:08:32+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ar\n" +"X-Message-Group: #out-statusnet-plugin-realtime\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" + +#. TRANS: Text label for realtime view "play" button, usually replaced by an icon. +msgctxt "BUTTON" +msgid "Play" +msgstr "شغّل" + +#. TRANS: Tooltip for realtime view "play" button. +msgctxt "TOOLTIP" +msgid "Play" +msgstr "شغّل" + +#. TRANS: Text label for realtime view "pause" button +msgctxt "BUTTON" +msgid "Pause" +msgstr "ألبث" + +#. TRANS: Tooltip for realtime view "pause" button +msgctxt "TOOLTIP" +msgid "Pause" +msgstr "ألبث" + +#. TRANS: Text label for realtime view "popup" button, usually replaced by an icon. +msgctxt "BUTTON" +msgid "Pop up" +msgstr "منبثق" + +#. TRANS: Tooltip for realtime view "popup" button. +msgctxt "TOOLTIP" +msgid "Pop up in a window" +msgstr "منبثق في نافذة" diff --git a/plugins/SearchSub/locale/ia/LC_MESSAGES/SearchSub.po b/plugins/SearchSub/locale/ia/LC_MESSAGES/SearchSub.po new file mode 100644 index 0000000000..87fbdb13d6 --- /dev/null +++ b/plugins/SearchSub/locale/ia/LC_MESSAGES/SearchSub.po @@ -0,0 +1,185 @@ +# Translation of StatusNet - SearchSub to Interlingua (Interlingua) +# Exported from translatewiki.net +# +# Author: McDutchie +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - SearchSub\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:43+0000\n" +"Language-Team: Interlingua \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:15:51+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ia\n" +"X-Message-Group: #out-statusnet-plugin-searchsub\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. TRANS: Header for subscriptions overview for a user (first page). +#. TRANS: %s is a user nickname. +#, php-format +msgid "%s's search subscriptions" +msgstr "Subscriptiones de recerca de %s" + +#. TRANS: Header for subscriptions overview for a user (not first page). +#. TRANS: %1$s is a user nickname, %2$d is the page number. +#, php-format +msgid "%1$s's search subscriptions, page %2$d" +msgstr "Subscriptiones de recerca de %1$s, pagina %2$d" + +#. TRANS: Page notice for page with an overview of all search subscriptions +#. TRANS: of the logged in user's own profile. +msgid "" +"You have subscribed to receive all notices on this site matching the " +"following searches:" +msgstr "" +"Tu ha subscribite a reciper tote le notas in iste sito correspondente al " +"sequente recercas:" + +#. TRANS: Page notice for page with an overview of all subscriptions of a user other +#. TRANS: than the logged in user. %s is the user nickname. +#, php-format +msgid "" +"%s has subscribed to receive all notices on this site matching the following " +"searches:" +msgstr "" +"%s ha subscribite a reciper tote le notas in iste sito correspondente al " +"sequente recercas:" + +#. TRANS: Search subscription list text when the logged in user has no search subscriptions. +msgid "" +"You are not subscribed to any text searches right now. You can push the " +"\"Subscribe\" button on any notice text search to automatically receive any " +"public messages on this site that match that search, even if you are not " +"subscribed to the poster." +msgstr "" +"Tu non es ancora subscribite a un recerca de texto. Tu pote cliccar sur le " +"button \"Subscriber\" in omne recerca de texto de nota pro reciper " +"automaticamente tote le messages public in iste sito que corresponde a iste " +"recerca, mesmo si tu non es subscribite al autor." + +#. TRANS: Search subscription list text when looking at the subscriptions for a of a user other +#. TRANS: than the logged in user that has no search subscriptions. %s is the user nickname. +#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none +#. TRANS: as an anonymous user. %s is the user nickname. +#, php-format +msgid "%s is not subscribed to any searches." +msgstr "%s non es subscribite a alcun recerca." + +#. TRANS: Search subscription list item. %1$s is a URL to a notice search, +#. TRANS: %2$s are the search criteria, %3$s is a datestring. +#, php-format +msgid "\"%2$s\" since %3$s" +msgstr "\"%2$s\" depost %3$s" + +#. TRANS: Error text shown a user tries to untrack a search query they're not subscribed to. +#, php-format +msgid "You are not tracking the search \"%s\"." +msgstr "Tu non tracia le recerca \"%s\"." + +#. TRANS: Message given having failed to cancel a search subscription by untrack command. +#, php-format +msgid "Could not end a search subscription for query \"%s\"." +msgstr "Non poteva terminar un subscription al recerca de \"%s\"." + +#. TRANS: Message given having removed a search subscription by untrack command. +#, php-format +msgid "You are no longer subscribed to the search \"%s\"." +msgstr "Tu non es plus subscribite al recerca de \"%s\"." + +#. TRANS: Page title when search subscription succeeded. +msgid "Subscribed" +msgstr "Subscribite" + +msgid "Unsubscribe from this search" +msgstr "Cancellar subscription a iste recerca" + +#. TRANS: Page title when search unsubscription succeeded. +msgid "Unsubscribed" +msgstr "Subscription cancellate" + +#. TRANS: Error text shown a user tries to track a search query they're already subscribed to. +#, php-format +msgid "You are already tracking the search \"%s\"." +msgstr "Tu jam tracia le recerca \"%s\"." + +#. TRANS: Message given having failed to set up a search subscription by track command. +#, php-format +msgid "Could not start a search subscription for query \"%s\"." +msgstr "Non poteva comenciar un subscription al recerca de \"%s\"." + +#. TRANS: Message given having added a search subscription by track command. +#, php-format +msgid "You are subscribed to the search \"%s\"." +msgstr "Tu es subscribite al recerca de \"%s\"." + +#. TRANS: Plugin description. +msgid "Plugin to allow following all messages with a given search." +msgstr "" +"Plug-in pro permitter le sequimento de tote le messages con un recerca " +"specificate." + +#. TRANS: SearchSub plugin menu item on user settings page. +msgctxt "MENU" +msgid "Searches" +msgstr "Recercas" + +#. TRANS: SearchSub plugin tooltip for user settings menu item. +msgid "Configure search subscriptions" +msgstr "Configurar subscriptiones de recerca" + +msgid "Search subscriptions" +msgstr "Subscriptiones de recerca" + +#. TRANS: Help message for IM/SMS command "track " +msgctxt "COMMANDHELP" +msgid "Start following notices matching the given search query." +msgstr "" +"Comenciar a sequer le notas correspondente al parolas de recerca specificate." + +#. TRANS: Help message for IM/SMS command "untrack " +msgctxt "COMMANDHELP" +msgid "Stop following notices matching the given search query." +msgstr "" +"Cessar de sequer le notas correspondente al parolas de recerca specificate." + +#. TRANS: Help message for IM/SMS command "track off" +#. TRANS: Help message for IM/SMS command "untrack all" +msgctxt "COMMANDHELP" +msgid "Disable all tracked search subscriptions." +msgstr "Disactivar tote le subscriptiones de recerca traciate." + +#. TRANS: Help message for IM/SMS command "tracks" +#. TRANS: Help message for IM/SMS command "tracking" +msgctxt "COMMANDHELP" +msgid "List all your search subscriptions." +msgstr "Listar tote tu subscriptiones de recerca." + +#. TRANS: Error text shown a user tries to disable all a search subscriptions with track off command, but has none. +msgid "You are not tracking any searches." +msgstr "Tu non tracia alcun recerca." + +#. TRANS: Message given having disabled all search subscriptions with 'track off'. +#, php-format +msgid "You are tracking searches for: %s" +msgstr "Tu tracia recercas de: %s" + +msgid "Subscribe to this search" +msgstr "Subscriber a iste recerca" + +#. TRANS: Message given having failed to cancel one of the search subs with 'track off' command. +#, php-format +msgid "Error disabling search subscription for query \"%s\"." +msgstr "" +"Error durante le disactivation del subscription de recerca del parolas \"%s" +"\"." + +#. TRANS: Message given having disabled all search subscriptions with 'track off'. +msgid "Disabled all your search subscriptions." +msgstr "Tote tu subscriptiones de recerca ha essite disactivate." diff --git a/plugins/SearchSub/locale/mk/LC_MESSAGES/SearchSub.po b/plugins/SearchSub/locale/mk/LC_MESSAGES/SearchSub.po new file mode 100644 index 0000000000..6aceaabb54 --- /dev/null +++ b/plugins/SearchSub/locale/mk/LC_MESSAGES/SearchSub.po @@ -0,0 +1,181 @@ +# Translation of StatusNet - SearchSub to Macedonian (Македонски) +# Exported from translatewiki.net +# +# Author: Bjankuloski06 +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - SearchSub\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:43+0000\n" +"Language-Team: Macedonian \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:15:51+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: mk\n" +"X-Message-Group: #out-statusnet-plugin-searchsub\n" +"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n" + +#. TRANS: Header for subscriptions overview for a user (first page). +#. TRANS: %s is a user nickname. +#, php-format +msgid "%s's search subscriptions" +msgstr "Претплатени пребарувања на %s" + +#. TRANS: Header for subscriptions overview for a user (not first page). +#. TRANS: %1$s is a user nickname, %2$d is the page number. +#, php-format +msgid "%1$s's search subscriptions, page %2$d" +msgstr "Претплати на пребарувања на %1$s, страница %2$d" + +#. TRANS: Page notice for page with an overview of all search subscriptions +#. TRANS: of the logged in user's own profile. +msgid "" +"You have subscribed to receive all notices on this site matching the " +"following searches:" +msgstr "" +"Се претплативте да ги примате сите забелешки на ова мреж. место што " +"одговараат на следниве пребарувања:" + +#. TRANS: Page notice for page with an overview of all subscriptions of a user other +#. TRANS: than the logged in user. %s is the user nickname. +#, php-format +msgid "" +"%s has subscribed to receive all notices on this site matching the following " +"searches:" +msgstr "" +"%s се претплати да ги прима сите забелешки на ова мреж. место што одговараат " +"на следниве пребарувања:" + +#. TRANS: Search subscription list text when the logged in user has no search subscriptions. +msgid "" +"You are not subscribed to any text searches right now. You can push the " +"\"Subscribe\" button on any notice text search to automatically receive any " +"public messages on this site that match that search, even if you are not " +"subscribed to the poster." +msgstr "" +"Моментално не сте претплатени на пребарувања на текст. При пребарување на " +"текст од забелешки, можете да стиснете на копчето „Претплати се“ за " +"автоматски да ги добивате сите јавни пораки на ова мреж. место што " +"одговараат на пребараното, дури и ако не сте претплатени на корисникот што " +"ги објавува." + +#. TRANS: Search subscription list text when looking at the subscriptions for a of a user other +#. TRANS: than the logged in user that has no search subscriptions. %s is the user nickname. +#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none +#. TRANS: as an anonymous user. %s is the user nickname. +#, php-format +msgid "%s is not subscribed to any searches." +msgstr "%s се нема претплатено на пребарувања." + +#. TRANS: Search subscription list item. %1$s is a URL to a notice search, +#. TRANS: %2$s are the search criteria, %3$s is a datestring. +#, php-format +msgid "\"%2$s\" since %3$s" +msgstr "„%2$s“ од %3$s" + +#. TRANS: Error text shown a user tries to untrack a search query they're not subscribed to. +#, php-format +msgid "You are not tracking the search \"%s\"." +msgstr "Не го следите пребарувањето „%s“." + +#. TRANS: Message given having failed to cancel a search subscription by untrack command. +#, php-format +msgid "Could not end a search subscription for query \"%s\"." +msgstr "Не можев да ја прекратам претплатата на барањето „%s“." + +#. TRANS: Message given having removed a search subscription by untrack command. +#, php-format +msgid "You are no longer subscribed to the search \"%s\"." +msgstr "Повеќе не сте претплатени на пребарувањето „%s“." + +#. TRANS: Page title when search subscription succeeded. +msgid "Subscribed" +msgstr "Претплатено" + +msgid "Unsubscribe from this search" +msgstr "Откажи претплата на ова пребарување" + +#. TRANS: Page title when search unsubscription succeeded. +msgid "Unsubscribed" +msgstr "Претплатата е откажана" + +#. TRANS: Error text shown a user tries to track a search query they're already subscribed to. +#, php-format +msgid "You are already tracking the search \"%s\"." +msgstr "Веќе го следите пребарувањето „%s“." + +#. TRANS: Message given having failed to set up a search subscription by track command. +#, php-format +msgid "Could not start a search subscription for query \"%s\"." +msgstr "Не можев да ја започнам претплатата на барањето „%s“." + +#. TRANS: Message given having added a search subscription by track command. +#, php-format +msgid "You are subscribed to the search \"%s\"." +msgstr "Претплатени сте на пребарувањето „%s“." + +#. TRANS: Plugin description. +msgid "Plugin to allow following all messages with a given search." +msgstr "" +"Приклучок што овозможува следење на сите пораки од извесно пребарување." + +#. TRANS: SearchSub plugin menu item on user settings page. +msgctxt "MENU" +msgid "Searches" +msgstr "Пребарувања" + +#. TRANS: SearchSub plugin tooltip for user settings menu item. +msgid "Configure search subscriptions" +msgstr "Нагоди претплата на пребарувања" + +msgid "Search subscriptions" +msgstr "Претплата на пребарувања" + +#. TRANS: Help message for IM/SMS command "track " +msgctxt "COMMANDHELP" +msgid "Start following notices matching the given search query." +msgstr "Почнува да следи забелешки што одговараат на даденото пребарување." + +#. TRANS: Help message for IM/SMS command "untrack " +msgctxt "COMMANDHELP" +msgid "Stop following notices matching the given search query." +msgstr "Запира со следење на забелешки што одговараат на даденото пребарување." + +#. TRANS: Help message for IM/SMS command "track off" +#. TRANS: Help message for IM/SMS command "untrack all" +msgctxt "COMMANDHELP" +msgid "Disable all tracked search subscriptions." +msgstr "Оневозможување на сите следени претплати на пребарувања." + +#. TRANS: Help message for IM/SMS command "tracks" +#. TRANS: Help message for IM/SMS command "tracking" +msgctxt "COMMANDHELP" +msgid "List all your search subscriptions." +msgstr "Ги наведува сите пребарувања на кои сте претплатени." + +#. TRANS: Error text shown a user tries to disable all a search subscriptions with track off command, but has none. +msgid "You are not tracking any searches." +msgstr "Не следите никакви пребарувања." + +#. TRANS: Message given having disabled all search subscriptions with 'track off'. +#, php-format +msgid "You are tracking searches for: %s" +msgstr "Следите пребарувања на: %s" + +msgid "Subscribe to this search" +msgstr "Претплати се на пребарувањево" + +#. TRANS: Message given having failed to cancel one of the search subs with 'track off' command. +#, php-format +msgid "Error disabling search subscription for query \"%s\"." +msgstr "Грешка при оневозможувањето на претплатата за барањето „%s“." + +#. TRANS: Message given having disabled all search subscriptions with 'track off'. +msgid "Disabled all your search subscriptions." +msgstr "Ги оневозможив соте пребарувања на кои сте се претплатиле." diff --git a/plugins/SearchSub/locale/nl/LC_MESSAGES/SearchSub.po b/plugins/SearchSub/locale/nl/LC_MESSAGES/SearchSub.po index ee95299f47..ca881c0518 100644 --- a/plugins/SearchSub/locale/nl/LC_MESSAGES/SearchSub.po +++ b/plugins/SearchSub/locale/nl/LC_MESSAGES/SearchSub.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - SearchSub\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:43+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:43+0000\n" "Language-Team: Dutch \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 12:41:57+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:15:51+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: #out-statusnet-plugin-searchsub\n" @@ -59,6 +59,10 @@ msgid "" "public messages on this site that match that search, even if you are not " "subscribed to the poster." msgstr "" +"U hebt op het moment geen abonnementen op zoekopdrachten. U kunt bij iedere " +"zoekopdracht klikken op de knop \"Abonneren\" om automatisch alle publieke " +"berichten voor die zoekopdracht in uw tijdlijn bezorgd te krijgen, zelfs als " +"u niet geabonneerd bent op de gebruiker die de mededeling heeft geplaatst." #. TRANS: Search subscription list text when looking at the subscriptions for a of a user other #. TRANS: than the logged in user that has no search subscriptions. %s is the user nickname. @@ -70,9 +74,9 @@ msgstr "%s heeft geen zoekabonnementen." #. TRANS: Search subscription list item. %1$s is a URL to a notice search, #. TRANS: %2$s are the search criteria, %3$s is a datestring. -#, fuzzy, php-format +#, php-format msgid "\"%2$s\" since %3$s" -msgstr "\"%s\" sinds %s" +msgstr "%2$s\" sinds %3$s" #. TRANS: Error text shown a user tries to untrack a search query they're not subscribed to. #, php-format diff --git a/plugins/SearchSub/locale/tl/LC_MESSAGES/SearchSub.po b/plugins/SearchSub/locale/tl/LC_MESSAGES/SearchSub.po new file mode 100644 index 0000000000..67d963ddb3 --- /dev/null +++ b/plugins/SearchSub/locale/tl/LC_MESSAGES/SearchSub.po @@ -0,0 +1,191 @@ +# Translation of StatusNet - SearchSub to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - SearchSub\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:43+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:15:51+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-searchsub\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. TRANS: Header for subscriptions overview for a user (first page). +#. TRANS: %s is a user nickname. +#, php-format +msgid "%s's search subscriptions" +msgstr "Mga pagpapasipi ng paghahanap ni %s" + +#. TRANS: Header for subscriptions overview for a user (not first page). +#. TRANS: %1$s is a user nickname, %2$d is the page number. +#, php-format +msgid "%1$s's search subscriptions, page %2$d" +msgstr "Mga pagpapasipi ng paghahanap ni %1$s, pahina %2$d" + +#. TRANS: Page notice for page with an overview of all search subscriptions +#. TRANS: of the logged in user's own profile. +msgid "" +"You have subscribed to receive all notices on this site matching the " +"following searches:" +msgstr "" +"Nagpasipi ka upang makatanggap ng lahat ng mga pabatid sa sityong ito na " +"tumutugma sa sumusunod na mga paghahanap:" + +#. TRANS: Page notice for page with an overview of all subscriptions of a user other +#. TRANS: than the logged in user. %s is the user nickname. +#, php-format +msgid "" +"%s has subscribed to receive all notices on this site matching the following " +"searches:" +msgstr "" +"Si %s ay nagpasipi upang makatanggap ng lahat ng mga pabatid sa sityong ito " +"na tumutugma sa sumusunod na mga paghahanap:" + +#. TRANS: Search subscription list text when the logged in user has no search subscriptions. +msgid "" +"You are not subscribed to any text searches right now. You can push the " +"\"Subscribe\" button on any notice text search to automatically receive any " +"public messages on this site that match that search, even if you are not " +"subscribed to the poster." +msgstr "" +"Hindi ka nagpasipi sa anumang mga paghahanap ng teksto sa ngayon. " +"Maitutulak mo ang pindutang \"Magpasipi\" na nasa ibabaw ng anumang teksto " +"ng pabatid ng paghahanap upang kusang makatanggap ng anumang mga mensaheng " +"pangmadla sa sityong ito na tutugma sa ganyang paghahanap, kahit na hindi ka " +"nagpapasipi ng karatula." + +#. TRANS: Search subscription list text when looking at the subscriptions for a of a user other +#. TRANS: than the logged in user that has no search subscriptions. %s is the user nickname. +#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none +#. TRANS: as an anonymous user. %s is the user nickname. +#, php-format +msgid "%s is not subscribed to any searches." +msgstr "Si %s ay hindi nagpapasipi ng anumang mga paghahanap." + +#. TRANS: Search subscription list item. %1$s is a URL to a notice search, +#. TRANS: %2$s are the search criteria, %3$s is a datestring. +#, php-format +msgid "\"%2$s\" since %3$s" +msgstr "\"%2$s\" magmula noong %3$s" + +#. TRANS: Error text shown a user tries to untrack a search query they're not subscribed to. +#, php-format +msgid "You are not tracking the search \"%s\"." +msgstr "Hindi mo sinusubaybayan ang paghahanap ng \"%s\"." + +#. TRANS: Message given having failed to cancel a search subscription by untrack command. +#, php-format +msgid "Could not end a search subscription for query \"%s\"." +msgstr "" +"Hindi mawawakasan ang isang pagpapasipi ng paghahanap para sa katanungang \"%" +"s\"." + +#. TRANS: Message given having removed a search subscription by untrack command. +#, php-format +msgid "You are no longer subscribed to the search \"%s\"." +msgstr "Hindi ka na nagpapasipi sa paghahanap ng \"%s\"." + +#. TRANS: Page title when search subscription succeeded. +msgid "Subscribed" +msgstr "Nagpapasipi na" + +msgid "Unsubscribe from this search" +msgstr "Huwag nang magpasipi mula sa paghahanap na ito" + +#. TRANS: Page title when search unsubscription succeeded. +msgid "Unsubscribed" +msgstr "Hindi na nagpapasipi" + +#. TRANS: Error text shown a user tries to track a search query they're already subscribed to. +#, php-format +msgid "You are already tracking the search \"%s\"." +msgstr "Sinusubaybayan mo na ang paghahanap ng \"%s\"." + +#. TRANS: Message given having failed to set up a search subscription by track command. +#, php-format +msgid "Could not start a search subscription for query \"%s\"." +msgstr "" +"Hindi masimulan ang isang pagpapasipi sa paghanap para sa katanungang \"%s\"." + +#. TRANS: Message given having added a search subscription by track command. +#, php-format +msgid "You are subscribed to the search \"%s\"." +msgstr "Nagpapasipi ka sa paghahanap ng \"%s\"." + +#. TRANS: Plugin description. +msgid "Plugin to allow following all messages with a given search." +msgstr "" +"Pagpapasak upang mapayagan ang pagsunod sa lahat ng mga mensahe na may " +"ibinigay na paghahanap." + +#. TRANS: SearchSub plugin menu item on user settings page. +msgctxt "MENU" +msgid "Searches" +msgstr "Mga paghahanap" + +#. TRANS: SearchSub plugin tooltip for user settings menu item. +msgid "Configure search subscriptions" +msgstr "Isaayos ang mga pagpapasipi ng paghahanap" + +msgid "Search subscriptions" +msgstr "Mga pagpapasipi ng paghahanap" + +#. TRANS: Help message for IM/SMS command "track " +msgctxt "COMMANDHELP" +msgid "Start following notices matching the given search query." +msgstr "" +"Magsimulang sundan ang mga pabatid na tumutugma sa ibinigay na katanungan sa " +"paghahanap." + +#. TRANS: Help message for IM/SMS command "untrack " +msgctxt "COMMANDHELP" +msgid "Stop following notices matching the given search query." +msgstr "" +"Ihinto ang pagsunod sa mga pabatid na tumutugma sa ibinigay na katanungan ng " +"paghahanap." + +#. TRANS: Help message for IM/SMS command "track off" +#. TRANS: Help message for IM/SMS command "untrack all" +msgctxt "COMMANDHELP" +msgid "Disable all tracked search subscriptions." +msgstr "Huwag paganahin ang lahat ng tinutukoy na pagpapasipi ng paghahanap." + +#. TRANS: Help message for IM/SMS command "tracks" +#. TRANS: Help message for IM/SMS command "tracking" +msgctxt "COMMANDHELP" +msgid "List all your search subscriptions." +msgstr "Itala ang lahat ng mga pagpapasipi mo ng paghahanap." + +#. TRANS: Error text shown a user tries to disable all a search subscriptions with track off command, but has none. +msgid "You are not tracking any searches." +msgstr "Hindi ka sumusubaybay ng anumang mga paghahanap." + +#. TRANS: Message given having disabled all search subscriptions with 'track off'. +#, php-format +msgid "You are tracking searches for: %s" +msgstr "Sinusubaybayan mo ang mga paghahanap para sa: %s" + +msgid "Subscribe to this search" +msgstr "Magpasipi para sa paghahanap na ito" + +#. TRANS: Message given having failed to cancel one of the search subs with 'track off' command. +#, php-format +msgid "Error disabling search subscription for query \"%s\"." +msgstr "" +"May kamalian sa hindi pagpapagana ng pagpapasipi ng paghahanap para sa " +"katangungang \"%s\"." + +#. TRANS: Message given having disabled all search subscriptions with 'track off'. +msgid "Disabled all your search subscriptions." +msgstr "Hindi na pinagagana ang lahat ng mga pagpapasipi mo ng paghahanap." diff --git a/plugins/ShareNotice/locale/ar/LC_MESSAGES/ShareNotice.po b/plugins/ShareNotice/locale/ar/LC_MESSAGES/ShareNotice.po new file mode 100644 index 0000000000..d9ebedc3d8 --- /dev/null +++ b/plugins/ShareNotice/locale/ar/LC_MESSAGES/ShareNotice.po @@ -0,0 +1,50 @@ +# Translation of StatusNet - ShareNotice to Arabic (العربية) +# Exported from translatewiki.net +# +# Author: OsamaK +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - ShareNotice\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:43+0000\n" +"Language-Team: Arabic \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:09:56+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ar\n" +"X-Message-Group: #out-statusnet-plugin-sharenotice\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" + +#. TRANS: Leave this message unchanged. +#. TRANS: %s is notice content that is shared on Twitter, Facebook or another platform. +#, php-format +msgid "\"%s\"" +msgstr "\"%s\"" + +#. TRANS: Tooltip for image to share a notice on Twitter. +msgid "Share on Twitter" +msgstr "تشارك على تويتر" + +#. TRANS: Tooltip for image to share a notice on another platform (other than Twitter or Facebook). +#. TRANS: %s is a host name. +#, php-format +msgid "Share on %s" +msgstr "تشارك على %s" + +#. TRANS: Tooltip for image to share a notice on Facebook. +msgid "Share on Facebook" +msgstr "تشارك على فيسبك" + +#. TRANS: Plugin description. +msgid "" +"This plugin allows sharing of notices to Twitter, Facebook and other " +"platforms." +msgstr "يتيح هذا الملحق تشارك الإشعارات على تويتر وفيسبك ومنصات أخرى." diff --git a/plugins/SubMirror/locale/ia/LC_MESSAGES/SubMirror.po b/plugins/SubMirror/locale/ia/LC_MESSAGES/SubMirror.po index 64f6872104..2fb4972bc9 100644 --- a/plugins/SubMirror/locale/ia/LC_MESSAGES/SubMirror.po +++ b/plugins/SubMirror/locale/ia/LC_MESSAGES/SubMirror.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - SubMirror\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:51+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:51+0000\n" "Language-Team: Interlingua \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 13:01:06+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:00+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ia\n" "X-Message-Group: #out-statusnet-plugin-submirror\n" @@ -23,16 +23,15 @@ msgstr "" #. TRANS: Client error displayed when entering an invalid URL for a feed. #. TRANS: %s is the invalid feed URL. -#, fuzzy, php-format +#, php-format msgid "Invalid feed URL: %s." -msgstr "URL de syndication invalide." +msgstr "URL de syndication invalide: %s." #. TRANS: Error message returned to user when setting up feed mirroring, #. TRANS: but we were unable to resolve the given URL to a working feed. msgid "Invalid profile for mirroring." msgstr "Profilo invalide pro republication." -#, fuzzy msgid "Cannot mirror a StatusNet group at this time." msgstr "Al presente il es impossibile republicar un gruppo StatusNet." @@ -96,7 +95,7 @@ msgid "Add feed" msgstr "Adder syndication" msgid "Twitter username:" -msgstr "" +msgstr "Nomine de usator de Twitter:" msgctxt "LABEL" msgid "Remote feed:" @@ -125,10 +124,10 @@ msgid "Stop mirroring" msgstr "Cessar le republication" msgid "Twitter" -msgstr "" +msgstr "Twitter" msgid "RSS or Atom feed" -msgstr "" +msgstr "Syndication RSS o Atom" msgid "Select a feed provider" -msgstr "" +msgstr "Selige un fornitor de syndicationes" diff --git a/plugins/SubMirror/locale/mk/LC_MESSAGES/SubMirror.po b/plugins/SubMirror/locale/mk/LC_MESSAGES/SubMirror.po index 2ed461631e..45168f0155 100644 --- a/plugins/SubMirror/locale/mk/LC_MESSAGES/SubMirror.po +++ b/plugins/SubMirror/locale/mk/LC_MESSAGES/SubMirror.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - SubMirror\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:51+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:51+0000\n" "Language-Team: Macedonian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 13:01:06+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:00+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: #out-statusnet-plugin-submirror\n" @@ -95,7 +95,7 @@ msgid "Add feed" msgstr "Додај канал" msgid "Twitter username:" -msgstr "" +msgstr "Корисничко име на Twitter:" msgctxt "LABEL" msgid "Remote feed:" @@ -124,10 +124,10 @@ msgid "Stop mirroring" msgstr "Престани со отсликување" msgid "Twitter" -msgstr "" +msgstr "Twitter" msgid "RSS or Atom feed" -msgstr "" +msgstr "RSS или Atom канал" msgid "Select a feed provider" -msgstr "" +msgstr "Одберете емитувач" diff --git a/plugins/TagSub/locale/ia/LC_MESSAGES/TagSub.po b/plugins/TagSub/locale/ia/LC_MESSAGES/TagSub.po new file mode 100644 index 0000000000..3ae020d2b2 --- /dev/null +++ b/plugins/TagSub/locale/ia/LC_MESSAGES/TagSub.po @@ -0,0 +1,95 @@ +# Translation of StatusNet - TagSub to Interlingua (Interlingua) +# Exported from translatewiki.net +# +# Author: McDutchie +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - TagSub\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:54+0000\n" +"Language-Team: Interlingua \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:10:04+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: ia\n" +"X-Message-Group: #out-statusnet-plugin-tagsub\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Unsubscribe from this tag" +msgstr "Cancellar subscription a iste etiquetta" + +#. TRANS: Plugin description. +msgid "Plugin to allow following all messages with a given tag." +msgstr "" +"Plug-in pro permitter le sequimento de tote le messages con un etiquetta " +"specificate." + +#. TRANS: SubMirror plugin menu item on user settings page. +msgctxt "MENU" +msgid "Tags" +msgstr "Etiquettas" + +#. TRANS: SubMirror plugin tooltip for user settings menu item. +msgid "Configure tag subscriptions" +msgstr "Configurar subscriptiones a etiquettas" + +msgid "Tag subscriptions" +msgstr "Subscriptiones a etiquettas" + +msgid "Subscribe to this tag" +msgstr "Subscriber a iste etiquetta" + +#. TRANS: Page title when tag unsubscription succeeded. +msgid "Unsubscribed" +msgstr "Subscription cancellate" + +#. TRANS: Page title when tag subscription succeeded. +msgid "Subscribed" +msgstr "Subscribite" + +#. TRANS: Header for subscriptions overview for a user (first page). +#. TRANS: %s is a user nickname. +#, php-format +msgid "%s's tag subscriptions" +msgstr "Subscriptiones a etiquettas de %s" + +#. TRANS: Header for subscriptions overview for a user (not first page). +#. TRANS: %1$s is a user nickname, %2$d is the page number. +#, php-format +msgid "%1$s's tag subscriptions, page %2$d" +msgstr "Subscriptiones a etiquettas de %1$s, pagina %2$d" + +#. TRANS: Page notice for page with an overview of all tag subscriptions +#. TRANS: of the logged in user's own profile. +msgid "" +"You have subscribed to receive all notices on this site containing the " +"following tags:" +msgstr "" +"Tu ha subscribite a reciper tote le notas in iste sito que contine le " +"sequente etiquettas:" + +#. TRANS: Page notice for page with an overview of all subscriptions of a user other +#. TRANS: than the logged in user. %s is the user nickname. +#, php-format +msgid "" +"%s has subscribed to receive all notices on this site containing the " +"following tags:" +msgstr "" +"%s ha subscribite a reciper tote le notas in iste sito que contine le " +"sequente etiquettas:" + +#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none +#. TRANS: as an anonymous user. %s is the user nickname. +#, php-format +msgid "%s is not listening to any tags." +msgstr "%s non seque alcun etiquetta." + +#, php-format +msgid "#%s since %s" +msgstr "#%s depost %s" diff --git a/plugins/TagSub/locale/mk/LC_MESSAGES/TagSub.po b/plugins/TagSub/locale/mk/LC_MESSAGES/TagSub.po new file mode 100644 index 0000000000..cb65ef71bc --- /dev/null +++ b/plugins/TagSub/locale/mk/LC_MESSAGES/TagSub.po @@ -0,0 +1,93 @@ +# Translation of StatusNet - TagSub to Macedonian (Македонски) +# Exported from translatewiki.net +# +# Author: Bjankuloski06 +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - TagSub\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:54+0000\n" +"Language-Team: Macedonian \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:10:04+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: mk\n" +"X-Message-Group: #out-statusnet-plugin-tagsub\n" +"Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n" + +msgid "Unsubscribe from this tag" +msgstr "Отпиши се од ознакава" + +#. TRANS: Plugin description. +msgid "Plugin to allow following all messages with a given tag." +msgstr "Приклучок што овозможува да ги следите сите пораки со извесна ознака." + +#. TRANS: SubMirror plugin menu item on user settings page. +msgctxt "MENU" +msgid "Tags" +msgstr "Ознаки" + +#. TRANS: SubMirror plugin tooltip for user settings menu item. +msgid "Configure tag subscriptions" +msgstr "Нагоди претплата на ознаки" + +msgid "Tag subscriptions" +msgstr "Претплати на ознаки" + +msgid "Subscribe to this tag" +msgstr "Претплати се на ознакава" + +#. TRANS: Page title when tag unsubscription succeeded. +msgid "Unsubscribed" +msgstr "Претплатено" + +#. TRANS: Page title when tag subscription succeeded. +msgid "Subscribed" +msgstr "Претплатата е откажана" + +#. TRANS: Header for subscriptions overview for a user (first page). +#. TRANS: %s is a user nickname. +#, php-format +msgid "%s's tag subscriptions" +msgstr "претплатени ознаки на %s" + +#. TRANS: Header for subscriptions overview for a user (not first page). +#. TRANS: %1$s is a user nickname, %2$d is the page number. +#, php-format +msgid "%1$s's tag subscriptions, page %2$d" +msgstr "Претплатени ознаки на %1$s, страница %2$d" + +#. TRANS: Page notice for page with an overview of all tag subscriptions +#. TRANS: of the logged in user's own profile. +msgid "" +"You have subscribed to receive all notices on this site containing the " +"following tags:" +msgstr "" +"Се претплативте да ги примате сите забелешки на ова мреж. место што ги " +"содржат слендиве ознаки:" + +#. TRANS: Page notice for page with an overview of all subscriptions of a user other +#. TRANS: than the logged in user. %s is the user nickname. +#, php-format +msgid "" +"%s has subscribed to receive all notices on this site containing the " +"following tags:" +msgstr "" +"%s се претплати да ги прима сите забелешки на ова мреж. место што ги содржат " +"слендиве ознаки:" + +#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none +#. TRANS: as an anonymous user. %s is the user nickname. +#, php-format +msgid "%s is not listening to any tags." +msgstr "%s не слуша никакви ознаки." + +#, php-format +msgid "#%s since %s" +msgstr "#%s од %s" diff --git a/plugins/TagSub/locale/nl/LC_MESSAGES/TagSub.po b/plugins/TagSub/locale/nl/LC_MESSAGES/TagSub.po index 3d30399dc4..a44537274f 100644 --- a/plugins/TagSub/locale/nl/LC_MESSAGES/TagSub.po +++ b/plugins/TagSub/locale/nl/LC_MESSAGES/TagSub.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TagSub\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:49:54+0000\n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:54+0000\n" "Language-Team: Dutch \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-17 12:42:02+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:04+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: #out-statusnet-plugin-tagsub\n" @@ -37,13 +37,13 @@ msgstr "Labels" #. TRANS: SubMirror plugin tooltip for user settings menu item. msgid "Configure tag subscriptions" -msgstr "" +msgstr "Labelabonnementen instellen" msgid "Tag subscriptions" -msgstr "" +msgstr "Labelabonnementen" msgid "Subscribe to this tag" -msgstr "" +msgstr "Op dit label abonneren" #. TRANS: Page title when tag unsubscription succeeded. msgid "Unsubscribed" @@ -57,13 +57,13 @@ msgstr "Geabonneerd" #. TRANS: %s is a user nickname. #, php-format msgid "%s's tag subscriptions" -msgstr "" +msgstr "Labelabonnementen van %s" #. TRANS: Header for subscriptions overview for a user (not first page). #. TRANS: %1$s is a user nickname, %2$d is the page number. #, php-format msgid "%1$s's tag subscriptions, page %2$d" -msgstr "" +msgstr "Labelabonnementen van %1$s, pagina %2$d" #. TRANS: Page notice for page with an overview of all tag subscriptions #. TRANS: of the logged in user's own profile. @@ -71,6 +71,8 @@ msgid "" "You have subscribed to receive all notices on this site containing the " "following tags:" msgstr "" +"U hebt een abonnement op alle mededelingen van deze site die de volgende " +"labels bevatten:" #. TRANS: Page notice for page with an overview of all subscriptions of a user other #. TRANS: than the logged in user. %s is the user nickname. @@ -79,13 +81,15 @@ msgid "" "%s has subscribed to receive all notices on this site containing the " "following tags:" msgstr "" +"%s heeft een abonnement genomen op alle mededelingen van deze site die de " +"volgende labels bevatten:" #. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none #. TRANS: as an anonymous user. %s is the user nickname. #, php-format msgid "%s is not listening to any tags." -msgstr "" +msgstr "%s heeft geen labelabonnementen." #, php-format msgid "#%s since %s" -msgstr "" +msgstr "#%s sinds %s" diff --git a/plugins/TagSub/locale/tl/LC_MESSAGES/TagSub.po b/plugins/TagSub/locale/tl/LC_MESSAGES/TagSub.po new file mode 100644 index 0000000000..44821aa385 --- /dev/null +++ b/plugins/TagSub/locale/tl/LC_MESSAGES/TagSub.po @@ -0,0 +1,95 @@ +# Translation of StatusNet - TagSub to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - TagSub\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"PO-Revision-Date: 2011-03-24 11:14:54+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:10:04+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-tagsub\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Unsubscribe from this tag" +msgstr "Huwag nang magpasipi mula sa tatak na ito" + +#. TRANS: Plugin description. +msgid "Plugin to allow following all messages with a given tag." +msgstr "" +"Pagpapasak upang mapayagan ang pagsunod sa lahat ng mga mensaheng may " +"ibinigay na tatak." + +#. TRANS: SubMirror plugin menu item on user settings page. +msgctxt "MENU" +msgid "Tags" +msgstr "Mga tatak" + +#. TRANS: SubMirror plugin tooltip for user settings menu item. +msgid "Configure tag subscriptions" +msgstr "Isaayos ang mga pagpapasipi ng tatak" + +msgid "Tag subscriptions" +msgstr "Mga pagpapasipi ng tatak" + +msgid "Subscribe to this tag" +msgstr "Magpasipi para sa tatak na ito" + +#. TRANS: Page title when tag unsubscription succeeded. +msgid "Unsubscribed" +msgstr "Hindi na nagpapasipi" + +#. TRANS: Page title when tag subscription succeeded. +msgid "Subscribed" +msgstr "Nagpapasipi na" + +#. TRANS: Header for subscriptions overview for a user (first page). +#. TRANS: %s is a user nickname. +#, php-format +msgid "%s's tag subscriptions" +msgstr "Mga pagpapasipi ng tatak ni %s" + +#. TRANS: Header for subscriptions overview for a user (not first page). +#. TRANS: %1$s is a user nickname, %2$d is the page number. +#, php-format +msgid "%1$s's tag subscriptions, page %2$d" +msgstr "Mga pagpapasipi ng tatak ni %1$s, pahina %2$d" + +#. TRANS: Page notice for page with an overview of all tag subscriptions +#. TRANS: of the logged in user's own profile. +msgid "" +"You have subscribed to receive all notices on this site containing the " +"following tags:" +msgstr "" +"Nagpasipi ka upang makatanggap ng lahat ng mga pabatid sa sityong ito na " +"naglalaman ng sumusunod na mga tatak:" + +#. TRANS: Page notice for page with an overview of all subscriptions of a user other +#. TRANS: than the logged in user. %s is the user nickname. +#, php-format +msgid "" +"%s has subscribed to receive all notices on this site containing the " +"following tags:" +msgstr "" +"Si %s ay nagpasipi upang makatanggap ng lahat ng mga pabatid sa sityong ito " +"na naglalaman ng sumusunod na mga tatak:" + +#. TRANS: Subscription list text when looking at the subscriptions for a of a user that has none +#. TRANS: as an anonymous user. %s is the user nickname. +#, php-format +msgid "%s is not listening to any tags." +msgstr "Si %s ay hindi nakikinig sa anumang mga tatak." + +#, php-format +msgid "#%s since %s" +msgstr "#%s magmula noong %s" From 53d34557497d786303bc6a09396a15d4dcb0f76f Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Thu, 24 Mar 2011 16:47:29 +0100 Subject: [PATCH 22/90] Change formatting of i18n slightly. Translator hints were not picked up in pot file. May now they are. --- lib/threadednoticelist.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/threadednoticelist.php b/lib/threadednoticelist.php index 1a20075cce..ce620916a1 100644 --- a/lib/threadednoticelist.php +++ b/lib/threadednoticelist.php @@ -423,8 +423,7 @@ class ThreadedNoticeListFavesItem extends NoticeListActorsItem } else { // TRANS: List message for favoured notices. // TRANS: %d is the number of users that have favoured a notice. - return sprintf(_m( - 'FAVELIST', + return sprintf(_m('FAVELIST', 'One person has favored this notice.', '%d people have favored this notice.', $count), @@ -483,8 +482,7 @@ class ThreadedNoticeListRepeatsItem extends NoticeListActorsItem } else { // TRANS: List message for repeated notices. // TRANS: %d is the number of users that have repeated a notice. - return sprintf(_m( - 'REPEATLIST', + return sprintf(_m('REPEATLIST', 'One person has repeated this notice.', '%d people have repeated this notice.', $count), From 3810482d1c06667b76991f52726bc82fd82a8c0a Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Thu, 24 Mar 2011 16:52:32 +0100 Subject: [PATCH 23/90] Fix i18n. --- lib/implugin.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/implugin.php b/lib/implugin.php index 2811e7d644..c75e6a38af 100644 --- a/lib/implugin.php +++ b/lib/implugin.php @@ -482,9 +482,12 @@ abstract class ImPlugin extends Plugin $body = trim(strip_tags($body)); $content_shortened = common_shorten_links($body); if (Notice::contentTooLong($content_shortened)) { - $this->sendFromSite($screenname, sprintf(_('Message too long - maximum is %1$d characters, you sent %2$d.'), - Notice::maxContent(), - mb_strlen($content_shortened))); + $this->sendFromSite($screenname, + sprintf(_m('Message too long - maximum is %1$d character, you sent %2$d.', + 'Message too long - maximum is %1$d characters, you sent %2$d.', + Notice::maxContent()), + Notice::maxContent(), + mb_strlen($content_shortened))); return; } From 8a8a1943161af35e2785b0afb3910f4152ce94cb Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Thu, 24 Mar 2011 17:02:28 +0100 Subject: [PATCH 24/90] Fix typo in documentation. --- lib/mail.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/mail.php b/lib/mail.php index 8ca6e67fd8..708e5349b1 100644 --- a/lib/mail.php +++ b/lib/mail.php @@ -832,7 +832,7 @@ function mail_notify_group_join_pending($group, $joiner) // TRANS: Main body of pending group join request notification e-mail. // TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, - // TRANS: %3$s is the URL to the moderation queue page. + // TRANS: %4$s is the URL to the moderation queue page. $body = sprintf(_('%1$s would like to join your group %2$s on %3$s. ' . 'You may approve or reject their group membership at %4$s'), $joiner->getFancyName(), From 44bcc942b874c742a079fb1b18cac834bf96c986 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Thu, 24 Mar 2011 18:04:19 -0400 Subject: [PATCH 25/90] Break up stream code to use separate notice stream classes Rearchitect (again!) notice stream code to delegate different functionality up and down the stack. Now, different classes implement NoticeStream. --- classes/Fave.php | 68 +--------------- classes/File.php | 45 +---------- classes/Notice.php | 82 +------------------ classes/Notice_tag.php | 33 +------- classes/Profile.php | 80 +----------------- classes/Reply.php | 29 +------ classes/User.php | 79 +----------------- classes/User_group.php | 32 +------- lib/cachingnoticestream.php | 129 ++++++++++++++++++++++++++++++ lib/conversationnoticestream.php | 52 ++++++++++++ lib/favenoticestream.php | 86 ++++++++++++++++++++ lib/filenoticestream.php | 60 ++++++++++++++ lib/groupnoticestream.php | 49 ++++++++++++ lib/noticestream.php | 94 +--------------------- lib/profilenoticestream.php | 105 ++++++++++++++++++++++++ lib/publicnoticestream.php | 50 ++++++++++++ lib/repeatedbymenoticestream.php | 53 ++++++++++++ lib/repeatsofmenoticestream.php | 59 ++++++++++++++ lib/replynoticestream.php | 45 +++++++++++ lib/taggedprofilenoticestream.php | 61 ++++++++++++++ lib/tagnoticestream.php | 49 ++++++++++++ 21 files changed, 816 insertions(+), 524 deletions(-) create mode 100644 lib/cachingnoticestream.php create mode 100644 lib/conversationnoticestream.php create mode 100644 lib/favenoticestream.php create mode 100644 lib/filenoticestream.php create mode 100644 lib/groupnoticestream.php create mode 100644 lib/profilenoticestream.php create mode 100644 lib/publicnoticestream.php create mode 100644 lib/repeatedbymenoticestream.php create mode 100644 lib/repeatsofmenoticestream.php create mode 100644 lib/replynoticestream.php create mode 100644 lib/taggedprofilenoticestream.php create mode 100644 lib/tagnoticestream.php diff --git a/classes/Fave.php b/classes/Fave.php index 7cd64982cd..e8fdbffc71 100644 --- a/classes/Fave.php +++ b/classes/Fave.php @@ -79,82 +79,18 @@ class Fave extends Memcached_DataObject function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $own=false, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array('Fave', '_streamDirect'), - array($user_id, $own), - ($own) ? 'fave:ids_by_user_own:'.$user_id : - 'fave:ids_by_user:'.$user_id); + $stream = new FaveNoticeStream($user_id, $own); return $stream->getNotices($offset, $limit, $since_id, $max_id); } function idStream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $own=false, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array('Fave', '_streamDirect'), - array($user_id, $own), - ($own) ? 'fave:ids_by_user_own:'.$user_id : - 'fave:ids_by_user:'.$user_id); + $stream = new FaveNoticeStream($user_id, $own); return $stream->getNoticeIds($offset, $limit, $since_id, $max_id); } - /** - * Note that the sorting for this is by order of *fave* not order of *notice*. - * - * @fixme add since_id, max_id support? - * - * @param $user_id - * @param $own - * @param $offset - * @param $limit - * @param $since_id - * @param $max_id - * @return - */ - function _streamDirect($user_id, $own, $offset, $limit, $since_id, $max_id) - { - $fav = new Fave(); - $qry = null; - - if ($own) { - $qry = 'SELECT fave.* FROM fave '; - $qry .= 'WHERE fave.user_id = ' . $user_id . ' '; - } else { - $qry = 'SELECT fave.* FROM fave '; - $qry .= 'INNER JOIN notice ON fave.notice_id = notice.id '; - $qry .= 'WHERE fave.user_id = ' . $user_id . ' '; - $qry .= 'AND notice.is_local != ' . Notice::GATEWAY . ' '; - } - - if ($since_id != 0) { - $qry .= 'AND notice_id > ' . $since_id . ' '; - } - - if ($max_id != 0) { - $qry .= 'AND notice_id <= ' . $max_id . ' '; - } - - // NOTE: we sort by fave time, not by notice time! - - $qry .= 'ORDER BY modified DESC '; - - if (!is_null($offset)) { - $qry .= "LIMIT $limit OFFSET $offset"; - } - - $fav->query($qry); - - $ids = array(); - - while ($fav->fetch()) { - $ids[] = $fav->notice_id; - } - - $fav->free(); - unset($fav); - - return $ids; - } - function asActivity() { $notice = Notice::staticGet('id', $this->notice_id); diff --git a/classes/File.php b/classes/File.php index 681c33f9cd..36ffff585c 100644 --- a/classes/File.php +++ b/classes/File.php @@ -449,53 +449,10 @@ class File extends Memcached_DataObject function stream($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array($this, '_streamDirect'), - array(), - 'file:notice-ids:'.$this->url); - + $stream = new FileNoticeStream($this); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - /** - * Stream of notices linking to this URL - * - * @param integer $offset Offset to show; default is 0 - * @param integer $limit Limit of notices to show - * @param integer $since_id Since this notice - * @param integer $max_id Before this notice - * - * @return array ids of notices that link to this file - */ - - function _streamDirect($offset, $limit, $since_id, $max_id) - { - $f2p = new File_to_post(); - - $f2p->selectAdd(); - $f2p->selectAdd('post_id'); - - $f2p->file_id = $this->id; - - Notice::addWhereSinceId($f2p, $since_id, 'post_id', 'modified'); - Notice::addWhereMaxId($f2p, $max_id, 'post_id', 'modified'); - - $f2p->orderBy('modified DESC, post_id DESC'); - - if (!is_null($offset)) { - $f2p->limit($offset, $limit); - } - - $ids = array(); - - if ($f2p->find()) { - while ($f2p->fetch()) { - $ids[] = $f2p->post_id; - } - } - - return $ids; - } - function noticeCount() { $cacheKey = sprintf('file:notice-count:%d', $this->id); diff --git a/classes/Notice.php b/classes/Notice.php index 1201dd902b..114119bfc9 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -45,7 +45,7 @@ require_once INSTALLDIR.'/classes/Memcached_DataObject.php'; /* We keep 200 notices, the max number of notices available per API request, * in the memcached cache. */ -define('NOTICE_CACHE_WINDOW', NoticeStream::CACHE_WINDOW); +define('NOTICE_CACHE_WINDOW', CachingNoticeStream::CACHE_WINDOW); define('MAX_BOXCARS', 128); @@ -548,7 +548,7 @@ class Notice extends Memcached_DataObject if (empty($profile)) { return false; } - $notice = $profile->getNotices(0, NoticeStream::CACHE_WINDOW); + $notice = $profile->getNotices(0, CachingNoticeStream::CACHE_WINDOW); if (!empty($notice)) { $last = 0; while ($notice->fetch()) { @@ -632,92 +632,18 @@ class Notice extends Memcached_DataObject function publicStream($offset=0, $limit=20, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array('Notice', '_publicStreamDirect'), - array(), - 'public'); - + $stream = new PublicNoticeStream(); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - function _publicStreamDirect($offset=0, $limit=20, $since_id=0, $max_id=0) - { - $notice = new Notice(); - - $notice->selectAdd(); // clears it - $notice->selectAdd('id'); - - $notice->orderBy('created DESC, id DESC'); - - if (!is_null($offset)) { - $notice->limit($offset, $limit); - } - - if (common_config('public', 'localonly')) { - $notice->whereAdd('is_local = ' . Notice::LOCAL_PUBLIC); - } else { - // -1 == blacklisted, -2 == gateway (i.e. Twitter) - $notice->whereAdd('is_local !='. Notice::LOCAL_NONPUBLIC); - $notice->whereAdd('is_local !='. Notice::GATEWAY); - } - - Notice::addWhereSinceId($notice, $since_id); - Notice::addWhereMaxId($notice, $max_id); - - $ids = array(); - - if ($notice->find()) { - while ($notice->fetch()) { - $ids[] = $notice->id; - } - } - - $notice->free(); - $notice = NULL; - - return $ids; - } function conversationStream($id, $offset=0, $limit=20, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array('Notice', '_conversationStreamDirect'), - array($id), - 'notice:conversation_ids:'.$id); + $stream = new ConversationNoticeStream($id); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - function _conversationStreamDirect($id, $offset=0, $limit=20, $since_id=0, $max_id=0) - { - $notice = new Notice(); - - $notice->selectAdd(); // clears it - $notice->selectAdd('id'); - - $notice->conversation = $id; - - $notice->orderBy('created DESC, id DESC'); - - if (!is_null($offset)) { - $notice->limit($offset, $limit); - } - - Notice::addWhereSinceId($notice, $since_id); - Notice::addWhereMaxId($notice, $max_id); - - $ids = array(); - - if ($notice->find()) { - while ($notice->fetch()) { - $ids[] = $notice->id; - } - } - - $notice->free(); - $notice = NULL; - - return $ids; - } - /** * Is this notice part of an active conversation? * diff --git a/classes/Notice_tag.php b/classes/Notice_tag.php index 813242253d..809403a9bd 100644 --- a/classes/Notice_tag.php +++ b/classes/Notice_tag.php @@ -38,42 +38,11 @@ class Notice_tag extends Memcached_DataObject static function getStream($tag, $offset=0, $limit=20, $sinceId=0, $maxId=0) { - $stream = new NoticeStream(array('Notice_tag', '_streamDirect'), - array($tag), - 'notice_tag:notice_ids:' . Cache::keyize($tag)); + $stream = new TagNoticeStream($tag); return $stream->getNotices($offset, $limit, $sinceId, $maxId); } - function _streamDirect($tag, $offset, $limit, $since_id, $max_id) - { - $nt = new Notice_tag(); - - $nt->tag = $tag; - - $nt->selectAdd(); - $nt->selectAdd('notice_id'); - - Notice::addWhereSinceId($nt, $since_id, 'notice_id'); - Notice::addWhereMaxId($nt, $max_id, 'notice_id'); - - $nt->orderBy('created DESC, notice_id DESC'); - - if (!is_null($offset)) { - $nt->limit($offset, $limit); - } - - $ids = array(); - - if ($nt->find()) { - while ($nt->fetch()) { - $ids[] = $nt->notice_id; - } - } - - return $ids; - } - function blowCache($blowLast=false) { self::blow('notice_tag:notice_ids:%s', Cache::keyize($this->tag)); diff --git a/classes/Profile.php b/classes/Profile.php index a36024842e..b582451350 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -198,90 +198,18 @@ class Profile extends Memcached_DataObject function getTaggedNotices($tag, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array($this, '_streamTaggedDirect'), - array($tag), - 'profile:notice_ids_tagged:'.$this->id.':'.$tag); + $stream = new TaggedProfileNoticeStream($this, $tag); return $stream->getNotices($offset, $limit, $since_id, $max_id); } function getNotices($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array($this, '_streamDirect'), - array(), - 'profile:notice_ids:' . $this->id); + $stream = new ProfileNoticeStream($this); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - function _streamTaggedDirect($tag, $offset, $limit, $since_id, $max_id) - { - // XXX It would be nice to do this without a join - // (necessary to do it efficiently on accounts with long history) - - $notice = new Notice(); - - $query = - "select id from notice join notice_tag on id=notice_id where tag='". - $notice->escape($tag) . - "' and profile_id=" . intval($this->id); - - $since = Notice::whereSinceId($since_id, 'id', 'notice.created'); - if ($since) { - $query .= " and ($since)"; - } - - $max = Notice::whereMaxId($max_id, 'id', 'notice.created'); - if ($max) { - $query .= " and ($max)"; - } - - $query .= ' order by notice.created DESC, id DESC'; - - if (!is_null($offset)) { - $query .= " LIMIT " . intval($limit) . " OFFSET " . intval($offset); - } - - $notice->query($query); - - $ids = array(); - - while ($notice->fetch()) { - $ids[] = $notice->id; - } - - return $ids; - } - - function _streamDirect($offset, $limit, $since_id, $max_id) - { - $notice = new Notice(); - - $notice->profile_id = $this->id; - - $notice->selectAdd(); - $notice->selectAdd('id'); - - Notice::addWhereSinceId($notice, $since_id); - Notice::addWhereMaxId($notice, $max_id); - - $notice->orderBy('created DESC, id DESC'); - - if (!is_null($offset)) { - $notice->limit($offset, $limit); - } - - $notice->find(); - - $ids = array(); - - while ($notice->fetch()) { - $ids[] = $notice->id; - } - - return $ids; - } - function isMember($group) { $mem = new Group_member(); @@ -551,7 +479,7 @@ class Profile extends Memcached_DataObject // This is the stream of favorite notices, in rev chron // order. This forces it into cache. - $ids = Fave::idStream($this->id, 0, NoticeStream::CACHE_WINDOW); + $ids = Fave::idStream($this->id, 0, CachingNoticeStream::CACHE_WINDOW); // If it's in the list, then it's a fave @@ -563,7 +491,7 @@ class Profile extends Memcached_DataObject // then the cache has all available faves, so this one // is not a fave. - if (count($ids) < NoticeStream::CACHE_WINDOW) { + if (count($ids) < CachingNoticeStream::CACHE_WINDOW) { return false; } diff --git a/classes/Reply.php b/classes/Reply.php index d5341b9a05..9ba623ba3f 100644 --- a/classes/Reply.php +++ b/classes/Reply.php @@ -38,35 +38,8 @@ class Reply extends Memcached_DataObject function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) { - $stream = new NoticeStream(array('Reply', '_streamDirect'), - array($user_id), - 'reply:stream:' . $user_id); + $stream = new ReplyNoticeStream($user_id); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - - function _streamDirect($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) - { - $reply = new Reply(); - $reply->profile_id = $user_id; - - Notice::addWhereSinceId($reply, $since_id, 'notice_id', 'modified'); - Notice::addWhereMaxId($reply, $max_id, 'notice_id', 'modified'); - - $reply->orderBy('modified DESC, notice_id DESC'); - - if (!is_null($offset)) { - $reply->limit($offset, $limit); - } - - $ids = array(); - - if ($reply->find()) { - while ($reply->fetch()) { - $ids[] = $reply->notice_id; - } - } - - return $ids; - } } diff --git a/classes/User.php b/classes/User.php index 4bd7b039df..1a3a7dfd72 100644 --- a/classes/User.php +++ b/classes/User.php @@ -767,93 +767,18 @@ class User extends Memcached_DataObject function repeatedByMe($offset=0, $limit=20, $since_id=null, $max_id=null) { - $stream = new NoticeStream(array($this, '_repeatedByMeDirect'), - array(), - 'user:repeated_by_me:'.$this->id); - + $stream = new RepeatedByMeNoticeStream($this); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - function _repeatedByMeDirect($offset, $limit, $since_id, $max_id) - { - $notice = new Notice(); - - $notice->selectAdd(); // clears it - $notice->selectAdd('id'); - - $notice->profile_id = $this->id; - $notice->whereAdd('repeat_of IS NOT NULL'); - - $notice->orderBy('created DESC, id DESC'); - - if (!is_null($offset)) { - $notice->limit($offset, $limit); - } - - Notice::addWhereSinceId($notice, $since_id); - Notice::addWhereMaxId($notice, $max_id); - - $ids = array(); - - if ($notice->find()) { - while ($notice->fetch()) { - $ids[] = $notice->id; - } - } - - $notice->free(); - $notice = NULL; - - return $ids; - } function repeatsOfMe($offset=0, $limit=20, $since_id=null, $max_id=null) { - $stream = new NoticeStream(array($this, '_repeatsOfMeDirect'), - array(), - 'user:repeats_of_me:'.$this->id); + $stream = new RepeatsOfMeNoticeStream($this); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - function _repeatsOfMeDirect($offset, $limit, $since_id, $max_id) - { - $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 . ' '; - - $since = Notice::whereSinceId($since_id, 'original.id', 'original.created'); - if ($since) { - $qry .= "AND ($since) "; - } - - $max = Notice::whereMaxId($max_id, 'original.id', 'original.created'); - if ($max) { - $qry .= "AND ($max) "; - } - - $qry .= 'ORDER BY original.created, 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; - } function repeatedToMe($offset=0, $limit=20, $since_id=null, $max_id=null) { diff --git a/classes/User_group.php b/classes/User_group.php index 4d6dcfab68..8587f15771 100644 --- a/classes/User_group.php +++ b/classes/User_group.php @@ -87,41 +87,11 @@ class User_group extends Memcached_DataObject function getNotices($offset, $limit, $since_id=null, $max_id=null) { - $stream = new NoticeStream(array($this, '_streamDirect'), - array(), - 'user_group:notice_ids:' . $this->id); + $stream = new GroupNoticeStream($this); return $stream->getNotices($offset, $limit, $since_id, $max_id); } - function _streamDirect($offset, $limit, $since_id, $max_id) - { - $inbox = new Group_inbox(); - - $inbox->group_id = $this->id; - - $inbox->selectAdd(); - $inbox->selectAdd('notice_id'); - - Notice::addWhereSinceId($inbox, $since_id, 'notice_id'); - Notice::addWhereMaxId($inbox, $max_id, 'notice_id'); - - $inbox->orderBy('created DESC, notice_id DESC'); - - if (!is_null($offset)) { - $inbox->limit($offset, $limit); - } - - $ids = array(); - - if ($inbox->find()) { - while ($inbox->fetch()) { - $ids[] = $inbox->notice_id; - } - } - - return $ids; - } function allowedNickname($nickname) { diff --git a/lib/cachingnoticestream.php b/lib/cachingnoticestream.php new file mode 100644 index 0000000000..a1b3b3fe82 --- /dev/null +++ b/lib/cachingnoticestream.php @@ -0,0 +1,129 @@ +. + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Class for notice streams + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class CachingNoticeStream extends NoticeStream +{ + const CACHE_WINDOW = 200; + + public $stream = null; + public $cachekey = null; + + function __construct($stream, $cachekey) + { + $this->stream = $stream; + $this->cachekey = $cachekey; + } + + function getNoticeIds($offset=0, $limit=20, $sinceId=0, $maxId=0) + { + $cache = Cache::instance(); + + // We cache self::CACHE_WINDOW elements at the tip of the stream. + // If the cache won't be hit, just generate directly. + + if (empty($cache) || + $sinceId != 0 || $maxId != 0 || + is_null($limit) || + ($offset + $limit) > self::CACHE_WINDOW) { + return $this->stream->getNoticeIds($offset, $limit, $sinceId, $maxId); + } + + // Check the cache to see if we have the stream. + + $idkey = Cache::key($this->cachekey); + + $idstr = $cache->get($idkey); + + if ($idstr !== false) { + // Cache hit! Woohoo! + $window = explode(',', $idstr); + $ids = array_slice($window, $offset, $limit); + return $ids; + } + + // Check the cache to see if we have a "last-known-good" version. + // The actual cache gets blown away when new notices are added, but + // the "last" value holds a lot of info. We might need to only generate + // a few at the "tip", which can bound our queries and save lots + // of time. + + $laststr = $cache->get($idkey.';last'); + + if ($laststr !== false) { + $window = explode(',', $laststr); + $last_id = $window[0]; + $new_ids = $this->stream->getNoticeIds(0, self::CACHE_WINDOW, $last_id, 0); + + $new_window = array_merge($new_ids, $window); + + $new_windowstr = implode(',', $new_window); + + $result = $cache->set($idkey, $new_windowstr); + $result = $cache->set($idkey . ';last', $new_windowstr); + + $ids = array_slice($new_window, $offset, $limit); + + return $ids; + } + + // No cache hits :( Generate directly and stick the results + // into the cache. Note we generate the full cache window. + + $window = $this->stream->getNoticeIds(0, self::CACHE_WINDOW, 0, 0); + + $windowstr = implode(',', $window); + + $result = $cache->set($idkey, $windowstr); + $result = $cache->set($idkey . ';last', $windowstr); + + // Return just the slice that was requested + + $ids = array_slice($window, $offset, $limit); + + return $ids; + } +} diff --git a/lib/conversationnoticestream.php b/lib/conversationnoticestream.php new file mode 100644 index 0000000000..b26e898612 --- /dev/null +++ b/lib/conversationnoticestream.php @@ -0,0 +1,52 @@ +id = $id; + } + + function getNoticeIds($offset=0, $limit=20, $since_id=0, $max_id=0) + { + $notice = new Notice(); + + $notice->selectAdd(); // clears it + $notice->selectAdd('id'); + + $notice->conversation = $this->id; + + $notice->orderBy('created DESC, id DESC'); + + if (!is_null($offset)) { + $notice->limit($offset, $limit); + } + + Notice::addWhereSinceId($notice, $since_id); + Notice::addWhereMaxId($notice, $max_id); + + $ids = array(); + + if ($notice->find()) { + while ($notice->fetch()) { + $ids[] = $notice->id; + } + } + + $notice->free(); + $notice = NULL; + + return $ids; + } +} \ No newline at end of file diff --git a/lib/favenoticestream.php b/lib/favenoticestream.php new file mode 100644 index 0000000000..5aaad5ce5b --- /dev/null +++ b/lib/favenoticestream.php @@ -0,0 +1,86 @@ +user_id = $user_id; + $this->own = $own; + } + + /** + * Note that the sorting for this is by order of *fave* not order of *notice*. + * + * @fixme add since_id, max_id support? + * + * @param $user_id + * @param $own + * @param $offset + * @param $limit + * @param $since_id + * @param $max_id + * @return + */ + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + $fav = new Fave(); + $qry = null; + + if ($this->own) { + $qry = 'SELECT fave.* FROM fave '; + $qry .= 'WHERE fave.user_id = ' . $this->user_id . ' '; + } else { + $qry = 'SELECT fave.* FROM fave '; + $qry .= 'INNER JOIN notice ON fave.notice_id = notice.id '; + $qry .= 'WHERE fave.user_id = ' . $this->user_id . ' '; + $qry .= 'AND notice.is_local != ' . Notice::GATEWAY . ' '; + } + + if ($since_id != 0) { + $qry .= 'AND notice_id > ' . $since_id . ' '; + } + + if ($max_id != 0) { + $qry .= 'AND notice_id <= ' . $max_id . ' '; + } + + // NOTE: we sort by fave time, not by notice time! + + $qry .= 'ORDER BY modified DESC '; + + if (!is_null($offset)) { + $qry .= "LIMIT $limit OFFSET $offset"; + } + + $fav->query($qry); + + $ids = array(); + + while ($fav->fetch()) { + $ids[] = $fav->notice_id; + } + + $fav->free(); + unset($fav); + + return $ids; + } +} + diff --git a/lib/filenoticestream.php b/lib/filenoticestream.php new file mode 100644 index 0000000000..fddc5d33ce --- /dev/null +++ b/lib/filenoticestream.php @@ -0,0 +1,60 @@ +url); + } +} + +class RawFileNoticeStream extends NoticeStream +{ + protected $file = null; + + function __construct($file) + { + $this->file = $file; + parent::__construct(); + } + + /** + * Stream of notices linking to this URL + * + * @param integer $offset Offset to show; default is 0 + * @param integer $limit Limit of notices to show + * @param integer $since_id Since this notice + * @param integer $max_id Before this notice + * + * @return array ids of notices that link to this file + */ + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + $f2p = new File_to_post(); + + $f2p->selectAdd(); + $f2p->selectAdd('post_id'); + + $f2p->file_id = $this->file->id; + + Notice::addWhereSinceId($f2p, $since_id, 'post_id', 'modified'); + Notice::addWhereMaxId($f2p, $max_id, 'post_id', 'modified'); + + $f2p->orderBy('modified DESC, post_id DESC'); + + if (!is_null($offset)) { + $f2p->limit($offset, $limit); + } + + $ids = array(); + + if ($f2p->find()) { + while ($f2p->fetch()) { + $ids[] = $f2p->post_id; + } + } + + return $ids; + } +} diff --git a/lib/groupnoticestream.php b/lib/groupnoticestream.php new file mode 100644 index 0000000000..a6aa2c352c --- /dev/null +++ b/lib/groupnoticestream.php @@ -0,0 +1,49 @@ +id); + } +} + +class RawGroupNoticeStream extends NoticeStream +{ + protected $group; + + function __construct($group) + { + $this->group = $group; + } + + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + $inbox = new Group_inbox(); + + $inbox->group_id = $this->group->id; + + $inbox->selectAdd(); + $inbox->selectAdd('notice_id'); + + Notice::addWhereSinceId($inbox, $since_id, 'notice_id'); + Notice::addWhereMaxId($inbox, $max_id, 'notice_id'); + + $inbox->orderBy('created DESC, notice_id DESC'); + + if (!is_null($offset)) { + $inbox->limit($offset, $limit); + } + + $ids = array(); + + if ($inbox->find()) { + while ($inbox->fetch()) { + $ids[] = $inbox->notice_id; + } + } + + return $ids; + } +} diff --git a/lib/noticestream.php b/lib/noticestream.php index 2ceef17d74..b60fc236f7 100644 --- a/lib/noticestream.php +++ b/lib/noticestream.php @@ -44,20 +44,9 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ -class NoticeStream +abstract class NoticeStream { - const CACHE_WINDOW = 200; - - public $generator = null; - public $args = null; - public $cachekey = null; - - function __construct($generator, $args, $cachekey) - { - $this->generator = $generator; - $this->args = $args; - $this->cachekey = $cachekey; - } + abstract function getNoticeIds($offset, $limit, $sinceId, $maxId); function getNotices($offset=0, $limit=20, $sinceId=0, $maxId=0) { @@ -68,75 +57,6 @@ class NoticeStream return $notices; } - function getNoticeIds($offset=0, $limit=20, $sinceId=0, $maxId=0) - { - $cache = Cache::instance(); - - // We cache self::CACHE_WINDOW elements at the tip of the stream. - // If the cache won't be hit, just generate directly. - - if (empty($cache) || - $sinceId != 0 || $maxId != 0 || - is_null($limit) || - ($offset + $limit) > self::CACHE_WINDOW) { - return $this->generate($offset, $limit, $sinceId, $maxId); - } - - // Check the cache to see if we have the stream. - - $idkey = Cache::key($this->cachekey); - - $idstr = $cache->get($idkey); - - if ($idstr !== false) { - // Cache hit! Woohoo! - $window = explode(',', $idstr); - $ids = array_slice($window, $offset, $limit); - return $ids; - } - - // Check the cache to see if we have a "last-known-good" version. - // The actual cache gets blown away when new notices are added, but - // the "last" value holds a lot of info. We might need to only generate - // a few at the "tip", which can bound our queries and save lots - // of time. - - $laststr = $cache->get($idkey.';last'); - - if ($laststr !== false) { - $window = explode(',', $laststr); - $last_id = $window[0]; - $new_ids = $this->generate(0, self::CACHE_WINDOW, $last_id, 0); - - $new_window = array_merge($new_ids, $window); - - $new_windowstr = implode(',', $new_window); - - $result = $cache->set($idkey, $new_windowstr); - $result = $cache->set($idkey . ';last', $new_windowstr); - - $ids = array_slice($new_window, $offset, $limit); - - return $ids; - } - - // No cache hits :( Generate directly and stick the results - // into the cache. Note we generate the full cache window. - - $window = $this->generate(0, self::CACHE_WINDOW, 0, 0); - - $windowstr = implode(',', $window); - - $result = $cache->set($idkey, $windowstr); - $result = $cache->set($idkey . ';last', $windowstr); - - // Return just the slice that was requested - - $ids = array_slice($window, $offset, $limit); - - return $ids; - } - static function getStreamByIds($ids) { $cache = Cache::instance(); @@ -177,14 +97,4 @@ class NoticeStream return new ArrayWrapper($wrapped); } } - - function generate($offset, $limit, $sinceId, $maxId) - { - $args = array_merge($this->args, array($offset, - $limit, - $sinceId, - $maxId)); - - return call_user_func_array($this->generator, $args); - } } diff --git a/lib/profilenoticestream.php b/lib/profilenoticestream.php new file mode 100644 index 0000000000..9324bfb85d --- /dev/null +++ b/lib/profilenoticestream.php @@ -0,0 +1,105 @@ +. + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Stream of notices by a profile + * + * @category General + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class ProfileNoticeStream extends CachingNoticeStream +{ + function __construct($profile) + { + parent::__construct(new RawProfileNoticeStream($profile), + 'profile:notice_ids:' . $profile->id); + } +} + +/** + * Raw stream of notices by a profile + * + * @category General + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class RawProfileNoticeStream extends NoticeStream +{ + protected $profile; + + function __construct($profile) + { + $this->profile = $profile; + } + + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + $notice = new Notice(); + + $notice->profile_id = $this->profile->id; + + $notice->selectAdd(); + $notice->selectAdd('id'); + + Notice::addWhereSinceId($notice, $since_id); + Notice::addWhereMaxId($notice, $max_id); + + $notice->orderBy('created DESC, id DESC'); + + if (!is_null($offset)) { + $notice->limit($offset, $limit); + } + + $notice->find(); + + $ids = array(); + + while ($notice->fetch()) { + $ids[] = $notice->id; + } + + return $ids; + } +} diff --git a/lib/publicnoticestream.php b/lib/publicnoticestream.php new file mode 100644 index 0000000000..0162375451 --- /dev/null +++ b/lib/publicnoticestream.php @@ -0,0 +1,50 @@ +selectAdd(); // clears it + $notice->selectAdd('id'); + + $notice->orderBy('created DESC, id DESC'); + + if (!is_null($offset)) { + $notice->limit($offset, $limit); + } + + if (common_config('public', 'localonly')) { + $notice->whereAdd('is_local = ' . Notice::LOCAL_PUBLIC); + } else { + // -1 == blacklisted, -2 == gateway (i.e. Twitter) + $notice->whereAdd('is_local !='. Notice::LOCAL_NONPUBLIC); + $notice->whereAdd('is_local !='. Notice::GATEWAY); + } + + Notice::addWhereSinceId($notice, $since_id); + Notice::addWhereMaxId($notice, $max_id); + + $ids = array(); + + if ($notice->find()) { + while ($notice->fetch()) { + $ids[] = $notice->id; + } + } + + $notice->free(); + $notice = NULL; + + return $ids; + } +} \ No newline at end of file diff --git a/lib/repeatedbymenoticestream.php b/lib/repeatedbymenoticestream.php new file mode 100644 index 0000000000..2c4c00ebf9 --- /dev/null +++ b/lib/repeatedbymenoticestream.php @@ -0,0 +1,53 @@ +id); + } +} + +class RawRepeatedByMeNoticeStream extends NoticeStream +{ + protected $user; + + function __construct($user) + { + $this->user = $user; + } + + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + $notice = new Notice(); + + $notice->selectAdd(); // clears it + $notice->selectAdd('id'); + + $notice->profile_id = $this->user->id; + $notice->whereAdd('repeat_of IS NOT NULL'); + + $notice->orderBy('created DESC, id DESC'); + + if (!is_null($offset)) { + $notice->limit($offset, $limit); + } + + Notice::addWhereSinceId($notice, $since_id); + Notice::addWhereMaxId($notice, $max_id); + + $ids = array(); + + if ($notice->find()) { + while ($notice->fetch()) { + $ids[] = $notice->id; + } + } + + $notice->free(); + $notice = NULL; + + return $ids; + } +} \ No newline at end of file diff --git a/lib/repeatsofmenoticestream.php b/lib/repeatsofmenoticestream.php new file mode 100644 index 0000000000..1441908e5a --- /dev/null +++ b/lib/repeatsofmenoticestream.php @@ -0,0 +1,59 @@ +id); + } +} + +class RawRepeatsOfMeNoticeStream extends NoticeStream +{ + protected $user; + + function __construct($user) + { + $this->user = $user; + } + + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + $qry = + 'SELECT DISTINCT original.id AS id ' . + 'FROM notice original JOIN notice rept ON original.id = rept.repeat_of ' . + 'WHERE original.profile_id = ' . $this->user->id . ' '; + + $since = Notice::whereSinceId($since_id, 'original.id', 'original.created'); + if ($since) { + $qry .= "AND ($since) "; + } + + $max = Notice::whereMaxId($max_id, 'original.id', 'original.created'); + if ($max) { + $qry .= "AND ($max) "; + } + + $qry .= 'ORDER BY original.created, 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/replynoticestream.php b/lib/replynoticestream.php new file mode 100644 index 0000000000..f358afcc54 --- /dev/null +++ b/lib/replynoticestream.php @@ -0,0 +1,45 @@ +userId = $userId; + } + + function getNoticeIds($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) + { + $reply = new Reply(); + $reply->profile_id = $this->userId; + + Notice::addWhereSinceId($reply, $since_id, 'notice_id', 'modified'); + Notice::addWhereMaxId($reply, $max_id, 'notice_id', 'modified'); + + $reply->orderBy('modified DESC, notice_id DESC'); + + if (!is_null($offset)) { + $reply->limit($offset, $limit); + } + + $ids = array(); + + if ($reply->find()) { + while ($reply->fetch()) { + $ids[] = $reply->notice_id; + } + } + + return $ids; + } +} \ No newline at end of file diff --git a/lib/taggedprofilenoticestream.php b/lib/taggedprofilenoticestream.php new file mode 100644 index 0000000000..d1711876eb --- /dev/null +++ b/lib/taggedprofilenoticestream.php @@ -0,0 +1,61 @@ +id.':'.Cache::keyize($tag)); + } +} + +class RawTaggedProfileNoticeStream extends NoticeStream +{ + protected $profile; + protected $tag; + + function __construct($profile, $tag) + { + $this->profile = $profile; + $this->tag = $tag; + } + + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + // XXX It would be nice to do this without a join + // (necessary to do it efficiently on accounts with long history) + + $notice = new Notice(); + + $query = + "select id from notice join notice_tag on id=notice_id where tag='". + $notice->escape($this->tag) . + "' and profile_id=" . intval($this->profile->id); + + $since = Notice::whereSinceId($since_id, 'id', 'notice.created'); + if ($since) { + $query .= " and ($since)"; + } + + $max = Notice::whereMaxId($max_id, 'id', 'notice.created'); + if ($max) { + $query .= " and ($max)"; + } + + $query .= ' order by notice.created DESC, id DESC'; + + if (!is_null($offset)) { + $query .= " LIMIT " . intval($limit) . " OFFSET " . intval($offset); + } + + $notice->query($query); + + $ids = array(); + + while ($notice->fetch()) { + $ids[] = $notice->id; + } + + return $ids; + } +} diff --git a/lib/tagnoticestream.php b/lib/tagnoticestream.php new file mode 100644 index 0000000000..0e287744dd --- /dev/null +++ b/lib/tagnoticestream.php @@ -0,0 +1,49 @@ +tag = $tag; + } + + function getNoticeIds($offset, $limit, $since_id, $max_id) + { + $nt = new Notice_tag(); + + $nt->tag = $this->tag; + + $nt->selectAdd(); + $nt->selectAdd('notice_id'); + + Notice::addWhereSinceId($nt, $since_id, 'notice_id'); + Notice::addWhereMaxId($nt, $max_id, 'notice_id'); + + $nt->orderBy('created DESC, notice_id DESC'); + + if (!is_null($offset)) { + $nt->limit($offset, $limit); + } + + $ids = array(); + + if ($nt->find()) { + while ($nt->fetch()) { + $ids[] = $nt->notice_id; + } + } + + return $ids; + } +} From d994b4583a57afa9e0be4facb06e58166641cdf1 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Thu, 24 Mar 2011 18:41:25 -0700 Subject: [PATCH 26/90] TwitterBridge: discard outgoing queue items instead of retrying when Twitter API returns HTTP 400 or 404 error codes We get HTTP 400 for various cases of invalid data, where retrying doesn't help at all -- previously those would loop forever, or until something died at least. :) 400 is also used for rate limiting, but retrying *immediately* will just hit the rate limit again, so better to discard if we're going over for now. --- plugins/TwitterBridge/twitter.php | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/plugins/TwitterBridge/twitter.php b/plugins/TwitterBridge/twitter.php index f5a0b62588..2c68f89f16 100644 --- a/plugins/TwitterBridge/twitter.php +++ b/plugins/TwitterBridge/twitter.php @@ -320,7 +320,20 @@ function process_error($e, $flink, $notice) common_log(LOG_WARNING, $logmsg); + // http://dev.twitter.com/pages/responses_errors switch($code) { + case 400: + // Probably invalid data (bad Unicode chars or coords) that + // cannot be resolved by just sending again. + // + // It could also be rate limiting, but retrying immediately + // won't help much with that, so we'll discard for now. + // If a facility for retrying things later comes up in future, + // we can detect the rate-limiting headers and use that. + // + // Discard the message permanently. + return true; + break; case 401: // Probably a revoked or otherwise bad access token - nuke! remove_twitter_link($flink); @@ -330,6 +343,13 @@ function process_error($e, $flink, $notice) // User has exceeder her rate limit -- toss the notice return true; break; + case 404: + // Resource not found. Shouldn't happen much on posting, + // but just in case! + // + // Consider it a matter for tossing the notice. + return true; + break; default: // For every other case, it's probably some flakiness so try From 41e919f3cae981ebda69758b26f1f4e1ae9c0b28 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Fri, 25 Mar 2011 09:55:33 +0100 Subject: [PATCH 27/90] L10n update. Translator documentation added. Superfluous whitespace removed. --- plugins/TwitterBridge/twitter.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/plugins/TwitterBridge/twitter.php b/plugins/TwitterBridge/twitter.php index 2c68f89f16..396de22b09 100644 --- a/plugins/TwitterBridge/twitter.php +++ b/plugins/TwitterBridge/twitter.php @@ -83,7 +83,6 @@ function save_twitter_user($twitter_id, $screen_name) $screen_name, $oldname)); } - } else { // Kill any old, invalid records for this screen name $fuser = Foreign_user::getByNickname($screen_name, TWITTER_SERVICE); @@ -279,7 +278,6 @@ function broadcast_oauth($notice, $flink) { } if (empty($status)) { - // This could represent a failure posting, // or the Twitter API might just be behaving flakey. $errmsg = sprintf('Twitter bridge - No data returned by Twitter API when ' . @@ -426,10 +424,14 @@ function mail_twitter_bridge_removed($user) common_switch_locale($user->language); - $subject = sprintf(_m('Your Twitter bridge has been disabled.')); + // TRANS: Mail subject after forwarding notices to Twitter has stopped working. + $subject = sprintf(_m('Your Twitter bridge has been disabled')); $site_name = common_config('site', 'name'); + // TRANS: Mail body after forwarding notices to Twitter has stopped working. + // TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the + // TRANS: Twitter settings, %3$s is the StatusNet sitename. $body = sprintf(_m('Hi, %1$s. We\'re sorry to inform you that your ' . 'link to Twitter has been disabled. We no longer seem to have ' . 'permission to update your Twitter status. Did you maybe revoke ' . From 3cc7dda4784064cca1363e24a91e379de5159287 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Fri, 25 Mar 2011 10:02:02 +0100 Subject: [PATCH 28/90] * PHP short tags " Date: Fri, 25 Mar 2011 10:13:26 +0100 Subject: [PATCH 29/90] Fix use of incorrect method causing i18n issue. --- lib/cancelgroupform.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cancelgroupform.php b/lib/cancelgroupform.php index c328f358c8..f4a44b5b5b 100644 --- a/lib/cancelgroupform.php +++ b/lib/cancelgroupform.php @@ -112,6 +112,6 @@ class CancelGroupForm extends Form function formActions() { // TRANS: Submit button text on form to cancel group join request. - $this->out->submit('submit', _('BUTTON','Cancel join request')); + $this->out->submit('submit', _m('BUTTON','Cancel join request')); } } From 074be0d51ebfeff1d0cc3ec0d572e8eb2442a355 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Fri, 25 Mar 2011 17:12:53 +0100 Subject: [PATCH 30/90] i18n fixes. Translator documentation updates. --- actions/approvegroup.php | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/actions/approvegroup.php b/actions/approvegroup.php index 690c76360f..5039cfae6b 100644 --- a/actions/approvegroup.php +++ b/actions/approvegroup.php @@ -169,15 +169,18 @@ class ApprovegroupAction extends Action $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); // TRANS: Title for leave group page after group join request is approved/disapproved. + // TRANS: %1$s is the user nickname, %2$s is the group nickname. $this->element('title', null, sprintf(_m('TITLE','%1$s\'s request for %2$s'), $this->profile->nickname, $this->group->nickname)); $this->elementEnd('head'); $this->elementStart('body'); if ($this->approve) { - $this->element('p', 'success', _m('Join request approved.')); + // TRANS: Message on page for group admin after approving a join request. + $this->element('p', 'success', _('Join request approved.')); } elseif ($this->cancel) { - $this->element('p', 'success', _m('Join request canceled.')); + // TRANS: Message on page for group admin after rejecting a join request. + $this->element('p', 'success', _('Join request canceled.')); } $this->elementEnd('body'); $this->elementEnd('html'); From 84984fdbfecdd79630801e2a6ca5b5e9e4b725a1 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 25 Mar 2011 12:22:22 -0400 Subject: [PATCH 31/90] All notice streams check notice scope Added filtering code so that notice streams check notice scope. Added new class to implement filtering a stream, FilteringNoticeStream. Added a subclass that does the logic for checking Notice scope. And made all the streams use ScopingNoticeStream. --- lib/conversationnoticestream.php | 62 +++++++++++++++- lib/favenoticestream.php | 60 +++++++++++++++- lib/filenoticestream.php | 53 ++++++++++++-- lib/filteringnoticestream.php | 115 ++++++++++++++++++++++++++++++ lib/groupnoticestream.php | 62 ++++++++++++++-- lib/profilenoticestream.php | 6 +- lib/publicnoticestream.php | 61 +++++++++++++++- lib/repeatedbymenoticestream.php | 62 +++++++++++++++- lib/repeatsofmenoticestream.php | 61 +++++++++++++++- lib/replynoticestream.php | 62 +++++++++++++++- lib/scopingnoticestream.php | 78 ++++++++++++++++++++ lib/taggedprofilenoticestream.php | 64 +++++++++++++++-- lib/tagnoticestream.php | 62 +++++++++++++++- 13 files changed, 774 insertions(+), 34 deletions(-) create mode 100644 lib/filteringnoticestream.php create mode 100644 lib/scopingnoticestream.php diff --git a/lib/conversationnoticestream.php b/lib/conversationnoticestream.php index b26e898612..d7338d0245 100644 --- a/lib/conversationnoticestream.php +++ b/lib/conversationnoticestream.php @@ -1,14 +1,70 @@ . + * + * @category Cache + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class ConversationNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Notice stream for a conversation + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class ConversationNoticeStream extends ScopingNoticeStream { function __construct($id) { - parent::__construct(new RawConversationNoticeStream($id), - 'notice:conversation_ids:'.$id); + parent::__construct(new CachingNoticeStream(new RawConversationNoticeStream($id), + 'notice:conversation_ids:'.$id)); } } +/** + * Notice stream for a conversation + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawConversationNoticeStream extends NoticeStream { protected $id; diff --git a/lib/favenoticestream.php b/lib/favenoticestream.php index 5aaad5ce5b..987805cf9d 100644 --- a/lib/favenoticestream.php +++ b/lib/favenoticestream.php @@ -1,6 +1,51 @@ . + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class FaveNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Notice stream for favorites + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class FaveNoticeStream extends ScopingNoticeStream { function __construct($user_id, $own) { @@ -10,10 +55,21 @@ class FaveNoticeStream extends CachingNoticeStream } else { $key = 'fave:ids_by_user:'.$user_id; } - parent::__construct($stream, $key); + parent::__construct(new CachingNoticeStream($stream, $key)); } } +/** + * Raw notice stream for favorites + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawFaveNoticeStream extends NoticeStream { protected $user_id; diff --git a/lib/filenoticestream.php b/lib/filenoticestream.php index fddc5d33ce..8c01893634 100644 --- a/lib/filenoticestream.php +++ b/lib/filenoticestream.php @@ -1,22 +1,67 @@ . + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class FileNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +class FileNoticeStream extends ScopingNoticeStream { function __construct($file) { - parent::__construct(new RawFileNoticeStream($file), - 'file:notice-ids:'.$this->url); + parent::__construct(new CachingNoticeStream(new RawFileNoticeStream($file), + 'file:notice-ids:'.$this->url)); } } +/** + * Raw stream for a file + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawFileNoticeStream extends NoticeStream { protected $file = null; function __construct($file) { - $this->file = $file; parent::__construct(); + $this->file = $file; } /** diff --git a/lib/filteringnoticestream.php b/lib/filteringnoticestream.php new file mode 100644 index 0000000000..a3bdc08af6 --- /dev/null +++ b/lib/filteringnoticestream.php @@ -0,0 +1,115 @@ +. + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * A class for presenting a filtered notice stream based on an upstream stream + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +abstract class FilteringNoticeStream extends NoticeStream +{ + protected $upstream; + + function __construct($upstream) + { + $this->upstream = $upstream; + } + + abstract function filter($notice); + + function getNotices($offset, $limit, $sinceId, $maxId) + { + // "offset" is virtual; we have to get a lot + $total = $offset + $limit; + + $filtered = array(); + + $startAt = 0; + $askFor = $total; + + // Keep going till we have $total notices in $notices array, + // or we get nothing from upstream. + + $results = null; + + do { + + $raw = $this->upstream->getNotices($startAt, $askFor, $sinceId, $maxId); + + $results = $raw->N; + + if ($results == 0) { + break; + } + + while ($raw->fetch()) { + if ($this->filter($raw)) { + $filtered[] = clone($raw); + if (count($filtered >= $total)) { + break; + } + } + } + + // XXX: make these smarter; factor hit rate into $askFor + + $startAt += $askFor; + $askFor = max($total - count($filtered), NOTICES_PER_PAGE); + + } while (count($filtered) < $total && $results !== 0); + + return new ArrayWrapper(array_slice($filtered, $offset, $limit)); + } + + function getNoticeIds($offset, $limit, $sinceId, $maxId) + { + $notices = $this->getNotices($offset, $limit, $sinceId, $maxId); + + $ids = array(); + + while ($notices->fetch()) { + $ids[] = $notice->id; + } + + return $ids; + } +} diff --git a/lib/groupnoticestream.php b/lib/groupnoticestream.php index a6aa2c352c..22d94d0482 100644 --- a/lib/groupnoticestream.php +++ b/lib/groupnoticestream.php @@ -1,14 +1,68 @@ -. + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class GroupNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Stream of notices for a group + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ +class GroupNoticeStream extends ScopingNoticeStream { function __construct($group) { - parent::__construct(new RawGroupNoticeStream($group), - 'user_group:notice_ids:' . $group->id); + parent::__construct(new CachingNoticeStream(new RawGroupNoticeStream($group), + 'user_group:notice_ids:' . $group->id)); } } +/** + * Stream of notices for a group + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ class RawGroupNoticeStream extends NoticeStream { protected $group; diff --git a/lib/profilenoticestream.php b/lib/profilenoticestream.php index 9324bfb85d..ca54ad4892 100644 --- a/lib/profilenoticestream.php +++ b/lib/profilenoticestream.php @@ -45,12 +45,12 @@ if (!defined('STATUSNET')) { * @link http://status.net/ */ -class ProfileNoticeStream extends CachingNoticeStream +class ProfileNoticeStream extends ScopingNoticeStream { function __construct($profile) { - parent::__construct(new RawProfileNoticeStream($profile), - 'profile:notice_ids:' . $profile->id); + parent::__construct(new CachingNoticeStream(new RawProfileNoticeStream($profile), + 'profile:notice_ids:' . $profile->id)); } } diff --git a/lib/publicnoticestream.php b/lib/publicnoticestream.php index 0162375451..19d0ad96a0 100644 --- a/lib/publicnoticestream.php +++ b/lib/publicnoticestream.php @@ -1,13 +1,70 @@ . + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class PublicNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Public stream + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class PublicNoticeStream extends ScopingNoticeStream { function __construct() { - parent::__construct(new RawPublicNoticeStream(), 'public'); + parent::__construct(new CachingNoticeStream(new RawPublicNoticeStream(), + 'public')); } } +/** + * Raw public stream + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawPublicNoticeStream extends NoticeStream { function getNoticeIds($offset=0, $limit=20, $since_id=0, $max_id=0) diff --git a/lib/repeatedbymenoticestream.php b/lib/repeatedbymenoticestream.php index 2c4c00ebf9..98c1583d6a 100644 --- a/lib/repeatedbymenoticestream.php +++ b/lib/repeatedbymenoticestream.php @@ -1,14 +1,70 @@ . + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class RepeatedByMeNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Stream of notices repeated by me + * + * @category General + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class RepeatedByMeNoticeStream extends ScopingNoticeStream { function __construct($user) { - parent::__construct(new RawRepeatedByMeNoticeStream($user), - 'user:repeated_by_me:'.$user->id); + parent::__construct(new CachingNoticeStream(new RawRepeatedByMeNoticeStream($user), + 'user:repeated_by_me:'.$user->id)); } } +/** + * Raw stream of notices repeated by me + * + * @category General + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawRepeatedByMeNoticeStream extends NoticeStream { protected $user; diff --git a/lib/repeatsofmenoticestream.php b/lib/repeatsofmenoticestream.php index 1441908e5a..f51fc9e447 100644 --- a/lib/repeatsofmenoticestream.php +++ b/lib/repeatsofmenoticestream.php @@ -1,14 +1,69 @@ . + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class RepeatsOfMeNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Stream of notices that are repeats of mine + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class RepeatsOfMeNoticeStream extends ScopingNoticeStream { function __construct($user) { - parent::__construct(new RawRepeatsOfMeNoticeStream($user), - 'user:repeats_of_me:'.$user->id); + parent::__construct(new CachingNoticeStream(new RawRepeatsOfMeNoticeStream($user), + 'user:repeats_of_me:'.$user->id)); } } +/** + * Raw stream of notices that are repeats of mine + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ class RawRepeatsOfMeNoticeStream extends NoticeStream { protected $user; diff --git a/lib/replynoticestream.php b/lib/replynoticestream.php index f358afcc54..d9214b7107 100644 --- a/lib/replynoticestream.php +++ b/lib/replynoticestream.php @@ -1,14 +1,70 @@ . + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class ReplyNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Stream of mentions of me + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class ReplyNoticeStream extends ScopingNoticeStream { function __construct($userId) { - parent::__construct(new RawReplyNoticeStream($userId), - 'reply:stream:' . $userId); + parent::__construct(new CachingNoticeStream(new RawReplyNoticeStream($userId), + 'reply:stream:' . $userId)); } } +/** + * Raw stream of mentions of me + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawReplyNoticeStream extends NoticeStream { protected $userId; diff --git a/lib/scopingnoticestream.php b/lib/scopingnoticestream.php new file mode 100644 index 0000000000..a7ecbcd56b --- /dev/null +++ b/lib/scopingnoticestream.php @@ -0,0 +1,78 @@ +. + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Class comment + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class ScopingNoticeStream extends FilteringNoticeStream +{ + protected $profile; + + function __construct($upstream, $profile = null) + { + parent::__construct($upstream); + + if (empty($profile)) { + $user = common_current_user(); + if (!empty($user)) { + $profile = $user->getProfile(); + } + } + $this->profile = $profile; + } + + /** + * Only return notices where the profile is in scope + * + * @param Notice $notice The notice to check + * + * @return boolean whether to include the notice + */ + + function filter($notice) + { + return $notice->inScope($this->profile); + } + +} diff --git a/lib/taggedprofilenoticestream.php b/lib/taggedprofilenoticestream.php index d1711876eb..83c304ed8f 100644 --- a/lib/taggedprofilenoticestream.php +++ b/lib/taggedprofilenoticestream.php @@ -1,14 +1,70 @@ -. + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class TaggedProfileNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Stream of notices with a given profile and tag + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class TaggedProfileNoticeStream extends ScopingNoticeStream { function __construct($profile, $tag) { - parent::__construct(new RawTaggedProfileNoticeStream($profile, $tag), - 'profile:notice_ids_tagged:'.$profile->id.':'.Cache::keyize($tag)); + parent::__construct(new CachingNoticeStream(new RawTaggedProfileNoticeStream($profile, $tag), + 'profile:notice_ids_tagged:'.$profile->id.':'.Cache::keyize($tag))); } } +/** + * Raw stream of notices with a given profile and tag + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawTaggedProfileNoticeStream extends NoticeStream { protected $profile; diff --git a/lib/tagnoticestream.php b/lib/tagnoticestream.php index 0e287744dd..1dcf9f14bb 100644 --- a/lib/tagnoticestream.php +++ b/lib/tagnoticestream.php @@ -1,14 +1,70 @@ . + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ -class TagNoticeStream extends CachingNoticeStream +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Stream of notices with a given tag + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class TagNoticeStream extends ScopingNoticeStream { function __construct($tag) { - parent::__construct(new RawTagNoticeStream($tag), - 'notice_tag:notice_ids:' . Cache::keyize($tag)); + parent::__construct(new CachingNoticeStream(new RawTagNoticeStream($tag), + 'notice_tag:notice_ids:' . Cache::keyize($tag))); } } +/** + * Raw stream of notices with a given tag + * + * @category Stream + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + class RawTagNoticeStream extends NoticeStream { protected $tag; From 7a56637baa463ca738afcbb9395c333a30574eb2 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 25 Mar 2011 16:15:55 -0400 Subject: [PATCH 32/90] Make function signature for getNoticeIds agree There were some differences between defaults for the NoticeStream::getNoticeIds() function and some of its subclasses' implementations. So, I got them rationalized. --- lib/cachingnoticestream.php | 2 +- lib/conversationnoticestream.php | 2 +- lib/noticestream.php | 4 ++-- lib/publicnoticestream.php | 2 +- lib/replynoticestream.php | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/cachingnoticestream.php b/lib/cachingnoticestream.php index 0b5aa33a37..f8ab2a85af 100644 --- a/lib/cachingnoticestream.php +++ b/lib/cachingnoticestream.php @@ -58,7 +58,7 @@ class CachingNoticeStream extends NoticeStream $this->cachekey = $cachekey; } - function getNoticeIds($offset=0, $limit=20, $sinceId=0, $maxId=0) + function getNoticeIds($offset, $limit, $sinceId, $maxId) { $cache = Cache::instance(); diff --git a/lib/conversationnoticestream.php b/lib/conversationnoticestream.php index b26e898612..dbba6cd6f0 100644 --- a/lib/conversationnoticestream.php +++ b/lib/conversationnoticestream.php @@ -18,7 +18,7 @@ class RawConversationNoticeStream extends NoticeStream $this->id = $id; } - function getNoticeIds($offset=0, $limit=20, $since_id=0, $max_id=0) + function getNoticeIds($offset, $limit, $since_id, $max_id) { $notice = new Notice(); diff --git a/lib/noticestream.php b/lib/noticestream.php index b60fc236f7..025138be4d 100644 --- a/lib/noticestream.php +++ b/lib/noticestream.php @@ -46,9 +46,9 @@ if (!defined('STATUSNET')) { */ abstract class NoticeStream { - abstract function getNoticeIds($offset, $limit, $sinceId, $maxId); + abstract function getNoticeIds($offset, $limit, $since_id, $max_id); - function getNotices($offset=0, $limit=20, $sinceId=0, $maxId=0) + function getNotices($offset, $limit, $sinceId, $maxId) { $ids = $this->getNoticeIds($offset, $limit, $sinceId, $maxId); diff --git a/lib/publicnoticestream.php b/lib/publicnoticestream.php index 0162375451..6a861ca26e 100644 --- a/lib/publicnoticestream.php +++ b/lib/publicnoticestream.php @@ -10,7 +10,7 @@ class PublicNoticeStream extends CachingNoticeStream class RawPublicNoticeStream extends NoticeStream { - function getNoticeIds($offset=0, $limit=20, $since_id=0, $max_id=0) + function getNoticeIds($offset, $limit, $since_id, $max_id) { $notice = new Notice(); diff --git a/lib/replynoticestream.php b/lib/replynoticestream.php index f358afcc54..d0ae5fc4a7 100644 --- a/lib/replynoticestream.php +++ b/lib/replynoticestream.php @@ -18,7 +18,7 @@ class RawReplyNoticeStream extends NoticeStream $this->userId = $userId; } - function getNoticeIds($offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0) + function getNoticeIds($offset, $limit, $since_id, $max_id) { $reply = new Reply(); $reply->profile_id = $this->userId; From 3e293363f624a580703ffe07dff2b3d7f5a40676 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Fri, 25 Mar 2011 17:39:14 -0400 Subject: [PATCH 33/90] add groups and joins to createsim.php --- scripts/createsim.php | 93 ++++++++++++++++++++++++++++++++++++------- 1 file changed, 79 insertions(+), 14 deletions(-) diff --git a/scripts/createsim.php b/scripts/createsim.php index e0b5fc906b..d97ecc1c4d 100644 --- a/scripts/createsim.php +++ b/scripts/createsim.php @@ -20,8 +20,8 @@ define('INSTALLDIR', realpath(dirname(__FILE__) . '/..')); -$shortoptions = 'u:n:b:t:x:'; -$longoptions = array('users=', 'notices=', 'subscriptions=', 'tags=', 'prefix='); +$shortoptions = 'u:n:b:g:j:t:x:z:'; +$longoptions = array('users=', 'notices=', 'subscriptions=', 'groups=', 'joins=', 'tags=', 'prefix='); $helptext = << sprintf('%s%d', $groupprefix, $i), + 'local' => true, + 'fullname' => sprintf('Test Group %d', $i))); + if (!empty($user)) { + $user->free(); + } +} + function newNotice($i, $tagmax) { global $userprefix; @@ -117,38 +131,89 @@ function newSub($i) $to->free(); } -function main($usercount, $noticeavg, $subsavg, $tagmax) +function newJoin($u, $g) +{ + global $userprefix; + global $groupprefix; + + $userNumber = rand(0, $u - 1); + + $userNick = sprintf('%s%d', $userprefix, $userNumber); + + $user = User::staticGet('nickname', $userNick); + + if (empty($user)) { + throw new Exception("Can't find user '$fromnick'."); + } + + $groupNumber = rand(0, $g - 1); + + $groupNick = sprintf('%s%d', $groupprefix, $groupNumber); + + $group = User_group::staticGet('nickname', $groupNick); + + if (empty($group)) { + throw new Exception("Can't find group '$groupNick'."); + } + + if (!$user->isMember($group)) { + $user->joinGroup($group); + } +} + +function main($usercount, $groupcount, $noticeavg, $subsavg, $joinsavg, $tagmax) { global $config; $config['site']['dupelimit'] = -1; $n = 1; + $g = 1; newUser(0); + newGroup(0); // # registrations + # notices + # subs - $events = $usercount + ($usercount * ($noticeavg + $subsavg)); + $events = $usercount + $groupcount + ($usercount * ($noticeavg + $subsavg + $joinsavg)); + + $ut = $usercount; + $gt = $ut + $groupcount; + $nt = $gt + ($usercount * $noticeavg); + $st = $nt + ($usercount * $subsavg); + $jt = $st + ($usercount * $joinsavg); for ($i = 0; $i < $events; $i++) { - $e = rand(0, 1 + $noticeavg + $subsavg); + $e = rand(0, $events); - if ($e == 0) { + if ($e > 0 && $e <= $ut) { + printfv("Creating user $n\n"); newUser($n); $n++; - } else if ($e < $noticeavg + 1) { + } else if ($e > $ut && $e <= $gt) { + printfv("Creating group $g\n"); + newGroup($g); + $g++; + } else if ($e > $gt && $e <= $nt) { + printfv("Making a new notice\n"); newNotice($n, $tagmax); - } else { + } else if ($e > $nt && $e <= $st) { + printfv("Making a new subscription\n"); newSub($n); + } else if ($e > $st && $e <= $jt) { + printfv("Making a new group join\n"); + newJoin($n, $g); } } } -$usercount = (have_option('u', 'users')) ? get_option_value('u', 'users') : 100; -$noticeavg = (have_option('n', 'notices')) ? get_option_value('n', 'notices') : 100; -$subsavg = (have_option('b', 'subscriptions')) ? get_option_value('b', 'subscriptions') : max($usercount/20, 10); -$tagmax = (have_option('t', 'tags')) ? get_option_value('t', 'tags') : 10000; -$userprefix = (have_option('x', 'prefix')) ? get_option_value('x', 'prefix') : 'testuser'; +$usercount = (have_option('u', 'users')) ? get_option_value('u', 'users') : 100; +$groupcount = (have_option('g', 'groups')) ? get_option_value('g', 'groups') : 20; +$noticeavg = (have_option('n', 'notices')) ? get_option_value('n', 'notices') : 100; +$subsavg = (have_option('b', 'subscriptions')) ? get_option_value('b', 'subscriptions') : max($usercount/20, 10); +$joinsavg = (have_option('j', 'joins')) ? get_option_value('j', 'joins') : 5; +$tagmax = (have_option('t', 'tags')) ? get_option_value('t', 'tags') : 10000; +$userprefix = (have_option('x', 'prefix')) ? get_option_value('x', 'prefix') : 'testuser'; +$groupprefix = (have_option('z', 'groupprefix')) ? get_option_value('z', 'groupprefix') : 'testgroup'; -main($usercount, $noticeavg, $subsavg, $tagmax); +main($usercount, $groupcount, $noticeavg, $subsavg, $joinsavg, $tagmax); From 5502e535debc05eccfb3777081816ee3d20ed379 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Sat, 26 Mar 2011 12:21:36 +0100 Subject: [PATCH 34/90] Localisation updates from http://translatewiki.net. --- locale/ar/LC_MESSAGES/statusnet.po | 38 ++- locale/arz/LC_MESSAGES/statusnet.po | 24 +- locale/bg/LC_MESSAGES/statusnet.po | 31 ++- locale/br/LC_MESSAGES/statusnet.po | 32 ++- locale/ca/LC_MESSAGES/statusnet.po | 35 ++- locale/cs/LC_MESSAGES/statusnet.po | 45 ++-- locale/de/LC_MESSAGES/statusnet.po | 29 ++- locale/en_GB/LC_MESSAGES/statusnet.po | 27 +-- locale/eo/LC_MESSAGES/statusnet.po | 28 +-- locale/es/LC_MESSAGES/statusnet.po | 28 +-- locale/fa/LC_MESSAGES/statusnet.po | 32 ++- locale/fi/LC_MESSAGES/statusnet.po | 30 ++- locale/fr/LC_MESSAGES/statusnet.po | 31 ++- locale/fur/LC_MESSAGES/statusnet.po | 28 +-- locale/gl/LC_MESSAGES/statusnet.po | 31 ++- locale/hsb/LC_MESSAGES/statusnet.po | 42 ++-- locale/hu/LC_MESSAGES/statusnet.po | 27 +-- locale/ia/LC_MESSAGES/statusnet.po | 218 +++++++----------- locale/it/LC_MESSAGES/statusnet.po | 28 +-- locale/ja/LC_MESSAGES/statusnet.po | 27 +-- locale/ka/LC_MESSAGES/statusnet.po | 31 ++- locale/ko/LC_MESSAGES/statusnet.po | 29 ++- locale/mk/LC_MESSAGES/statusnet.po | 217 +++++++---------- locale/ml/LC_MESSAGES/statusnet.po | 28 +-- locale/nb/LC_MESSAGES/statusnet.po | 28 +-- locale/nl/LC_MESSAGES/statusnet.po | 217 ++++++++--------- locale/pl/LC_MESSAGES/statusnet.po | 35 ++- locale/pt/LC_MESSAGES/statusnet.po | 28 +-- locale/pt_BR/LC_MESSAGES/statusnet.po | 30 ++- locale/ru/LC_MESSAGES/statusnet.po | 38 ++- locale/statusnet.pot | 65 +++--- locale/sv/LC_MESSAGES/statusnet.po | 27 +-- locale/te/LC_MESSAGES/statusnet.po | 188 ++++++--------- locale/tr/LC_MESSAGES/statusnet.po | 29 +-- locale/uk/LC_MESSAGES/statusnet.po | 32 ++- locale/zh_CN/LC_MESSAGES/statusnet.po | 31 ++- .../locale/tl/LC_MESSAGES/AccountManager.po | 28 +++ plugins/Aim/locale/tl/LC_MESSAGES/Aim.po | 34 +++ .../locale/tl/LC_MESSAGES/ExtendedProfile.po | 168 ++++++++++++++ .../tl/LC_MESSAGES/GroupPrivateMessage.po | 55 +++++ plugins/Irc/locale/tl/LC_MESSAGES/Irc.po | 38 +++ .../locale/ar/LC_MESSAGES/MobileProfile.po | 10 +- plugins/Msn/locale/tl/LC_MESSAGES/Msn.po | 31 +++ .../OStatus/locale/de/LC_MESSAGES/OStatus.po | 11 +- .../OStatus/locale/fr/LC_MESSAGES/OStatus.po | 11 +- .../OStatus/locale/ia/LC_MESSAGES/OStatus.po | 11 +- .../OStatus/locale/mk/LC_MESSAGES/OStatus.po | 11 +- .../OStatus/locale/nl/LC_MESSAGES/OStatus.po | 11 +- .../OStatus/locale/uk/LC_MESSAGES/OStatus.po | 11 +- .../tl/LC_MESSAGES/StrictTransportSecurity.po | 30 +++ .../TwitterBridge/locale/TwitterBridge.pot | 12 +- .../locale/br/LC_MESSAGES/TwitterBridge.po | 14 +- .../locale/ca/LC_MESSAGES/TwitterBridge.po | 15 +- .../locale/fa/LC_MESSAGES/TwitterBridge.po | 15 +- .../locale/fr/LC_MESSAGES/TwitterBridge.po | 15 +- .../locale/ia/LC_MESSAGES/TwitterBridge.po | 15 +- .../locale/mk/LC_MESSAGES/TwitterBridge.po | 15 +- .../locale/nl/LC_MESSAGES/TwitterBridge.po | 15 +- .../locale/tr/LC_MESSAGES/TwitterBridge.po | 17 +- .../locale/uk/LC_MESSAGES/TwitterBridge.po | 15 +- .../locale/zh_CN/LC_MESSAGES/TwitterBridge.po | 15 +- plugins/Xmpp/locale/tl/LC_MESSAGES/Xmpp.po | 35 +++ 62 files changed, 1355 insertions(+), 1167 deletions(-) create mode 100644 plugins/AccountManager/locale/tl/LC_MESSAGES/AccountManager.po create mode 100644 plugins/Aim/locale/tl/LC_MESSAGES/Aim.po create mode 100644 plugins/ExtendedProfile/locale/tl/LC_MESSAGES/ExtendedProfile.po create mode 100644 plugins/GroupPrivateMessage/locale/tl/LC_MESSAGES/GroupPrivateMessage.po create mode 100644 plugins/Irc/locale/tl/LC_MESSAGES/Irc.po create mode 100644 plugins/Msn/locale/tl/LC_MESSAGES/Msn.po create mode 100644 plugins/StrictTransportSecurity/locale/tl/LC_MESSAGES/StrictTransportSecurity.po create mode 100644 plugins/Xmpp/locale/tl/LC_MESSAGES/Xmpp.po diff --git a/locale/ar/LC_MESSAGES/statusnet.po b/locale/ar/LC_MESSAGES/statusnet.po index 0ecc52f84c..02a4a0a682 100644 --- a/locale/ar/LC_MESSAGES/statusnet.po +++ b/locale/ar/LC_MESSAGES/statusnet.po @@ -12,19 +12,19 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:09+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:35+0000\n" "Language-Team: Arabic \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ar\n" "X-Message-Group: #out-statusnet-core\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" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1143,14 +1143,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "لم يمكن ضم المستخدم %1$s إلى المجموعة %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "حالة %1$s في يوم %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -2959,15 +2962,15 @@ msgstr "لست عضوا في تلك المجموعة." #. TRANS: User admin panel title msgctxt "TITLE" msgid "License" -msgstr "" +msgstr "الرخصة" #. TRANS: Form instructions for the site license admin panel. msgid "License for this StatusNet site" -msgstr "" +msgstr "رخصة موقع ستاتس نت هذا" #. TRANS: Client error displayed selecting an invalid license in the license admin panel. msgid "Invalid license selection." -msgstr "" +msgstr "اختيار غير صالح للرخصة." #. TRANS: Client error displayed when not specifying an owner for the all rights reserved license in the license admin panel. msgid "" @@ -6757,7 +6760,8 @@ msgid "Block this user" msgstr "امنع هذا المستخدم" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7643,10 +7647,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "مصدر صندوق وارد غير معروف %d." -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "هذه طويلة جدًا. أطول حجم للإشعار %d حرفًا." - msgid "Leave" msgstr "غادر" @@ -7918,7 +7918,7 @@ msgstr "الإشعارات التي فضلها %1$s في %2$s!" #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8291,7 +8291,7 @@ msgid "No return-to arguments." msgstr "لا مدخلات رجوع إلى." msgid "Repeat this notice?" -msgstr "أأكرّر هذا الإشعار؟ّ" +msgstr "أأكرّر هذا الإشعار؟" msgid "Yes" msgstr "نعم" @@ -8326,7 +8326,7 @@ msgstr "الكلمات المفتاحية" #. TRANS: Button text for searching site. msgctxt "BUTTON" msgid "Search" -msgstr "" +msgstr "ابحث" msgid "People" msgstr "أشخاص" @@ -8699,8 +8699,6 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "إشعارات" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 حرفًا إنجليزيًا أو رقمًا بدون نقاط أو مسافات" +#, fuzzy +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "هذه طويلة جدًا. أطول حجم للإشعار %d حرفًا." diff --git a/locale/arz/LC_MESSAGES/statusnet.po b/locale/arz/LC_MESSAGES/statusnet.po index f2d45f5ca6..dad6c27d00 100644 --- a/locale/arz/LC_MESSAGES/statusnet.po +++ b/locale/arz/LC_MESSAGES/statusnet.po @@ -11,19 +11,19 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:10+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:36+0000\n" "Language-Team: Egyptian Spoken Arabic \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: arz\n" "X-Message-Group: #out-statusnet-core\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" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1163,14 +1163,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "ما نفعش يضم %1$s للجروپ %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s ساب جروپ %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6885,7 +6888,8 @@ msgid "Block this user" msgstr "امنع هذا المستخدم" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7779,10 +7783,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "مصدر الـinbox مش معروف %d." -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "هذا الملف كبير جدًا. إن أقصى حجم للملفات هو %d." - msgid "Leave" msgstr "غادر" @@ -8036,7 +8036,7 @@ msgstr "نتايج التدوير لـ\"%1$s\" على %2$s" #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8831,5 +8831,5 @@ msgid "Getting backup from file '%s'." msgstr "" #, fuzzy -#~ msgid "Notice" -#~ msgstr "الإشعارات" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "هذا الملف كبير جدًا. إن أقصى حجم للملفات هو %d." diff --git a/locale/bg/LC_MESSAGES/statusnet.po b/locale/bg/LC_MESSAGES/statusnet.po index 64b9868ee3..18230761b3 100644 --- a/locale/bg/LC_MESSAGES/statusnet.po +++ b/locale/bg/LC_MESSAGES/statusnet.po @@ -11,17 +11,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:12+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:37+0000\n" "Language-Team: Bulgarian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: bg\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1128,14 +1128,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Грешка при обновяване на групата." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Бележка на %1$s от %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6878,7 +6881,8 @@ msgid "Block this user" msgstr "Блокиране на потребителя" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7735,12 +7739,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Непознат език \"%s\"." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Съобщението е твърде дълго. Най-много може да е %1$d знака, а сте въвели %2" -"$d." - msgid "Leave" msgstr "Напускане" @@ -8000,7 +7998,7 @@ msgstr "%1$s реплики на съобщения от %2$s / %3$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8760,8 +8758,7 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "Бележки" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "От 1 до 64 малки букви или цифри, без пунктоация и интервали" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Съобщението е твърде дълго. Най-много може да е %1$d знака, а сте въвели %" +#~ "2$d." diff --git a/locale/br/LC_MESSAGES/statusnet.po b/locale/br/LC_MESSAGES/statusnet.po index b10e57748a..276fde06d2 100644 --- a/locale/br/LC_MESSAGES/statusnet.po +++ b/locale/br/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:14+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:38+0000\n" "Language-Team: Breton \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: br\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1124,14 +1124,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Dibosupl eo stagañ an implijer %1$s d'ar strollad %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Statud %1$s war %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6778,7 +6781,8 @@ msgid "Block this user" msgstr "Stankañ an implijer-mañ" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7634,12 +7638,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Yezh \"%s\" dizanv." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Re hir eo ar gemennadenn - ar ment brasañ a zo %1$d arouezenn, %2$d " -"arouezenn ho peus lakaet." - msgid "Leave" msgstr "Kuitaat" @@ -7893,7 +7891,7 @@ msgstr "%1$s a zo bet er strollad %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8651,9 +8649,7 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "Ali" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1 da 64 lizherenn vihan pe sifr, hep poentaouiñ nag esaouenn" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Re hir eo ar gemennadenn - ar ment brasañ a zo %1$d arouezenn, %2$d " +#~ "arouezenn ho peus lakaet." diff --git a/locale/ca/LC_MESSAGES/statusnet.po b/locale/ca/LC_MESSAGES/statusnet.po index babd7fc1e3..c448f2dc7e 100644 --- a/locale/ca/LC_MESSAGES/statusnet.po +++ b/locale/ca/LC_MESSAGES/statusnet.po @@ -16,17 +16,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:16+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:40+0000\n" "Language-Team: Catalan \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ca\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1137,14 +1137,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "No s'ha pogut afegir l'usuari %1$s al grup %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "estat de %1$s a %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6892,7 +6895,8 @@ msgid "Block this user" msgstr "Bloca aquest usuari" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7513,11 +7517,11 @@ msgstr "Descriviu el grup o la temàtica" #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." -msgstr[0] "Descriviu el grup o la temàtica en %d caràcter" -msgstr[1] "Descriviu el grup o la temàtica en %d caràcters" +msgstr[0] "Descriviu el grup o la temàtica en %d caràcter o menys." +msgstr[1] "Descriviu el grup o la temàtica en %d caràcters o menys." #. TRANS: Field title on group edit form. msgid "" @@ -7732,11 +7736,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Font %d de la safata d'entrada desconeguda." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"El missatge és massa llarg - el màxim és %1$d caràcters, i n'heu enviat %2$d." - msgid "Leave" msgstr "Deixa" @@ -8086,7 +8085,7 @@ msgstr "%1$s s'ha unit al grup %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8835,9 +8834,7 @@ msgstr "L'XML no és vàlid, hi manca l'arrel XRD." msgid "Getting backup from file '%s'." msgstr "Es recupera la còpia de seguretat del fitxer '%s'." -#~ msgid "Notice" -#~ msgstr "Avisos" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." #~ msgstr "" -#~ "1-64 lletres en minúscula o nombres, sense signes de puntuació o espais." +#~ "El missatge és massa llarg - el màxim és %1$d caràcters, i n'heu enviat %2" +#~ "$d." diff --git a/locale/cs/LC_MESSAGES/statusnet.po b/locale/cs/LC_MESSAGES/statusnet.po index e50257f7b4..364e992df1 100644 --- a/locale/cs/LC_MESSAGES/statusnet.po +++ b/locale/cs/LC_MESSAGES/statusnet.po @@ -4,6 +4,7 @@ # Author: Brion # Author: Koo6 # Author: Kuvaly +# Author: Veritaslibero # -- # This file is distributed under the same license as the StatusNet package. # @@ -11,18 +12,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:17+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:41+0000\n" "Language-Team: Czech \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: cs\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=3; plural=(n == 1) ? 0 : ( (n >= 2 && n <= 4) ? 1 : " "2 );\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -820,12 +821,14 @@ msgid "" "Please return to the application and enter the following security code to " "complete the process." msgstr "" +"Prosím vraťte se do aplikace a zadejte následující bezpečnostní kód k " +"dokončení procesu." #. TRANS: Title of the page notifying the user that the client application was successfully authorized to access the user's account with OAuth. #. TRANS: %s is the authorised application name. -#, fuzzy, php-format +#, php-format msgid "You have successfully authorized %s" -msgstr "Nejste autorizován." +msgstr "Úspěšně jste autorizoval %s" #. TRANS: Message notifying the user that the client application was successfully authorized to access the user's account with OAuth. #. TRANS: %s is the authorised application name. @@ -868,9 +871,8 @@ msgstr "Již jste zopakoval toto oznámení." #. TRANS: Client exception thrown when using an unsupported HTTP method. #. TRANS: Client error shown when using a non-supported HTTP method. #. TRANS: Client exception thrown when using an unsupported HTTP method. -#, fuzzy msgid "HTTP method not supported." -msgstr " API metoda nebyla nalezena." +msgstr "Metoda HTTP není podporována." #. TRANS: Exception thrown requesting an unsupported notice output format. #. TRANS: %s is the requested output format. @@ -892,7 +894,6 @@ msgstr "" #. TRANS: Client error displayed when a user has no rights to delete notices of other users. #. TRANS: Error message displayed trying to delete a notice that was not made by the current user. -#, fuzzy msgid "Cannot delete this notice." msgstr "Toto oznámení nelze odstranit." @@ -1119,7 +1120,7 @@ msgstr "Nejste přihlášen(a)." #. TRANS: Client error displayed when trying to approve or cancel a group join request without #. TRANS: being a group administrator. msgid "Only group admin can approve or cancel join requests." -msgstr "" +msgstr "Pouze správce skupiny smí schválit nebo zrušit požadavky k připojení." #. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. #, fuzzy @@ -1148,14 +1149,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Nemohu připojit uživatele %1$s do skupiny %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "status %1 na %2" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -1408,7 +1412,7 @@ msgstr "Avatar smazán." #. TRANS: Title for backup account page. #. TRANS: Option in profile settings to create a backup of the account of the currently logged in user. msgid "Backup account" -msgstr "" +msgstr "Zálohovat účet" #. TRANS: Client exception thrown when trying to backup an account while not logged in. #, fuzzy @@ -1436,7 +1440,7 @@ msgstr "Pozadí" #. TRANS: Title for submit button to backup an account on the backup account page. msgid "Backup your account." -msgstr "" +msgstr "Zálohovat váš účet." #. TRANS: Client error displayed when blocking a user that has already been blocked. msgid "You already blocked that user." @@ -6976,7 +6980,8 @@ msgid "Block this user" msgstr "Zablokovat tohoto uživatele" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7832,10 +7837,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Neznámý zdroj inboxu %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Zpráva je příliš dlouhá - maximum je %1$d znaků, poslal jsi %2$d." - msgid "Leave" msgstr "Opustit" @@ -8186,7 +8187,7 @@ msgstr "%1$s se připojil(a) ke skupině %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8954,9 +8955,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "Sdělení" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 znaků nebo čísel, bez teček, čárek a mezer" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Zpráva je příliš dlouhá - maximum je %1$d znaků, poslal jsi %2$d." diff --git a/locale/de/LC_MESSAGES/statusnet.po b/locale/de/LC_MESSAGES/statusnet.po index 7ce39e7d71..be9f8a136b 100644 --- a/locale/de/LC_MESSAGES/statusnet.po +++ b/locale/de/LC_MESSAGES/statusnet.po @@ -22,17 +22,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:19+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:42+0000\n" "Language-Team: German \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: de\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1152,14 +1152,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Konnte Benutzer %1$s nicht der Gruppe %2$s hinzufügen." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Status von %1$s auf %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6986,7 +6989,8 @@ msgid "Block this user" msgstr "Diesen Benutzer blockieren" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7829,11 +7833,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Unbekannte inbox-Quelle %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Nachricht zu lang - maximal %1$d Zeichen erlaubt, du hast %2$d gesendet." - msgid "Leave" msgstr "Verlassen" @@ -8183,7 +8182,7 @@ msgstr "%1$s ist der Gruppe „%2$s“ beigetreten." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8942,8 +8941,6 @@ msgstr "Ungültiges XML, XRD-Root fehlt." msgid "Getting backup from file '%s'." msgstr "Hole Backup von der Datei „%s“." -#~ msgid "Notice" -#~ msgstr "Nachrichten" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 Kleinbuchstaben oder Zahlen, keine Satz- oder Leerzeichen" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Nachricht zu lang - maximal %1$d Zeichen erlaubt, du hast %2$d gesendet." diff --git a/locale/en_GB/LC_MESSAGES/statusnet.po b/locale/en_GB/LC_MESSAGES/statusnet.po index 6cdfe7ec38..10440f927b 100644 --- a/locale/en_GB/LC_MESSAGES/statusnet.po +++ b/locale/en_GB/LC_MESSAGES/statusnet.po @@ -14,17 +14,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:21+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:43+0000\n" "Language-Team: British English \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: en-gb\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1137,14 +1137,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Could not join user %1$s to group %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s's status on %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6884,7 +6887,8 @@ msgid "Block this user" msgstr "Block this user" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7720,10 +7724,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Message too long - maximum is %1$d characters, you sent %2$d." - msgid "Leave" msgstr "Leave" @@ -7991,7 +7991,7 @@ msgstr "%1$s updates favourited by %2$s / %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8738,8 +8738,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "Notices" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Message too long - maximum is %1$d characters, you sent %2$d." diff --git a/locale/eo/LC_MESSAGES/statusnet.po b/locale/eo/LC_MESSAGES/statusnet.po index 6faad67c5f..b467fb6df5 100644 --- a/locale/eo/LC_MESSAGES/statusnet.po +++ b/locale/eo/LC_MESSAGES/statusnet.po @@ -17,17 +17,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:23+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:45+0000\n" "Language-Team: Esperanto \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: eo\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1140,14 +1140,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "La uzanto %1$*s ne povas aliĝi al la grupo %2$*s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Stato de %1$s ĉe %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6882,7 +6885,8 @@ msgid "Block this user" msgstr "Bloki la uzanton" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7731,10 +7735,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Nekonata alvenkesta fonto %d" -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Mesaĝo tro longas - longlimo estas %1$d, via estas %2$d" - msgid "Leave" msgstr "Forlasi" @@ -8082,7 +8082,7 @@ msgstr "%1$s aniĝis grupon %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8838,9 +8838,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "Avizoj" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 minusklaj literoj aŭ ciferoj, neniu interpunkcio aŭ spaco" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Mesaĝo tro longas - longlimo estas %1$d, via estas %2$d" diff --git a/locale/es/LC_MESSAGES/statusnet.po b/locale/es/LC_MESSAGES/statusnet.po index 05700a60c7..cb1b4faac1 100644 --- a/locale/es/LC_MESSAGES/statusnet.po +++ b/locale/es/LC_MESSAGES/statusnet.po @@ -19,17 +19,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:24+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:46+0000\n" "Language-Team: Spanish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: es\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1143,14 +1143,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "No se pudo unir el usuario %s al grupo %s" #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "estado de %1$s en %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6958,7 +6961,8 @@ msgid "Block this user" msgstr "Bloquear este usuario." #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7808,10 +7812,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Origen de bandeja de entrada %d desconocido." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Mensaje muy largo - máximo %1$d caracteres, enviaste %2$d" - msgid "Leave" msgstr "Abandonar" @@ -8164,7 +8164,7 @@ msgstr "%1$s se unió al grupo %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8921,9 +8921,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "Mensajes" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "" -#~ "1-64 letras en minúscula o números, sin signos de puntuación o espacios" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Mensaje muy largo - máximo %1$d caracteres, enviaste %2$d" diff --git a/locale/fa/LC_MESSAGES/statusnet.po b/locale/fa/LC_MESSAGES/statusnet.po index 3cf5fdd38a..67cc7c6682 100644 --- a/locale/fa/LC_MESSAGES/statusnet.po +++ b/locale/fa/LC_MESSAGES/statusnet.po @@ -17,8 +17,8 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:26+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:47+0000\n" "Last-Translator: Ahmad Sufi Mahmudi\n" "Language-Team: Persian \n" "MIME-Version: 1.0\n" @@ -27,9 +27,9 @@ msgstr "" "X-Language-Code: fa\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1138,14 +1138,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "نمی‌توان کاربر %1$s را عضو گروه %2$s کرد." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "وضعیت %1$s در %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6936,7 +6939,8 @@ msgid "Block this user" msgstr "کاربر را مسدود کن" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7776,12 +7780,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "منبع صندوق ورودی نامعلوم است %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"پیام خیلی طولانی است - حداکثر تعداد مجاز %1$d نویسه است که شما %2$d نویسه را " -"فرستادید." - msgid "Leave" msgstr "ترک کردن" @@ -8132,7 +8130,7 @@ msgstr "%1$s به گروه %2$s پیوست." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8882,9 +8880,7 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "پیام‌ها" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "۱-۶۴ کاراکتر کوچک یا اعداد، بدون نقطه گذاری یا فاصله" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "پیام خیلی طولانی است - حداکثر تعداد مجاز %1$d نویسه است که شما %2$d نویسه " +#~ "را فرستادید." diff --git a/locale/fi/LC_MESSAGES/statusnet.po b/locale/fi/LC_MESSAGES/statusnet.po index 15150a9210..77452be725 100644 --- a/locale/fi/LC_MESSAGES/statusnet.po +++ b/locale/fi/LC_MESSAGES/statusnet.po @@ -16,17 +16,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:28+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:48+0000\n" "Language-Team: Finnish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fi\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1131,14 +1131,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Käyttäjä %1$s ei voinut liittyä ryhmään %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Käyttäjän %1$s päivitys %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6907,7 +6910,8 @@ msgid "Block this user" msgstr "Estä tämä käyttäjä" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7763,10 +7767,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Viesti oli liian pitkä - maksimikoko on 140 merkkiä, lähetit %d" - msgid "Leave" msgstr "Eroa" @@ -8036,7 +8036,7 @@ msgstr "Käyttäjän %2$s / %3$s suosikit sivulla %1$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8806,10 +8806,6 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "Päivitykset" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "" -#~ "1-64 pientä kirjainta tai numeroa, ei ääkkösiä eikä välimerkkejä tai " -#~ "välilyöntejä" +#, fuzzy +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Viesti oli liian pitkä - maksimikoko on 140 merkkiä, lähetit %d" diff --git a/locale/fr/LC_MESSAGES/statusnet.po b/locale/fr/LC_MESSAGES/statusnet.po index 7599dfd4fe..1fb9a79e29 100644 --- a/locale/fr/LC_MESSAGES/statusnet.po +++ b/locale/fr/LC_MESSAGES/statusnet.po @@ -22,17 +22,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:29+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:49+0000\n" "Language-Team: French \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fr\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1154,14 +1154,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Impossible d’inscrire l’utilisateur %1$s au groupe %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Statut de %1$s sur %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -7012,7 +7015,8 @@ msgid "Block this user" msgstr "Bloquer cet utilisateur" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7865,12 +7869,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Source %d inconnue pour la boîte de réception." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Message trop long ! La taille maximale est de %1$d caractères ; vous en avez " -"entré %2$d." - msgid "Leave" msgstr "Quitter" @@ -8224,7 +8222,7 @@ msgstr "%1$s a rejoint le groupe %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8985,8 +8983,7 @@ msgstr "XML invalide, racine XRD manquante." msgid "Getting backup from file '%s'." msgstr "Obtention de la sauvegarde depuis le fichier « %s »." -#~ msgid "Notice" -#~ msgstr "Avis" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces." +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Message trop long ! La taille maximale est de %1$d caractères ; vous en " +#~ "avez entré %2$d." diff --git a/locale/fur/LC_MESSAGES/statusnet.po b/locale/fur/LC_MESSAGES/statusnet.po index 711997bb79..528abccb68 100644 --- a/locale/fur/LC_MESSAGES/statusnet.po +++ b/locale/fur/LC_MESSAGES/statusnet.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:31+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:50+0000\n" "Language-Team: Friulian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fur\n" "X-Message-Group: #out-statusnet-core\n" @@ -1103,14 +1103,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "No si à podût zontâ l'utent %1$s al grup %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Stât di %1$s su %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6601,7 +6604,8 @@ msgid "Block this user" msgstr "Bloche chest utent" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7433,12 +7437,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Il messaç al è masse lunc. Il massim al è %1$d caratar, tu tu'nd âs mandâts %" -"2$d." - msgid "Leave" msgstr "Lasse" @@ -7688,7 +7686,7 @@ msgstr "%1$s si à unît al grup %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8438,5 +8436,7 @@ msgid "Getting backup from file '%s'." msgstr "" #, fuzzy -#~ msgid "Notice" -#~ msgstr "Avîs" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Il messaç al è masse lunc. Il massim al è %1$d caratar, tu tu'nd âs " +#~ "mandâts %2$d." diff --git a/locale/gl/LC_MESSAGES/statusnet.po b/locale/gl/LC_MESSAGES/statusnet.po index f5bb1f0b01..8d75e3649d 100644 --- a/locale/gl/LC_MESSAGES/statusnet.po +++ b/locale/gl/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:32+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:51+0000\n" "Language-Team: Galician \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: gl\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1136,14 +1136,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "O usuario %1$s non se puido engadir ao grupo %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Estado de %1$s en %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -7010,7 +7013,8 @@ msgid "Block this user" msgstr "Bloquear este usuario" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7864,11 +7868,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Non se coñece a fonte %d da caixa de entrada." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"A mensaxe é longa de máis, o límite de caracteres é de %1$d, e enviou %2$d." - msgid "Leave" msgstr "Deixar" @@ -8220,7 +8219,7 @@ msgstr "%1$s uniuse ao grupo %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8987,11 +8986,7 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "Notas" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." #~ msgstr "" -#~ "Entre 1 e 64 letras minúsculas ou números, sen signos de puntuación, " -#~ "espazos, tiles ou eñes" +#~ "A mensaxe é longa de máis, o límite de caracteres é de %1$d, e enviou %2" +#~ "$d." diff --git a/locale/hsb/LC_MESSAGES/statusnet.po b/locale/hsb/LC_MESSAGES/statusnet.po index 6187a9608d..40747efa04 100644 --- a/locale/hsb/LC_MESSAGES/statusnet.po +++ b/locale/hsb/LC_MESSAGES/statusnet.po @@ -11,18 +11,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:34+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:52+0000\n" "Language-Team: Upper Sorbian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: hsb\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : (n%100==3 || " "n%100==4) ? 2 : 3)\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1117,14 +1117,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Njebě móžno wužiwarja %1$s skupinje %2%s přidać." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Status %1$s na %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6578,7 +6581,8 @@ msgid "Block this user" msgstr "Tutoho wužiwarja blokować" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7218,13 +7222,13 @@ msgstr "Skupinu abo temu wopisać" #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." -msgstr[0] "Skupinu abo temu w %d znamješce wopisać" -msgstr[1] "Skupinu abo temu w %d znamješkomaj wopisać" -msgstr[2] "Skupinu abo temu w %d znamješkach wopisać" -msgstr[3] "Skupinu abo temu w %d znamješkach wopisać" +msgstr[0] "Skupinu abo temu w %d znamješce abo mjenje wopisać" +msgstr[1] "Skupinu abo temu w %d znamješkomaj abo mjenje wopisać" +msgstr[2] "Skupinu abo temu w %d znamješkach abo mjenje wopisać" +msgstr[3] "Skupinu abo temu w %d znamješkach abo mjenje wopisać" #. TRANS: Field title on group edit form. msgid "" @@ -7448,12 +7452,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Njeznate žórło postoweho kašćika %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Powěsć je předołho - maksimalna wulkosć je %1$d znamješkow, ty sy %2$d " -"pósłał." - msgid "Leave" msgstr "Wopušćić" @@ -7706,7 +7704,7 @@ msgstr "%1$s je do skupiny %2$s zastupił." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8477,11 +8475,7 @@ msgstr "Njepłaćiwy XML, korjeń XRD faluje." msgid "Getting backup from file '%s'." msgstr "Wobstaruje so zawěsćenje z dataje \"%s\"-" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "Zdźělenki" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." #~ msgstr "" -#~ "1-64 małopisanych pismikow abo ličbow, žane interpunkciske znamješka abo " -#~ "mjezery." +#~ "Powěsć je předołho - maksimalna wulkosć je %1$d znamješkow, ty sy %2$d " +#~ "pósłał." diff --git a/locale/hu/LC_MESSAGES/statusnet.po b/locale/hu/LC_MESSAGES/statusnet.po index ed3392c881..7eeeaf6f36 100644 --- a/locale/hu/LC_MESSAGES/statusnet.po +++ b/locale/hu/LC_MESSAGES/statusnet.po @@ -12,13 +12,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:35+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:54+0000\n" "Language-Team: Hungarian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: hu\n" "X-Message-Group: #out-statusnet-core\n" @@ -1129,14 +1129,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Nem sikerült %1$s felhasználót hozzáadni a %2$s csoporthoz." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s / %2$s kedvencei" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6749,7 +6752,8 @@ msgid "Block this user" msgstr "Felhasználó blokkolása" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7589,10 +7593,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Az túl hosszú. Egy hír legfeljebb %d karakterből állhat." - msgid "Leave" msgstr "Távozzunk" @@ -7907,7 +7907,7 @@ msgstr "%1$s csatlakozott a(z) %2$s csoporthoz" #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8662,8 +8662,5 @@ msgid "Getting backup from file '%s'." msgstr "" #, fuzzy -#~ msgid "Notice" -#~ msgstr "Hírek" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 kisbetű vagy számjegy, nem lehet benne írásjel vagy szóköz" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Az túl hosszú. Egy hír legfeljebb %d karakterből állhat." diff --git a/locale/ia/LC_MESSAGES/statusnet.po b/locale/ia/LC_MESSAGES/statusnet.po index 7f17e745b8..a8c68e1404 100644 --- a/locale/ia/LC_MESSAGES/statusnet.po +++ b/locale/ia/LC_MESSAGES/statusnet.po @@ -9,17 +9,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:37+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:55+0000\n" "Language-Team: Interlingua \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ia\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1092,53 +1092,57 @@ msgstr "Nulle pseudonymo o ID." #. TRANS: Client error displayed trying to approve group membership while not logged in. #. TRANS: Client error displayed when trying to leave a group while not logged in. -#, fuzzy msgid "Must be logged in." -msgstr "Tu non ha aperite un session." +msgstr "Es necessari aperir session." #. TRANS: Client error displayed trying to approve group membership while not a group administrator. #. TRANS: Client error displayed when trying to approve or cancel a group join request without #. TRANS: being a group administrator. msgid "Only group admin can approve or cancel join requests." msgstr "" +"Solmente un administrator del gruppo pote approbar o cancellar le requestas " +"de adhesion." #. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. -#, fuzzy msgid "Must specify a profile." -msgstr "Profilo mancante." +msgstr "Es necessari specificar un profilo." #. TRANS: Client error displayed trying to approve group membership for a non-existing request. #. TRANS: Client error displayed when trying to approve a non-existing group join request. #. TRANS: %s is a user nickname. -#, fuzzy, php-format +#, php-format msgid "%s is not in the moderation queue for this group." -msgstr "Un lista de usatores in iste gruppo." +msgstr "%s non es in le cauda de moderation pro iste gruppo." #. TRANS: Client error displayed trying to approve/deny group membership. msgid "Internal error: received neither cancel nor abort." -msgstr "" +msgstr "Error interne: ni cancellation ni abortamento recipite." #. TRANS: Client error displayed trying to approve/deny group membership. msgid "Internal error: received both cancel and abort." -msgstr "" +msgstr "Error interne: e cancellation e abortamento recipite." #. TRANS: Server error displayed when cancelling a queued group join request fails. #. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. -#, fuzzy, php-format +#, php-format msgid "Could not cancel request for user %1$s to join group %2$s." -msgstr "Non poteva inscriber le usator %1$s in le gruppo %2$s." +msgstr "" +"Non poteva cancellar le requesta de adhesion del usator %1$s al gruppo %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. -#, fuzzy, php-format +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. +#, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" -msgstr "Le stato de %1$s in %2$s" +msgstr "Le requesta de %1$s pro %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." -msgstr "" +msgstr "Requesta de adhesion approbate." +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." -msgstr "" +msgstr "Requesta de adhesion cancellate." #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. @@ -2539,24 +2543,23 @@ msgstr "Un lista de usatores in iste gruppo." #. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. msgid "Only the group admin may approve users." -msgstr "" +msgstr "Solmente un administrator del gruppo pote approbar usatores." #. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. #. TRANS: %s is the name of the group. -#, fuzzy, php-format +#, php-format msgid "%s group members awaiting approval" -msgstr "Membratos del gruppo %s" +msgstr "Membros attendente approbation del gruppo %s" #. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. #. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. -#, fuzzy, php-format +#, php-format msgid "%1$s group members awaiting approval, page %2$d" -msgstr "Membros del gruppo %1$s, pagina %2$d" +msgstr "Membros attendente approbation del gruppo %1$s, pagina %2$d" #. TRANS: Page notice for group members page. -#, fuzzy msgid "A list of users awaiting approval to join this group." -msgstr "Un lista de usatores in iste gruppo." +msgstr "Un lista de usatores attendente approbation a adherer a iste gruppo." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2963,9 +2966,8 @@ msgid "%1$s joined group %2$s" msgstr "%1$s se jungeva al gruppo %2$s" #. TRANS: Exception thrown when there is an unknown error joining a group. -#, fuzzy msgid "Unknown error joining group." -msgstr "Gruppo incognite." +msgstr "Error incognite durante le adhesion al gruppo." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. @@ -4693,7 +4695,6 @@ msgid "User is already sandboxed." msgstr "Usator es ja in cassa de sablo." #. TRANS: Title for the sessions administration panel. -#, fuzzy msgctxt "TITLE" msgid "Sessions" msgstr "Sessiones" @@ -4703,7 +4704,6 @@ msgid "Session settings for this StatusNet site" msgstr "Parametros de session pro iste sito StatusNet" #. TRANS: Fieldset legend on the sessions administration panel. -#, fuzzy msgctxt "LEGEND" msgid "Sessions" msgstr "Sessiones" @@ -4715,9 +4715,8 @@ msgstr "Gerer sessiones" #. TRANS: Checkbox title on the sessions administration panel. #. TRANS: Indicates if StatusNet should handle session administration. -#, fuzzy msgid "Handle sessions ourselves." -msgstr "Si nos debe gerer le sessiones nos mesme." +msgstr "Gerer le sessiones nos mesme." #. TRANS: Checkbox label on the sessions administration panel. #. TRANS: Indicates if StatusNet should write session debugging output. @@ -4725,14 +4724,12 @@ msgid "Session debugging" msgstr "Cercar defectos de session" #. TRANS: Checkbox title on the sessions administration panel. -#, fuzzy msgid "Enable debugging output for sessions." -msgstr "Producer informationes technic pro cercar defectos in sessiones." +msgstr "Activar informationes technic pro cercar defectos in sessiones." #. TRANS: Title for submit button on the sessions administration panel. -#, fuzzy msgid "Save session settings" -msgstr "Salveguardar configurationes de accesso" +msgstr "Salveguardar configurationes de session" #. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." @@ -4745,10 +4742,10 @@ msgstr "Profilo del application" #. TRANS: Information output on an OAuth application page. #. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", #. TRANS: %3$d is the number of users using the OAuth application. -#, fuzzy, php-format +#, php-format msgid "Created by %1$s - %2$s access by default - %3$d user" msgid_plural "Created by %1$s - %2$s access by default - %3$d users" -msgstr[0] "Create per %1$s - accesso %2$s per predefinition - %3$d usatores" +msgstr[0] "Create per %1$s - accesso %2$s per predefinition - %3$d usator" msgstr[1] "Create per %1$s - accesso %2$s per predefinition - %3$d usatores" #. TRANS: Header on the OAuth application page. @@ -4756,7 +4753,6 @@ msgid "Application actions" msgstr "Actiones de application" #. TRANS: Link text to edit application on the OAuth application page. -#, fuzzy msgctxt "EDITAPP" msgid "Edit" msgstr "Modificar" @@ -4771,13 +4767,12 @@ msgid "Application info" msgstr "Info del application" #. TRANS: Note on the OAuth application page about signature support. -#, fuzzy msgid "" "Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " "not supported." msgstr "" -"Nota: Nos supporta le signaturas HMAC-SHA1. Nos non accepta signaturas in " -"texto simple." +"Nota: Le signaturas HMAC-SHA1 es supportate. Le methodo de signaturas in " +"texto simple non es supportate." #. TRANS: Text in confirmation dialog to reset consumer key and secret for an OAuth application. msgid "Are you sure you want to reset your consumer key and secret?" @@ -4939,7 +4934,6 @@ msgstr "" "lor vita e interesses. " #. TRANS: Title for list of group administrators on a group page. -#, fuzzy msgctxt "TITLE" msgid "Admins" msgstr "Administratores" @@ -5081,7 +5075,6 @@ msgid "User is already silenced." msgstr "Usator es ja silentiate." #. TRANS: Title for site administration panel. -#, fuzzy msgctxt "TITLE" msgid "Site" msgstr "Sito" @@ -5113,19 +5106,16 @@ msgid "Dupe limit must be one or more seconds." msgstr "Le limite de duplicatos debe esser un o plus secundas." #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "General" msgstr "General" #. TRANS: Field label on site settings panel. -#, fuzzy msgctxt "LABEL" msgid "Site name" msgstr "Nomine del sito" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "The name of your site, like \"Yourcompany Microblog\"." msgstr "Le nomine de tu sito, como \"Le microblog de TuCompania\"" @@ -5134,30 +5124,26 @@ msgid "Brought by" msgstr "Realisate per" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "Text used for credits link in footer of each page." -msgstr "Le texto usate pro le ligamine al creditos in le pede de cata pagina" +msgstr "Le texto usate pro le ligamine al creditos in le pede de cata pagina." #. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL pro \"Realisate per\"" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "URL used for credits link in footer of each page." -msgstr "URL usate pro le ligamine al creditos in le pede de cata pagina" +msgstr "URL usate pro le ligamine al creditos in le pede de cata pagina." #. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "Contact email address for your site." -msgstr "Le adresse de e-mail de contacto pro tu sito" +msgstr "Le adresse de e-mail de contacto pro tu sito." #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "Local" msgstr "Local" @@ -5181,7 +5167,6 @@ msgstr "" "navigator non es disponibile" #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "Limits" msgstr "Limites" @@ -6194,7 +6179,7 @@ msgstr "%1$s (%2$s)" #. TRANS: Exception thrown trying to approve a non-existing group join request. msgid "Invalid group join approval: not pending." -msgstr "" +msgstr "Approbation de adhesion a gruppo invalide: non pendente." #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). @@ -6817,7 +6802,8 @@ msgid "Block this user" msgstr "Blocar iste usator" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7416,17 +7402,16 @@ msgid "URL of the homepage or blog of the group or topic." msgstr "URL del pagina initial o blog del gruppo o topico." #. TRANS: Text area title for group description when there is no text limit. -#, fuzzy msgid "Describe the group or topic." -msgstr "Describe le gruppo o topico" +msgstr "Describe le gruppo o topico." #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." -msgstr[0] "Describe le gruppo o topico in %d character o minus" -msgstr[1] "Describe le gruppo o topico in %d characteres o minus" +msgstr[0] "Describe le gruppo o topico in %d character o minus." +msgstr[1] "Describe le gruppo o topico in %d characteres o minus." #. TRANS: Field title on group edit form. msgid "" @@ -7454,22 +7439,21 @@ msgstr[1] "" "maximo de %d aliases es permittite." #. TRANS: Dropdown fieldd label on group edit form. -#, fuzzy msgid "Membership policy" -msgstr "Membro depost" +msgstr "Politica de adhesion" msgid "Open to all" -msgstr "" +msgstr "Aperte a totes" msgid "Admin must approve all members" -msgstr "" +msgstr "Administrator debe approbar tote le membros" #. TRANS: Dropdown field title on group edit form. msgid "Whether admin approval is required to join this group." msgstr "" +"Si approbation per administrator es necessari pro adherer a iste gruppo." #. TRANS: Indicator in group members list that this user is a group administrator. -#, fuzzy msgctxt "GROUPADMIN" msgid "Admin" msgstr "Administrator" @@ -7504,15 +7488,15 @@ msgstr "Membros del gruppo %s" msgctxt "MENU" msgid "Pending members (%d)" msgid_plural "Pending members (%d)" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Membro pendente" +msgstr[1] "Membros pendente (%d)" #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. #. TRANS: %s is the nickname of the group. -#, fuzzy, php-format +#, php-format msgctxt "TOOLTIP" msgid "%s pending members" -msgstr "Membros del gruppo %s" +msgstr "%s membros pendente" #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" @@ -7645,10 +7629,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Fonte de cassa de entrata \"%s\" incognite" -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Message troppo longe - maximo es %1$d characteres, tu inviava %2$d." - msgid "Leave" msgstr "Quitar" @@ -7716,7 +7696,7 @@ msgstr "%1$s seque ora tu notas in %2$s." #. TRANS: Common footer block for StatusNet notification emails. #. TRANS: %1$s is the StatusNet sitename, #. TRANS: %2$s is a link to the addressed user's e-mail settings. -#, fuzzy, php-format +#, php-format msgid "" "Faithfully yours,\n" "%1$s.\n" @@ -7724,22 +7704,17 @@ msgid "" "----\n" "Change your email address or notification options at %2$s" msgstr "" -"%1$s seque ora tu notas in %2$s.\n" -"\n" -"%3$s\n" -"\n" -"%4$s%5$s%6$s\n" -"Cordialmente,\n" -"%2$s.\n" +"Con optime salutes,\n" +"%1$s.\n" "\n" "----\n" -"Cambia tu adresse de e-mail o optiones de notification a %7$s\n" +"Cambia tu adresse de e-mail o optiones de notification a %2$s" #. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a URL. -#, fuzzy, php-format +#, php-format msgid "Profile: %s" -msgstr "Profilo" +msgstr "Profilo: %s" #. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. @@ -7749,14 +7724,14 @@ msgstr "Bio: %s" #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, fuzzy, php-format +#, php-format msgid "" "If you believe this account is being used abusively, you can block them from " "your subscribers list and report as spam to site administrators at %s." msgstr "" "Si tu crede que iste conto es usate abusivemente, tu pote blocar lo de tu " "lista de subscriptores e reportar lo como spam al administratores del sito a " -"%s" +"%s." #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. @@ -7767,7 +7742,7 @@ msgstr "Nove adresse de e-mail pro publicar in %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, fuzzy, php-format +#, php-format msgid "" "You have a new posting address on %1$s.\n" "\n" @@ -7779,10 +7754,7 @@ msgstr "" "\n" "Invia e-mail a %2$s pro publicar nove messages.\n" "\n" -"Ulterior informationes se trova a %3$s.\n" -"\n" -"Cordialmente,\n" -"%1$s" +"Ulterior instructiones super e-mail se trova a %3$s." #. TRANS: Subject line for SMS-by-email notification messages. #. TRANS: %s is the posting user's nickname. @@ -7809,7 +7781,7 @@ msgstr "%s te ha pulsate" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, #. TRANS: %3$s is a URL to post notices at. -#, fuzzy, php-format +#, 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" @@ -7820,17 +7792,14 @@ msgid "" "\n" "Don't reply to this email; it won't get to them." msgstr "" -"%1$s (%2$s) se demanda lo que tu face iste dies e te invita a scriber alique " -"de nove.\n" +"%1$s (%2$s) se demanda lo que tu face iste dies e te invita a scriber " +"qualcosa de nove.\n" "\n" -"Dunque face audir de te :)\n" +"Dunque, face nos audir de te :)\n" "\n" "%3$s\n" "\n" -"Non responde a iste message; le responsa non arrivara.\n" -"\n" -"Con salutes cordial,\n" -"%4$s\n" +"Non responde a iste message; le responsa non arrivara." #. TRANS: Subject for direct-message notification email. #. TRANS: %s is the sending user's nickname. @@ -7841,7 +7810,7 @@ msgstr "Nove message private de %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#, fuzzy, php-format +#, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7865,10 +7834,7 @@ msgstr "" "\n" "%4$s\n" "\n" -"Non responde per e-mail; le responsa non arrivara.\n" -"\n" -"Con salutes cordial,\n" -"%5$s\n" +"Non responde per e-mail; le responsa non arrivara." #. TRANS: Subject for favorite notification e-mail. #. TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname. @@ -7881,7 +7847,7 @@ msgstr "%1$s (@%2$s) ha addite tu nota como favorite" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, fuzzy, php-format +#, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7897,8 +7863,7 @@ msgid "" "\n" "%5$s" msgstr "" -"%1$s (@%7$s) addeva ante un momento tu nota de %2$s como un de su " -"favorites.\n" +"%1$s (@%7$s) ha justo addite tu nota de %2$s como un de su favorites.\n" "\n" "Le URL de tu nota es:\n" "\n" @@ -7910,10 +7875,7 @@ msgstr "" "\n" "Tu pote vider le lista del favorites de %1$s hic:\n" "\n" -"%5$s\n" -"\n" -"Cordialmente,\n" -"%6$s\n" +"%5$s" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. #, php-format @@ -7937,7 +7899,7 @@ msgstr "%1$s (@%2$s) ha inviate un nota a tu attention" #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), #. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, -#, fuzzy, php-format +#, php-format msgid "" "%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" @@ -7957,7 +7919,7 @@ msgid "" "\n" "%7$s" msgstr "" -"%1$s (@%9$s) ha inviate un nota a tu attention (un '@-responsa') in %2$s.\n" +"%1$s ha inviate un nota a tu attention (un \"responsa @\") in %2$s.\n" "\n" "Le nota es hic:\n" "\n" @@ -7971,14 +7933,9 @@ msgstr "" "\n" "%6$s\n" "\n" -"Le lista de tote le @-responsas pro te es hic:\n" +"Le lista de tote le \"responsas @\" pro te es hic:\n" "\n" -"%7$s\n" -"\n" -"Cordialmente,\n" -"%2$s\n" -"\n" -"P.S. Tu pote disactivar iste notificationes electronic hic: %8$s\n" +"%7$s" #. TRANS: Subject of group join notification e-mail. #. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. @@ -7986,24 +7943,26 @@ msgstr "" #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, #. TRANS: %4$s is a block of profile info about the subscriber. #. TRANS: %5$s is a link to the addressed user's e-mail settings. -#, fuzzy, php-format +#, php-format msgid "%1$s has joined your group %2$s on %3$s." -msgstr "%1$s se ha jungite al gruppo %2$s." +msgstr "%1$s ha adherite al gruppo %2$s in %3$s." #. TRANS: Subject of pending group join request notification e-mail. #. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. -#, fuzzy, php-format +#, php-format msgid "%1$s wants to join your group %2$s on %3$s." -msgstr "%1$s se ha jungite al gruppo %2$s." +msgstr "%1$s ha adherite al gruppo %2$s in %3$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " "their group membership at %4$s" msgstr "" +"%1$s vole adherer a tu gruppo %2$s in %3$s. Tu pote approbar o rejectar su " +"adhesion al gruppo a %4$s" msgid "Only the user can read their own mailboxes." msgstr "Solmente le usator pote leger su proprie cassas postal." @@ -8745,8 +8704,5 @@ msgstr "XML invalide, radice XRD mancante." msgid "Getting backup from file '%s'." msgstr "Obtene copia de reserva ex file '%s'." -#~ msgid "Notice" -#~ msgstr "Nota" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 minusculas o numeros, sin punctuation o spatios" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Message troppo longe - maximo es %1$d characteres, tu inviava %2$d." diff --git a/locale/it/LC_MESSAGES/statusnet.po b/locale/it/LC_MESSAGES/statusnet.po index cccbe0f951..83ef46eeb6 100644 --- a/locale/it/LC_MESSAGES/statusnet.po +++ b/locale/it/LC_MESSAGES/statusnet.po @@ -11,17 +11,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:39+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:56+0000\n" "Language-Team: Italian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: it\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1146,14 +1146,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Impossibile iscrivere l'utente %1$s al gruppo %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Stato di %1$s su %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -7000,7 +7003,8 @@ msgid "Block this user" msgstr "Blocca questo utente" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7848,10 +7852,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Sorgente casella in arrivo %d sconosciuta." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Messaggio troppo lungo: massimo %1$d caratteri, inviati %2$d." - msgid "Leave" msgstr "Lascia" @@ -8204,7 +8204,7 @@ msgstr "L'utente %1$s è entrato nel gruppo %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8966,9 +8966,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "Messaggi" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "" -#~ "1-64 lettere minuscole o numeri, senza spazi o simboli di punteggiatura" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Messaggio troppo lungo: massimo %1$d caratteri, inviati %2$d." diff --git a/locale/ja/LC_MESSAGES/statusnet.po b/locale/ja/LC_MESSAGES/statusnet.po index dcf62936c5..3ce2e7a297 100644 --- a/locale/ja/LC_MESSAGES/statusnet.po +++ b/locale/ja/LC_MESSAGES/statusnet.po @@ -14,17 +14,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:40+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:57+0000\n" "Language-Team: Japanese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ja\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1136,14 +1136,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "ユーザ %1$s はグループ %2$s に参加できません。" #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%2$s における %1$s のステータス" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6989,7 +6992,8 @@ msgid "Block this user" msgstr "このユーザをブロックする" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7828,10 +7832,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "不明な受信箱のソース %d。" -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "メッセージが長すぎます - 最大 %1$d 字、あなたが送ったのは %2$d。" - msgid "Leave" msgstr "離れる" @@ -8155,7 +8155,7 @@ msgstr "%1$s は %2$s でお気に入りを更新しました / %2$s。" #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8906,8 +8906,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "つぶやき" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64文字の、小文字アルファベットか数字で、スペースや句読点は除く" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "メッセージが長すぎます - 最大 %1$d 字、あなたが送ったのは %2$d。" diff --git a/locale/ka/LC_MESSAGES/statusnet.po b/locale/ka/LC_MESSAGES/statusnet.po index beaf3ec8de..bd469a794f 100644 --- a/locale/ka/LC_MESSAGES/statusnet.po +++ b/locale/ka/LC_MESSAGES/statusnet.po @@ -9,17 +9,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:42+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:04:59+0000\n" "Language-Team: Georgian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ka\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1120,14 +1120,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "ვერ მოხერხდა მომხმარებელ %1$s-სთან ერთად ჯგუფ %2$s-ში გაერთიანება." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s–ის სტატუსი %2$s–ზე" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6912,7 +6915,8 @@ msgid "Block this user" msgstr "დაბლოკე ეს მომხმარებელი" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7747,12 +7751,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"შეტყობინება ძალიან გრძელია - დასაშვები რაოდენობაა %1$d სიმბოლომდე, თქვენ " -"გააგზავნეთ %2$d." - msgid "Leave" msgstr "დატოვება" @@ -8081,7 +8079,7 @@ msgstr "%1$s გაწევრიანდა ჯგუფში %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8836,10 +8834,7 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "შეტყობინებები" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." #~ msgstr "" -#~ "1–64 პატარა ასოები ან ციფრები. პუნქტუაციები ან სივრცეები დაუშვებელია" +#~ "შეტყობინება ძალიან გრძელია - დასაშვები რაოდენობაა %1$d სიმბოლომდე, თქვენ " +#~ "გააგზავნეთ %2$d." diff --git a/locale/ko/LC_MESSAGES/statusnet.po b/locale/ko/LC_MESSAGES/statusnet.po index 3a88455aa8..f85d161a6f 100644 --- a/locale/ko/LC_MESSAGES/statusnet.po +++ b/locale/ko/LC_MESSAGES/statusnet.po @@ -11,17 +11,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:43+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:00+0000\n" "Language-Team: Korean \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ko\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1126,14 +1126,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "이용자 %1$s 의 그룹 %2$s 가입에 실패했습니다." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s의 상태 (%2$s에서)" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6850,7 +6853,8 @@ msgid "Block this user" msgstr "이 사용자 차단하기" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7684,10 +7688,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "당신이 보낸 메시지가 너무 길어요. 최대 140글자까지입니다." - msgid "Leave" msgstr "떠나기" @@ -7943,7 +7943,7 @@ msgstr "%1$s님이 %2$s/%3$s의 업데이트에 답변했습니다." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8693,9 +8693,6 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "통지" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "" -#~ "1-64자 사이에 영소문자, 숫자로만 씁니다. 기호나 공백을 쓰면 안 됩니다." +#, fuzzy +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "당신이 보낸 메시지가 너무 길어요. 최대 140글자까지입니다." diff --git a/locale/mk/LC_MESSAGES/statusnet.po b/locale/mk/LC_MESSAGES/statusnet.po index fb2d321788..2f9cbf25bf 100644 --- a/locale/mk/LC_MESSAGES/statusnet.po +++ b/locale/mk/LC_MESSAGES/statusnet.po @@ -10,17 +10,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:45+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:01+0000\n" "Language-Team: Macedonian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n == 1 || n%10 == 1) ? 0 : 1;\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1094,53 +1094,57 @@ msgstr "Нема прекар или ID." #. TRANS: Client error displayed trying to approve group membership while not logged in. #. TRANS: Client error displayed when trying to leave a group while not logged in. -#, fuzzy msgid "Must be logged in." -msgstr "Не сте најавени." +msgstr "Мора да сте најавени." #. TRANS: Client error displayed trying to approve group membership while not a group administrator. #. TRANS: Client error displayed when trying to approve or cancel a group join request without #. TRANS: being a group administrator. msgid "Only group admin can approve or cancel join requests." msgstr "" +"Само администратор на група може да одобрува и откажува барања за членување." #. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. -#, fuzzy msgid "Must specify a profile." -msgstr "Недостасува профил." +msgstr "Мора да наведете профил." #. TRANS: Client error displayed trying to approve group membership for a non-existing request. #. TRANS: Client error displayed when trying to approve a non-existing group join request. #. TRANS: %s is a user nickname. -#, fuzzy, php-format +#, php-format msgid "%s is not in the moderation queue for this group." -msgstr "Список на корисниците на оваа група." +msgstr "%s не е редицата за модерација на оваа група." #. TRANS: Client error displayed trying to approve/deny group membership. msgid "Internal error: received neither cancel nor abort." -msgstr "" +msgstr "Внатрешна грешка: не примив ни откажување ни прекин." #. TRANS: Client error displayed trying to approve/deny group membership. msgid "Internal error: received both cancel and abort." -msgstr "" +msgstr "Внатрешна грешка: примив и откажување и прекин." #. TRANS: Server error displayed when cancelling a queued group join request fails. #. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. -#, fuzzy, php-format +#, php-format msgid "Could not cancel request for user %1$s to join group %2$s." -msgstr "Не можам да го зачленам корисникот %1$s во групата 2$s." +msgstr "" +"Не можев да го откажам барањето да го зачленам корисникот %1$s во групата %2" +"$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. -#, fuzzy, php-format +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. +#, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" -msgstr "%1$s статус на %2$s" +msgstr "Барањето на %1$s за %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." -msgstr "" +msgstr "Барањето за зачленување е одобрено." +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." -msgstr "" +msgstr "Барањето за зачленување е откажано." #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. @@ -2544,24 +2548,24 @@ msgstr "Список на корисниците на оваа група." #. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. msgid "Only the group admin may approve users." -msgstr "" +msgstr "Само администраторот на групата може да одобрува корисници." #. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. #. TRANS: %s is the name of the group. -#, fuzzy, php-format +#, php-format msgid "%s group members awaiting approval" -msgstr "Членства на групата %s" +msgstr "Членови на групата %s што чекаат одобрение" #. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. #. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. -#, fuzzy, php-format +#, php-format msgid "%1$s group members awaiting approval, page %2$d" -msgstr "Членови на групата %1$s, стр. %2$d" +msgstr "Членови на групата %1$s што чекаат одобрение, страница %2$d" #. TRANS: Page notice for group members page. -#, fuzzy msgid "A list of users awaiting approval to join this group." -msgstr "Список на корисниците на оваа група." +msgstr "" +"Список на корисниците што чекаат одобрение за да се зачленат во групата." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2968,9 +2972,8 @@ msgid "%1$s joined group %2$s" msgstr "%1$s се зачлени во групата %2$s" #. TRANS: Exception thrown when there is an unknown error joining a group. -#, fuzzy msgid "Unknown error joining group." -msgstr "Непозната група." +msgstr "Непозната грешка при зачленување во групата." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. @@ -4710,7 +4713,6 @@ msgid "User is already sandboxed." msgstr "Корисникот е веќе во песочен режим." #. TRANS: Title for the sessions administration panel. -#, fuzzy msgctxt "TITLE" msgid "Sessions" msgstr "Сесии" @@ -4720,7 +4722,6 @@ msgid "Session settings for this StatusNet site" msgstr "Сесиски нагодувања за ова StatusNet-мрежно место" #. TRANS: Fieldset legend on the sessions administration panel. -#, fuzzy msgctxt "LEGEND" msgid "Sessions" msgstr "Сесии" @@ -4732,9 +4733,8 @@ msgstr "Раководење со сесии" #. TRANS: Checkbox title on the sessions administration panel. #. TRANS: Indicates if StatusNet should handle session administration. -#, fuzzy msgid "Handle sessions ourselves." -msgstr "Дали самите да си раководиме со сесиите." +msgstr "Самите да раководиме со сесиите." #. TRANS: Checkbox label on the sessions administration panel. #. TRANS: Indicates if StatusNet should write session debugging output. @@ -4742,14 +4742,12 @@ msgid "Session debugging" msgstr "Поправка на грешки во сесија" #. TRANS: Checkbox title on the sessions administration panel. -#, fuzzy msgid "Enable debugging output for sessions." msgstr "Вклучи извод од поправка на грешки за сесии." #. TRANS: Title for submit button on the sessions administration panel. -#, fuzzy msgid "Save session settings" -msgstr "Зачувај нагодувања на пристап" +msgstr "Зачувај нагодувања на сесијата" #. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." @@ -4762,10 +4760,10 @@ msgstr "Профил на програмот" #. TRANS: Information output on an OAuth application page. #. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", #. TRANS: %3$d is the number of users using the OAuth application. -#, fuzzy, php-format +#, php-format msgid "Created by %1$s - %2$s access by default - %3$d user" msgid_plural "Created by %1$s - %2$s access by default - %3$d users" -msgstr[0] "Создадено од %1$s - основен пристап: %2$s - %3$d корисници" +msgstr[0] "Создадено од %1$s - основен пристап: %2$s - %3$d корисник" msgstr[1] "Создадено од %1$s - основен пристап: %2$s - %3$d корисници" #. TRANS: Header on the OAuth application page. @@ -4773,7 +4771,6 @@ msgid "Application actions" msgstr "Дејства на програмот" #. TRANS: Link text to edit application on the OAuth application page. -#, fuzzy msgctxt "EDITAPP" msgid "Edit" msgstr "Уреди" @@ -4788,7 +4785,6 @@ msgid "Application info" msgstr "Инфо за програмот" #. TRANS: Note on the OAuth application page about signature support. -#, fuzzy msgid "" "Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " "not supported." @@ -4958,7 +4954,6 @@ msgstr "" "членови си разменуваат кратки пораки за нивниот живот и интереси. " #. TRANS: Title for list of group administrators on a group page. -#, fuzzy msgctxt "TITLE" msgid "Admins" msgstr "Администратори" @@ -5099,7 +5094,6 @@ msgid "User is already silenced." msgstr "Корисникот е веќе замолчен." #. TRANS: Title for site administration panel. -#, fuzzy msgctxt "TITLE" msgid "Site" msgstr "Мреж. место" @@ -5131,58 +5125,50 @@ msgid "Dupe limit must be one or more seconds." msgstr "Ограничувањето на дуплирањето мора да изнесува барем 1 секунда." #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "General" msgstr "Општи" #. TRANS: Field label on site settings panel. -#, fuzzy msgctxt "LABEL" msgid "Site name" -msgstr "Име на мрежното место" +msgstr "Име на мреж. место" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "The name of your site, like \"Yourcompany Microblog\"." -msgstr "Името на Вашето мрежно место, како на пр. „Микроблог на Вашафирма“" +msgstr "Името на Вашето мрежно место, како на пр. „Микроблог на Вашафирма“." #. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Овозможено од" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "Text used for credits link in footer of each page." msgstr "" -"Текст за врската за наведување на авторите во долната колонцифра на секоја " -"страница" +"Текст за врската за наведување на авторите во подножјето на секоја страница." #. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "URL-адреса на овозможувачот на услугите" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "URL used for credits link in footer of each page." msgstr "" -"URL-адресата која е користи за врски за автори во долната колоцифра на " -"секоја страница" +"URL-адресата која е користи за врски за автори во подножјето на секоја " +"страница." #. TRANS: Field label on site settings panel. msgid "Email" msgstr "Е-пошта" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "Contact email address for your site." -msgstr "Контактна е-пошта за Вашето мрежното место" +msgstr "Контактна е-пошта за Вашето мрежното место." #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "Local" -msgstr "Локално" +msgstr "Локални" #. TRANS: Dropdown label on site settings panel. msgid "Default timezone" @@ -5201,7 +5187,6 @@ msgid "Site language when autodetection from browser settings is not available" msgstr "Јазик на мрежното место ако прелистувачот не може да го препознае сам" #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "Limits" msgstr "Ограничувања" @@ -6221,7 +6206,7 @@ msgstr "%1$s (%2$s)" #. TRANS: Exception thrown trying to approve a non-existing group join request. msgid "Invalid group join approval: not pending." -msgstr "" +msgstr "Неважечко одобрение за членство: не е во исчекување." #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). @@ -6841,7 +6826,8 @@ msgid "Block this user" msgstr "Блокирај го корисников" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7444,13 +7430,12 @@ msgid "URL of the homepage or blog of the group or topic." msgstr "URL на страницата или блогот на групата или темата" #. TRANS: Text area title for group description when there is no text limit. -#, fuzzy msgid "Describe the group or topic." -msgstr "Опишете ја групата или темата" +msgstr "Опишете ја групата или темата." #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Опишете ја групата или темата со највеќе %d знак" @@ -7483,22 +7468,20 @@ msgstr[1] "" "највеќе до %d" #. TRANS: Dropdown fieldd label on group edit form. -#, fuzzy msgid "Membership policy" -msgstr "Член од" +msgstr "Правило за членство" msgid "Open to all" -msgstr "" +msgstr "Отворено за сите" msgid "Admin must approve all members" -msgstr "" +msgstr "Администраторот мора да ги одобри сите членови" #. TRANS: Dropdown field title on group edit form. msgid "Whether admin approval is required to join this group." -msgstr "" +msgstr "Дали се бара одобрение од администраторот за зачленување во групава." #. TRANS: Indicator in group members list that this user is a group administrator. -#, fuzzy msgctxt "GROUPADMIN" msgid "Admin" msgstr "Администратор" @@ -7533,15 +7516,15 @@ msgstr "Членови на групата „%s“" msgctxt "MENU" msgid "Pending members (%d)" msgid_plural "Pending members (%d)" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Член во исчекување (%d)" +msgstr[1] "Членови во исчекување (%d)" #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. #. TRANS: %s is the nickname of the group. -#, fuzzy, php-format +#, php-format msgctxt "TOOLTIP" msgid "%s pending members" -msgstr "Членови на групата %s" +msgstr "Корисници во исчекување на одобрение за члнство во групата %s" #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" @@ -7674,11 +7657,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Непознат извор на приемна пошта %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Пораката е предолга - дозволени се највеќе %1$d знаци, а вие испративте %2$d." - msgid "Leave" msgstr "Напушти" @@ -7747,7 +7725,7 @@ msgstr "%1$s сега ги следи Вашите забелешки на %2$s. #. TRANS: Common footer block for StatusNet notification emails. #. TRANS: %1$s is the StatusNet sitename, #. TRANS: %2$s is a link to the addressed user's e-mail settings. -#, fuzzy, php-format +#, php-format msgid "" "Faithfully yours,\n" "%1$s.\n" @@ -7755,23 +7733,18 @@ msgid "" "----\n" "Change your email address or notification options at %2$s" msgstr "" -"%1$s сега ги следи Вашите забелешки на %2$s.\n" -"\n" -"%3$s\n" -"\n" -"%4$s%5$s%6$s\n" "Со искрена почит,\n" -"%2$s.\n" +"%1$s.\n" "\n" "----\n" -"Изменете си ја е-поштенската адреса или ги нагодувањата за известувања на %7" -"$s\n" +"Изменете си ја е-поштенската адреса или ги нагодувањата за известувања на %2" +"$s" #. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a URL. -#, fuzzy, php-format +#, php-format msgid "Profile: %s" -msgstr "Профил" +msgstr "Профил: %s" #. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. @@ -7781,14 +7754,14 @@ msgstr "Биографија: %s" #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, fuzzy, php-format +#, php-format msgid "" "If you believe this account is being used abusively, you can block them from " "your subscribers list and report as spam to site administrators at %s." msgstr "" "Доколку сметате дека сметкава се злоупотребува, тогаш можете да ја блокирате " "од списокот на претплатници и да ја пријавите како спам кај администраторите " -"на %s" +"на %s." #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. @@ -7799,7 +7772,7 @@ msgstr "Нова е-поштенска адреса за објавување н #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, fuzzy, php-format +#, php-format msgid "" "You have a new posting address on %1$s.\n" "\n" @@ -7809,12 +7782,9 @@ msgid "" msgstr "" "Имате нова адреса за објавување пораки на %1$s.\n" "\n" -"Испраќајте е-пошта до %2$s за да објавувате нови пораки.\n" +"Испраќајте е-пошта на %2$s за да објавувате нови пораки.\n" "\n" -"Повеќе напатствија за е-пошта на %3$s.\n" -"\n" -"Со искрена почит,\n" -"%1$s" +"Повеќе напатствија за е-пошта на %3$s." #. TRANS: Subject line for SMS-by-email notification messages. #. TRANS: %s is the posting user's nickname. @@ -7841,7 +7811,7 @@ msgstr "%s Ве подбуцна" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, #. TRANS: %3$s is a URL to post notices at. -#, fuzzy, php-format +#, 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" @@ -7859,10 +7829,7 @@ msgstr "" "\n" "%3$s\n" "\n" -"Не одговарајте на ова писмо; никој нема да го добие одговорот.\n" -"\n" -"Со почит,\n" -"%4$s\n" +"Не одговарајте на ова писмо; никој нема да го добие одговорот." #. TRANS: Subject for direct-message notification email. #. TRANS: %s is the sending user's nickname. @@ -7873,7 +7840,7 @@ msgstr "Нова приватна порака од %s" #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#, fuzzy, php-format +#, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7897,10 +7864,7 @@ msgstr "" "\n" "%4$s\n" "\n" -"Не одговарајте на ова писмо; никој нема да го добие одговорот.\n" -"\n" -"Со почит,\n" -"%5$s\n" +"Не одговарајте на ова писмо; никој нема да го добие одговорот." #. TRANS: Subject for favorite notification e-mail. #. TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname. @@ -7913,7 +7877,7 @@ msgstr "%1$s (@%2$s) ја бендиса вашата забелешка" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, fuzzy, php-format +#, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -7941,10 +7905,7 @@ msgstr "" "\n" "Погледнете список на бендисаните забелешки на %1$s тука:\n" "\n" -"%5$s\n" -"\n" -"Со искрена почит,\n" -"%6$s\n" +"%5$s" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. #, php-format @@ -7968,7 +7929,7 @@ msgstr "%1$s (@%2$s) Ви испрати забелешка што сака да #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), #. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, -#, fuzzy, php-format +#, php-format msgid "" "%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" @@ -7988,8 +7949,7 @@ msgid "" "\n" "%7$s" msgstr "" -"%1$s (@%9$s) штотуку Ви даде на знаење за забелешката ('@-одговор') на %2" -"$s.\n" +"%1$s штотуку Ви даде на знаење за забелешката („@-одговор“) на %2$s.\n" "\n" "Еве ја забелешката:\n" "\n" @@ -8003,14 +7963,9 @@ msgstr "" "\n" "%6$s\n" "\n" -"Еве список на сите @-одговори за Вас:\n" +"Еве список на сите „@-одговори“ за Вас:\n" "\n" -"%7$s\n" -"\n" -"Со почит,\n" -"%2$s\n" -"\n" -"П.С. Можете да ги исклучите овие известувања по е-пошта тука: %8$s\n" +"%7$s" #. TRANS: Subject of group join notification e-mail. #. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. @@ -8018,24 +7973,26 @@ msgstr "" #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, #. TRANS: %4$s is a block of profile info about the subscriber. #. TRANS: %5$s is a link to the addressed user's e-mail settings. -#, fuzzy, php-format +#, php-format msgid "%1$s has joined your group %2$s on %3$s." -msgstr "%1$s се зачлени во групата %2$s." +msgstr "%1$s се зачлени во Вашата група %2$s на %3$s." #. TRANS: Subject of pending group join request notification e-mail. #. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. -#, fuzzy, php-format +#, php-format msgid "%1$s wants to join your group %2$s on %3$s." -msgstr "%1$s се зачлени во групата %2$s." +msgstr "%1$s сака да се зачлени во Вашата група %2$s на %3$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " "their group membership at %4$s" msgstr "" +"%1$s сака да се зачлени во Вашата група %2$s на %3$s. Можете да го одобрите " +"или одбиете барањето на %4$s" msgid "Only the user can read their own mailboxes." msgstr "Само корисникот може да го чита своето сандаче." @@ -8773,8 +8730,10 @@ msgstr "Неважечки XML. Нема XRD-корен." msgid "Getting backup from file '%s'." msgstr "Земам резерва на податотеката „%s“." -#~ msgid "Notice" -#~ msgstr "Забелешки" +#~ msgid "BUTTON" +#~ msgstr "КОПЧЕ" -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 мали букви или бројки, без интерпукциски знаци и празни места." +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Пораката е предолга - дозволени се највеќе %1$d знаци, а вие испративте %2" +#~ "$d." diff --git a/locale/ml/LC_MESSAGES/statusnet.po b/locale/ml/LC_MESSAGES/statusnet.po index 1e3b933271..ccd8c5f15d 100644 --- a/locale/ml/LC_MESSAGES/statusnet.po +++ b/locale/ml/LC_MESSAGES/statusnet.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:47+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:02+0000\n" "Language-Team: Malayalam \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ml\n" "X-Message-Group: #out-statusnet-core\n" @@ -1098,14 +1098,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "%2$s എന്ന സംഘത്തിൽ %1$s എന്ന ഉപയോക്താവിനെ ചേർക്കാൻ കഴിഞ്ഞില്ല." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%2$s പദ്ധതിയിൽ %1$s എന്ന ഉപയോക്താവിന്റെ സ്ഥിതിവിവരം" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6635,7 +6638,8 @@ msgid "Block this user" msgstr "ഈ ഉപയോക്താവിനെ തടയുക" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7249,7 +7253,7 @@ msgstr "സംഘത്തെക്കുറിച്ചോ വിഷയത് #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "സംഘത്തെക്കുറിച്ചോ വിഷയത്തെക്കുറിച്ചോ %d അക്ഷരത്തിൽ കൂടാതെ വിവരിക്കുക." @@ -7465,11 +7469,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"സന്ദേശത്തിന് നീളം കൂടുതലാണ്. പരമാവധി %1$d അക്ഷരം മാത്രം, താങ്കൾ അയച്ചത് %2$d അക്ഷരങ്ങൾ." - msgid "Leave" msgstr "ഒഴിവായി പോവുക" @@ -7722,7 +7721,7 @@ msgstr "%2$s എന്ന സംഘത്തിൽ %1$s എന്ന ഉപയ #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8477,5 +8476,6 @@ msgid "Getting backup from file '%s'." msgstr "" #, fuzzy -#~ msgid "Notice" -#~ msgstr "അറിയിപ്പുകൾ" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "സന്ദേശത്തിന് നീളം കൂടുതലാണ്. പരമാവധി %1$d അക്ഷരം മാത്രം, താങ്കൾ അയച്ചത് %2$d അക്ഷരങ്ങൾ." diff --git a/locale/nb/LC_MESSAGES/statusnet.po b/locale/nb/LC_MESSAGES/statusnet.po index 1e6f551c1d..4bebfa677d 100644 --- a/locale/nb/LC_MESSAGES/statusnet.po +++ b/locale/nb/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:50+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:05+0000\n" "Language-Team: Norwegian (bokmål)‬ \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: no\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1128,14 +1128,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Kunne ikke legge bruker %1$s til gruppe %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s sin status på %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6885,7 +6888,8 @@ msgid "Block this user" msgstr "Blokker denne brukeren" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7736,10 +7740,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Ukjent innbokskilde %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Melding for lang - maks er %1$d tegn, du sendte %2$d." - msgid "Leave" msgstr "Forlat" @@ -8086,7 +8086,7 @@ msgstr "%1$s-oppdateringer markert som favoritt av %2$s / %3$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8858,9 +8858,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "Notiser" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 små bokstaver eller tall, ingen punktum eller mellomrom" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Melding for lang - maks er %1$d tegn, du sendte %2$d." diff --git a/locale/nl/LC_MESSAGES/statusnet.po b/locale/nl/LC_MESSAGES/statusnet.po index 6c26b1b1ea..8aba59437d 100644 --- a/locale/nl/LC_MESSAGES/statusnet.po +++ b/locale/nl/LC_MESSAGES/statusnet.po @@ -12,17 +12,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:49+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:04+0000\n" "Language-Team: Dutch \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1105,53 +1105,58 @@ msgstr "Geen gebruikersnaam of ID." #. TRANS: Client error displayed trying to approve group membership while not logged in. #. TRANS: Client error displayed when trying to leave a group while not logged in. -#, fuzzy msgid "Must be logged in." -msgstr "Niet aangemeld." +msgstr "U moet aangemeld zijn." #. TRANS: Client error displayed trying to approve group membership while not a group administrator. #. TRANS: Client error displayed when trying to approve or cancel a group join request without #. TRANS: being a group administrator. msgid "Only group admin can approve or cancel join requests." msgstr "" +"Alleen de beheerdersgroep kan verzoeken om lid te worden accepteren of " +"afwijzen." #. TRANS: Client error displayed trying to approve group membership without specifying a profile to approve. -#, fuzzy msgid "Must specify a profile." -msgstr "Ontbrekend profiel." +msgstr "Er moet een profiel opgegeven worden." #. TRANS: Client error displayed trying to approve group membership for a non-existing request. #. TRANS: Client error displayed when trying to approve a non-existing group join request. #. TRANS: %s is a user nickname. -#, fuzzy, php-format +#, php-format msgid "%s is not in the moderation queue for this group." -msgstr "Ledenlijst van deze groep" +msgstr "%s heeft geen openstaand verzoek voor deze groep." #. TRANS: Client error displayed trying to approve/deny group membership. msgid "Internal error: received neither cancel nor abort." -msgstr "" +msgstr "Interne fout: zowel annuleren als afbreken is niet ontvangen." #. TRANS: Client error displayed trying to approve/deny group membership. msgid "Internal error: received both cancel and abort." -msgstr "" +msgstr "Interne fout: er is zowel annuleren als afbreken ontvangen." #. TRANS: Server error displayed when cancelling a queued group join request fails. #. TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. -#, fuzzy, php-format +#, php-format msgid "Could not cancel request for user %1$s to join group %2$s." -msgstr "Het was niet mogelijk gebruiker %1$s toe te voegen aan de groep %2$s." +msgstr "" +"Het was niet mogelijk het verzoek van gebruiker %1$s om lid te worden van de " +"groep %2$s te annuleren." #. TRANS: Title for leave group page after group join request is approved/disapproved. -#, fuzzy, php-format +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. +#, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" -msgstr "Status van %1$s op %2$s" +msgstr "Verzoek van %1$s voor %2$s." +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." -msgstr "" +msgstr "Uw verzoek om lid te worden is geaccepteerd." +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." -msgstr "" +msgstr "Het verzoek voor lidmaatschap is geweigerd." #. TRANS: Client exception thrown when requesting a favorite feed for a non-existing profile. #. TRANS: Client exception. @@ -2571,24 +2576,27 @@ msgstr "Ledenlijst van deze groep" #. TRANS: Client error displayed when trying to approve group applicants without being a group administrator. msgid "Only the group admin may approve users." -msgstr "" +msgstr "Alleen groepsbeheerders mogen gebruikers accepteren." #. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. #. TRANS: %s is the name of the group. -#, fuzzy, php-format +#, php-format msgid "%s group members awaiting approval" -msgstr "groepslidmaatschappen van %s" +msgstr "Groepslidmaatschapsaanvragen voor %s die wachten op goedkeuring" #. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. #. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. -#, fuzzy, php-format +#, php-format msgid "%1$s group members awaiting approval, page %2$d" -msgstr "%1$s groeps leden, pagina %2$d" +msgstr "" +"Groepslidmaatschapsaanvragen voor %1$s die wachten op goedkeuring, pagina %2" +"$d" #. TRANS: Page notice for group members page. -#, fuzzy msgid "A list of users awaiting approval to join this group." -msgstr "Ledenlijst van deze groep" +msgstr "" +"Een lijst met gebruikers die wachten om geaccepteerd te worden voor deze " +"groep." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2996,9 +3004,8 @@ msgid "%1$s joined group %2$s" msgstr "%1$s is lid geworden van de groep %2$s" #. TRANS: Exception thrown when there is an unknown error joining a group. -#, fuzzy msgid "Unknown error joining group." -msgstr "Onbekende groep." +msgstr "Er is een onbekende fout opgetreden bij het lid worden van de groep." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. @@ -4741,7 +4748,6 @@ msgid "User is already sandboxed." msgstr "Deze gebruiker is al in de zandbak geplaatst." #. TRANS: Title for the sessions administration panel. -#, fuzzy msgctxt "TITLE" msgid "Sessions" msgstr "Sessies" @@ -4751,7 +4757,6 @@ msgid "Session settings for this StatusNet site" msgstr "Sessieinstellingen voor deze StatusNet-website" #. TRANS: Fieldset legend on the sessions administration panel. -#, fuzzy msgctxt "LEGEND" msgid "Sessions" msgstr "Sessies" @@ -4763,9 +4768,8 @@ msgstr "Sessieafhandeling" #. TRANS: Checkbox title on the sessions administration panel. #. TRANS: Indicates if StatusNet should handle session administration. -#, fuzzy msgid "Handle sessions ourselves." -msgstr "Of sessies door de software zelf afgehandeld moeten worden." +msgstr "De software moet sessies zelf afhandelen." #. TRANS: Checkbox label on the sessions administration panel. #. TRANS: Indicates if StatusNet should write session debugging output. @@ -4773,14 +4777,12 @@ msgid "Session debugging" msgstr "Sessies debuggen" #. TRANS: Checkbox title on the sessions administration panel. -#, fuzzy msgid "Enable debugging output for sessions." msgstr "Debuguitvoer voor sessies inschakelen." #. TRANS: Title for submit button on the sessions administration panel. -#, fuzzy msgid "Save session settings" -msgstr "Toegangsinstellingen opslaan" +msgstr "Sessie-instellingen opslaan" #. TRANS: Client error displayed trying to display an OAuth application while not logged in. msgid "You must be logged in to view an application." @@ -4793,10 +4795,10 @@ msgstr "Applicatieprofiel" #. TRANS: Information output on an OAuth application page. #. TRANS: %1$s is the application creator, %2$s is "read-only" or "read-write", #. TRANS: %3$d is the number of users using the OAuth application. -#, fuzzy, php-format +#, php-format msgid "Created by %1$s - %2$s access by default - %3$d user" msgid_plural "Created by %1$s - %2$s access by default - %3$d users" -msgstr[0] "Aangemaakt door %1$s - standaardtoegang \"%2$s\" - %3$d gebruikers" +msgstr[0] "Aangemaakt door %1$s - standaardtoegang \"%2$s\" - %3$d gebruiker" msgstr[1] "Aangemaakt door %1$s - standaardtoegang \"%2$s\" - %3$d gebruikers" #. TRANS: Header on the OAuth application page. @@ -4804,7 +4806,6 @@ msgid "Application actions" msgstr "Applicatiehandelingen" #. TRANS: Link text to edit application on the OAuth application page. -#, fuzzy msgctxt "EDITAPP" msgid "Edit" msgstr "Bewerken" @@ -4819,7 +4820,6 @@ msgid "Application info" msgstr "Applicatieinformatie" #. TRANS: Note on the OAuth application page about signature support. -#, fuzzy msgid "" "Note: HMAC-SHA1 signatures are supported. The plaintext signature method is " "not supported." @@ -4990,7 +4990,6 @@ msgstr "" "over hun ervaringen en interesses. " #. TRANS: Title for list of group administrators on a group page. -#, fuzzy msgctxt "TITLE" msgid "Admins" msgstr "Beheerders" @@ -5132,7 +5131,6 @@ msgid "User is already silenced." msgstr "Deze gebruiker is al gemuilkorfd." #. TRANS: Title for site administration panel. -#, fuzzy msgctxt "TITLE" msgid "Site" msgstr "Website" @@ -5165,55 +5163,48 @@ msgid "Dupe limit must be one or more seconds." msgstr "De duplicaatlimiet moet één of meer seconden zijn." #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "General" msgstr "Algemeen" #. TRANS: Field label on site settings panel. -#, fuzzy msgctxt "LABEL" msgid "Site name" msgstr "Websitenaam" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "The name of your site, like \"Yourcompany Microblog\"." -msgstr "De naam van de website, zoals \"UwBedrijf Microblog\"" +msgstr "De naam van de website, zoals \"UwBedrijf Microblog\"." #. TRANS: Field label on site settings panel. msgid "Brought by" msgstr "Mogelijk gemaakt door" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "Text used for credits link in footer of each page." msgstr "" "De tekst die gebruikt worden in de \"creditsverwijzing\" in de voettekst van " -"iedere pagina" +"iedere pagina." #. TRANS: Field label on site settings panel. msgid "Brought by URL" msgstr "\"Mogelijk gemaakt door\"-URL" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "URL used for credits link in footer of each page." msgstr "" -"URL die wordt gebruikt voor de verwijzing naar de hoster en dergelijke in de " -"voettekst van iedere pagina" +"De URL die wordt gebruikt voor de verwijzing de credits in de voettekst van " +"iedere pagina." #. TRANS: Field label on site settings panel. msgid "Email" msgstr "E-mail" #. TRANS: Field title on site settings panel. -#, fuzzy msgid "Contact email address for your site." -msgstr "E-mailadres om contact op te nemen met de websitebeheerder" +msgstr "E-mailadres om contact op te nemen met de websitebeheerder." #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "Local" msgstr "Lokaal" @@ -5237,7 +5228,6 @@ msgstr "" "kan worden" #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "Limits" msgstr "Limieten" @@ -6262,7 +6252,7 @@ msgstr "%1$s (%2$s)" #. TRANS: Exception thrown trying to approve a non-existing group join request. msgid "Invalid group join approval: not pending." -msgstr "" +msgstr "Ongeldig groepslidmaatschapverzoek: niet in behandeling." #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). @@ -6893,7 +6883,8 @@ msgid "Block this user" msgstr "Deze gebruiker blokkeren" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7504,17 +7495,16 @@ msgid "URL of the homepage or blog of the group or topic." msgstr "De URL van de thuispagina of de blog van de groep of het onderwerp" #. TRANS: Text area title for group description when there is no text limit. -#, fuzzy msgid "Describe the group or topic." -msgstr "Beschrijf de groep of het onderwerp" +msgstr "Beschrijf de groep of het onderwerp." #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." -msgstr[0] "Beschrijf de group in %d teken of minder" -msgstr[1] "Beschrijf de group in %d tekens of minder" +msgstr[0] "Beschrijf de groep in %d teken of minder." +msgstr[1] "Beschrijf de groep in %d tekens of minder." #. TRANS: Field title on group edit form. msgid "" @@ -7541,22 +7531,21 @@ msgstr[1] "" "aliasen toegestaan." #. TRANS: Dropdown fieldd label on group edit form. -#, fuzzy msgid "Membership policy" -msgstr "Lid sinds" +msgstr "Lidmaatschapsbeleid" msgid "Open to all" -msgstr "" +msgstr "Open voor iedereen" msgid "Admin must approve all members" -msgstr "" +msgstr "Beheerders moeten alle leden accepteren" #. TRANS: Dropdown field title on group edit form. msgid "Whether admin approval is required to join this group." msgstr "" +"Voor lidmaatschap van de groep is toestemming van de groepsbeheerder vereist." #. TRANS: Indicator in group members list that this user is a group administrator. -#, fuzzy msgctxt "GROUPADMIN" msgid "Admin" msgstr "Beheerder" @@ -7591,15 +7580,15 @@ msgstr "Leden van de groep %s" msgctxt "MENU" msgid "Pending members (%d)" msgid_plural "Pending members (%d)" -msgstr[0] "" -msgstr[1] "" +msgstr[0] "Opstaande aanvraag voor groepslidmaatschap" +msgstr[1] "Openstaande aanvragen voor groepslidmaatschap (%d)" #. TRANS: Tooltip for menu item in the group navigation page. Only shown for group administrators. #. TRANS: %s is the nickname of the group. -#, fuzzy, php-format +#, php-format msgctxt "TOOLTIP" msgid "%s pending members" -msgstr "leden van de groep %s" +msgstr "Groepslidmaatschapsaanvragen voor de groep %s" #. TRANS: Menu item in the group navigation page. Only shown for group administrators. msgctxt "MENU" @@ -7732,12 +7721,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Onbekende bron Postvak IN %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Het bericht te is lang. De maximale lengte is %1$d tekens. De lengte van uw " -"bericht was %2$d." - msgid "Leave" msgstr "Verlaten" @@ -7806,7 +7789,7 @@ msgstr "%1$s volgt nu uw berichten %2$s." #. TRANS: Common footer block for StatusNet notification emails. #. TRANS: %1$s is the StatusNet sitename, #. TRANS: %2$s is a link to the addressed user's e-mail settings. -#, fuzzy, php-format +#, php-format msgid "" "Faithfully yours,\n" "%1$s.\n" @@ -7814,22 +7797,17 @@ msgid "" "----\n" "Change your email address or notification options at %2$s" msgstr "" -"%1$s volgt nu uw medelingen op %2$s.\n" -"\n" -"%3$s\n" -"\n" -"%4$s%5$s%6$s\n" -"\n" "Met vriendelijke groet,\n" -"%2$s.\n" +"%1$s.\n" +"\n" "----\n" -"Wijzig uw e-mailadres of instellingen op %7$s\n" +"Wijzig uw e-mailadres of instellingen op %2$s" #. TRANS: Profile info line in notification e-mail. #. TRANS: %s is a URL. -#, fuzzy, php-format +#, php-format msgid "Profile: %s" -msgstr "Profiel" +msgstr "Profiel: %s" #. TRANS: Profile info line in notification e-mail. #. TRANS: %s is biographical information. @@ -7839,13 +7817,14 @@ msgstr "Beschrijving: %s" #. TRANS: This is a paragraph in a new-subscriber e-mail. #. TRANS: %s is a URL where the subscriber can be reported as abusive. -#, fuzzy, php-format +#, php-format msgid "" "If you believe this account is being used abusively, you can block them from " "your subscribers list and report as spam to site administrators at %s." msgstr "" "Als u denkt dat deze gebruiker wordt misbruikt, dan kunt u deze voor uw " -"abonnees blokkeren en als spam rapporteren naar de websitebeheerders op %s." +"abonnees blokkeren en als spam rapporteren naar de websitebeheerders via de " +"volgende verwijzing: %s." #. TRANS: Subject of notification mail for new posting email address. #. TRANS: %s is the StatusNet sitename. @@ -7856,7 +7835,7 @@ msgstr "Nieuw e-mailadres om e-mail te versturen aan %s" #. TRANS: Body of notification mail for new posting email address. #. TRANS: %1$s is the StatusNet sitename, %2$s is the e-mail address to send #. TRANS: to to post by e-mail, %3$s is a URL to more instructions. -#, fuzzy, php-format +#, php-format msgid "" "You have a new posting address on %1$s.\n" "\n" @@ -7868,10 +7847,7 @@ msgstr "" "\n" "Zend een e-mail naar %2$s om nieuwe berichten te versturen.\n" "\n" -"Meer informatie over e-mailen vindt u op %3$s.\n" -"\n" -"Met vriendelijke groet,\n" -"%1$s" +"Meer informatie over e-mailen vindt u op %3$s." #. TRANS: Subject line for SMS-by-email notification messages. #. TRANS: %s is the posting user's nickname. @@ -7898,7 +7874,7 @@ msgstr "%s heeft u gepord" #. TRANS: Body for 'nudge' notification email. #. TRANS: %1$s is the nuding user's long name, $2$s is the nudging user's nickname, #. TRANS: %3$s is a URL to post notices at. -#, fuzzy, php-format +#, 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" @@ -7917,10 +7893,7 @@ msgstr "" "%3$s\n" "\n" "Schrijf geen antwoord op deze e-mail. Die komt niet aan bij de juiste " -"gebruiker.\n" -"\n" -"Met vriendelijke groet,\n" -"%4$s\n" +"gebruiker." #. TRANS: Subject for direct-message notification email. #. TRANS: %s is the sending user's nickname. @@ -7931,7 +7904,7 @@ msgstr "U hebt een nieuw privébericht van %s." #. TRANS: Body for direct-message notification email. #. TRANS: %1$s is the sending user's long name, %2$s is the sending user's nickname, #. TRANS: %3$s is the message content, %4$s a URL to the message, -#, fuzzy, php-format +#, php-format msgid "" "%1$s (%2$s) sent you a private message:\n" "\n" @@ -7956,10 +7929,7 @@ msgstr "" "%4$s\n" "\n" "Schrijf geen antwoord op deze e-mail. Die komt niet aan bij de juiste " -"gebruiker.\n" -"\n" -"Met vriendelijke groet,\n" -"%5$s\n" +"gebruiker." #. TRANS: Subject for favorite notification e-mail. #. TRANS: %1$s is the adding user's long name, %2$s is the adding user's nickname. @@ -7972,7 +7942,7 @@ msgstr "%1$s (@%2$s) heeft uw mededeling als favoriet toegevoegd" #. TRANS: %3$s is a URL to the faved notice, %4$s is the faved notice text, #. TRANS: %5$s is a URL to all faves of the adding user, %6$s is the StatusNet sitename, #. TRANS: %7$s is the adding user's nickname. -#, fuzzy, php-format +#, php-format msgid "" "%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n" "\n" @@ -8001,10 +7971,7 @@ msgstr "" "\n" "U kunt de favorietenlijst van %1$s via de volgende verwijzing bekijken:\n" "\n" -"%5$s\n" -"\n" -"Met vriendelijke groet,\n" -"%6$s\n" +"%5$s" #. TRANS: Line in @-reply notification e-mail. %s is conversation URL. #, php-format @@ -8028,7 +7995,7 @@ msgstr "%1$s (@%2$s) heeft u een mededeling gestuurd" #. TRANS: %3$s is a URL to the notice, %4$s is the notice text, #. TRANS: %5$s is a URL to the full conversion if it exists (otherwise empty), #. TRANS: %6$s is a URL to reply to the notice, %7$s is a URL to all @-replies for the addressed user, -#, fuzzy, php-format +#, php-format msgid "" "%1$s just sent a notice to your attention (an '@-reply') on %2$s.\n" "\n" @@ -8048,8 +8015,7 @@ msgid "" "\n" "%7$s" msgstr "" -"%1$s (@%9$s) heeft u zojuist een mededeling gezonden (een '@-antwoord') op %2" -"$s.\n" +"%1$s heeft u zojuist een mededeling gezonden (een '@-antwoord') op %2$s.\n" "\n" "De mededeling is hier te vinden:\n" "\n" @@ -8065,12 +8031,7 @@ msgstr "" "\n" "De lijst met alle @-antwoorden aan u:\n" "\n" -"%7$s\n" -"\n" -"Groet,\n" -"%2$s\n" -"\n" -"Ps. U kunt de e-mailmeldingen hier uitschakelen: %8$s\n" +"%7$s" #. TRANS: Subject of group join notification e-mail. #. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. @@ -8078,24 +8039,26 @@ msgstr "" #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, #. TRANS: %4$s is a block of profile info about the subscriber. #. TRANS: %5$s is a link to the addressed user's e-mail settings. -#, fuzzy, php-format +#, php-format msgid "%1$s has joined your group %2$s on %3$s." -msgstr "%1$s is lid geworden van de groep %2$s." +msgstr "%1$s is lid geworden van de groep %2$s op %3$s." #. TRANS: Subject of pending group join request notification e-mail. #. TRANS: %1$s is the joining user's nickname, %2$s is the group name, and %3$s is the StatusNet sitename. -#, fuzzy, php-format +#, php-format msgid "%1$s wants to join your group %2$s on %3$s." -msgstr "%1$s is lid geworden van de groep %2$s." +msgstr "%1$s wil lid worden van de groep %2$s op %3$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " "their group membership at %4$s" msgstr "" +"%1$s wil lid worden van de groep %2$s op %3$s. U kunt dit verzoek accepteren " +"of weigeren via de volgende verwijzing: %4$s." msgid "Only the user can read their own mailboxes." msgstr "Gebruikers kunnen alleen hun eigen postvakken lezen." @@ -8840,8 +8803,10 @@ msgstr "Ongeldige XML. De XRD-root mist." msgid "Getting backup from file '%s'." msgstr "De back-up wordt uit het bestand \"%s\" geladen." -#~ msgid "Notice" -#~ msgstr "Mededeling" +#~ msgid "BUTTON" +#~ msgstr "X" -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 kleine letters of cijfers, geen leestekens of spaties." +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Het bericht te is lang. De maximale lengte is %1$d tekens. De lengte van " +#~ "uw bericht was %2$d." diff --git a/locale/pl/LC_MESSAGES/statusnet.po b/locale/pl/LC_MESSAGES/statusnet.po index 97dfebad3f..270951de02 100644 --- a/locale/pl/LC_MESSAGES/statusnet.po +++ b/locale/pl/LC_MESSAGES/statusnet.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:52+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:06+0000\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" @@ -20,11 +20,11 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n == 1) ? 0 : ( (n%10 >= 2 && n%10 <= 4 && " "(n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pl\n" "X-Message-Group: #out-statusnet-core\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1140,14 +1140,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Nie można dołączyć użytkownika %1$s do grupy %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Stan użytkownika %1$s na %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6926,7 +6929,8 @@ msgid "Block this user" msgstr "Zablokuj tego użytkownika" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7549,12 +7553,12 @@ msgstr "Opisz grupę lub temat" #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." -msgstr[0] "Opisz grupę lub temat w %d znaku" -msgstr[1] "Opisz grupę lub temat w %d znakach" -msgstr[2] "Opisz grupę lub temat w %d znakach" +msgstr[0] "Opisz grupę lub temat w %d znaku." +msgstr[1] "Opisz grupę lub temat w %d znakach lub mniej." +msgstr[2] "Opisz grupę lub temat w %d znakach lub mniej." #. TRANS: Field title on group edit form. msgid "" @@ -7777,10 +7781,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Nieznane źródło skrzynki odbiorczej %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Wiadomość jest za długa - maksymalnie %1$d znaków, wysłano %2$d." - msgid "Leave" msgstr "Opuść" @@ -8132,7 +8132,7 @@ msgstr "Użytkownik %1$s dołączył do grupy %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8902,8 +8902,5 @@ msgstr "Nieprawidłowy kod XML, brak głównego XRD." msgid "Getting backup from file '%s'." msgstr "Pobieranie kopii zapasowej z pliku \"%s\"." -#~ msgid "Notice" -#~ msgstr "Wpisy" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 małe litery lub liczby, bez spacji i znaków przestankowych." +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Wiadomość jest za długa - maksymalnie %1$d znaków, wysłano %2$d." diff --git a/locale/pt/LC_MESSAGES/statusnet.po b/locale/pt/LC_MESSAGES/statusnet.po index 81c4175cd4..805e361281 100644 --- a/locale/pt/LC_MESSAGES/statusnet.po +++ b/locale/pt/LC_MESSAGES/statusnet.po @@ -17,17 +17,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:54+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:07+0000\n" "Language-Team: Portuguese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pt\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1125,14 +1125,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Não foi possível adicionar %1$s ao grupo %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Estado de %1$s em %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6905,7 +6908,8 @@ msgid "Block this user" msgstr "Bloquear este utilizador" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7748,10 +7752,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Origem da caixa de entrada desconhecida \"%s\"." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d." - msgid "Leave" msgstr "Afastar-me" @@ -8102,7 +8102,7 @@ msgstr "%1$s juntou-se ao grupo %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8865,9 +8865,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "Notas" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 letras minúsculas ou números, sem pontuação ou espaços" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d." diff --git a/locale/pt_BR/LC_MESSAGES/statusnet.po b/locale/pt_BR/LC_MESSAGES/statusnet.po index 58c8e208c8..401d83517f 100644 --- a/locale/pt_BR/LC_MESSAGES/statusnet.po +++ b/locale/pt_BR/LC_MESSAGES/statusnet.po @@ -15,18 +15,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:55+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:08+0000\n" "Language-Team: Brazilian Portuguese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: pt-br\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1140,14 +1140,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Não foi possível associar o usuário %1$s ao grupo %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Mensagem de %1$s no %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6973,7 +6976,8 @@ msgid "Block this user" msgstr "Bloquear este usuário" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7825,11 +7829,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Fonte da caixa de entrada desconhecida %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"A mensagem é muito extensa - o máximo são %1$d caracteres e você enviou %2$d." - msgid "Leave" msgstr "Sair" @@ -8181,7 +8180,7 @@ msgstr "%1$s associou-se ao grupo %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8942,8 +8941,7 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "Mensagens" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 letras minúsculas ou números, sem pontuações ou espaços." +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "A mensagem é muito extensa - o máximo são %1$d caracteres e você enviou %2" +#~ "$d." diff --git a/locale/ru/LC_MESSAGES/statusnet.po b/locale/ru/LC_MESSAGES/statusnet.po index 8c77dc3334..a208159af4 100644 --- a/locale/ru/LC_MESSAGES/statusnet.po +++ b/locale/ru/LC_MESSAGES/statusnet.po @@ -18,18 +18,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:57+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:10+0000\n" "Language-Team: Russian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ru\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= " "2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1144,14 +1144,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Не удаётся присоединить пользователя %1$s к группе %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "Статус %1$s на %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -3900,8 +3903,7 @@ msgstr "Настройки профиля" msgid "" "You can update your personal profile info here so people know more about you." msgstr "" -"Вы можете обновить ваш профиль ниже, так что люди узнают о вас немного " -"больше." +"Ниже вы можете обновить свой профиль, чтобы люди узнали о вас немного больше." #. TRANS: Profile settings form legend. msgid "Profile information" @@ -3956,7 +3958,7 @@ msgstr "Биография" #. TRANS: Field label on account registration page. #. TRANS: Field label on group edit form. msgid "Location" -msgstr "Месторасположение" +msgstr "Местоположение" #. TRANS: Tooltip for field label in form for profile settings. msgid "Where you are, like \"City, State (or Region), Country\"" @@ -6584,7 +6586,7 @@ msgid "Home" msgstr "Главная" msgid "Admin" -msgstr "Настройки" +msgstr "Администрирование" #. TRANS: Menu item title/tooltip msgid "Basic site configuration" @@ -6848,7 +6850,8 @@ msgid "Block this user" msgstr "Заблокировать пользователя." #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7696,11 +7699,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Неизвестный источник входящих сообщений %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Сообщение слишком длинное — не больше %1$d символов, вы отправили %2$d." - msgid "Leave" msgstr "Покинуть" @@ -8050,7 +8048,7 @@ msgstr "%1$s присоединился к группе %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8163,7 +8161,7 @@ msgstr "Для" msgctxt "Send button for sending notice" msgid "Send" -msgstr "Отправить" +msgstr "↵" msgid "Messages" msgstr "Сообщения" @@ -8806,8 +8804,6 @@ msgstr "Неверный XML, отсутствует корень XRD." msgid "Getting backup from file '%s'." msgstr "Получение резервной копии из файла «%s»." -#~ msgid "Notice" -#~ msgstr "Записи" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 латинских строчных буквы или цифры, без пробелов" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "" +#~ "Сообщение слишком длинное — не больше %1$d символов, вы отправили %2$d." diff --git a/locale/statusnet.pot b/locale/statusnet.pot index 19634500c4..47d27a9fe0 100644 --- a/locale/statusnet.pot +++ b/locale/statusnet.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -823,7 +823,7 @@ msgstr "" #. TRANS: Server error displayed when group aliases could not be added. #. TRANS: Server exception thrown when creating group aliases failed. #: actions/apigroupprofileupdate.php:195 actions/editgroup.php:283 -#: classes/User_group.php:578 +#: classes/User_group.php:548 msgid "Could not create aliases." msgstr "" @@ -1420,17 +1420,20 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "" #. TRANS: Title for leave group page after group join request is approved/disapproved. -#: actions/approvegroup.php:172 +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. +#: actions/approvegroup.php:173 #, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "" -#: actions/approvegroup.php:178 +#. TRANS: Message on page for group admin after approving a join request. +#: actions/approvegroup.php:180 msgid "Join request approved." msgstr "" -#: actions/approvegroup.php:180 +#. TRANS: Message on page for group admin after rejecting a join request. +#: actions/approvegroup.php:183 msgid "Join request canceled." msgstr "" @@ -3816,7 +3819,7 @@ msgid "New group" msgstr "" #. TRANS: Client exception thrown when a user tries to create a group while banned. -#: actions/newgroup.php:73 classes/User_group.php:518 +#: actions/newgroup.php:73 classes/User_group.php:488 msgid "You are not allowed to create groups on this site." msgstr "" @@ -6984,13 +6987,13 @@ msgid "Description" msgstr "" #. TRANS: Activity title when marking a notice as favorite. -#: classes/Fave.php:176 +#: classes/Fave.php:112 msgid "Favor" msgstr "" #. TRANS: Ntofication given when a user marks a notice as favorite. #. TRANS: %1$s is a user nickname or full name, %2$s is a notice URI. -#: classes/Fave.php:179 +#: classes/Fave.php:115 #, php-format msgid "%1$s marked notice %2$s as a favorite." msgstr "" @@ -7164,51 +7167,51 @@ msgid "Problem saving notice." msgstr "" #. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups(). -#: classes/Notice.php:939 +#: classes/Notice.php:865 msgid "Bad type provided to saveKnownGroups." msgstr "" #. TRANS: Server exception thrown when an update for a group inbox fails. -#: classes/Notice.php:1038 +#: classes/Notice.php:964 msgid "Problem saving group inbox." msgstr "" #. TRANS: Server exception thrown when a reply cannot be saved. #. TRANS: %1$d is a notice ID, %2$d is the ID of the mentioned user. -#: classes/Notice.php:1154 +#: classes/Notice.php:1080 #, php-format msgid "Could not save reply for %1$d, %2$d." msgstr "" #. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'. #. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice. -#: classes/Notice.php:1618 +#: classes/Notice.php:1544 #, php-format msgid "RT @%1$s %2$s" msgstr "" #. TRANS: Full name of a profile or group followed by nickname in parens -#: classes/Profile.php:172 classes/User_group.php:275 +#: classes/Profile.php:172 classes/User_group.php:245 #, php-format msgctxt "FANCYNAME" msgid "%1$s (%2$s)" msgstr "" #. TRANS: Exception thrown trying to approve a non-existing group join request. -#: classes/Profile.php:407 +#: classes/Profile.php:335 msgid "Invalid group join approval: not pending." msgstr "" #. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist. #. TRANS: %1$s is the role name, %2$s is the user ID (number). -#: classes/Profile.php:865 +#: classes/Profile.php:793 #, php-format msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist." msgstr "" #. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query. #. TRANS: %1$s is the role name, %2$s is the user ID (number). -#: classes/Profile.php:874 +#: classes/Profile.php:802 #, php-format msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error." msgstr "" @@ -7278,32 +7281,32 @@ msgid "Welcome to %1$s, @%2$s!" msgstr "" #. TRANS: Server exception. -#: classes/User.php:946 +#: classes/User.php:871 msgid "No single user defined for single-user mode." msgstr "" #. TRANS: Server exception. -#: classes/User.php:950 +#: classes/User.php:875 msgid "Single-user mode code called when not enabled." msgstr "" #. TRANS: Server exception thrown when creating a group failed. -#: classes/User_group.php:560 +#: classes/User_group.php:530 msgid "Could not create group." msgstr "" #. TRANS: Server exception thrown when updating a group URI failed. -#: classes/User_group.php:570 +#: classes/User_group.php:540 msgid "Could not set group URI." msgstr "" #. TRANS: Server exception thrown when setting group membership failed. -#: classes/User_group.php:593 +#: classes/User_group.php:563 msgid "Could not set group membership." msgstr "" #. TRANS: Server exception thrown when saving local group information failed. -#: classes/User_group.php:608 +#: classes/User_group.php:578 msgid "Could not save local group info." msgstr "" @@ -7935,7 +7938,8 @@ msgstr "" #. TRANS: Submit button text on form to cancel group join request. #: lib/cancelgroupform.php:115 -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -8083,7 +8087,7 @@ msgstr "" #. TRANS: Message given if content is too long. %1$sd is used for plural. #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters. -#: lib/command.php:494 +#: lib/command.php:494 lib/implugin.php:486 #, php-format msgid "Message too long - maximum is %1$d character, you sent %2$d." msgid_plural "Message too long - maximum is %1$d characters, you sent %2$d." @@ -8904,11 +8908,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#: lib/implugin.php:485 -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" - #: lib/leaveform.php:114 msgid "Leave" msgstr "" @@ -9186,7 +9185,7 @@ msgstr "" #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #: lib/mail.php:836 #, php-format msgid "" @@ -9941,7 +9940,7 @@ msgctxt "FAVELIST" msgid "You have favored this notice." msgstr "" -#: lib/threadednoticelist.php:428 +#: lib/threadednoticelist.php:427 #, php-format msgctxt "FAVELIST" msgid "One person has favored this notice." @@ -9950,12 +9949,12 @@ msgstr[0] "" msgstr[1] "" #. TRANS: List message for notice repeated by logged in user. -#: lib/threadednoticelist.php:482 +#: lib/threadednoticelist.php:481 msgctxt "REPEATLIST" msgid "You have repeated this notice." msgstr "" -#: lib/threadednoticelist.php:488 +#: lib/threadednoticelist.php:486 #, php-format msgctxt "REPEATLIST" msgid "One person has repeated this notice." diff --git a/locale/sv/LC_MESSAGES/statusnet.po b/locale/sv/LC_MESSAGES/statusnet.po index 5e179d22cb..160afc31f2 100644 --- a/locale/sv/LC_MESSAGES/statusnet.po +++ b/locale/sv/LC_MESSAGES/statusnet.po @@ -13,17 +13,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:12:59+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:11+0000\n" "Language-Team: Swedish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: sv\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1132,14 +1132,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Kunde inte ansluta användare %1$s till grupp %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$ss status den %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6937,7 +6940,8 @@ msgid "Block this user" msgstr "Blockera denna användare" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7779,10 +7783,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Okänd källa för inkorg %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Meddelande för långt - maximum är %1$d tecken, du skickade %2$d." - msgid "Leave" msgstr "Lämna" @@ -8131,7 +8131,7 @@ msgstr "%1$s gick med i grupp %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8889,8 +8889,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#~ msgid "Notice" -#~ msgstr "Notiser" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 små bokstäver eller nummer, inga punkter eller mellanslag" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Meddelande för långt - maximum är %1$d tecken, du skickade %2$d." diff --git a/locale/te/LC_MESSAGES/statusnet.po b/locale/te/LC_MESSAGES/statusnet.po index ba57a9fd4b..27e429ef8f 100644 --- a/locale/te/LC_MESSAGES/statusnet.po +++ b/locale/te/LC_MESSAGES/statusnet.po @@ -10,17 +10,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:13:00+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:12+0000\n" "Language-Team: Telugu \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: te\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1113,14 +1113,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "వాడుకరి %1$sని %2$s గుంపులో చేర్చలేకపోయాం" #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%2$sలో %1$s యొక్క స్థితి" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -1775,7 +1778,7 @@ msgstr "రూపురేఖలు" #. TRANS: Instructions for design adminsitration panel. msgid "Design settings for this StatusNet site" -msgstr "" +msgstr "ఈ స్టేటస్‌నెట్ సైటుకి రూపురేఖల అమరికలు" #. TRANS: Client error displayed when a logo URL does is not valid. msgid "Invalid logo URL." @@ -2472,9 +2475,8 @@ msgid "" msgstr "నేపథ్య చిత్రం మరియు రంగుల ఎంపికతో మీ గుంపు ఎలా కనిపించాలో మలచుకోండి." #. TRANS: Form validation error displayed when group design settings could not be updated because of an application issue. -#, fuzzy msgid "Unable to update your design settings." -msgstr "మీ రూపురేఖల అమరికలని భద్రపరచలేకున్నాం." +msgstr "మీ రూపురేఖల అమరికలను భద్రపరచలేకున్నాం." #. TRANS: Form text to confirm saved group design settings. #. TRANS: Confirmation message on Profile design page when saving design settings has succeeded. @@ -2535,20 +2537,19 @@ msgstr "" #. TRANS: Title of the first page showing pending group members still awaiting approval to join the group. #. TRANS: %s is the name of the group. -#, fuzzy, php-format +#, php-format msgid "%s group members awaiting approval" -msgstr "%s గుంపు సభ్యత్వాలు" +msgstr "అనుతికోసం వేచివున్న %s గుంపు సభ్యులు" #. TRANS: Title of all but the first page showing pending group members still awaiting approval to join the group. #. TRANS: %1$s is the name of the group, %2$d is the page number of the members list. -#, fuzzy, php-format +#, php-format msgid "%1$s group members awaiting approval, page %2$d" -msgstr "%1$s గుంపు సభ్యులు, పేజీ %2$d" +msgstr "అనుమతి కోసం వేచివున్న %1$s గుంపు సభ్యులు, %2$dవ పుట" #. TRANS: Page notice for group members page. -#, fuzzy msgid "A list of users awaiting approval to join this group." -msgstr "ఈ గుంపులో వాడుకరులు జాబితా." +msgstr "ఈ గుంపులో చేరడానికి అనుమతి కోసం వేచివున్న వాడుకరుల జాబితా." #. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name. #, php-format @@ -2748,9 +2749,8 @@ msgid "That is the wrong IM address." msgstr "ఆ IM చిరునామా సరైనది కాదు." #. TRANS: Server error thrown on database error canceling IM address confirmation. -#, fuzzy msgid "Could not delete confirmation." -msgstr "ఈమెయిల్ నిర్ధారణని తొలగించలేకున్నాం." +msgstr "నిర్ధారణని తొలగించలేకున్నాం." #. TRANS: Message given after successfully canceling IM address confirmation. msgid "IM confirmation cancelled." @@ -2860,9 +2860,8 @@ msgid "Email addresses" msgstr "ఈమెయిలు చిరునామాలు" #. TRANS: Tooltip for field label for a list of e-mail addresses. -#, fuzzy msgid "Addresses of friends to invite (one per line)." -msgstr "ఆహ్వానించాల్సిన మిత్రుల చిరునామాలు (లైనుకి ఒకటి చొప్పున)" +msgstr "ఆహ్వానించాల్సిన మిత్రుల చిరునామాలు (పంక్తికి ఒకటి చొప్పున)." #. TRANS: Field label for a personal message to send to invitees. msgid "Personal message" @@ -2948,15 +2947,14 @@ msgid "You must be logged in to join a group." msgstr "గుంపుల్లో చేరడానికి మీరు ప్రవేశించి ఉండాలి." #. TRANS: Title for join group page after joining. -#, fuzzy, php-format +#, php-format msgctxt "TITLE" msgid "%1$s joined group %2$s" -msgstr "%1$s %2$s గుంపులో చేరారు" +msgstr "%2$s గుంపులో %1$s చేరారు" #. TRANS: Exception thrown when there is an unknown error joining a group. -#, fuzzy msgid "Unknown error joining group." -msgstr "గుర్తుతెలియని గుంపు." +msgstr "గుంపులో చేరడంలో ఏదో తెలియని పొరపాటు జరిగింది." #. TRANS: Client error displayed when trying to join a group while already a member. #. TRANS: Error text shown when trying to leave an existing group the user is not a member of. @@ -3037,7 +3035,7 @@ msgstr "యజమాని" #. TRANS: Field title in the license admin panel. msgid "Name of the owner of the site's content (if applicable)." -msgstr "" +msgstr "ఈ సైటులోని సమాచారానికి యజమాని యొక్క పేరు (ఒకవేళ ఉంటే)." #. TRANS: Field label in the license admin panel. msgid "License Title" @@ -3467,10 +3465,9 @@ msgid "This is your outbox, which lists private messages you have sent." msgstr "ఇవి మీరు పంపివున్న అంతరంగిక సందేశాలు." #. TRANS: Title for page where to change password. -#, fuzzy msgctxt "TITLE" msgid "Change password" -msgstr "సంకేతపదం మార్చుకోండి" +msgstr "సంకేతపదం మార్పు" #. TRANS: Instructions for page where to change password. msgid "Change your password." @@ -3496,10 +3493,9 @@ msgid "6 or more characters." msgstr "6 లేదా అంతకంటే ఎక్కువ అక్షరాలు." #. TRANS: Field label on page where to change password. In this field the new password should be typed a second time. -#, fuzzy msgctxt "LABEL" msgid "Confirm" -msgstr "నిర్థారించు" +msgstr "నిర్థారించండి" #. TRANS: Field title on page where to change password. #. TRANS: Ttile for field label for password reset form where the password has to be typed again. @@ -3508,7 +3504,6 @@ msgid "Same as password above." msgstr "పై సంకేతపదం వలెనే." #. TRANS: Button text on page where to change password. -#, fuzzy msgctxt "BUTTON" msgid "Change" msgstr "మార్చు" @@ -3520,14 +3515,12 @@ msgstr "సంకేతపదం తప్పనిసరిగా 6 లేద #. TRANS: Form validation error on password change when password confirmation does not match. #. TRANS: Form validation error displayed when trying to register with non-matching passwords. -#, fuzzy msgid "Passwords do not match." msgstr "సంకేతపదాలు సరిపోలలేదు." #. TRANS: Form validation error on page where to change password. -#, fuzzy msgid "Incorrect old password." -msgstr "పాత సంకేతపదం తప్పు" +msgstr "పాత సంకేతపదం తప్పు." #. TRANS: Form validation error on page where to change password. msgid "Error saving user; invalid." @@ -3621,7 +3614,6 @@ msgid "Use fancy URLs (more readable and memorable)?" msgstr "" #. TRANS: Fieldset legend in Paths admin panel. -#, fuzzy msgctxt "LEGEND" msgid "Theme" msgstr "అలంకారం" @@ -3653,9 +3645,8 @@ msgid "SSL path to themes (default: /theme/)." msgstr "" #. TRANS: Field label in Paths admin panel. -#, fuzzy msgid "Directory" -msgstr "అలంకార సంచయం" +msgstr "సంచయం" #. TRANS: Tooltip for field label in Paths admin panel. msgid "Directory where themes are located." @@ -3745,10 +3736,9 @@ msgid "Directory where attachments are located." msgstr "" #. TRANS: Fieldset legend in Paths admin panel. -#, fuzzy msgctxt "LEGEND" msgid "SSL" -msgstr "SSLని ఉపయోగించు" +msgstr "SSL" #. TRANS: Drop down option in Paths admin panel (option for "When to use SSL"). msgid "Never" @@ -3767,9 +3757,8 @@ msgid "Use SSL" msgstr "SSLని ఉపయోగించు" #. TRANS: Tooltip for field label in Paths admin panel. -#, fuzzy msgid "When to use SSL." -msgstr "SSLని ఎప్పుడు ఉపయోగించాలి" +msgstr "SSLని ఎప్పుడు ఉపయోగించాలి." #. TRANS: Tooltip for field label in Paths admin panel. msgid "Server to direct SSL requests to." @@ -3823,9 +3812,8 @@ msgid "You cannot administer plugins." msgstr "మీరు ప్లగిన్లను నిర్వహించలేరు." #. TRANS: Client error displayed when trying to enable or disable a non-existing plugin. -#, fuzzy msgid "No such plugin." -msgstr "అటువంటి పేజీ లేదు." +msgstr "అటువంటి ప్లగిన్ లేదు." #. TRANS: Page title for AJAX form return when enabling a plugin. msgctxt "plugin" @@ -3909,7 +3897,7 @@ msgstr "మీ హోమ్ పేజీ, బ్లాగు, లేదా వ #. TRANS: Tooltip for field label in form for profile settings. Plural #. TRANS: is decided by the number of characters available for the #. TRANS: biography (%d). -#, fuzzy, php-format +#, php-format msgid "Describe yourself and your interests in %d character" msgid_plural "Describe yourself and your interests in %d characters" msgstr[0] "మీ గురించి మరియు మీ ఆసక్తుల గురించి %d అక్షరాల్లో చెప్పండి" @@ -3976,11 +3964,11 @@ msgstr "ఉపయోగించాల్సిన యాంత్రిక క #. TRANS: characters for the biography (%d). #. TRANS: Form validation error on registration page when providing too long a bio text. #. TRANS: %d is the maximum number of characters for bio; used for plural. -#, fuzzy, php-format +#, php-format msgid "Bio is too long (maximum %d character)." msgid_plural "Bio is too long (maximum %d characters)." -msgstr[0] "స్వపరిచయం చాలా పెద్దగా ఉంది (%d అక్షరాలు గరిష్ఠం)." -msgstr[1] "స్వపరిచయం చాలా పెద్దగా ఉంది (%d అక్షరాలు గరిష్ఠం)." +msgstr[0] "(%d అక్షరం గరిష్ఠం)." +msgstr[1] "(%d అక్షరాలు గరిష్ఠం)." #. TRANS: Validation error in form for profile settings. #. TRANS: Client error displayed trying to save site settings without a timezone. @@ -3988,7 +3976,6 @@ msgid "Timezone not selected." msgstr "కాలమండలాన్ని ఎంచుకోలేదు." #. TRANS: Validation error in form for profile settings. -#, fuzzy msgid "Language is too long (maximum 50 characters)." msgstr "భాష మరీ పెద్దగా ఉంది (50 అక్షరాలు గరిష్ఠం)." @@ -4068,7 +4055,7 @@ msgstr "ఇది %s మరియు మిత్రుల కాలరేఖ #. TRANS: Additional text displayed for public feed when there are no public notices for a logged in user. msgid "Be the first to post!" -msgstr "" +msgstr "వ్రాసే మొదటివారు మీరే అవ్వండి!" #. TRANS: Additional text displayed for public feed when there are no public notices for a not logged in user. #, php-format @@ -4126,7 +4113,7 @@ msgstr "" #. TRANS: Message shown to a logged in user for the public tag cloud #. TRANS: while no tags exist yet. "One" refers to the non-existing hashtag. msgid "Be the first to post one!" -msgstr "" +msgstr "మీరే మొదటివారవ్వండి!" #. TRANS: Message shown to a anonymous user for the public tag cloud #. TRANS: while no tags exist yet. "One" refers to the non-existing hashtag. @@ -4220,16 +4207,14 @@ msgid "Password recovery requested" msgstr "" #. TRANS: Title for password recovery page in password saved mode. -#, fuzzy msgid "Password saved" -msgstr "సంకేతపదం భద్రమయ్యింది." +msgstr "సంకేతపదం భద్రమయ్యింది" #. TRANS: Title for password recovery page when an unknown action has been specified. msgid "Unknown action" msgstr "తెలియని చర్య" #. TRANS: Title for field label for password reset form. -#, fuzzy msgid "6 or more characters, and do not forget it!" msgstr "6 లేదా అంతకంటే ఎక్కువ అక్షరాలు, మర్చిపోకండి!" @@ -4266,9 +4251,8 @@ msgid "Unexpected password reset." msgstr "" #. TRANS: Reset password form validation error message. -#, fuzzy msgid "Password must be 6 characters or more." -msgstr "సంకేతపదం 6 లేదా అంతకంటే ఎక్కవ అక్షరాలుండాలి." +msgstr "సంకేతపదం తప్పనిసరిగా 6 లేదా అంతకంటే ఎక్కవ అక్షరాలుండాలి." #. TRANS: Reset password form validation error message. msgid "Password and confirmation do not match." @@ -4291,9 +4275,9 @@ msgstr "జోడింపులు లేవు." #. TRANS: Client exception thrown when an invalid ID parameter was provided for a file. #. TRANS: %d is the provided ID for which the file is not present (number). -#, fuzzy, php-format +#, php-format msgid "No such file \"%d\"." -msgstr "\"%d\" అనే దస్త్రం లేదు" +msgstr "\"%d\" అనే దస్త్రం లేదు." #. TRANS: Client error displayed when trying to register to an invite-only site without an invitation. msgid "Sorry, only invited people can register." @@ -4308,7 +4292,6 @@ msgid "Registration successful" msgstr "నమోదు విజయవంతం" #. TRANS: Title for registration page. -#, fuzzy msgctxt "TITLE" msgid "Register" msgstr "నమోదు" @@ -4336,10 +4319,9 @@ msgid "" msgstr "" #. TRANS: Field label on account registration page. In this field the password has to be entered a second time. -#, fuzzy msgctxt "PASSWORD" msgid "Confirm" -msgstr "నిర్థారించు" +msgstr "నిర్థారించండి" #. TRANS: Field label on account registration page. #, fuzzy @@ -4367,16 +4349,14 @@ msgstr[0] "మీ గురించి మరియు మీ ఆసక్త msgstr[1] "మీ గురించి మరియు మీ ఆసక్తుల గురించి %d అక్షరాల్లో చెప్పండి" #. TRANS: Text area title on account registration page. -#, fuzzy msgid "Describe yourself and your interests." -msgstr "మీ గురించి మరియు మీ ఆసక్తుల గురించి చెప్పండి" +msgstr "మీ గురించి మరియు మీ ఆసక్తుల గురించి చెప్పండి." #. TRANS: Field title on account registration page. msgid "Where you are, like \"City, State (or Region), Country\"." msgstr "మీరు ఎక్కడివారు, \"నగరం, రాష్ట్రం (లేదా ప్రాంతం), దేశం\"." #. TRANS: Field label on account registration page. -#, fuzzy msgctxt "BUTTON" msgid "Register" msgstr "నమోదు" @@ -4942,7 +4922,6 @@ msgstr "" "doc.help%%%%))" #. TRANS: Title for list of group administrators on a group page. -#, fuzzy msgctxt "TITLE" msgid "Admins" msgstr "నిర్వాహకులు" @@ -5179,7 +5158,6 @@ msgid "Site language when autodetection from browser settings is not available" msgstr "విహారిణి అమరికల నుండి భాషని స్వయంచాలకంగా పొందలేకపోయినప్పుడు ఉపయోగించే సైటు భాష" #. TRANS: Fieldset legend on site settings panel. -#, fuzzy msgctxt "LEGEND" msgid "Limits" msgstr "పరిమితులు" @@ -5219,7 +5197,6 @@ msgid "Unable to save site notice." msgstr "సైటు గమనికని భద్రపరచు" #. TRANS: Client error displayed when a site-wide notice was longer than allowed. -#, fuzzy msgid "Maximum length for the site-wide notice is 255 characters." msgstr "సైటు-వారీ నోటీసుకి గరిష్ఠ పొడవు 255 అక్షరాలు." @@ -5228,14 +5205,12 @@ msgid "Site notice text" msgstr "సైటు గమనిక పాఠ్యం" #. TRANS: Tooltip for site-wide notice text field in admin panel. -#, fuzzy msgid "Site-wide notice text (255 characters maximum; HTML allowed)" -msgstr "సైటు-వారీ నోటీసు పాఠ్యం (255 అక్షరాలు గరిష్ఠం; HTML పర్లేదు)" +msgstr "సైటు-వారీ నోటీసు పాఠ్యం (255 అక్షరాలు గరిష్ఠం; HTML ఇవ్వొచ్చు)" #. TRANS: Title for button to save site notice in admin panel. -#, fuzzy msgid "Save site notice." -msgstr "సైటు గమనికని భద్రపరచు" +msgstr "సైటు గమనికను భద్రపరచండి." #. TRANS: Title for SMS settings. msgid "SMS settings" @@ -5621,9 +5596,8 @@ msgstr "వేరే ఇతర ఎంపికలని సంభాళించ msgid " (free service)" msgstr " (స్వేచ్ఛా సేవ)" -#, fuzzy msgid "[none]" -msgstr "ఏమీలేదు" +msgstr "[ఏమీలేదు]" msgid "[internal]" msgstr "[అంతర్గతం]" @@ -5978,7 +5952,6 @@ msgid "Author(s)" msgstr "రచయిత(లు)" #. TRANS: Column header for plugins table on version page. -#, fuzzy msgctxt "HEADER" msgid "Description" msgstr "వివరణ" @@ -6465,9 +6438,9 @@ msgstr "" msgid "No content for notice %s." msgstr "మీ నోటీసుని మీరే పునరావృతించలేరు." -#, fuzzy, php-format +#, php-format msgid "No such user %s." -msgstr "అటువంటి వాడుకరి లేరు." +msgstr "%s అనే వాడుకరి లేరు." #. TRANS: Client exception thrown when post to collection fails with a 400 status. #. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason. @@ -6475,10 +6448,10 @@ msgstr "అటువంటి వాడుకరి లేరు." #. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason. #. TRANS: Exception thrown when post to collection fails with a status that is not handled. #. TRANS: %1$s is a URL, %2$s is the status, %s$s is the fail reason. -#, fuzzy, php-format +#, php-format msgctxt "URLSTATUSREASON" msgid "%1$s %2$s %3$s" -msgstr "%1$s - %2$s" +msgstr "%1$s %2$s %3$s" #. TRANS: Client exception thrown when there is no source attribute. msgid "Can't handle remote content yet." @@ -6661,10 +6634,10 @@ msgstr "పేరు" #. TRANS: Form input field instructions. #. TRANS: %d is the number of available characters for the description. -#, fuzzy, php-format +#, php-format msgid "Describe your application in %d character" msgid_plural "Describe your application in %d characters" -msgstr[0] "మీ ఉపకరణం గురించి %d అక్షరాల్లో వివరించండి" +msgstr[0] "మీ ఉపకరణం గురించి %d అక్షరంలో వివరించండి" msgstr[1] "మీ ఉపకరణం గురించి %d అక్షరాల్లో వివరించండి" #. TRANS: Form input field instructions. @@ -6790,7 +6763,8 @@ msgid "Block this user" msgstr "ఈ వాడుకరిని నిరోధించు" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -6923,11 +6897,11 @@ msgstr "" #. TRANS: Message given if content is too long. %1$sd is used for plural. #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters. -#, fuzzy, php-format +#, php-format msgid "Message too long - maximum is %1$d character, you sent %2$d." msgid_plural "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr[0] "నోటిసు చాలా పొడవుగా ఉంది - %1$d అక్షరాలు గరిష్ఠం, మీరు %2$d పంపించారు." -msgstr[1] "నోటిసు చాలా పొడవుగా ఉంది - %1$d అక్షరాలు గరిష్ఠం, మీరు %2$d పంపించారు." +msgstr[0] "%1$d అక్షరం గరిష్ఠం, మీరు %2$d పంపించారు." +msgstr[1] "%1$d అక్షరాలు గరిష్ఠం, మీరు %2$d పంపించారు." #. TRANS: Error text shown when trying to send a direct message to a user without a mutual subscription (each user must be subscribed to the other). msgid "You can't send a message to this user." @@ -6950,11 +6924,11 @@ msgstr "నోటీసుని పునరావృతించడంలో #. TRANS: Message given if content of a notice for a reply is too long. %1$d is used for plural. #. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters. -#, fuzzy, php-format +#, php-format msgid "Notice too long - maximum is %1$d character, you sent %2$d." msgid_plural "Notice too long - maximum is %1$d characters, you sent %2$d." -msgstr[0] "నోటిసు చాలా పొడవుగా ఉంది - %d అక్షరాలు గరిష్ఠం, మీరు %d పంపించారు" -msgstr[1] "నోటిసు చాలా పొడవుగా ఉంది - %d అక్షరాలు గరిష్ఠం, మీరు %d పంపించారు" +msgstr[0] "%1$d అక్షరం గరిష్ఠం, మీరు %2$d పంపించారు" +msgstr[1] "%1$d అక్షరాలు గరిష్ఠం, మీరు %2$d పంపించారు" #. TRANS: Text shown having sent a reply to a notice successfully. #. TRANS: %s is the nickname of the user of the notice the reply was sent to. @@ -6993,9 +6967,8 @@ msgstr "%s నుండి చందా విరమించారు." #. TRANS: Error text shown when issuing the command "off" with a setting which has not yet been implemented. #. TRANS: Error text shown when issuing the command "on" with a setting which has not yet been implemented. -#, fuzzy msgid "Command not yet implemented." -msgstr "క్షమించండి, ఈ ఆదేశం ఇంకా అమలుపరచబడలేదు." +msgstr "ఈ ఆదేశాన్ని ఇంకా అమలుపరచలేదు." #. TRANS: Text shown when issuing the command "off" successfully. #, fuzzy @@ -7071,10 +7044,9 @@ msgstr[0] "మీరు ఇప్పటికే లోనికి ప్రవ msgstr[1] "మీరు ఇప్పటికే లోనికి ప్రవేశించారు!" #. TRANS: Header line of help text for commands. -#, fuzzy msgctxt "COMMANDHELP" msgid "Commands:" -msgstr "ఆదేశ ఫలితాలు" +msgstr "ఆదేశాలు:" #. TRANS: Help message for IM/SMS command "on" #, fuzzy @@ -7101,29 +7073,27 @@ msgstr "వాడుకరికి చందాచేరండి" #. TRANS: Help message for IM/SMS command "groups" msgctxt "COMMANDHELP" msgid "lists the groups you have joined" -msgstr "" +msgstr "మీరు చేరిన గుంపులను చూపిస్తుంది" #. TRANS: Help message for IM/SMS command "subscriptions" msgctxt "COMMANDHELP" msgid "list the people you follow" -msgstr "" +msgstr "మీరు అనుసరించే వ్యక్తులను చూపిస్తుంది" #. TRANS: Help message for IM/SMS command "subscribers" msgctxt "COMMANDHELP" msgid "list the people that follow you" -msgstr "" +msgstr "మిమ్మల్ని అనుసరించే వ్యక్తులను చూపిస్తుంది" #. TRANS: Help message for IM/SMS command "leave " -#, fuzzy msgctxt "COMMANDHELP" msgid "unsubscribe from user" -msgstr "ఈ వాడుకరి నుండి చందామాను" +msgstr "వాడుకరి నుండి చందామానండి" #. TRANS: Help message for IM/SMS command "d " -#, fuzzy msgctxt "COMMANDHELP" msgid "direct message to user" -msgstr "%s కి నేరు సందేశాలు" +msgstr "వాడుకరికి నేరు సందేశం" #. TRANS: Help message for IM/SMS command "get " msgctxt "COMMANDHELP" @@ -7174,10 +7144,9 @@ msgid "reply to the last notice from user" msgstr "ఈ నోటీసుపై స్పందించండి" #. TRANS: Help message for IM/SMS command "join " -#, fuzzy msgctxt "COMMANDHELP" msgid "join group" -msgstr "గుర్తుతెలియని గుంపు." +msgstr "గుంపులో చేరండి" #. TRANS: Help message for IM/SMS command "login" msgctxt "COMMANDHELP" @@ -7185,10 +7154,9 @@ msgid "Get a link to login to the web interface" msgstr "" #. TRANS: Help message for IM/SMS command "drop " -#, fuzzy msgctxt "COMMANDHELP" msgid "leave group" -msgstr "గుంపు తొలగింపు" +msgstr "గుంపు నుండి వైదొలగండి" #. TRANS: Help message for IM/SMS command "stats" msgctxt "COMMANDHELP" @@ -7225,10 +7193,9 @@ msgstr "" #. TRANS: Help message for IM/SMS command "untrack all" #. TRANS: Help message for IM/SMS command "tracks" #. TRANS: Help message for IM/SMS command "tracking" -#, fuzzy msgctxt "COMMANDHELP" msgid "not yet implemented." -msgstr "క్షమించండి, ఈ ఆదేశం ఇంకా అమలుపరచబడలేదు." +msgstr "ఇంకా అమలుపరచబడలేదు." #. TRANS: Help message for IM/SMS command "nudge " msgctxt "COMMANDHELP" @@ -7348,10 +7315,9 @@ msgid "Favor this notice" msgstr "ఈ నోటీసుని పునరావృతించు" #. TRANS: Button text for adding the favourite status to a notice. -#, fuzzy msgctxt "BUTTON" msgid "Favor" -msgstr "ఇష్టపడు" +msgstr "ఇష్టపడండి" msgid "RSS 1.0" msgstr "RSS 1.0" @@ -7414,9 +7380,8 @@ msgid "URL of the homepage or blog of the group or topic." msgstr "ఈ ఉపకరణం యొక్క హోమ్‌పేజీ చిరునామా" #. TRANS: Text area title for group description when there is no text limit. -#, fuzzy msgid "Describe the group or topic." -msgstr "గుంపుని లేదా విషయాన్ని వివరించండి" +msgstr "గుంపుని లేదా విషయాన్ని వివరించండి." #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. @@ -7427,10 +7392,9 @@ msgstr[0] "గుంపు లేదా విషయాన్ని గురి msgstr[1] "గుంపు లేదా విషయాన్ని గురించి %d అక్షరాల్లో వివరించండి" #. TRANS: Field title on group edit form. -#, fuzzy msgid "" "Location for the group, if any, like \"City, State (or Region), Country\"." -msgstr "గుంపు యొక్క ప్రాంతం, ఉంటే, \"నగరం, రాష్ట్రం (లేదా ప్రాంతం), దేశం\"" +msgstr "గుంపు యొక్క ప్రాంతం, ఉంటే, \"నగరం, రాష్ట్రం (లేదా ప్రాంతం), దేశం\"." #. TRANS: Field label on group edit form. msgid "Aliases" @@ -7635,10 +7599,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "గుర్తు తెలియని భాష \"%s\"." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "నోటిసు చాలా పొడవుగా ఉంది - %1$d అక్షరాలు గరిష్ఠం, మీరు %2$d పంపించారు." - msgid "Leave" msgstr "వైదొలగు" @@ -7976,7 +7936,7 @@ msgstr "%1$s %2$s గుంపులో చేరారు." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8728,9 +8688,5 @@ msgstr "" msgid "Getting backup from file '%s'." msgstr "" -#, fuzzy -#~ msgid "Notice" -#~ msgstr "సందేశాలు" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1-64 చిన్నబడి అక్షరాలు లేదా అంకెలు, విరామచిహ్నాలు మరియు ఖాళీలు తప్ప" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "నోటిసు చాలా పొడవుగా ఉంది - %1$d అక్షరాలు గరిష్ఠం, మీరు %2$d పంపించారు." diff --git a/locale/tr/LC_MESSAGES/statusnet.po b/locale/tr/LC_MESSAGES/statusnet.po index 12b59fead9..94b5493b54 100644 --- a/locale/tr/LC_MESSAGES/statusnet.po +++ b/locale/tr/LC_MESSAGES/statusnet.po @@ -13,17 +13,17 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:13:02+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:13+0000\n" "Language-Team: Turkish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: tr\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1129,14 +1129,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "%1$s kullanıcısı, %2$s grubuna katılamadı." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s'in %2$s'deki durum mesajları " +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6834,7 +6837,8 @@ msgid "Block this user" msgstr "Bu kullanıcıyı engelle" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7669,10 +7673,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "" -#, fuzzy, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "Bu çok uzun. Maksimum durum mesajı boyutu %d karakterdir." - #, fuzzy msgid "Leave" msgstr "Kaydet" @@ -7932,7 +7932,7 @@ msgstr "%2$s / %3$s tarafından favorilere eklenen %1$s güncellemeleri." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8695,10 +8695,5 @@ msgid "Getting backup from file '%s'." msgstr "" #, fuzzy -#~ msgid "Notice" -#~ msgstr "Durum mesajları" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "" -#~ "1-64 küçük harf veya rakam, noktalama işaretlerine ve boşluklara izin " -#~ "verilmez" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "Bu çok uzun. Maksimum durum mesajı boyutu %d karakterdir." diff --git a/locale/uk/LC_MESSAGES/statusnet.po b/locale/uk/LC_MESSAGES/statusnet.po index 4527c0786c..023349de16 100644 --- a/locale/uk/LC_MESSAGES/statusnet.po +++ b/locale/uk/LC_MESSAGES/statusnet.po @@ -12,18 +12,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:13:03+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:14+0000\n" "Language-Team: Ukrainian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: uk\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=3; plural=(n%10 == 1 && n%100 != 11) ? 0 : ( (n%10 >= " "2 && n%10 <= 4 && (n%100 < 10 || n%100 >= 20)) ? 1 : 2 );\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1150,14 +1150,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "Не вдалось долучити користувача %1$s до спільноти %2$s." #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s має статус на %2$s" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6860,7 +6863,8 @@ msgid "Block this user" msgstr "Блокувати користувача" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7490,7 +7494,7 @@ msgstr "Опишіть спільноту або тему" #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." msgstr[0] "Опишіть спільноту або тему, вкладаючись у %d знак" @@ -7722,12 +7726,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "Невідоме джерело вхідного повідомлення %d." -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "" -"Повідомлення надто довге, максимум становить %1$d символів, натомість ви " -"надсилаєте %2$d." - msgid "Leave" msgstr "Залишити" @@ -8078,7 +8076,7 @@ msgstr "%1$s долучився до спільноти %2$s." #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8839,9 +8837,7 @@ msgstr "Неправильний XML, корінь XRD відсутній." msgid "Getting backup from file '%s'." msgstr "Отримання резервної копії файлу «%s»." -#~ msgid "Notice" -#~ msgstr "Дописи" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." #~ msgstr "" -#~ "1-64 літери нижнього регістру і цифри, ніякої пунктуації або інтервалів" +#~ "Повідомлення надто довге, максимум становить %1$d символів, натомість ви " +#~ "надсилаєте %2$d." diff --git a/locale/zh_CN/LC_MESSAGES/statusnet.po b/locale/zh_CN/LC_MESSAGES/statusnet.po index f9c15d1546..855ba5759d 100644 --- a/locale/zh_CN/LC_MESSAGES/statusnet.po +++ b/locale/zh_CN/LC_MESSAGES/statusnet.po @@ -15,18 +15,18 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - Core\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:13:05+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:15+0000\n" "Language-Team: Simplified Chinese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: zh-hans\n" "X-Message-Group: #out-statusnet-core\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-POT-Import-Date: 2011-03-18 20:10:59+0000\n" +"X-POT-Import-Date: 2011-03-24 15:23:28+0000\n" #. TRANS: Page title for Access admin panel that allows configuring site access. #. TRANS: Menu item for site administration @@ -1107,14 +1107,17 @@ msgid "Could not cancel request for user %1$s to join group %2$s." msgstr "无法把用户%1$s添加到%2$s小组" #. TRANS: Title for leave group page after group join request is approved/disapproved. +#. TRANS: %1$s is the user nickname, %2$s is the group nickname. #, fuzzy, php-format msgctxt "TITLE" msgid "%1$s's request for %2$s" msgstr "%1$s在%2$s时发的消息" +#. TRANS: Message on page for group admin after approving a join request. msgid "Join request approved." msgstr "" +#. TRANS: Message on page for group admin after rejecting a join request. msgid "Join request canceled." msgstr "" @@ -6659,7 +6662,8 @@ msgid "Block this user" msgstr "屏蔽这个用户" #. TRANS: Submit button text on form to cancel group join request. -msgid "BUTTON" +msgctxt "BUTTON" +msgid "Cancel join request" msgstr "" #. TRANS: Title for command results. @@ -7268,10 +7272,10 @@ msgstr "小组或主题的描述" #. TRANS: Text area title for group description. #. TRANS: %d is the number of characters available for the description. -#, fuzzy, php-format +#, php-format msgid "Describe the group or topic in %d character or less." msgid_plural "Describe the group or topic in %d characters or less." -msgstr[0] "用不超过%d个字符描述下这个小组或者主题" +msgstr[0] "" #. TRANS: Field title on group edit form. msgid "" @@ -7476,10 +7480,6 @@ msgstr "" msgid "Unknown inbox source %d." msgstr "未知的收件箱来源%d。" -#, php-format -msgid "Message too long - maximum is %1$d characters, you sent %2$d." -msgstr "消息包含%2$d个字符,超出长度限制 - 不能超过%1$d个字符。" - msgid "Leave" msgstr "离开" @@ -7827,7 +7827,7 @@ msgstr "%1$s加入了%2$s小组。" #. TRANS: Main body of pending group join request notification e-mail. #. TRANS: %1$s is the subscriber's long name, %2$s is the group name, and %3$s is the StatusNet sitename, -#. TRANS: %3$s is the URL to the moderation queue page. +#. TRANS: %4$s is the URL to the moderation queue page. #, php-format msgid "" "%1$s would like to join your group %2$s on %3$s. You may approve or reject " @@ -8560,8 +8560,5 @@ msgstr "不合法的XML, 缺少XRD根" msgid "Getting backup from file '%s'." msgstr "从文件'%s'获取备份。" -#~ msgid "Notice" -#~ msgstr "消息" - -#~ msgid "1-64 lowercase letters or numbers, no punctuation or spaces" -#~ msgstr "1 到 64 个小写字母或数字,不包含标点或空格" +#~ msgid "Message too long - maximum is %1$d characters, you sent %2$d." +#~ msgstr "消息包含%2$d个字符,超出长度限制 - 不能超过%1$d个字符。" diff --git a/plugins/AccountManager/locale/tl/LC_MESSAGES/AccountManager.po b/plugins/AccountManager/locale/tl/LC_MESSAGES/AccountManager.po new file mode 100644 index 0000000000..67c64b579c --- /dev/null +++ b/plugins/AccountManager/locale/tl/LC_MESSAGES/AccountManager.po @@ -0,0 +1,28 @@ +# Translation of StatusNet - AccountManager to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - AccountManager\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:16+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-24 15:23:13+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-accountmanager\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "" +"The Account Manager plugin implements the Account Manager specification." +msgstr "" +"Ipinatutupad ng pampasak na Tagapamahala ng Akawnt ang mga pagtutukoy ng " +"Tagapamahala ng Akawnt." diff --git a/plugins/Aim/locale/tl/LC_MESSAGES/Aim.po b/plugins/Aim/locale/tl/LC_MESSAGES/Aim.po new file mode 100644 index 0000000000..5db514bbf0 --- /dev/null +++ b/plugins/Aim/locale/tl/LC_MESSAGES/Aim.po @@ -0,0 +1,34 @@ +# Translation of StatusNet - Aim to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Aim\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:19+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:06:11+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-aim\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Send me a message to post a notice" +msgstr "Padalhan ako ng isang mensahe upang makapagpaskil ng isang pabatid" + +msgid "AIM" +msgstr "AIM" + +msgid "" +"The AIM plugin allows users to send and receive notices over the AIM network." +msgstr "" +"Nagpapahintulot sa mga tagagamit ang pampasak na AIM upang makapagpadala at " +"makatanggap ng mga pabatid sa ibabaw ng kalambatan ng AIM." diff --git a/plugins/ExtendedProfile/locale/tl/LC_MESSAGES/ExtendedProfile.po b/plugins/ExtendedProfile/locale/tl/LC_MESSAGES/ExtendedProfile.po new file mode 100644 index 0000000000..8d3726485c --- /dev/null +++ b/plugins/ExtendedProfile/locale/tl/LC_MESSAGES/ExtendedProfile.po @@ -0,0 +1,168 @@ +# Translation of StatusNet - ExtendedProfile to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - ExtendedProfile\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:05:50+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-24 15:25:02+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-extendedprofile\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Extended profile settings" +msgstr "Dinugtungang mga katakdaan ng balangkas" + +#. TRANS: Usage instructions for profile settings. +msgid "" +"You can update your personal profile info here so people know more about you." +msgstr "" +"Maisasapanahon mo rito ang kabatiran sa iyong pansariling balangkas upang " +"makaalam pa ng mas marami ang mga tao tungkol sa iyo." + +msgid "There was a problem with your session token. Try again, please." +msgstr "" +"May isang suliranin sa iyong sesyon ng kahalip. Mangyaring subukan uli." + +#. TRANS: Message given submitting a form with an unknown action. +msgid "Unexpected form submission." +msgstr "Hindi inaasahang pagpapasa ng pormularyo." + +msgid "Details saved." +msgstr "Nasagip na ang mga detalye." + +#. TRANS: Exception thrown when no date was entered in a required date field. +#. TRANS: %s is the field name. +#, php-format +msgid "You must supply a date for \"%s\"." +msgstr "Dapat kang magbigay ng isang petsa para sa \"%s\"." + +#. TRANS: Exception thrown on incorrect data input. +#. TRANS: %1$s is a field name, %2$s is the incorrect input. +#, php-format +msgid "Invalid date entered for \"%1$s\": %2$s." +msgstr "Hindi katanggap-tanggap na ipinasok na petsa para sa \"%1$s\": %2$s." + +#. TRANS: Exception thrown when entering an invalid URL. +#. TRANS: %s is the invalid URL. +#, php-format +msgid "Invalid URL: %s." +msgstr "Hindi katanggap-tanggap na URL: %s." + +msgid "Could not save profile details." +msgstr "Hindi masagip ang mga detalye ng balangkas." + +#. TRANS: Validation error in form for profile settings. +#. TRANS: %s is an invalid tag. +#, php-format +msgid "Invalid tag: \"%s\"." +msgstr "Hindi katanggap-tanggap na tatak: \"%s\"." + +#. TRANS: Server error thrown when user profile settings could not be saved. +msgid "Could not save profile." +msgstr "Hindi masagip ang balangkas." + +#. TRANS: Server error thrown when user profile settings tags could not be saved. +msgid "Could not save tags." +msgstr "Hindi masagip ang mga tatak." + +#. TRANS: Link title for link on user profile. +msgid "Edit extended profile settings" +msgstr "Baguhin ang mga katakdaan ng dinugtungang balangkas." + +#. TRANS: Link text for link on user profile. +msgid "Edit" +msgstr "Baguhin" + +msgid "UI extensions for additional profile fields." +msgstr "Mga dutong ng UI para sa mga kahanayan ng karagdagang balangkas." + +msgid "More details..." +msgstr "Marami pang mga detalye..." + +msgid "Company" +msgstr "Kumpanya" + +msgid "Start" +msgstr "Magsimula" + +msgid "End" +msgstr "Tapusin" + +msgid "Current" +msgstr "Pangkasalukuyan" + +msgid "Institution" +msgstr "Institusyon" + +msgid "Degree" +msgstr "Antas" + +msgid "Description" +msgstr "Paglalarawan" + +msgctxt "BUTTON" +msgid "Save" +msgstr "Sagipin" + +msgid "Phone" +msgstr "Telepono" + +msgid "IM" +msgstr "Biglaang Mensahe" + +msgid "Website" +msgstr "Websayt" + +msgid "Employer" +msgstr "Tagapagpahanapbuhay" + +msgid "Personal" +msgstr "Pansarili" + +msgid "Full name" +msgstr "Buong pangalan" + +msgid "Title" +msgstr "Pamagat" + +msgid "Manager" +msgstr "Tagapamahala" + +msgid "Location" +msgstr "Kinalalagyan" + +msgid "Bio" +msgstr "Talambuhay" + +msgid "Tags" +msgstr "Mga tatak" + +msgid "Contact" +msgstr "Kaugnayan" + +msgid "Birthday" +msgstr "Kaarawan" + +msgid "Spouse's name" +msgstr "Pangalan ng asawa" + +msgid "Kids' names" +msgstr "Pangalan ng mga anak" + +msgid "Work experience" +msgstr "Karanasan sa hanapbuhay" + +msgid "Education" +msgstr "Pag-aaral" diff --git a/plugins/GroupPrivateMessage/locale/tl/LC_MESSAGES/GroupPrivateMessage.po b/plugins/GroupPrivateMessage/locale/tl/LC_MESSAGES/GroupPrivateMessage.po new file mode 100644 index 0000000000..c9744d8b35 --- /dev/null +++ b/plugins/GroupPrivateMessage/locale/tl/LC_MESSAGES/GroupPrivateMessage.po @@ -0,0 +1,55 @@ +# Translation of StatusNet - GroupPrivateMessage to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - GroupPrivateMessage\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:07+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:07:12+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-groupprivatemessage\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Inbox" +msgstr "Kahong-tanggapan" + +msgid "Private messages for this group" +msgstr "Pribadong mga mensahe para sa pangkat na ito" + +msgid "Allow posting DMs to a group." +msgstr "Payagan ang pagpapaskil ng mga DM sa isang pangkat." + +msgid "This group has not received any private messages." +msgstr "" +"Ang pangkat na ito ay hindi pa nakatatanggap ng anumang mga mensaheng " +"pribado." + +#. TRANS: Instructions for user inbox page. +msgid "" +"This is the group inbox, which lists all incoming private messages for this " +"group." +msgstr "" +"Ito ang kahong-tanggapan ng pangkat, na nagtatala ng lahat ng pumapasok na " +"mga mensahe para sa pangkat na ito." + +msgctxt "Send button for sending notice" +msgid "Send" +msgstr "Ipadala" + +#, php-format +msgid "That's too long. Maximum message size is %d character." +msgid_plural "That's too long. Maximum message size is %d characters." +msgstr[0] "" +"Napakahaba niyan. Ang pinakamalaking sukat ng mensahe ay %d panitik." +msgstr[1] "Napakahaba niyan. Ang pinakamalaking sukat ay %d na mga panitik." diff --git a/plugins/Irc/locale/tl/LC_MESSAGES/Irc.po b/plugins/Irc/locale/tl/LC_MESSAGES/Irc.po new file mode 100644 index 0000000000..a541823a69 --- /dev/null +++ b/plugins/Irc/locale/tl/LC_MESSAGES/Irc.po @@ -0,0 +1,38 @@ +# Translation of StatusNet - Irc to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Irc\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:11+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-24 15:25:05+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-irc\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "IRC" +msgstr "IRC" + +msgid "" +"The IRC plugin allows users to send and receive notices over an IRC network." +msgstr "" +"Ang pampasak na IRC ay nagpapahintulot sa mga tagagamit na makapagpadala at " +"makatanggap ng mga pabatid sa ibabaw ng kalambatan ng IRC." + +#, php-format +msgid "Could not increment attempts count for %d" +msgstr "Hindi masudlungan ang bilang ng pagtatangka para sa %d" + +msgid "Your nickname is not registered so IRC connectivity cannot be enabled" +msgstr "Hindi nakatala ang palayaw mo kaya mapagana ang ugnayan ng IRC" diff --git a/plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po b/plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po index 3950678e59..b442d30f6d 100644 --- a/plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po +++ b/plugins/MobileProfile/locale/ar/LC_MESSAGES/MobileProfile.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - MobileProfile\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:14:05+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:26+0000\n" "Language-Team: Arabic \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:08:20+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:25:07+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ar\n" "X-Message-Group: #out-statusnet-plugin-mobileprofile\n" @@ -27,7 +27,7 @@ msgid "This page is not available in a media type you accept." msgstr "" msgid "Home" -msgstr "" +msgstr "الرئيسية" msgid "Account" msgstr "الحساب" diff --git a/plugins/Msn/locale/tl/LC_MESSAGES/Msn.po b/plugins/Msn/locale/tl/LC_MESSAGES/Msn.po new file mode 100644 index 0000000000..5bdfa957a0 --- /dev/null +++ b/plugins/Msn/locale/tl/LC_MESSAGES/Msn.po @@ -0,0 +1,31 @@ +# Translation of StatusNet - Msn to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Msn\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:30+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-24 15:25:07+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-msn\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "MSN" +msgstr "MSN" + +msgid "" +"The MSN plugin allows users to send and receive notices over the MSN network." +msgstr "" +"Ang pampasak ng MSN ay nagpapahintulot sa mga tagagamit na makapagpadala at " +"makatanggap ng mga pabatid sa ibabaw ng kalambatan ng MSN." diff --git a/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po index 4187430696..9491ecc71f 100644 --- a/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/de/LC_MESSAGES/OStatus.po @@ -10,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:14:28+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:52+0000\n" "Language-Team: German \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:25:40+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: de\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -631,6 +631,3 @@ msgstr "Dieses Ziel versteht das Verlassen von Events nicht." #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Einen Salmon-Slap von einem unidentifizierten Aktor empfangen." - -#~ msgid "Remote group join aborted!" -#~ msgstr "Beitritt in Remote-Gruppe abgebrochen!" diff --git a/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po index 1a56858486..7a93a42c87 100644 --- a/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po @@ -11,13 +11,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:14:28+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:52+0000\n" "Language-Team: French \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:25:40+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fr\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -652,6 +652,3 @@ msgstr "Cette cible ne reconnaît pas les indications de retrait d’évènement #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Réception d’une giffle Salmon d’un acteur non identifié." - -#~ msgid "Remote group join aborted!" -#~ msgstr "L’adhésion au groupe distant a été avortée !" diff --git a/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po index 74b10b7f9a..364bfef385 100644 --- a/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/ia/LC_MESSAGES/OStatus.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:52+0000\n" "Language-Team: Interlingua \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:25:40+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ia\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -622,6 +622,3 @@ msgstr "Iste destination non comprende eventos de partita." #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Recipeva un claffo de salmon de un actor non identificate." - -#~ msgid "Remote group join aborted!" -#~ msgstr "Le adhesion al gruppo remote ha essite abortate!" diff --git a/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po index e690390121..906603c8a7 100644 --- a/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/mk/LC_MESSAGES/OStatus.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:52+0000\n" "Language-Team: Macedonian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:25:40+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -625,6 +625,3 @@ msgstr "Оваа цел не разбира напуштање на настан #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Примив Salmon-шамар од непознат учесник." - -#~ msgid "Remote group join aborted!" -#~ msgstr "Придружувањето на далечинската група е откажано!" diff --git a/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po index a5a464e053..3cfad86e0d 100644 --- a/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/nl/LC_MESSAGES/OStatus.po @@ -10,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:52+0000\n" "Language-Team: Dutch \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:25:40+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -654,6 +654,3 @@ msgstr "Deze bestemming begrijpt uitschrijven van gebeurtenissen niet." #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Er is een Salmonslap ontvangen van een niet-geïdentificeerde actor." - -#~ msgid "Remote group join aborted!" -#~ msgstr "Het lid worden van de groep bij een andere dienst is afgebroken." diff --git a/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po index 8e286d01a8..3da3356bd1 100644 --- a/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po +++ b/plugins/OStatus/locale/uk/LC_MESSAGES/OStatus.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - OStatus\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-24 11:10+0000\n" -"PO-Revision-Date: 2011-03-24 11:14:29+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:06:53+0000\n" "Language-Team: Ukrainian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-18 20:08:26+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84667); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-24 15:25:40+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: uk\n" "X-Message-Group: #out-statusnet-plugin-ostatus\n" @@ -636,6 +636,3 @@ msgstr "Ціль не розуміє, що таке «залишати поді #. TRANS: Exception. msgid "Received a salmon slap from unidentified actor." msgstr "Отримано ляпаса від невизначеного учасника за протоколом Salmon." - -#~ msgid "Remote group join aborted!" -#~ msgstr "Приєднання до віддаленої спільноти перервано!" diff --git a/plugins/StrictTransportSecurity/locale/tl/LC_MESSAGES/StrictTransportSecurity.po b/plugins/StrictTransportSecurity/locale/tl/LC_MESSAGES/StrictTransportSecurity.po new file mode 100644 index 0000000000..d73c4ae0e2 --- /dev/null +++ b/plugins/StrictTransportSecurity/locale/tl/LC_MESSAGES/StrictTransportSecurity.po @@ -0,0 +1,30 @@ +# Translation of StatusNet - StrictTransportSecurity to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - StrictTransportSecurity\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:17+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:10:00+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-stricttransportsecurity\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "" +"The Strict Transport Security plugin implements the Strict Transport " +"Security header, improving the security of HTTPS only sites." +msgstr "" +"Ipinatutupad ng pampasak na Strict Transport Security ang paulo ng Strict " +"Transport Security, na nagpapainam sa kaligtasan ng mga sityong may HTTPS " +"lamang." diff --git a/plugins/TwitterBridge/locale/TwitterBridge.pot b/plugins/TwitterBridge/locale/TwitterBridge.pot index a96773b437..0d79eb7d14 100644 --- a/plugins/TwitterBridge/locale/TwitterBridge.pot +++ b/plugins/TwitterBridge/locale/TwitterBridge.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -338,11 +338,15 @@ msgstr "" msgid "Sign in with Twitter" msgstr "" -#: twitter.php:409 -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#: twitter.php:428 +msgid "Your Twitter bridge has been disabled" msgstr "" -#: twitter.php:413 +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. +#: twitter.php:435 #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/br/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/br/LC_MESSAGES/TwitterBridge.po index 944b602f14..a2f5f64bde 100644 --- a/plugins/TwitterBridge/locale/br/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/br/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:00+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Breton \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: br\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -265,9 +265,13 @@ msgstr "Kevreadenn gant ho kont Twitter" msgid "Sign in with Twitter" msgstr "Kevreañ gant Twitter" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +msgid "Your Twitter bridge has been disabled" msgstr "" +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/ca/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/ca/LC_MESSAGES/TwitterBridge.po index cedbe33bbb..472e89b89f 100644 --- a/plugins/TwitterBridge/locale/ca/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/ca/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:00+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Catalan \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ca\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -288,9 +288,14 @@ msgstr "Inicieu una sessió amb el vostre compte del Twitter" msgid "Sign in with Twitter" msgstr "Inici de sessió amb el Twitter" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "S'ha inhabilitat el vostre pont del Twitter." +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/fa/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/fa/LC_MESSAGES/TwitterBridge.po index 89e7ad869b..ad4add6436 100644 --- a/plugins/TwitterBridge/locale/fa/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/fa/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Persian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fa\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -265,9 +265,14 @@ msgstr "" msgid "Sign in with Twitter" msgstr "با حساب کاربری توییتر وارد شوید" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "پل توییتر شما غیر فعال شده است." +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/fr/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/fr/LC_MESSAGES/TwitterBridge.po index e6652cb49c..03ecdbb7bb 100644 --- a/plugins/TwitterBridge/locale/fr/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/fr/LC_MESSAGES/TwitterBridge.po @@ -10,13 +10,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: French \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: fr\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -291,9 +291,14 @@ msgstr "Connexion avec votre compte Twitter" msgid "Sign in with Twitter" msgstr "S’inscrire avec Twitter" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "Votre passerelle Twitter a été désactivée." +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/ia/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/ia/LC_MESSAGES/TwitterBridge.po index e09077575a..723c1469df 100644 --- a/plugins/TwitterBridge/locale/ia/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/ia/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Interlingua \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: ia\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -283,9 +283,14 @@ msgstr "Aperir session con tu conto de Twitter" msgid "Sign in with Twitter" msgstr "Aperir session con Twitter" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "Tu ponte a Twitter ha essite disactivate." +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/mk/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/mk/LC_MESSAGES/TwitterBridge.po index 0e98e4d321..040f13c1a7 100644 --- a/plugins/TwitterBridge/locale/mk/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/mk/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Macedonian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: mk\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -285,9 +285,14 @@ msgstr "Најава со Вашата сметка од Twitter" msgid "Sign in with Twitter" msgstr "Најава со Twitter" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "Вашиот мост до Twitter е оневозможен." +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/nl/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/nl/LC_MESSAGES/TwitterBridge.po index 3712a4a3eb..6e6106c637 100644 --- a/plugins/TwitterBridge/locale/nl/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/nl/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Dutch \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: nl\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -289,9 +289,14 @@ msgstr "Aanmelden met uw Twittergebruiker" msgid "Sign in with Twitter" msgstr "Aanmelden met Twitter" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "Uw koppeling naar Twitter is uitgeschakeld." +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/tr/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/tr/LC_MESSAGES/TwitterBridge.po index 06fa718790..917be154e9 100644 --- a/plugins/TwitterBridge/locale/tr/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/tr/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Turkish \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: tr\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -276,9 +276,14 @@ msgstr "Twitter hesabınızla giriş yapın" msgid "Sign in with Twitter" msgstr "" -msgid "Your Twitter bridge has been disabled." -msgstr "" +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" +msgstr "Twitter köprü ayarları" +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/uk/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/uk/LC_MESSAGES/TwitterBridge.po index a675c65be9..f32eecccc2 100644 --- a/plugins/TwitterBridge/locale/uk/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/uk/LC_MESSAGES/TwitterBridge.po @@ -9,13 +9,13 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:31+0000\n" "Language-Team: Ukrainian \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: uk\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -286,9 +286,14 @@ msgstr "Увійти за допомогою акаунту Twitter" msgid "Sign in with Twitter" msgstr "Увійти з акаунтом Twitter" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "Ваш місток до Twitter було відключено." +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/TwitterBridge/locale/zh_CN/LC_MESSAGES/TwitterBridge.po b/plugins/TwitterBridge/locale/zh_CN/LC_MESSAGES/TwitterBridge.po index a509129ea1..310d634aeb 100644 --- a/plugins/TwitterBridge/locale/zh_CN/LC_MESSAGES/TwitterBridge.po +++ b/plugins/TwitterBridge/locale/zh_CN/LC_MESSAGES/TwitterBridge.po @@ -10,14 +10,14 @@ msgid "" msgstr "" "Project-Id-Version: StatusNet - TwitterBridge\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2011-03-18 19:45+0000\n" -"PO-Revision-Date: 2011-03-18 19:50:01+0000\n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:32+0000\n" "Language-Team: Simplified Chinese \n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-POT-Import-Date: 2011-03-06 02:19:37+0000\n" -"X-Generator: MediaWiki 1.18alpha (r84232); Translate extension (2011-03-11)\n" +"X-POT-Import-Date: 2011-03-18 20:10:06+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" "X-Translation-Project: translatewiki.net at http://translatewiki.net\n" "X-Language-Code: zh-hans\n" "X-Message-Group: #out-statusnet-plugin-twitterbridge\n" @@ -274,9 +274,14 @@ msgstr "使用你的 Twitter 帐号登录" msgid "Sign in with Twitter" msgstr "使用 Twitter 登录" -msgid "Your Twitter bridge has been disabled." +#. TRANS: Mail subject after forwarding notices to Twitter has stopped working. +#, fuzzy +msgid "Your Twitter bridge has been disabled" msgstr "你的 Twitter bridge 已被禁用。" +#. TRANS: Mail body after forwarding notices to Twitter has stopped working. +#. TRANS: %1$ is the name of the user the mail is sent to, %2$s is a URL to the +#. TRANS: Twitter settings, %3$s is the StatusNet sitename. #, php-format msgid "" "Hi, %1$s. We're sorry to inform you that your link to Twitter has been " diff --git a/plugins/Xmpp/locale/tl/LC_MESSAGES/Xmpp.po b/plugins/Xmpp/locale/tl/LC_MESSAGES/Xmpp.po new file mode 100644 index 0000000000..c59072bcd1 --- /dev/null +++ b/plugins/Xmpp/locale/tl/LC_MESSAGES/Xmpp.po @@ -0,0 +1,35 @@ +# Translation of StatusNet - Xmpp to Tagalog (Tagalog) +# Exported from translatewiki.net +# +# Author: AnakngAraw +# -- +# This file is distributed under the same license as the StatusNet package. +# +msgid "" +msgstr "" +"Project-Id-Version: StatusNet - Xmpp\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-26 11:02+0000\n" +"PO-Revision-Date: 2011-03-26 11:07:39+0000\n" +"Language-Team: Tagalog \n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2011-03-18 20:10:10+0000\n" +"X-Generator: MediaWiki 1.18alpha (r84791); Translate extension (2011-03-11)\n" +"X-Translation-Project: translatewiki.net at http://translatewiki.net\n" +"X-Language-Code: tl\n" +"X-Message-Group: #out-statusnet-plugin-xmpp\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "Send me a message to post a notice" +msgstr "Padalhan ako ng isang mensahe upang makapagpaskil ng isang pabatid" + +msgid "XMPP/Jabber/GTalk" +msgstr "XMPP/Jabber/GTalk" + +msgid "" +"The XMPP plugin allows users to send and receive notices over the XMPP/" +"Jabber network." +msgstr "" +"Nagpapahintulot ang pampasak ng XMPP sa mga tagagamit upang makapagpadala at " +"makatanggap ng mga pabatid sa ibabaw ng kalambatan ng XMPP/Jabber." From d1d5d234f86ae9fb55a642123085c1abf2b7212e Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 14:22:24 -0400 Subject: [PATCH 35/90] upgrade Console_GetOpt to 1.9.2 --- extlib/Console/Getopt.php | 214 ++++++++++++++++++++++++++------------ 1 file changed, 145 insertions(+), 69 deletions(-) diff --git a/extlib/Console/Getopt.php b/extlib/Console/Getopt.php index bb9d69ca22..d8abfc491d 100644 --- a/extlib/Console/Getopt.php +++ b/extlib/Console/Getopt.php @@ -1,32 +1,40 @@ | -// +----------------------------------------------------------------------+ -// -// $Id: Getopt.php,v 1.4 2007/06/12 14:58:56 cellog Exp $ +/** + * PHP Version 5 + * + * Copyright (c) 1997-2004 The PHP Group + * + * This source file is subject to version 3.0 of the PHP license, + * that is bundled with this package in the file LICENSE, and is + * available through the world-wide-web at the following url: + * http://www.php.net/license/3_0.txt. + * If you did not receive a copy of the PHP license and are unable to + * obtain it through the world-wide-web, please send a note to + * license@php.net so we can mail you a copy immediately. + * + * @category Console + * @package Console_Getopt + * @author Andrei Zmievski + * @license http://www.php.net/license/3_0.txt PHP 3.0 + * @version CVS: $Id: Getopt.php 306067 2010-12-08 00:13:31Z dufuz $ + * @link http://pear.php.net/package/Console_Getopt + */ require_once 'PEAR.php'; /** * Command-line options parsing class. * - * @author Andrei Zmievski - * + * @category Console + * @package Console_Getopt + * @author Andrei Zmievski + * @license http://www.php.net/license/3_0.txt PHP 3.0 + * @link http://pear.php.net/package/Console_Getopt */ -class Console_Getopt { +class Console_Getopt +{ + /** * Parses the command-line options. * @@ -53,45 +61,60 @@ class Console_Getopt { * * Most of the semantics of this function are based on GNU getopt_long(). * - * @param array $args an array of command-line arguments - * @param string $short_options specifies the list of allowed short options - * @param array $long_options specifies the list of allowed long options + * @param array $args an array of command-line arguments + * @param string $short_options specifies the list of allowed short options + * @param array $long_options specifies the list of allowed long options + * @param boolean $skip_unknown suppresses Console_Getopt: unrecognized option * * @return array two-element array containing the list of parsed options and * the non-option arguments - * * @access public - * */ - function getopt2($args, $short_options, $long_options = null) + function getopt2($args, $short_options, $long_options = null, $skip_unknown = false) { - return Console_Getopt::doGetopt(2, $args, $short_options, $long_options); + return Console_Getopt::doGetopt(2, $args, $short_options, $long_options, $skip_unknown); } /** * This function expects $args to start with the script name (POSIX-style). * Preserved for backwards compatibility. + * + * @param array $args an array of command-line arguments + * @param string $short_options specifies the list of allowed short options + * @param array $long_options specifies the list of allowed long options + * * @see getopt2() - */ - function getopt($args, $short_options, $long_options = null) + * @return array two-element array containing the list of parsed options and + * the non-option arguments + */ + function getopt($args, $short_options, $long_options = null, $skip_unknown = false) { - return Console_Getopt::doGetopt(1, $args, $short_options, $long_options); + return Console_Getopt::doGetopt(1, $args, $short_options, $long_options, $skip_unknown); } /** * The actual implementation of the argument parsing code. + * + * @param int $version Version to use + * @param array $args an array of command-line arguments + * @param string $short_options specifies the list of allowed short options + * @param array $long_options specifies the list of allowed long options + * @param boolean $skip_unknown suppresses Console_Getopt: unrecognized option + * + * @return array */ - function doGetopt($version, $args, $short_options, $long_options = null) + function doGetopt($version, $args, $short_options, $long_options = null, $skip_unknown = false) { // in case you pass directly readPHPArgv() as the first arg if (PEAR::isError($args)) { return $args; } + if (empty($args)) { return array(array(), array()); } - $opts = array(); - $non_opts = array(); + + $non_opts = $opts = array(); settype($args, 'array'); @@ -111,7 +134,6 @@ class Console_Getopt { reset($args); while (list($i, $arg) = each($args)) { - /* The special element '--' means explicit end of options. Treat the rest of the arguments as non-options and end the loop. */ @@ -124,17 +146,27 @@ class Console_Getopt { $non_opts = array_merge($non_opts, array_slice($args, $i)); break; } elseif (strlen($arg) > 1 && $arg{1} == '-') { - $error = Console_Getopt::_parseLongOption(substr($arg, 2), $long_options, $opts, $args); - if (PEAR::isError($error)) + $error = Console_Getopt::_parseLongOption(substr($arg, 2), + $long_options, + $opts, + $args, + $skip_unknown); + if (PEAR::isError($error)) { return $error; + } } elseif ($arg == '-') { // - is stdin $non_opts = array_merge($non_opts, array_slice($args, $i)); break; } else { - $error = Console_Getopt::_parseShortOption(substr($arg, 1), $short_options, $opts, $args); - if (PEAR::isError($error)) + $error = Console_Getopt::_parseShortOption(substr($arg, 1), + $short_options, + $opts, + $args, + $skip_unknown); + if (PEAR::isError($error)) { return $error; + } } } @@ -142,19 +174,31 @@ class Console_Getopt { } /** - * @access private + * Parse short option * + * @param string $arg Argument + * @param string[] $short_options Available short options + * @param string[][] &$opts + * @param string[] &$args + * @param boolean $skip_unknown suppresses Console_Getopt: unrecognized option + * + * @access private + * @return void */ - function _parseShortOption($arg, $short_options, &$opts, &$args) + function _parseShortOption($arg, $short_options, &$opts, &$args, $skip_unknown) { for ($i = 0; $i < strlen($arg); $i++) { - $opt = $arg{$i}; + $opt = $arg{$i}; $opt_arg = null; /* Try to find the short option in the specifier string. */ - if (($spec = strstr($short_options, $opt)) === false || $arg{$i} == ':') - { - return PEAR::raiseError("Console_Getopt: unrecognized option -- $opt"); + if (($spec = strstr($short_options, $opt)) === false || $arg{$i} == ':') { + if ($skip_unknown === true) { + break; + } + + $msg = "Console_Getopt: unrecognized option -- $opt"; + return PEAR::raiseError($msg); } if (strlen($spec) > 1 && $spec{1} == ':') { @@ -173,11 +217,14 @@ class Console_Getopt { break; } else if (list(, $opt_arg) = each($args)) { /* Else use the next argument. */; - if (Console_Getopt::_isShortOpt($opt_arg) || Console_Getopt::_isLongOpt($opt_arg)) { - return PEAR::raiseError("Console_Getopt: option requires an argument -- $opt"); + if (Console_Getopt::_isShortOpt($opt_arg) + || Console_Getopt::_isLongOpt($opt_arg)) { + $msg = "option requires an argument --$opt"; + return PEAR::raiseError("Console_Getopt:" . $msg); } } else { - return PEAR::raiseError("Console_Getopt: option requires an argument -- $opt"); + $msg = "option requires an argument --$opt"; + return PEAR::raiseError("Console_Getopt:" . $msg); } } } @@ -187,36 +234,54 @@ class Console_Getopt { } /** - * @access private + * Checks if an argument is a short option * + * @param string $arg Argument to check + * + * @access private + * @return bool */ function _isShortOpt($arg) { - return strlen($arg) == 2 && $arg[0] == '-' && preg_match('/[a-zA-Z]/', $arg[1]); + return strlen($arg) == 2 && $arg[0] == '-' + && preg_match('/[a-zA-Z]/', $arg[1]); } /** - * @access private + * Checks if an argument is a long option * + * @param string $arg Argument to check + * + * @access private + * @return bool */ function _isLongOpt($arg) { return strlen($arg) > 2 && $arg[0] == '-' && $arg[1] == '-' && - preg_match('/[a-zA-Z]+$/', substr($arg, 2)); + preg_match('/[a-zA-Z]+$/', substr($arg, 2)); } /** - * @access private + * Parse long option * + * @param string $arg Argument + * @param string[] $long_options Available long options + * @param string[][] &$opts + * @param string[] &$args + * + * @access private + * @return void|PEAR_Error */ - function _parseLongOption($arg, $long_options, &$opts, &$args) + function _parseLongOption($arg, $long_options, &$opts, &$args, $skip_unknown) { @list($opt, $opt_arg) = explode('=', $arg, 2); + $opt_len = strlen($opt); for ($i = 0; $i < count($long_options); $i++) { $long_opt = $long_options[$i]; $opt_start = substr($long_opt, 0, $opt_len); + $long_opt_name = str_replace('=', '', $long_opt); /* Option doesn't match. Go on to the next one. */ @@ -224,7 +289,7 @@ class Console_Getopt { continue; } - $opt_rest = substr($long_opt, $opt_len); + $opt_rest = substr($long_opt, $opt_len); /* Check that the options uniquely matches one of the allowed options. */ @@ -233,12 +298,15 @@ class Console_Getopt { } else { $next_option_rest = ''; } + if ($opt_rest != '' && $opt{0} != '=' && $i + 1 < count($long_options) && $opt == substr($long_options[$i+1], 0, $opt_len) && $next_option_rest != '' && $next_option_rest{0} != '=') { - return PEAR::raiseError("Console_Getopt: option --$opt is ambiguous"); + + $msg = "Console_Getopt: option --$opt is ambiguous"; + return PEAR::raiseError($msg); } if (substr($long_opt, -1) == '=') { @@ -246,37 +314,47 @@ class Console_Getopt { /* Long option requires an argument. Take the next argument if one wasn't specified. */; if (!strlen($opt_arg) && !(list(, $opt_arg) = each($args))) { - return PEAR::raiseError("Console_Getopt: option --$opt requires an argument"); + $msg = "Console_Getopt: option requires an argument --$opt"; + return PEAR::raiseError($msg); } - if (Console_Getopt::_isShortOpt($opt_arg) || Console_Getopt::_isLongOpt($opt_arg)) { - return PEAR::raiseError("Console_Getopt: option requires an argument --$opt"); + + if (Console_Getopt::_isShortOpt($opt_arg) + || Console_Getopt::_isLongOpt($opt_arg)) { + $msg = "Console_Getopt: option requires an argument --$opt"; + return PEAR::raiseError($msg); } } } else if ($opt_arg) { - return PEAR::raiseError("Console_Getopt: option --$opt doesn't allow an argument"); + $msg = "Console_Getopt: option --$opt doesn't allow an argument"; + return PEAR::raiseError($msg); } $opts[] = array('--' . $opt, $opt_arg); return; } + if ($skip_unknown === true) { + return; + } + return PEAR::raiseError("Console_Getopt: unrecognized option --$opt"); } /** - * Safely read the $argv PHP array across different PHP configurations. - * Will take care on register_globals and register_argc_argv ini directives - * - * @access public - * @return mixed the $argv PHP array or PEAR error if not registered - */ + * Safely read the $argv PHP array across different PHP configurations. + * Will take care on register_globals and register_argc_argv ini directives + * + * @access public + * @return mixed the $argv PHP array or PEAR error if not registered + */ function readPHPArgv() { global $argv; if (!is_array($argv)) { if (!@is_array($_SERVER['argv'])) { if (!@is_array($GLOBALS['HTTP_SERVER_VARS']['argv'])) { - return PEAR::raiseError("Console_Getopt: Could not read cmd args (register_argc_argv=Off?)"); + $msg = "Could not read cmd args (register_argc_argv=Off?)"; + return PEAR::raiseError("Console_Getopt: " . $msg); } return $GLOBALS['HTTP_SERVER_VARS']['argv']; } @@ -285,6 +363,4 @@ class Console_Getopt { return $argv; } -} - -?> +} \ No newline at end of file From 75baffc97020a0a6c195203dbdcfd0128d8919af Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 14:37:42 -0400 Subject: [PATCH 36/90] Upgrade PEAR to 1.9.2 --- extlib/PEAR.php | 309 +++++------- extlib/PEAR/ErrorStack.php | 985 +++++++++++++++++++++++++++++++++++++ extlib/PEAR/Exception.php | 40 +- extlib/PEAR5.php | 33 ++ extlib/System.php | 621 +++++++++++++++++++++++ 5 files changed, 1782 insertions(+), 206 deletions(-) create mode 100644 extlib/PEAR/ErrorStack.php create mode 100644 extlib/PEAR5.php create mode 100644 extlib/System.php diff --git a/extlib/PEAR.php b/extlib/PEAR.php index 4c24c6006a..fec8de45cc 100644 --- a/extlib/PEAR.php +++ b/extlib/PEAR.php @@ -6,21 +6,15 @@ * * PHP versions 4 and 5 * - * LICENSE: This source file is subject to version 3.0 of the PHP license - * that is available through the world-wide-web at the following URI: - * http://www.php.net/license/3_0.txt. If you did not receive a copy of - * the PHP License and are unable to obtain it through the web, please - * send a note to license@php.net so we can mail you a copy immediately. - * * @category pear * @package PEAR * @author Sterling Hughes * @author Stig Bakken * @author Tomas V.V.Cox * @author Greg Beaver - * @copyright 1997-2008 The PHP Group - * @license http://www.php.net/license/3_0.txt PHP License 3.0 - * @version CVS: $Id: PEAR.php,v 1.104 2008/01/03 20:26:34 cellog Exp $ + * @copyright 1997-2010 The Authors + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: PEAR.php 307683 2011-01-23 21:56:12Z dufuz $ * @link http://pear.php.net/package/PEAR * @since File available since Release 0.1 */ @@ -52,15 +46,6 @@ if (substr(PHP_OS, 0, 3) == 'WIN') { define('PEAR_OS', 'Unix'); // blatant assumption } -// instant backwards compatibility -if (!defined('PATH_SEPARATOR')) { - if (OS_WINDOWS) { - define('PATH_SEPARATOR', ';'); - } else { - define('PATH_SEPARATOR', ':'); - } -} - $GLOBALS['_PEAR_default_error_mode'] = PEAR_ERROR_RETURN; $GLOBALS['_PEAR_default_error_options'] = E_USER_NOTICE; $GLOBALS['_PEAR_destructor_object_list'] = array(); @@ -92,8 +77,8 @@ $GLOBALS['_PEAR_error_handler_stack'] = array(); * @author Tomas V.V. Cox * @author Greg Beaver * @copyright 1997-2006 The PHP Group - * @license http://www.php.net/license/3_0.txt PHP License 3.0 - * @version Release: 1.7.2 + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version Release: 1.9.2 * @link http://pear.php.net/package/PEAR * @see PEAR_Error * @since Class available since PHP 4.0.2 @@ -101,8 +86,6 @@ $GLOBALS['_PEAR_error_handler_stack'] = array(); */ class PEAR { - // {{{ properties - /** * Whether to enable internal debug messages. * @@ -153,10 +136,6 @@ class PEAR */ var $_expected_errors = array(); - // }}} - - // {{{ constructor - /** * Constructor. Registers this object in * $_PEAR_destructor_object_list for destructor emulation if a @@ -173,9 +152,11 @@ class PEAR if ($this->_debug) { print "PEAR constructor called, class=$classname\n"; } + if ($error_class !== null) { $this->_error_class = $error_class; } + while ($classname && strcasecmp($classname, "pear")) { $destructor = "_$classname"; if (method_exists($this, $destructor)) { @@ -192,9 +173,6 @@ class PEAR } } - // }}} - // {{{ destructor - /** * Destructor (the emulated type of...). Does nothing right now, * but is included for forward compatibility, so subclass @@ -212,9 +190,6 @@ class PEAR } } - // }}} - // {{{ getStaticProperty() - /** * If you have a class that's mostly/entirely static, and you need static * properties, you can use this method to simulate them. Eg. in your method(s) @@ -233,15 +208,14 @@ class PEAR if (!isset($properties[$class])) { $properties[$class] = array(); } + if (!array_key_exists($var, $properties[$class])) { $properties[$class][$var] = null; } + return $properties[$class][$var]; } - // }}} - // {{{ registerShutdownFunc() - /** * Use this function to register a shutdown method for static * classes. @@ -262,9 +236,6 @@ class PEAR $GLOBALS['_PEAR_shutdown_funcs'][] = array($func, $args); } - // }}} - // {{{ isError() - /** * Tell whether a value is a PEAR error. * @@ -278,20 +249,18 @@ class PEAR */ function isError($data, $code = null) { - if (is_a($data, 'PEAR_Error')) { - if (is_null($code)) { - return true; - } elseif (is_string($code)) { - return $data->getMessage() == $code; - } else { - return $data->getCode() == $code; - } + if (!is_a($data, 'PEAR_Error')) { + return false; } - return false; - } - // }}} - // {{{ setErrorHandling() + if (is_null($code)) { + return true; + } elseif (is_string($code)) { + return $data->getMessage() == $code; + } + + return $data->getCode() == $code; + } /** * Sets how errors generated by this object should be handled. @@ -331,7 +300,6 @@ class PEAR * * @since PHP 4.0.5 */ - function setErrorHandling($mode = null, $options = null) { if (isset($this) && is_a($this, 'PEAR')) { @@ -369,9 +337,6 @@ class PEAR } } - // }}} - // {{{ expectError() - /** * This method is used to tell which errors you expect to get. * Expected errors are always returned with error mode @@ -394,12 +359,9 @@ class PEAR } else { array_push($this->_expected_errors, array($code)); } - return sizeof($this->_expected_errors); + return count($this->_expected_errors); } - // }}} - // {{{ popExpect() - /** * This method pops one element off the expected error codes * stack. @@ -411,9 +373,6 @@ class PEAR return array_pop($this->_expected_errors); } - // }}} - // {{{ _checkDelExpect() - /** * This method checks unsets an error code if available * @@ -425,8 +384,7 @@ class PEAR function _checkDelExpect($error_code) { $deleted = false; - - foreach ($this->_expected_errors AS $key => $error_array) { + foreach ($this->_expected_errors as $key => $error_array) { if (in_array($error_code, $error_array)) { unset($this->_expected_errors[$key][array_search($error_code, $error_array)]); $deleted = true; @@ -437,12 +395,10 @@ class PEAR unset($this->_expected_errors[$key]); } } + return $deleted; } - // }}} - // {{{ delExpect() - /** * This method deletes all occurences of the specified element from * the expected error codes stack. @@ -455,34 +411,26 @@ class PEAR function delExpect($error_code) { $deleted = false; - if ((is_array($error_code) && (0 != count($error_code)))) { - // $error_code is a non-empty array here; - // we walk through it trying to unset all - // values - foreach($error_code as $key => $error) { - if ($this->_checkDelExpect($error)) { - $deleted = true; - } else { - $deleted = false; - } + // $error_code is a non-empty array here; we walk through it trying + // to unset all values + foreach ($error_code as $key => $error) { + $deleted = $this->_checkDelExpect($error) ? true : false; } + return $deleted ? true : PEAR::raiseError("The expected error you submitted does not exist"); // IMPROVE ME } elseif (!empty($error_code)) { // $error_code comes alone, trying to unset it if ($this->_checkDelExpect($error_code)) { return true; - } else { - return PEAR::raiseError("The expected error you submitted does not exist"); // IMPROVE ME } - } else { - // $error_code is empty - return PEAR::raiseError("The expected error you submitted is empty"); // IMPROVE ME - } - } - // }}} - // {{{ raiseError() + return PEAR::raiseError("The expected error you submitted does not exist"); // IMPROVE ME + } + + // $error_code is empty + return PEAR::raiseError("The expected error you submitted is empty"); // IMPROVE ME + } /** * This method is a wrapper that returns an instance of the @@ -538,13 +486,20 @@ class PEAR $message = $message->getMessage(); } - if (isset($this) && isset($this->_expected_errors) && sizeof($this->_expected_errors) > 0 && sizeof($exp = end($this->_expected_errors))) { + if ( + isset($this) && + isset($this->_expected_errors) && + count($this->_expected_errors) > 0 && + count($exp = end($this->_expected_errors)) + ) { if ($exp[0] == "*" || (is_int(reset($exp)) && in_array($code, $exp)) || - (is_string(reset($exp)) && in_array($message, $exp))) { + (is_string(reset($exp)) && in_array($message, $exp)) + ) { $mode = PEAR_ERROR_RETURN; } } + // No mode given, try global ones if ($mode === null) { // Class error handler @@ -565,46 +520,52 @@ class PEAR } else { $ec = 'PEAR_Error'; } + if (intval(PHP_VERSION) < 5) { // little non-eval hack to fix bug #12147 include 'PEAR/FixPHP5PEARWarnings.php'; return $a; } + if ($skipmsg) { $a = new $ec($code, $mode, $options, $userinfo); } else { $a = new $ec($message, $code, $mode, $options, $userinfo); } + return $a; } - // }}} - // {{{ throwError() - /** * Simpler form of raiseError with fewer options. In most cases * message, code and userinfo are enough. * - * @param string $message + * @param mixed $message a text error message or a PEAR error object * + * @param int $code a numeric error code (it is up to your class + * to define these if you want to use codes) + * + * @param string $userinfo If you need to pass along for example debug + * information, this parameter is meant for that. + * + * @access public + * @return object a PEAR error object + * @see PEAR::raiseError */ - function &throwError($message = null, - $code = null, - $userinfo = null) + function &throwError($message = null, $code = null, $userinfo = null) { if (isset($this) && is_a($this, 'PEAR')) { $a = &$this->raiseError($message, $code, null, null, $userinfo); return $a; - } else { - $a = &PEAR::raiseError($message, $code, null, null, $userinfo); - return $a; } + + $a = &PEAR::raiseError($message, $code, null, null, $userinfo); + return $a; } - // }}} function staticPushErrorHandling($mode, $options = null) { - $stack = &$GLOBALS['_PEAR_error_handler_stack']; + $stack = &$GLOBALS['_PEAR_error_handler_stack']; $def_mode = &$GLOBALS['_PEAR_default_error_mode']; $def_options = &$GLOBALS['_PEAR_default_error_options']; $stack[] = array($def_mode, $def_options); @@ -673,8 +634,6 @@ class PEAR return true; } - // {{{ pushErrorHandling() - /** * Push a new error handler on top of the error handler options stack. With this * you can easily override the actual error handler for some code and restore @@ -708,9 +667,6 @@ class PEAR return true; } - // }}} - // {{{ popErrorHandling() - /** * Pop the last error handler used * @@ -732,9 +688,6 @@ class PEAR return true; } - // }}} - // {{{ loadExtension() - /** * OS independant PHP extension load. Remember to take care * on the correct extension name for case sensitive OSes. @@ -744,31 +697,38 @@ class PEAR */ function loadExtension($ext) { - if (!extension_loaded($ext)) { - // if either returns true dl() will produce a FATAL error, stop that - if ((ini_get('enable_dl') != 1) || (ini_get('safe_mode') == 1)) { - return false; - } - if (OS_WINDOWS) { - $suffix = '.dll'; - } elseif (PHP_OS == 'HP-UX') { - $suffix = '.sl'; - } elseif (PHP_OS == 'AIX') { - $suffix = '.a'; - } elseif (PHP_OS == 'OSX') { - $suffix = '.bundle'; - } else { - $suffix = '.so'; - } - return @dl('php_'.$ext.$suffix) || @dl($ext.$suffix); + if (extension_loaded($ext)) { + return true; } - return true; - } - // }}} + // if either returns true dl() will produce a FATAL error, stop that + if ( + function_exists('dl') === false || + ini_get('enable_dl') != 1 || + ini_get('safe_mode') == 1 + ) { + return false; + } + + if (OS_WINDOWS) { + $suffix = '.dll'; + } elseif (PHP_OS == 'HP-UX') { + $suffix = '.sl'; + } elseif (PHP_OS == 'AIX') { + $suffix = '.a'; + } elseif (PHP_OS == 'OSX') { + $suffix = '.bundle'; + } else { + $suffix = '.so'; + } + + return @dl('php_'.$ext.$suffix) || @dl($ext.$suffix); + } } -// {{{ _PEAR_call_destructors() +if (PEAR_ZE2) { + include_once 'PEAR5.php'; +} function _PEAR_call_destructors() { @@ -777,9 +737,16 @@ function _PEAR_call_destructors() sizeof($_PEAR_destructor_object_list)) { reset($_PEAR_destructor_object_list); - if (PEAR::getStaticProperty('PEAR', 'destructlifo')) { + if (PEAR_ZE2) { + $destructLifoExists = PEAR5::getStaticProperty('PEAR', 'destructlifo'); + } else { + $destructLifoExists = PEAR::getStaticProperty('PEAR', 'destructlifo'); + } + + if ($destructLifoExists) { $_PEAR_destructor_object_list = array_reverse($_PEAR_destructor_object_list); } + while (list($k, $objref) = each($_PEAR_destructor_object_list)) { $classname = get_class($objref); while ($classname) { @@ -798,14 +765,17 @@ function _PEAR_call_destructors() } // Now call the shutdown functions - if (is_array($GLOBALS['_PEAR_shutdown_funcs']) AND !empty($GLOBALS['_PEAR_shutdown_funcs'])) { + if ( + isset($GLOBALS['_PEAR_shutdown_funcs']) && + is_array($GLOBALS['_PEAR_shutdown_funcs']) && + !empty($GLOBALS['_PEAR_shutdown_funcs']) + ) { foreach ($GLOBALS['_PEAR_shutdown_funcs'] as $value) { call_user_func_array($value[0], $value[1]); } } } -// }}} /** * Standard PEAR error class for PHP 4 * @@ -817,16 +787,14 @@ function _PEAR_call_destructors() * @author Tomas V.V. Cox * @author Gregory Beaver * @copyright 1997-2006 The PHP Group - * @license http://www.php.net/license/3_0.txt PHP License 3.0 - * @version Release: 1.7.2 + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version Release: 1.9.2 * @link http://pear.php.net/manual/en/core.pear.pear-error.php * @see PEAR::raiseError(), PEAR::throwError() * @since Class available since PHP 4.0.2 */ class PEAR_Error { - // {{{ properties - var $error_message_prefix = ''; var $mode = PEAR_ERROR_RETURN; var $level = E_USER_NOTICE; @@ -835,9 +803,6 @@ class PEAR_Error var $userinfo = ''; var $backtrace = null; - // }}} - // {{{ constructor - /** * PEAR_Error constructor * @@ -868,12 +833,20 @@ class PEAR_Error $this->code = $code; $this->mode = $mode; $this->userinfo = $userinfo; - if (!PEAR::getStaticProperty('PEAR_Error', 'skiptrace')) { + + if (PEAR_ZE2) { + $skiptrace = PEAR5::getStaticProperty('PEAR_Error', 'skiptrace'); + } else { + $skiptrace = PEAR::getStaticProperty('PEAR_Error', 'skiptrace'); + } + + if (!$skiptrace) { $this->backtrace = debug_backtrace(); if (isset($this->backtrace[0]) && isset($this->backtrace[0]['object'])) { unset($this->backtrace[0]['object']); } } + if ($mode & PEAR_ERROR_CALLBACK) { $this->level = E_USER_NOTICE; $this->callback = $options; @@ -881,20 +854,25 @@ class PEAR_Error if ($options === null) { $options = E_USER_NOTICE; } + $this->level = $options; $this->callback = null; } + if ($this->mode & PEAR_ERROR_PRINT) { if (is_null($options) || is_int($options)) { $format = "%s"; } else { $format = $options; } + printf($format, $this->getMessage()); } + if ($this->mode & PEAR_ERROR_TRIGGER) { trigger_error($this->getMessage(), $this->level); } + if ($this->mode & PEAR_ERROR_DIE) { $msg = $this->getMessage(); if (is_null($options) || is_int($options)) { @@ -907,47 +885,39 @@ class PEAR_Error } die(sprintf($format, $msg)); } - if ($this->mode & PEAR_ERROR_CALLBACK) { - if (is_callable($this->callback)) { - call_user_func($this->callback, $this); - } + + if ($this->mode & PEAR_ERROR_CALLBACK && is_callable($this->callback)) { + call_user_func($this->callback, $this); } + if ($this->mode & PEAR_ERROR_EXCEPTION) { trigger_error("PEAR_ERROR_EXCEPTION is obsolete, use class PEAR_Exception for exceptions", E_USER_WARNING); eval('$e = new Exception($this->message, $this->code);throw($e);'); } } - // }}} - // {{{ getMode() - /** * Get the error mode from an error object. * * @return int error mode * @access public */ - function getMode() { + function getMode() + { return $this->mode; } - // }}} - // {{{ getCallback() - /** * Get the callback function/method from an error object. * * @return mixed callback function or object/method array * @access public */ - function getCallback() { + function getCallback() + { return $this->callback; } - // }}} - // {{{ getMessage() - - /** * Get the error message from an error object. * @@ -959,10 +929,6 @@ class PEAR_Error return ($this->error_message_prefix . $this->message); } - - // }}} - // {{{ getCode() - /** * Get error code from an error object * @@ -974,9 +940,6 @@ class PEAR_Error return $this->code; } - // }}} - // {{{ getType() - /** * Get the name of this error/exception. * @@ -988,9 +951,6 @@ class PEAR_Error return get_class($this); } - // }}} - // {{{ getUserInfo() - /** * Get additional user-supplied information. * @@ -1002,9 +962,6 @@ class PEAR_Error return $this->userinfo; } - // }}} - // {{{ getDebugInfo() - /** * Get additional debug information supplied by the application. * @@ -1016,9 +973,6 @@ class PEAR_Error return $this->getUserInfo(); } - // }}} - // {{{ getBacktrace() - /** * Get the call backtrace from where the error was generated. * Supported with PHP 4.3.0 or newer. @@ -1038,9 +992,6 @@ class PEAR_Error return $this->backtrace[$frame]; } - // }}} - // {{{ addUserInfo() - function addUserInfo($info) { if (empty($this->userinfo)) { @@ -1050,14 +1001,10 @@ class PEAR_Error } } - // }}} - // {{{ toString() function __toString() { return $this->getMessage(); } - // }}} - // {{{ toString() /** * Make a string representation of this object. @@ -1065,7 +1012,8 @@ class PEAR_Error * @return string a string with an object summary * @access public */ - function toString() { + function toString() + { $modes = array(); $levels = array(E_USER_NOTICE => 'notice', E_USER_WARNING => 'warning', @@ -1104,8 +1052,6 @@ class PEAR_Error $this->error_message_prefix, $this->userinfo); } - - // }}} } /* @@ -1115,4 +1061,3 @@ class PEAR_Error * c-basic-offset: 4 * End: */ -?> diff --git a/extlib/PEAR/ErrorStack.php b/extlib/PEAR/ErrorStack.php new file mode 100644 index 0000000000..3229fba520 --- /dev/null +++ b/extlib/PEAR/ErrorStack.php @@ -0,0 +1,985 @@ + + * @copyright 2004-2008 Greg Beaver + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: ErrorStack.php 307683 2011-01-23 21:56:12Z dufuz $ + * @link http://pear.php.net/package/PEAR_ErrorStack + */ + +/** + * Singleton storage + * + * Format: + *
          + * array(
          + *  'package1' => PEAR_ErrorStack object,
          + *  'package2' => PEAR_ErrorStack object,
          + *  ...
          + * )
          + * 
          + * @access private + * @global array $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'] + */ +$GLOBALS['_PEAR_ERRORSTACK_SINGLETON'] = array(); + +/** + * Global error callback (default) + * + * This is only used if set to non-false. * is the default callback for + * all packages, whereas specific packages may set a default callback + * for all instances, regardless of whether they are a singleton or not. + * + * To exclude non-singletons, only set the local callback for the singleton + * @see PEAR_ErrorStack::setDefaultCallback() + * @access private + * @global array $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'] + */ +$GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'] = array( + '*' => false, +); + +/** + * Global Log object (default) + * + * This is only used if set to non-false. Use to set a default log object for + * all stacks, regardless of instantiation order or location + * @see PEAR_ErrorStack::setDefaultLogger() + * @access private + * @global array $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] + */ +$GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] = false; + +/** + * Global Overriding Callback + * + * This callback will override any error callbacks that specific loggers have set. + * Use with EXTREME caution + * @see PEAR_ErrorStack::staticPushCallback() + * @access private + * @global array $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] + */ +$GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'] = array(); + +/**#@+ + * One of four possible return values from the error Callback + * @see PEAR_ErrorStack::_errorCallback() + */ +/** + * If this is returned, then the error will be both pushed onto the stack + * and logged. + */ +define('PEAR_ERRORSTACK_PUSHANDLOG', 1); +/** + * If this is returned, then the error will only be pushed onto the stack, + * and not logged. + */ +define('PEAR_ERRORSTACK_PUSH', 2); +/** + * If this is returned, then the error will only be logged, but not pushed + * onto the error stack. + */ +define('PEAR_ERRORSTACK_LOG', 3); +/** + * If this is returned, then the error is completely ignored. + */ +define('PEAR_ERRORSTACK_IGNORE', 4); +/** + * If this is returned, then the error is logged and die() is called. + */ +define('PEAR_ERRORSTACK_DIE', 5); +/**#@-*/ + +/** + * Error code for an attempt to instantiate a non-class as a PEAR_ErrorStack in + * the singleton method. + */ +define('PEAR_ERRORSTACK_ERR_NONCLASS', 1); + +/** + * Error code for an attempt to pass an object into {@link PEAR_ErrorStack::getMessage()} + * that has no __toString() method + */ +define('PEAR_ERRORSTACK_ERR_OBJTOSTRING', 2); +/** + * Error Stack Implementation + * + * Usage: + * + * // global error stack + * $global_stack = &PEAR_ErrorStack::singleton('MyPackage'); + * // local error stack + * $local_stack = new PEAR_ErrorStack('MyPackage'); + * + * @author Greg Beaver + * @version 1.9.2 + * @package PEAR_ErrorStack + * @category Debugging + * @copyright 2004-2008 Greg Beaver + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: ErrorStack.php 307683 2011-01-23 21:56:12Z dufuz $ + * @link http://pear.php.net/package/PEAR_ErrorStack + */ +class PEAR_ErrorStack { + /** + * Errors are stored in the order that they are pushed on the stack. + * @since 0.4alpha Errors are no longer organized by error level. + * This renders pop() nearly unusable, and levels could be more easily + * handled in a callback anyway + * @var array + * @access private + */ + var $_errors = array(); + + /** + * Storage of errors by level. + * + * Allows easy retrieval and deletion of only errors from a particular level + * @since PEAR 1.4.0dev + * @var array + * @access private + */ + var $_errorsByLevel = array(); + + /** + * Package name this error stack represents + * @var string + * @access protected + */ + var $_package; + + /** + * Determines whether a PEAR_Error is thrown upon every error addition + * @var boolean + * @access private + */ + var $_compat = false; + + /** + * If set to a valid callback, this will be used to generate the error + * message from the error code, otherwise the message passed in will be + * used + * @var false|string|array + * @access private + */ + var $_msgCallback = false; + + /** + * If set to a valid callback, this will be used to generate the error + * context for an error. For PHP-related errors, this will be a file + * and line number as retrieved from debug_backtrace(), but can be + * customized for other purposes. The error might actually be in a separate + * configuration file, or in a database query. + * @var false|string|array + * @access protected + */ + var $_contextCallback = false; + + /** + * If set to a valid callback, this will be called every time an error + * is pushed onto the stack. The return value will be used to determine + * whether to allow an error to be pushed or logged. + * + * The return value must be one an PEAR_ERRORSTACK_* constant + * @see PEAR_ERRORSTACK_PUSHANDLOG, PEAR_ERRORSTACK_PUSH, PEAR_ERRORSTACK_LOG + * @var false|string|array + * @access protected + */ + var $_errorCallback = array(); + + /** + * PEAR::Log object for logging errors + * @var false|Log + * @access protected + */ + var $_logger = false; + + /** + * Error messages - designed to be overridden + * @var array + * @abstract + */ + var $_errorMsgs = array(); + + /** + * Set up a new error stack + * + * @param string $package name of the package this error stack represents + * @param callback $msgCallback callback used for error message generation + * @param callback $contextCallback callback used for context generation, + * defaults to {@link getFileLine()} + * @param boolean $throwPEAR_Error + */ + function PEAR_ErrorStack($package, $msgCallback = false, $contextCallback = false, + $throwPEAR_Error = false) + { + $this->_package = $package; + $this->setMessageCallback($msgCallback); + $this->setContextCallback($contextCallback); + $this->_compat = $throwPEAR_Error; + } + + /** + * Return a single error stack for this package. + * + * Note that all parameters are ignored if the stack for package $package + * has already been instantiated + * @param string $package name of the package this error stack represents + * @param callback $msgCallback callback used for error message generation + * @param callback $contextCallback callback used for context generation, + * defaults to {@link getFileLine()} + * @param boolean $throwPEAR_Error + * @param string $stackClass class to instantiate + * @static + * @return PEAR_ErrorStack + */ + function &singleton($package, $msgCallback = false, $contextCallback = false, + $throwPEAR_Error = false, $stackClass = 'PEAR_ErrorStack') + { + if (isset($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package])) { + return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]; + } + if (!class_exists($stackClass)) { + if (function_exists('debug_backtrace')) { + $trace = debug_backtrace(); + } + PEAR_ErrorStack::staticPush('PEAR_ErrorStack', PEAR_ERRORSTACK_ERR_NONCLASS, + 'exception', array('stackclass' => $stackClass), + 'stack class "%stackclass%" is not a valid class name (should be like PEAR_ErrorStack)', + false, $trace); + } + $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package] = + new $stackClass($package, $msgCallback, $contextCallback, $throwPEAR_Error); + + return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]; + } + + /** + * Internal error handler for PEAR_ErrorStack class + * + * Dies if the error is an exception (and would have died anyway) + * @access private + */ + function _handleError($err) + { + if ($err['level'] == 'exception') { + $message = $err['message']; + if (isset($_SERVER['REQUEST_URI'])) { + echo '
          '; + } else { + echo "\n"; + } + var_dump($err['context']); + die($message); + } + } + + /** + * Set up a PEAR::Log object for all error stacks that don't have one + * @param Log $log + * @static + */ + function setDefaultLogger(&$log) + { + if (is_object($log) && method_exists($log, 'log') ) { + $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] = &$log; + } elseif (is_callable($log)) { + $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER'] = &$log; + } + } + + /** + * Set up a PEAR::Log object for this error stack + * @param Log $log + */ + function setLogger(&$log) + { + if (is_object($log) && method_exists($log, 'log') ) { + $this->_logger = &$log; + } elseif (is_callable($log)) { + $this->_logger = &$log; + } + } + + /** + * Set an error code => error message mapping callback + * + * This method sets the callback that can be used to generate error + * messages for any instance + * @param array|string Callback function/method + */ + function setMessageCallback($msgCallback) + { + if (!$msgCallback) { + $this->_msgCallback = array(&$this, 'getErrorMessage'); + } else { + if (is_callable($msgCallback)) { + $this->_msgCallback = $msgCallback; + } + } + } + + /** + * Get an error code => error message mapping callback + * + * This method returns the current callback that can be used to generate error + * messages + * @return array|string|false Callback function/method or false if none + */ + function getMessageCallback() + { + return $this->_msgCallback; + } + + /** + * Sets a default callback to be used by all error stacks + * + * This method sets the callback that can be used to generate error + * messages for a singleton + * @param array|string Callback function/method + * @param string Package name, or false for all packages + * @static + */ + function setDefaultCallback($callback = false, $package = false) + { + if (!is_callable($callback)) { + $callback = false; + } + $package = $package ? $package : '*'; + $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'][$package] = $callback; + } + + /** + * Set a callback that generates context information (location of error) for an error stack + * + * This method sets the callback that can be used to generate context + * information for an error. Passing in NULL will disable context generation + * and remove the expensive call to debug_backtrace() + * @param array|string|null Callback function/method + */ + function setContextCallback($contextCallback) + { + if ($contextCallback === null) { + return $this->_contextCallback = false; + } + if (!$contextCallback) { + $this->_contextCallback = array(&$this, 'getFileLine'); + } else { + if (is_callable($contextCallback)) { + $this->_contextCallback = $contextCallback; + } + } + } + + /** + * Set an error Callback + * If set to a valid callback, this will be called every time an error + * is pushed onto the stack. The return value will be used to determine + * whether to allow an error to be pushed or logged. + * + * The return value must be one of the ERRORSTACK_* constants. + * + * This functionality can be used to emulate PEAR's pushErrorHandling, and + * the PEAR_ERROR_CALLBACK mode, without affecting the integrity of + * the error stack or logging + * @see PEAR_ERRORSTACK_PUSHANDLOG, PEAR_ERRORSTACK_PUSH, PEAR_ERRORSTACK_LOG + * @see popCallback() + * @param string|array $cb + */ + function pushCallback($cb) + { + array_push($this->_errorCallback, $cb); + } + + /** + * Remove a callback from the error callback stack + * @see pushCallback() + * @return array|string|false + */ + function popCallback() + { + if (!count($this->_errorCallback)) { + return false; + } + return array_pop($this->_errorCallback); + } + + /** + * Set a temporary overriding error callback for every package error stack + * + * Use this to temporarily disable all existing callbacks (can be used + * to emulate the @ operator, for instance) + * @see PEAR_ERRORSTACK_PUSHANDLOG, PEAR_ERRORSTACK_PUSH, PEAR_ERRORSTACK_LOG + * @see staticPopCallback(), pushCallback() + * @param string|array $cb + * @static + */ + function staticPushCallback($cb) + { + array_push($GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'], $cb); + } + + /** + * Remove a temporary overriding error callback + * @see staticPushCallback() + * @return array|string|false + * @static + */ + function staticPopCallback() + { + $ret = array_pop($GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK']); + if (!is_array($GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'])) { + $GLOBALS['_PEAR_ERRORSTACK_OVERRIDE_CALLBACK'] = array(); + } + return $ret; + } + + /** + * Add an error to the stack + * + * If the message generator exists, it is called with 2 parameters. + * - the current Error Stack object + * - an array that is in the same format as an error. Available indices + * are 'code', 'package', 'time', 'params', 'level', and 'context' + * + * Next, if the error should contain context information, this is + * handled by the context grabbing method. + * Finally, the error is pushed onto the proper error stack + * @param int $code Package-specific error code + * @param string $level Error level. This is NOT spell-checked + * @param array $params associative array of error parameters + * @param string $msg Error message, or a portion of it if the message + * is to be generated + * @param array $repackage If this error re-packages an error pushed by + * another package, place the array returned from + * {@link pop()} in this parameter + * @param array $backtrace Protected parameter: use this to pass in the + * {@link debug_backtrace()} that should be used + * to find error context + * @return PEAR_Error|array if compatibility mode is on, a PEAR_Error is also + * thrown. If a PEAR_Error is returned, the userinfo + * property is set to the following array: + * + * + * array( + * 'code' => $code, + * 'params' => $params, + * 'package' => $this->_package, + * 'level' => $level, + * 'time' => time(), + * 'context' => $context, + * 'message' => $msg, + * //['repackage' => $err] repackaged error array/Exception class + * ); + * + * + * Normally, the previous array is returned. + */ + function push($code, $level = 'error', $params = array(), $msg = false, + $repackage = false, $backtrace = false) + { + $context = false; + // grab error context + if ($this->_contextCallback) { + if (!$backtrace) { + $backtrace = debug_backtrace(); + } + $context = call_user_func($this->_contextCallback, $code, $params, $backtrace); + } + + // save error + $time = explode(' ', microtime()); + $time = $time[1] + $time[0]; + $err = array( + 'code' => $code, + 'params' => $params, + 'package' => $this->_package, + 'level' => $level, + 'time' => $time, + 'context' => $context, + 'message' => $msg, + ); + + if ($repackage) { + $err['repackage'] = $repackage; + } + + // set up the error message, if necessary + if ($this->_msgCallback) { + $msg = call_user_func_array($this->_msgCallback, + array(&$this, $err)); + $err['message'] = $msg; + } + $push = $log = true; + $die = false; + // try the overriding callback first + $callback = $this->staticPopCallback(); + if ($callback) { + $this->staticPushCallback($callback); + } + if (!is_callable($callback)) { + // try the local callback next + $callback = $this->popCallback(); + if (is_callable($callback)) { + $this->pushCallback($callback); + } else { + // try the default callback + $callback = isset($GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'][$this->_package]) ? + $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK'][$this->_package] : + $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_CALLBACK']['*']; + } + } + if (is_callable($callback)) { + switch(call_user_func($callback, $err)){ + case PEAR_ERRORSTACK_IGNORE: + return $err; + break; + case PEAR_ERRORSTACK_PUSH: + $log = false; + break; + case PEAR_ERRORSTACK_LOG: + $push = false; + break; + case PEAR_ERRORSTACK_DIE: + $die = true; + break; + // anything else returned has the same effect as pushandlog + } + } + if ($push) { + array_unshift($this->_errors, $err); + if (!isset($this->_errorsByLevel[$err['level']])) { + $this->_errorsByLevel[$err['level']] = array(); + } + $this->_errorsByLevel[$err['level']][] = &$this->_errors[0]; + } + if ($log) { + if ($this->_logger || $GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER']) { + $this->_log($err); + } + } + if ($die) { + die(); + } + if ($this->_compat && $push) { + return $this->raiseError($msg, $code, null, null, $err); + } + return $err; + } + + /** + * Static version of {@link push()} + * + * @param string $package Package name this error belongs to + * @param int $code Package-specific error code + * @param string $level Error level. This is NOT spell-checked + * @param array $params associative array of error parameters + * @param string $msg Error message, or a portion of it if the message + * is to be generated + * @param array $repackage If this error re-packages an error pushed by + * another package, place the array returned from + * {@link pop()} in this parameter + * @param array $backtrace Protected parameter: use this to pass in the + * {@link debug_backtrace()} that should be used + * to find error context + * @return PEAR_Error|array if compatibility mode is on, a PEAR_Error is also + * thrown. see docs for {@link push()} + * @static + */ + function staticPush($package, $code, $level = 'error', $params = array(), + $msg = false, $repackage = false, $backtrace = false) + { + $s = &PEAR_ErrorStack::singleton($package); + if ($s->_contextCallback) { + if (!$backtrace) { + if (function_exists('debug_backtrace')) { + $backtrace = debug_backtrace(); + } + } + } + return $s->push($code, $level, $params, $msg, $repackage, $backtrace); + } + + /** + * Log an error using PEAR::Log + * @param array $err Error array + * @param array $levels Error level => Log constant map + * @access protected + */ + function _log($err) + { + if ($this->_logger) { + $logger = &$this->_logger; + } else { + $logger = &$GLOBALS['_PEAR_ERRORSTACK_DEFAULT_LOGGER']; + } + if (is_a($logger, 'Log')) { + $levels = array( + 'exception' => PEAR_LOG_CRIT, + 'alert' => PEAR_LOG_ALERT, + 'critical' => PEAR_LOG_CRIT, + 'error' => PEAR_LOG_ERR, + 'warning' => PEAR_LOG_WARNING, + 'notice' => PEAR_LOG_NOTICE, + 'info' => PEAR_LOG_INFO, + 'debug' => PEAR_LOG_DEBUG); + if (isset($levels[$err['level']])) { + $level = $levels[$err['level']]; + } else { + $level = PEAR_LOG_INFO; + } + $logger->log($err['message'], $level, $err); + } else { // support non-standard logs + call_user_func($logger, $err); + } + } + + + /** + * Pop an error off of the error stack + * + * @return false|array + * @since 0.4alpha it is no longer possible to specify a specific error + * level to return - the last error pushed will be returned, instead + */ + function pop() + { + $err = @array_shift($this->_errors); + if (!is_null($err)) { + @array_pop($this->_errorsByLevel[$err['level']]); + if (!count($this->_errorsByLevel[$err['level']])) { + unset($this->_errorsByLevel[$err['level']]); + } + } + return $err; + } + + /** + * Pop an error off of the error stack, static method + * + * @param string package name + * @return boolean + * @since PEAR1.5.0a1 + */ + function staticPop($package) + { + if ($package) { + if (!isset($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package])) { + return false; + } + return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]->pop(); + } + } + + /** + * Determine whether there are any errors on the stack + * @param string|array Level name. Use to determine if any errors + * of level (string), or levels (array) have been pushed + * @return boolean + */ + function hasErrors($level = false) + { + if ($level) { + return isset($this->_errorsByLevel[$level]); + } + return count($this->_errors); + } + + /** + * Retrieve all errors since last purge + * + * @param boolean set in order to empty the error stack + * @param string level name, to return only errors of a particular severity + * @return array + */ + function getErrors($purge = false, $level = false) + { + if (!$purge) { + if ($level) { + if (!isset($this->_errorsByLevel[$level])) { + return array(); + } else { + return $this->_errorsByLevel[$level]; + } + } else { + return $this->_errors; + } + } + if ($level) { + $ret = $this->_errorsByLevel[$level]; + foreach ($this->_errorsByLevel[$level] as $i => $unused) { + // entries are references to the $_errors array + $this->_errorsByLevel[$level][$i] = false; + } + // array_filter removes all entries === false + $this->_errors = array_filter($this->_errors); + unset($this->_errorsByLevel[$level]); + return $ret; + } + $ret = $this->_errors; + $this->_errors = array(); + $this->_errorsByLevel = array(); + return $ret; + } + + /** + * Determine whether there are any errors on a single error stack, or on any error stack + * + * The optional parameter can be used to test the existence of any errors without the need of + * singleton instantiation + * @param string|false Package name to check for errors + * @param string Level name to check for a particular severity + * @return boolean + * @static + */ + function staticHasErrors($package = false, $level = false) + { + if ($package) { + if (!isset($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package])) { + return false; + } + return $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]->hasErrors($level); + } + foreach ($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'] as $package => $obj) { + if ($obj->hasErrors($level)) { + return true; + } + } + return false; + } + + /** + * Get a list of all errors since last purge, organized by package + * @since PEAR 1.4.0dev BC break! $level is now in the place $merge used to be + * @param boolean $purge Set to purge the error stack of existing errors + * @param string $level Set to a level name in order to retrieve only errors of a particular level + * @param boolean $merge Set to return a flat array, not organized by package + * @param array $sortfunc Function used to sort a merged array - default + * sorts by time, and should be good for most cases + * @static + * @return array + */ + function staticGetErrors($purge = false, $level = false, $merge = false, + $sortfunc = array('PEAR_ErrorStack', '_sortErrors')) + { + $ret = array(); + if (!is_callable($sortfunc)) { + $sortfunc = array('PEAR_ErrorStack', '_sortErrors'); + } + foreach ($GLOBALS['_PEAR_ERRORSTACK_SINGLETON'] as $package => $obj) { + $test = $GLOBALS['_PEAR_ERRORSTACK_SINGLETON'][$package]->getErrors($purge, $level); + if ($test) { + if ($merge) { + $ret = array_merge($ret, $test); + } else { + $ret[$package] = $test; + } + } + } + if ($merge) { + usort($ret, $sortfunc); + } + return $ret; + } + + /** + * Error sorting function, sorts by time + * @access private + */ + function _sortErrors($a, $b) + { + if ($a['time'] == $b['time']) { + return 0; + } + if ($a['time'] < $b['time']) { + return 1; + } + return -1; + } + + /** + * Standard file/line number/function/class context callback + * + * This function uses a backtrace generated from {@link debug_backtrace()} + * and so will not work at all in PHP < 4.3.0. The frame should + * reference the frame that contains the source of the error. + * @return array|false either array('file' => file, 'line' => line, + * 'function' => function name, 'class' => class name) or + * if this doesn't work, then false + * @param unused + * @param integer backtrace frame. + * @param array Results of debug_backtrace() + * @static + */ + function getFileLine($code, $params, $backtrace = null) + { + if ($backtrace === null) { + return false; + } + $frame = 0; + $functionframe = 1; + if (!isset($backtrace[1])) { + $functionframe = 0; + } else { + while (isset($backtrace[$functionframe]['function']) && + $backtrace[$functionframe]['function'] == 'eval' && + isset($backtrace[$functionframe + 1])) { + $functionframe++; + } + } + if (isset($backtrace[$frame])) { + if (!isset($backtrace[$frame]['file'])) { + $frame++; + } + $funcbacktrace = $backtrace[$functionframe]; + $filebacktrace = $backtrace[$frame]; + $ret = array('file' => $filebacktrace['file'], + 'line' => $filebacktrace['line']); + // rearrange for eval'd code or create function errors + if (strpos($filebacktrace['file'], '(') && + preg_match(';^(.*?)\((\d+)\) : (.*?)\\z;', $filebacktrace['file'], + $matches)) { + $ret['file'] = $matches[1]; + $ret['line'] = $matches[2] + 0; + } + if (isset($funcbacktrace['function']) && isset($backtrace[1])) { + if ($funcbacktrace['function'] != 'eval') { + if ($funcbacktrace['function'] == '__lambda_func') { + $ret['function'] = 'create_function() code'; + } else { + $ret['function'] = $funcbacktrace['function']; + } + } + } + if (isset($funcbacktrace['class']) && isset($backtrace[1])) { + $ret['class'] = $funcbacktrace['class']; + } + return $ret; + } + return false; + } + + /** + * Standard error message generation callback + * + * This method may also be called by a custom error message generator + * to fill in template values from the params array, simply + * set the third parameter to the error message template string to use + * + * The special variable %__msg% is reserved: use it only to specify + * where a message passed in by the user should be placed in the template, + * like so: + * + * Error message: %msg% - internal error + * + * If the message passed like so: + * + * + * $stack->push(ERROR_CODE, 'error', array(), 'server error 500'); + * + * + * The returned error message will be "Error message: server error 500 - + * internal error" + * @param PEAR_ErrorStack + * @param array + * @param string|false Pre-generated error message template + * @static + * @return string + */ + function getErrorMessage(&$stack, $err, $template = false) + { + if ($template) { + $mainmsg = $template; + } else { + $mainmsg = $stack->getErrorMessageTemplate($err['code']); + } + $mainmsg = str_replace('%__msg%', $err['message'], $mainmsg); + if (is_array($err['params']) && count($err['params'])) { + foreach ($err['params'] as $name => $val) { + if (is_array($val)) { + // @ is needed in case $val is a multi-dimensional array + $val = @implode(', ', $val); + } + if (is_object($val)) { + if (method_exists($val, '__toString')) { + $val = $val->__toString(); + } else { + PEAR_ErrorStack::staticPush('PEAR_ErrorStack', PEAR_ERRORSTACK_ERR_OBJTOSTRING, + 'warning', array('obj' => get_class($val)), + 'object %obj% passed into getErrorMessage, but has no __toString() method'); + $val = 'Object'; + } + } + $mainmsg = str_replace('%' . $name . '%', $val, $mainmsg); + } + } + return $mainmsg; + } + + /** + * Standard Error Message Template generator from code + * @return string + */ + function getErrorMessageTemplate($code) + { + if (!isset($this->_errorMsgs[$code])) { + return '%__msg%'; + } + return $this->_errorMsgs[$code]; + } + + /** + * Set the Error Message Template array + * + * The array format must be: + *
          +     * array(error code => 'message template',...)
          +     * 
          + * + * Error message parameters passed into {@link push()} will be used as input + * for the error message. If the template is 'message %foo% was %bar%', and the + * parameters are array('foo' => 'one', 'bar' => 'six'), the error message returned will + * be 'message one was six' + * @return string + */ + function setErrorMessageTemplate($template) + { + $this->_errorMsgs = $template; + } + + + /** + * emulate PEAR::raiseError() + * + * @return PEAR_Error + */ + function raiseError() + { + require_once 'PEAR.php'; + $args = func_get_args(); + return call_user_func_array(array('PEAR', 'raiseError'), $args); + } +} +$stack = &PEAR_ErrorStack::singleton('PEAR_ErrorStack'); +$stack->pushCallback(array('PEAR_ErrorStack', '_handleError')); +?> diff --git a/extlib/PEAR/Exception.php b/extlib/PEAR/Exception.php index b3d75b20c9..d0327b141b 100644 --- a/extlib/PEAR/Exception.php +++ b/extlib/PEAR/Exception.php @@ -5,21 +5,15 @@ * * PHP versions 4 and 5 * - * LICENSE: This source file is subject to version 3.0 of the PHP license - * that is available through the world-wide-web at the following URI: - * http://www.php.net/license/3_0.txt. If you did not receive a copy of - * the PHP License and are unable to obtain it through the web, please - * send a note to license@php.net so we can mail you a copy immediately. - * * @category pear * @package PEAR * @author Tomas V. V. Cox * @author Hans Lellelid * @author Bertrand Mansion * @author Greg Beaver - * @copyright 1997-2008 The PHP Group - * @license http://www.php.net/license/3_0.txt PHP License 3.0 - * @version CVS: $Id: Exception.php,v 1.29 2008/01/03 20:26:35 cellog Exp $ + * @copyright 1997-2009 The Authors + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: Exception.php 307683 2011-01-23 21:56:12Z dufuz $ * @link http://pear.php.net/package/PEAR * @since File available since Release 1.3.3 */ @@ -93,9 +87,9 @@ * @author Hans Lellelid * @author Bertrand Mansion * @author Greg Beaver - * @copyright 1997-2008 The PHP Group - * @license http://www.php.net/license/3_0.txt PHP License 3.0 - * @version Release: 1.7.2 + * @copyright 1997-2009 The Authors + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version Release: 1.9.2 * @link http://pear.php.net/package/PEAR * @since Class available since Release 1.3.3 * @@ -295,7 +289,7 @@ class PEAR_Exception extends Exception } public function getTraceSafe() - { + { if (!isset($this->_trace)) { $this->_trace = $this->getTrace(); if (empty($this->_trace)) { @@ -331,21 +325,21 @@ class PEAR_Exception extends Exception $trace = $this->getTraceSafe(); $causes = array(); $this->getCauseMessage($causes); - $html = '' . "\n"; + $html = '
          ' . "\n"; foreach ($causes as $i => $cause) { - $html .= '\n"; } - $html .= '' . "\n" - . '' - . '' - . '' . "\n"; + $html .= '' . "\n" + . '' + . '' + . '' . "\n"; foreach ($trace as $k => $v) { - $html .= '' + $html .= '' . '' . "\n"; } - $html .= '' + $html .= '' . '' . '' . "\n" . '
          ' + $html .= '
          ' . str_repeat('-', $i) . ' ' . $cause['class'] . ': ' . htmlspecialchars($cause['message']) . ' in ' . $cause['file'] . ' ' . 'on line ' . $cause['line'] . '' . "
          Exception trace
          #FunctionLocation
          Exception trace
          #FunctionLocation
          ' . $k . '
          ' . $k . ''; if (!empty($v['class'])) { $html .= $v['class'] . $v['type']; @@ -373,7 +367,7 @@ class PEAR_Exception extends Exception . ':' . (isset($v['line']) ? $v['line'] : 'unknown') . '
          ' . ($k+1) . '
          ' . ($k+1) . '{main} 
          '; @@ -392,6 +386,4 @@ class PEAR_Exception extends Exception } return $causeMsg . $this->getTraceAsString(); } -} - -?> \ No newline at end of file +} \ No newline at end of file diff --git a/extlib/PEAR5.php b/extlib/PEAR5.php new file mode 100644 index 0000000000..428606780b --- /dev/null +++ b/extlib/PEAR5.php @@ -0,0 +1,33 @@ + + * @copyright 1997-2009 The Authors + * @license http://opensource.org/licenses/bsd-license.php New BSD License + * @version CVS: $Id: System.php 307683 2011-01-23 21:56:12Z dufuz $ + * @link http://pear.php.net/package/PEAR + * @since File available since Release 0.1 + */ + +/** + * base class + */ +require_once 'PEAR.php'; +require_once 'Console/Getopt.php'; + +$GLOBALS['_System_temp_files'] = array(); + +/** +* System offers cross plattform compatible system functions +* +* Static functions for different operations. Should work under +* Unix and Windows. The names and usage has been taken from its respectively +* GNU commands. The functions will return (bool) false on error and will +* trigger the error with the PHP trigger_error() function (you can silence +* the error by prefixing a '@' sign after the function call, but this +* is not recommended practice. Instead use an error handler with +* {@link set_error_handler()}). +* +* Documentation on this class you can find in: +* http://pear.php.net/manual/ +* +* Example usage: +* if (!@System::rm('-r file1 dir1')) { +* print "could not delete file1 or dir1"; +* } +* +* In case you need to to pass file names with spaces, +* pass the params as an array: +* +* System::rm(array('-r', $file1, $dir1)); +* +* @category pear +* @package System +* @author Tomas V.V. Cox +* @copyright 1997-2006 The PHP Group +* @license http://opensource.org/licenses/bsd-license.php New BSD License +* @version Release: 1.9.2 +* @link http://pear.php.net/package/PEAR +* @since Class available since Release 0.1 +* @static +*/ +class System +{ + /** + * returns the commandline arguments of a function + * + * @param string $argv the commandline + * @param string $short_options the allowed option short-tags + * @param string $long_options the allowed option long-tags + * @return array the given options and there values + * @static + * @access private + */ + function _parseArgs($argv, $short_options, $long_options = null) + { + if (!is_array($argv) && $argv !== null) { + $argv = preg_split('/\s+/', $argv, -1, PREG_SPLIT_NO_EMPTY); + } + return Console_Getopt::getopt2($argv, $short_options); + } + + /** + * Output errors with PHP trigger_error(). You can silence the errors + * with prefixing a "@" sign to the function call: @System::mkdir(..); + * + * @param mixed $error a PEAR error or a string with the error message + * @return bool false + * @static + * @access private + */ + function raiseError($error) + { + if (PEAR::isError($error)) { + $error = $error->getMessage(); + } + trigger_error($error, E_USER_WARNING); + return false; + } + + /** + * Creates a nested array representing the structure of a directory + * + * System::_dirToStruct('dir1', 0) => + * Array + * ( + * [dirs] => Array + * ( + * [0] => dir1 + * ) + * + * [files] => Array + * ( + * [0] => dir1/file2 + * [1] => dir1/file3 + * ) + * ) + * @param string $sPath Name of the directory + * @param integer $maxinst max. deep of the lookup + * @param integer $aktinst starting deep of the lookup + * @param bool $silent if true, do not emit errors. + * @return array the structure of the dir + * @static + * @access private + */ + function _dirToStruct($sPath, $maxinst, $aktinst = 0, $silent = false) + { + $struct = array('dirs' => array(), 'files' => array()); + if (($dir = @opendir($sPath)) === false) { + if (!$silent) { + System::raiseError("Could not open dir $sPath"); + } + return $struct; // XXX could not open error + } + + $struct['dirs'][] = $sPath = realpath($sPath); // XXX don't add if '.' or '..' ? + $list = array(); + while (false !== ($file = readdir($dir))) { + if ($file != '.' && $file != '..') { + $list[] = $file; + } + } + + closedir($dir); + natsort($list); + if ($aktinst < $maxinst || $maxinst == 0) { + foreach ($list as $val) { + $path = $sPath . DIRECTORY_SEPARATOR . $val; + if (is_dir($path) && !is_link($path)) { + $tmp = System::_dirToStruct($path, $maxinst, $aktinst+1, $silent); + $struct = array_merge_recursive($struct, $tmp); + } else { + $struct['files'][] = $path; + } + } + } + + return $struct; + } + + /** + * Creates a nested array representing the structure of a directory and files + * + * @param array $files Array listing files and dirs + * @return array + * @static + * @see System::_dirToStruct() + */ + function _multipleToStruct($files) + { + $struct = array('dirs' => array(), 'files' => array()); + settype($files, 'array'); + foreach ($files as $file) { + if (is_dir($file) && !is_link($file)) { + $tmp = System::_dirToStruct($file, 0); + $struct = array_merge_recursive($tmp, $struct); + } else { + if (!in_array($file, $struct['files'])) { + $struct['files'][] = $file; + } + } + } + return $struct; + } + + /** + * The rm command for removing files. + * Supports multiple files and dirs and also recursive deletes + * + * @param string $args the arguments for rm + * @return mixed PEAR_Error or true for success + * @static + * @access public + */ + function rm($args) + { + $opts = System::_parseArgs($args, 'rf'); // "f" does nothing but I like it :-) + if (PEAR::isError($opts)) { + return System::raiseError($opts); + } + foreach ($opts[0] as $opt) { + if ($opt[0] == 'r') { + $do_recursive = true; + } + } + $ret = true; + if (isset($do_recursive)) { + $struct = System::_multipleToStruct($opts[1]); + foreach ($struct['files'] as $file) { + if (!@unlink($file)) { + $ret = false; + } + } + + rsort($struct['dirs']); + foreach ($struct['dirs'] as $dir) { + if (!@rmdir($dir)) { + $ret = false; + } + } + } else { + foreach ($opts[1] as $file) { + $delete = (is_dir($file)) ? 'rmdir' : 'unlink'; + if (!@$delete($file)) { + $ret = false; + } + } + } + return $ret; + } + + /** + * Make directories. + * + * The -p option will create parent directories + * @param string $args the name of the director(y|ies) to create + * @return bool True for success + * @static + * @access public + */ + function mkDir($args) + { + $opts = System::_parseArgs($args, 'pm:'); + if (PEAR::isError($opts)) { + return System::raiseError($opts); + } + + $mode = 0777; // default mode + foreach ($opts[0] as $opt) { + if ($opt[0] == 'p') { + $create_parents = true; + } elseif ($opt[0] == 'm') { + // if the mode is clearly an octal number (starts with 0) + // convert it to decimal + if (strlen($opt[1]) && $opt[1]{0} == '0') { + $opt[1] = octdec($opt[1]); + } else { + // convert to int + $opt[1] += 0; + } + $mode = $opt[1]; + } + } + + $ret = true; + if (isset($create_parents)) { + foreach ($opts[1] as $dir) { + $dirstack = array(); + while ((!file_exists($dir) || !is_dir($dir)) && + $dir != DIRECTORY_SEPARATOR) { + array_unshift($dirstack, $dir); + $dir = dirname($dir); + } + + while ($newdir = array_shift($dirstack)) { + if (!is_writeable(dirname($newdir))) { + $ret = false; + break; + } + + if (!mkdir($newdir, $mode)) { + $ret = false; + } + } + } + } else { + foreach($opts[1] as $dir) { + if ((@file_exists($dir) || !is_dir($dir)) && !mkdir($dir, $mode)) { + $ret = false; + } + } + } + + return $ret; + } + + /** + * Concatenate files + * + * Usage: + * 1) $var = System::cat('sample.txt test.txt'); + * 2) System::cat('sample.txt test.txt > final.txt'); + * 3) System::cat('sample.txt test.txt >> final.txt'); + * + * Note: as the class use fopen, urls should work also (test that) + * + * @param string $args the arguments + * @return boolean true on success + * @static + * @access public + */ + function &cat($args) + { + $ret = null; + $files = array(); + if (!is_array($args)) { + $args = preg_split('/\s+/', $args, -1, PREG_SPLIT_NO_EMPTY); + } + + $count_args = count($args); + for ($i = 0; $i < $count_args; $i++) { + if ($args[$i] == '>') { + $mode = 'wb'; + $outputfile = $args[$i+1]; + break; + } elseif ($args[$i] == '>>') { + $mode = 'ab+'; + $outputfile = $args[$i+1]; + break; + } else { + $files[] = $args[$i]; + } + } + $outputfd = false; + if (isset($mode)) { + if (!$outputfd = fopen($outputfile, $mode)) { + $err = System::raiseError("Could not open $outputfile"); + return $err; + } + $ret = true; + } + foreach ($files as $file) { + if (!$fd = fopen($file, 'r')) { + System::raiseError("Could not open $file"); + continue; + } + while ($cont = fread($fd, 2048)) { + if (is_resource($outputfd)) { + fwrite($outputfd, $cont); + } else { + $ret .= $cont; + } + } + fclose($fd); + } + if (is_resource($outputfd)) { + fclose($outputfd); + } + return $ret; + } + + /** + * Creates temporary files or directories. This function will remove + * the created files when the scripts finish its execution. + * + * Usage: + * 1) $tempfile = System::mktemp("prefix"); + * 2) $tempdir = System::mktemp("-d prefix"); + * 3) $tempfile = System::mktemp(); + * 4) $tempfile = System::mktemp("-t /var/tmp prefix"); + * + * prefix -> The string that will be prepended to the temp name + * (defaults to "tmp"). + * -d -> A temporary dir will be created instead of a file. + * -t -> The target dir where the temporary (file|dir) will be created. If + * this param is missing by default the env vars TMP on Windows or + * TMPDIR in Unix will be used. If these vars are also missing + * c:\windows\temp or /tmp will be used. + * + * @param string $args The arguments + * @return mixed the full path of the created (file|dir) or false + * @see System::tmpdir() + * @static + * @access public + */ + function mktemp($args = null) + { + static $first_time = true; + $opts = System::_parseArgs($args, 't:d'); + if (PEAR::isError($opts)) { + return System::raiseError($opts); + } + + foreach ($opts[0] as $opt) { + if ($opt[0] == 'd') { + $tmp_is_dir = true; + } elseif ($opt[0] == 't') { + $tmpdir = $opt[1]; + } + } + + $prefix = (isset($opts[1][0])) ? $opts[1][0] : 'tmp'; + if (!isset($tmpdir)) { + $tmpdir = System::tmpdir(); + } + + if (!System::mkDir(array('-p', $tmpdir))) { + return false; + } + + $tmp = tempnam($tmpdir, $prefix); + if (isset($tmp_is_dir)) { + unlink($tmp); // be careful possible race condition here + if (!mkdir($tmp, 0700)) { + return System::raiseError("Unable to create temporary directory $tmpdir"); + } + } + + $GLOBALS['_System_temp_files'][] = $tmp; + if (isset($tmp_is_dir)) { + //$GLOBALS['_System_temp_files'][] = dirname($tmp); + } + + if ($first_time) { + PEAR::registerShutdownFunc(array('System', '_removeTmpFiles')); + $first_time = false; + } + + return $tmp; + } + + /** + * Remove temporary files created my mkTemp. This function is executed + * at script shutdown time + * + * @static + * @access private + */ + function _removeTmpFiles() + { + if (count($GLOBALS['_System_temp_files'])) { + $delete = $GLOBALS['_System_temp_files']; + array_unshift($delete, '-r'); + System::rm($delete); + $GLOBALS['_System_temp_files'] = array(); + } + } + + /** + * Get the path of the temporal directory set in the system + * by looking in its environments variables. + * Note: php.ini-recommended removes the "E" from the variables_order setting, + * making unavaible the $_ENV array, that s why we do tests with _ENV + * + * @static + * @return string The temporary directory on the system + */ + function tmpdir() + { + if (OS_WINDOWS) { + if ($var = isset($_ENV['TMP']) ? $_ENV['TMP'] : getenv('TMP')) { + return $var; + } + if ($var = isset($_ENV['TEMP']) ? $_ENV['TEMP'] : getenv('TEMP')) { + return $var; + } + if ($var = isset($_ENV['USERPROFILE']) ? $_ENV['USERPROFILE'] : getenv('USERPROFILE')) { + return $var; + } + if ($var = isset($_ENV['windir']) ? $_ENV['windir'] : getenv('windir')) { + return $var; + } + return getenv('SystemRoot') . '\temp'; + } + if ($var = isset($_ENV['TMPDIR']) ? $_ENV['TMPDIR'] : getenv('TMPDIR')) { + return $var; + } + return realpath('/tmp'); + } + + /** + * The "which" command (show the full path of a command) + * + * @param string $program The command to search for + * @param mixed $fallback Value to return if $program is not found + * + * @return mixed A string with the full path or false if not found + * @static + * @author Stig Bakken + */ + function which($program, $fallback = false) + { + // enforce API + if (!is_string($program) || '' == $program) { + return $fallback; + } + + // full path given + if (basename($program) != $program) { + $path_elements[] = dirname($program); + $program = basename($program); + } else { + // Honor safe mode + if (!ini_get('safe_mode') || !$path = ini_get('safe_mode_exec_dir')) { + $path = getenv('PATH'); + if (!$path) { + $path = getenv('Path'); // some OSes are just stupid enough to do this + } + } + $path_elements = explode(PATH_SEPARATOR, $path); + } + + if (OS_WINDOWS) { + $exe_suffixes = getenv('PATHEXT') + ? explode(PATH_SEPARATOR, getenv('PATHEXT')) + : array('.exe','.bat','.cmd','.com'); + // allow passing a command.exe param + if (strpos($program, '.') !== false) { + array_unshift($exe_suffixes, ''); + } + // is_executable() is not available on windows for PHP4 + $pear_is_executable = (function_exists('is_executable')) ? 'is_executable' : 'is_file'; + } else { + $exe_suffixes = array(''); + $pear_is_executable = 'is_executable'; + } + + foreach ($exe_suffixes as $suff) { + foreach ($path_elements as $dir) { + $file = $dir . DIRECTORY_SEPARATOR . $program . $suff; + if (@$pear_is_executable($file)) { + return $file; + } + } + } + return $fallback; + } + + /** + * The "find" command + * + * Usage: + * + * System::find($dir); + * System::find("$dir -type d"); + * System::find("$dir -type f"); + * System::find("$dir -name *.php"); + * System::find("$dir -name *.php -name *.htm*"); + * System::find("$dir -maxdepth 1"); + * + * Params implmented: + * $dir -> Start the search at this directory + * -type d -> return only directories + * -type f -> return only files + * -maxdepth -> max depth of recursion + * -name -> search pattern (bash style). Multiple -name param allowed + * + * @param mixed Either array or string with the command line + * @return array Array of found files + * @static + * + */ + function find($args) + { + if (!is_array($args)) { + $args = preg_split('/\s+/', $args, -1, PREG_SPLIT_NO_EMPTY); + } + $dir = realpath(array_shift($args)); + if (!$dir) { + return array(); + } + $patterns = array(); + $depth = 0; + $do_files = $do_dirs = true; + $args_count = count($args); + for ($i = 0; $i < $args_count; $i++) { + switch ($args[$i]) { + case '-type': + if (in_array($args[$i+1], array('d', 'f'))) { + if ($args[$i+1] == 'd') { + $do_files = false; + } else { + $do_dirs = false; + } + } + $i++; + break; + case '-name': + $name = preg_quote($args[$i+1], '#'); + // our magic characters ? and * have just been escaped, + // so now we change the escaped versions to PCRE operators + $name = strtr($name, array('\?' => '.', '\*' => '.*')); + $patterns[] = '('.$name.')'; + $i++; + break; + case '-maxdepth': + $depth = $args[$i+1]; + break; + } + } + $path = System::_dirToStruct($dir, $depth, 0, true); + if ($do_files && $do_dirs) { + $files = array_merge($path['files'], $path['dirs']); + } elseif ($do_dirs) { + $files = $path['dirs']; + } else { + $files = $path['files']; + } + if (count($patterns)) { + $dsq = preg_quote(DIRECTORY_SEPARATOR, '#'); + $pattern = '#(^|'.$dsq.')'.implode('|', $patterns).'($|'.$dsq.')#'; + $ret = array(); + $files_count = count($files); + for ($i = 0; $i < $files_count; $i++) { + // only search in the part of the file below the current directory + $filepart = basename($files[$i]); + if (preg_match($pattern, $filepart)) { + $ret[] = $files[$i]; + } + } + return $ret; + } + return $files; + } +} \ No newline at end of file From a5fd9b705acb0bd4b69017a319c0fee4a25a0ae3 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 14:45:15 -0400 Subject: [PATCH 37/90] upgrade DB_DataObject to 1.9.5 --- extlib/DB/DataObject.php | 342 ++++++++++++++++++++++++----- extlib/DB/DataObject/Generator.php | 126 +++++++---- 2 files changed, 376 insertions(+), 92 deletions(-) diff --git a/extlib/DB/DataObject.php b/extlib/DB/DataObject.php index a69fbae86b..811d775965 100644 --- a/extlib/DB/DataObject.php +++ b/extlib/DB/DataObject.php @@ -15,7 +15,7 @@ * @author Alan Knowles * @copyright 1997-2006 The PHP Group * @license http://www.php.net/license/3_01.txt PHP License 3.01 - * @version CVS: $Id: DataObject.php 291349 2009-11-27 09:15:18Z alan_k $ + * @version CVS: $Id: DataObject.php 301030 2010-07-07 02:26:31Z alan_k $ * @link http://pear.php.net/package/DB_DataObject */ @@ -235,7 +235,7 @@ class DB_DataObject extends DB_DataObject_Overload * @access private * @var string */ - var $_DB_DataObject_version = "1.9.0"; + var $_DB_DataObject_version = "1.9.5"; /** * The Database table (used by table extends) @@ -369,6 +369,32 @@ class DB_DataObject extends DB_DataObject_Overload return $_DB_DATAOBJECT['CACHE'][$lclass][$key]; } + /** + * build the basic select query. + * + * @access private + */ + + function _build_select() + { + global $_DB_DATAOBJECT; + $quoteIdentifiers = !empty($_DB_DATAOBJECT['CONFIG']['quote_identifiers']); + if ($quoteIdentifiers) { + $this->_connect(); + $DB = &$_DB_DATAOBJECT['CONNECTIONS'][$this->_database_dsn_md5]; + } + $sql = 'SELECT ' . + $this->_query['data_select'] . " \n" . + ' FROM ' . ($quoteIdentifiers ? $DB->quoteIdentifier($this->__table) : $this->__table) . " \n" . + $this->_join . " \n" . + $this->_query['condition'] . " \n" . + $this->_query['group_by'] . " \n" . + $this->_query['having'] . " \n"; + + return $sql; + } + + /** * find results, either normal or crosstable * @@ -411,20 +437,21 @@ class DB_DataObject extends DB_DataObject_Overload $query_before = $this->_query; $this->_build_condition($this->table()) ; - $quoteIdentifiers = !empty($_DB_DATAOBJECT['CONFIG']['quote_identifiers']); + $this->_connect(); $DB = &$_DB_DATAOBJECT['CONNECTIONS'][$this->_database_dsn_md5]; - /* We are checking for method modifyLimitQuery as it is PEAR DB specific */ - $sql = 'SELECT ' . - $this->_query['data_select'] . " \n" . - ' FROM ' . ($quoteIdentifiers ? $DB->quoteIdentifier($this->__table) : $this->__table) . " \n" . - $this->_join . " \n" . - $this->_query['condition'] . " \n" . - $this->_query['group_by'] . " \n" . - $this->_query['having'] . " \n" . - $this->_query['order_by'] . " \n"; + $sql = $this->_build_select(); + + foreach ($this->_query['unions'] as $union_ar) { + $sql .= $union_ar[1] . $union_ar[0]->_build_select() . " \n"; + } + + $sql .= $this->_query['order_by'] . " \n"; + + + /* We are checking for method modifyLimitQuery as it is PEAR DB specific */ if ((!isset($_DB_DATAOBJECT['CONFIG']['db_driver'])) || ($_DB_DATAOBJECT['CONFIG']['db_driver'] == 'DB')) { /* PEAR DB specific */ @@ -578,6 +605,85 @@ class DB_DataObject extends DB_DataObject_Overload return true; } + + /** + * fetches all results as an array, + * + * return format is dependant on args. + * if selectAdd() has not been called on the object, then it will add the correct columns to the query. + * + * A) Array of values (eg. a list of 'id') + * + * $x = DB_DataObject::factory('mytable'); + * $x->whereAdd('something = 1') + * $ar = $x->fetchAll('id'); + * -- returns array(1,2,3,4,5) + * + * B) Array of values (not from table) + * + * $x = DB_DataObject::factory('mytable'); + * $x->whereAdd('something = 1'); + * $x->selectAdd(); + * $x->selectAdd('distinct(group_id) as group_id'); + * $ar = $x->fetchAll('group_id'); + * -- returns array(1,2,3,4,5) + * * + * C) A key=>value associative array + * + * $x = DB_DataObject::factory('mytable'); + * $x->whereAdd('something = 1') + * $ar = $x->fetchAll('id','name'); + * -- returns array(1=>'fred',2=>'blogs',3=> ....... + * + * D) array of objects + * $x = DB_DataObject::factory('mytable'); + * $x->whereAdd('something = 1'); + * $ar = $x->fetchAll(); + * + * E) array of arrays (for example) + * $x = DB_DataObject::factory('mytable'); + * $x->whereAdd('something = 1'); + * $ar = $x->fetchAll(false,false,'toArray'); + * + * + * @param string|false $k key + * @param string|false $v value + * @param string|false $method method to call on each result to get array value (eg. 'toArray') + * @access public + * @return array format dependant on arguments, may be empty + */ + function fetchAll($k= false, $v = false, $method = false) + { + // should it even do this!!!?!? + if ($k !== false && + ( // only do this is we have not been explicit.. + empty($this->_query['data_select']) || + ($this->_query['data_select'] == '*') + ) + ) { + $this->selectAdd(); + $this->selectAdd($k); + if ($v !== false) { + $this->selectAdd($v); + } + } + + $this->find(); + $ret = array(); + while ($this->fetch()) { + if ($v !== false) { + $ret[$this->$k] = $this->$v; + continue; + } + $ret[] = $k === false ? + ($method == false ? clone($this) : $this->$method()) + : $this->$k; + } + return $ret; + + } + + /** * Adds a condition to the WHERE statement, defaults to AND * @@ -622,6 +728,47 @@ class DB_DataObject extends DB_DataObject_Overload return $r; } + /** + * Adds a 'IN' condition to the WHERE statement + * + * $object->whereAddIn('id', $array, 'int'); //minimal usage + * $object->whereAddIn('price', $array, 'float', 'OR'); // cast to float, and call whereAdd with 'OR' + * $object->whereAddIn('name', $array, 'string'); // quote strings + * + * @param string $key key column to match + * @param array $list list of values to match + * @param string $type string|int|integer|float|bool cast to type. + * @param string $logic optional logic to call whereAdd with eg. "OR" (defaults to "AND") + * @access public + * @return string|PEAR::Error - previous condition or Error when invalid args found + */ + function whereAddIn($key, $list, $type, $logic = 'AND') + { + $not = ''; + if ($key[0] == '!') { + $not = 'NOT '; + $key = substr($key, 1); + } + // fix type for short entry. + $type = $type == 'int' ? 'integer' : $type; + + if ($type == 'string') { + $this->_connect(); + } + + $ar = array(); + foreach($list as $k) { + settype($k, $type); + $ar[] = $type =='string' ? $this->_quote($k) : $k; + } + if (!$ar) { + return $not ? $this->_query['condition'] : $this->whereAdd("1=0"); + } + return $this->whereAdd("$key $not IN (". implode(',', $ar). ')', $logic ); + } + + + /** * Adds a order by condition * @@ -1175,7 +1322,7 @@ class DB_DataObject extends DB_DataObject_Overload $seq = $this->sequenceKey(); if ($seq[0] !== false) { $keys = array($seq[0]); - if (empty($this->{$keys[0]}) && $dataObject !== true) { + if (!isset($this->{$keys[0]}) && $dataObject !== true) { $this->raiseError("update: trying to perform an update without the key set, and argument to update is not DB_DATAOBJECT_WHEREADD_ONLY @@ -1670,6 +1817,7 @@ class DB_DataObject extends DB_DataObject_Overload 'limit_start' => '', // the LIMIT condition 'limit_count' => '', // the LIMIT condition 'data_select' => '*', // the columns to be SELECTed + 'unions' => array(), // the added unions ); @@ -2032,9 +2180,9 @@ class DB_DataObject extends DB_DataObject_Overload $seqname = false; if (!empty($_DB_DATAOBJECT['CONFIG']['sequence_'.$this->__table])) { - $usekey = $_DB_DATAOBJECT['CONFIG']['sequence_'.$this->__table]; - if (strpos($usekey,':') !== false) { - list($usekey,$seqname) = explode(':',$usekey); + $seqname = $_DB_DATAOBJECT['CONFIG']['sequence_'.$this->__table]; + if (strpos($seqname,':') !== false) { + list($usekey,$seqname) = explode(':',$seqname); } } @@ -3068,9 +3216,9 @@ class DB_DataObject extends DB_DataObject_Overload } /** - * IS THIS SUPPORTED/USED ANYMORE???? - *return a list of options for a linked table - * + * getLinkArray + * Fetch an array of related objects. This should be used in conjunction with a .links.ini file configuration (see the introduction on linking for details on this). + * You may also use this with all parameters to specify, the column and related table. * This is highly dependant on naming columns 'correctly' :) * using colname = xxxxx_yyyyyy * xxxxxx = related table; (yyyyy = user defined..) @@ -3078,7 +3226,21 @@ class DB_DataObject extends DB_DataObject_Overload * stores it in $this->_xxxxx_yyyyy * * @access public - * @return array of results (empty array on failure) + * @param string $column - either column or column.xxxxx + * @param string $table - name of table to look up value in + * @return array - array of results (empty array on failure) + * + * Example - Getting the related objects + * + * $person = new DataObjects_Person; + * $person->get(12); + * $children = $person->getLinkArray('children'); + * + * echo 'There are ', count($children), ' descendant(s):
          '; + * foreach ($children as $child) { + * echo $child->name, '
          '; + * } + * */ function &getLinkArray($row, $table = null) { @@ -3123,6 +3285,46 @@ class DB_DataObject extends DB_DataObject_Overload return $ret; } + /** + * unionAdd - adds another dataobject to this, building a unioned query. + * + * usage: + * $doTable1 = DB_DataObject::factory("table1"); + * $doTable2 = DB_DataObject::factory("table2"); + * + * $doTable1->selectAdd(); + * $doTable1->selectAdd("col1,col2"); + * $doTable1->whereAdd("col1 > 100"); + * $doTable1->orderBy("col1"); + * + * $doTable2->selectAdd(); + * $doTable2->selectAdd("col1, col2"); + * $doTable2->whereAdd("col2 = 'v'"); + * + * $doTable1->unionAdd($doTable2); + * $doTable1->find(); + * + * Note: this model may be a better way to implement joinAdd?, eg. do the building in find? + * + * + * @param $obj object|false the union object or false to reset + * @param optional $is_all string 'ALL' to do all. + * @returns $obj object|array the added object, or old list if reset. + */ + + function unionAdd($obj,$is_all= '') + { + if ($obj === false) { + $ret = $this->_query['unions']; + $this->_query['unions'] = array(); + return $ret; + } + $this->_query['unions'][] = array($obj, 'UNION ' . $is_all . ' ') ; + return $obj; + } + + + /** * The JOIN condition * @@ -3248,31 +3450,46 @@ class DB_DataObject extends DB_DataObject_Overload /* otherwise see if there are any links from this table to the obj. */ //print_r($this->links()); if (($ofield === false) && ($links = $this->links())) { - foreach ($links as $k => $v) { - /* link contains {this column} = {linked table}:{linked column} */ - $ar = explode(':', $v); - // Feature Request #4266 - Allow joins with multiple keys - if (strpos($k, ',') !== false) { - $k = explode(',', $k); - } - if (strpos($ar[1], ',') !== false) { - $ar[1] = explode(',', $ar[1]); + // this enables for support for arrays of links in ini file. + // link contains this_column[] = linked_table:linked_column + // or standard way. + // link contains this_column = linked_table:linked_column + foreach ($links as $k => $linkVar) { + + if (!is_array($linkVar)) { + $linkVar = array($linkVar); } + foreach($linkVar as $v) { - if ($ar[0] == $obj->__table) { + + + /* link contains {this column} = {linked table}:{linked column} */ + $ar = explode(':', $v); + // Feature Request #4266 - Allow joins with multiple keys + if (strpos($k, ',') !== false) { + $k = explode(',', $k); + } + if (strpos($ar[1], ',') !== false) { + $ar[1] = explode(',', $ar[1]); + } + + if ($ar[0] != $obj->__table) { + continue; + } if ($joinCol !== false) { if ($k == $joinCol) { + // got it!? $tfield = $k; $ofield = $ar[1]; break; - } else { - continue; - } - } else { - $tfield = $k; - $ofield = $ar[1]; - break; - } + } + continue; + + } + $tfield = $k; + $ofield = $ar[1]; + break; + } } } @@ -3280,23 +3497,30 @@ class DB_DataObject extends DB_DataObject_Overload //print_r($obj->links()); if (!$ofield && ($olinks = $obj->links())) { - foreach ($olinks as $k => $v) { - /* link contains {this column} = {linked table}:{linked column} */ - $ar = explode(':', $v); - - // Feature Request #4266 - Allow joins with multiple keys - - $links_key_array = strpos($k,','); - if ($links_key_array !== false) { - $k = explode(',', $k); + foreach ($olinks as $k => $linkVar) { + /* link contains {this column} = array ( {linked table}:{linked column} )*/ + if (!is_array($linkVar)) { + $linkVar = array($linkVar); } - - $ar_array = strpos($ar[1],','); - if ($ar_array !== false) { - $ar[1] = explode(',', $ar[1]); - } - - if ($ar[0] == $this->__table) { + foreach($linkVar as $v) { + + /* link contains {this column} = {linked table}:{linked column} */ + $ar = explode(':', $v); + + // Feature Request #4266 - Allow joins with multiple keys + $links_key_array = strpos($k,','); + if ($links_key_array !== false) { + $k = explode(',', $k); + } + + $ar_array = strpos($ar[1],','); + if ($ar_array !== false) { + $ar[1] = explode(',', $ar[1]); + } + + if ($ar[0] != $this->__table) { + continue; + } // you have explictly specified the column // and the col is listed here.. @@ -3315,6 +3539,7 @@ class DB_DataObject extends DB_DataObject_Overload $ofield = $k; $tfield = $ar[1]; break; + } } } @@ -3573,7 +3798,14 @@ class DB_DataObject extends DB_DataObject_Overload if (!$k) { continue; // ignore empty keys!!! what } - if (is_object($from) && isset($from->{sprintf($format,$k)})) { + + $chk = is_object($from) && + (version_compare(phpversion(), "5.1.0" , ">=") ? + property_exists($from, sprintf($format,$k)) : // php5.1 + array_key_exists( sprintf($format,$k), get_class_vars($from)) //older + ); + // if from has property ($format($k) + if ($chk) { $kk = (strtolower($k) == 'from') ? '_from' : $k; if (method_exists($this,'set'.$kk)) { $ret = $this->{'set'.$kk}($from->{sprintf($format,$k)}); diff --git a/extlib/DB/DataObject/Generator.php b/extlib/DB/DataObject/Generator.php index 17d310f57c..7ea716dc7c 100644 --- a/extlib/DB/DataObject/Generator.php +++ b/extlib/DB/DataObject/Generator.php @@ -15,7 +15,7 @@ * @author Alan Knowles * @copyright 1997-2006 The PHP Group * @license http://www.php.net/license/3_01.txt PHP License 3.01 - * @version CVS: $Id: Generator.php 289384 2009-10-09 00:17:26Z alan_k $ + * @version CVS: $Id: Generator.php 298560 2010-04-25 23:01:51Z alan_k $ * @link http://pear.php.net/package/DB_DataObject */ @@ -383,8 +383,8 @@ class DB_DataObject_Generator extends DB_DataObject return false; } $__DB = &$GLOBALS['_DB_DATAOBJECT']['CONNECTIONS'][$this->_database_dsn_md5]; - if (!in_array($__DB->phptype, array('mysql','mysqli'))) { - echo "WARNING: cant handle non-mysql introspection for defaults."; + if (!in_array($__DB->phptype, array('mysql', 'mysqli', 'pgsql'))) { + echo "WARNING: cant handle non-mysql and pgsql introspection for defaults."; return; // cant handle non-mysql introspection for defaults. } @@ -392,33 +392,72 @@ class DB_DataObject_Generator extends DB_DataObject $fk = array(); - foreach($this->tables as $this->table) { - $quotedTable = !empty($options['quote_identifiers_tableinfo']) ? $DB->quoteIdentifier($table) : $this->table; - - $res =& $DB->query('SHOW CREATE TABLE ' . $quotedTable ); - if (PEAR::isError($res)) { - die($res->getMessage()); - } + switch ($DB->phptype) { - $text = $res->fetchRow(DB_FETCHMODE_DEFAULT, 0); - $treffer = array(); - // Extract FOREIGN KEYS - preg_match_all( - "/FOREIGN KEY \(`(\w*)`\) REFERENCES `(\w*)` \(`(\w*)`\)/i", - $text[1], - $treffer, - PREG_SET_ORDER); - if (count($treffer) < 1) { - continue; - } - for ($i = 0; $i < count($treffer); $i++) { - $fk[$this->table][$treffer[$i][1]] = $treffer[$i][2] . ":" . $treffer[$i][3]; - } - + case 'pgsql': + foreach($this->tables as $this->table) { + $quotedTable = !empty($options['quote_identifiers_tableinfo']) ? $DB->quoteIdentifier($table) : $this->table; + $res =& $DB->query("SELECT + pg_catalog.pg_get_constraintdef(r.oid, true) AS condef + FROM pg_catalog.pg_constraint r, + pg_catalog.pg_class c + WHERE c.oid=r.conrelid + AND r.contype = 'f' + AND c.relname = '" . $quotedTable . "'"); + if (PEAR::isError($res)) { + die($res->getMessage()); + } + + while ($row = $res->fetchRow(DB_FETCHMODE_ASSOC)) { + $treffer = array(); + // this only picks up one of these.. see this for why: http://pear.php.net/bugs/bug.php?id=17049 + preg_match( + "/FOREIGN KEY \((\w*)\) REFERENCES (\w*)\((\w*)\)/i", + $row['condef'], + $treffer); + if (!count($treffer)) { + continue; + } + $fk[$this->table][$treffer[1]] = $treffer[2] . ":" . $treffer[3]; + } + } + break; + + + case 'mysql': + case 'mysqli': + default: + + foreach($this->tables as $this->table) { + $quotedTable = !empty($options['quote_identifiers_tableinfo']) ? $DB->quoteIdentifier($table) : $this->table; + + $res =& $DB->query('SHOW CREATE TABLE ' . $quotedTable ); + + if (PEAR::isError($res)) { + die($res->getMessage()); + } + + $text = $res->fetchRow(DB_FETCHMODE_DEFAULT, 0); + $treffer = array(); + // Extract FOREIGN KEYS + preg_match_all( + "/FOREIGN KEY \(`(\w*)`\) REFERENCES `(\w*)` \(`(\w*)`\)/i", + $text[1], + $treffer, + PREG_SET_ORDER); + + if (!count($treffer)) { + continue; + } + foreach($treffer as $i=> $tref) { + $fk[$this->table][$tref[1]] = $tref[2] . ":" . $tref[3]; + } + + } + } - $links_ini = ""; foreach($fk as $table => $details) { @@ -861,10 +900,8 @@ class DB_DataObject_Generator extends DB_DataObject $body = "\n ###START_AUTOCODE\n"; $body .= " /* the code below is auto generated do not remove the above tag */\n\n"; // table - $padding = (30 - strlen($this->table)); - $padding = ($padding < 2) ? 2 : $padding; - - $p = str_repeat(' ',$padding) ; + + $p = str_repeat(' ',max(2, (18 - strlen($this->table)))) ; $options = &PEAR::getStaticProperty('DB_DataObject','options'); @@ -887,6 +924,7 @@ class DB_DataObject_Generator extends DB_DataObject // Only include the $_database property if the omit_database_var is unset or false if (isset($options["database_{$this->_database}"]) && empty($GLOBALS['_DB_DATAOBJECT']['CONFIG']['generator_omit_database_var'])) { + $p = str_repeat(' ', max(2, (16 - strlen($this->table)))); $body .= " {$var} \$_database = '{$this->_database}'; {$p}// database name (used with database_{*} config)\n"; } @@ -900,6 +938,7 @@ class DB_DataObject_Generator extends DB_DataObject // show nice information! $connections = array(); $sets = array(); + foreach($defs as $t) { if (!strlen(trim($t->name))) { continue; @@ -915,19 +954,18 @@ class DB_DataObject_Generator extends DB_DataObject continue; } - - $padding = (30 - strlen($t->name)); - if ($padding < 2) $padding =2; - $p = str_repeat(' ',$padding) ; - + $p = str_repeat(' ',max(2, (30 - strlen($t->name)))); + $length = empty($t->len) ? '' : '('.$t->len.')'; $body .=" {$var} \${$t->name}; {$p}// {$t->type}$length {$t->flags}\n"; // can not do set as PEAR::DB table info doesnt support it. //if (substr($t->Type,0,3) == "set") // $sets[$t->Field] = "array".substr($t->Type,3); - $body .= $this->derivedHookVar($t,$padding); + $body .= $this->derivedHookVar($t,strlen($p)); } + + $body .= $this->derivedHookPostVar($defs); // THIS IS TOTALLY BORKED old FC creation // IT WILL BE REMOVED!!!!! in DataObjects 1.6 @@ -1078,7 +1116,21 @@ class DB_DataObject_Generator extends DB_DataObject // It MUST NOT be changed here!!! return ""; } - + /** + * hook for after var lines ( + * called at the end of the output of var line have generated, override to add extra var + * lines + * + * @param array cols containing array of objects with type,len,flags etc. from tableInfo call + * @access public + * @return string added to class eg. functions. + */ + function derivedHookPostVar($t) + { + // This is so derived generator classes can generate variabels + // It MUST NOT be changed here!!! + return ""; + } /** * hook to add extra page-level (in terms of phpDocumentor) DocBlock * From bc2f64d7ab6c0218104e1a655209fe062d5bdd43 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 14:58:11 -0400 Subject: [PATCH 38/90] Add reply_to to make conversations in createsim.php --- scripts/createsim.php | 43 +++++++++++++++++++++++++++++++------------ 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/scripts/createsim.php b/scripts/createsim.php index d97ecc1c4d..e1c4b1124e 100644 --- a/scripts/createsim.php +++ b/scripts/createsim.php @@ -67,6 +67,8 @@ function newNotice($i, $tagmax) { global $userprefix; + $options = array(); + $n = rand(0, $i - 1); $user = User::staticGet('nickname', sprintf('%s%d', $userprefix, $n)); @@ -75,8 +77,20 @@ function newNotice($i, $tagmax) $content = 'Test notice content'; if ($is_reply == 0) { - $n = rand(0, $i - 1); - $content = "@$userprefix$n " . $content; + $r = rand(0, max($i - 1, 0)); + $rnick = sprintf('%s%d', $userprefix, $r); + $ruser = User::staticGet('nickname', $rnick); + common_set_user($user); + $notices = $ruser->getNotices(0, 5); + if ($notices->N > 0) { + $nval = rand(0, $notices->N); + $notices->fetch(); // go to 0th + for ($i = 0; $i < $nval; $i++) { + $notices->fetch(); + } + $options['reply_to'] = $notices->id; + } + $content = "@$rnick " . $content; } $has_hash = rand(0, 2); @@ -89,10 +103,7 @@ function newNotice($i, $tagmax) } } - $notice = Notice::saveNew($user->id, $content, 'system'); - - $user->free(); - $notice->free(); + $notice = Notice::saveNew($user->id, $content, 'system', $options); } function newSub($i) @@ -182,27 +193,31 @@ function main($usercount, $groupcount, $noticeavg, $subsavg, $joinsavg, $tagmax) $st = $nt + ($usercount * $subsavg); $jt = $st + ($usercount * $joinsavg); + printfv("$events events ($ut, $gt, $nt, $st, $jt)\n"); + for ($i = 0; $i < $events; $i++) { $e = rand(0, $events); if ($e > 0 && $e <= $ut) { - printfv("Creating user $n\n"); + printfv("$i Creating user $n\n"); newUser($n); $n++; } else if ($e > $ut && $e <= $gt) { - printfv("Creating group $g\n"); + printfv("$i Creating group $g\n"); newGroup($g); $g++; } else if ($e > $gt && $e <= $nt) { - printfv("Making a new notice\n"); + printfv("$i Making a new notice\n"); newNotice($n, $tagmax); } else if ($e > $nt && $e <= $st) { - printfv("Making a new subscription\n"); + printfv("$i Making a new subscription\n"); newSub($n); } else if ($e > $st && $e <= $jt) { - printfv("Making a new group join\n"); + printfv("$i Making a new group join\n"); newJoin($n, $g); + } else { + printfv("No event for $i!"); } } } @@ -216,4 +231,8 @@ $tagmax = (have_option('t', 'tags')) ? get_option_value('t', 'tags') : 1000 $userprefix = (have_option('x', 'prefix')) ? get_option_value('x', 'prefix') : 'testuser'; $groupprefix = (have_option('z', 'groupprefix')) ? get_option_value('z', 'groupprefix') : 'testgroup'; -main($usercount, $groupcount, $noticeavg, $subsavg, $joinsavg, $tagmax); +try { + main($usercount, $groupcount, $noticeavg, $subsavg, $joinsavg, $tagmax); +} catch (Exception $e) { + printfv("Got an exception: ".$e->getMessage()); +} From 6902c0af352cb7f262d77c728e489876b21d2933 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 15:08:27 -0400 Subject: [PATCH 39/90] Add group posts to createsim.php --- scripts/createsim.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/scripts/createsim.php b/scripts/createsim.php index e1c4b1124e..6615e903f7 100644 --- a/scripts/createsim.php +++ b/scripts/createsim.php @@ -103,6 +103,21 @@ function newNotice($i, $tagmax) } } + $in_group = rand(0, 5); + + if ($in_group == 0) { + $groups = $user->getGroups(); + if ($groups->N > 0) { + $gval = rand(0, $group->N); + $groups->fetch(); // go to 0th + for ($i = 0; $i < $gval; $i++) { + $groups->fetch(); + } + $options['groups'] = array($groups->id); + $content = "!".$groups->nickname." ".$content; + } + } + $notice = Notice::saveNew($user->id, $content, 'system', $options); } From efab3c65581d36df1553a328d551d19a404f2eea Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 15:16:04 -0400 Subject: [PATCH 40/90] All groups start with a random admin --- scripts/createsim.php | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/scripts/createsim.php b/scripts/createsim.php index 6615e903f7..46dc62d4ca 100644 --- a/scripts/createsim.php +++ b/scripts/createsim.php @@ -51,16 +51,20 @@ function newUser($i) } } -function newGroup($i) +function newGroup($i, $j) { global $groupprefix; + global $userprefix; - $user = User_group::register(array('nickname' => sprintf('%s%d', $groupprefix, $i), - 'local' => true, - 'fullname' => sprintf('Test Group %d', $i))); - if (!empty($user)) { - $user->free(); - } + // Pick a random user to be the admin + + $n = rand(0, max($j - 1, 0)); + $user = User::staticGet('nickname', sprintf('%s%d', $userprefix, $n)); + + $group = User_group::register(array('nickname' => sprintf('%s%d', $groupprefix, $i), + 'local' => true, + 'userid' => $user->id, + 'fullname' => sprintf('Test Group %d', $i))); } function newNotice($i, $tagmax) @@ -196,7 +200,7 @@ function main($usercount, $groupcount, $noticeavg, $subsavg, $joinsavg, $tagmax) $g = 1; newUser(0); - newGroup(0); + newGroup(0, $n); // # registrations + # notices + # subs @@ -214,13 +218,13 @@ function main($usercount, $groupcount, $noticeavg, $subsavg, $joinsavg, $tagmax) { $e = rand(0, $events); - if ($e > 0 && $e <= $ut) { + if ($e >= 0 && $e <= $ut) { printfv("$i Creating user $n\n"); newUser($n); $n++; } else if ($e > $ut && $e <= $gt) { printfv("$i Creating group $g\n"); - newGroup($g); + newGroup($g, $n); $g++; } else if ($e > $gt && $e <= $nt) { printfv("$i Making a new notice\n"); From 841a9130e985ecdcb8accaa3826a9399f12af495 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 15:36:47 -0400 Subject: [PATCH 41/90] fix off-by-one and more replies --- scripts/createsim.php | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/scripts/createsim.php b/scripts/createsim.php index 46dc62d4ca..3244cda104 100644 --- a/scripts/createsim.php +++ b/scripts/createsim.php @@ -76,25 +76,26 @@ function newNotice($i, $tagmax) $n = rand(0, $i - 1); $user = User::staticGet('nickname', sprintf('%s%d', $userprefix, $n)); - $is_reply = rand(0, 4); + $is_reply = rand(0, 1); $content = 'Test notice content'; if ($is_reply == 0) { - $r = rand(0, max($i - 1, 0)); - $rnick = sprintf('%s%d', $userprefix, $r); - $ruser = User::staticGet('nickname', $rnick); common_set_user($user); - $notices = $ruser->getNotices(0, 5); + $notices = $user->noticesWithFriends(0, 20); if ($notices->N > 0) { - $nval = rand(0, $notices->N); + $nval = rand(0, $notices->N - 1); $notices->fetch(); // go to 0th for ($i = 0; $i < $nval; $i++) { $notices->fetch(); } $options['reply_to'] = $notices->id; + $dont_use_nickname = rand(0, 2); + if ($dont_use_nickname != 0) { + $rprofile = $notices->getProfile(); + $content = "@".$rprofile->nickname." ".$content; + } } - $content = "@$rnick " . $content; } $has_hash = rand(0, 2); @@ -112,7 +113,7 @@ function newNotice($i, $tagmax) if ($in_group == 0) { $groups = $user->getGroups(); if ($groups->N > 0) { - $gval = rand(0, $group->N); + $gval = rand(0, $group->N - 1); $groups->fetch(); // go to 0th for ($i = 0; $i < $gval; $i++) { $groups->fetch(); From c7f866b03251dfdbab3d932f6d87ae2b349cd1c4 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 15:49:46 -0400 Subject: [PATCH 42/90] Caller can set scope for Notice::saveNew() --- README | 2 ++ classes/Notice.php | 8 ++++++++ lib/default.php | 3 ++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/README b/README index 0dcbeea239..ef032cad84 100644 --- a/README +++ b/README @@ -1472,6 +1472,8 @@ Configuration options specific to notices. contentlimit: max length of the plain-text content of a notice. Default is null, meaning to use the site-wide text limit. 0 means no limit. +defaultscope: default scope for notices. Defaults to 0; set to + 1 to keep notices private to this site by default. message ------- diff --git a/classes/Notice.php b/classes/Notice.php index 83507f3bc0..b380f027a2 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -249,6 +249,7 @@ class Notice extends Memcached_DataObject * notice in place of extracting links from content * boolean 'distribute' whether to distribute the notice, default true * string 'object_type' URL of the associated object type (default ActivityObject::NOTE) + * int 'scope' Scope bitmask; default to SITE_SCOPE on private sites, 0 otherwise * * @fixme tag override * @@ -260,6 +261,7 @@ class Notice extends Memcached_DataObject 'url' => null, 'reply_to' => null, 'repeat_of' => null, + 'scope' => null, 'distribute' => true); if (!empty($options)) { @@ -374,6 +376,12 @@ class Notice extends Memcached_DataObject $notice->object_type = $object_type; } + if (is_null($scope)) { // 0 is a valid value + $notice->scope = common_config('notice', 'defaultscope'); + } else { + $notice->scope = $scope; + } + if (Event::handle('StartNoticeSave', array(&$notice))) { // XXX: some of these functions write to the DB diff --git a/lib/default.php b/lib/default.php index e6caf0301a..9872d8ffd3 100644 --- a/lib/default.php +++ b/lib/default.php @@ -288,7 +288,8 @@ $default = array('enabled' => true, 'css' => ''), 'notice' => - array('contentlimit' => null), + array('contentlimit' => null, + 'defaultscope' => 0), // set to 0 for default open 'message' => array('contentlimit' => null), 'location' => From 47b3fdf059c5b7a3f4e0b1b892c8b7f6439b4f7d Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 16:06:17 -0400 Subject: [PATCH 43/90] add scope limit flags to some notices in createsim.php --- scripts/createsim.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/scripts/createsim.php b/scripts/createsim.php index 3244cda104..b460be1dd2 100644 --- a/scripts/createsim.php +++ b/scripts/createsim.php @@ -71,7 +71,7 @@ function newNotice($i, $tagmax) { global $userprefix; - $options = array(); + $options = array('scope' => common_config('notice', 'defaultscope')); $n = rand(0, $i - 1); $user = User::staticGet('nickname', sprintf('%s%d', $userprefix, $n)); @@ -95,6 +95,10 @@ function newNotice($i, $tagmax) $rprofile = $notices->getProfile(); $content = "@".$rprofile->nickname." ".$content; } + $private_to_addressees = rand(0, 4); + if ($private_to_addressees == 0) { + $options['scope'] |= Notice::ADDRESSEE_SCOPE; + } } } @@ -120,9 +124,19 @@ function newNotice($i, $tagmax) } $options['groups'] = array($groups->id); $content = "!".$groups->nickname." ".$content; + $private_to_group = rand(0, 2); + if ($private_to_group == 0) { + $options['scope'] |= Notice::GROUP_SCOPE; + } } } + $private_to_site = rand(0, 4); + + if ($private_to_site == 0) { + $options['scope'] |= Notice::SITE_SCOPE; + } + $notice = Notice::saveNew($user->id, $content, 'system', $options); } From 82b38b62a4bc40d0782cd0be3ee57cf00e77dd36 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 16:23:20 -0400 Subject: [PATCH 44/90] clearer scope rules for anonymous and author --- classes/Notice.php | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/classes/Notice.php b/classes/Notice.php index b380f027a2..f6d0a689cb 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -2043,10 +2043,21 @@ class Notice extends Memcached_DataObject function inScope($profile) { - // If there's any scope, and there's no logged-in user, - // not allowed. + // If there's no scope, anyone (even anon) is in scope. - if ($this->scope > 0 && empty($profile)) { + if ($this->scope == 0) { + return true; + } + + // If there's scope, anon cannot be in scope + + if (empty($profile)) { + return false; + } + + // Author is always in scope + + if ($this->profile_id == $profile->id) { return false; } From e11c69fd81b8232cbb02aeb3aab32f04b928e321 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 16:47:18 -0400 Subject: [PATCH 45/90] always allow author to see own notices --- classes/Notice.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/Notice.php b/classes/Notice.php index f6d0a689cb..69ed959f38 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -2058,7 +2058,7 @@ class Notice extends Memcached_DataObject // Author is always in scope if ($this->profile_id == $profile->id) { - return false; + return true; } // Only for users on this site From 53a3fd822d86fdf36ace165a974d26372bf46ece Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sat, 26 Mar 2011 16:47:36 -0400 Subject: [PATCH 46/90] add indicator for limited-scope notices --- lib/noticelistitem.php | 6 +++++- theme/rebase/css/display.css | 5 +++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/noticelistitem.php b/lib/noticelistitem.php index 17827d07ef..46f15f551d 100644 --- a/lib/noticelistitem.php +++ b/lib/noticelistitem.php @@ -170,7 +170,11 @@ class NoticeListItem extends Widget { if (Event::handle('StartOpenNoticeListItemElement', array($this))) { $id = (empty($this->repeat)) ? $this->notice->id : $this->repeat->id; - $this->out->elementStart('li', array('class' => 'hentry notice', + $class = 'hentry notice'; + if ($this->notice->scope != 0 && $this->notice->scope != 1) { + $class .= ' limited-scope'; + } + $this->out->elementStart('li', array('class' => $class, 'id' => 'notice-' . $id)); Event::handle('EndOpenNoticeListItemElement', array($this)); } diff --git a/theme/rebase/css/display.css b/theme/rebase/css/display.css index 6c3c9e6296..9c019e6289 100644 --- a/theme/rebase/css/display.css +++ b/theme/rebase/css/display.css @@ -1156,6 +1156,11 @@ width:auto; margin-left:0; } +.limited-scope .entry-content .timestamp:before { +content:'☠'; +font-size:150%; +} + /* override OStatus plugin style */ #form_ostatus_connect.form_settings.dialogbox, #form_ostatus_sub.dialogbox { From f06f8d51fdd8f204209d87682e8f9a3de98115b1 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Sun, 27 Mar 2011 12:58:35 +0200 Subject: [PATCH 47/90] Slightly uncomplicate and disambiguate the plugin description. Add translator documentation. --- plugins/Comet/CometPlugin.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/Comet/CometPlugin.php b/plugins/Comet/CometPlugin.php index 70b324b5c2..c8072ac190 100644 --- a/plugins/Comet/CometPlugin.php +++ b/plugins/Comet/CometPlugin.php @@ -111,7 +111,9 @@ class CometPlugin extends RealtimePlugin 'author' => 'Evan Prodromou', 'homepage' => 'http://status.net/wiki/Plugin:Comet', 'rawdescription' => - _m('Plugin to do "real time" updates using Comet/Bayeux.')); + // TRANS: Plugin description message. Bayeux is a protocol for transporting asynchronous messages + // TRANS: and Comet is a web application model. + _m('Plugin to make updates using Comet and Bayeux.')); return true; } } From 1adaa6a2abc0f51f0b8853368c1919f5a9c3834b Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Sun, 27 Mar 2011 13:05:24 +0200 Subject: [PATCH 48/90] Update grammar for feed title. Not sure why this was not "%s's". I chose the safe, more verbose way. --- actions/atompubmembershipfeed.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/actions/atompubmembershipfeed.php b/actions/atompubmembershipfeed.php index f7882d97d3..0a53331280 100644 --- a/actions/atompubmembershipfeed.php +++ b/actions/atompubmembershipfeed.php @@ -141,7 +141,7 @@ class AtompubmembershipfeedAction extends ApiAuthAction // TRANS: Title for group membership feed. // TRANS: %s is a username. - $feed->setTitle(sprintf(_("%s group memberships"), + $feed->setTitle(sprintf(_('Group memberships of %s'), $this->_profile->getBestName())); // TRANS: Subtitle for group membership feed. From c7defb32f939c1b9555499e28fb170cc218cb953 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Sun, 27 Mar 2011 11:25:24 -0400 Subject: [PATCH 49/90] NoticeForm constructor takes array of optional parameters NoticeForm::__construct() had 9 parameters, and I was about to add a few more, so I figured it'd be better to use an $options array instead. --- actions/newnotice.php | 4 +++- lib/noticeform.php | 51 ++++++++++++++++++++++++++++--------------- 2 files changed, 37 insertions(+), 18 deletions(-) diff --git a/actions/newnotice.php b/actions/newnotice.php index 3e601ae362..7f697e23f3 100644 --- a/actions/newnotice.php +++ b/actions/newnotice.php @@ -344,7 +344,9 @@ class NewnoticeAction extends Action $inreplyto = null; } - $notice_form = new NoticeForm($this, '', $content, null, $inreplyto); + $notice_form = new NoticeForm($this, array('content' => $content, + 'inreplyto' => $inreplyto)); + $notice_form->show(); } diff --git a/lib/noticeform.php b/lib/noticeform.php index 3909b088d0..2cbacc9280 100644 --- a/lib/noticeform.php +++ b/lib/noticeform.php @@ -53,7 +53,7 @@ class NoticeForm extends Form /** * Current action, used for returning to this page. */ - var $action = null; + var $actionName = null; /** * Pre-filled content of the form @@ -82,26 +82,43 @@ class NoticeForm extends Form /** * Constructor * - * @param HTMLOutputter $out output channel - * @param string $action action to return to, if any - * @param string $content content to pre-fill + * @param Action $action Action we're being embedded into + * @param array $options Array of optional parameters + * 'user' a user instead of current + * 'content' notice content + * 'inreplyto' ID of notice to reply to + * 'lat' Latitude + * 'lon' Longitude + * 'location_id' ID of location + * 'location_ns' Namespace of location */ - function __construct($out=null, $action=null, $content=null, $user=null, $inreplyto=null, $lat=null, $lon=null, $location_id=null, $location_ns=null) + function __construct($action, $options=null) { + // XXX: ??? Is this to keep notice forms distinct? + // Do we have to worry about sub-second race conditions? + // XXX: Needs to be above the parent::__construct() call...? + $this->id_suffix = time(); - parent::__construct($out); + parent::__construct($action); - $this->action = $action; - $this->content = $content; - $this->inreplyto = $inreplyto; - $this->lat = $lat; - $this->lon = $lon; - $this->location_id = $location_id; - $this->location_ns = $location_ns; + if (is_null($options)) { + $options = array(); + } - if ($user) { - $this->user = $user; + $this->actionName = $action->trimmed('action'); + + $prefill = array('content', 'inreplyto', 'lat', + 'lon', 'location_id', 'location_ns'); + + foreach ($prefill as $fieldName) { + if (array_key_exists($fieldName, $options)) { + $this->$fieldName = $options[$fieldName]; + } + } + + if (array_key_exists('user', $options)) { + $this->user = $options['user']; } else { $this->user = common_current_user(); } @@ -196,8 +213,8 @@ class NoticeForm extends Form 'title' => _('Attach a file.'))); $this->out->elementEnd('label'); } - if ($this->action) { - $this->out->hidden('notice_return-to', $this->action, 'returnto'); + if (!empty($this->actionName)) { + $this->out->hidden('notice_return-to', $this->actionName, 'returnto'); } $this->out->hidden('notice_in-reply-to', $this->inreplyto, 'inreplyto'); From 52d29a17a0c89c1515b4b938384780c3d4dee40a Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Mon, 28 Mar 2011 01:43:01 +0200 Subject: [PATCH 50/90] Fix incorrect translator documentation. Spotted by AVRS. --- actions/atompubmembershipfeed.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/actions/atompubmembershipfeed.php b/actions/atompubmembershipfeed.php index 0a53331280..37e4a386a2 100644 --- a/actions/atompubmembershipfeed.php +++ b/actions/atompubmembershipfeed.php @@ -237,8 +237,7 @@ class AtompubmembershipfeedAction extends ApiAuthAction if (Event::handle('StartAtomPubNewActivity', array(&$activity))) { if ($activity->verb != ActivityVerb::JOIN) { - // TRANS: Client error displayed when not using the POST verb. - // TRANS: Do not translate POST. + // TRANS: Client error displayed when not using the join verb. throw new ClientException(_('Can only handle join activities.')); return; } From 5147404ea2cd5b41d5cad8f3c3769cbde0a2e2a9 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 11:02:20 -0400 Subject: [PATCH 51/90] ToSelector widget to send private notices A new widget, ToSelector (Sorry, couldn't think of anything better) that lets you select an addressee for a notice and whether it's private. --- actions/newnotice.php | 4 ++ lib/noticeform.php | 30 +++++++- lib/toselector.php | 156 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 189 insertions(+), 1 deletion(-) create mode 100644 lib/toselector.php diff --git a/actions/newnotice.php b/actions/newnotice.php index 7f697e23f3..f48134c3b2 100644 --- a/actions/newnotice.php +++ b/actions/newnotice.php @@ -209,6 +209,10 @@ class NewnoticeAction extends Action $author_id = $user->id; $text = $content_shortened; + // Does the heavy-lifting for getting "To:" information + + ToSelector::fillOptions($this, $options); + if (Event::handle('StartNoticeSaveWeb', array($this, &$author_id, &$text, &$options))) { $notice = Notice::saveNew($user->id, $content_shortened, 'web', $options); diff --git a/lib/noticeform.php b/lib/noticeform.php index 2cbacc9280..01a462aad1 100644 --- a/lib/noticeform.php +++ b/lib/noticeform.php @@ -79,6 +79,15 @@ class NoticeForm extends Form var $location_id; var $location_ns; + /** select this group from the drop-down by default. */ + var $to_group; + + /** select this user from the drop-down by default. */ + var $to_user; + + /** Pre-click the private checkbox. */ + var $private; + /** * Constructor * @@ -109,7 +118,8 @@ class NoticeForm extends Form $this->actionName = $action->trimmed('action'); $prefill = array('content', 'inreplyto', 'lat', - 'lon', 'location_id', 'location_ns'); + 'lon', 'location_id', 'location_ns', + 'to_group', 'to_profile', 'private'); foreach ($prefill as $fieldName) { if (array_key_exists($fieldName, $options)) { @@ -117,6 +127,16 @@ class NoticeForm extends Form } } + // Prefill the profile if we're replying + + if (empty($this->to_profile) && + !empty($this->inreplyto)) { + $notice = Notice::staticGet('id', $this->inreplyto); + if (!empty($notice)) { + $this->to_profile = $notice->getProfile(); + } + } + if (array_key_exists('user', $options)) { $this->user = $options['user']; } else { @@ -218,6 +238,14 @@ class NoticeForm extends Form } $this->out->hidden('notice_in-reply-to', $this->inreplyto, 'inreplyto'); + $this->out->elementStart('div'); + $toWidget = new ToSelector($this->out, + $this->user, + (!empty($this->to_group) ? $this->to_group : $this->to_user)); + + $toWidget->show(); + $this->out->elementEnd('div'); + if ($this->user->shareLocation()) { $this->out->hidden('notice_data-lat', empty($this->lat) ? (empty($this->profile->lat) ? null : $this->profile->lat) : $this->lat, 'lat'); $this->out->hidden('notice_data-lon', empty($this->lon) ? (empty($this->profile->lon) ? null : $this->profile->lon) : $this->lon, 'lon'); diff --git a/lib/toselector.php b/lib/toselector.php new file mode 100644 index 0000000000..6dd4b5c9f4 --- /dev/null +++ b/lib/toselector.php @@ -0,0 +1,156 @@ +. + * + * @category Widget + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Widget showing a drop-down of potential addressees + * + * @category Widget + * @package StatusNet + * @author Evan Prodromou + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +class ToSelector extends Widget +{ + protected $user; + protected $to; + protected $id; + protected $name; + protected $private; + + /** + * Constructor + * + * @param HTMLOutputter $out output context + * @param User $user Current user + * @param mixed $to Default selection for addressee + */ + function __construct($out, $user, $to, $private=false, $id='notice_to', $name='notice_to') + { + parent::__construct($out); + + $this->user = $user; + $this->to = $to; + $this->private = $private; + $this->id = $id; + $this->name = $name; + } + + /** + * Constructor + * + * @param HTMLOutputter $out output context + * @param User $user Current user + * @param mixed $to Default selection for addressee + */ + function show() + { + $choices = array(); + $default = 'public:site'; + + if (!common_config('site', 'private')) { + $choices['public:everyone'] = _('Everyone'); + $default = 'public:everyone'; + } + // XXX: better name...? + $choices['public:site'] = sprintf(_('My colleagues at %s'), common_config('site', 'name')); + + $groups = $this->user->getGroups(); + + while ($groups->fetch()) { + $value = 'group:'.$groups->id; + if (($this->to instanceof User_group) && $this->to->id == $groups->id) { + $default = $value; + } + $choices[$value] = $groups->getBestName(); + } + + // XXX: add users...? + + if ($this->to instanceof Profile) { + $value = 'profile:'.$this->to->id; + $default = $value; + $choices[$value] = $this->to->getBestName(); + } + + $this->out->dropdown($this->id, + _('To:'), + $choices, + null, + false, + $default); + + $this->out->checkbox('notice_private', + _('Private'), + $this->private); + } + + static function fillOptions($action, &$options) + { + // XXX: make arg name selectable + $toArg = $action->trimmed('notice_to'); + $private = $action->boolean('notice_private'); + + list($prefix, $value) = explode(':', $toArg); + switch ($prefix) { + case 'group': + $options['groups'] = array($value); + if ($private) { + $options['scope'] = Notice::GROUP_SCOPE; + } + break; + case 'profile': + $profile = Profile::staticGet('id', $value); + $options['replies'] = $profile->getUri(); + if ($private) { + $options['scope'] = Notice::ADDRESSEE_SCOPE; + } + break; + case 'public': + if ($value == 'everyone' && !common_config('site', 'private')) { + $options['scope'] = 0; + } else if ($value == 'site') { + $options['scope'] = Notice::SITE_SCOPE; + } + break; + default: + throw new ClientException('Unknown to value: ' . toArg); + break; + } + } +} From b0deaad700e72a06bf11f044236ed9c27e0eccff Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 12:01:08 -0400 Subject: [PATCH 52/90] Add a check to prevent replying to an unscoped notice --- classes/Notice.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/classes/Notice.php b/classes/Notice.php index 69ed959f38..3780d52d56 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -351,6 +351,10 @@ class Notice extends Memcached_DataObject if (!empty($notice->reply_to)) { $reply = Notice::staticGet('id', $notice->reply_to); + if (!$reply->inScope($profile)) { + throw new ClientException(sprintf(_("%s has no access to notice %d"), + $profile->nickname, $reply->id), 403); + } $notice->conversation = $reply->conversation; } From b1783e8d491aa82a1ca7049cd81187624cd09a37 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 12:13:46 -0400 Subject: [PATCH 53/90] make to_user/to_profile consistent in NoticeForm --- lib/noticeform.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/noticeform.php b/lib/noticeform.php index 01a462aad1..0f4207e4ae 100644 --- a/lib/noticeform.php +++ b/lib/noticeform.php @@ -83,7 +83,7 @@ class NoticeForm extends Form var $to_group; /** select this user from the drop-down by default. */ - var $to_user; + var $to_profile; /** Pre-click the private checkbox. */ var $private; @@ -241,7 +241,7 @@ class NoticeForm extends Form $this->out->elementStart('div'); $toWidget = new ToSelector($this->out, $this->user, - (!empty($this->to_group) ? $this->to_group : $this->to_user)); + (!empty($this->to_group) ? $this->to_group : $this->to_profile)); $toWidget->show(); $this->out->elementEnd('div'); From 7dd06b524668c441301c83bada570a5eda231403 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 12:20:00 -0400 Subject: [PATCH 54/90] ShortenAction::handle() had bad args --- plugins/ClientSideShorten/shorten.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/ClientSideShorten/shorten.php b/plugins/ClientSideShorten/shorten.php index 53c2cf5d1a..3e7121db8b 100644 --- a/plugins/ClientSideShorten/shorten.php +++ b/plugins/ClientSideShorten/shorten.php @@ -57,7 +57,7 @@ class ShortenAction extends Action return true; } - function handle($args) + function handle($args=null) { parent::handle($args); header('Content-Type: text/plain'); From 683bd3f2b5bf8f9e5e2f566384184d4896bfc2e2 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 12:56:18 -0400 Subject: [PATCH 55/90] don't push twitter stuff public if its not public --- plugins/TwitterBridge/TwitterBridgePlugin.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/TwitterBridge/TwitterBridgePlugin.php b/plugins/TwitterBridge/TwitterBridgePlugin.php index d7c895d9cf..b6658b13a6 100644 --- a/plugins/TwitterBridge/TwitterBridgePlugin.php +++ b/plugins/TwitterBridge/TwitterBridgePlugin.php @@ -228,7 +228,7 @@ class TwitterBridgePlugin extends Plugin */ function onStartEnqueueNotice($notice, &$transports) { - if (self::hasKeys() && $notice->isLocal()) { + if (self::hasKeys() && $notice->isLocal() && $notice->inScope(null)) { // Avoid a possible loop if ($notice->source != 'twitter') { array_push($transports, 'twitter'); From cbe003eb38a092127cddb95da2268fa8cc9d76e7 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 16:10:24 -0400 Subject: [PATCH 56/90] don't leak private notices to facebook --- plugins/FacebookBridge/FacebookBridgePlugin.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/FacebookBridge/FacebookBridgePlugin.php b/plugins/FacebookBridge/FacebookBridgePlugin.php index 9c2a406090..d5a3f7c633 100644 --- a/plugins/FacebookBridge/FacebookBridgePlugin.php +++ b/plugins/FacebookBridge/FacebookBridgePlugin.php @@ -455,7 +455,7 @@ ENDOFSCRIPT; */ function onStartEnqueueNotice($notice, &$transports) { - if (self::hasApplication() && $notice->isLocal()) { + if (self::hasApplication() && $notice->isLocal() && $notice->inScope(null)) { array_push($transports, 'facebook'); } return true; From dca5e20b9122361b9cf0ea74bec5808f3d4a7ed2 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 16:23:31 -0400 Subject: [PATCH 57/90] Make the to-selector clear left --- lib/noticeform.php | 2 +- theme/rebase/css/display.css | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/noticeform.php b/lib/noticeform.php index 0f4207e4ae..ee4e2ca967 100644 --- a/lib/noticeform.php +++ b/lib/noticeform.php @@ -238,7 +238,7 @@ class NoticeForm extends Form } $this->out->hidden('notice_in-reply-to', $this->inreplyto, 'inreplyto'); - $this->out->elementStart('div'); + $this->out->elementStart('div', 'to-selector'); $toWidget = new ToSelector($this->out, $this->user, (!empty($this->to_group) ? $this->to_group : $this->to_profile)); diff --git a/theme/rebase/css/display.css b/theme/rebase/css/display.css index 9c019e6289..45553e973a 100644 --- a/theme/rebase/css/display.css +++ b/theme/rebase/css/display.css @@ -361,6 +361,10 @@ address .poweredby { opacity:0; } +.form_notice .to-selector { + clear:left; +} + /* Local navigation */ #site_nav_local_views { From ec5a43bf4feb047d64728f4f95d06257750ec28a Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 16:24:02 -0400 Subject: [PATCH 58/90] let actions set a default address for toselector --- lib/action.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/action.php b/lib/action.php index 654ec7aa43..3ac95b46a6 100644 --- a/lib/action.php +++ b/lib/action.php @@ -657,7 +657,8 @@ class Action extends HTMLOutputter // lawsuit if (Event::handle('StartMakeEntryForm', array($tag, $this, &$form))) { if ($tag == 'status') { - $form = new NoticeForm($this); + $options = $this->noticeFormOptions(); + $form = new NoticeForm($this, $options); } Event::handle('EndMakeEntryForm', array($tag, $this, $form)); } @@ -673,6 +674,11 @@ class Action extends HTMLOutputter // lawsuit $this->elementEnd('div'); } + function noticeFormOptions() + { + return array(); + } + /** * Show anonymous message. * From a7380d593371b2e2d20fb2b03c2df825d5c18dff Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 16:24:17 -0400 Subject: [PATCH 59/90] set default address for showgroup --- actions/showgroup.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/actions/showgroup.php b/actions/showgroup.php index d77fbeed71..512ca6a0ee 100644 --- a/actions/showgroup.php +++ b/actions/showgroup.php @@ -365,6 +365,18 @@ class ShowgroupAction extends GroupDesignAction $this->raw(common_markup_to_html($m)); $this->elementEnd('div'); } + + function noticeFormOptions() + { + $options = parent::noticeFormOptions(); + $cur = common_current_user(); + + if (!empty($cur) && $cur->isMember($this->group)) { + $options['to_group'] = $this->group; + } + + return $options; + } } class GroupAdminSection extends ProfileSection From 798b03fb5f86ab7d67c35866d256eeb620f5c0cc Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 16:24:28 -0400 Subject: [PATCH 60/90] set default address for showstream --- actions/showstream.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/actions/showstream.php b/actions/showstream.php index 1a01812ec5..fed9685b35 100644 --- a/actions/showstream.php +++ b/actions/showstream.php @@ -278,6 +278,18 @@ class ShowstreamAction extends ProfileAction $cloud = new PersonalTagCloudSection($this, $this->user); $cloud->show(); } + + function noticeFormOptions() + { + $options = parent::noticeFormOptions(); + $cur = common_current_user(); + + if (empty($cur) || $cur->id != $this->profile->id) { + $options['to_profile'] = $this->profile; + } + + return $options; + } } // We don't show the author for a profile, since we already know who it is! From a74eda4e9ad344ba965c111567bd285266a95e23 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 16:37:35 -0400 Subject: [PATCH 61/90] don't send private notices over OStatus --- plugins/OStatus/OStatusPlugin.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/plugins/OStatus/OStatusPlugin.php b/plugins/OStatus/OStatusPlugin.php index e75130b9e9..26b7ade64d 100644 --- a/plugins/OStatus/OStatusPlugin.php +++ b/plugins/OStatus/OStatusPlugin.php @@ -111,7 +111,9 @@ class OStatusPlugin extends Plugin */ function onStartEnqueueNotice($notice, &$transports) { - if ($notice->isLocal()) { + // FIXME: we don't do privacy-controlled OStatus updates yet. + // once that happens, finer grain of control here. + if ($notice->isLocal() && $notice->inScope(null)) { // put our transport first, in case there's any conflict (like OMB) array_unshift($transports, 'ostatus'); } From 4eb02c624e152e58b37a3999f8570b49166361be Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Wed, 23 Mar 2011 16:42:36 -0700 Subject: [PATCH 62/90] Subscription_queue class for subscription approval --- classes/Subscription_queue.php | 69 ++++++++++++++++++++++++++++++++++ db/core.php | 2 + 2 files changed, 71 insertions(+) create mode 100644 classes/Subscription_queue.php diff --git a/classes/Subscription_queue.php b/classes/Subscription_queue.php new file mode 100644 index 0000000000..6bf4a681b2 --- /dev/null +++ b/classes/Subscription_queue.php @@ -0,0 +1,69 @@ + 'Holder for subscription requests awaiting moderation.', + 'fields' => array( + 'subscriber' => array('type' => 'int', 'not null' => true, 'description' => 'remote or local profile making the request'), + 'subscribed' => array('type' => 'int', 'not null' => true, 'description' => 'remote or local profile being subscribed to'), + 'created' => array('type' => 'datetime', 'not null' => true, 'description' => 'date this record was created'), + ), + 'primary key' => array('subscriber', 'subscribed'), + 'indexes' => array( + 'group_join_queue_profile_id_created_idx' => array('subscriber', 'created'), + 'group_join_queue_group_id_created_idx' => array('subscribed', 'created'), + ), + 'foreign keys' => array( + 'group_join_queue_subscriber_fkey' => array('profile', array('subscriber' => 'id')), + 'group_join_queue_subscribed_fkey' => array('profile', array('subscribed' => 'id')), + ) + ); + } + + public static function saveNew(Profile $subscriber, Profile $other) + { + $rq = new Group_join_queue(); + $rq->subscriber = $subscriber->id; + $rq->subscribed = $subscribed->id; + $rq->created = common_sql_now(); + $rq->insert(); + return $rq; + } + + /** + * Send notifications via email etc to group administrators about + * this exciting new pending moderation queue item! + */ + public function notify() + { + $subscriber = Profile::staticGet('id', $this->subscriber); + $subscribed = Profile::staticGet('id', $this->subscribed); + mail_notify_subscription_pending($subscribed, $subscriber); + } +} diff --git a/db/core.php b/db/core.php index 928186d94d..dfba0f8cd4 100644 --- a/db/core.php +++ b/db/core.php @@ -1028,3 +1028,5 @@ $schema['schema_version'] = array( ); $schema['group_join_queue'] = Group_join_queue::schemaDef(); + +$schema['subscription_queue'] = Subscription_queue::schemaDef(); From 11b40ddb1b4d95d90cc6ae032672deb08de13e77 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Wed, 23 Mar 2011 17:05:55 -0700 Subject: [PATCH 63/90] work in progress... --- actions/subscribe.php | 12 ++++++++---- classes/Profile.php | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 4 deletions(-) diff --git a/actions/subscribe.php b/actions/subscribe.php index 3837915d53..fad153fc6e 100644 --- a/actions/subscribe.php +++ b/actions/subscribe.php @@ -139,8 +139,8 @@ class SubscribeAction extends Action { // Throws exception on error - Subscription::start($this->user->getProfile(), - $this->other); + $sub = Subscription::start($this->user->getProfile(), + $this->other); if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); @@ -149,8 +149,12 @@ class SubscribeAction extends Action $this->element('title', null, _('Subscribed')); $this->elementEnd('head'); $this->elementStart('body'); - $unsubscribe = new UnsubscribeForm($this, $this->other); - $unsubscribe->show(); + if ($sub instanceof Subscription) { + $form = new UnsubscribeForm($this, $this->other); + } else { + $form = new CancelSubscriptionForm($this, $this->other); + } + $form->show(); $this->elementEnd('body'); $this->elementEnd('html'); } else { diff --git a/classes/Profile.php b/classes/Profile.php index b582451350..9a145a0018 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -363,6 +363,47 @@ class Profile extends Memcached_DataObject } } + /** + * Request a subscription to another local or remote profile. + * This will result in either the subscription going through + * immediately, being queued for approval, or being rejected + * immediately. + * + * @param Profile $profile + * @return mixed: Subscription or Subscription_queue object on success + * @throws Exception of various types on invalid state + */ + function subscribe($profile) + { + // + } + + /** + * Cancel an outstanding subscription request to the other profile. + * + * @param Profile $profile + */ + function cancelSubscribe($profile) + { + $request = Subscribe_join_queue::pkeyGet(array('subscriber' => $this->id, + 'subscribed' => $profile->id)); + if ($request) { + if (Event::handle('StartCancelSubscription', array($this, $profile))) { + $request->delete(); + Event::handle('EndCancelSubscription', array($this, $profile)); + } + } + } + + /** + * + * @param $profile + */ + function completeSubscribe($profile) + { + + } + function getSubscriptions($offset=0, $limit=null) { $subs = Subscription::bySubscriber($this->id, From df5def8ce4b9644cb03340de23e1fe90585218aa Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Mon, 28 Mar 2011 15:13:59 -0700 Subject: [PATCH 64/90] Work in progress: subscription approval policy field in place on user, hooked up to settings. Queue not 100% tidied up, no UI for queue or management yet. --- actions/approvegroup.php | 4 +- actions/cancelgroup.php | 2 +- actions/profilesettings.php | 17 ++++++- classes/Group_join_queue.php | 65 ++++++++++++++++++++++++++ classes/Profile.php | 84 ---------------------------------- classes/Subscription.php | 48 ++++++++++--------- classes/Subscription_queue.php | 29 ++++++++++++ classes/User.php | 4 ++ classes/statusnet.ini | 1 + db/core.php | 1 + 10 files changed, 145 insertions(+), 110 deletions(-) diff --git a/actions/approvegroup.php b/actions/approvegroup.php index 5039cfae6b..95338a4af3 100644 --- a/actions/approvegroup.php +++ b/actions/approvegroup.php @@ -152,9 +152,9 @@ class ApprovegroupAction extends Action try { if ($this->approve) { - $this->profile->completeJoinGroup($this->group); + $this->request->complete(); } elseif ($this->cancel) { - $this->profile->cancelJoinGroup($this->group); + $this->request->abort(); } } catch (Exception $e) { common_log(LOG_ERROR, "Exception canceling group sub: " . $e->getMessage()); diff --git a/actions/cancelgroup.php b/actions/cancelgroup.php index 57df1a10a7..15eb2b5dc3 100644 --- a/actions/cancelgroup.php +++ b/actions/cancelgroup.php @@ -139,7 +139,7 @@ class CancelgroupAction extends Action parent::handle($args); try { - $this->profile->cancelJoinGroup($this->group); + $this->request->abort(); } catch (Exception $e) { common_log(LOG_ERROR, "Exception canceling group sub: " . $e->getMessage()); // TRANS: Server error displayed when cancelling a queued group join request fails. diff --git a/actions/profilesettings.php b/actions/profilesettings.php index e1d686ca29..7aa987f3a5 100644 --- a/actions/profilesettings.php +++ b/actions/profilesettings.php @@ -192,6 +192,17 @@ class ProfilesettingsAction extends SettingsAction ($this->arg('autosubscribe')) ? $this->boolean('autosubscribe') : $user->autosubscribe); $this->elementEnd('li'); + $this->elementStart('li'); + $this->dropdown('subscribe_policy', + // TRANS: Dropdown field label on profile settings, for what policies to apply when someone else tries to subscribe to your updates. + _('Subscription policy'), + array(User::SUBSCRIBE_POLICY_OPEN => _('Let anyone follow me'), + User::SUBSCRIBE_POLICY_MODERATE => _('Ask me first')), + // TRANS: Dropdown field title on group edit form. + _('Whether other users need your permission to follow your updates.'), + false, + (empty($user->subscribe_policy)) ? User::SUBSCRIBE_POLICY_OPEN : $user->subscribe_policy); + $this->elementEnd('li'); } $this->elementEnd('ul'); // TRANS: Button to save input in profile settings. @@ -234,6 +245,7 @@ class ProfilesettingsAction extends SettingsAction $bio = $this->trimmed('bio'); $location = $this->trimmed('location'); $autosubscribe = $this->boolean('autosubscribe'); + $subscribe_policy = $this->trimmed('subscribe_policy'); $language = $this->trimmed('language'); $timezone = $this->trimmed('timezone'); $tagstring = $this->trimmed('tags'); @@ -333,11 +345,12 @@ class ProfilesettingsAction extends SettingsAction } // XXX: XOR - if ($user->autosubscribe ^ $autosubscribe) { + if (($user->autosubscribe ^ $autosubscribe) || $user->subscribe_policy != $subscribe_policy) { $original = clone($user); $user->autosubscribe = $autosubscribe; + $user->subscribe_policy = $subscribe_policy; $result = $user->update($original); @@ -345,7 +358,7 @@ class ProfilesettingsAction extends SettingsAction common_log_db_error($user, 'UPDATE', __FILE__); // TRANS: Server error thrown when user profile settings could not be updated to // TRANS: automatically subscribe to any subscriber. - $this->serverError(_('Could not update user for autosubscribe.')); + $this->serverError(_('Could not update user for autosubscribe or subscribe_policy.')); return; } } diff --git a/classes/Group_join_queue.php b/classes/Group_join_queue.php index 48b36cae2d..acf3a13957 100644 --- a/classes/Group_join_queue.php +++ b/classes/Group_join_queue.php @@ -56,6 +56,71 @@ class Group_join_queue extends Managed_DataObject return $rq; } + function getMember() + { + $member = Profile::staticGet('id', $this->profile_id); + + if (empty($member)) { + // TRANS: Exception thrown providing an invalid profile ID. + // TRANS: %s is the invalid profile ID. + throw new Exception(sprintf(_("Profile ID %s is invalid."),$this->profile_id)); + } + + return $member; + } + + function getGroup() + { + $group = User_group::staticGet('id', $this->group_id); + + if (empty($group)) { + // TRANS: Exception thrown providing an invalid group ID. + // TRANS: %s is the invalid group ID. + throw new Exception(sprintf(_("Group ID %s is invalid."),$this->group_id)); + } + + return $group; + } + + /** + * Abort the pending group join... + * + * @param User_group $group + */ + function abort() + { + $profile = $this->getMember(); + $group = $this->getGroup(); + if ($request) { + if (Event::handle('StartCancelJoinGroup', array($profile, $group))) { + $this->delete(); + Event::handle('EndCancelJoinGroup', array($profile, $group)); + } + } + } + + /** + * Complete a pending group join... + * + * @return Group_member object on success + */ + function complete(User_group $group) + { + $join = null; + $profile = $this->getMember(); + $group = $this->getGroup(); + if (Event::handle('StartJoinGroup', array($profile, $group))) { + $join = Group_member::join($group->id, $profile->id); + $this->delete(); + Event::handle('EndJoinGroup', array($profile, $group)); + } + if (!$join) { + throw new Exception('Internal error: group join failed.'); + } + $join->notify(); + return $join; + } + /** * Send notifications via email etc to group administrators about * this exciting new pending moderation queue item! diff --git a/classes/Profile.php b/classes/Profile.php index 9a145a0018..98fe9ede2f 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -297,49 +297,6 @@ class Profile extends Memcached_DataObject return $join; } - /** - * Cancel a pending group join... - * - * @param User_group $group - */ - function cancelJoinGroup(User_group $group) - { - $request = Group_join_queue::pkeyGet(array('profile_id' => $this->id, - 'group_id' => $group->id)); - if ($request) { - if (Event::handle('StartCancelJoinGroup', array($group, $this))) { - $request->delete(); - Event::handle('EndCancelJoinGroup', array($group, $this)); - } - } - } - - /** - * Complete a pending group join on our end... - * - * @param User_group $group - */ - function completeJoinGroup(User_group $group) - { - $join = null; - $request = Group_join_queue::pkeyGet(array('profile_id' => $this->id, - 'group_id' => $group->id)); - if ($request) { - if (Event::handle('StartJoinGroup', array($group, $this))) { - $join = Group_member::join($group->id, $this->id); - $request->delete(); - Event::handle('EndJoinGroup', array($group, $this)); - } - } else { - // TRANS: Exception thrown trying to approve a non-existing group join request. - throw new Exception(_('Invalid group join approval: not pending.')); - } - if ($join) { - $join->notify(); - } - return $join; - } - /** * Leave a group that this profile is a member of. * @@ -363,47 +320,6 @@ class Profile extends Memcached_DataObject } } - /** - * Request a subscription to another local or remote profile. - * This will result in either the subscription going through - * immediately, being queued for approval, or being rejected - * immediately. - * - * @param Profile $profile - * @return mixed: Subscription or Subscription_queue object on success - * @throws Exception of various types on invalid state - */ - function subscribe($profile) - { - // - } - - /** - * Cancel an outstanding subscription request to the other profile. - * - * @param Profile $profile - */ - function cancelSubscribe($profile) - { - $request = Subscribe_join_queue::pkeyGet(array('subscriber' => $this->id, - 'subscribed' => $profile->id)); - if ($request) { - if (Event::handle('StartCancelSubscription', array($this, $profile))) { - $request->delete(); - Event::handle('EndCancelSubscription', array($this, $profile)); - } - } - } - - /** - * - * @param $profile - */ - function completeSubscribe($profile) - { - - } - function getSubscriptions($offset=0, $limit=null) { $subs = Subscription::bySubscriber($this->id, diff --git a/classes/Subscription.php b/classes/Subscription.php index 797e6fef1c..70d351a0f7 100644 --- a/classes/Subscription.php +++ b/classes/Subscription.php @@ -27,6 +27,7 @@ require_once INSTALLDIR.'/classes/Memcached_DataObject.php'; class Subscription extends Memcached_DataObject { const CACHE_WINDOW = 201; + const FORCE = true; ###START_AUTOCODE /* the code below is auto generated do not remove the above tag */ @@ -58,11 +59,12 @@ class Subscription extends Memcached_DataObject * * @param Profile $subscriber party to receive new notices * @param Profile $other party sending notices; publisher + * @param bool $force pass Subscription::FORCE to override local subscription approval * - * @return Subscription new subscription + * @return mixed Subscription or Subscription_queue: new subscription info */ - static function start($subscriber, $other) + static function start($subscriber, $other, $force=false) { // @fixme should we enforce this as profiles in callers instead? if ($subscriber instanceof User) { @@ -88,28 +90,32 @@ class Subscription extends Memcached_DataObject } if (Event::handle('StartSubscribe', array($subscriber, $other))) { - $sub = self::saveNew($subscriber->id, $other->id); - $sub->notify(); - - self::blow('user:notices_with_friends:%d', $subscriber->id); - - self::blow('subscription:by-subscriber:'.$subscriber->id); - self::blow('subscription:by-subscribed:'.$other->id); - - $subscriber->blowSubscriptionCount(); - $other->blowSubscriberCount(); - $otherUser = User::staticGet('id', $other->id); + if ($otherUser && $otherUser->subscribe_policy == User::SUBSCRIBE_POLICY_MODERATE && !$force) { + $sub = Subscription_queue::saveNew($subscriber, $other); + $sub->notify(); + } else { + $sub = self::saveNew($subscriber->id, $other->id); + $sub->notify(); - if (!empty($otherUser) && - $otherUser->autosubscribe && - !self::exists($other, $subscriber) && - !$subscriber->hasBlocked($other)) { + self::blow('user:notices_with_friends:%d', $subscriber->id); - try { - self::start($other, $subscriber); - } catch (Exception $e) { - common_log(LOG_ERR, "Exception during autosubscribe of {$other->nickname} to profile {$subscriber->id}: {$e->getMessage()}"); + self::blow('subscription:by-subscriber:'.$subscriber->id); + self::blow('subscription:by-subscribed:'.$other->id); + + $subscriber->blowSubscriptionCount(); + $other->blowSubscriberCount(); + + if (!empty($otherUser) && + $otherUser->autosubscribe && + !self::exists($other, $subscriber) && + !$subscriber->hasBlocked($other)) { + + try { + self::start($other, $subscriber); + } catch (Exception $e) { + common_log(LOG_ERR, "Exception during autosubscribe of {$other->nickname} to profile {$subscriber->id}: {$e->getMessage()}"); + } } } diff --git a/classes/Subscription_queue.php b/classes/Subscription_queue.php index 6bf4a681b2..e7572ae725 100644 --- a/classes/Subscription_queue.php +++ b/classes/Subscription_queue.php @@ -56,6 +56,35 @@ class Subscription_queue extends Managed_DataObject return $rq; } + /** + * Complete a pending subscription, as we've got approval of some sort. + * + * @return Subscription + */ + public function complete() + { + $subscriber = Profile::staticGet('id', $this->subscriber); + $subscribed = Profile::staticGet('id', $this->subscribed); + $sub = Subscription::start($subscriber, $other, Subscription::FORCE); + if ($sub) { + $this->delete(); + } + return $sub; + } + + /** + * Cancel an outstanding subscription request to the other profile. + */ + public function abort($profile) + { + $subscriber = Profile::staticGet('id', $this->subscriber); + $subscribed = Profile::staticGet('id', $this->subscribed); + if (Event::handle('StartCancelSubscription', array($subscriber, $subscribed))) { + $this->delete(); + Event::handle('EndCancelSubscription', array($subscriber, $subscribed)); + } + } + /** * Send notifications via email etc to group administrators about * this exciting new pending moderation queue item! diff --git a/classes/User.php b/classes/User.php index 1a3a7dfd72..5945456b18 100644 --- a/classes/User.php +++ b/classes/User.php @@ -30,6 +30,9 @@ require_once 'Validate.php'; class User extends Memcached_DataObject { + const SUBSCRIBE_POLICY_OPEN = 0; + const SUBSCRIBE_POLICY_MODERATE = 1; + ###START_AUTOCODE /* the code below is auto generated do not remove the above tag */ @@ -55,6 +58,7 @@ class User extends Memcached_DataObject public $smsemail; // varchar(255) public $uri; // varchar(255) unique_key public $autosubscribe; // tinyint(1) + public $subscribe_policy; // tinyint(1) public $urlshorteningservice; // varchar(50) default_ur1.ca public $inboxed; // tinyint(1) public $design_id; // int(4) diff --git a/classes/statusnet.ini b/classes/statusnet.ini index f648fb3fbf..ab2c3d02ef 100644 --- a/classes/statusnet.ini +++ b/classes/statusnet.ini @@ -590,6 +590,7 @@ smsreplies = 17 smsemail = 2 uri = 2 autosubscribe = 17 +subscribe_policy = 17 urlshorteningservice = 2 inboxed = 17 design_id = 1 diff --git a/db/core.php b/db/core.php index dfba0f8cd4..f44a85cad7 100644 --- a/db/core.php +++ b/db/core.php @@ -118,6 +118,7 @@ $schema['user'] = array( 'smsemail' => array('type' => 'varchar', 'length' => 255, 'description' => 'built from sms and carrier'), 'uri' => array('type' => 'varchar', 'length' => 255, 'description' => 'universally unique identifier, usually a tag URI'), 'autosubscribe' => array('type' => 'int', 'size' => 'tiny', 'default' => 0, 'description' => 'automatically subscribe to users who subscribe to us'), + 'subscribe_policy' => array('type' => 'int', 'size' => 'tiny', 'default' => 0, 'description' => '0 = anybody can subscribe; 1 = require approval'), 'urlshorteningservice' => array('type' => 'varchar', 'length' => 50, 'default' => 'internal', 'description' => 'service to use for auto-shortening URLs'), 'inboxed' => array('type' => 'int', 'size' => 'tiny', 'default' => 0, 'description' => 'has an inbox been created for this user?'), 'design_id' => array('type' => 'int', 'description' => 'id of a design'), From a70e68e09c4d936a88847d7623b43264050c7312 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Mon, 28 Mar 2011 16:12:51 -0700 Subject: [PATCH 65/90] Work in progress: can create & cancel sub requests --- classes/Profile.php | 11 +++++++++++ classes/Subscription_queue.php | 21 ++++++++++++++------- classes/User.php | 6 ++++++ lib/accountprofileblock.php | 3 +++ lib/router.php | 3 ++- 5 files changed, 36 insertions(+), 8 deletions(-) diff --git a/classes/Profile.php b/classes/Profile.php index 98fe9ede2f..94e709b508 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -413,6 +413,17 @@ class Profile extends Memcached_DataObject { return Subscription::exists($this, $other); } + + /** + * Check if a pending subscription request is outstanding for this... + * + * @param Profile $other + * @return boolean + */ + function hasPendingSubscription($other) + { + return Subscription_queue::exists($this, $other); + } /** * Are these two profiles subscribed to each other? diff --git a/classes/Subscription_queue.php b/classes/Subscription_queue.php index e7572ae725..3e254dfce1 100644 --- a/classes/Subscription_queue.php +++ b/classes/Subscription_queue.php @@ -36,19 +36,19 @@ class Subscription_queue extends Managed_DataObject ), 'primary key' => array('subscriber', 'subscribed'), 'indexes' => array( - 'group_join_queue_profile_id_created_idx' => array('subscriber', 'created'), - 'group_join_queue_group_id_created_idx' => array('subscribed', 'created'), + 'subscription_queue_subscriber_created_idx' => array('subscriber', 'created'), + 'subscription_queue_subscribed_created_idx' => array('subscribed', 'created'), ), 'foreign keys' => array( - 'group_join_queue_subscriber_fkey' => array('profile', array('subscriber' => 'id')), - 'group_join_queue_subscribed_fkey' => array('profile', array('subscribed' => 'id')), + 'subscription_queue_subscriber_fkey' => array('profile', array('subscriber' => 'id')), + 'subscription_queue_subscribed_fkey' => array('profile', array('subscribed' => 'id')), ) ); } - public static function saveNew(Profile $subscriber, Profile $other) + public static function saveNew(Profile $subscriber, Profile $subscribed) { - $rq = new Group_join_queue(); + $rq = new Subscription_queue(); $rq->subscriber = $subscriber->id; $rq->subscribed = $subscribed->id; $rq->created = common_sql_now(); @@ -56,6 +56,13 @@ class Subscription_queue extends Managed_DataObject return $rq; } + function exists($subscriber, $other) + { + $sub = Subscription_queue::pkeyGet(array('subscriber' => $subscriber->id, + 'subscribed' => $other->id)); + return (empty($sub)) ? false : true; + } + /** * Complete a pending subscription, as we've got approval of some sort. * @@ -93,6 +100,6 @@ class Subscription_queue extends Managed_DataObject { $subscriber = Profile::staticGet('id', $this->subscriber); $subscribed = Profile::staticGet('id', $this->subscribed); - mail_notify_subscription_pending($subscribed, $subscriber); + //mail_notify_subscription_pending($subscribed, $subscriber); } } diff --git a/classes/User.php b/classes/User.php index 5945456b18..f395dc1e49 100644 --- a/classes/User.php +++ b/classes/User.php @@ -90,6 +90,12 @@ class User extends Memcached_DataObject return $profile->isSubscribed($other); } + function hasPendingSubscription($other) + { + $profile = $this->getProfile(); + return $profile->hasPendingSubscription($other); + } + // 'update' won't write key columns, so we have to do it ourselves. function updateKeys(&$orig) diff --git a/lib/accountprofileblock.php b/lib/accountprofileblock.php index a8bdb4715b..6a4021bf04 100644 --- a/lib/accountprofileblock.php +++ b/lib/accountprofileblock.php @@ -144,6 +144,9 @@ class AccountProfileBlock extends ProfileBlock if ($cur->isSubscribed($this->profile)) { $usf = new UnsubscribeForm($this->out, $this->profile); $usf->show(); + } else if ($cur->hasPendingSubscription($this->profile)) { + $sf = new CancelSubscriptionForm($this->out, $this->profile); + $sf->show(); } else { $sf = new SubscribeForm($this->out, $this->profile); $sf->show(); diff --git a/lib/router.php b/lib/router.php index fa9fe9aee1..2cbb1ad649 100644 --- a/lib/router.php +++ b/lib/router.php @@ -199,7 +199,8 @@ class Router // main stuff is repetitive $main = array('login', 'logout', 'register', 'subscribe', - 'unsubscribe', 'confirmaddress', 'recoverpassword', + 'unsubscribe', 'cancelsubscription', + 'confirmaddress', 'recoverpassword', 'invite', 'favor', 'disfavor', 'sup', 'block', 'unblock', 'subedit', 'groupblock', 'groupunblock', From e5b5c256a37f57f596e2db0959fad1d40f3bef35 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Mon, 28 Mar 2011 17:06:02 -0700 Subject: [PATCH 66/90] Working subscription approval! --- actions/approvegroup.php | 2 +- actions/approvesub.php | 145 +++++++++++++++++++++++++++++++++ actions/cancelgroup.php | 2 +- actions/cancelsubscription.php | 119 +++++++++++++++++++++++++++ actions/groupqueue.php | 2 +- actions/subqueue.php | 142 ++++++++++++++++++++++++++++++++ classes/Profile.php | 30 +++++++ classes/Subscription.php | 2 +- classes/Subscription_queue.php | 4 +- lib/approvesubform.php | 114 ++++++++++++++++++++++++++ lib/cancelsubscriptionform.php | 129 +++++++++++++++++++++++++++++ lib/router.php | 9 +- lib/subgroupnav.php | 21 +++++ 13 files changed, 714 insertions(+), 7 deletions(-) create mode 100644 actions/approvesub.php create mode 100644 actions/cancelsubscription.php create mode 100644 actions/subqueue.php create mode 100644 lib/approvesubform.php create mode 100644 lib/cancelsubscriptionform.php diff --git a/actions/approvegroup.php b/actions/approvegroup.php index 95338a4af3..55a0a6c3fd 100644 --- a/actions/approvegroup.php +++ b/actions/approvegroup.php @@ -157,7 +157,7 @@ class ApprovegroupAction extends Action $this->request->abort(); } } catch (Exception $e) { - common_log(LOG_ERROR, "Exception canceling group sub: " . $e->getMessage()); + common_log(LOG_ERR, "Exception canceling group sub: " . $e->getMessage()); // TRANS: Server error displayed when cancelling a queued group join request fails. // TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. $this->serverError(sprintf(_('Could not cancel request for user %1$s to join group %2$s.'), diff --git a/actions/approvesub.php b/actions/approvesub.php new file mode 100644 index 0000000000..d30da25d32 --- /dev/null +++ b/actions/approvesub.php @@ -0,0 +1,145 @@ +. + * + * @category Group + * @package StatusNet + * @author Evan Prodromou + * @copyright 2008-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); +} + +/** + * Leave a group + * + * This is the action for leaving a group. It works more or less like the subscribe action + * for users. + * + * @category Group + * @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 ApprovesubAction extends Action +{ + var $profile = null; + + /** + * Prepare to run + */ + function prepare($args) + { + parent::prepare($args); + + $cur = common_current_user(); + if (empty($cur)) { + // TRANS: Client error displayed trying to approve group membership while not logged in. + $this->clientError(_('Must be logged in.'), 403); + return false; + } + if ($this->arg('profile_id')) { + $this->profile = Profile::staticGet('id', $this->arg('profile_id')); + } else { + // TRANS: Client error displayed trying to approve subscriptionswithout specifying a profile to approve. + $this->clientError(_('Must specify a profile.')); + return false; + } + + $this->request = Subscription_queue::pkeyGet(array('subscriber' => $this->profile->id, + 'subscribed' => $cur->id)); + + if (empty($this->request)) { + // TRANS: Client error displayed trying to approve subscription for a non-existing request. + $this->clientError(sprintf(_('%s is not in the moderation queue for your subscriptions.'), $this->profile->nickname), 403); + } + + $this->approve = (bool)$this->arg('approve'); + $this->cancel = (bool)$this->arg('cancel'); + if (!$this->approve && !$this->cancel) { + // TRANS: Client error displayed trying to approve/deny subscription. + $this->clientError(_('Internal error: received neither cancel nor abort.')); + } + if ($this->approve && $this->cancel) { + // TRANS: Client error displayed trying to approve/deny subscription + $this->clientError(_('Internal error: received both cancel and abort.')); + } + return true; + } + + /** + * Handle the request + * + * On POST, add the current user to the group + * + * @param array $args unused + * + * @return void + */ + function handle($args) + { + parent::handle($args); + $cur = common_current_user(); + + try { + if ($this->approve) { + $this->request->complete(); + } elseif ($this->cancel) { + $this->request->abort(); + } + } catch (Exception $e) { + common_log(LOG_ERR, "Exception canceling sub: " . $e->getMessage()); + // TRANS: Server error displayed when cancelling a queued subscription request fails. + // TRANS: %1$s is the leaving user's nickname, $2$s is the nickname for which the leave failed. + $this->serverError(sprintf(_('Could not cancel or approve request for user %1$s to join group %2$s.'), + $this->profile->nickname, $cur->nickname)); + return; + } + + if ($this->boolean('ajax')) { + $this->startHTML('text/xml;charset=utf-8'); + $this->elementStart('head'); + // TRANS: Title for subscription approval ajax return + // TRANS: %1$s is the approved user's nickname + $this->element('title', null, sprintf(_m('TITLE','%1$s\'s request'), + $this->profile->nickname)); + $this->elementEnd('head'); + $this->elementStart('body'); + if ($this->approve) { + // TRANS: Message on page for user after approving a subscription request. + $this->element('p', 'success', _('Subscription approved.')); + } elseif ($this->cancel) { + // TRANS: Message on page for user after rejecting a subscription request. + $this->element('p', 'success', _('Subscription canceled.')); + } + $this->elementEnd('body'); + $this->elementEnd('html'); + } else { + common_redirect(common_local_url('subqueue', array('nickname' => + $cur->nickname)), + 303); + } + } +} diff --git a/actions/cancelgroup.php b/actions/cancelgroup.php index 15eb2b5dc3..3074e3ffa3 100644 --- a/actions/cancelgroup.php +++ b/actions/cancelgroup.php @@ -141,7 +141,7 @@ class CancelgroupAction extends Action try { $this->request->abort(); } catch (Exception $e) { - common_log(LOG_ERROR, "Exception canceling group sub: " . $e->getMessage()); + common_log(LOG_ERR, "Exception canceling group sub: " . $e->getMessage()); // TRANS: Server error displayed when cancelling a queued group join request fails. // TRANS: %1$s is the leaving user's nickname, $2$s is the group nickname for which the leave failed. $this->serverError(sprintf(_('Could not cancel request for user %1$s to join group %2$s.'), diff --git a/actions/cancelsubscription.php b/actions/cancelsubscription.php new file mode 100644 index 0000000000..367fbfa138 --- /dev/null +++ b/actions/cancelsubscription.php @@ -0,0 +1,119 @@ +. + * + * @category Group + * @package StatusNet + * @author Evan Prodromou + * @copyright 2008-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); +} + +/** + * Leave a group + * + * This is the action for leaving a group. It works more or less like the subscribe action + * for users. + * + * @category Group + * @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 CancelsubscriptionAction extends Action +{ + + function handle($args) + { + parent::handle($args); + if ($this->boolean('ajax')) { + StatusNet::setApi(true); + } + if (!common_logged_in()) { + $this->clientError(_('Not logged in.')); + return; + } + + $user = common_current_user(); + + if ($_SERVER['REQUEST_METHOD'] != 'POST') { + common_redirect(common_local_url('subscriptions', + array('nickname' => $user->nickname))); + return; + } + + /* Use a session token for CSRF protection. */ + + $token = $this->trimmed('token'); + + if (!$token || $token != common_session_token()) { + $this->clientError(_('There was a problem with your session token. ' . + 'Try again, please.')); + return; + } + + $other_id = $this->arg('unsubscribeto'); + + if (!$other_id) { + $this->clientError(_('No profile ID in request.')); + return; + } + + $other = Profile::staticGet('id', $other_id); + + if (!$other) { + $this->clientError(_('No profile with that ID.')); + return; + } + + $this->request = Subscription_queue::pkeyGet(array('subscriber' => $user->id, + 'subscribed' => $other->id)); + + if (empty($this->request)) { + // TRANS: Client error displayed when trying to approve a non-existing group join request. + // TRANS: %s is a user nickname. + $this->clientError(sprintf(_('%s is not in the moderation queue for this group.'), $this->profile->nickname), 403); + } + + $this->request->abort(); + + if ($this->boolean('ajax')) { + $this->startHTML('text/xml;charset=utf-8'); + $this->elementStart('head'); + $this->element('title', null, _('Unsubscribed')); + $this->elementEnd('head'); + $this->elementStart('body'); + $subscribe = new SubscribeForm($this, $other); + $subscribe->show(); + $this->elementEnd('body'); + $this->elementEnd('html'); + } else { + common_redirect(common_local_url('subscriptions', + array('nickname' => $user->nickname)), + 303); + } + } +} diff --git a/actions/groupqueue.php b/actions/groupqueue.php index dca0ff7bd5..c6f54d57d7 100644 --- a/actions/groupqueue.php +++ b/actions/groupqueue.php @@ -156,7 +156,7 @@ class GroupqueueAction extends GroupDesignAction $members->free(); $this->pagination($this->page > 1, $cnt > PROFILES_PER_PAGE, - $this->page, 'groupmembers', + $this->page, 'groupqueue', array('nickname' => $this->group->nickname)); } } diff --git a/actions/subqueue.php b/actions/subqueue.php new file mode 100644 index 0000000000..38bc16e562 --- /dev/null +++ b/actions/subqueue.php @@ -0,0 +1,142 @@ +. + * + * @category Group + * @package StatusNet + * @author Evan Prodromou + * @copyright 2008-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/profilelist.php'); + +/** + * List of group members + * + * @category Group + * @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 SubqueueAction extends GalleryAction +{ + var $page = null; + + function isReadOnly($args) + { + return true; + } + + // @todo FIXME: most of this belongs in a base class, sounds common to most group actions? + function prepare($args) + { + parent::prepare($args); + + $cur = common_current_user(); + if (!$cur || $cur->id != $this->profile->id) { + // TRANS: Client error displayed when trying to approve group applicants without being a group administrator. + $this->clientError(_('You may only approve your own pending subscriptions.')); + return false; + } + return true; + } + + function title() + { + if ($this->page == 1) { + // TRANS: Title of the first page showing pending subscribers still awaiting approval. + // TRANS: %s is the name of the user. + return sprintf(_('%s subscribers awaiting approval'), + $this->profile->nickname); + } else { + // TRANS: Title of all but the first page showing pending subscribersmembers still awaiting approval. + // TRANS: %1$s is the name of the user, %2$d is the page number of the members list. + return sprintf(_('%1$s subscribers awaiting approval, page %2$d'), + $this->profile->nickname, + $this->page); + } + } + + function showPageNotice() + { + $this->element('p', 'instructions', + // TRANS: Page notice for group members page. + _('A list of users awaiting approval to subscribe to you.')); + } + + + function showContent() + { + $offset = ($this->page-1) * PROFILES_PER_PAGE; + $limit = PROFILES_PER_PAGE + 1; + + $cnt = 0; + + $members = $this->profile->getRequests($offset, $limit); + + if ($members) { + // @fixme change! + $member_list = new SubQueueList($members, $this); + $cnt = $member_list->show(); + } + + $members->free(); + + $this->pagination($this->page > 1, $cnt > PROFILES_PER_PAGE, + $this->page, 'subqueue', + array('nickname' => $this->profile->nickname)); // urgh + } +} + +class SubQueueList extends ProfileList +{ + function newListItem($profile) + { + return new SubQueueListItem($profile, $this->action); + } +} + +class SubQueueListItem extends ProfileListItem +{ + function showActions() + { + $this->startActions(); + if (Event::handle('StartProfileListItemActionElements', array($this))) { + $this->showApproveButtons(); + Event::handle('EndProfileListItemActionElements', array($this)); + } + $this->endActions(); + } + + function showApproveButtons() + { + $this->out->elementStart('li', 'entity_approval'); + $form = new ApproveSubForm($this->out, $this->profile); + $form->show(); + $this->out->elementEnd('li'); + } +} diff --git a/classes/Profile.php b/classes/Profile.php index 94e709b508..3d989dd974 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -356,6 +356,36 @@ class Profile extends Memcached_DataObject return new ArrayWrapper($profiles); } + /** + * Get pending subscribers, who have not yet been approved. + * + * @param int $offset + * @param int $limit + * @return Profile + */ + function getRequests($offset=0, $limit=null) + { + $qry = + 'SELECT profile.* ' . + 'FROM profile JOIN subscription_queue '. + 'ON profile.id = subscription_queue.subscriber ' . + 'WHERE subscription_queue.subscribed = %d ' . + 'ORDER BY subscription_queue.created DESC '; + + if ($limit != null) { + if (common_config('db','type') == 'pgsql') { + $qry .= ' LIMIT ' . $limit . ' OFFSET ' . $offset; + } else { + $qry .= ' LIMIT ' . $offset . ', ' . $limit; + } + } + + $members = new Profile(); + + $members->query(sprintf($qry, $this->id)); + return $members; + } + function subscriptionCount() { $c = Cache::instance(); diff --git a/classes/Subscription.php b/classes/Subscription.php index 70d351a0f7..438f1dfe50 100644 --- a/classes/Subscription.php +++ b/classes/Subscription.php @@ -122,7 +122,7 @@ class Subscription extends Memcached_DataObject Event::handle('EndSubscribe', array($subscriber, $other)); } - return true; + return $sub; } /** diff --git a/classes/Subscription_queue.php b/classes/Subscription_queue.php index 3e254dfce1..41c0a54fa8 100644 --- a/classes/Subscription_queue.php +++ b/classes/Subscription_queue.php @@ -72,7 +72,7 @@ class Subscription_queue extends Managed_DataObject { $subscriber = Profile::staticGet('id', $this->subscriber); $subscribed = Profile::staticGet('id', $this->subscribed); - $sub = Subscription::start($subscriber, $other, Subscription::FORCE); + $sub = Subscription::start($subscriber, $subscribed, Subscription::FORCE); if ($sub) { $this->delete(); } @@ -82,7 +82,7 @@ class Subscription_queue extends Managed_DataObject /** * Cancel an outstanding subscription request to the other profile. */ - public function abort($profile) + public function abort() { $subscriber = Profile::staticGet('id', $this->subscriber); $subscribed = Profile::staticGet('id', $this->subscribed); diff --git a/lib/approvesubform.php b/lib/approvesubform.php new file mode 100644 index 0000000000..820f648d0f --- /dev/null +++ b/lib/approvesubform.php @@ -0,0 +1,114 @@ +. + * + * @category Form + * @package StatusNet + * @author Evan Prodromou + * @author Sarven Capadisli + * @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 leaving a group + * + * @category Form + * @package StatusNet + * @author Evan Prodromou + * @author Sarven Capadisli + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + * + * @see UnsubscribeForm + */ +class ApproveSubForm extends Form +{ + var $profile = null; + + /** + * Constructor + * + * @param HTMLOutputter $out output channel + * @param Profile $profile user whose request to accept or drop + */ + function __construct($out=null, $profile=null) + { + parent::__construct($out); + + $this->profile = $profile; + } + + /** + * ID of the form + * + * @return string ID of the form + */ + function id() + { + return 'sub-queue-' . $this->profile->id; + } + + /** + * class of the form + * + * @return string of the form class + */ + function formClass() + { + return 'form_sub_queue ajax'; + } + + /** + * Action of the form + * + * @return string URL of the action + */ + function action() + { + $params = array(); + if ($this->profile) { + $params['profile_id'] = $this->profile->id; + } + return common_local_url('approvesub', + array(), $params); + } + + /** + * Action elements + * + * @return void + */ + + function formActions() + { + // TRANS: Submit button text to accept a subscription request on approve sub form. + $this->out->submit('approve', _m('BUTTON','Accept')); + // TRANS: Submit button text to reject a subscription request on approve sub form. + $this->out->submit('cancel', _m('BUTTON','Reject')); + } +} diff --git a/lib/cancelsubscriptionform.php b/lib/cancelsubscriptionform.php new file mode 100644 index 0000000000..1173152c63 --- /dev/null +++ b/lib/cancelsubscriptionform.php @@ -0,0 +1,129 @@ +. + * + * @category Form + * @package StatusNet + * @author Evan Prodromou + * @author Sarven Capadisli + * @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 leaving a group + * + * @category Form + * @package StatusNet + * @author Evan Prodromou + * @author Sarven Capadisli + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link http://status.net/ + * + * @see UnsubscribeForm + */ + +class CancelSubscriptionForm extends Form +{ + /** + * user being subscribed to + */ + + var $profile = null; + + /** + * Constructor + * + * @param HTMLOutputter $out output channel + * @param Profile $profile being subscribed to + */ + + function __construct($out=null, $profile=null) + { + parent::__construct($out); + + $this->profile = $profile; + } + + /** + * ID of the form + * + * @return string ID of the form + */ + + function id() + { + return 'subscription-cancel-' . $this->profile->id; + } + + /** + * class of the form + * + * @return string of the form class + */ + + function formClass() + { + return 'form_unsubscribe ajax'; + } + + /** + * Action of the form + * + * @return string URL of the action + */ + + function action() + { + return common_local_url('cancelsubscription', + array(), + array('id' => $this->profile->id)); + } + + /** + * Data elements of the form + * + * @return void + */ + function formData() + { + $this->out->hidden('unsubscribeto-' . $this->profile->id, + $this->profile->id, + 'unsubscribeto'); + } + + /** + * Action elements + * + * @return void + */ + + function formActions() + { + $this->out->submit('submit', _('Cancel sub request')); + } +} diff --git a/lib/router.php b/lib/router.php index 2cbb1ad649..156bc10c7f 100644 --- a/lib/router.php +++ b/lib/router.php @@ -199,7 +199,7 @@ class Router // main stuff is repetitive $main = array('login', 'logout', 'register', 'subscribe', - 'unsubscribe', 'cancelsubscription', + 'unsubscribe', 'cancelsubscription', 'approvesub', 'confirmaddress', 'recoverpassword', 'invite', 'favor', 'disfavor', 'sup', 'block', 'unblock', 'subedit', @@ -844,6 +844,10 @@ class Router array('tag' => self::REGEX_TAG)); } + $m->connect('subscribers/pending', + array('action' => 'subqueue', + 'nickname' => $nickname)); + foreach (array('rss', 'groups') as $a) { $m->connect($a, array('action' => 'user'.$a, @@ -900,6 +904,9 @@ class Router array('action' => $a), array('nickname' => Nickname::DISPLAY_FMT)); } + $m->connect(':nickname/subscribers/pending', + array('action' => 'subqueue'), + array('nickname' => Nickname::DISPLAY_FMT)); foreach (array('subscriptions', 'subscribers') as $a) { $m->connect(':nickname/'.$a.'/:tag', diff --git a/lib/subgroupnav.php b/lib/subgroupnav.php index ee4b0a8dff..b0ec364bff 100644 --- a/lib/subgroupnav.php +++ b/lib/subgroupnav.php @@ -96,6 +96,20 @@ class SubGroupNav extends Menu $this->user->nickname), $action == 'subscribers', 'nav_subscribers'); + if ($cur && $cur->id == $this->user->id) { + // Possibly site admins should be able to get in here too + $pending = $this->countPendingSubs(); + if ($pending || $cur->subscribe_policy == User::SUBSCRIBE_POLICY_MODERATE) { + $this->out->menuItem(common_local_url('subqueue', + array('nickname' => + $this->user->nickname)), + sprintf(_('Pending (%d)'), $pending), + sprintf(_('Approve pending subscription requests'), + $this->user->nickname), + $action == 'subqueueaction', + 'nav_subscribers'); + } + } $this->out->menuItem(common_local_url('usergroups', array('nickname' => $this->user->nickname)), @@ -118,4 +132,11 @@ class SubGroupNav extends Menu $this->out->elementEnd('ul'); } + + function countPendingSubs() + { + $req = new Subscription_queue(); + $req->subscribed = $this->user->id; + return $req->count(); + } } From 5d31dd259a4daf05d02302ffcf1d48b3c9322e47 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Mon, 28 Mar 2011 17:15:48 -0700 Subject: [PATCH 67/90] Subscription pending notification mail --- classes/Subscription_queue.php | 6 ++--- lib/mail.php | 43 ++++++++++++++++++++++++++++++++++ 2 files changed, 46 insertions(+), 3 deletions(-) diff --git a/classes/Subscription_queue.php b/classes/Subscription_queue.php index 41c0a54fa8..3c67790271 100644 --- a/classes/Subscription_queue.php +++ b/classes/Subscription_queue.php @@ -98,8 +98,8 @@ class Subscription_queue extends Managed_DataObject */ public function notify() { - $subscriber = Profile::staticGet('id', $this->subscriber); - $subscribed = Profile::staticGet('id', $this->subscribed); - //mail_notify_subscription_pending($subscribed, $subscriber); + $listenee = User::staticGet('id', $this->subscriber); + $other = Profile::staticGet('id', $this->subscribed); + mail_subscribe_pending_notify_profile($listenee, $other); } } diff --git a/lib/mail.php b/lib/mail.php index 708e5349b1..e8c5d3c4e7 100644 --- a/lib/mail.php +++ b/lib/mail.php @@ -259,6 +259,49 @@ function mail_subscribe_notify_profile($listenee, $other) } } +function mail_subscribe_pending_notify_profile($listenee, $other) +{ + if ($other->hasRight(Right::EMAILONSUBSCRIBE) && + $listenee->email && $listenee->emailnotifysub) { + + $profile = $listenee->getProfile(); + + $name = $profile->getBestName(); + + $long_name = ($other->fullname) ? + ($other->fullname . ' (' . $other->nickname . ')') : $other->nickname; + + $recipients = $listenee->email; + + // use the recipient's localization + common_switch_locale($listenee->language); + + $headers = _mail_prepare_headers('subscribe', $listenee->nickname, $other->nickname); + $headers['From'] = mail_notify_from(); + $headers['To'] = $name . ' <' . $listenee->email . '>'; + // TRANS: Subject of pending new-subscriber notification e-mail. + // TRANS: %1$s is the subscribing user's nickname, %2$s is the StatusNet sitename. + $headers['Subject'] = sprintf(_('%1$s would like to listen to '. + 'your notices on %2$s.'), + $other->getBestName(), + common_config('site', 'name')); + + // TRANS: Main body of pending new-subscriber notification e-mail. + // TRANS: %1$s is the subscriber's long name, %2$s is the StatusNet sitename. + $body = sprintf(_('%1$s would like to listen to your notices on %2$s. ' . + 'You may approve or reject their subscription at %3$s'), + $long_name, + common_config('site', 'name'), + common_local_url('subqueue', array('nickname' => $listenee->nickname))) . + mail_profile_block($other) . + mail_footer_block(); + + // reset localization + common_switch_locale(); + mail_send($recipients, $headers, $body); + } +} + function mail_footer_block() { // TRANS: Common footer block for StatusNet notification emails. From c1683d9925ba710c44ce0a7adec46703e9b292fd Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Mon, 28 Mar 2011 17:22:37 -0700 Subject: [PATCH 68/90] Durr... got items in wrong order :D Fixed email notification for pending subscribes --- classes/Subscription_queue.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/classes/Subscription_queue.php b/classes/Subscription_queue.php index 3c67790271..19cd71c6a8 100644 --- a/classes/Subscription_queue.php +++ b/classes/Subscription_queue.php @@ -98,8 +98,8 @@ class Subscription_queue extends Managed_DataObject */ public function notify() { - $listenee = User::staticGet('id', $this->subscriber); - $other = Profile::staticGet('id', $this->subscribed); + $other = Profile::staticGet('id', $this->subscriber); + $listenee = User::staticGet('id', $this->subscribed); mail_subscribe_pending_notify_profile($listenee, $other); } } From 7b8fc701e0f27114e310dcae53c6a727ab05254b Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 22:21:41 -0400 Subject: [PATCH 69/90] don't show notices to out-of-scope viewers --- actions/shownotice.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/actions/shownotice.php b/actions/shownotice.php index f6074faddc..7127a60db4 100644 --- a/actions/shownotice.php +++ b/actions/shownotice.php @@ -79,7 +79,7 @@ class ShownoticeAction extends OwnerDesignAction $id = $this->arg('notice'); - $this->notice = Notice::staticGet($id); + $this->notice = Notice::staticGet('id', $id); if (empty($this->notice)) { // Did we used to have it, and it got deleted? @@ -94,6 +94,18 @@ class ShownoticeAction extends OwnerDesignAction return false; } + $cur = common_current_user(); + + if (!empty($cur)) { + $curProfile = $cur->getProfile(); + } else { + $curProfile = null; + } + + if (!$this->notice->inScope($curProfile)) { + throw new ClientException(_('Not available.'), 403); + } + $this->profile = $this->notice->getProfile(); if (empty($this->profile)) { From c1d4186c9839e4d03d00fd8829c363db921d3def Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 22:43:38 -0400 Subject: [PATCH 70/90] Disallow access to events and RSVPs out of scope --- plugins/Event/showevent.php | 10 ++++++++++ plugins/Event/showrsvp.php | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/plugins/Event/showevent.php b/plugins/Event/showevent.php index 7fb702f9db..1d4ec49205 100644 --- a/plugins/Event/showevent.php +++ b/plugins/Event/showevent.php @@ -77,6 +77,16 @@ class ShoweventAction extends ShownoticeAction throw new ClientException(_('No such event.'), 404); } + if (!empty($cur)) { + $curProfile = $cur->getProfile(); + } else { + $curProfile = null; + } + + if (!$this->notice->inScope($curProfile)) { + throw new ClientException(_('Not available.'), 403); + } + $this->user = User::staticGet('id', $this->event->profile_id); if (empty($this->user)) { diff --git a/plugins/Event/showrsvp.php b/plugins/Event/showrsvp.php index fde1d48f0e..0f13ca82ac 100644 --- a/plugins/Event/showrsvp.php +++ b/plugins/Event/showrsvp.php @@ -83,6 +83,16 @@ class ShowrsvpAction extends ShownoticeAction throw new ClientException(_('No such RSVP.'), 404); } + if (!empty($cur)) { + $curProfile = $cur->getProfile(); + } else { + $curProfile = null; + } + + if (!$this->notice->inScope($curProfile)) { + throw new ClientException(_('Not available.'), 403); + } + $this->user = User::staticGet('id', $this->rsvp->profile_id); if (empty($this->user)) { From 57dee164caf920be321004097b84b1fa2822650c Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 22:50:29 -0400 Subject: [PATCH 71/90] fix missing cur in Event --- plugins/Event/showevent.php | 2 ++ plugins/Event/showrsvp.php | 2 ++ 2 files changed, 4 insertions(+) diff --git a/plugins/Event/showevent.php b/plugins/Event/showevent.php index 1d4ec49205..93ce6dd68b 100644 --- a/plugins/Event/showevent.php +++ b/plugins/Event/showevent.php @@ -77,6 +77,8 @@ class ShoweventAction extends ShownoticeAction throw new ClientException(_('No such event.'), 404); } + $cur = common_current_user(); + if (!empty($cur)) { $curProfile = $cur->getProfile(); } else { diff --git a/plugins/Event/showrsvp.php b/plugins/Event/showrsvp.php index 0f13ca82ac..3b7db6788a 100644 --- a/plugins/Event/showrsvp.php +++ b/plugins/Event/showrsvp.php @@ -83,6 +83,8 @@ class ShowrsvpAction extends ShownoticeAction throw new ClientException(_('No such RSVP.'), 404); } + $cur = common_current_user(); + if (!empty($cur)) { $curProfile = $cur->getProfile(); } else { From 2856982a1c378ec45722f04aadf37c82b87986cb Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 22:50:45 -0400 Subject: [PATCH 72/90] disallow access to out-of-scope bookmark --- plugins/Bookmark/showbookmark.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/plugins/Bookmark/showbookmark.php b/plugins/Bookmark/showbookmark.php index 6bebffb68e..435d85940a 100644 --- a/plugins/Bookmark/showbookmark.php +++ b/plugins/Bookmark/showbookmark.php @@ -76,6 +76,16 @@ class ShowbookmarkAction extends ShownoticeAction throw new ClientException(_('No such bookmark.'), 404); } + if (!empty($cur)) { + $curProfile = $cur->getProfile(); + } else { + $curProfile = null; + } + + if (!$this->notice->inScope($curProfile)) { + throw new ClientException(_('Not available.'), 403); + } + $this->user = User::staticGet('id', $this->bookmark->profile_id); if (empty($this->user)) { From 908551ae3d20cab1a8b6c39eeda82c0c4af4c92b Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Mon, 28 Mar 2011 22:50:52 -0400 Subject: [PATCH 73/90] disallow access to out-of-scope poll --- plugins/Poll/showpoll.php | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/plugins/Poll/showpoll.php b/plugins/Poll/showpoll.php index d95b1c512e..d59d9e28f3 100644 --- a/plugins/Poll/showpoll.php +++ b/plugins/Poll/showpoll.php @@ -76,6 +76,18 @@ class ShowPollAction extends ShownoticeAction throw new ClientException(_m('No such poll notice.'), 404); } + $cur = common_current_user(); + + if (!empty($cur)) { + $curProfile = $cur->getProfile(); + } else { + $curProfile = null; + } + + if (!$this->notice->inScope($curProfile)) { + throw new ClientException(_('Not available.'), 403); + } + $this->user = User::staticGet('id', $this->poll->profile_id); if (empty($this->user)) { From 32145484c28323c95c0f84a274fb13714b738a3d Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 29 Mar 2011 11:53:26 -0400 Subject: [PATCH 74/90] Disallow repeats (retweets) of private notices We disallow repeating a notice (or whatever) if the scope of the notice is too private. So, only notices that are public scope (available to everyone in the world) or site scope (available to everyone on the site) can be repeated. Enforce this rule at a low level in Notice.php, and in the API, commands, and Web UI. Repeat button doesn't appear on tightly-scoped notices in the Web UI. --- actions/apistatusesretweet.php | 20 ++++++++++++++++++++ actions/repeat.php | 15 +++++++++++++++ classes/Notice.php | 14 ++++++++++++++ lib/command.php | 17 ++++++++++++++++- lib/noticelistitem.php | 26 +++++++++++++++----------- 5 files changed, 80 insertions(+), 12 deletions(-) diff --git a/actions/apistatusesretweet.php b/actions/apistatusesretweet.php index ecc4a3f033..2bc9092ba6 100644 --- a/actions/apistatusesretweet.php +++ b/actions/apistatusesretweet.php @@ -85,8 +85,27 @@ class ApiStatusesRetweetAction extends ApiAuthAction return false; } + // Is it OK to repeat that notice (general enough scope)? + + if ($this->original->scope != Notice::SITE_SCOPE && + $this->original->scope != Notice::PUBLIC_SCOPE) { + $this->clientError(_('You may not repeat a private notice.'), + 403, + $this->format); + return false; + } + $profile = $this->user->getProfile(); + // Can the profile actually see that notice? + + if (!$this->original->inScope($profile)) { + $this->clientError(_('No access to that notice.'), + 403, + $this->format); + return false; + } + if ($profile->hasRepeated($id)) { // TRANS: Client error displayed trying to re-repeat a notice through the API. $this->clientError(_('Already repeated that notice.'), @@ -94,6 +113,7 @@ class ApiStatusesRetweetAction extends ApiAuthAction return false; } + return true; } diff --git a/actions/repeat.php b/actions/repeat.php index 869c2ddd4e..4201a4ce95 100644 --- a/actions/repeat.php +++ b/actions/repeat.php @@ -73,6 +73,14 @@ class RepeatAction extends Action return false; } + // Is it OK to repeat that notice (general enough scope)? + + if ($this->notice->scope != Notice::SITE_SCOPE && + $this->notice->scope != Notice::PUBLIC_SCOPE) { + $this->clientError(_('You may not repeat a private notice.'), + 403); + } + if ($this->user->id == $this->notice->profile_id) { // TRANS: Client error displayed when trying to repeat an own notice. $this->clientError(_('You cannot repeat your own notice.')); @@ -88,6 +96,13 @@ class RepeatAction extends Action $profile = $this->user->getProfile(); + // Can the profile actually see that notice? + + if (!$this->notice->inScope($profile)) { + $this->clientError(_('No access to that notice.'), 403); + } + + if ($profile->hasRepeated($id)) { // TRANS: Client error displayed when trying to repeat an already repeated notice. $this->clientError(_('You already repeated that notice.')); diff --git a/classes/Notice.php b/classes/Notice.php index 3780d52d56..a6e4566e4b 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -90,6 +90,7 @@ class Notice extends Memcached_DataObject const LOCAL_NONPUBLIC = -1; const GATEWAY = -2; + const PUBLIC_SCOPE = 0; // Useful fake constant const SITE_SCOPE = 1; const ADDRESSEE_SCOPE = 2; const GROUP_SCOPE = 4; @@ -344,6 +345,19 @@ class Notice extends Memcached_DataObject // Handle repeat case if (isset($repeat_of)) { + + // Check for a private one + + $repeat = Notice::staticGet('id', $repeat_of); + + if (!empty($repeat) && + $repeat->scope != Notice::SITE_SCOPE && + $repeat->scope != Notice::PUBLIC_SCOPE) { + throw new ClientException(_('Cannot repeat a private notice.'), 403); + } + + // XXX: Check for access...? + $notice->repeat_of = $repeat_of; } else { $notice->reply_to = self::getReplyTo($reply_to, $profile_id, $source, $final); diff --git a/lib/command.php b/lib/command.php index 5b9964c5b1..35d0702684 100644 --- a/lib/command.php +++ b/lib/command.php @@ -544,7 +544,22 @@ class RepeatCommand extends Command return; } - if ($this->user->getProfile()->hasRepeated($notice->id)) { + // Is it OK to repeat that notice (general enough scope)? + + if ($notice->scope != Notice::SITE_SCOPE && + $notice->scope != Notice::PUBLIC_SCOPE) { + $channel->error($this->user, _('You may not repeat a private notice.')); + } + + $profile = $this->user->getProfile(); + + // Can the profile actually see that notice? + + if (!$notice->inScope($profile)) { + $channel->error($this->user, _('You have no access to that notice.')); + } + + if ($profile->hasRepeated($notice->id)) { // TRANS: Error text shown when trying to repeat an notice that was already repeated by the user. $channel->error($this->user, _('Already repeated that notice.')); return; diff --git a/lib/noticelistitem.php b/lib/noticelistitem.php index 46f15f551d..097a5d06c4 100644 --- a/lib/noticelistitem.php +++ b/lib/noticelistitem.php @@ -596,17 +596,21 @@ class NoticeListItem extends Widget function showRepeatForm() { - $user = common_current_user(); - if ($user && $user->id != $this->notice->profile_id) { - $this->out->text(' '); - $profile = $user->getProfile(); - if ($profile->hasRepeated($this->notice->id)) { - $this->out->element('span', array('class' => 'repeated', - 'title' => _('Notice repeated')), - _('Repeated')); - } else { - $rf = new RepeatForm($this->out, $this->notice); - $rf->show(); + if ($this->notice->scope == Notice::PUBLIC_SCOPE || + $this->notice->scope == Notice::SITE_SCOPE) { + $user = common_current_user(); + if (!empty($user) && + $user->id != $this->notice->profile_id) { + $this->out->text(' '); + $profile = $user->getProfile(); + if ($profile->hasRepeated($this->notice->id)) { + $this->out->element('span', array('class' => 'repeated', + 'title' => _('Notice repeated')), + _('Repeated')); + } else { + $rf = new RepeatForm($this->out, $this->notice); + $rf->show(); + } } } } From 31fd4dbe3b45e481f273f3e6333e4ef8e728dccd Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Tue, 29 Mar 2011 12:12:08 -0400 Subject: [PATCH 75/90] Repeats keep the same scope as parent --- classes/Notice.php | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/classes/Notice.php b/classes/Notice.php index a6e4566e4b..b5eafb0ffa 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -1588,8 +1588,13 @@ class Notice extends Memcached_DataObject $content = mb_substr($content, 0, $maxlen - 4) . ' ...'; } - return self::saveNew($repeater_id, $content, $source, - array('repeat_of' => $this->id)); + // Scope is same as this one's + + return self::saveNew($repeater_id, + $content, + $source, + array('repeat_of' => $this->id, + 'scope' => $this->scope)); } // These are supposed to be in chron order! From f2d7c33ad3dbaaf5de09f80b04645d8e2a5c4b93 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Tue, 29 Mar 2011 19:25:44 +0200 Subject: [PATCH 76/90] Update translator documentation. Remove superfluous whitespace. Various L10n/i18n updates. --- actions/snapshotadminpanel.php | 42 ++++++++++++++++++++-------------- actions/tag.php | 12 +++++++--- actions/tagother.php | 16 ++++++++++++- actions/tagrss.php | 4 +++- actions/unsandbox.php | 5 ++-- actions/unsilence.php | 5 ++-- 6 files changed, 56 insertions(+), 28 deletions(-) diff --git a/actions/snapshotadminpanel.php b/actions/snapshotadminpanel.php index be0a793e51..9790947071 100644 --- a/actions/snapshotadminpanel.php +++ b/actions/snapshotadminpanel.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class SnapshotadminpanelAction extends AdminPanelAction { /** @@ -48,10 +47,10 @@ class SnapshotadminpanelAction extends AdminPanelAction * * @return string page title */ - function title() { - return _('Snapshots'); + // TRANS: Title for admin panel to configure snapshots. + return _m('TITLE','Snapshots'); } /** @@ -59,9 +58,9 @@ class SnapshotadminpanelAction extends AdminPanelAction * * @return string instructions */ - function getInstructions() { + // TRANS: Instructions for admin panel to configure snapshots. return _('Manage snapshot configuration'); } @@ -70,7 +69,6 @@ class SnapshotadminpanelAction extends AdminPanelAction * * @return void */ - function showForm() { $form = new SnapshotAdminPanelForm($this); @@ -83,7 +81,6 @@ class SnapshotadminpanelAction extends AdminPanelAction * * @return void */ - function saveSettings() { static $settings = array( @@ -124,12 +121,14 @@ class SnapshotadminpanelAction extends AdminPanelAction // Validate snapshot run value if (!in_array($values['snapshot']['run'], array('web', 'cron', 'never'))) { + // TRANS: Client error displayed on admin panel for snapshots when providing an invalid run value. $this->clientError(_('Invalid snapshot run value.')); } // Validate snapshot frequency value if (!Validate::number($values['snapshot']['frequency'])) { + // TRANS: Client error displayed on admin panel for snapshots when providing an invalid value for frequency. $this->clientError(_('Snapshot frequency must be a number.')); } @@ -141,11 +140,13 @@ class SnapshotadminpanelAction extends AdminPanelAction array('allowed_schemes' => array('http', 'https') ) )) { + // TRANS: Client error displayed on admin panel for snapshots when providing an invalid report URL. $this->clientError(_('Invalid snapshot report URL.')); } } } +// @todo FIXME: add documentation class SnapshotAdminPanelForm extends AdminForm { /** @@ -153,7 +154,6 @@ class SnapshotAdminPanelForm extends AdminForm * * @return int ID of the form */ - function id() { return 'form_snapshot_admin_panel'; @@ -164,7 +164,6 @@ class SnapshotAdminPanelForm extends AdminForm * * @return string class of the form */ - function formClass() { return 'form_settings'; @@ -175,7 +174,6 @@ class SnapshotAdminPanelForm extends AdminForm * * @return string URL of the action */ - function action() { return common_local_url('snapshotadminpanel'); @@ -186,26 +184,31 @@ class SnapshotAdminPanelForm extends AdminForm * * @return void */ - function formData() { $this->out->elementStart( 'fieldset', array('id' => 'settings_admin_snapshots') ); - $this->out->element('legend', null, _('Snapshots')); + // TRANS: Fieldset legend on admin panel for snapshots. + $this->out->element('legend', null, _m('LEGEND','Snapshots')); $this->out->elementStart('ul', 'form_data'); $this->li(); $snapshot = array( + // TRANS: Option in dropdown for snapshot method in admin panel for snapshots. 'web' => _('Randomly during web hit'), + // TRANS: Option in dropdown for snapshot method in admin panel for snapshots. 'cron' => _('In a scheduled job'), + // TRANS: Option in dropdown for snapshot method in admin panel for snapshots. 'never' => _('Never') ); $this->out->dropdown( 'run', + // TRANS: Dropdown label for snapshot method in admin panel for snapshots. _('Data snapshots'), $snapshot, - _('When to send statistical data to status.net servers'), + // TRANS: Dropdown title for snapshot method in admin panel for snapshots. + _('When to send statistical data to status.net servers.'), false, $this->value('run', 'snapshot') ); @@ -214,8 +217,10 @@ class SnapshotAdminPanelForm extends AdminForm $this->li(); $this->input( 'frequency', + // TRANS: Input field label for snapshot frequency in admin panel for snapshots. _('Frequency'), - _('Snapshots will be sent once every N web hits'), + // TRANS: Input field title for snapshot frequency in admin panel for snapshots. + _('Snapshots will be sent once every N web hits.'), 'snapshot' ); $this->unli(); @@ -223,8 +228,10 @@ class SnapshotAdminPanelForm extends AdminForm $this->li(); $this->input( 'reporturl', + // TRANS: Input field label for snapshot report URL in admin panel for snapshots. _('Report URL'), - _('Snapshots will be sent to this URL'), + // TRANS: Input field title for snapshot report URL in admin panel for snapshots. + _('Snapshots will be sent to this URL.'), 'snapshot' ); $this->unli(); @@ -237,15 +244,16 @@ class SnapshotAdminPanelForm extends AdminForm * * @return void */ - function formActions() { $this->out->submit( 'submit', - _('Save'), + // TRANS: Button text to save snapshot settings. + _m('BUTTON','Save'), 'submit', null, - _('Save snapshot settings') + // TRANS: Title for button to save snapshot settings. + _('Save snapshot settings.') ); } } diff --git a/actions/tag.php b/actions/tag.php index 944cda1f4a..045fac97b5 100644 --- a/actions/tag.php +++ b/actions/tag.php @@ -19,9 +19,9 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } +// @todo FIXME: documentation missing. class TagAction extends Action { - var $notice; function prepare($args) @@ -48,7 +48,7 @@ class TagAction extends Action $this->notice = Notice_tag::getStream($this->tag, (($this->page-1)*NOTICES_PER_PAGE), NOTICES_PER_PAGE + 1); if($this->page > 1 && $this->notice->N == 0){ - // TRANS: Server error when page not found (404) + // TRANS: Server error when page not found (404). $this->serverError(_('No such page.'),$code=404); } @@ -88,18 +88,24 @@ class TagAction extends Action return array(new Feed(Feed::RSS1, common_local_url('tagrss', array('tag' => $this->tag)), + // TRANS: Link label for feed on "notices with tag" page. + // TRANS: %s is the tag the feed is for. sprintf(_('Notice feed for tag %s (RSS 1.0)'), $this->tag)), new Feed(Feed::RSS2, common_local_url('ApiTimelineTag', array('format' => 'rss', 'tag' => $this->tag)), + // TRANS: Link label for feed on "notices with tag" page. + // TRANS: %s is the tag the feed is for. sprintf(_('Notice feed for tag %s (RSS 2.0)'), $this->tag)), new Feed(Feed::ATOM, common_local_url('ApiTimelineTag', array('format' => 'atom', 'tag' => $this->tag)), + // TRANS: Link label for feed on "notices with tag" page. + // TRANS: %s is the tag the feed is for. sprintf(_('Notice feed for tag %s (Atom)'), $this->tag))); } @@ -107,7 +113,7 @@ class TagAction extends Action function showContent() { if(Event::handle('StartTagShowContent', array($this))) { - + $nl = new NoticeList($this->notice, $this); $cnt = $nl->show(); diff --git a/actions/tagother.php b/actions/tagother.php index c3bf219f67..518c707201 100644 --- a/actions/tagother.php +++ b/actions/tagother.php @@ -31,12 +31,14 @@ class TagotherAction extends Action { parent::prepare($args); if (!common_logged_in()) { + // TRANS: Client error displayed on user tag page when trying to add tags while not logged in. $this->clientError(_('Not logged in.'), 403); return false; } $id = $this->trimmed('id'); if (!$id) { + // TRANS: Client error displayed on user tag page when trying to add tags without providing a user ID. $this->clientError(_('No ID argument.')); return false; } @@ -44,6 +46,7 @@ class TagotherAction extends Action $this->profile = Profile::staticGet('id', $id); if (!$this->profile) { + // TRANS: Client error displayed on user tag page when trying to add tags providing a non-existing user ID. $this->clientError(_('No profile with that ID.')); return false; } @@ -63,6 +66,8 @@ class TagotherAction extends Action function title() { + // TRANS: Title for "tag other users" page. + // TRANS: %s is the user nickname. return sprintf(_('Tag %s'), $this->profile->nickname); } @@ -75,6 +80,7 @@ class TagotherAction extends Action function showContent() { $this->elementStart('div', 'entity_profile vcard author'); + // TRANS: Header for user details on "tag other users" page. $this->element('h2', null, _('User profile')); $avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); @@ -118,6 +124,7 @@ class TagotherAction extends Action 'action' => common_local_url('tagother', array('id' => $this->profile->id)))); $this->elementStart('fieldset'); + // TRANS: Fieldset legend on "tag other users" page. $this->element('legend', null, _('Tag user')); $this->hidden('token', common_session_token()); $this->hidden('id', $this->profile->id); @@ -126,11 +133,14 @@ class TagotherAction extends Action $this->elementStart('ul', 'form_data'); $this->elementStart('li'); + // TRANS: Field label for inputting tags on "tag other users" page. $this->input('tags', _('Tags'), ($this->arg('tags')) ? $this->arg('tags') : implode(' ', Profile_tag::getTags($user->id, $this->profile->id)), + // TRANS: Title for input field for inputting tags on "tag other users" page. _('Tags for this user (letters, numbers, -, ., and _), separated by commas or spaces.')); $this->elementEnd('li'); $this->elementEnd('ul'); + // TRANS: Button text for saving tags for other users. $this->submit('save', _m('BUTTON','Save')); $this->elementEnd('fieldset'); $this->elementEnd('form'); @@ -172,6 +182,7 @@ class TagotherAction extends Action !Subscription::pkeyGet(array('subscriber' => $this->profile->id, 'subscribed' => $user->id))) { + // TRANS: Client error on "tag other users" page when tagging a user is not possible because of missing mutual subscriptions. $this->clientError(_('You can only tag people you are subscribed to or who are subscribed to you.')); return; } @@ -179,6 +190,7 @@ class TagotherAction extends Action $result = Profile_tag::setTags($user->id, $this->profile->id, $tags); if (!$result) { + // TRANS: Client error on "tag other users" page when saving tags fails server side. $this->clientError(_('Could not save tags.')); return; } @@ -188,7 +200,8 @@ class TagotherAction extends Action if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); - $this->element('title', null, _('Tags')); + // TRANS: Title of "tag other users" page. + $this->element('title', null, _m('TITLE','Tags')); $this->elementEnd('head'); $this->elementStart('body'); $this->elementStart('p', 'subtags'); @@ -215,6 +228,7 @@ class TagotherAction extends Action } else { $this->elementStart('div', 'instructions'); $this->element('p', null, + // TRANS: Page notice on "tag other users" page. _('Use this form to add tags to your subscribers or subscriptions.')); $this->elementEnd('div'); } diff --git a/actions/tagrss.php b/actions/tagrss.php index 467a64abed..5f4831d221 100644 --- a/actions/tagrss.php +++ b/actions/tagrss.php @@ -22,7 +22,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } require_once(INSTALLDIR.'/lib/rssaction.php'); // Formatting of RSS handled by Rss10Action - class TagrssAction extends Rss10Action { var $tag; @@ -32,6 +31,7 @@ class TagrssAction extends Rss10Action $tag = common_canonical_tag($this->trimmed('tag')); $this->tag = Notice_tag::staticGet('tag', $tag); if (!$this->tag) { + // TRANS: Client error when requesting a tag feed for a non-existing tag. $this->clientError(_('No such tag.')); return false; } else { @@ -62,6 +62,8 @@ class TagrssAction extends Rss10Action $c = array('url' => common_local_url('tagrss', array('tag' => $tagname)), 'title' => $tagname, 'link' => common_local_url('tagrss', array('tag' => $tagname)), + // TRANS: Tag feed description. + // TRANS: %1$s is the tag name, %2$s is the StatusNet sitename. 'description' => sprintf(_('Updates tagged with %1$s on %2$s!'), $tagname, common_config('site', 'name'))); return $c; diff --git a/actions/unsandbox.php b/actions/unsandbox.php index d50b5072ee..98bd2d4f54 100644 --- a/actions/unsandbox.php +++ b/actions/unsandbox.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 * @link http://status.net/ */ - class UnsandboxAction extends ProfileFormAction { /** @@ -50,7 +49,6 @@ class UnsandboxAction extends ProfileFormAction * * @return boolean success flag */ - function prepare($args) { if (!parent::prepare($args)) { @@ -62,6 +60,7 @@ class UnsandboxAction extends ProfileFormAction assert(!empty($cur)); // checked by parent if (!$cur->hasRight(Right::SANDBOXUSER)) { + // TRANS: Client error on page to unsandbox a user when the feature is not enabled. $this->clientError(_('You cannot sandbox users on this site.')); return false; } @@ -69,6 +68,7 @@ class UnsandboxAction extends ProfileFormAction assert(!empty($this->profile)); // checked by parent if (!$this->profile->isSandboxed()) { + // TRANS: Client error on page to unsilence a user when the to be unsandboxed user has not been sandboxed. $this->clientError(_('User is not sandboxed.')); return false; } @@ -81,7 +81,6 @@ class UnsandboxAction extends ProfileFormAction * * @return void */ - function handlePost() { $this->profile->unsandbox(); diff --git a/actions/unsilence.php b/actions/unsilence.php index 7d282c3661..723bf1bed5 100644 --- a/actions/unsilence.php +++ b/actions/unsilence.php @@ -40,7 +40,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 * @link http://status.net/ */ - class UnsilenceAction extends ProfileFormAction { /** @@ -50,7 +49,6 @@ class UnsilenceAction extends ProfileFormAction * * @return boolean success flag */ - function prepare($args) { if (!parent::prepare($args)) { @@ -62,6 +60,7 @@ class UnsilenceAction extends ProfileFormAction assert(!empty($cur)); // checked by parent if (!$cur->hasRight(Right::SILENCEUSER)) { + // TRANS: Client error on page to unsilence a user when the feature is not enabled. $this->clientError(_('You cannot silence users on this site.')); return false; } @@ -69,6 +68,7 @@ class UnsilenceAction extends ProfileFormAction assert(!empty($this->profile)); // checked by parent if (!$this->profile->isSilenced()) { + // TRANS: Client error on page to unsilence a user when the to be unsilenced user has not been silenced. $this->clientError(_('User is not silenced.')); return false; } @@ -81,7 +81,6 @@ class UnsilenceAction extends ProfileFormAction * * @return void */ - function handlePost() { $this->profile->unsilence(); From a8af04feea64c0a70c8f82a88dc3d7e8eaafba7f Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Tue, 29 Mar 2011 21:30:12 +0200 Subject: [PATCH 77/90] Update translator documentation. Superfluous whitespace removed. L10n consistency updates. --- actions/unsubscribe.php | 5 ++++- actions/updateprofile.php | 7 ++++--- actions/urlsettings.php | 22 ++++++++++++---------- actions/userauthorization.php | 10 +++++----- 4 files changed, 25 insertions(+), 19 deletions(-) diff --git a/actions/unsubscribe.php b/actions/unsubscribe.php index 57ca15d687..8f90619f64 100644 --- a/actions/unsubscribe.php +++ b/actions/unsubscribe.php @@ -44,11 +44,11 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { */ class UnsubscribeAction extends Action { - function handle($args) { parent::handle($args); if (!common_logged_in()) { + // TRANS: Client error displayed when trying to unsubscribe while not logged in. $this->clientError(_('Not logged in.')); return; } @@ -74,6 +74,7 @@ class UnsubscribeAction extends Action $other_id = $this->arg('unsubscribeto'); if (!$other_id) { + // TRANS: Client error displayed when trying to unsubscribe without providing a profile ID. $this->clientError(_('No profile ID in request.')); return; } @@ -81,6 +82,7 @@ class UnsubscribeAction extends Action $other = Profile::staticGet('id', $other_id); if (!$other) { + // TRANS: Client error displayed when trying to unsubscribe while providing a non-existing profile ID. $this->clientError(_('No profile with that ID.')); return; } @@ -95,6 +97,7 @@ class UnsubscribeAction extends Action if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); + // TRANS: Page title for page to unsubscribe. $this->element('title', null, _('Unsubscribed')); $this->elementEnd('head'); $this->elementStart('body'); diff --git a/actions/updateprofile.php b/actions/updateprofile.php index bae6108cce..e5c0803495 100644 --- a/actions/updateprofile.php +++ b/actions/updateprofile.php @@ -45,7 +45,6 @@ require_once INSTALLDIR.'/extlib/libomb/service_provider.php'; */ class UpdateprofileAction extends Action { - /** * For initializing members of the class. * @@ -61,8 +60,10 @@ class UpdateprofileAction extends Action $license = $_POST['omb_listenee_license']; $site_license = common_config('license', 'url'); if (!common_compatible_license($license, $site_license)) { - $this->clientError(sprintf(_('Listenee stream license ‘%1$s’ is not '. - 'compatible with site license ‘%2$s’.'), + // TRANS: Client error displayed when trying to update profile with an incompatible license. + // TRANS: %1$s is the license incompatible with site license %2$s. + $this->clientError(sprintf(_('Listenee stream license "%1$s" is not '. + 'compatible with site license "%2$s".'), $license, $site_license)); return false; } diff --git a/actions/urlsettings.php b/actions/urlsettings.php index 7661086aae..aaaa1b78dd 100644 --- a/actions/urlsettings.php +++ b/actions/urlsettings.php @@ -32,8 +32,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } - - /** * Miscellaneous settings actions * @@ -46,7 +44,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class UrlsettingsAction extends SettingsAction { /** @@ -54,9 +51,9 @@ class UrlsettingsAction extends SettingsAction * * @return string Title of the page */ - function title() { + // TRANS: Title of URL settings tab in profile settings. return _('URL settings'); } @@ -65,7 +62,6 @@ class UrlsettingsAction extends SettingsAction * * @return instructions for use */ - function getInstructions() { // TRANS: Instructions for tab "Other" in user profile settings. @@ -85,7 +81,6 @@ class UrlsettingsAction extends SettingsAction * * @return void */ - function showContent() { $user = common_current_user(); @@ -118,11 +113,12 @@ class UrlsettingsAction extends SettingsAction // Include default values + // TRANS: Default value for URL shortening settings. $services['none'] = _('[none]'); + // TRANS: Default value for URL shortening settings. $services['internal'] = _('[internal]'); if ($services) { - asort($services); $this->elementStart('li'); @@ -135,16 +131,20 @@ class UrlsettingsAction extends SettingsAction } $this->elementStart('li'); $this->input('maxurllength', + // TRANS: Field label in URL settings in profile. _('URL longer than'), (!is_null($this->arg('maxurllength'))) ? $this->arg('maxurllength') : User_urlshortener_prefs::maxUrlLength($user), + // TRANS: Field title in URL settings in profile. _('URLs longer than this will be shortened, 0 means always shorten.')); $this->elementEnd('li'); $this->elementStart('li'); $this->input('maxnoticelength', + // TRANS: Field label in URL settings in profile. _('Text longer than'), (!is_null($this->arg('maxnoticelength'))) ? $this->arg('maxnoticelength') : User_urlshortener_prefs::maxNoticeLength($user), + // TRANS: Field title in URL settings in profile. _('URLs in notices longer than this will be shortened, 0 means always shorten.')); $this->elementEnd('li'); $this->elementEnd('ul'); @@ -162,7 +162,6 @@ class UrlsettingsAction extends SettingsAction * * @return void */ - function handlePost() { // CSRF protection @@ -184,13 +183,15 @@ class UrlsettingsAction extends SettingsAction $maxurllength = $this->trimmed('maxurllength'); if (!Validate::number($maxurllength, array('min' => 0))) { - throw new ClientException(_('Invalid number for max url length.')); + // TRANS: Client exception thrown when the maximum URL settings value is invalid in profile URL settings. + throw new ClientException(_('Invalid number for maximum URL length.')); } $maxnoticelength = $this->trimmed('maxnoticelength'); if (!Validate::number($maxnoticelength, array('min' => 0))) { - throw new ClientException(_('Invalid number for max notice length.')); + // TRANS: Client exception thrown when the maximum notice length settings value is invalid in profile URL settings. + throw new ClientException(_('Invalid number for maximum notice length.')); } $user = common_current_user(); @@ -235,6 +236,7 @@ class UrlsettingsAction extends SettingsAction } if (!$result) { + // TRANS: Server exception thrown in profile URL settings when preferences could not be saved. throw new ServerException(_('Error saving user URL shortening preferences.')); } diff --git a/actions/userauthorization.php b/actions/userauthorization.php index d9cdc660fd..e58a096bac 100644 --- a/actions/userauthorization.php +++ b/actions/userauthorization.php @@ -111,7 +111,7 @@ class UserauthorizationAction extends Action function showPageNotice() { - // TRANS: Page notice on "Auhtorize subscription" page. + // TRANS: Page notice on "Authorize subscription" page. $this->element('p', null, _('Please check these details to make sure '. 'that you want to subscribe to this ' . 'user’s notices. If you didn’t just ask ' . @@ -243,10 +243,10 @@ class UserauthorizationAction extends Action { // TRANS: Accept message header from Authorise subscription page. common_show_header(_('Subscription authorized')); - // TRANS: Accept message text from Authorise subscription page. $this->element('p', null, + // TRANS: Accept message text from Authorise subscription page. _('The subscription has been authorized, but no '. - 'callback URL was passed. Check with the site’s ' . + 'callback URL was passed. Check with the site\'s ' . 'instructions for details on how to authorize the ' . 'subscription. Your subscription token is:')); $this->element('blockquote', 'token', $tok); @@ -257,10 +257,10 @@ class UserauthorizationAction extends Action { // TRANS: Reject message header from Authorise subscription page. common_show_header(_('Subscription rejected')); - // TRANS: Reject message from Authorise subscription page. $this->element('p', null, + // TRANS: Reject message from Authorise subscription page. _('The subscription has been rejected, but no '. - 'callback URL was passed. Check with the site’s ' . + 'callback URL was passed. Check with the site\'s ' . 'instructions for details on how to fully reject ' . 'the subscription.')); common_show_footer(); From 700018fd09be222d9ec163965fd1a3f277d2b931 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Tue, 29 Mar 2011 23:00:29 +0200 Subject: [PATCH 78/90] L10n/i18n updated. Translator documentation updated. FIXME added for missing class documentation. Various documentation tweaks. --- actions/approvegroup.php | 5 +++-- actions/approvesub.php | 2 +- actions/cancelsubscription.php | 6 ++++- actions/groupqueue.php | 2 ++ actions/profilesettings.php | 15 ++++++------- classes/Group_join_queue.php | 4 ++-- classes/Profile.php | 5 ++--- classes/Subscription.php | 7 ++---- classes/User.php | 1 - lib/accountprofileblock.php | 13 +++++------ lib/cancelsubscriptionform.php | 9 ++------ lib/mail.php | 4 ++-- lib/router.php | 22 +++++++++---------- lib/subgroupnav.php | 40 ++++++++++++++++++++++------------ 14 files changed, 71 insertions(+), 64 deletions(-) diff --git a/actions/approvegroup.php b/actions/approvegroup.php index 55a0a6c3fd..d46a4451c4 100644 --- a/actions/approvegroup.php +++ b/actions/approvegroup.php @@ -121,6 +121,7 @@ class ApprovegroupAction extends Action if (empty($this->request)) { // TRANS: Client error displayed trying to approve group membership for a non-existing request. + // TRANS: %s is a nickname. $this->clientError(sprintf(_('%s is not in the moderation queue for this group.'), $this->profile->nickname), 403); } @@ -176,10 +177,10 @@ class ApprovegroupAction extends Action $this->elementEnd('head'); $this->elementStart('body'); if ($this->approve) { - // TRANS: Message on page for group admin after approving a join request. + // TRANS: Message on page for group admin after approving a join request. $this->element('p', 'success', _('Join request approved.')); } elseif ($this->cancel) { - // TRANS: Message on page for group admin after rejecting a join request. + // TRANS: Message on page for group admin after rejecting a join request. $this->element('p', 'success', _('Join request canceled.')); } $this->elementEnd('body'); diff --git a/actions/approvesub.php b/actions/approvesub.php index d30da25d32..be07b6e877 100644 --- a/actions/approvesub.php +++ b/actions/approvesub.php @@ -2,7 +2,7 @@ /** * StatusNet, the distributed open-source microblogging tool * - * Leave a group + * Approve group subscription request * * PHP version 5 * diff --git a/actions/cancelsubscription.php b/actions/cancelsubscription.php index 367fbfa138..0cd922ff70 100644 --- a/actions/cancelsubscription.php +++ b/actions/cancelsubscription.php @@ -53,6 +53,7 @@ class CancelsubscriptionAction extends Action StatusNet::setApi(true); } if (!common_logged_in()) { + // TRANS: Client error displayed when trying to leave a group while not logged in. $this->clientError(_('Not logged in.')); return; } @@ -78,6 +79,7 @@ class CancelsubscriptionAction extends Action $other_id = $this->arg('unsubscribeto'); if (!$other_id) { + // TRANS: Client error displayed when trying to leave a group without specifying an ID. $this->clientError(_('No profile ID in request.')); return; } @@ -85,6 +87,7 @@ class CancelsubscriptionAction extends Action $other = Profile::staticGet('id', $other_id); if (!$other) { + // TRANS: Client error displayed when trying to leave a non-existing group. $this->clientError(_('No profile with that ID.')); return; } @@ -103,7 +106,8 @@ class CancelsubscriptionAction extends Action if ($this->boolean('ajax')) { $this->startHTML('text/xml;charset=utf-8'); $this->elementStart('head'); - $this->element('title', null, _('Unsubscribed')); + // TRANS: Title after unsubscribing from a group. + $this->element('title', null, _m('TITLE','Unsubscribed')); $this->elementEnd('head'); $this->elementStart('body'); $subscribe = new SubscribeForm($this, $other); diff --git a/actions/groupqueue.php b/actions/groupqueue.php index c6f54d57d7..7cc32a9c69 100644 --- a/actions/groupqueue.php +++ b/actions/groupqueue.php @@ -161,6 +161,7 @@ class GroupqueueAction extends GroupDesignAction } } +// @todo FIXME: documentation missing. class GroupQueueList extends GroupMemberList { function newListItem($profile) @@ -169,6 +170,7 @@ class GroupQueueList extends GroupMemberList } } +// @todo FIXME: documentation missing. class GroupQueueListItem extends GroupMemberListItem { function showActions() diff --git a/actions/profilesettings.php b/actions/profilesettings.php index 7aa987f3a5..8ce1192579 100644 --- a/actions/profilesettings.php +++ b/actions/profilesettings.php @@ -33,8 +33,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); } - - /** * Change profile settings * @@ -46,7 +44,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class ProfilesettingsAction extends SettingsAction { /** @@ -127,15 +124,15 @@ class ProfilesettingsAction extends SettingsAction // TRANS: Tooltip for field label in form for profile settings. Plural // TRANS: is decided by the number of characters available for the // TRANS: biography (%d). - $bioInstr = sprintf(_m('Describe yourself and your interests in %d character', - 'Describe yourself and your interests in %d characters', + $bioInstr = sprintf(_m('Describe yourself and your interests in %d character.', + 'Describe yourself and your interests in %d characters.', $maxBio), $maxBio); } else { // TRANS: Tooltip for field label in form for profile settings. - $bioInstr = _('Describe yourself and your interests'); + $bioInstr = _('Describe yourself and your interests.'); } - // TRANS: Text area label in form for profile settings where users can provide. + // TRANS: Text area label in form for profile settings where users can provide // TRANS: their biography. $this->textarea('bio', _('Bio'), ($this->arg('bio')) ? $this->arg('bio') : $profile->bio, @@ -146,7 +143,7 @@ class ProfilesettingsAction extends SettingsAction $this->input('location', _('Location'), ($this->arg('location')) ? $this->arg('location') : $profile->location, // TRANS: Tooltip for field label in form for profile settings. - _('Where you are, like "City, State (or Region), Country"')); + _('Where you are, like "City, State (or Region), Country".')); $this->elementEnd('li'); if (common_config('location', 'share') == 'user') { $this->elementStart('li'); @@ -196,7 +193,9 @@ class ProfilesettingsAction extends SettingsAction $this->dropdown('subscribe_policy', // TRANS: Dropdown field label on profile settings, for what policies to apply when someone else tries to subscribe to your updates. _('Subscription policy'), + // TRANS: Dropdown field option for following policy. array(User::SUBSCRIBE_POLICY_OPEN => _('Let anyone follow me'), + // TRANS: Dropdown field option for following policy. User::SUBSCRIBE_POLICY_MODERATE => _('Ask me first')), // TRANS: Dropdown field title on group edit form. _('Whether other users need your permission to follow your updates.'), diff --git a/classes/Group_join_queue.php b/classes/Group_join_queue.php index acf3a13957..38473c9b7c 100644 --- a/classes/Group_join_queue.php +++ b/classes/Group_join_queue.php @@ -63,7 +63,7 @@ class Group_join_queue extends Managed_DataObject if (empty($member)) { // TRANS: Exception thrown providing an invalid profile ID. // TRANS: %s is the invalid profile ID. - throw new Exception(sprintf(_("Profile ID %s is invalid."),$this->profile_id)); + throw new Exception(sprintf(_('Profile ID %s is invalid.'),$this->profile_id)); } return $member; @@ -76,7 +76,7 @@ class Group_join_queue extends Managed_DataObject if (empty($group)) { // TRANS: Exception thrown providing an invalid group ID. // TRANS: %s is the invalid group ID. - throw new Exception(sprintf(_("Group ID %s is invalid."),$this->group_id)); + throw new Exception(sprintf(_('Group ID %s is invalid.'),$this->group_id)); } return $group; diff --git a/classes/Profile.php b/classes/Profile.php index 3d989dd974..032a370656 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -168,7 +168,7 @@ class Profile extends Memcached_DataObject function getFancyName() { if ($this->fullname) { - // TRANS: Full name of a profile or group followed by nickname in parens + // TRANS: Full name of a profile or group (%1$s) followed by nickname (%2$s) in parentheses. return sprintf(_m('FANCYNAME','%1$s (%2$s)'), $this->fullname, $this->nickname); } else { return $this->nickname; @@ -180,7 +180,6 @@ class Profile extends Memcached_DataObject * * @return mixed Notice or null */ - function getCurrentNotice() { $notice = $this->getNotices(0, 1); @@ -443,7 +442,7 @@ class Profile extends Memcached_DataObject { return Subscription::exists($this, $other); } - + /** * Check if a pending subscription request is outstanding for this... * diff --git a/classes/Subscription.php b/classes/Subscription.php index 438f1dfe50..8af414b3a7 100644 --- a/classes/Subscription.php +++ b/classes/Subscription.php @@ -267,8 +267,8 @@ class Subscription extends Memcached_DataObject common_date_iso8601($this->created)); $act->time = strtotime($this->created); - // TRANS: Activity tile when subscribing to another person. - $act->title = _("Follow"); + // TRANS: Activity title when subscribing to another person. + $act->title = _m('TITLE','Follow'); // TRANS: Notification given when one person starts following another. // TRANS: %1$s is the subscriber, %2$s is the subscribed. $act->content = sprintf(_('%1$s is now following %2$s.'), @@ -301,7 +301,6 @@ class Subscription extends Memcached_DataObject * * @return Subscription stream of subscriptions; use fetch() to iterate */ - static function bySubscriber($subscriberId, $offset = 0, $limit = PROFILES_PER_PAGE) @@ -362,7 +361,6 @@ class Subscription extends Memcached_DataObject * * @return Subscription stream of subscriptions; use fetch() to iterate */ - static function bySubscribed($subscribedId, $offset = 0, $limit = PROFILES_PER_PAGE) @@ -420,7 +418,6 @@ class Subscription extends Memcached_DataObject * * @return boolean success flag. */ - function update($orig=null) { $result = parent::update($orig); diff --git a/classes/User.php b/classes/User.php index f395dc1e49..abfcb0e8e2 100644 --- a/classes/User.php +++ b/classes/User.php @@ -965,5 +965,4 @@ class User extends Memcached_DataObject return $apps; } - } diff --git a/lib/accountprofileblock.php b/lib/accountprofileblock.php index 6a4021bf04..1c3a8dc536 100644 --- a/lib/accountprofileblock.php +++ b/lib/accountprofileblock.php @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class AccountProfileBlock extends ProfileBlock { protected $profile = null; @@ -131,9 +130,9 @@ class AccountProfileBlock extends ProfileBlock $this->out->elementStart('li', 'entity_edit'); $this->out->element('a', array('href' => common_local_url('profilesettings'), // TRANS: Link title for link on user profile. - 'title' => _('Edit profile settings')), + 'title' => _('Edit profile settings.')), // TRANS: Link text for link on user profile. - _('Edit')); + _m('BUTTON','Edit')); $this->out->elementEnd('li'); } else { // someone else's page @@ -160,9 +159,9 @@ class AccountProfileBlock extends ProfileBlock $this->out->elementStart('li', 'entity_send-a-message'); $this->out->element('a', array('href' => common_local_url('newmessage', array('to' => $this->user->id)), // TRANS: Link title for link on user profile. - 'title' => _('Send a direct message to this user')), + 'title' => _('Send a direct message to this user.')), // TRANS: Link text for link on user profile. - _('Message')); + _m('BUTTON','Message')); $this->out->elementEnd('li'); // nudge @@ -288,6 +287,6 @@ class AccountProfileBlock extends ProfileBlock $this->out->element('a', array('href' => $url, 'class' => 'entity_remote_subscribe'), // TRANS: Link text for link that will subscribe to a remote profile. - _('Subscribe')); + _m('BUTTON','Subscribe')); } -} \ No newline at end of file +} diff --git a/lib/cancelsubscriptionform.php b/lib/cancelsubscriptionform.php index 1173152c63..a7b566da7b 100644 --- a/lib/cancelsubscriptionform.php +++ b/lib/cancelsubscriptionform.php @@ -46,7 +46,6 @@ require_once INSTALLDIR.'/lib/form.php'; * * @see UnsubscribeForm */ - class CancelSubscriptionForm extends Form { /** @@ -61,7 +60,6 @@ class CancelSubscriptionForm extends Form * @param HTMLOutputter $out output channel * @param Profile $profile being subscribed to */ - function __construct($out=null, $profile=null) { parent::__construct($out); @@ -74,7 +72,6 @@ class CancelSubscriptionForm extends Form * * @return string ID of the form */ - function id() { return 'subscription-cancel-' . $this->profile->id; @@ -85,7 +82,6 @@ class CancelSubscriptionForm extends Form * * @return string of the form class */ - function formClass() { return 'form_unsubscribe ajax'; @@ -96,7 +92,6 @@ class CancelSubscriptionForm extends Form * * @return string URL of the action */ - function action() { return common_local_url('cancelsubscription', @@ -121,9 +116,9 @@ class CancelSubscriptionForm extends Form * * @return void */ - function formActions() { - $this->out->submit('submit', _('Cancel sub request')); + // TRANS: Button text for form action to cancel a subscription request. + $this->out->submit('submit', _m('BUTTON','Cancel subscription request')); } } diff --git a/lib/mail.php b/lib/mail.php index e8c5d3c4e7..eaef2285b5 100644 --- a/lib/mail.php +++ b/lib/mail.php @@ -641,7 +641,7 @@ function mail_notify_message($message, $from=null, $to=null) } /** - * notify a user that one of their notices has been chosen as a 'fave' + * Notify a user that one of their notices has been chosen as a 'fave' * * Doesn't check that the user has an email address nor if they * want to receive notification of faves. Maybe this happens higher @@ -704,7 +704,7 @@ function mail_notify_fave($other, $user, $notice) } /** - * notify a user that they have received an "attn:" message AKA "@-reply" + * Notify a user that they have received an "attn:" message AKA "@-reply" * * @param User $user The user who recevied the notice * @param Notice $notice The notice that was sent diff --git a/lib/router.php b/lib/router.php index 156bc10c7f..6533e24e57 100644 --- a/lib/router.php +++ b/lib/router.php @@ -41,7 +41,7 @@ class StatusNet_URL_Mapper extends Net_URL_Mapper private function __construct() { } - + public static function getInstance($id = '__default__') { if (empty(self::$_singleton)) { @@ -67,7 +67,7 @@ class StatusNet_URL_Mapper extends Net_URL_Mapper } return $result; } - + protected function _mapAction($action, $path) { if (!array_key_exists($action, $this->_actionToPath)) { @@ -76,19 +76,19 @@ class StatusNet_URL_Mapper extends Net_URL_Mapper $this->_actionToPath[$action][] = $path; return; } - + public function generate($values = array(), $qstring = array(), $anchor = '') { if (!array_key_exists('action', $values)) { return parent::generate($values, $qstring, $anchor); } - + $action = $values['action']; if (!array_key_exists($action, $this->_actionToPath)) { return parent::generate($values, $qstring, $anchor); } - + $oldPaths = $this->paths; $this->paths = $this->_actionToPath[$action]; $result = parent::generate($values, $qstring, $anchor); @@ -147,19 +147,19 @@ class Router /** * Create a unique hashkey for the router. - * + * * The router's url map can change based on the version of the software * you're running and the plugins that are enabled. To avoid having bad routes * get stuck in the cache, the key includes a list of plugins and the software * version. - * - * There can still be problems with a) differences in versions of the plugins and + * + * There can still be problems with a) differences in versions of the plugins and * b) people running code between official versions, but these tend to be more * sophisticated users who can grok what's going on and clear their caches. - * + * * @return string cache key string that should uniquely identify a router */ - + static function cacheKey() { $parts = array('router'); @@ -173,7 +173,7 @@ class Router return Cache::codeKey(implode(':', $parts)); } - + function initialize() { $m = StatusNet_URL_Mapper::getInstance(); diff --git a/lib/subgroupnav.php b/lib/subgroupnav.php index b0ec364bff..bd03fe3e45 100644 --- a/lib/subgroupnav.php +++ b/lib/subgroupnav.php @@ -42,7 +42,6 @@ require_once INSTALLDIR.'/lib/widget.php'; * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @link http://status.net/ */ - class SubGroupNav extends Menu { var $user = null; @@ -52,7 +51,6 @@ class SubGroupNav extends Menu * * @param Action $action current action, used for output */ - function __construct($action=null, $user=null) { parent::__construct($action); @@ -64,7 +62,6 @@ class SubGroupNav extends Menu * * @return void */ - function show() { $cur = common_current_user(); @@ -76,23 +73,30 @@ class SubGroupNav extends Menu $this->out->menuItem(common_local_url('showstream', array('nickname' => $this->user->nickname)), - _('Profile'), + // TRANS: Menu item in local navigation menu. + _m('MENU','Profile'), (empty($profile)) ? $this->user->nickname : $profile->getBestName(), $action == 'showstream', 'nav_profile'); $this->out->menuItem(common_local_url('subscriptions', array('nickname' => $this->user->nickname)), - _('Subscriptions'), - sprintf(_('People %s subscribes to'), + // TRANS: Menu item in local navigation menu. + _m('MENU','Subscriptions'), + // TRANS: Menu item title in local navigation menu. + // TRANS: %s is a user nickname. + sprintf(_('People %s subscribes to.'), $this->user->nickname), $action == 'subscriptions', 'nav_subscriptions'); $this->out->menuItem(common_local_url('subscribers', array('nickname' => $this->user->nickname)), - _('Subscribers'), - sprintf(_('People subscribed to %s'), + // TRANS: Menu item in local navigation menu. + _m('MENU','Subscribers'), + // TRANS: Menu item title in local navigation menu. + // TRANS: %s is a user nickname. + sprintf(_('People subscribed to %s.'), $this->user->nickname), $action == 'subscribers', 'nav_subscribers'); @@ -103,8 +107,10 @@ class SubGroupNav extends Menu $this->out->menuItem(common_local_url('subqueue', array('nickname' => $this->user->nickname)), - sprintf(_('Pending (%d)'), $pending), - sprintf(_('Approve pending subscription requests'), + // TRANS: Menu item in local navigation menu. + sprintf(_m('MENU','Pending (%d)'), $pending), + // TRANS: Menu item title in local navigation menu. + sprintf(_('Approve pending subscription requests.'), $this->user->nickname), $action == 'subqueueaction', 'nav_subscribers'); @@ -113,15 +119,21 @@ class SubGroupNav extends Menu $this->out->menuItem(common_local_url('usergroups', array('nickname' => $this->user->nickname)), - _('Groups'), - sprintf(_('Groups %s is a member of'), + // TRANS: Menu item in local navigation menu. + _m('MENU','Groups'), + // TRANS: Menu item title in local navigation menu. + // TRANS: %s is a user nickname. + sprintf(_('Groups %s is a member of.'), $this->user->nickname), $action == 'usergroups', 'nav_usergroups'); if (common_config('invite', 'enabled') && !is_null($cur) && $this->user->id === $cur->id) { $this->out->menuItem(common_local_url('invite'), - _('Invite'), - sprintf(_('Invite friends and colleagues to join you on %s'), + // TRANS: Menu item in local navigation menu. + _m('MENU','Invite'), + // TRANS: Menu item title in local navigation menu. + // TRANS: %s is a user nickname. + sprintf(_('Invite friends and colleagues to join you on %s.'), common_config('site', 'name')), $action == 'invite', 'nav_invite'); From ede8fabb5502c7ac975b305a7b6f6f2a6d4d51de Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Tue, 29 Mar 2011 23:14:40 +0200 Subject: [PATCH 79/90] Fix incorrect translator documentation. Spotted by AVRS. --- actions/register.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/actions/register.php b/actions/register.php index 7b3c075156..5b4e990370 100644 --- a/actions/register.php +++ b/actions/register.php @@ -531,7 +531,7 @@ class RegisterAction extends Action $this->elementEnd('li'); } $this->elementEnd('ul'); - // TRANS: Field label on account registration page. + // TRANS: Botton text to register a user on account registration page. $this->submit('submit', _m('BUTTON','Register')); $this->elementEnd('fieldset'); $this->elementEnd('form'); From d7304d565947fcc704db5289cf2da597990e4d59 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 15:05:54 -0700 Subject: [PATCH 80/90] php notice fix -- misspelled bit --- lib/filteringnoticestream.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/filteringnoticestream.php b/lib/filteringnoticestream.php index a3bdc08af6..ab39ad8ac9 100644 --- a/lib/filteringnoticestream.php +++ b/lib/filteringnoticestream.php @@ -107,7 +107,7 @@ abstract class FilteringNoticeStream extends NoticeStream $ids = array(); while ($notices->fetch()) { - $ids[] = $notice->id; + $ids[] = $notices->id; } return $ids; From 18a994d105e4221ac8da58226309dca1d3503ca9 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 15:19:04 -0700 Subject: [PATCH 81/90] Fix typo in filteringnoticestream that caused some messages to get lost --- lib/filteringnoticestream.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/filteringnoticestream.php b/lib/filteringnoticestream.php index ab39ad8ac9..96b9432fc1 100644 --- a/lib/filteringnoticestream.php +++ b/lib/filteringnoticestream.php @@ -84,7 +84,7 @@ abstract class FilteringNoticeStream extends NoticeStream while ($raw->fetch()) { if ($this->filter($raw)) { $filtered[] = clone($raw); - if (count($filtered >= $total)) { + if (count($filtered) >= $total) { break; } } From 880661de4e8fd6735e9eba57e059fca0c719666b Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 15:40:07 -0700 Subject: [PATCH 82/90] Paging fix for public timeline: drop replies from the stuff we pull in for the threaded web view. --- actions/public.php | 7 +++++-- lib/publicnoticestream.php | 22 +++++++++++++++++++--- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/actions/public.php b/actions/public.php index b029407250..1b6c14b2e6 100644 --- a/actions/public.php +++ b/actions/public.php @@ -85,8 +85,11 @@ class PublicAction extends Action common_set_returnto($this->selfUrl()); - $this->notice = Notice::publicStream(($this->page-1)*NOTICES_PER_PAGE, - NOTICES_PER_PAGE + 1); + $stream = new PublicNoticeStream(PublicNoticeStream::THREADED); + $this->notice = $stream->getNotices(($this->page-1)*NOTICES_PER_PAGE, + NOTICES_PER_PAGE + 1, + 0, + 0); if (!$this->notice) { // TRANS: Server error displayed when a public timeline cannot be retrieved. diff --git a/lib/publicnoticestream.php b/lib/publicnoticestream.php index 5c8d313d46..08ac790fab 100644 --- a/lib/publicnoticestream.php +++ b/lib/publicnoticestream.php @@ -47,10 +47,16 @@ if (!defined('STATUSNET')) { class PublicNoticeStream extends ScopingNoticeStream { - function __construct() + const THREADED=true; + + /** + * + * @param boolean $threaded set to true to exclude replies, for later fetching + */ + function __construct($threaded=false) { - parent::__construct(new CachingNoticeStream(new RawPublicNoticeStream(), - 'public')); + parent::__construct(new CachingNoticeStream(new RawPublicNoticeStream($threaded), + $threaded ? 'public:threaded' : 'public')); } } @@ -67,6 +73,13 @@ class PublicNoticeStream extends ScopingNoticeStream class RawPublicNoticeStream extends NoticeStream { + var $threaded; + + function __construct($threaded=false) + { + $this->threaded = $threaded; + } + function getNoticeIds($offset, $limit, $since_id, $max_id) { $notice = new Notice(); @@ -87,6 +100,9 @@ class RawPublicNoticeStream extends NoticeStream $notice->whereAdd('is_local !='. Notice::LOCAL_NONPUBLIC); $notice->whereAdd('is_local !='. Notice::GATEWAY); } + if ($this->threaded) { + $notice->whereAdd('reply_to IS NULL'); + } Notice::addWhereSinceId($notice, $since_id); Notice::addWhereMaxId($notice, $max_id); From 0a19674c9f61d008069b5d9607179ea2dd7807f3 Mon Sep 17 00:00:00 2001 From: Siebrand Mazeland Date: Wed, 30 Mar 2011 00:48:19 +0200 Subject: [PATCH 83/90] @evan Fixed message domain for messages in plugins for recent commits. Numbered parameters when more than one used in a message. L10n updates for consistency. i18n for non-translatable exception. Updated translator documentation. Removed superfluous whitespace. --- actions/apistatusesretweet.php | 2 ++ actions/register.php | 2 +- actions/repeat.php | 2 ++ actions/shownotice.php | 1 + classes/Notice.php | 6 ++++-- lib/command.php | 2 ++ lib/conversationnoticestream.php | 2 -- lib/favenoticestream.php | 2 -- lib/noticelistitem.php | 25 +++---------------------- lib/toselector.php | 17 +++++++++++------ plugins/Bookmark/showbookmark.php | 23 +++++++++++++---------- plugins/Event/showevent.php | 18 ++++++++++-------- plugins/Event/showrsvp.php | 27 +++++++++++++++++---------- 13 files changed, 66 insertions(+), 63 deletions(-) diff --git a/actions/apistatusesretweet.php b/actions/apistatusesretweet.php index 2bc9092ba6..6e6ebb038f 100644 --- a/actions/apistatusesretweet.php +++ b/actions/apistatusesretweet.php @@ -89,6 +89,7 @@ class ApiStatusesRetweetAction extends ApiAuthAction if ($this->original->scope != Notice::SITE_SCOPE && $this->original->scope != Notice::PUBLIC_SCOPE) { + // TRANS: Client error displayed when trying to repeat a private notice. $this->clientError(_('You may not repeat a private notice.'), 403, $this->format); @@ -100,6 +101,7 @@ class ApiStatusesRetweetAction extends ApiAuthAction // Can the profile actually see that notice? if (!$this->original->inScope($profile)) { + // TRANS: Client error displayed when trying to repeat a notice the user has no access to. $this->clientError(_('No access to that notice.'), 403, $this->format); diff --git a/actions/register.php b/actions/register.php index 5b4e990370..084e3e6f1d 100644 --- a/actions/register.php +++ b/actions/register.php @@ -531,7 +531,7 @@ class RegisterAction extends Action $this->elementEnd('li'); } $this->elementEnd('ul'); - // TRANS: Botton text to register a user on account registration page. + // TRANS: Button text to register a user on account registration page. $this->submit('submit', _m('BUTTON','Register')); $this->elementEnd('fieldset'); $this->elementEnd('form'); diff --git a/actions/repeat.php b/actions/repeat.php index 4201a4ce95..3c5ced1129 100644 --- a/actions/repeat.php +++ b/actions/repeat.php @@ -77,6 +77,7 @@ class RepeatAction extends Action if ($this->notice->scope != Notice::SITE_SCOPE && $this->notice->scope != Notice::PUBLIC_SCOPE) { + // TRANS: Client error displayed when trying to repeat a private notice. $this->clientError(_('You may not repeat a private notice.'), 403); } @@ -99,6 +100,7 @@ class RepeatAction extends Action // Can the profile actually see that notice? if (!$this->notice->inScope($profile)) { + // TRANS: Client error displayed when trying to repeat a notice the user has no access to. $this->clientError(_('No access to that notice.'), 403); } diff --git a/actions/shownotice.php b/actions/shownotice.php index 7127a60db4..15358fd082 100644 --- a/actions/shownotice.php +++ b/actions/shownotice.php @@ -103,6 +103,7 @@ class ShownoticeAction extends OwnerDesignAction } if (!$this->notice->inScope($curProfile)) { + // TRANS: Client exception thrown when trying a view a notice the user has no access to. throw new ClientException(_('Not available.'), 403); } diff --git a/classes/Notice.php b/classes/Notice.php index b5eafb0ffa..33b54b0cc7 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -353,6 +353,7 @@ class Notice extends Memcached_DataObject if (!empty($repeat) && $repeat->scope != Notice::SITE_SCOPE && $repeat->scope != Notice::PUBLIC_SCOPE) { + // TRANS: Client exception thrown when trying to repeat a private notice. throw new ClientException(_('Cannot repeat a private notice.'), 403); } @@ -366,7 +367,9 @@ class Notice extends Memcached_DataObject if (!empty($notice->reply_to)) { $reply = Notice::staticGet('id', $notice->reply_to); if (!$reply->inScope($profile)) { - throw new ClientException(sprintf(_("%s has no access to notice %d"), + // TRANS: Client error displayed when trying to reply to a notice a the target has no access to. + // TRANS: %1$s is a user nickname, %2$d is a notice ID (number). + throw new ClientException(sprintf(_('%1$s has no access to notice %2$d.'), $profile->nickname, $reply->id), 403); } $notice->conversation = $reply->conversation; @@ -2063,7 +2066,6 @@ class Notice extends Memcached_DataObject * * @return boolean whether the profile is in the notice's scope */ - function inScope($profile) { // If there's no scope, anyone (even anon) is in scope. diff --git a/lib/command.php b/lib/command.php index 35d0702684..acb3ac0038 100644 --- a/lib/command.php +++ b/lib/command.php @@ -548,6 +548,7 @@ class RepeatCommand extends Command if ($notice->scope != Notice::SITE_SCOPE && $notice->scope != Notice::PUBLIC_SCOPE) { + // TRANS: Client error displayed when trying to repeat a private notice. $channel->error($this->user, _('You may not repeat a private notice.')); } @@ -556,6 +557,7 @@ class RepeatCommand extends Command // Can the profile actually see that notice? if (!$notice->inScope($profile)) { + // TRANS: Client error displayed when trying to repeat a notice the user has no access to. $channel->error($this->user, _('You have no access to that notice.')); } diff --git a/lib/conversationnoticestream.php b/lib/conversationnoticestream.php index addf8768ce..78ba3a372d 100644 --- a/lib/conversationnoticestream.php +++ b/lib/conversationnoticestream.php @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class ConversationNoticeStream extends ScopingNoticeStream { function __construct($id) @@ -64,7 +63,6 @@ class ConversationNoticeStream extends ScopingNoticeStream * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class RawConversationNoticeStream extends NoticeStream { protected $id; diff --git a/lib/favenoticestream.php b/lib/favenoticestream.php index 987805cf9d..b586a94d17 100644 --- a/lib/favenoticestream.php +++ b/lib/favenoticestream.php @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class FaveNoticeStream extends ScopingNoticeStream { function __construct($user_id, $own) @@ -69,7 +68,6 @@ class FaveNoticeStream extends ScopingNoticeStream * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class RawFaveNoticeStream extends NoticeStream { protected $user_id; diff --git a/lib/noticelistitem.php b/lib/noticelistitem.php index 097a5d06c4..5942415c51 100644 --- a/lib/noticelistitem.php +++ b/lib/noticelistitem.php @@ -51,19 +51,15 @@ if (!defined('STATUSNET')) { * @see NoticeList * @see ProfileNoticeListItem */ - class NoticeListItem extends Widget { /** The notice this item will show. */ - 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; /** @@ -73,7 +69,6 @@ class NoticeListItem extends Widget * * @param Notice $notice The notice we'll display */ - function __construct($notice, $out=null) { parent::__construct($out); @@ -99,7 +94,6 @@ class NoticeListItem extends Widget * * @return void */ - function show() { if (empty($this->notice)) { @@ -165,7 +159,6 @@ class NoticeListItem extends Widget * * @return void */ - function showStart() { if (Event::handle('StartOpenNoticeListItemElement', array($this))) { @@ -185,7 +178,6 @@ class NoticeListItem extends Widget * * @return void */ - function showFaveForm() { if (Event::handle('StartShowFaveForm', array($this))) { @@ -210,7 +202,6 @@ class NoticeListItem extends Widget * * @return void */ - function showAuthor() { $this->out->elementStart('span', 'vcard author'); @@ -235,7 +226,6 @@ class NoticeListItem extends Widget * * @return void */ - function showAvatar() { $avatar_size = $this->avatarSize(); @@ -266,7 +256,6 @@ class NoticeListItem extends Widget * * @return void */ - function showNickname() { $this->out->raw('' . @@ -283,7 +272,6 @@ class NoticeListItem extends Widget * * @return void */ - function showContent() { // FIXME: URL, image, video, audio @@ -314,7 +302,6 @@ class NoticeListItem extends Widget * * @return void */ - function showNoticeLink() { $noticeurl = $this->notice->bestUrl(); @@ -342,7 +329,6 @@ class NoticeListItem extends Widget * * @return void */ - function showNoticeLocation() { $id = $this->notice->id; @@ -423,7 +409,6 @@ class NoticeListItem extends Widget * * @return void */ - function showNoticeSource() { $ns = $this->notice->getSource(); @@ -479,7 +464,6 @@ class NoticeListItem extends Widget * * @return void */ - function showContext() { if ($this->notice->hasConversation()) { @@ -514,7 +498,6 @@ class NoticeListItem extends Widget * * @return void */ - function showRepeat() { if (!empty($this->repeat)) { @@ -548,7 +531,6 @@ class NoticeListItem extends Widget * * @return void */ - function showReplyLink() { if (common_logged_in()) { @@ -570,7 +552,6 @@ class NoticeListItem extends Widget * * @return void */ - function showDeleteLink() { $user = common_current_user(); @@ -593,7 +574,6 @@ class NoticeListItem extends Widget * * @return void */ - function showRepeatForm() { if ($this->notice->scope == Notice::PUBLIC_SCOPE || @@ -605,7 +585,9 @@ class NoticeListItem extends Widget $profile = $user->getProfile(); if ($profile->hasRepeated($this->notice->id)) { $this->out->element('span', array('class' => 'repeated', - 'title' => _('Notice repeated')), + // TRANS: Title for repeat form status in notice list when a notice has been repeated. + 'title' => _('Notice repeated.')), + // TRANS: Repeat form status in notice list when a notice has been repeated. _('Repeated')); } else { $rf = new RepeatForm($this->out, $this->notice); @@ -622,7 +604,6 @@ class NoticeListItem extends Widget * * @return void */ - function showEnd() { if (Event::handle('StartCloseNoticeListItemElement', array($this))) { diff --git a/lib/toselector.php b/lib/toselector.php index 6dd4b5c9f4..7234a603d8 100644 --- a/lib/toselector.php +++ b/lib/toselector.php @@ -4,7 +4,7 @@ * Copyright (C) 2011, StatusNet, Inc. * * Widget showing a drop-down of potential addressees - * + * * PHP version 5 * * This program is free software: you can redistribute it and/or modify @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class ToSelector extends Widget { protected $user; @@ -84,12 +83,15 @@ class ToSelector extends Widget $default = 'public:site'; if (!common_config('site', 'private')) { - $choices['public:everyone'] = _('Everyone'); + // TRANS: Option in drop-down of potential addressees. + $choices['public:everyone'] = _m('SENDTO','Everyone'); $default = 'public:everyone'; } // XXX: better name...? + // TRANS: Option in drop-down of potential addressees. + // TRANS: %s is a StatusNet sitename. $choices['public:site'] = sprintf(_('My colleagues at %s'), common_config('site', 'name')); - + $groups = $this->user->getGroups(); while ($groups->fetch()) { @@ -109,13 +111,15 @@ class ToSelector extends Widget } $this->out->dropdown($this->id, - _('To:'), + // TRANS: Label for drop-down of potential addressees. + _m('LABEL','To:'), $choices, null, false, $default); $this->out->checkbox('notice_private', + // TRANS: Checkbox label in widget for selecting potential addressees to mark the notice private. _('Private'), $this->private); } @@ -149,7 +153,8 @@ class ToSelector extends Widget } break; default: - throw new ClientException('Unknown to value: ' . toArg); + // TRANS: Client exception thrown in widget for selecting potential addressees when an invalid fill option was received. + throw new ClientException(sprintf(_('Unknown to value: "%s".'),$toArg)); break; } } diff --git a/plugins/Bookmark/showbookmark.php b/plugins/Bookmark/showbookmark.php index 435d85940a..9eb5778b2c 100644 --- a/plugins/Bookmark/showbookmark.php +++ b/plugins/Bookmark/showbookmark.php @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class ShowbookmarkAction extends ShownoticeAction { protected $bookmark = null; @@ -56,7 +55,6 @@ class ShowbookmarkAction extends ShownoticeAction * * @return boolean true */ - function prepare($argarray) { OwnerDesignAction::prepare($argarray); @@ -66,14 +64,16 @@ class ShowbookmarkAction extends ShownoticeAction $this->bookmark = Bookmark::staticGet('id', $this->id); if (empty($this->bookmark)) { - throw new ClientException(_('No such bookmark.'), 404); + // TRANS: Client exception thrown when referring to a non-existing bookmark. + throw new ClientException(_m('No such bookmark.'), 404); } $this->notice = Notice::staticGet('uri', $this->bookmark->uri); if (empty($this->notice)) { // Did we used to have it, and it got deleted? - throw new ClientException(_('No such bookmark.'), 404); + // TRANS: Client exception thrown when referring to a non-existing bookmark. + throw new ClientException(_m('No such bookmark.'), 404); } if (!empty($cur)) { @@ -83,19 +83,22 @@ class ShowbookmarkAction extends ShownoticeAction } if (!$this->notice->inScope($curProfile)) { - throw new ClientException(_('Not available.'), 403); + // TRANS: Client exception thrown when referring to a bookmark the user has no access to. + throw new ClientException(_m('Not available.'), 403); } $this->user = User::staticGet('id', $this->bookmark->profile_id); if (empty($this->user)) { - throw new ClientException(_('No such user.'), 404); + // TRANS: Client exception thrown when referring to a bookmark for a non-existing user. + throw new ClientException(_m('No such user.'), 404); } $this->profile = $this->user->getProfile(); if (empty($this->profile)) { - throw new ServerException(_('User without a profile.')); + // TRANS: Client exception thrown when referring to a bookmark for a non-existing profile. + throw new ServerException(_m('User without a profile.')); } $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); @@ -110,10 +113,11 @@ class ShowbookmarkAction extends ShownoticeAction * * @return string page tile */ - function title() { - return sprintf(_('%s\'s bookmark for "%s"'), + // TRANS: Title for bookmark. + // TRANS: %1$s is a user nickname, %2$s is a bookmark title. + return sprintf(_('%1s$\'s bookmark for "%2$s"'), $this->user->nickname, $this->bookmark->title); } @@ -123,7 +127,6 @@ class ShowbookmarkAction extends ShownoticeAction * * @return void */ - function showPageTitle() { $this->elementStart('h1'); diff --git a/plugins/Event/showevent.php b/plugins/Event/showevent.php index 93ce6dd68b..b31360aa5c 100644 --- a/plugins/Event/showevent.php +++ b/plugins/Event/showevent.php @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class ShoweventAction extends ShownoticeAction { protected $id = null; @@ -57,7 +56,6 @@ class ShoweventAction extends ShownoticeAction * * @return boolean true */ - function prepare($argarray) { OwnerDesignAction::prepare($argarray); @@ -67,14 +65,16 @@ class ShoweventAction extends ShownoticeAction $this->event = Happening::staticGet('id', $this->id); if (empty($this->event)) { - throw new ClientException(_('No such event.'), 404); + // TRANS: Client exception thrown when referring to a non-existing event. + throw new ClientException(_m('No such event.'), 404); } $this->notice = $this->event->getNotice(); if (empty($this->notice)) { // Did we used to have it, and it got deleted? - throw new ClientException(_('No such event.'), 404); + // TRANS: Client exception thrown when referring to a non-existing event. + throw new ClientException(_m('No such event.'), 404); } $cur = common_current_user(); @@ -86,19 +86,22 @@ class ShoweventAction extends ShownoticeAction } if (!$this->notice->inScope($curProfile)) { - throw new ClientException(_('Not available.'), 403); + // TRANS: Client exception thrown when referring to an event the user has no access to. + throw new ClientException(_m('Not available.'), 403); } $this->user = User::staticGet('id', $this->event->profile_id); if (empty($this->user)) { - throw new ClientException(_('No such user.'), 404); + // TRANS: Client exception thrown when referring to a non-existing user. + throw new ClientException(_m('No such user.'), 404); } $this->profile = $this->user->getProfile(); if (empty($this->profile)) { - throw new ServerException(_('User without a profile.')); + // TRANS: Server exception thrown when referring to a user without a profile. + throw new ServerException(_m('User without a profile.')); } $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); @@ -113,7 +116,6 @@ class ShoweventAction extends ShownoticeAction * * @return string page tile */ - function title() { return $this->event->title; diff --git a/plugins/Event/showrsvp.php b/plugins/Event/showrsvp.php index 3b7db6788a..1f96b394df 100644 --- a/plugins/Event/showrsvp.php +++ b/plugins/Event/showrsvp.php @@ -44,7 +44,6 @@ if (!defined('STATUSNET')) { * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @link http://status.net/ */ - class ShowrsvpAction extends ShownoticeAction { protected $rsvp = null; @@ -57,7 +56,6 @@ class ShowrsvpAction extends ShownoticeAction * * @return boolean true */ - function prepare($argarray) { OwnerDesignAction::prepare($argarray); @@ -67,20 +65,25 @@ class ShowrsvpAction extends ShownoticeAction $this->rsvp = RSVP::staticGet('id', $this->id); if (empty($this->rsvp)) { - throw new ClientException(_('No such RSVP.'), 404); + // TRANS: Client exception thrown when referring to a non-existing RSVP. + // TRANS: RSVP stands for "Please reply". + throw new ClientException(_m('No such RSVP.'), 404); } $this->event = $this->rsvp->getEvent(); if (empty($this->event)) { - throw new ClientException(_('No such Event.'), 404); + // TRANS: Client exception thrown when referring to a non-existing event. + throw new ClientException(_m('No such Event.'), 404); } $this->notice = $this->rsvp->getNotice(); if (empty($this->notice)) { // Did we used to have it, and it got deleted? - throw new ClientException(_('No such RSVP.'), 404); + // TRANS: Client exception thrown when referring to a non-existing RSVP. + // TRANS: RSVP stands for "Please reply". + throw new ClientException(_m('No such RSVP.'), 404); } $cur = common_current_user(); @@ -92,19 +95,22 @@ class ShowrsvpAction extends ShownoticeAction } if (!$this->notice->inScope($curProfile)) { - throw new ClientException(_('Not available.'), 403); + // TRANS: Client exception thrown when referring to an event the user has no access to. + throw new ClientException(_m('Not available.'), 403); } $this->user = User::staticGet('id', $this->rsvp->profile_id); if (empty($this->user)) { - throw new ClientException(_('No such user.'), 404); + // TRANS: Client exception thrown when referring to a non-existing user. + throw new ClientException(_m('No such user.'), 404); } $this->profile = $this->user->getProfile(); if (empty($this->profile)) { - throw new ServerException(_('User without a profile.')); + // TRANS: Server exception thrown when referring to a user without a profile. + throw new ServerException(_m('User without a profile.')); } $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); @@ -119,10 +125,11 @@ class ShowrsvpAction extends ShownoticeAction * * @return string page tile */ - function title() { - return sprintf(_('%s\'s RSVP for "%s"'), + // TRANS: Title for event. + // TRANS: %1$s is a user nickname, %2$s is an event title. + return sprintf(_('%1$s\'s RSVP for "%2$s"'), $this->user->nickname, $this->event->title); } From 8286edce280ea27ed91430c556840f0959a7c6de Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 16:18:51 -0700 Subject: [PATCH 84/90] fix regression in group join approval due to refactoring (forgot to remove a param) --- classes/Group_join_queue.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/Group_join_queue.php b/classes/Group_join_queue.php index 38473c9b7c..7df71ed042 100644 --- a/classes/Group_join_queue.php +++ b/classes/Group_join_queue.php @@ -104,7 +104,7 @@ class Group_join_queue extends Managed_DataObject * * @return Group_member object on success */ - function complete(User_group $group) + function complete() { $join = null; $profile = $this->getMember(); From 9adbb49fc9c134539fb8311612ccc6f67637e6d8 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 16:20:12 -0700 Subject: [PATCH 85/90] Consolidate some precondition checks for repeats, fix a couple bits in the repeat command. Notice::saveNew() now does these checks directly when making a repeat: * make sure the original is valid and existing * stop you from repeating your own message * stop you from repeating something you've previously repeated * prevent repeats of any non-public messages * explicit inScope() check to make sure you can read the original too (just in case there's a funky extension at play that changes scoping rules) These error conditions throw exceptions, which the caller either uses as an error message or passes on up the stack, without having to duplicate the checks in each i/o channel. --- actions/apistatusesretweet.php | 36 ------------------------------- actions/repeat.php | 29 ------------------------- classes/Notice.php | 33 +++++++++++++++++++++++++--- lib/command.php | 39 +++++----------------------------- 4 files changed, 35 insertions(+), 102 deletions(-) diff --git a/actions/apistatusesretweet.php b/actions/apistatusesretweet.php index 2bc9092ba6..4832da1823 100644 --- a/actions/apistatusesretweet.php +++ b/actions/apistatusesretweet.php @@ -78,42 +78,6 @@ class ApiStatusesRetweetAction extends ApiAuthAction $this->user = $this->auth_user; - if ($this->user->id == $this->original->profile_id) { - // TRANS: Client error displayed trying to repeat an own notice through the API. - $this->clientError(_('Cannot repeat your own notice.'), - 400, $this->format); - return false; - } - - // Is it OK to repeat that notice (general enough scope)? - - if ($this->original->scope != Notice::SITE_SCOPE && - $this->original->scope != Notice::PUBLIC_SCOPE) { - $this->clientError(_('You may not repeat a private notice.'), - 403, - $this->format); - return false; - } - - $profile = $this->user->getProfile(); - - // Can the profile actually see that notice? - - if (!$this->original->inScope($profile)) { - $this->clientError(_('No access to that notice.'), - 403, - $this->format); - return false; - } - - if ($profile->hasRepeated($id)) { - // TRANS: Client error displayed trying to re-repeat a notice through the API. - $this->clientError(_('Already repeated that notice.'), - 400, $this->format); - return false; - } - - return true; } diff --git a/actions/repeat.php b/actions/repeat.php index 4201a4ce95..44c57456fa 100644 --- a/actions/repeat.php +++ b/actions/repeat.php @@ -73,20 +73,6 @@ class RepeatAction extends Action return false; } - // Is it OK to repeat that notice (general enough scope)? - - if ($this->notice->scope != Notice::SITE_SCOPE && - $this->notice->scope != Notice::PUBLIC_SCOPE) { - $this->clientError(_('You may not repeat a private notice.'), - 403); - } - - if ($this->user->id == $this->notice->profile_id) { - // TRANS: Client error displayed when trying to repeat an own notice. - $this->clientError(_('You cannot repeat your own notice.')); - return false; - } - $token = $this->trimmed('token-'.$id); if (empty($token) || $token != common_session_token()) { @@ -94,21 +80,6 @@ class RepeatAction extends Action return false; } - $profile = $this->user->getProfile(); - - // Can the profile actually see that notice? - - if (!$this->notice->inScope($profile)) { - $this->clientError(_('No access to that notice.'), 403); - } - - - if ($profile->hasRepeated($id)) { - // TRANS: Client error displayed when trying to repeat an already repeated notice. - $this->clientError(_('You already repeated that notice.')); - return false; - } - return true; } diff --git a/classes/Notice.php b/classes/Notice.php index b5eafb0ffa..81ccd8d74f 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -350,13 +350,31 @@ class Notice extends Memcached_DataObject $repeat = Notice::staticGet('id', $repeat_of); - if (!empty($repeat) && - $repeat->scope != Notice::SITE_SCOPE && + if (empty($repeat)) { + throw new ClientException(_('Cannot repeat; original notice is missing or deleted.')); + } + + if ($profile->id == $repeat->profile_id) { + // TRANS: Client error displayed when trying to repeat an own notice. + throw new ClientException(_('You cannot repeat your own notice.')); + } + + if ($repeat->scope != Notice::SITE_SCOPE && $repeat->scope != Notice::PUBLIC_SCOPE) { + // TRANS: Client error displayed when trying to repeat a non-public notice. throw new ClientException(_('Cannot repeat a private notice.'), 403); } - // XXX: Check for access...? + if (!$repeat->inScope($profile)) { + // The generic checks above should cover this, but let's be sure! + // TRANS: Client error displayed when trying to repeat a notice you cannot access. + throw new ClientException(_('Cannot repeat a notice you cannot read.'), 403); + } + + if ($profile->hasRepeated($repeat->id)) { + // TRANS: Client error displayed when trying to repeat an already repeated notice. + throw new ClientException(_('You already repeated that notice.')); + } $notice->repeat_of = $repeat_of; } else { @@ -1567,6 +1585,15 @@ class Notice extends Memcached_DataObject return $location; } + /** + * Convenience function for posting a repeat of an existing message. + * + * @param int $repeater_id: profile ID of user doing the repeat + * @param string $source: posting source key, eg 'web', 'api', etc + * @return Notice + * + * @throws Exception on failure or permission problems + */ function repeat($repeater_id, $source) { $author = Profile::staticGet('id', $this->profile_id); diff --git a/lib/command.php b/lib/command.php index 35d0702684..aaad577761 100644 --- a/lib/command.php +++ b/lib/command.php @@ -537,44 +537,15 @@ class RepeatCommand extends Command { $notice = $this->getNotice($this->other); - if($this->user->id == $notice->profile_id) - { - // TRANS: Error text shown when trying to repeat an own notice. - $channel->error($this->user, _('Cannot repeat your own notice.')); - return; - } - - // Is it OK to repeat that notice (general enough scope)? - - if ($notice->scope != Notice::SITE_SCOPE && - $notice->scope != Notice::PUBLIC_SCOPE) { - $channel->error($this->user, _('You may not repeat a private notice.')); - } - - $profile = $this->user->getProfile(); - - // Can the profile actually see that notice? - - if (!$notice->inScope($profile)) { - $channel->error($this->user, _('You have no access to that notice.')); - } - - if ($profile->hasRepeated($notice->id)) { - // TRANS: Error text shown when trying to repeat an notice that was already repeated by the user. - $channel->error($this->user, _('Already repeated that notice.')); - return; - } - - $repeat = $notice->repeat($this->user->id, $channel->source); - - if ($repeat) { + try { + $repeat = $notice->repeat($this->user->id, $channel->source()); + $recipient = $notice->getProfile(); // TRANS: Message given having repeated a notice from another user. // TRANS: %s is the name of the user for which the notice was repeated. $channel->output($this->user, sprintf(_('Notice from %s repeated.'), $recipient->nickname)); - } else { - // TRANS: Error text shown when repeating a notice fails with an unknown reason. - $channel->error($this->user, _('Error repeating notice.')); + } catch (Exception $e) { + $channel->error($this->user, $e->getMessage()); } } } From 23436ad83d3039aee73799b0530921cb13221ce3 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 16:50:06 -0700 Subject: [PATCH 86/90] Fix for bookmark posting: missing object was causing error output to crush ajax --- plugins/Bookmark/BookmarkPlugin.php | 1 + 1 file changed, 1 insertion(+) diff --git a/plugins/Bookmark/BookmarkPlugin.php b/plugins/Bookmark/BookmarkPlugin.php index bc8985e907..4c13ec79cb 100644 --- a/plugins/Bookmark/BookmarkPlugin.php +++ b/plugins/Bookmark/BookmarkPlugin.php @@ -459,6 +459,7 @@ class BookmarkPlugin extends MicroAppPlugin "Formatting notice {$notice->uri} as a bookmark."); $object = new ActivityObject(); + $nb = Bookmark::getByNotice($notice); $object->id = $notice->uri; $object->type = ActivityObject::BOOKMARK; From 20ca5027ccb30f094bc87189ef19ecdb59156137 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 16:58:15 -0700 Subject: [PATCH 87/90] Consolidate common code in micro-apps custom notice type display actions. The ShowNoticeAction subclasses were cut-n-pasting a lot of prepare() code from ShowNoticeAction, though the only part that's different is how we look up the notice. Broke that out to a getNotice() method, so only that needs to be copied. Avoids extra copies of permission checks and other common code in this spot. --- actions/shownotice.php | 44 ++++++++++++++++++----------- plugins/Bookmark/showbookmark.php | 43 +++-------------------------- plugins/Event/showevent.php | 46 +++---------------------------- plugins/Event/showrsvp.php | 46 +++---------------------------- plugins/Poll/showpoll.php | 45 +++--------------------------- 5 files changed, 44 insertions(+), 180 deletions(-) diff --git a/actions/shownotice.php b/actions/shownotice.php index 15358fd082..b6d0625e13 100644 --- a/actions/shownotice.php +++ b/actions/shownotice.php @@ -77,22 +77,7 @@ class ShownoticeAction extends OwnerDesignAction StatusNet::setApi(true); } - $id = $this->arg('notice'); - - $this->notice = Notice::staticGet('id', $id); - - if (empty($this->notice)) { - // Did we used to have it, and it got deleted? - $deleted = Deleted_notice::staticGet($id); - if (!empty($deleted)) { - // TRANS: Client error displayed trying to show a deleted notice. - $this->clientError(_('Notice deleted.'), 410); - } else { - // TRANS: Client error displayed trying to show a non-existing notice. - $this->clientError(_('No such notice.'), 404); - } - return false; - } + $this->notice = $this->getNotice(); $cur = common_current_user(); @@ -122,6 +107,33 @@ class ShownoticeAction extends OwnerDesignAction return true; } + /** + * Fetch the notice to show. This may be overridden by child classes to + * customize what we fetch without duplicating all of the prepare() method. + * + * @return Notice + */ + function getNotice() + { + $id = $this->arg('notice'); + + $notice = Notice::staticGet('id', $id); + + if (empty($notice)) { + // Did we used to have it, and it got deleted? + $deleted = Deleted_notice::staticGet($id); + if (!empty($deleted)) { + // TRANS: Client error displayed trying to show a deleted notice. + $this->clientError(_('Notice deleted.'), 410); + } else { + // TRANS: Client error displayed trying to show a non-existing notice. + $this->clientError(_('No such notice.'), 404); + } + return false; + } + return $notice; + } + /** * Is this action read-only? * diff --git a/plugins/Bookmark/showbookmark.php b/plugins/Bookmark/showbookmark.php index 9eb5778b2c..27f24876a7 100644 --- a/plugins/Bookmark/showbookmark.php +++ b/plugins/Bookmark/showbookmark.php @@ -48,16 +48,8 @@ class ShowbookmarkAction extends ShownoticeAction { protected $bookmark = null; - /** - * For initializing members of the class. - * - * @param array $argarray misc. arguments - * - * @return boolean true - */ - function prepare($argarray) + function getNotice() { - OwnerDesignAction::prepare($argarray); $this->id = $this->trimmed('id'); @@ -68,42 +60,15 @@ class ShowbookmarkAction extends ShownoticeAction throw new ClientException(_m('No such bookmark.'), 404); } - $this->notice = Notice::staticGet('uri', $this->bookmark->uri); + $notice = Notice::staticGet('uri', $this->bookmark->uri); - if (empty($this->notice)) { + if (empty($notice)) { // Did we used to have it, and it got deleted? // TRANS: Client exception thrown when referring to a non-existing bookmark. throw new ClientException(_m('No such bookmark.'), 404); } - if (!empty($cur)) { - $curProfile = $cur->getProfile(); - } else { - $curProfile = null; - } - - if (!$this->notice->inScope($curProfile)) { - // TRANS: Client exception thrown when referring to a bookmark the user has no access to. - throw new ClientException(_m('Not available.'), 403); - } - - $this->user = User::staticGet('id', $this->bookmark->profile_id); - - if (empty($this->user)) { - // TRANS: Client exception thrown when referring to a bookmark for a non-existing user. - throw new ClientException(_m('No such user.'), 404); - } - - $this->profile = $this->user->getProfile(); - - if (empty($this->profile)) { - // TRANS: Client exception thrown when referring to a bookmark for a non-existing profile. - throw new ServerException(_m('User without a profile.')); - } - - $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); - - return true; + return $notice; } /** diff --git a/plugins/Event/showevent.php b/plugins/Event/showevent.php index b31360aa5c..e5afd47d00 100644 --- a/plugins/Event/showevent.php +++ b/plugins/Event/showevent.php @@ -49,17 +49,8 @@ class ShoweventAction extends ShownoticeAction protected $id = null; protected $event = null; - /** - * For initializing members of the class. - * - * @param array $argarray misc. arguments - * - * @return boolean true - */ - function prepare($argarray) + function getNotice() { - OwnerDesignAction::prepare($argarray); - $this->id = $this->trimmed('id'); $this->event = Happening::staticGet('id', $this->id); @@ -69,44 +60,15 @@ class ShoweventAction extends ShownoticeAction throw new ClientException(_m('No such event.'), 404); } - $this->notice = $this->event->getNotice(); + $notice = $this->event->getNotice(); - if (empty($this->notice)) { + if (empty($notice)) { // Did we used to have it, and it got deleted? // TRANS: Client exception thrown when referring to a non-existing event. throw new ClientException(_m('No such event.'), 404); } - $cur = common_current_user(); - - if (!empty($cur)) { - $curProfile = $cur->getProfile(); - } else { - $curProfile = null; - } - - if (!$this->notice->inScope($curProfile)) { - // TRANS: Client exception thrown when referring to an event the user has no access to. - throw new ClientException(_m('Not available.'), 403); - } - - $this->user = User::staticGet('id', $this->event->profile_id); - - if (empty($this->user)) { - // TRANS: Client exception thrown when referring to a non-existing user. - throw new ClientException(_m('No such user.'), 404); - } - - $this->profile = $this->user->getProfile(); - - if (empty($this->profile)) { - // TRANS: Server exception thrown when referring to a user without a profile. - throw new ServerException(_m('User without a profile.')); - } - - $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); - - return true; + return $notice; } /** diff --git a/plugins/Event/showrsvp.php b/plugins/Event/showrsvp.php index 1f96b394df..145788feea 100644 --- a/plugins/Event/showrsvp.php +++ b/plugins/Event/showrsvp.php @@ -49,17 +49,8 @@ class ShowrsvpAction extends ShownoticeAction protected $rsvp = null; protected $event = null; - /** - * For initializing members of the class. - * - * @param array $argarray misc. arguments - * - * @return boolean true - */ - function prepare($argarray) + function getNotice() { - OwnerDesignAction::prepare($argarray); - $this->id = $this->trimmed('id'); $this->rsvp = RSVP::staticGet('id', $this->id); @@ -77,45 +68,16 @@ class ShowrsvpAction extends ShownoticeAction throw new ClientException(_m('No such Event.'), 404); } - $this->notice = $this->rsvp->getNotice(); + $notice = $this->rsvp->getNotice(); - if (empty($this->notice)) { + if (empty($notice)) { // Did we used to have it, and it got deleted? // TRANS: Client exception thrown when referring to a non-existing RSVP. // TRANS: RSVP stands for "Please reply". throw new ClientException(_m('No such RSVP.'), 404); } - $cur = common_current_user(); - - if (!empty($cur)) { - $curProfile = $cur->getProfile(); - } else { - $curProfile = null; - } - - if (!$this->notice->inScope($curProfile)) { - // TRANS: Client exception thrown when referring to an event the user has no access to. - throw new ClientException(_m('Not available.'), 403); - } - - $this->user = User::staticGet('id', $this->rsvp->profile_id); - - if (empty($this->user)) { - // TRANS: Client exception thrown when referring to a non-existing user. - throw new ClientException(_m('No such user.'), 404); - } - - $this->profile = $this->user->getProfile(); - - if (empty($this->profile)) { - // TRANS: Server exception thrown when referring to a user without a profile. - throw new ServerException(_m('User without a profile.')); - } - - $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); - - return true; + return $notice; } /** diff --git a/plugins/Poll/showpoll.php b/plugins/Poll/showpoll.php index d59d9e28f3..edfe3fe245 100644 --- a/plugins/Poll/showpoll.php +++ b/plugins/Poll/showpoll.php @@ -48,17 +48,8 @@ class ShowPollAction extends ShownoticeAction { protected $poll = null; - /** - * For initializing members of the class. - * - * @param array $argarray misc. arguments - * - * @return boolean true - */ - function prepare($argarray) + function getNotice() { - OwnerDesignAction::prepare($argarray); - $this->id = $this->trimmed('id'); $this->poll = Poll::staticGet('id', $this->id); @@ -68,43 +59,15 @@ class ShowPollAction extends ShownoticeAction throw new ClientException(_m('No such poll.'), 404); } - $this->notice = $this->poll->getNotice(); + $notice = $this->poll->getNotice(); - if (empty($this->notice)) { + if (empty($notice)) { // Did we used to have it, and it got deleted? // TRANS: Client exception thrown trying to view a non-existing poll notice. throw new ClientException(_m('No such poll notice.'), 404); } - $cur = common_current_user(); - - if (!empty($cur)) { - $curProfile = $cur->getProfile(); - } else { - $curProfile = null; - } - - if (!$this->notice->inScope($curProfile)) { - throw new ClientException(_('Not available.'), 403); - } - - $this->user = User::staticGet('id', $this->poll->profile_id); - - if (empty($this->user)) { - // TRANS: Client exception thrown trying to view a poll of a non-existing user. - throw new ClientException(_m('No such user.'), 404); - } - - $this->profile = $this->user->getProfile(); - - if (empty($this->profile)) { - // TRANS: Server exception thrown trying to view a poll for a user for which the profile could not be loaded. - throw new ServerException(_m('User without a profile.')); - } - - $this->avatar = $this->profile->getAvatar(AVATAR_PROFILE_SIZE); - - return true; + return $notice; } /** From 1c63ae29feb8f30c43b6f927424a7cf84ad5c788 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 17:00:00 -0700 Subject: [PATCH 88/90] typo fix in format string --- plugins/Bookmark/showbookmark.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/Bookmark/showbookmark.php b/plugins/Bookmark/showbookmark.php index 27f24876a7..40005c087f 100644 --- a/plugins/Bookmark/showbookmark.php +++ b/plugins/Bookmark/showbookmark.php @@ -82,7 +82,7 @@ class ShowbookmarkAction extends ShownoticeAction { // TRANS: Title for bookmark. // TRANS: %1$s is a user nickname, %2$s is a bookmark title. - return sprintf(_('%1s$\'s bookmark for "%2$s"'), + return sprintf(_('%1$s\'s bookmark for "%2$s"'), $this->user->nickname, $this->bookmark->title); } From 2e56e114828babe3502d05165663ed278c4677a6 Mon Sep 17 00:00:00 2001 From: Brion Vibber Date: Tue, 29 Mar 2011 17:01:53 -0700 Subject: [PATCH 89/90] Note explicitly that you can pass null to Notice::inScope() --- classes/Notice.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/Notice.php b/classes/Notice.php index 86954e3678..069d7d64ff 100644 --- a/classes/Notice.php +++ b/classes/Notice.php @@ -2088,7 +2088,7 @@ class Notice extends Memcached_DataObject * Users on the site who are not mentioned in the notice will not be able to see the * notice. * - * @param Profile $profile The profile to check + * @param Profile $profile The profile to check; pass null to check for public/unauthenticated users. * * @return boolean whether the profile is in the notice's scope */ From f213ac33db05c5595a7bc56d3d09b97f6fadd530 Mon Sep 17 00:00:00 2001 From: Evan Prodromou Date: Wed, 30 Mar 2011 05:10:07 -0400 Subject: [PATCH 90/90] fix call-by-reference deprecation warning in microappplugin.php --- lib/microappplugin.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/microappplugin.php b/lib/microappplugin.php index ab6d565157..0266f5184c 100644 --- a/lib/microappplugin.php +++ b/lib/microappplugin.php @@ -512,7 +512,7 @@ abstract class MicroAppPlugin extends Plugin function onEndActivityObjectOutputJson(ActivityObject $obj, array &$out) { if (in_array($obj->type, $this->types())) { - $this->activityObjectOutputJson($obj, &$out); + $this->activityObjectOutputJson($obj, $out); } return true; }