* StatusNet - the distributed open-source microblogging tool
* Copyright (C) 2011, StatusNet, Inc.
*
- * Add a new Poll
+ * Respond to a Poll
*
* PHP version 5
*
}
/**
- * Add a new Poll
+ * Respond to a Poll
*
* @category Poll
* @package StatusNet
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
* @link http://status.net/
*/
-
class RespondPollAction extends Action
{
protected $user = null;
*
* @return string Action title
*/
-
function title()
{
+ // TRANS: Page title for poll response.
return _m('Poll response');
}
*
* @return boolean true
*/
-
function prepare($argarray)
{
parent::prepare($argarray);
$this->user = common_current_user();
if (empty($this->user)) {
- throw new ClientException(_m("Must be logged in to respond to a poll."),
+ // TRANS: Client exception thrown trying to respond to a poll while not logged in.
+ throw new ClientException(_m("You must be logged in to respond to a poll."),
403);
}
$id = $this->trimmed('id');
$this->poll = Poll::staticGet('id', $id);
if (empty($this->poll)) {
- throw new ClientException(_m("Invalid or missing poll."), 404);
+ // TRANS: Client exception thrown trying to respond to a non-existing poll.
+ throw new ClientException(_m('Invalid or missing poll.'), 404);
}
$selection = intval($this->trimmed('pollselection'));
if ($selection < 1 || $selection > count($this->poll->getOptions())) {
+ // TRANS: Client exception thrown responding to a poll with an invalid answer.
throw new ClientException(_m('Invalid poll selection.'));
}
$this->selection = $selection;
*
* @return void
*/
-
function handle($argarray=null)
{
parent::handle($argarray);
*
* @return void
*/
-
function respondPoll()
{
try {
*
* @return void
*/
-
function showContent()
{
if (!empty($this->error)) {
*
* @return boolean is read only action?
*/
-
function isReadOnly($args)
{
if ($_SERVER['REQUEST_METHOD'] == 'GET' ||