/** * Update quiz */ public static function updateQuiz() { wfProfileIn(__METHOD__); $wgRequest = F::app()->getGlobal('wgRequest'); $wgUser = F::app()->getGlobal('wgUser'); $res = array(); $quizId = $wgRequest->getInt('quizId'); $quiz = WikiaQuiz::newFromId($quizId); if (empty($quiz) || !$quiz->exists()) { $res = array('success' => false, 'error' => F::app()->renderView('Error', 'Index', array(wfMsg('wikiaquiz-error-invalid-quiz')))); } else { $error = null; $content = self::parseCreateEditQuizRequest($wgRequest, $quiz, $error); if ($error) { $res = array('success' => false, 'error' => F::app()->renderView('Error', 'Index', array($error))); } else { $article = Article::newFromID($quizId); $status = $article->doEdit($content, 'Quiz Updated', EDIT_UPDATE, false, $wgUser); $title_object = $article->getTitle(); // @todo check status object $res = array('success' => true, 'quizId' => $article->getID(), 'url' => $title_object->getLocalUrl(), 'title' => $title_object->getPrefixedText()); } } wfProfileOut(__METHOD__); return $res; }
function __construct($title) { parent::__construct($title); // quiz object is linked to NS_WIKIA_QUIZ namespace $quizTitle = F::build('Title', array($title->getText(), NS_WIKIA_QUIZ), 'newFromText'); $this->mQuiz = WikiaQuiz::newFromTitle($quizTitle); if (!empty($this->mQuiz)) { $this->mQuiz->getData(); // lazy load data } }
function __construct($title) { parent::__construct($title); $this->mQuiz = WikiaQuiz::newFromArticle($this); }
public function executeEditQuiz($params) { $title = Title::newFromText($params['title'], NS_WIKIA_QUIZ); if (is_object($title) && $title->exists()) { $this->quiz = WikiaQuiz::NewFromTitle($title); $this->data = $this->quiz->getData(); } }