Add translator documentation

Fix L10n issues
Remove superfluous whitespace
This commit is contained in:
Siebrand Mazeland 2011-01-21 16:35:00 +01:00
parent bcd34a7f3c
commit 08cb576b52
7 changed files with 88 additions and 67 deletions

View File

@ -4,7 +4,7 @@
* Copyright (C) 2010, StatusNet, Inc. * Copyright (C) 2010, StatusNet, Inc.
* *
* Download a backup of your own account to the browser * Download a backup of your own account to the browser
* *
* PHP version 5 * PHP version 5
* *
* This program is free software: you can redistribute it and/or modify * This program is free software: you can redistribute it and/or modify
@ -48,17 +48,16 @@ if (!defined('STATUSNET')) {
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
* @link http://status.net/ * @link http://status.net/
*/ */
class BackupaccountAction extends Action class BackupaccountAction extends Action
{ {
/** /**
* Returns the title of the page * Returns the title of the page
* *
* @return string page title * @return string page title
*/ */
function title() function title()
{ {
// TRANS: Title for backup account page.
return _("Backup account"); return _("Backup account");
} }
@ -69,7 +68,6 @@ class BackupaccountAction extends Action
* *
* @return boolean true * @return boolean true
*/ */
function prepare($argarray) function prepare($argarray)
{ {
parent::prepare($argarray); parent::prepare($argarray);
@ -77,10 +75,12 @@ class BackupaccountAction extends Action
$cur = common_current_user(); $cur = common_current_user();
if (empty($cur)) { if (empty($cur)) {
// TRANS: Client exception thrown when trying to backup an account while not logged in.
throw new ClientException(_('Only logged-in users can backup their account.'), 403); throw new ClientException(_('Only logged-in users can backup their account.'), 403);
} }
if (!$cur->hasRight(Right::BACKUPACCOUNT)) { if (!$cur->hasRight(Right::BACKUPACCOUNT)) {
// TRANS: Client exception thrown when trying to backup an account without having backup rights.
throw new ClientException(_('You may not backup your account.'), 403); throw new ClientException(_('You may not backup your account.'), 403);
} }
@ -94,7 +94,6 @@ class BackupaccountAction extends Action
* *
* @return void * @return void
*/ */
function handle($argarray=null) function handle($argarray=null)
{ {
parent::handle($argarray); parent::handle($argarray);
@ -109,7 +108,7 @@ class BackupaccountAction extends Action
/** /**
* Send a feed of the user's activities to the browser * Send a feed of the user's activities to the browser
* *
* Uses the UserActivityStream class; may take a long time! * Uses the UserActivityStream class; may take a long time!
* *
* @return void * @return void
@ -118,7 +117,7 @@ class BackupaccountAction extends Action
function sendFeed() function sendFeed()
{ {
$cur = common_current_user(); $cur = common_current_user();
$stream = new UserActivityStream($cur); $stream = new UserActivityStream($cur);
header('Content-Disposition: attachment; filename='.$cur->nickname.'.atom'); header('Content-Disposition: attachment; filename='.$cur->nickname.'.atom');
@ -132,13 +131,13 @@ class BackupaccountAction extends Action
* *
* @return void * @return void
*/ */
function showContent() function showContent()
{ {
$form = new BackupAccountForm($this); $form = new BackupAccountForm($this);
$form->show(); $form->show();
} }
/** /**
* Return true if read only. * Return true if read only.
* *
@ -148,7 +147,6 @@ class BackupaccountAction extends Action
* *
* @return boolean is read only action? * @return boolean is read only action?
*/ */
function isReadOnly($args) function isReadOnly($args)
{ {
return false; return false;
@ -161,7 +159,6 @@ class BackupaccountAction extends Action
* *
* @return string last modified http header * @return string last modified http header
*/ */
function lastModified() function lastModified()
{ {
// For comparison with If-Last-Modified // For comparison with If-Last-Modified
@ -176,7 +173,6 @@ class BackupaccountAction extends Action
* *
* @return string etag http header * @return string etag http header
*/ */
function etag() function etag()
{ {
return null; return null;
@ -193,7 +189,6 @@ class BackupaccountAction extends Action
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
* @link http://status.net/ * @link http://status.net/
*/ */
class BackupAccountForm extends Form class BackupAccountForm extends Form
{ {
/** /**
@ -201,7 +196,6 @@ class BackupAccountForm extends Form
* *
* @return string the form's class * @return string the form's class
*/ */
function formClass() function formClass()
{ {
return 'form_profile_backup'; return 'form_profile_backup';
@ -212,7 +206,6 @@ class BackupAccountForm extends Form
* *
* @return string the form's action URL * @return string the form's action URL
*/ */
function action() function action()
{ {
return common_local_url('backupaccount'); return common_local_url('backupaccount');
@ -220,18 +213,18 @@ class BackupAccountForm extends Form
/** /**
* Output form data * Output form data
* *
* Really, just instructions for doing a backup. * Really, just instructions for doing a backup.
* *
* @return void * @return void
*/ */
function formData() function formData()
{ {
$msg = $msg =
// TRANS: Information displayed on the backup account page.
_('You can backup your account data in '. _('You can backup your account data in '.
'<a href="http://activitystrea.ms/">Activity Streams</a> '. '<a href="http://activitystrea.ms/">Activity Streams</a> '.
'format. This is an experimental feature and provides an '. 'format. This is an experimental feature and provides an '.
'incomplete backup; private account '. 'incomplete backup; private account '.
'information like email and IM addresses is not backed up. '. 'information like email and IM addresses is not backed up. '.
'Additionally, uploaded files and direct messages are not '. 'Additionally, uploaded files and direct messages are not '.
@ -243,18 +236,19 @@ class BackupAccountForm extends Form
/** /**
* Buttons for the form * Buttons for the form
* *
* In this case, a single submit button * In this case, a single submit button
* *
* @return void * @return void
*/ */
function formActions() function formActions()
{ {
$this->out->submit('submit', $this->out->submit('submit',
// TRANS: Submit button to backup an account on the backup account page.
_m('BUTTON', 'Backup'), _m('BUTTON', 'Backup'),
'submit', 'submit',
null, null,
// TRANS: Title for submit button to backup an account on the backup account page.
_('Backup your account')); _('Backup your account'));
} }
} }

View File

@ -40,7 +40,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3 * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
* @link http://status.net/ * @link http://status.net/
*/ */
class DeleteuserAction extends ProfileFormAction class DeleteuserAction extends ProfileFormAction
{ {
var $user = null; var $user = null;
@ -52,7 +51,6 @@ class DeleteuserAction extends ProfileFormAction
* *
* @return boolean success flag * @return boolean success flag
*/ */
function prepare($args) function prepare($args)
{ {
if (!parent::prepare($args)) { if (!parent::prepare($args)) {
@ -64,6 +62,7 @@ class DeleteuserAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::DELETEUSER)) { if (!$cur->hasRight(Right::DELETEUSER)) {
// TRANS: Client error displayed when trying to delete a user without having the right to delete users.
$this->clientError(_('You cannot delete users.')); $this->clientError(_('You cannot delete users.'));
return false; return false;
} }
@ -71,6 +70,7 @@ class DeleteuserAction extends ProfileFormAction
$this->user = User::staticGet('id', $this->profile->id); $this->user = User::staticGet('id', $this->profile->id);
if (empty($this->user)) { if (empty($this->user)) {
// TRANS: Client error displayed when trying to delete a non-local user.
$this->clientError(_('You can only delete local users.')); $this->clientError(_('You can only delete local users.'));
return false; return false;
} }
@ -87,7 +87,6 @@ class DeleteuserAction extends ProfileFormAction
* *
* @return void * @return void
*/ */
function handle($args) function handle($args)
{ {
if ($_SERVER['REQUEST_METHOD'] == 'POST') { if ($_SERVER['REQUEST_METHOD'] == 'POST') {
@ -107,7 +106,8 @@ class DeleteuserAction extends ProfileFormAction
} }
function title() { function title() {
return _('Delete user'); // TRANS: Title of delete user page.
return _m('TITLE','Delete user');
} }
function showNoticeForm() { function showNoticeForm() {
@ -130,9 +130,11 @@ class DeleteuserAction extends ProfileFormAction
'action' => common_local_url('deleteuser'))); 'action' => common_local_url('deleteuser')));
$this->elementStart('fieldset'); $this->elementStart('fieldset');
$this->hidden('token', common_session_token()); $this->hidden('token', common_session_token());
// TRANS: Fieldset legend on delete user page.
$this->element('legend', _('Delete user')); $this->element('legend', _('Delete user'));
if (Event::handle('StartDeleteUserForm', array($this, $this->user))) { if (Event::handle('StartDeleteUserForm', array($this, $this->user))) {
$this->element('p', null, $this->element('p', null,
// TRANS: Information text to request if a user is certain that the described action has to be performed.
_('Are you sure you want to delete this user? '. _('Are you sure you want to delete this user? '.
'This will clear all data about the user from the '. 'This will clear all data about the user from the '.
'database, without a backup.')); 'database, without a backup.'));
@ -153,7 +155,7 @@ class DeleteuserAction extends ProfileFormAction
'submit form_action-primary', 'submit form_action-primary',
'no', 'no',
// TRANS: Submit button title for 'No' when deleting a user. // TRANS: Submit button title for 'No' when deleting a user.
_('Do not block this user')); _('Do not delete this user'));
$this->submit('form_action-yes', $this->submit('form_action-yes',
// TRANS: Button label on the delete user form. // TRANS: Button label on the delete user form.
_m('BUTTON','Yes'), _m('BUTTON','Yes'),
@ -170,7 +172,6 @@ class DeleteuserAction extends ProfileFormAction
* *
* @return void * @return void
*/ */
function handlePost() function handlePost()
{ {
if (Event::handle('StartDeleteUser', array($this, $this->user))) { if (Event::handle('StartDeleteUser', array($this, $this->user))) {

View File

@ -44,10 +44,8 @@ if (!defined('STATUSNET')) {
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/ * @link http://status.net/
*/ */
class DesignadminpanelAction extends AdminPanelAction class DesignadminpanelAction extends AdminPanelAction
{ {
/* The default site design */ /* The default site design */
var $design = null; var $design = null;
@ -56,7 +54,6 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return string page title * @return string page title
*/ */
function title() function title()
{ {
// TRANS: Message used as title for design settings for the site. // TRANS: Message used as title for design settings for the site.
@ -68,9 +65,9 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return string instructions * @return string instructions
*/ */
function getInstructions() function getInstructions()
{ {
// TRANS: Instructions for design adminsitration panel.
return _('Design settings for this StatusNet site'); return _('Design settings for this StatusNet site');
} }
@ -79,7 +76,6 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return void * @return void
*/ */
function showForm() function showForm()
{ {
$this->design = Design::siteDesign(); $this->design = Design::siteDesign();
@ -93,7 +89,6 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return void * @return void
*/ */
function saveSettings() function saveSettings()
{ {
if ($this->arg('save')) { if ($this->arg('save')) {
@ -101,6 +96,7 @@ class DesignadminpanelAction extends AdminPanelAction
} else if ($this->arg('defaults')) { } else if ($this->arg('defaults')) {
$this->restoreDefaults(); $this->restoreDefaults();
} else { } else {
// TRANS: Client error displayed when the submitted form contains unexpected data.
$this->clientError(_('Unexpected form submission.')); $this->clientError(_('Unexpected form submission.'));
} }
} }
@ -110,7 +106,6 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return void * @return void
*/ */
function saveDesignSettings() function saveDesignSettings()
{ {
// Workaround for PHP returning empty $_POST and $_FILES when POST // Workaround for PHP returning empty $_POST and $_FILES when POST
@ -225,11 +220,10 @@ class DesignadminpanelAction extends AdminPanelAction
} }
/** /**
* Restore the default design * Restore the default design
* *
* @return void * @return void
*/ */
function restoreDefaults() function restoreDefaults()
{ {
$this->deleteSetting('site', 'logo'); $this->deleteSetting('site', 'logo');
@ -257,7 +251,6 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return string $filename the filename of the image * @return string $filename the filename of the image
*/ */
function saveBackgroundImage() function saveBackgroundImage()
{ {
$filename = null; $filename = null;
@ -302,7 +295,6 @@ class DesignadminpanelAction extends AdminPanelAction
* @throws ClientException for invalid theme archives * @throws ClientException for invalid theme archives
* @throws ServerException if trouble saving the theme files * @throws ServerException if trouble saving the theme files
*/ */
function saveCustomTheme() function saveCustomTheme()
{ {
if (common_config('theme_upload', 'enabled') && if (common_config('theme_upload', 'enabled') &&
@ -327,20 +319,23 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return void * @return void
*/ */
function validate(&$values) function validate(&$values)
{ {
if (!empty($values['logo']) && if (!empty($values['logo']) &&
!Validate::uri($values['logo'], array('allowed_schemes' => array('http', 'https')))) { !Validate::uri($values['logo'], array('allowed_schemes' => array('http', 'https')))) {
// TRANS: Client error displayed when a logo URL does is not valid.
$this->clientError(_('Invalid logo URL.')); $this->clientError(_('Invalid logo URL.'));
} }
if (!empty($values['ssllogo']) && if (!empty($values['ssllogo']) &&
!Validate::uri($values['ssllogo'], array('allowed_schemes' => array('https')))) { !Validate::uri($values['ssllogo'], array('allowed_schemes' => array('https')))) {
// TRANS: Client error displayed when an SSL logo URL is invalid.
$this->clientError(_('Invalid SSL logo URL.')); $this->clientError(_('Invalid SSL logo URL.'));
} }
if (!in_array($values['theme'], Theme::listAvailable())) { if (!in_array($values['theme'], Theme::listAvailable())) {
// TRANS: Client error displayed when a theme is submitted through the form that is not in the theme list.
// TRANS: %s is the chosen unavailable theme.
$this->clientError(sprintf(_("Theme not available: %s."), $values['theme'])); $this->clientError(sprintf(_("Theme not available: %s."), $values['theme']));
} }
} }
@ -350,7 +345,6 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return void * @return void
*/ */
function showStylesheets() function showStylesheets()
{ {
parent::showStylesheets(); parent::showStylesheets();
@ -362,7 +356,6 @@ class DesignadminpanelAction extends AdminPanelAction
* *
* @return void * @return void
*/ */
function showScripts() function showScripts()
{ {
parent::showScripts(); parent::showScripts();
@ -383,7 +376,6 @@ class DesignAdminPanelForm extends AdminForm
* *
* @return int ID of the form * @return int ID of the form
*/ */
function id() function id()
{ {
return 'form_design_admin_panel'; return 'form_design_admin_panel';
@ -394,7 +386,6 @@ class DesignAdminPanelForm extends AdminForm
* *
* @return string class of the form * @return string class of the form
*/ */
function formClass() function formClass()
{ {
return 'form_settings'; return 'form_settings';
@ -408,7 +399,6 @@ class DesignAdminPanelForm extends AdminForm
* *
* @return string the method to use for submitting * @return string the method to use for submitting
*/ */
function method() function method()
{ {
$this->enctype = 'multipart/form-data'; $this->enctype = 'multipart/form-data';
@ -421,7 +411,6 @@ class DesignAdminPanelForm extends AdminForm
* *
* @return string URL of the action * @return string URL of the action
*/ */
function action() function action()
{ {
return common_local_url('designadminpanel'); return common_local_url('designadminpanel');
@ -432,7 +421,6 @@ class DesignAdminPanelForm extends AdminForm
* *
* @return void * @return void
*/ */
function formData() function formData()
{ {
$this->showLogo(); $this->showLogo();
@ -445,16 +433,25 @@ class DesignAdminPanelForm extends AdminForm
function showLogo() function showLogo()
{ {
$this->out->elementStart('fieldset', array('id' => 'settings_design_logo')); $this->out->elementStart('fieldset', array('id' => 'settings_design_logo'));
// TRANS: Fieldset legend for form to change logo.
$this->out->element('legend', null, _('Change logo')); $this->out->element('legend', null, _('Change logo'));
$this->out->elementStart('ul', 'form_data'); $this->out->elementStart('ul', 'form_data');
$this->li(); $this->li();
$this->input('logo', _('Site logo'), 'Logo for the site (full URL)'); $this->input('logo',
// TRANS: Field label for StatusNet site logo.
_('Site logo'),
// TRANS: Title for field label for StatusNet site logo.
'Logo for the site (full URL)');
$this->unli(); $this->unli();
$this->li(); $this->li();
$this->input('ssllogo', _('SSL logo'), 'Logo to show on SSL pages'); $this->input('ssllogo',
// TRANS: Field label for SSL StatusNet site logo.
_('SSL logo'),
// TRANS: Title for field label for SSL StatusNet site logo.
'Logo to show on SSL pages');
$this->unli(); $this->unli();
$this->out->elementEnd('ul'); $this->out->elementEnd('ul');
@ -466,6 +463,7 @@ class DesignAdminPanelForm extends AdminForm
function showTheme() function showTheme()
{ {
$this->out->elementStart('fieldset', array('id' => 'settings_design_theme')); $this->out->elementStart('fieldset', array('id' => 'settings_design_theme'));
// TRANS: Fieldset legend for form change StatusNet site's theme.
$this->out->element('legend', null, _('Change theme')); $this->out->element('legend', null, _('Change theme'));
$this->out->elementStart('ul', 'form_data'); $this->out->elementStart('ul', 'form_data');
@ -483,17 +481,21 @@ class DesignAdminPanelForm extends AdminForm
$themes = array_combine($themes, $themes); $themes = array_combine($themes, $themes);
$this->li(); $this->li();
// TRANS: Field label for dropdown to choose site theme.
$this->out->dropdown('theme', _('Site theme'), $this->out->dropdown('theme', _('Site theme'),
// TRANS: Title for field label for dropdown to choose site theme.
$themes, _('Theme for the site.'), $themes, _('Theme for the site.'),
false, $this->value('theme')); false, $this->value('theme'));
$this->unli(); $this->unli();
if (common_config('theme_upload', 'enabled')) { if (common_config('theme_upload', 'enabled')) {
$this->li(); $this->li();
// TRANS: Field label for uploading a cutom theme.
$this->out->element('label', array('for' => 'design_upload_theme'), _('Custom theme')); $this->out->element('label', array('for' => 'design_upload_theme'), _('Custom theme'));
$this->out->element('input', array('id' => 'design_upload_theme', $this->out->element('input', array('id' => 'design_upload_theme',
'name' => 'design_upload_theme', 'name' => 'design_upload_theme',
'type' => 'file')); 'type' => 'file'));
// TRANS: Form instructions for uploading a cutom StatusNet theme.
$this->out->element('p', 'form_guide', _('You can upload a custom StatusNet theme as a .ZIP archive.')); $this->out->element('p', 'form_guide', _('You can upload a custom StatusNet theme as a .ZIP archive.'));
$this->unli(); $this->unli();
} }
@ -509,16 +511,19 @@ class DesignAdminPanelForm extends AdminForm
$this->out->elementStart('fieldset', array('id' => $this->out->elementStart('fieldset', array('id' =>
'settings_design_background-image')); 'settings_design_background-image'));
// TRANS: Fieldset legend for theme background image.
$this->out->element('legend', null, _('Change background image')); $this->out->element('legend', null, _('Change background image'));
$this->out->elementStart('ul', 'form_data'); $this->out->elementStart('ul', 'form_data');
$this->li(); $this->li();
$this->out->element('label', array('for' => 'design_background-image_file'), $this->out->element('label', array('for' => 'design_background-image_file'),
// TRANS: Field label for background image on theme designer page.
_('Background')); _('Background'));
$this->out->element('input', array('name' => 'design_background-image_file', $this->out->element('input', array('name' => 'design_background-image_file',
'type' => 'file', 'type' => 'file',
'id' => 'design_background-image_file')); 'id' => 'design_background-image_file'));
$this->out->element('p', 'form_guide', $this->out->element('p', 'form_guide',
// TRANS: Form guide for background image upload form on theme designer page.
sprintf(_('You can upload a background image for the site. ' . sprintf(_('You can upload a background image for the site. ' .
'The maximum file size is %1$s.'), ImageFile::maxFileSize())); 'The maximum file size is %1$s.'), ImageFile::maxFileSize()));
$this->out->element('input', array('name' => 'MAX_FILE_SIZE', $this->out->element('input', array('name' => 'MAX_FILE_SIZE',
@ -568,11 +573,13 @@ class DesignAdminPanelForm extends AdminForm
'class' => 'radio'), 'class' => 'radio'),
// TRANS: Used as radio button label to not add a background image. // TRANS: Used as radio button label to not add a background image.
_('Off')); _('Off'));
// TRANS: Form guide for turning background image on or off on theme designer page.
$this->out->element('p', 'form_guide', _('Turn background image on or off.')); $this->out->element('p', 'form_guide', _('Turn background image on or off.'));
$this->unli(); $this->unli();
$this->li(); $this->li();
$this->out->checkbox('design_background-image_repeat', $this->out->checkbox('design_background-image_repeat',
// TRANS: Checkbox label to title background image on theme designer page.
_('Tile background image'), _('Tile background image'),
($design->disposition & BACKGROUND_TILE) ? true : false); ($design->disposition & BACKGROUND_TILE) ? true : false);
$this->unli(); $this->unli();
@ -587,7 +594,8 @@ class DesignAdminPanelForm extends AdminForm
$design = $this->out->design; $design = $this->out->design;
$this->out->elementStart('fieldset', array('id' => 'settings_design_color')); $this->out->elementStart('fieldset', array('id' => 'settings_design_color'));
$this->out->element('legend', null, _('Change colours')); // TRANS: Fieldset legend for theme colors.
$this->out->element('legend', null, _('Change colors'));
$this->out->elementStart('ul', 'form_data'); $this->out->elementStart('ul', 'form_data');
@ -597,6 +605,7 @@ class DesignAdminPanelForm extends AdminForm
$bgcolor = new WebColor($design->backgroundcolor); $bgcolor = new WebColor($design->backgroundcolor);
$this->li(); $this->li();
// TRANS: Field label for background color selector.
$this->out->element('label', array('for' => 'swatch-1'), _('Background')); $this->out->element('label', array('for' => 'swatch-1'), _('Background'));
$this->out->element('input', array('name' => 'design_background', $this->out->element('input', array('name' => 'design_background',
'type' => 'text', 'type' => 'text',
@ -610,6 +619,7 @@ class DesignAdminPanelForm extends AdminForm
$ccolor = new WebColor($design->contentcolor); $ccolor = new WebColor($design->contentcolor);
$this->li(); $this->li();
// TRANS: Field label for content color selector.
$this->out->element('label', array('for' => 'swatch-2'), _('Content')); $this->out->element('label', array('for' => 'swatch-2'), _('Content'));
$this->out->element('input', array('name' => 'design_content', $this->out->element('input', array('name' => 'design_content',
'type' => 'text', 'type' => 'text',
@ -623,6 +633,7 @@ class DesignAdminPanelForm extends AdminForm
$sbcolor = new WebColor($design->sidebarcolor); $sbcolor = new WebColor($design->sidebarcolor);
$this->li(); $this->li();
// TRANS: Field label for sidebar color selector.
$this->out->element('label', array('for' => 'swatch-3'), _('Sidebar')); $this->out->element('label', array('for' => 'swatch-3'), _('Sidebar'));
$this->out->element('input', array('name' => 'design_sidebar', $this->out->element('input', array('name' => 'design_sidebar',
'type' => 'text', 'type' => 'text',
@ -636,6 +647,7 @@ class DesignAdminPanelForm extends AdminForm
$tcolor = new WebColor($design->textcolor); $tcolor = new WebColor($design->textcolor);
$this->li(); $this->li();
// TRANS: Field label for text color selector.
$this->out->element('label', array('for' => 'swatch-4'), _('Text')); $this->out->element('label', array('for' => 'swatch-4'), _('Text'));
$this->out->element('input', array('name' => 'design_text', $this->out->element('input', array('name' => 'design_text',
'type' => 'text', 'type' => 'text',
@ -649,6 +661,7 @@ class DesignAdminPanelForm extends AdminForm
$lcolor = new WebColor($design->linkcolor); $lcolor = new WebColor($design->linkcolor);
$this->li(); $this->li();
// TRANS: Field label for link color selector.
$this->out->element('label', array('for' => 'swatch-5'), _('Links')); $this->out->element('label', array('for' => 'swatch-5'), _('Links'));
$this->out->element('input', array('name' => 'design_links', $this->out->element('input', array('name' => 'design_links',
'type' => 'text', 'type' => 'text',
@ -674,10 +687,12 @@ class DesignAdminPanelForm extends AdminForm
{ {
if (common_config('custom_css', 'enabled')) { if (common_config('custom_css', 'enabled')) {
$this->out->elementStart('fieldset', array('id' => 'settings_design_advanced')); $this->out->elementStart('fieldset', array('id' => 'settings_design_advanced'));
// TRANS: Fieldset legend for advanced theme design settings.
$this->out->element('legend', null, _('Advanced')); $this->out->element('legend', null, _('Advanced'));
$this->out->elementStart('ul', 'form_data'); $this->out->elementStart('ul', 'form_data');
$this->li(); $this->li();
// TRANS: Field label for custom CSS.
$this->out->element('label', array('for' => 'css'), _('Custom CSS')); $this->out->element('label', array('for' => 'css'), _('Custom CSS'));
$this->out->element('textarea', array('name' => 'css', $this->out->element('textarea', array('name' => 'css',
'id' => 'css', 'id' => 'css',
@ -699,17 +714,25 @@ class DesignAdminPanelForm extends AdminForm
function formActions() function formActions()
{ {
$this->out->submit('defaults', _('Use defaults'), 'submit form_action-default', // TRANS: Button text for resetting theme settings.
$this->out->submit('defaults', _m('BUTTON','Use defaults'), 'submit form_action-default',
// TRANS: Title for button for resetting theme settings.
'defaults', _('Restore default designs')); 'defaults', _('Restore default designs'));
$this->out->element('input', array('id' => 'settings_design_reset', $this->out->element('input', array('id' => 'settings_design_reset',
'type' => 'reset', 'type' => 'reset',
// TRANS: Button text for resetting theme settings.
'value' => 'Reset', 'value' => 'Reset',
'class' => 'submit form_action-primary', 'class' => 'submit form_action-primary',
// TRANS: Title for button for resetting theme settings.
'title' => _('Reset back to default'))); 'title' => _('Reset back to default')));
$this->out->submit('save', _('Save'), 'submit form_action-secondary', $this->out->submit('save',
'save', _('Save design')); // TRANS: Button text for saving theme settings.
_m('BUTTON','Save'),
'submit form_action-secondary',
'save',
// TRANS: Title for button for saving theme settings.
_('Save design'));
} }
} }

View File

@ -58,6 +58,7 @@ class DisfavorAction extends Action
{ {
parent::handle($args); parent::handle($args);
if (!common_logged_in()) { if (!common_logged_in()) {
// TRANS: Client error displayed when trying to remove a favorite while not logged in.
$this->clientError(_('Not logged in.')); $this->clientError(_('Not logged in.'));
return; return;
} }
@ -71,6 +72,7 @@ class DisfavorAction extends Action
$notice = Notice::staticGet($id); $notice = Notice::staticGet($id);
$token = $this->trimmed('token-'.$notice->id); $token = $this->trimmed('token-'.$notice->id);
if (!$token || $token != common_session_token()) { if (!$token || $token != common_session_token()) {
// TRANS: Client error displayed when the session token does not match or is not given.
$this->clientError(_('There was a problem with your session token. Try again, please.')); $this->clientError(_('There was a problem with your session token. Try again, please.'));
return; return;
} }
@ -78,12 +80,14 @@ class DisfavorAction extends Action
$fave->user_id = $user->id; $fave->user_id = $user->id;
$fave->notice_id = $notice->id; $fave->notice_id = $notice->id;
if (!$fave->find(true)) { if (!$fave->find(true)) {
// TRANS: Client error displayed when trying to remove favorite status for a notice that is not a favorite.
$this->clientError(_('This notice is not a favorite!')); $this->clientError(_('This notice is not a favorite!'));
return; return;
} }
$result = $fave->delete(); $result = $fave->delete();
if (!$result) { if (!$result) {
common_log_db_error($fave, 'DELETE', __FILE__); common_log_db_error($fave, 'DELETE', __FILE__);
// TRANS: Server error displayed when removing a favorite from the database fails.
$this->serverError(_('Could not delete favorite.')); $this->serverError(_('Could not delete favorite.'));
return; return;
} }
@ -91,6 +95,7 @@ class DisfavorAction extends Action
if ($this->boolean('ajax')) { if ($this->boolean('ajax')) {
$this->startHTML('text/xml;charset=utf-8'); $this->startHTML('text/xml;charset=utf-8');
$this->elementStart('head'); $this->elementStart('head');
// TRANS: Title for page on which favorites can be added.
$this->element('title', null, _('Add to favorites')); $this->element('title', null, _('Add to favorites'));
$this->elementEnd('head'); $this->elementEnd('head');
$this->elementStart('body'); $this->elementStart('body');
@ -105,4 +110,3 @@ class DisfavorAction extends Action
} }
} }
} }

View File

@ -1,5 +1,4 @@
<?php <?php
/** /**
* Documentation action. * Documentation action.
* *
@ -83,7 +82,6 @@ class DocAction extends Action
* *
* @return void * @return void
*/ */
function showPageTitle() function showPageTitle()
{ {
$this->element('h1', array('class' => 'entry-title'), $this->title()); $this->element('h1', array('class' => 'entry-title'), $this->title());
@ -96,7 +94,6 @@ class DocAction extends Action
* *
* @return void. * @return void.
*/ */
function showContentBlock() function showContentBlock()
{ {
$this->elementStart('div', array('id' => 'content', 'class' => 'hentry')); $this->elementStart('div', array('id' => 'content', 'class' => 'hentry'));
@ -117,7 +114,6 @@ class DocAction extends Action
* *
* @return void * @return void
*/ */
function showContent() function showContent()
{ {
$this->raw($this->output); $this->raw($this->output);
@ -142,7 +138,6 @@ class DocAction extends Action
* *
* @return boolean read-only flag (false) * @return boolean read-only flag (false)
*/ */
function isReadOnly($args) function isReadOnly($args)
{ {
return true; return true;
@ -155,7 +150,9 @@ class DocAction extends Action
$this->filename = $this->getFilename(); $this->filename = $this->getFilename();
if (empty($this->filename)) { if (empty($this->filename)) {
throw new ClientException(sprintf(_('No such document "%s"'), $this->title), 404); // TRANS: Client exception thrown when requesting a document from the documentation that does not exist.
// TRANS: %s is the non-existing document.
throw new ClientException(sprintf(_('No such document "%s".'), $this->title), 404);
} }
$c = file_get_contents($this->filename); $c = file_get_contents($this->filename);

View File

@ -213,6 +213,7 @@ class ProfilesettingsAction extends AccountSettingsAction
// CSRF protection // CSRF protection
$token = $this->trimmed('token'); $token = $this->trimmed('token');
if (!$token || $token != common_session_token()) { if (!$token || $token != common_session_token()) {
// TRANS: Form validation error.
$this->showForm(_('There was a problem with your session token. '. $this->showForm(_('There was a problem with your session token. '.
'Try again, please.')); 'Try again, please.'));
return; return;
@ -459,6 +460,7 @@ class ProfilesettingsAction extends AccountSettingsAction
$this->elementStart('li'); $this->elementStart('li');
$this->element('a', $this->element('a',
array('href' => common_local_url('backupaccount')), array('href' => common_local_url('backupaccount')),
// TRANS: Option in profile settings to create a backup of the account of the currently logged in user.
_('Backup account')); _('Backup account'));
$this->elementEnd('li'); $this->elementEnd('li');
} }
@ -466,6 +468,7 @@ class ProfilesettingsAction extends AccountSettingsAction
$this->elementStart('li'); $this->elementStart('li');
$this->element('a', $this->element('a',
array('href' => common_local_url('deleteaccount')), array('href' => common_local_url('deleteaccount')),
// TRANS: Option in profile settings to delete the account of the currently logged in user.
_('Delete account')); _('Delete account'));
$this->elementEnd('li'); $this->elementEnd('li');
} }
@ -473,6 +476,7 @@ class ProfilesettingsAction extends AccountSettingsAction
$this->elementStart('li'); $this->elementStart('li');
$this->element('a', $this->element('a',
array('href' => common_local_url('restoreaccount')), array('href' => common_local_url('restoreaccount')),
// TRANS: Option in profile settings to restore the account of the currently logged in user from a backup.
_('Restore account')); _('Restore account'));
$this->elementEnd('li'); $this->elementEnd('li');
} }

View File

@ -41,7 +41,6 @@ if (!defined('STATUSNET')) {
* @link http://status.net/ * @link http://status.net/
* *
*/ */
class DeleteUserForm extends ProfileActionForm class DeleteUserForm extends ProfileActionForm
{ {
/** /**
@ -49,7 +48,6 @@ class DeleteUserForm extends ProfileActionForm
* *
* @return string Name of the action, lowercased. * @return string Name of the action, lowercased.
*/ */
function target() function target()
{ {
return 'deleteuser'; return 'deleteuser';
@ -60,9 +58,9 @@ class DeleteUserForm extends ProfileActionForm
* *
* @return string Title of the form, internationalized * @return string Title of the form, internationalized
*/ */
function title() function title()
{ {
// TRANS: Title of form for deleting a user.
return _('Delete'); return _('Delete');
} }
@ -71,9 +69,9 @@ class DeleteUserForm extends ProfileActionForm
* *
* @return string description of the form, internationalized * @return string description of the form, internationalized
*/ */
function description() function description()
{ {
// TRANS: Description of form for deleting a user.
return _('Delete this user'); return _('Delete this user');
} }
} }