<?php
-
/**
* Repeat action.
*
$this->user = common_current_user();
if (empty($this->user)) {
+ // TRANS: Client error displayed when trying to repeat a notice while not logged in.
$this->clientError(_('Only logged-in users can repeat notices.'));
return false;
}
$id = $this->trimmed('notice');
if (empty($id)) {
+ // TRANS: Client error displayed when trying to repeat a notice while not providing a notice ID.
$this->clientError(_('No notice specified.'));
return false;
}
$this->notice = Notice::staticGet('id', $id);
if (empty($this->notice)) {
+ // TRANS: Client error displayed when trying to repeat a non-existing notice.
$this->clientError(_('No notice specified.'));
return false;
}
- if ($this->user->id == $this->notice->profile_id) {
- $this->clientError(_('You cannot repeat your own notice.'));
- return false;
- }
-
$token = $this->trimmed('token-'.$id);
if (empty($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.'));
return false;
}
- $profile = $this->user->getProfile();
-
- if ($profile->hasRepeated($id)) {
- $this->clientError(_('You already repeated that notice.'));
- return false;
- }
-
return true;
}
{
$repeat = $this->notice->repeat($this->user->id, 'web');
-
-
if ($this->boolean('ajax')) {
$this->startHTML('text/xml;charset=utf-8');
$this->elementStart('head');
+ // TRANS: Title after repeating a notice.
$this->element('title', null, _('Repeated'));
$this->elementEnd('head');
$this->elementStart('body');
$this->element('p', array('id' => 'repeat_response',
'class' => 'repeated'),
+ // TRANS: Confirmation text after repeating a notice.
_('Repeated!'));
$this->elementEnd('body');
$this->elementEnd('html');
} else {
- // FIXME!
+ // @todo FIXME!
}
}
}