From: Zach Copley Date: Fri, 1 Apr 2011 09:35:05 +0000 (-0700) Subject: Some work towards allowing revisions X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=9cea85065c6b039c99aa373132a91eae2e320ebb;p=quix0rs-gnu-social.git Some work towards allowing revisions --- diff --git a/plugins/QnA/QnAPlugin.php b/plugins/QnA/QnAPlugin.php index 228b571a6e..9a05eeb0b2 100644 --- a/plugins/QnA/QnAPlugin.php +++ b/plugins/QnA/QnAPlugin.php @@ -82,13 +82,14 @@ class QnAPlugin extends MicroAppPlugin case 'QnanewanswerAction': case 'QnashowquestionAction': case 'QnashowanswerAction': + case 'QnareviseanswerAction': case 'QnavoteAction': include_once $dir . '/actions/' . strtolower(mb_substr($cls, 0, -6)) . '.php'; return false; case 'QnaquestionForm': case 'QnaanswerForm': - case 'QnaansweredForm': + case 'QnareviseanswerForm': case 'QnavoteForm': include_once $dir . '/lib/' . strtolower($cls).'.php'; break; @@ -327,7 +328,7 @@ class QnAPlugin extends MicroAppPlugin $answer = $question->getAnswer($profile); if ($answer) { // User has already answer; show the results. - $form = new QnaansweredForm($answer, $out); + $form = new QnareviseanswerForm($answer, $out); } else { $form = new QnaanswerForm($question, $out); } diff --git a/plugins/QnA/actions/qnanewanswer.php b/plugins/QnA/actions/qnanewanswer.php index d2558380e9..09d111040d 100644 --- a/plugins/QnA/actions/qnanewanswer.php +++ b/plugins/QnA/actions/qnanewanswer.php @@ -158,8 +158,7 @@ class QnanewanswerAction extends Action $this->element('title', null, _m('Answers')); $this->elementEnd('head'); $this->elementStart('body'); - $form = new QnaanswerForm($this->question, $this); - $form->show(); + $this->raw() $this->elementEnd('body'); $this->elementEnd('html'); } else { diff --git a/plugins/QnA/lib/qnaansweredform.php b/plugins/QnA/lib/qnaansweredform.php deleted file mode 100644 index b1500140f3..0000000000 --- a/plugins/QnA/lib/qnaansweredform.php +++ /dev/null @@ -1,122 +0,0 @@ -. - * - * @category QnA - * @package StatusNet - * @author Zach Copley - * @copyright 2011 StatusNet, Inc. - * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 - * @link http://status.net/ - */ - -if (!defined('STATUSNET')) { - // This check helps protect against security problems; - // your code file can't be executed directly from the web. - exit(1); -} - -/** - * Form to add a new answer to a question - * - * @category QnA - * @package StatusNet - * @author Zach Copley - * @copyright 2011 StatusNet, Inc. - * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 - * @link http://status.net/ - */ -class QnaansweredForm extends Form -{ - protected $question; - protected $answer; - - /** - * Construct a new answer form - * - * @param QnA_Answer $answer - * @param HTMLOutputter $out output channel - * - * @return void - */ - function __construct(QnA_Answer $answer, HTMLOutputter $out) - { - parent::__construct($out); - $this->question = $answer->getQuestion(); - $this->answer = $answer; - } - - /** - * ID of the form - * - * @return int ID of the form - */ - function id() - { - return 'answered-form'; - } - - /** - * class of the form - * - * @return string class of the form - */ - function formClass() - { - return 'form_settings ajax'; - } - - /** - * Action of the form - * - * @return string URL of the action - */ - function action() - { - return common_local_url('qnareviseanswer', array('id' => $this->question->id)); - } - - /** - * Data elements of the form - * - * @return void - */ - function formData() - { - $question = $this->question; - $out = $this->out; - $id = "question-" . $question->id; - - $out->element('p', 'Your answer to:', $question->title); - $out->element('input', array('type' => 'text', 'name' => 'answer')); - } - - /** - * Action elements - * - * @return void - */ - function formActions() - { - // TRANS: Button text for submitting a poll response. - $this->out->submit('submit', _m('BUTTON', 'Submit')); - } -} diff --git a/plugins/QnA/lib/qnareviseanswerform.php b/plugins/QnA/lib/qnareviseanswerform.php new file mode 100644 index 0000000000..48f47e5e98 --- /dev/null +++ b/plugins/QnA/lib/qnareviseanswerform.php @@ -0,0 +1,122 @@ +. + * + * @category QnA + * @package StatusNet + * @author Zach Copley + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ + +if (!defined('STATUSNET')) { + // This check helps protect against security problems; + // your code file can't be executed directly from the web. + exit(1); +} + +/** + * Form to revise a question + * + * @category QnA + * @package StatusNet + * @author Zach Copley + * @copyright 2011 StatusNet, Inc. + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0 + * @link http://status.net/ + */ +class QnareviseanswerForm extends Form +{ + protected $question; + protected $answer; + + /** + * Construct a new answer form + * + * @param QnA_Answer $answer + * @param HTMLOutputter $out output channel + * + * @return void + */ + function __construct(QnA_Answer $answer, HTMLOutputter $out) + { + parent::__construct($out); + $this->question = $answer->getQuestion(); + $this->answer = $answer; + } + + /** + * ID of the form + * + * @return int ID of the form + */ + function id() + { + return 'answered-form'; + } + + /** + * class of the form + * + * @return string class of the form + */ + function formClass() + { + return 'form_settings ajax'; + } + + /** + * Action of the form + * + * @return string URL of the action + */ + function action() + { + return common_local_url('qnareviseanswer', array('id' => $this->question->id)); + } + + /** + * Data elements of the form + * + * @return void + */ + function formData() + { + $question = $this->question; + $out = $this->out; + $id = "question-" . $question->id; + + $out->element('p', 'Your answer to:', $question->title); + $out->textarea('answerText', 'You said:', $this->answer->content); + } + + /** + * Action elements + * + * @return void + */ + function formActions() + { + // TRANS: Button text for submitting a poll response. + $this->out->submit('submit', _m('BUTTON', 'Submit')); + } +}