Merge branch '0.9.x' into activityexport

This commit is contained in:
Evan Prodromou 2010-09-15 23:31:20 -04:00
commit 670ad53215
115 changed files with 18336 additions and 19193 deletions

View File

@ -840,6 +840,9 @@ class Action extends HTMLOutputter // lawsuit
$this->elementStart('dd', null);
if (common_config('site', 'broughtby')) {
// TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
// TRANS: Text between [] is a link description, text between () is the link itself.
// TRANS: Make sure there is no whitespace between "]" and "(".
// TRANS: "%%site.broughtby%%" is the value of the variable site.broughtby
$instr = _('**%%site.name%%** is a microblogging service brought to you by [%%site.broughtby%%](%%site.broughtbyurl%%).');
} else {
// TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
@ -847,6 +850,9 @@ class Action extends HTMLOutputter // lawsuit
}
$instr .= ' ';
// TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
// TRANS: Make sure there is no whitespace between "]" and "(".
// TRANS: Text between [] is a link description, text between () is the link itself.
// TRANS: %s is the version of StatusNet that is being used.
$instr .= sprintf(_('It runs the [StatusNet](http://status.net/) microblogging software, version %s, available under the [GNU Affero General Public License](http://www.fsf.org/licensing/licenses/agpl-3.0.html).'), STATUSNET_VERSION);
$output = common_markup_to_html($instr);
$this->raw($output);
@ -893,7 +899,8 @@ class Action extends HTMLOutputter // lawsuit
'width' => '80',
'height' => '15'));
$this->text(' ');
// TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
// TRANS: license message in footer.
// TRANS: %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
$notice = _('All %1$s content and data are available under the %2$s license.');
$link = "<a class=\"license\" rel=\"external license\" href=\"" .
htmlspecialchars(common_config('license', 'url')) .
@ -1304,6 +1311,7 @@ class Action extends HTMLOutputter // lawsuit
// CSRF protection
$token = $this->trimmed('token');
if (empty($token) || $token != common_session_token()) {
// TRANS: Client error text when there is a problem with the session token.
$this->clientError(_('There was a problem with your session token.'));
}
}

View File

@ -397,4 +397,3 @@ class Activity
return $d->format('c');
}
}

View File

@ -77,7 +77,6 @@ class ActivityContext
$attention = array();
for ($i = 0; $i < $links->length; $i++) {
$link = $links->item($i);
$linkRel = $link->getAttribute(ActivityUtils::REL);

View File

@ -168,7 +168,6 @@ class ActivityObject
ActivityObject::MEDIA_DESCRIPTION,
Activity::MEDIA
);
}
}
@ -418,7 +417,6 @@ class ActivityObject
);
foreach ($sizes as $size) {
$alink = null;
$avatar = $profile->getAvatar($size);

View File

@ -46,7 +46,6 @@ if (!defined('STATUSNET')) {
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
* @link http://status.net/
*/
class ActivityUtils
{
const ATOM = 'http://www.w3.org/2005/Atom';
@ -66,7 +65,6 @@ class ActivityUtils
*
* @return string related link, if any
*/
static function getPermalink($element)
{
return self::getLink($element, 'alternate', 'text/html');
@ -79,7 +77,6 @@ class ActivityUtils
*
* @return string related link, if any
*/
static function getLink(DOMNode $element, $rel, $type=null)
{
$els = $element->childNodes;
@ -135,7 +132,6 @@ class ActivityUtils
*
* @return DOMElement found element or null
*/
static function child(DOMNode $element, $tag, $namespace=self::ATOM)
{
$els = $element->childNodes;
@ -160,7 +156,6 @@ class ActivityUtils
*
* @return string content of the child
*/
static function childContent(DOMNode $element, $tag, $namespace=self::ATOM)
{
$el = self::child($element, $tag, $namespace);
@ -194,7 +189,6 @@ class ActivityUtils
* @todo handle embedded XML mime types
* @todo handle base64-encoded non-XML and non-text mime types
*/
static function getContent($element)
{
return self::childHtmlContent($element, self::CONTENT, self::ATOM);
@ -205,6 +199,7 @@ class ActivityUtils
$src = $el->getAttribute(self::SRC);
if (!empty($src)) {
// TRANS: Client exception thrown when there is no source attribute.
throw new ClientException(_("Can't handle remote content yet."));
}
@ -241,10 +236,12 @@ class ActivityUtils
return trim($text);
} else if (in_array($type, array('text/xml', 'application/xml')) ||
preg_match('#(+|/)xml$#', $type)) {
// TRANS: Client exception thrown when there embedded XML content is found that cannot be processed yet.
throw new ClientException(_("Can't handle embedded XML content yet."));
} else if (strncasecmp($type, 'text/', 5)) {
return $el->textContent;
} else {
// TRANS: Client exception thrown when base64 encoded content is found that cannot be processed yet.
throw new ClientException(_("Can't handle embedded Base64 content yet."));
}
}

View File

@ -42,7 +42,6 @@ if (!defined('STATUSNET')) {
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
* @link http://status.net/
*/
class ActivityVerb
{
const POST = 'http://activitystrea.ms/schema/1.0/post';

View File

@ -45,7 +45,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
*
* @see Form
*/
class AdminForm extends Form
{
/**
@ -59,7 +58,6 @@ class AdminForm extends Form
*
* @return void
*/
function input($setting, $title, $instructions, $section='site')
{
$this->out->input($setting, $title, $this->value($setting, $section), $instructions);
@ -73,7 +71,6 @@ class AdminForm extends Form
*
* @return string param value if posted, or current config value
*/
function value($setting, $main='site')
{
$value = $this->out->trimmed($setting);

View File

@ -44,7 +44,6 @@ if (!defined('STATUSNET')) {
*
* @todo Find some commonalities with SettingsAction and combine
*/
class AdminPanelAction extends Action
{
var $success = true;
@ -61,7 +60,6 @@ class AdminPanelAction extends Action
*
* @return boolean success flag
*/
function prepare($args)
{
parent::prepare($args);
@ -124,7 +122,6 @@ class AdminPanelAction extends Action
*
* @return void
*/
function handle($args)
{
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
@ -155,7 +152,6 @@ class AdminPanelAction extends Action
* @return void
* @see AdminPanelNav
*/
function showLocalNav()
{
$nav = new AdminPanelNav($this);
@ -169,7 +165,6 @@ class AdminPanelAction extends Action
*
* @return void.
*/
function showContent()
{
$this->showForm();
@ -199,7 +194,6 @@ class AdminPanelAction extends Action
*
* @return void
*/
function showPageNotice()
{
if ($this->msg) {
@ -222,7 +216,6 @@ class AdminPanelAction extends Action
*
* @return void
*/
function showForm()
{
// TRANS: Client error message.
@ -239,7 +232,6 @@ class AdminPanelAction extends Action
*
* @return void
*/
function getInstructions()
{
return '';
@ -252,7 +244,6 @@ class AdminPanelAction extends Action
*
* @return void
*/
function saveSettings()
{
// TRANS: Client error message
@ -267,7 +258,6 @@ class AdminPanelAction extends Action
*
* @return mixed $result false if something didn't work
*/
function deleteSetting($section, $setting)
{
$config = new Config();
@ -314,7 +304,6 @@ class AdminPanelAction extends Action
*
* @see Widget
*/
class AdminPanelNav extends Widget
{
var $action = null;
@ -324,7 +313,6 @@ class AdminPanelNav extends Widget
*
* @param Action $action current action, used for output
*/
function __construct($action=null)
{
parent::__construct($action);
@ -336,7 +324,6 @@ class AdminPanelNav extends Widget
*
* @return void
*/
function show()
{
$action_name = $this->action->trimmed('action');
@ -413,5 +400,4 @@ class AdminPanelNav extends Widget
}
$this->action->elementEnd('ul');
}
}

View File

@ -112,7 +112,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 ApiAction extends Action
{
const READ_ONLY = 1;
@ -139,7 +138,6 @@ class ApiAction extends Action
*
* @return boolean false if user doesn't exist
*/
function prepare($args)
{
StatusNet::setApi(true); // reduce exception reports to aid in debugging
@ -172,7 +170,6 @@ class ApiAction extends Action
*
* @return void
*/
function handle($args)
{
header('Access-Control-Allow-Origin: *');
@ -862,7 +859,6 @@ class ApiAction extends Action
}
$this->endDocument('atom');
}
function showRssGroups($group, $title, $link, $subtitle)
@ -1015,7 +1011,6 @@ class ApiAction extends Action
function showAtomGroups($group, $title, $id, $link, $subtitle=null, $selfuri=null)
{
$this->initDocument('atom');
$this->element('title', null, common_xml_safe_str($title));
@ -1046,7 +1041,6 @@ class ApiAction extends Action
function showJsonTimeline($notice)
{
$this->initDocument('json');
$statuses = array();
@ -1072,7 +1066,6 @@ class ApiAction extends Action
function showJsonGroups($group)
{
$this->initDocument('json');
$groups = array();
@ -1118,7 +1111,6 @@ class ApiAction extends Action
function showTwitterXmlUsers($user)
{
$this->initDocument('xml');
$this->elementStart('users', array('type' => 'array',
'xmlns:statusnet' => 'http://status.net/schema/api/1/'));
@ -1141,7 +1133,6 @@ class ApiAction extends Action
function showJsonUsers($user)
{
$this->initDocument('json');
$users = array();
@ -1226,7 +1217,6 @@ class ApiAction extends Action
$this->endXML();
break;
case 'json':
// Check for JSONP callback
if (isset($this->callback)) {
print ')';
@ -1483,7 +1473,6 @@ class ApiAction extends Action
*/
function arg($key, $def=null)
{
// XXX: Do even more input validation/scrubbing?
if (array_key_exists($key, $this->args)) {
@ -1550,5 +1539,4 @@ class ApiAction extends Action
return $uri;
}
}

View File

@ -68,7 +68,6 @@ require_once INSTALLDIR . '/lib/apioauth.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 ApiAuthAction extends ApiAction
{
var $auth_user_nickname = null;
@ -83,7 +82,6 @@ class ApiAuthAction extends ApiAction
* @return boolean success flag
*
*/
function prepare($args)
{
parent::prepare($args);
@ -126,7 +124,6 @@ class ApiAuthAction extends ApiAction
*
* @return mixed the OAuthRequest or false
*/
function getOAuthRequest()
{
ApiOauthAction::cleanRequest();
@ -154,7 +151,6 @@ class ApiAuthAction extends ApiAction
*
* @return nothing
*/
function checkOAuthRequest($request)
{
$datastore = new ApiStatusNetOAuthDataStore();
@ -164,7 +160,6 @@ class ApiAuthAction extends ApiAction
$server->add_signature_method($hmac_method);
try {
$server->verify_request($request);
$consumer = $request->get_parameter('oauth_consumer_key');
@ -176,7 +171,8 @@ class ApiAuthAction extends ApiAction
common_log(LOG_WARNING,
'Couldn\'t find the OAuth app for consumer key: ' .
$consumer);
throw new OAuthException('No application for that consumer key.');
// TRANS: OAuth exception thrown when no application is found for a given consumer key.
throw new OAuthException(_('No application for that consumer key.'));
}
// set the source attr
@ -186,19 +182,15 @@ class ApiAuthAction extends ApiAction
$appUser = Oauth_application_user::staticGet('token', $access_token);
if (!empty($appUser)) {
// If access_type == 0 we have either a request token
// or a bad / revoked access token
if ($appUser->access_type != 0) {
// Set the access level for the api call
$this->access = ($appUser->access_type & Oauth_application::$writeAccess)
? self::READ_WRITE : self::READ_ONLY;
// Set the auth user
if (Event::handle('StartSetApiUser', array(&$user))) {
$this->auth_user = User::staticGet('id', $appUser->profile_id);
Event::handle('EndSetApiUser', array($user));
@ -216,13 +208,13 @@ class ApiAuthAction extends ApiAction
'read-write' : 'read-only'
));
} else {
throw new OAuthException('Bad access token.');
// TRANS: OAuth exception given when an incorrect access token was given for a user.
throw new OAuthException(_('Bad access token.'));
}
} else {
// Also should not happen
throw new OAuthException('No user for that token.');
// TRANS: OAuth exception given when no user was found for a given token (no token was found).
throw new OAuthException(_('No user for that token.'));
}
} catch (OAuthException $e) {
@ -237,7 +229,6 @@ class ApiAuthAction extends ApiAction
*
* @return boolean true
*/
function requiresAuth()
{
return true;
@ -249,7 +240,6 @@ class ApiAuthAction extends ApiAction
*
* @return boolean true or false
*/
function checkBasicAuthUser($required = true)
{
$this->basicAuthProcessHeader();
@ -264,8 +254,8 @@ class ApiAuthAction extends ApiAction
header('WWW-Authenticate: Basic realm="' . $realm . '"');
// show error if the user clicks 'cancel'
$this->clientError("Could not authenticate you.", 401, $this->format);
// TRANS: Client error thrown when authentication fails becaus a user clicked "Cancel".
$this->clientError(_("Could not authenticate you."), 401, $this->format);
exit;
} else {
@ -283,13 +273,11 @@ class ApiAuthAction extends ApiAction
}
// By default, basic auth users have rw access
$this->access = self::READ_WRITE;
if (empty($this->auth_user) && ($required || isset($_SERVER['PHP_AUTH_USER']))) {
// basic authentication failed
list($proxy, $ip) = common_client_ip();
$msg = sprintf( 'Failed API auth attempt, nickname = %1$s, ' .
@ -298,7 +286,8 @@ class ApiAuthAction extends ApiAction
$proxy,
$ip);
common_log(LOG_WARNING, $msg);
$this->clientError("Could not authenticate you.", 401, $this->format);
// TRANS: Client error thrown when authentication fails.
$this->clientError(_("Could not authenticate you."), 401, $this->format);
exit;
}
}
@ -310,7 +299,6 @@ class ApiAuthAction extends ApiAction
*
* @return void
*/
function basicAuthProcessHeader()
{
$authHeaders = array('AUTHORIZATION',
@ -332,7 +320,6 @@ class ApiAuthAction extends ApiAction
// Decode the HTTP_AUTHORIZATION header on php-cgi server self
// on fcgid server the header name is AUTHORIZATION
$auth_hash = base64_decode(substr($authorization_header, 6));
list($this->auth_user_nickname,
$this->auth_user_password) = explode(':', $auth_hash);

View File

@ -30,7 +30,7 @@
* @author Evan Prodromou <evan@status.net>
* @author mEDI <medi@milaro.net>
* @author Sarven Capadisli <csarven@status.net>
* @author Zach Copley <zach@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
* @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
@ -60,7 +60,6 @@ require_once INSTALLDIR.'/lib/apiauth.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 ApiBareAuthAction extends ApiAuthAction
{
@ -72,7 +71,6 @@ class ApiBareAuthAction extends ApiAuthAction
* @return boolean success flag
*
*/
function prepare($args)
{
parent::prepare($args);
@ -84,18 +82,15 @@ class ApiBareAuthAction extends ApiAuthAction
*
* @return boolean true or false
*/
function requiresAuth()
{
// If the site is "private", all API methods except statusnet/config
// need authentication
if (common_config('site', 'private')) {
return true;
}
// check whether a user has been specified somehow
$id = $this->arg('id');
$user_id = $this->arg('user_id');
$screen_name = $this->arg('screen_name');
@ -106,5 +101,4 @@ class ApiBareAuthAction extends ApiAuthAction
return false;
}
}

View File

@ -44,7 +44,6 @@ require_once INSTALLDIR . '/lib/apioauthstore.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 ApiOauthAction extends Action
{
/**
@ -52,7 +51,6 @@ class ApiOauthAction extends Action
*
* @return boolean false
*/
function isReadOnly($args)
{
return false;
@ -73,7 +71,6 @@ class ApiOauthAction extends Action
*
* @return void
*/
function handle($args)
{
parent::handle($args);
@ -83,7 +80,6 @@ class ApiOauthAction extends Action
static function cleanRequest()
{
// kill evil effects of magical slashing
if (get_magic_quotes_gpc() == 1) {
$_POST = array_map('stripslashes', $_POST);
$_GET = array_map('stripslashes', $_GET);
@ -93,7 +89,6 @@ class ApiOauthAction extends Action
// XXX: should we strip anything else? Or alternatively
// only allow a known list of params?
unset($_GET['p']);
unset($_POST['p']);
}
@ -118,5 +113,4 @@ class ApiOauthAction extends Action
return ($url . '&' . $k . '=' . $v);
}
}
}

View File

@ -23,7 +23,6 @@ require_once INSTALLDIR . '/lib/oauthstore.php';
class ApiStatusNetOAuthDataStore extends StatusNetOAuthDataStore
{
function lookup_consumer($consumer_key)
{
$con = Consumer::staticGet('consumer_key', $consumer_key);
@ -39,7 +38,6 @@ class ApiStatusNetOAuthDataStore extends StatusNetOAuthDataStore
function getAppByRequestToken($token_key)
{
// Look up the full req tokenx
$req_token = $this->lookup_token(null,
'request',
$token_key);
@ -50,7 +48,6 @@ class ApiStatusNetOAuthDataStore extends StatusNetOAuthDataStore
}
// Look up the full Token
$token = new Token();
$token->tok = $req_token->key;
$result = $token->find(true);
@ -150,7 +147,6 @@ class ApiStatusNetOAuthDataStore extends StatusNetOAuthDataStore
}
// Okay, good
return new OAuthToken($at->tok, $at->secret);
}
@ -172,19 +168,18 @@ class ApiStatusNetOAuthDataStore extends StatusNetOAuthDataStore
*
* @return void
*/
public function revoke_token($token_key, $type = 0) {
$rt = new Token();
$rt->tok = $token_key;
$rt->type = $type;
$rt->state = 0;
if (!$rt->find(true)) {
throw new Exception('Tried to revoke unknown token');
// TRANS: Exception thrown when an attempt is made to revoke an unknown token.
throw new Exception(_('Tried to revoke unknown token.'));
}
if (!$rt->delete()) {
throw new Exception('Failed to delete revoked token');
// TRANS: Exception thrown when an attempt is made to remove a revoked token.
throw new Exception(_('Failed to delete revoked token.'));
}
}
}

View File

@ -29,7 +29,7 @@
* @author Evan Prodromou <evan@status.net>
* @author mEDI <medi@milaro.net>
* @author Sarven Capadisli <csarven@status.net>
* @author Zach Copley <zach@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
* @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
@ -58,26 +58,21 @@ require_once INSTALLDIR.'/lib/apiauth.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 ApiPrivateAuthAction extends ApiAuthAction
{
/**
* Does this API resource require authentication?
*
* @return boolean true or false
*/
function requiresAuth()
{
// If the site is "private", all API methods except statusnet/config
// need authentication
if (common_config('site', 'private')) {
return true;
}
return false;
}
}

View File

@ -43,13 +43,11 @@ require_once INSTALLDIR . '/lib/form.php';
* @link http://status.net/
*
*/
class ApplicationEditForm extends Form
{
/**
* group for user to join
*/
var $application = null;
/**
@ -58,7 +56,6 @@ class ApplicationEditForm extends Form
* @param Action $out output channel
* @param User_group $group group to join
*/
function __construct($out=null, $application=null)
{
parent::__construct($out);
@ -71,7 +68,6 @@ class ApplicationEditForm extends Form
*
* @return string ID of the form
*/
function id()
{
if ($this->application) {
@ -89,7 +85,6 @@ class ApplicationEditForm extends Form
*
* @return string the method to use for submitting
*/
function method()
{
$this->enctype = 'multipart/form-data';
@ -101,7 +96,6 @@ class ApplicationEditForm extends Form
*
* @return string of the form class
*/
function formClass()
{
return 'form_settings';
@ -112,7 +106,6 @@ class ApplicationEditForm extends Form
*
* @return string URL of the action
*/
function action()
{
$cur = common_current_user();
@ -130,7 +123,6 @@ class ApplicationEditForm extends Form
*
* @return void
*/
function formLegend()
{
// TRANS: Form legend.
@ -142,7 +134,6 @@ class ApplicationEditForm extends Form
*
* @return void
*/
function formData()
{
if ($this->application) {
@ -350,16 +341,15 @@ class ApplicationEditForm extends Form
*
* @return void
*/
function formActions()
{
// TRANS: Button label
// TRANS: Button label in the "Edit application" form.
$this->out->submit('cancel', _m('BUTTON','Cancel'), 'submit form_action-primary',
// TRANS: Submit button title
// TRANS: Submit button title.
'cancel', _('Cancel'));
// TRANS: Button label
// TRANS: Button label in the "Edit application" form.
$this->out->submit('save', _m('BUTTON','Save'), 'submit form_action-secondary',
// TRANS: Submit button title
// TRANS: Submit button title.
'save', _('Save'));
}
}

View File

@ -45,7 +45,6 @@ define('APPS_PER_PAGE', 20);
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
class ApplicationList extends Widget
{
/** Current application, application query */
@ -164,10 +163,8 @@ class ApplicationList extends Widget
}
/* Override this in subclasses. */
function showOwnerControls()
{
return;
}
}

View File

@ -64,6 +64,7 @@ class AttachmentNoticeSection extends NoticeSection
function title()
{
// TRANS: Title.
return _('Notices where this attachment appears');
}

View File

@ -45,6 +45,7 @@ class AttachmentTagCloudSection extends TagCloudSection
{
function title()
{
// TRANS: Title.
return _('Tags for this attachment');
}

View File

@ -831,7 +831,7 @@ class SubscriptionsCommand extends Command
$out=_('You are not subscribed to anyone.');
}else{
// TRANS: Text shown after requesting other users a user is subscribed to.
// TRANS: This message support plural forms. This message is followed by a
// TRANS: This message supports plural forms. This message is followed by a
// TRANS: hard coded space and a comma separated list of subscribed users.
$out = ngettext('You are subscribed to this person:',
'You are subscribed to these people:',
@ -858,7 +858,7 @@ class SubscribersCommand extends Command
$out=_('No one is subscribed to you.');
}else{
// TRANS: Text shown after requesting other users that are subscribed to a user (followers).
// TRANS: This message support plural forms. This message is followed by a
// TRANS: This message supports plural forms. This message is followed by a
// TRANS: hard coded space and a comma separated list of subscribing users.
$out = ngettext('This person is subscribed to you:',
'These people are subscribed to you:',
@ -885,7 +885,7 @@ class GroupsCommand extends Command
$out=_('You are not a member of any groups.');
}else{
// TRANS: Text shown after requesting groups a user is subscribed to.
// TRANS: This message support plural forms. This message is followed by a
// TRANS: This message supports plural forms. This message is followed by a
// TRANS: hard coded space and a comma separated list of subscribed groups.
$out = ngettext('You are a member of this group:',
'You are a member of these groups:',
@ -900,8 +900,8 @@ class HelpCommand extends Command
{
function handle($channel)
{
// TRANS: Help text for commands.
$channel->output($this->user,
// TRANS: Help text for commands.
_("Commands:\n".
"on - turn on notifications\n".
"off - turn off notifications\n".

View File

@ -19,15 +19,18 @@
/* XXX: break up into separate modules (HTTP, user, files) */
// Show a server error
/**
* Show a server error.
*/
function common_server_error($msg, $code=500)
{
$err = new ServerErrorAction($msg, $code);
$err->showPage();
}
// Show a user error
/**
* Show a user error.
*/
function common_user_error($msg, $code=400)
{
$err = new ClientErrorAction($msg, $code);
@ -37,7 +40,7 @@ function common_user_error($msg, $code=400)
/**
* This should only be used at setup; processes switching languages
* to send text to other users should use common_switch_locale().
*
*
* @param string $language Locale language code (optional; empty uses
* current user's preference or site default)
* @return mixed success
@ -61,10 +64,10 @@ function common_init_locale($language=null)
/**
* Initialize locale and charset settings and gettext with our message catalog,
* using the current user's language preference or the site default.
*
*
* This should generally only be run at framework initialization; code switching
* languages at runtime should call common_switch_language().
*
*
* @access private
*/
function common_init_language()
@ -157,7 +160,6 @@ function common_timezone()
function common_language()
{
// If there is a user logged in and they've set a language preference
// then return that one...
if (_have_config() && common_logged_in()) {
@ -189,8 +191,10 @@ function common_language()
// Finally, if none of the above worked, use the site's default...
return common_config('site', 'language');
}
// salted, hashed passwords are stored in the DB
/**
* Salted, hashed passwords are stored in the DB.
*/
function common_munge_password($password, $id)
{
if (is_object($id) || is_object($password)) {
@ -201,8 +205,9 @@ function common_munge_password($password, $id)
return md5($password . $id);
}
// check if a username exists and has matching password
/**
* Check if a username exists and has matching password.
*/
function common_check_user($nickname, $password)
{
// empty nickname always unacceptable
@ -229,7 +234,9 @@ function common_check_user($nickname, $password)
return $authenticatedUser;
}
// is the current user logged in?
/**
* Is the current user logged in?
*/
function common_logged_in()
{
return (!is_null(common_current_user()));
@ -275,12 +282,10 @@ function common_ensure_session()
// 3) null to clear
// Initialize to false; set to null if none found
$_cur = false;
function common_set_user($user)
{
global $_cur;
if (is_null($user) && common_have_session()) {
@ -366,7 +371,6 @@ function common_rememberme($user=null)
function common_remembered_user()
{
$user = null;
$packed = isset($_COOKIE[REMEMBERME]) ? $_COOKIE[REMEMBERME] : null;
@ -428,14 +432,17 @@ function common_remembered_user()
return $user;
}
// must be called with a valid user!
/**
* must be called with a valid user!
*/
function common_forgetme()
{
common_set_cookie(REMEMBERME, '', 0);
}
// who is the current user?
/**
* Who is the current user?
*/
function common_current_user()
{
global $_cur;
@ -471,10 +478,11 @@ function common_current_user()
return $_cur;
}
// Logins that are 'remembered' aren't 'real' -- they're subject to
// cookie-stealing. So, we don't let them do certain things. New reg,
// OpenID, and password logins _are_ real.
/**
* Logins that are 'remembered' aren't 'real' -- they're subject to
* cookie-stealing. So, we don't let them do certain things. New reg,
* OpenID, and password logins _are_ real.
*/
function common_real_login($real=true)
{
common_ensure_session();
@ -577,9 +585,7 @@ function common_find_mentions($text, $notice)
}
if (Event::handle('StartFindMentions', array($sender, $text, &$mentions))) {
// Get the context of the original notice, if any
$originalAuthor = null;
$originalNotice = null;
$originalMentions = array();
@ -615,7 +621,6 @@ function common_find_mentions($text, $notice)
$matches = array_merge($tmatches[1], $atmatches[1]);
foreach ($matches as $match) {
$nickname = common_canonical_nickname($match[0]);
// Try to get a profile for this nickname.
@ -623,19 +628,15 @@ function common_find_mentions($text, $notice)
// sender context.
if (!empty($originalAuthor) && $originalAuthor->nickname == $nickname) {
$mentioned = $originalAuthor;
} else if (!empty($originalMentions) &&
array_key_exists($nickname, $originalMentions)) {
$mentioned = $originalMentions[$nickname];
} else {
$mentioned = common_relative_profile($sender, $nickname);
}
if (!empty($mentioned)) {
$user = User::staticGet('id', $mentioned->id);
if ($user) {
@ -1104,30 +1105,26 @@ function common_date_string($dt)
// TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a minute ago');
} else if ($diff < 3300) {
// XXX: should support plural.
// TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d minutes ago'), round($diff/60));
return sprintf( ngettext('about one minute ago', 'about %d minutes ago'), round($diff/60));
} else if ($diff < 5400) {
// TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about an hour ago');
} else if ($diff < 22 * 3600) {
// XXX: should support plural.
// TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d hours ago'), round($diff/3600));
return sprintf( ngettext('about one hour ago', 'about %d hours ago'), round($diff/3600));
} else if ($diff < 37 * 3600) {
// TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a day ago');
} else if ($diff < 24 * 24 * 3600) {
// XXX: should support plural.
// TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d days ago'), round($diff/(24*3600)));
return sprintf( ngettext('about one day ago', 'about %d days ago'), round($diff/(24*3600)));
} else if ($diff < 46 * 24 * 3600) {
// TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a month ago');
} else if ($diff < 330 * 24 * 3600) {
// XXX: should support plural.
// TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d months ago'), round($diff/(30*24*3600)));
return sprintf( ngettext('about one month ago', 'about %d months ago'), round($diff/(30*24*3600)));
} else if ($diff < 480 * 24 * 3600) {
// TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a year ago');
@ -1230,8 +1227,9 @@ function common_broadcast_notice($notice, $remote=false)
// DO NOTHING!
}
// Stick the notice on the queue
/**
* Stick the notice on the queue.
*/
function common_enqueue_notice($notice)
{
static $localTransports = array('omb',
@ -1293,8 +1291,9 @@ function common_profile_url($nickname)
null, null, false);
}
// Should make up a reasonable root URL
/**
* Should make up a reasonable root URL
*/
function common_root_url($ssl=false)
{
$url = common_path('', $ssl, false);
@ -1305,9 +1304,10 @@ function common_root_url($ssl=false)
return $url;
}
// returns $bytes bytes of random data as a hexadecimal string
// "good" here is a goal and not a guarantee
/**
* returns $bytes bytes of random data as a hexadecimal string
* "good" here is a goal and not a guarantee
*/
function common_good_rand($bytes)
{
// XXX: use random.org...?
@ -1343,13 +1343,13 @@ function common_mtrand($bytes)
/**
* Record the given URL as the return destination for a future
* form submission, to be read by common_get_returnto().
*
*
* @param string $url
*
*
* @fixme as a session-global setting, this can allow multiple forms
* to conflict and overwrite each others' returnto destinations if
* the user has multiple tabs or windows open.
*
*
* Should refactor to index with a token or otherwise only pass the
* data along its intended path.
*/
@ -1362,13 +1362,13 @@ function common_set_returnto($url)
/**
* Fetch a return-destination URL previously recorded by
* common_set_returnto().
*
*
* @return mixed URL string or null
*
*
* @fixme as a session-global setting, this can allow multiple forms
* to conflict and overwrite each others' returnto destinations if
* the user has multiple tabs or windows open.
*
*
* Should refactor to index with a token or otherwise only pass the
* data along its intended path.
*/
@ -1495,7 +1495,7 @@ function common_valid_tag($tag)
* Determine if given domain or address literal is valid
* eg for use in JIDs and URLs. Does not check if the domain
* exists!
*
*
* @param string $domain
* @return boolean valid or not
*/
@ -1826,7 +1826,6 @@ function common_compatible_license($from, $to)
*/
function common_database_tablename($tablename)
{
if(common_config('db','quote_identifiers')) {
$tablename = '"'. $tablename .'"';
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -77,7 +77,6 @@ if (!defined('STATUSNET')) {
*
* @seeAlso UAPPlugin
*/
class AdsensePlugin extends UAPPlugin
{
public $adScript = 'http://pagead2.googlesyndication.com/pagead/show_ads.js';
@ -89,7 +88,6 @@ class AdsensePlugin extends UAPPlugin
// A little bit of chicanery so we avoid overwriting values that
// are passed in with the constructor
foreach (array('mediumRectangle', 'rectangle', 'leaderboard', 'wideSkyscraper', 'adScript', 'client') as $setting) {
$value = common_config('adsense', strtolower($setting));
if (!empty($value)) { // not found
@ -105,7 +103,6 @@ class AdsensePlugin extends UAPPlugin
*
* @return void
*/
protected function showMediumRectangle($action)
{
$this->showAdsenseCode($action, 300, 250, $this->mediumRectangle);
@ -118,7 +115,6 @@ class AdsensePlugin extends UAPPlugin
*
* @return void
*/
protected function showRectangle($action)
{
$this->showAdsenseCode($action, 180, 150, $this->rectangle);
@ -131,7 +127,6 @@ class AdsensePlugin extends UAPPlugin
*
* @return void
*/
protected function showWideSkyscraper($action)
{
$this->showAdsenseCode($action, 160, 600, $this->wideSkyscraper);
@ -144,7 +139,6 @@ class AdsensePlugin extends UAPPlugin
*
* @return void
*/
protected function showLeaderboard($action)
{
$this->showAdsenseCode($action, 728, 90, $this->leaderboard);
@ -160,7 +154,6 @@ class AdsensePlugin extends UAPPlugin
*
* @return void
*/
protected function showAdsenseCode($action, $width, $height, $slot)
{
$code = 'google_ad_client = "'.$this->client.'"; ';
@ -198,11 +191,11 @@ class AdsensePlugin extends UAPPlugin
function onEndAdminPanelNav($menu) {
if (AdminPanelAction::canAdmin('adsense')) {
// TRANS: Menu item title/tooltip
$menu_title = _('Adsense configuration');
$menu_title = _m('AdSense configuration');
// TRANS: Menu item for site administration
$menu->out->menuItem(common_local_url('adsenseadminpanel'), _('Adsense'),
$menu->out->menuItem(common_local_url('adsenseadminpanel'), _m('AdSense'),
$menu_title, $action_name == 'adsenseadminpanel', 'nav_adsense_admin_panel');
}
return true;
}
}
}

View File

@ -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 AdsenseadminpanelAction extends AdminPanelAction
{
/**
@ -48,10 +47,9 @@ class AdsenseadminpanelAction extends AdminPanelAction
*
* @return string page title
*/
function title()
{
return _('Adsense');
return _m('TITLE', 'AdSense');
}
/**
@ -59,10 +57,9 @@ class AdsenseadminpanelAction extends AdminPanelAction
*
* @return string instructions
*/
function getInstructions()
{
return _('Adsense settings for this StatusNet site');
return _m('AdSense settings for this StatusNet site');
}
/**
@ -70,7 +67,6 @@ class AdsenseadminpanelAction extends AdminPanelAction
*
* @return void
*/
function showForm()
{
$form = new AdsenseAdminPanelForm($this);
@ -83,7 +79,6 @@ class AdsenseadminpanelAction extends AdminPanelAction
*
* @return void
*/
function saveSettings()
{
static $settings = array('adsense' => array('adScript', 'client', 'mediumRectangle', 'rectangle', 'leaderboard', 'wideSkyscraper'));
@ -97,11 +92,9 @@ class AdsenseadminpanelAction extends AdminPanelAction
}
// This throws an exception on validation errors
$this->validate($values);
// assert(all values are valid);
$config = new Config();
$config->query('BEGIN');
@ -125,7 +118,6 @@ class AdsenseadminpanelAction extends AdminPanelAction
/**
* Form for the adsense admin panel
*/
class AdsenseAdminPanelForm extends AdminForm
{
/**
@ -133,7 +125,6 @@ class AdsenseAdminPanelForm extends AdminForm
*
* @return int ID of the form
*/
function id()
{
return 'form_adsense_admin_panel';
@ -144,7 +135,6 @@ class AdsenseAdminPanelForm extends AdminForm
*
* @return string class of the form
*/
function formClass()
{
return 'form_adsense';
@ -155,7 +145,6 @@ class AdsenseAdminPanelForm extends AdminForm
*
* @return string URL of the action
*/
function action()
{
return common_local_url('adsenseadminpanel');
@ -166,45 +155,44 @@ class AdsenseAdminPanelForm extends AdminForm
*
* @return void
*/
function formData()
{
$this->out->elementStart('fieldset', array('id' => 'adsense_admin'));
$this->out->elementStart('ul', 'form_data');
$this->li();
$this->input('client',
_('Client ID'),
_('Google client ID'),
_m('Client ID'),
_m('Google client ID'),
'adsense');
$this->unli();
$this->li();
$this->input('adScript',
_('Ad Script URL'),
_('Script URL (advanced)'),
_m('Ad script URL'),
_m('Script URL (advanced)'),
'adsense');
$this->unli();
$this->li();
$this->input('mediumRectangle',
_('Medium rectangle'),
_('Medium rectangle slot code'),
_m('Medium rectangle'),
_m('Medium rectangle slot code'),
'adsense');
$this->unli();
$this->li();
$this->input('rectangle',
_('Rectangle'),
_('Rectangle slot code'),
_m('Rectangle'),
_m('Rectangle slot code'),
'adsense');
$this->unli();
$this->li();
$this->input('leaderboard',
_('Leaderboard'),
_('Leaderboard slot code'),
_m('Leaderboard'),
_m('Leaderboard slot code'),
'adsense');
$this->unli();
$this->li();
$this->input('wideSkyscraper',
_('Skyscraper'),
_('Wide skyscraper slot code'),
_m('Skyscraper'),
_m('Wide skyscraper slot code'),
'adsense');
$this->unli();
$this->out->elementEnd('ul');
@ -215,9 +203,8 @@ class AdsenseAdminPanelForm extends AdminForm
*
* @return void
*/
function formActions()
{
$this->out->submit('submit', _('Save'), 'submit', null, _('Save AdSense settings'));
$this->out->submit('submit', _m('Save'), 'submit', null, _m('Save AdSense settings'));
}
}

View File

@ -0,0 +1,92 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#. TRANS: Menu item title/tooltip
#: AdsensePlugin.php:194
msgid "AdSense configuration"
msgstr ""
#. TRANS: Menu item for site administration
#: AdsensePlugin.php:196
msgid "AdSense"
msgstr ""
#: adsenseadminpanel.php:52
msgctxt "TITLE"
msgid "AdSense"
msgstr ""
#: adsenseadminpanel.php:62
msgid "AdSense settings for this StatusNet site"
msgstr ""
#: adsenseadminpanel.php:164
msgid "Client ID"
msgstr ""
#: adsenseadminpanel.php:165
msgid "Google client ID"
msgstr ""
#: adsenseadminpanel.php:170
msgid "Ad script URL"
msgstr ""
#: adsenseadminpanel.php:171
msgid "Script URL (advanced)"
msgstr ""
#: adsenseadminpanel.php:176
msgid "Medium rectangle"
msgstr ""
#: adsenseadminpanel.php:177
msgid "Medium rectangle slot code"
msgstr ""
#: adsenseadminpanel.php:182
msgid "Rectangle"
msgstr ""
#: adsenseadminpanel.php:183
msgid "Rectangle slot code"
msgstr ""
#: adsenseadminpanel.php:188
msgid "Leaderboard"
msgstr ""
#: adsenseadminpanel.php:189
msgid "Leaderboard slot code"
msgstr ""
#: adsenseadminpanel.php:194
msgid "Skyscraper"
msgstr ""
#: adsenseadminpanel.php:195
msgid "Wide skyscraper slot code"
msgstr ""
#: adsenseadminpanel.php:208
msgid "Save"
msgstr ""
#: adsenseadminpanel.php:208
msgid "Save AdSense settings"
msgstr ""

View File

@ -41,7 +41,7 @@ class AutoSandboxPlugin extends Plugin
var $contact;
var $debug;
function onInitializePlugin()
function onInitializePlugin()
{
if(!isset($this->debug))
{
@ -53,7 +53,7 @@ class AutoSandboxPlugin extends Plugin
if (!empty($default)) {
$this->contact = $default;
}
}
}
}
function onPluginVersion(&$versions)
@ -69,16 +69,16 @@ class AutoSandboxPlugin extends Plugin
function onStartRegistrationFormData($action)
{
$instr = 'Note you will initially be "sandboxed" so your posts will not appear in the public timeline.';
$instr = _m('Note you will initially be "sandboxed" so your posts will not appear in the public timeline.');
if (isset($this->contact)) {
$contactuser = User::staticGet('nickname', $this->contact);
if (!empty($contactuser)) {
$contactlink = "@<a href=\"$contactuser->uri\">$contactuser->nickname</a>";
$instr = $instr . " Send a message to $contactlink to speed up the unsandboxing process.";
$instr = _m("Note you will initially be \"sandboxed\" so your posts will not appear in the public timeline. ".
'Send a message to $contactlink to speed up the unsandboxing process.');
}
}
}
$output = common_markup_to_html($instr);
$action->elementStart('div', 'instructions');

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -19,3 +19,16 @@ msgstr ""
#: AutoSandboxPlugin.php:66
msgid "Automatically sandboxes newly registered members."
msgstr ""
#: AutoSandboxPlugin.php:72
msgid ""
"Note you will initially be \"sandboxed\" so your posts will not appear in "
"the public timeline."
msgstr ""
#: AutoSandboxPlugin.php:78
msgid ""
"Note you will initially be \"sandboxed\" so your posts will not appear in "
"the public timeline. Send a message to $contactlink to speed up the "
"unsandboxing process."
msgstr ""

View File

@ -80,6 +80,4 @@ class AutocompletePlugin extends Plugin
_m('The autocomplete plugin allows users to autocomplete screen names in @ replies. When an "@" is typed into the notice text area, an autocomplete box is displayed populated with the user\'s friend\' screen names.'));
return true;
}
}
?>

View File

@ -43,7 +43,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 AutocompleteAction extends Action
{
private $result;

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: AutocompletePlugin.php:79
#: AutocompletePlugin.php:80
msgid ""
"The autocomplete plugin allows users to autocomplete screen names in @ "
"replies. When an \"@\" is typed into the notice text area, an autocomplete "

View File

@ -40,7 +40,7 @@ class BitlyUrlPlugin extends UrlShortenerPlugin
function onInitializePlugin(){
parent::onInitializePlugin();
if(!isset($this->serviceUrl)){
throw new Exception("must specify a serviceUrl");
throw new Exception(_m("You must specify a serviceUrl."));
}
}
@ -63,4 +63,3 @@ class BitlyUrlPlugin extends UrlShortenerPlugin
return true;
}
}

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,6 +16,10 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: BitlyUrlPlugin.php:43
msgid "You must specify a serviceUrl."
msgstr ""
#: BitlyUrlPlugin.php:60
#, php-format
msgid "Uses <a href=\"http://%1$s/\">%1$s</a> URL-shortener service."

View File

@ -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 BlacklistPlugin extends Plugin
{
const VERSION = STATUSNET_VERSION;
@ -76,13 +75,11 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook value
*/
function onCheckSchema()
{
$schema = Schema::get();
// For storing blacklist patterns for nicknames
$schema->ensureTable('nickname_blacklist',
array(new ColumnDef('pattern',
'varchar',
@ -118,7 +115,6 @@ class BlacklistPlugin extends Plugin
*
* @return array configuration values
*/
function _configArray($section, $setting)
{
$config = common_config($section, $setting);
@ -143,14 +139,13 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook value
*/
function onStartRegistrationTry($action)
{
$homepage = strtolower($action->trimmed('homepage'));
if (!empty($homepage)) {
if (!$this->_checkUrl($homepage)) {
$msg = sprintf(_m("You may not register with homepage '%s'"),
$msg = sprintf(_m("You may not register with homepage '%s'."),
$homepage);
throw new ClientException($msg);
}
@ -160,7 +155,7 @@ class BlacklistPlugin extends Plugin
if (!empty($nickname)) {
if (!$this->_checkNickname($nickname)) {
$msg = sprintf(_m("You may not register with nickname '%s'"),
$msg = sprintf(_m("You may not register with nickname '%s'."),
$nickname);
throw new ClientException($msg);
}
@ -178,14 +173,13 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook value
*/
function onStartProfileSaveForm($action)
{
$homepage = strtolower($action->trimmed('homepage'));
if (!empty($homepage)) {
if (!$this->_checkUrl($homepage)) {
$msg = sprintf(_m("You may not use homepage '%s'"),
$msg = sprintf(_m("You may not use homepage '%s'."),
$homepage);
throw new ClientException($msg);
}
@ -195,7 +189,7 @@ class BlacklistPlugin extends Plugin
if (!empty($nickname)) {
if (!$this->_checkNickname($nickname)) {
$msg = sprintf(_m("You may not use nickname '%s'"),
$msg = sprintf(_m("You may not use nickname '%s'."),
$nickname);
throw new ClientException($msg);
}
@ -213,7 +207,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook value
*/
function onStartNoticeSave(&$notice)
{
common_replace_urls_callback($notice->content,
@ -230,7 +223,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook value
*/
function checkNoticeUrl($url)
{
// It comes in special'd, so we unspecial it
@ -239,7 +231,7 @@ class BlacklistPlugin extends Plugin
$url = htmlspecialchars_decode($url);
if (!$this->_checkUrl($url)) {
$msg = sprintf(_m("You may not use url '%s' in notices"),
$msg = sprintf(_m("You may not use UTL \"%s\" in notices."),
$url);
throw new ClientException($msg);
}
@ -256,7 +248,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean true means it's OK, false means it's bad
*/
private function _checkUrl($url)
{
$patterns = $this->_getUrlPatterns();
@ -279,7 +270,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean true means it's OK, false means it's bad
*/
private function _checkNickname($nickname)
{
$patterns = $this->_getNicknamePatterns();
@ -300,7 +290,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook return
*/
function onRouterInitialized($m)
{
$m->connect('admin/blacklist', array('action' => 'blacklistadminpanel'));
@ -314,7 +303,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook return
*/
function onAutoload($cls)
{
switch (strtolower($cls))
@ -339,7 +327,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook value
*/
function onPluginVersion(&$versions)
{
$versions[] = array('name' => 'Blacklist',
@ -348,7 +335,7 @@ class BlacklistPlugin extends Plugin
'homepage' =>
'http://status.net/wiki/Plugin:Blacklist',
'description' =>
_m('Keep a blacklist of forbidden nickname '.
_m('Keeps a blacklist of forbidden nickname '.
'and URL patterns.'));
return true;
}
@ -379,7 +366,6 @@ class BlacklistPlugin extends Plugin
*
* @return boolean hook value
*/
function onEndAdminPanelNav($nav)
{
if (AdminPanelAction::canAdmin('blacklist')) {
@ -387,8 +373,8 @@ class BlacklistPlugin extends Plugin
$action_name = $nav->action->trimmed('action');
$nav->out->menuItem(common_local_url('blacklistadminpanel'),
_('Blacklist'),
_('Blacklist configuration'),
_m('Blacklist'),
_m('Blacklist configuration'),
$action_name == 'blacklistadminpanel',
'nav_blacklist_admin_panel');
}
@ -414,7 +400,7 @@ class BlacklistPlugin extends Plugin
$action->elementStart('li');
$this->checkboxAndText($action,
'blacklistnickname',
_('Add this nickname pattern to blacklist'),
_m('Add this nickname pattern to blacklist'),
'blacklistnicknamepattern',
$this->patternizeNickname($user->nickname));
$action->elementEnd('li');
@ -423,7 +409,7 @@ class BlacklistPlugin extends Plugin
$action->elementStart('li');
$this->checkboxAndText($action,
'blacklisthomepage',
_('Add this homepage pattern to blacklist'),
_m('Add this homepage pattern to blacklist'),
'blacklisthomepagepattern',
$this->patternizeHomepage($profile->homepage));
$action->elementEnd('li');

View File

@ -44,7 +44,6 @@ require_once INSTALLDIR . '/classes/Memcached_DataObject.php';
*
* @see DB_DataObject
*/
class Homepage_blacklist extends Memcached_DataObject
{
public $__table = 'homepage_blacklist'; // table name
@ -62,7 +61,6 @@ class Homepage_blacklist extends Memcached_DataObject
* @return Homepage_blacklist object found, or null for no hits
*
*/
function staticGet($k, $v=null)
{
return Memcached_DataObject::staticGet('Homepage_blacklist', $k, $v);
@ -76,7 +74,6 @@ class Homepage_blacklist extends Memcached_DataObject
*
* @return array array of column definitions
*/
function table()
{
return array('pattern' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
@ -91,7 +88,6 @@ class Homepage_blacklist extends Memcached_DataObject
*
* @return array key definitions
*/
function keys()
{
return array_keys($this->keyTypes());
@ -105,7 +101,6 @@ class Homepage_blacklist extends Memcached_DataObject
*
* @return array key definitions
*/
function keyTypes()
{
return array('pattern' => 'K');
@ -116,7 +111,6 @@ class Homepage_blacklist extends Memcached_DataObject
*
* @return array string patterns to check
*/
static function getPatterns()
{
$patterns = self::cacheGet('homepage_blacklist:patterns');
@ -144,17 +138,14 @@ class Homepage_blacklist extends Memcached_DataObject
*
* @return array of patterns to check
*/
static function saveNew($newPatterns)
{
$oldPatterns = self::getPatterns();
// Delete stuff that's old that not in new
$toDelete = array_diff($oldPatterns, $newPatterns);
// Insert stuff that's in new and not in old
$toInsert = array_diff($newPatterns, $oldPatterns);
foreach ($toDelete as $pattern) {

View File

@ -44,7 +44,6 @@ require_once INSTALLDIR . '/classes/Memcached_DataObject.php';
*
* @see DB_DataObject
*/
class Nickname_blacklist extends Memcached_DataObject
{
public $__table = 'nickname_blacklist'; // table name
@ -62,7 +61,6 @@ class Nickname_blacklist extends Memcached_DataObject
* @return Nickname_blacklist object found, or null for no hits
*
*/
function staticGet($k, $v=null)
{
return Memcached_DataObject::staticGet('Nickname_blacklist', $k, $v);
@ -73,7 +71,6 @@ class Nickname_blacklist extends Memcached_DataObject
*
* @return array array of column definitions
*/
function table()
{
return array('pattern' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
@ -85,7 +82,6 @@ class Nickname_blacklist extends Memcached_DataObject
*
* @return array key definitions
*/
function keys()
{
return array_keys($this->keyTypes());
@ -96,7 +92,6 @@ class Nickname_blacklist extends Memcached_DataObject
*
* @return array key definitions
*/
function keyTypes()
{
return array('pattern' => 'K');
@ -107,7 +102,6 @@ class Nickname_blacklist extends Memcached_DataObject
*
* @return array string patterns to check
*/
static function getPatterns()
{
$patterns = self::cacheGet('nickname_blacklist:patterns');
@ -135,17 +129,14 @@ class Nickname_blacklist extends Memcached_DataObject
*
* @return array of patterns to check
*/
static function saveNew($newPatterns)
{
$oldPatterns = self::getPatterns();
// Delete stuff that's old that not in new
$toDelete = array_diff($oldPatterns, $newPatterns);
// Insert stuff that's in new and not in old
$toInsert = array_diff($newPatterns, $oldPatterns);
foreach ($toDelete as $pattern) {

View File

@ -40,7 +40,6 @@ if (!defined('STATUSNET')) {
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
* @link http://status.net/
*/
class BlacklistadminpanelAction extends AdminPanelAction
{
/**
@ -48,10 +47,9 @@ class BlacklistadminpanelAction extends AdminPanelAction
*
* @return string title
*/
function title()
{
return _('Blacklist');
return _m('Blacklist');
}
/**
@ -59,10 +57,9 @@ class BlacklistadminpanelAction extends AdminPanelAction
*
* @return string instructions
*/
function getInstructions()
{
return _('Blacklisted URLs and nicknames');
return _m('Blacklisted URLs and nicknames');
}
/**
@ -72,7 +69,6 @@ class BlacklistadminpanelAction extends AdminPanelAction
*
* @see BlacklistAdminPanelForm
*/
function showForm()
{
$form = new BlacklistAdminPanelForm($this);
@ -85,7 +81,6 @@ class BlacklistadminpanelAction extends AdminPanelAction
*
* @return void
*/
function saveSettings()
{
$nickPatterns = $this->splitPatterns($this->trimmed('blacklist-nicknames'));
@ -116,7 +111,6 @@ class BlacklistadminpanelAction extends AdminPanelAction
*
* @return boolean success flag
*/
function validate(&$values)
{
return true;
@ -132,7 +126,6 @@ class BlacklistadminpanelAction extends AdminPanelAction
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
* @link http://status.net/
*/
class BlacklistAdminPanelForm extends Form
{
/**
@ -140,7 +133,6 @@ class BlacklistAdminPanelForm extends Form
*
* @return string ID
*/
function id()
{
return 'blacklistadminpanel';
@ -151,7 +143,6 @@ class BlacklistAdminPanelForm extends Form
*
* @return string class
*/
function formClass()
{
return 'form_settings';
@ -162,7 +153,6 @@ class BlacklistAdminPanelForm extends Form
*
* @return string action URL
*/
function action()
{
return common_local_url('blacklistadminpanel');
@ -173,7 +163,6 @@ class BlacklistAdminPanelForm extends Form
*
* @return void
*/
function formData()
{
$this->out->elementStart('ul', 'form_data');
@ -184,7 +173,7 @@ class BlacklistAdminPanelForm extends Form
$this->out->textarea('blacklist-nicknames', _m('Nicknames'),
implode("\r\n", $nickPatterns),
_('Patterns of nicknames to block, one per line'));
_m('Patterns of nicknames to block, one per line'));
$this->out->elementEnd('li');
$urlPatterns = Homepage_blacklist::getPatterns();
@ -192,7 +181,7 @@ class BlacklistAdminPanelForm extends Form
$this->out->elementStart('li');
$this->out->textarea('blacklist-urls', _m('URLs'),
implode("\r\n", $urlPatterns),
_('Patterns of URLs to block, one per line'));
_m('Patterns of URLs to block, one per line'));
$this->out->elementEnd('li');
$this->out->elementEnd('ul');
@ -203,13 +192,12 @@ class BlacklistAdminPanelForm extends Form
*
* @return void
*/
function formActions()
{
$this->out->submit('submit',
_('Save'),
_m('Save'),
'submit',
null,
_('Save site settings'));
_m('Save site settings'));
}
}

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,39 +16,75 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: BlacklistPlugin.php:153
#: BlacklistPlugin.php:148
#, php-format
msgid "You may not register with homepage '%s'"
msgid "You may not register with homepage '%s'."
msgstr ""
#: BlacklistPlugin.php:163
#: BlacklistPlugin.php:158
#, php-format
msgid "You may not register with nickname '%s'"
msgid "You may not register with nickname '%s'."
msgstr ""
#: BlacklistPlugin.php:188
#: BlacklistPlugin.php:182
#, php-format
msgid "You may not use homepage '%s'"
msgid "You may not use homepage '%s'."
msgstr ""
#: BlacklistPlugin.php:198
#: BlacklistPlugin.php:192
#, php-format
msgid "You may not use nickname '%s'"
msgid "You may not use nickname '%s'."
msgstr ""
#: BlacklistPlugin.php:242
#: BlacklistPlugin.php:234
#, php-format
msgid "You may not use url '%s' in notices"
msgid "You may not use UTL \"%s\" in notices."
msgstr ""
#: BlacklistPlugin.php:351
msgid "Keep a blacklist of forbidden nickname and URL patterns."
#: BlacklistPlugin.php:338
msgid "Keeps a blacklist of forbidden nickname and URL patterns."
msgstr ""
#: blacklistadminpanel.php:185
#: BlacklistPlugin.php:376 blacklistadminpanel.php:52
msgid "Blacklist"
msgstr ""
#: BlacklistPlugin.php:377
msgid "Blacklist configuration"
msgstr ""
#: BlacklistPlugin.php:403
msgid "Add this nickname pattern to blacklist"
msgstr ""
#: BlacklistPlugin.php:412
msgid "Add this homepage pattern to blacklist"
msgstr ""
#: blacklistadminpanel.php:62
msgid "Blacklisted URLs and nicknames"
msgstr ""
#: blacklistadminpanel.php:174
msgid "Nicknames"
msgstr ""
#: blacklistadminpanel.php:193
#: blacklistadminpanel.php:176
msgid "Patterns of nicknames to block, one per line"
msgstr ""
#: blacklistadminpanel.php:182
msgid "URLs"
msgstr ""
#: blacklistadminpanel.php:184
msgid "Patterns of URLs to block, one per line"
msgstr ""
#: blacklistadminpanel.php:198
msgid "Save"
msgstr ""
#: blacklistadminpanel.php:201
msgid "Save site settings"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -22,6 +22,6 @@ msgid ""
"shorten urls as they entered, and before the notice is submitted."
msgstr ""
#: shorten.php:55
#: shorten.php:56
msgid "'text' argument must be specified."
msgstr ""

View File

@ -6,7 +6,10 @@ NOTE: this is an insecure version; don't roll it out on a production
server.
It requires a cometd server. I've only had the cometd-java server work
correctly; something's wiggy with the Twisted-based server.
correctly; something's wiggy with the Twisted-based server. See here
for help setting up a comet server:
http://cometd.org/
After you have a cometd server installed, just add this code to your
config.php:

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-05-08 22:32+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,6 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: DirectionDetectorPlugin.php:222
#. TRANS: Direction detector plugin description.
#: DirectionDetectorPlugin.php:221
msgid "Shows notices with right-to-left content in correct direction."
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: facebookutil.php:285
#: facebookutil.php:439
#, php-format
msgid ""
"Hi, %1$s. We're sorry to inform you that we are unable to update your "
@ -378,46 +378,38 @@ msgstr ""
msgid "Not sure what you're trying to do."
msgstr ""
#: facebooksettings.php:74
#: facebooksettings.php:63
msgid "There was a problem saving your sync preferences!"
msgstr ""
#: facebooksettings.php:76
#: facebooksettings.php:65
msgid "Sync preferences saved."
msgstr ""
#: facebooksettings.php:99
#: facebooksettings.php:88
msgid "Automatically update my Facebook status with my notices."
msgstr ""
#: facebooksettings.php:106
#: facebooksettings.php:95
msgid "Send \"@\" replies to Facebook."
msgstr ""
#: facebooksettings.php:115
msgid "Prefix"
msgstr ""
#: facebooksettings.php:117
msgid "A string to prefix notices with."
msgstr ""
#: facebooksettings.php:123
#: facebooksettings.php:102
msgid "Save"
msgstr ""
#: facebooksettings.php:133
#: facebooksettings.php:112
#, php-format
msgid ""
"If you would like %s to automatically update your Facebook status with your "
"latest notice, you need to give it permission."
msgstr ""
#: facebooksettings.php:146
#: facebooksettings.php:125
#, php-format
msgid "Allow %s to update my Facebook status"
msgstr ""
#: facebooksettings.php:156
#: facebooksettings.php:135
msgid "Sync preferences"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,6 +16,6 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: FirePHPPlugin.php:66
#: FirePHPPlugin.php:68
msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,51 +16,51 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: GravatarPlugin.php:57
#: GravatarPlugin.php:60
msgid "Set Gravatar"
msgstr ""
#: GravatarPlugin.php:60
#: GravatarPlugin.php:63
msgid "If you want to use your Gravatar image, click \"Add\"."
msgstr ""
#: GravatarPlugin.php:65
#: GravatarPlugin.php:68
msgid "Add"
msgstr ""
#: GravatarPlugin.php:75
#: GravatarPlugin.php:78
msgid "Remove Gravatar"
msgstr ""
#: GravatarPlugin.php:78
#: GravatarPlugin.php:81
msgid "If you want to remove your Gravatar image, click \"Remove\"."
msgstr ""
#: GravatarPlugin.php:83
#: GravatarPlugin.php:86
msgid "Remove"
msgstr ""
#: GravatarPlugin.php:88
#: GravatarPlugin.php:91
msgid "To use a Gravatar first enter in an email address."
msgstr ""
#: GravatarPlugin.php:137
#: GravatarPlugin.php:141
msgid "You do not have a email set in your profile."
msgstr ""
#: GravatarPlugin.php:155
#: GravatarPlugin.php:159
msgid "Failed to save Gravatar to the DB."
msgstr ""
#: GravatarPlugin.php:159
#: GravatarPlugin.php:163
msgid "Gravatar added."
msgstr ""
#: GravatarPlugin.php:177
#: GravatarPlugin.php:181
msgid "Gravatar removed."
msgstr ""
#: GravatarPlugin.php:196
#: GravatarPlugin.php:201
msgid ""
"The Gravatar plugin allows users to use their <a href=\"http://www.gravatar."
"com/\">Gravatar</a> with StatusNet."

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -20,7 +20,7 @@ msgstr ""
msgid "Error"
msgstr ""
#: ImapPlugin.php:101
#: ImapPlugin.php:103
msgid ""
"The IMAP plugin allows for StatusNet to check a POP or IMAP mailbox for "
"incoming mail containing user posts."

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -30,25 +30,25 @@ msgid ""
"mapstraction.com/\">Mapstraction</a> JavaScript library."
msgstr ""
#: map.php:72
#: map.php:73
msgid "No such user."
msgstr ""
#: map.php:79
#: map.php:80
msgid "User has no profile."
msgstr ""
#: allmap.php:71
#: allmap.php:72
#, php-format
msgid "%s friends map"
msgstr ""
#: allmap.php:74
#: allmap.php:75
#, php-format
msgid "%s friends map, page %d"
msgstr ""
#: usermap.php:71
#: usermap.php:72
#, php-format
msgid "%s map, page %d"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: MinifyPlugin.php:179
#: MinifyPlugin.php:180
msgid ""
"The Minify plugin minifies your CSS and Javascript, removing whitespace and "
"comments."

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,6 +16,6 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: MobileProfilePlugin.php:424
#: MobileProfilePlugin.php:429
msgid "XHTML MobileProfile output for supporting user agents."
msgstr ""

View File

@ -0,0 +1,21 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: NoticeTitlePlugin.php:126
msgid "Adds optional titles to notices"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,133 +16,126 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: OStatusPlugin.php:210 OStatusPlugin.php:913 actions/ostatusinit.php:99
#: OStatusPlugin.php:226 OStatusPlugin.php:951 actions/ostatusinit.php:99
msgid "Subscribe"
msgstr ""
#: OStatusPlugin.php:228 OStatusPlugin.php:635 actions/ostatussub.php:105
#: OStatusPlugin.php:244 OStatusPlugin.php:663 actions/ostatussub.php:105
#: actions/ostatusinit.php:96
msgid "Join"
msgstr ""
#: OStatusPlugin.php:451
#: OStatusPlugin.php:456
#, php-format
msgid "Sent from %s via OStatus"
msgstr ""
#: OStatusPlugin.php:503
#: OStatusPlugin.php:527
msgid "Could not set up remote subscription."
msgstr ""
#: OStatusPlugin.php:619
#: OStatusPlugin.php:647
msgid "Could not set up remote group membership."
msgstr ""
#: OStatusPlugin.php:636
#, php-format
msgid "%s has joined group %s."
msgstr ""
#: OStatusPlugin.php:644
#: OStatusPlugin.php:674
msgid "Failed joining remote group."
msgstr ""
#: OStatusPlugin.php:684
#: OStatusPlugin.php:714
msgid "Leave"
msgstr ""
#: OStatusPlugin.php:685
#, php-format
msgid "%s has left group %s."
msgstr ""
#: OStatusPlugin.php:844
#: OStatusPlugin.php:880
msgid "Remote"
msgstr ""
#: OStatusPlugin.php:883
#: OStatusPlugin.php:919
msgid "Profile update"
msgstr ""
#: OStatusPlugin.php:884
#. TRANS: Ping text for remote profile update through OStatus.
#. TRANS: %s is user that updated their profile.
#: OStatusPlugin.php:922
#, php-format
msgid "%s has updated their profile page."
msgstr ""
#: OStatusPlugin.php:928
#: OStatusPlugin.php:966
msgid ""
"Follow people across social networks that implement <a href=\"http://ostatus."
"org/\">OStatus</a>."
msgstr ""
#: classes/Ostatus_profile.php:566
#: classes/Ostatus_profile.php:592
msgid "Show more"
msgstr ""
#: classes/Ostatus_profile.php:1004
#: classes/Ostatus_profile.php:1035
#, php-format
msgid "Invalid avatar URL %s"
msgid "Invalid avatar URL %s."
msgstr ""
#: classes/Ostatus_profile.php:1014
#: classes/Ostatus_profile.php:1045
#, php-format
msgid "Tried to update avatar for unsaved remote profile %s"
msgid "Tried to update avatar for unsaved remote profile %s."
msgstr ""
#: classes/Ostatus_profile.php:1022
#: classes/Ostatus_profile.php:1053
#, php-format
msgid "Unable to fetch avatar from %s"
msgid "Unable to fetch avatar from %s."
msgstr ""
#: lib/salmonaction.php:41
#. TRANS: POST is a HTTP command. It should not be translated.
#: lib/salmonaction.php:42
msgid "This method requires a POST."
msgstr ""
#: lib/salmonaction.php:45
msgid "Salmon requires application/magic-envelope+xml"
#: lib/salmonaction.php:46
msgid "Salmon requires \"application/magic-envelope+xml\"."
msgstr ""
#: lib/salmonaction.php:55
msgid "Salmon signature verification failed."
msgstr ""
#: lib/salmonaction.php:67
#: lib/salmonaction.php:66
msgid "Salmon post must be an Atom entry."
msgstr ""
#: lib/salmonaction.php:115
#: lib/salmonaction.php:114
msgid "Unrecognized activity type."
msgstr ""
#: lib/salmonaction.php:123
#: lib/salmonaction.php:122
msgid "This target doesn't understand posts."
msgstr ""
#: lib/salmonaction.php:128
#: lib/salmonaction.php:127
msgid "This target doesn't understand follows."
msgstr ""
#: lib/salmonaction.php:133
#: lib/salmonaction.php:132
msgid "This target doesn't understand unfollows."
msgstr ""
#: lib/salmonaction.php:138
#: lib/salmonaction.php:137
msgid "This target doesn't understand favorites."
msgstr ""
#: lib/salmonaction.php:143
#: lib/salmonaction.php:142
msgid "This target doesn't understand unfavorites."
msgstr ""
#: lib/salmonaction.php:148
#: lib/salmonaction.php:147
msgid "This target doesn't understand share events."
msgstr ""
#: lib/salmonaction.php:153
#: lib/salmonaction.php:152
msgid "This target doesn't understand joins."
msgstr ""
#: lib/salmonaction.php:158
#: lib/salmonaction.php:157
msgid "This target doesn't understand leave events."
msgstr ""
@ -155,7 +148,7 @@ msgid "Join group"
msgstr ""
#: actions/ostatusgroup.php:77
msgid "OStatus group's address, like http://example.net/group/nickname"
msgid "OStatus group's address, like http://example.net/group/nickname."
msgstr ""
#: actions/ostatusgroup.php:81 actions/ostatussub.php:71
@ -249,7 +242,7 @@ msgstr ""
#: actions/ostatussub.php:272
msgid ""
"Sorry, we could not reach that address. Please make sure that the OStatus "
"address is like nickname@example.com or http://example.net/nickname"
"address is like nickname@example.com or http://example.net/nickname."
msgstr ""
#: actions/ostatussub.php:256 actions/ostatussub.php:259
@ -303,7 +296,7 @@ msgid "User nickname"
msgstr ""
#: actions/ostatusinit.php:112
msgid "Nickname of the user you want to follow"
msgid "Nickname of the user you want to follow."
msgstr ""
#: actions/ostatusinit.php:116
@ -311,7 +304,7 @@ msgid "Profile Account"
msgstr ""
#: actions/ostatusinit.php:117
msgid "Your account id (i.e. user@identi.ca)"
msgid "Your account id (e.g. user@identi.ca)."
msgstr ""
#: actions/ostatusinit.php:138

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: openidsettings.php:59
#: openidsettings.php:59 openidadminpanel.php:65
msgid "OpenID settings"
msgstr ""
@ -27,204 +27,311 @@ msgid ""
"account. Manage your associated OpenIDs from here."
msgstr ""
#: openidsettings.php:99
#: openidsettings.php:101
msgid "Add OpenID"
msgstr ""
#: openidsettings.php:102
#: openidsettings.php:104
msgid ""
"If you want to add an OpenID to your account, enter it in the box below and "
"click \"Add\"."
msgstr ""
#: openidsettings.php:107 openidlogin.php:119
#. TRANS: OpenID plugin logon form field label.
#: openidsettings.php:109 openidlogin.php:159
msgid "OpenID URL"
msgstr ""
#: openidsettings.php:117
#: openidsettings.php:119
msgid "Add"
msgstr ""
#: openidsettings.php:129
#: openidsettings.php:131
msgid "Remove OpenID"
msgstr ""
#: openidsettings.php:134
#: openidsettings.php:136
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:149
#: openidsettings.php:151
msgid ""
"You can remove an OpenID from your account by clicking the button marked "
"\"Remove\"."
msgstr ""
#: openidsettings.php:172 openidsettings.php:213
#: openidsettings.php:174 openidsettings.php:215
msgid "Remove"
msgstr ""
#: openidsettings.php:186
#: openidsettings.php:188
msgid "OpenID Trusted Sites"
msgstr ""
#: openidsettings.php:189
#: openidsettings.php:191
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 ""
#: openidsettings.php:231 finishopenidlogin.php:38 openidlogin.php:39
#. TRANS: Message given when there is a problem with the user's session token.
#: openidsettings.php:233 finishopenidlogin.php:40 openidlogin.php:49
msgid "There was a problem with your session token. Try again, please."
msgstr ""
#: openidsettings.php:247 finishopenidlogin.php:51
#: openidsettings.php:240
msgid "Can't add new providers."
msgstr ""
#: openidsettings.php:253
msgid "Something weird happened."
msgstr ""
#: openidsettings.php:271
#: openidsettings.php:277
msgid "No such OpenID trustroot."
msgstr ""
#: openidsettings.php:275
#: openidsettings.php:281
msgid "Trustroots removed"
msgstr ""
#: openidsettings.php:298
#: openidsettings.php:304
msgid "No such OpenID."
msgstr ""
#: openidsettings.php:303
#: openidsettings.php:309
msgid "That OpenID does not belong to you."
msgstr ""
#: openidsettings.php:307
#: openidsettings.php:313
msgid "OpenID removed."
msgstr ""
#: openid.php:137
#: openidadminpanel.php:54 OpenIDPlugin.php:623
msgid "OpenID"
msgstr ""
#: openidadminpanel.php:147
msgid "Invalid provider URL. Max length is 255 characters."
msgstr ""
#: openidadminpanel.php:153
msgid "Invalid team name. Max length is 255 characters."
msgstr ""
#: 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 ""
#: openid.php:147
#. TRANS: OpenID plugin message. Given when an OpenID is not valid.
#: openid.php:150
msgid "Not a valid OpenID."
msgstr ""
#: openid.php:149
#. 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 ""
#: openid.php:176
#. 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 ""
#: openid.php:194
#, php-format
msgid "Could not create OpenID form: %s"
msgstr ""
#: openid.php:210
#. 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 ""
#: openid.php:242
#. TRANS: OpenID plugin server error.
#: openid.php:280
msgid "Error saving the profile."
msgstr ""
#: openid.php:253
#. TRANS: OpenID plugin server error.
#: openid.php:292
msgid "Error saving the user."
msgstr ""
#: openid.php:282
#. TRANS: OpenID plugin client exception (403).
#: openid.php:322
msgid "Unauthorized URL used for OpenID login."
msgstr ""
#: openid.php:302
#. TRANS: Title
#: openid.php:370
msgid "OpenID Login Submission"
msgstr ""
#: openid.php:312
#. TRANS: OpenID plugin message used while requesting authorization user's OpenID login provider.
#: openid.php:381
msgid "Requesting authorization from your login provider..."
msgstr ""
#: openid.php:315
#. 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 ""
#. TRANS: Tooltip for main menu option "Login"
#: OpenIDPlugin.php:204
#: OpenIDPlugin.php:221
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
#: OpenIDPlugin.php:207
#. TRANS: Main menu option when not logged in to log in
#: OpenIDPlugin.php:224
msgctxt "MENU"
msgid "Login"
msgstr ""
#. TRANS: Tooltip for main menu option "Help"
#: OpenIDPlugin.php:212
#: OpenIDPlugin.php:229
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr ""
#: OpenIDPlugin.php:215
#. TRANS: Main menu option for help on the StatusNet site
#: OpenIDPlugin.php:232
msgctxt "MENU"
msgid "Help"
msgstr ""
#. TRANS: Tooltip for main menu option "Search"
#: OpenIDPlugin.php:221
#: OpenIDPlugin.php:238
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
#: OpenIDPlugin.php:224
#. TRANS: Main menu option when logged in or when the StatusNet instance is not private
#: OpenIDPlugin.php:241
msgctxt "MENU"
msgid "Search"
msgstr ""
#: OpenIDPlugin.php:283 OpenIDPlugin.php:319
#. TRANS: OpenID plugin menu item on site logon page.
#. TRANS: OpenID plugin menu item on user settings page.
#: OpenIDPlugin.php:301 OpenIDPlugin.php:339
msgctxt "MENU"
msgid "OpenID"
msgstr ""
#: OpenIDPlugin.php:284
#. TRANS: OpenID plugin tooltip for logon menu item.
#: OpenIDPlugin.php:303
msgid "Login or register with OpenID"
msgstr ""
#: OpenIDPlugin.php:320
#. TRANS: OpenID plugin tooltip for user settings menu item.
#: OpenIDPlugin.php:341
msgid "Add or remove OpenIDs"
msgstr ""
#: OpenIDPlugin.php:595
#: OpenIDPlugin.php:624
msgid "OpenID configuration"
msgstr ""
#. TRANS: OpenID plugin description.
#: OpenIDPlugin.php:649
msgid "Use <a href=\"http://openid.net/\">OpenID</a> to login to the site."
msgstr ""
#: openidserver.php:106
#. TRANS: OpenID plugin client error given trying to add an unauthorised OpenID to a user (403).
#: openidserver.php:118
#, php-format
msgid "You are not authorized to use the identity %s."
msgstr ""
#: openidserver.php:126
#. TRANS: OpenID plugin client error given when not getting a response for a given OpenID provider (500).
#: openidserver.php:139
msgid "Just an OpenID provider. Nothing to see here, move along..."
msgstr ""
#: finishopenidlogin.php:34 openidlogin.php:30
#. TRANS: Client error message trying to log on with OpenID while already logged on.
#: finishopenidlogin.php:35 openidlogin.php:31
msgid "Already logged in."
msgstr ""
#: finishopenidlogin.php:43
#. TRANS: Message given if user does not agree with the site's license.
#: finishopenidlogin.php:46
msgid "You can't register if you don't agree to the license."
msgstr ""
#: finishopenidlogin.php:65
#. TRANS: Messag given on an unknown error.
#: finishopenidlogin.php:55
msgid "An unknown error has occured."
msgstr ""
#. TRANS: Instructions given after a first successful logon using OpenID.
#. TRANS: %s is the site name.
#: finishopenidlogin.php:71
#, php-format
msgid ""
"This is the first time you've logged into %s so we must connect your OpenID "
@ -232,130 +339,183 @@ msgid ""
"your existing account, if you have one."
msgstr ""
#: finishopenidlogin.php:71
#. TRANS: Title
#: finishopenidlogin.php:78
msgid "OpenID Account Setup"
msgstr ""
#: finishopenidlogin.php:101
#: finishopenidlogin.php:108
msgid "Create new account"
msgstr ""
#: finishopenidlogin.php:103
#: finishopenidlogin.php:110
msgid "Create a new user with this nickname."
msgstr ""
#: finishopenidlogin.php:106
#: finishopenidlogin.php:113
msgid "New nickname"
msgstr ""
#: finishopenidlogin.php:108
#: finishopenidlogin.php:115
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
#: finishopenidlogin.php:130
#. TRANS: Button label in form in which to create a new user on the site for an OpenID.
#: finishopenidlogin.php:140
msgctxt "BUTTON"
msgid "Create"
msgstr ""
#: finishopenidlogin.php:135
#. TRANS: Used as form legend for form in which to connect an OpenID to an existing user on the site.
#: finishopenidlogin.php:146
msgid "Connect existing account"
msgstr ""
#: finishopenidlogin.php:137
#. TRANS: User instructions for form in which to connect an OpenID to an existing user on the site.
#: finishopenidlogin.php:149
msgid ""
"If you already have an account, login with your username and password to "
"connect it to your OpenID."
msgstr ""
#: finishopenidlogin.php:140
#. TRANS: Field label in form in which to connect an OpenID to an existing user on the site.
#: finishopenidlogin.php:153
msgid "Existing nickname"
msgstr ""
#: finishopenidlogin.php:143
#. TRANS: Field label in form in which to connect an OpenID to an existing user on the site.
#: finishopenidlogin.php:157
msgid "Password"
msgstr ""
#: finishopenidlogin.php:146
#. TRANS: Button label in form in which to connect an OpenID to an existing user on the site.
#: finishopenidlogin.php:161
msgctxt "BUTTON"
msgid "Connect"
msgstr ""
#: finishopenidlogin.php:158 finishaddopenid.php:88
#. TRANS: Status message in case the response from the OpenID provider is that the logon attempt was cancelled.
#: finishopenidlogin.php:174 finishaddopenid.php:90
msgid "OpenID authentication cancelled."
msgstr ""
#: finishopenidlogin.php:162 finishaddopenid.php:92
#. 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:178 finishaddopenid.php:95
#, php-format
msgid "OpenID authentication failed: %s"
msgstr ""
#: finishopenidlogin.php:227 finishopenidlogin.php:236
#: finishopenidlogin.php:198 finishaddopenid.php:111
msgid ""
"OpenID authentication aborted: you are not allowed to login to this site."
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:250 finishopenidlogin.php:260
msgid "Registration not allowed."
msgstr ""
#: finishopenidlogin.php:243
#. 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:268
msgid "Not a valid invitation code."
msgstr ""
#: finishopenidlogin.php:253
#. TRANS: OpenID plugin message. The entered new user name did not conform to the requirements.
#: finishopenidlogin.php:279
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
#: finishopenidlogin.php:258
#. TRANS: OpenID plugin message. The entered new user name is blacklisted.
#: finishopenidlogin.php:285
msgid "Nickname not allowed."
msgstr ""
#: finishopenidlogin.php:263
#. TRANS: OpenID plugin message. The entered new user name is already used.
#: finishopenidlogin.php:291
msgid "Nickname already in use. Try another one."
msgstr ""
#: finishopenidlogin.php:270 finishopenidlogin.php:350
#. TRANS: OpenID plugin server error. A stored OpenID cannot be retrieved.
#. TRANS: OpenID plugin server error. A stored OpenID cannot be found.
#: finishopenidlogin.php:299 finishopenidlogin.php:386
msgid "Stored OpenID not found."
msgstr ""
#: finishopenidlogin.php:279
#. TRANS: OpenID plugin server error.
#: finishopenidlogin.php:309
msgid "Creating new account for OpenID that already has a user."
msgstr ""
#: finishopenidlogin.php:339
#. TRANS: OpenID plugin message.
#: finishopenidlogin.php:374
msgid "Invalid username or password."
msgstr ""
#: finishopenidlogin.php:357
#. TRANS: OpenID plugin server error. The user or user profile could not be saved.
#: finishopenidlogin.php:394
msgid "Error connecting user to OpenID."
msgstr ""
#: openidlogin.php:68
#. 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:80
#, php-format
msgid ""
"For security reasons, please re-login with your [OpenID](%%doc.openid%%) "
"before changing your settings."
msgstr ""
#: openidlogin.php:72
#. TRANS: OpenID plugin message.
#. TRANS: "OpenID" is the display text for a link with URL "(%%doc.openid%%)".
#: openidlogin.php:86
#, php-format
msgid "Login with an [OpenID](%%doc.openid%%) account."
msgstr ""
#: openidlogin.php:97 finishaddopenid.php:170
#. TRANS: OpenID plugin message. Title.
#. TRANS: Title after getting the status of the OpenID authorisation request.
#: openidlogin.php:120 finishaddopenid.php:187
msgid "OpenID Login"
msgstr ""
#: openidlogin.php:114
#. TRANS: OpenID plugin logon form legend.
#: openidlogin.php:138
msgid "OpenID login"
msgstr ""
#: openidlogin.php:121
#: openidlogin.php:146
msgid "OpenID provider"
msgstr ""
#: openidlogin.php:154
msgid "Enter your username."
msgstr ""
#: openidlogin.php:155
msgid "You will be sent to the provider's site for authentication."
msgstr ""
#. TRANS: OpenID plugin logon form field instructions.
#: openidlogin.php:162
msgid "Your OpenID URL"
msgstr ""
#: openidlogin.php:124
#. TRANS: OpenID plugin logon form checkbox label for setting to put the OpenID information in a cookie.
#: openidlogin.php:167
msgid "Remember me"
msgstr ""
#: openidlogin.php:125
#. TRANS: OpenID plugin logon form field instructions.
#: openidlogin.php:169
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
#: openidlogin.php:129
#. TRANS: OpenID plugin logon form button label to start logon with the data provided in the logon form.
#: openidlogin.php:174
msgctxt "BUTTON"
msgid "Login"
msgstr ""
@ -383,22 +543,27 @@ msgstr ""
msgid "Cancel"
msgstr ""
#: finishaddopenid.php:67
#. TRANS: Client error message
#: finishaddopenid.php:68
msgid "Not logged in."
msgstr ""
#: finishaddopenid.php:112
#. 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 ""
#: finishaddopenid.php:114
#. 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 ""
#: finishaddopenid.php:126
#. TRANS: message in case the OpenID object cannot be connected to the user.
#: finishaddopenid.php:138
msgid "Error connecting user."
msgstr ""
#: finishaddopenid.php:131
#. TRANS: message in case the user or the user profile cannot be saved in StatusNet.
#: finishaddopenid.php:145
msgid "Error updating profile"
msgstr ""

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"POT-Creation-Date: 2010-09-14 22:56+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

Some files were not shown because too many files have changed in this diff Show More