* change i18n for confirmation string to make a bit more certain that the confirmation string is consistent in all messages where it is used.
* add translator documentation. * remove superfluous whitespace.
This commit is contained in:
parent
224a7986af
commit
6e1dfab1b9
@ -4,7 +4,7 @@
|
|||||||
* Copyright (C) 2010, StatusNet, Inc.
|
* Copyright (C) 2010, StatusNet, Inc.
|
||||||
*
|
*
|
||||||
* Delete your own account
|
* Delete your own account
|
||||||
*
|
*
|
||||||
* 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
|
||||||
@ -36,7 +36,7 @@ if (!defined('STATUSNET')) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Action to delete your own account
|
* Action to delete your own account
|
||||||
*
|
*
|
||||||
* Note that this is distinct from DeleteuserAction, which see. I thought
|
* Note that this is distinct from DeleteuserAction, which see. I thought
|
||||||
* that making that action do both things (delete another user and delete the
|
* that making that action do both things (delete another user and delete the
|
||||||
* current user) would open a lot of holes. I'm open to refactoring, however.
|
* current user) would open a lot of holes. I'm open to refactoring, however.
|
||||||
@ -48,7 +48,6 @@ 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 DeleteaccountAction extends Action
|
class DeleteaccountAction extends Action
|
||||||
{
|
{
|
||||||
private $_complete = false;
|
private $_complete = false;
|
||||||
@ -61,19 +60,20 @@ class DeleteaccountAction extends Action
|
|||||||
*
|
*
|
||||||
* @return boolean true
|
* @return boolean true
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function prepare($argarray)
|
function prepare($argarray)
|
||||||
{
|
{
|
||||||
parent::prepare($argarray);
|
parent::prepare($argarray);
|
||||||
|
|
||||||
$cur = common_current_user();
|
$cur = common_current_user();
|
||||||
|
|
||||||
if (empty($cur)) {
|
if (empty($cur)) {
|
||||||
|
// TRANS: Client exception displayed trying to delete a user account while not logged in.
|
||||||
throw new ClientException(_("Only logged-in users ".
|
throw new ClientException(_("Only logged-in users ".
|
||||||
"can delete their account."), 403);
|
"can delete their account."), 403);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$cur->hasRight(Right::DELETEACCOUNT)) {
|
if (!$cur->hasRight(Right::DELETEACCOUNT)) {
|
||||||
|
// TRANS: Client exception displayed trying to delete a user account without have the rights to do that.
|
||||||
throw new ClientException(_("You cannot delete your account."), 403);
|
throw new ClientException(_("You cannot delete your account."), 403);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -87,7 +87,6 @@ class DeleteaccountAction extends Action
|
|||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function handle($argarray=null)
|
function handle($argarray=null)
|
||||||
{
|
{
|
||||||
parent::handle($argarray);
|
parent::handle($argarray);
|
||||||
@ -109,7 +108,6 @@ class DeleteaccountAction extends Action
|
|||||||
*
|
*
|
||||||
* @return boolean is read only action?
|
* @return boolean is read only action?
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function isReadOnly($args)
|
function isReadOnly($args)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
@ -122,7 +120,6 @@ class DeleteaccountAction 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
|
||||||
@ -137,7 +134,6 @@ class DeleteaccountAction extends Action
|
|||||||
*
|
*
|
||||||
* @return string etag http header
|
* @return string etag http header
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function etag()
|
function etag()
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
@ -145,7 +141,7 @@ class DeleteaccountAction extends Action
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete the current user's account
|
* Delete the current user's account
|
||||||
*
|
*
|
||||||
* Checks for the "I am sure." string to make sure the user really
|
* Checks for the "I am sure." string to make sure the user really
|
||||||
* wants to delete their account.
|
* wants to delete their account.
|
||||||
*
|
*
|
||||||
@ -156,13 +152,16 @@ class DeleteaccountAction extends Action
|
|||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function deleteAccount()
|
function deleteAccount()
|
||||||
{
|
{
|
||||||
$this->checkSessionToken();
|
$this->checkSessionToken();
|
||||||
|
// !!! If this string is changed, it also needs to be changed in DeleteAccountForm::formData()
|
||||||
if ($this->trimmed('iamsure') != _('I am sure.')) {
|
// TRANS: Confirmation text for user deletion. The user has to type this exactly the same, including punctuation.
|
||||||
$this->_error = _('You must write "I am sure." exactly in the box.');
|
$iamsure = _('I am sure.');
|
||||||
|
if ($this->trimmed('iamsure') != $iamsure ) {
|
||||||
|
// TRANS: Notification for user about the text that must be input to be able to delete a user account.
|
||||||
|
// TRANS: %s is the text that needs to be input.
|
||||||
|
$this->_error = sprintf(_('You must write "%s" exactly in the box.', $iamsure));
|
||||||
$this->showPage();
|
$this->showPage();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -191,7 +190,7 @@ class DeleteaccountAction extends Action
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Shows the page content.
|
* Shows the page content.
|
||||||
*
|
*
|
||||||
* If the deletion is complete, just shows a completion message.
|
* If the deletion is complete, just shows a completion message.
|
||||||
*
|
*
|
||||||
* Otherwise, shows the deletion form.
|
* Otherwise, shows the deletion form.
|
||||||
@ -199,11 +198,11 @@ class DeleteaccountAction extends Action
|
|||||||
* @return void
|
* @return void
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function showContent()
|
function showContent()
|
||||||
{
|
{
|
||||||
if ($this->_complete) {
|
if ($this->_complete) {
|
||||||
$this->element('p', 'confirmation',
|
$this->element('p', 'confirmation',
|
||||||
|
// TRANS: Confirmation that a user account has been deleted.
|
||||||
_('Account deleted.'));
|
_('Account deleted.'));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -216,7 +215,7 @@ class DeleteaccountAction extends Action
|
|||||||
$form = new DeleteAccountForm($this);
|
$form = new DeleteAccountForm($this);
|
||||||
$form->show();
|
$form->show();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Show the title of the page
|
* Show the title of the page
|
||||||
*
|
*
|
||||||
@ -225,13 +224,14 @@ class DeleteaccountAction extends Action
|
|||||||
|
|
||||||
function title()
|
function title()
|
||||||
{
|
{
|
||||||
|
// TRANS: Page title for page on which a user account can be deleted.
|
||||||
return _('Delete account');
|
return _('Delete account');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Form for deleting your account
|
* Form for deleting your account
|
||||||
*
|
*
|
||||||
* Note that this mostly is here to keep you from accidentally deleting your
|
* Note that this mostly is here to keep you from accidentally deleting your
|
||||||
* account.
|
* account.
|
||||||
*
|
*
|
||||||
@ -242,7 +242,6 @@ class DeleteaccountAction 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 DeleteAccountForm extends Form
|
class DeleteAccountForm extends Form
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
@ -250,7 +249,6 @@ class DeleteAccountForm extends Form
|
|||||||
*
|
*
|
||||||
* @return string the form's class
|
* @return string the form's class
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function formClass()
|
function formClass()
|
||||||
{
|
{
|
||||||
return 'form_profile_delete';
|
return 'form_profile_delete';
|
||||||
@ -261,7 +259,6 @@ class DeleteAccountForm extends Form
|
|||||||
*
|
*
|
||||||
* @return string the form's action URL
|
* @return string the form's action URL
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function action()
|
function action()
|
||||||
{
|
{
|
||||||
return common_local_url('deleteaccount');
|
return common_local_url('deleteaccount');
|
||||||
@ -269,51 +266,60 @@ class DeleteAccountForm extends Form
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Output form data
|
* Output form data
|
||||||
*
|
*
|
||||||
* Instructions plus an 'i am sure' entry box.
|
* Instructions plus an 'i am sure' entry box.
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
|
|
||||||
function formData()
|
function formData()
|
||||||
{
|
{
|
||||||
$cur = common_current_user();
|
$cur = common_current_user();
|
||||||
|
|
||||||
$msg = _('<p>This will <strong>permanently delete</strong> '.
|
// TRANS: Form text for user deletion form.
|
||||||
'your account data from this server. </p>');
|
$msg = '<p>' . _('This will <strong>permanently delete</strong> '.
|
||||||
|
'your account data from this server.') . '</p>';
|
||||||
|
|
||||||
if ($cur->hasRight(Right::BACKUPACCOUNT)) {
|
if ($cur->hasRight(Right::BACKUPACCOUNT)) {
|
||||||
$msg .= sprintf(_('<p>You are strongly advised to '.
|
// TRANS: Additional form text for user deletion form shown if a user has account backup rights.
|
||||||
|
// TRANS: %s is a URL to the backup page.
|
||||||
|
$msg .= '<p>' . sprintf(_('You are strongly advised to '.
|
||||||
'<a href="%s">back up your data</a>'.
|
'<a href="%s">back up your data</a>'.
|
||||||
' before deletion.</p>'),
|
' before deletion.'),
|
||||||
common_local_url('backupaccount'));
|
common_local_url('backupaccount')) . '</p>';
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->out->elementStart('p');
|
$this->out->elementStart('p');
|
||||||
$this->out->raw($msg);
|
$this->out->raw($msg);
|
||||||
$this->out->elementEnd('p');
|
$this->out->elementEnd('p');
|
||||||
|
|
||||||
|
// !!! If this string is changed, it also needs to be changed in class DeleteaccountAction.
|
||||||
|
// TRANS: Confirmation text for user deletion. The user has to type this exactly the same, including punctuation.
|
||||||
|
$iamsure = _("I am sure.");
|
||||||
$this->out->input('iamsure',
|
$this->out->input('iamsure',
|
||||||
|
// TRANS: Field label for delete account confirmation entry.
|
||||||
_('Confirm'),
|
_('Confirm'),
|
||||||
null,
|
null,
|
||||||
_('Enter "I am sure." to confirm that '.
|
// TRANS: Input title for the delete account field.
|
||||||
'you want to delete your account.'));
|
// TRANS: %s is the text that needs to be input.
|
||||||
|
sprintf(_('Enter "%s" to confirm that '.
|
||||||
|
'you want to delete your account.'),$iamsure ));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 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: Button text for user account deletion.
|
||||||
_m('BUTTON', 'Delete'),
|
_m('BUTTON', 'Delete'),
|
||||||
'submit',
|
'submit',
|
||||||
null,
|
null,
|
||||||
_('Permanently your account'));
|
// TRANS: Button title for user account deletion.
|
||||||
|
_('Permanently delete your account'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user