/** * Moves thread * @request destinationBoardId - id of destination board * @request rootMessageId - thread id */ public function moveThread() { // permission check needed here if (!$this->wg->User->isAllowed('wallmessagemove')) { $this->displayRestrictionError(); return false; // skip rendering } $this->status = 'error'; $destinationId = $this->getVal('destinationBoardId', ''); $threadId = $this->getVal('rootMessageId', ''); if (empty($destinationId)) { $this->errormsg = wfMsg('wall-action-move-validation-select-wall'); return true; } $wall = Wall::newFromId($destinationId); $thread = WallThread::newFromId($threadId); if (empty($wall)) { $this->errormsg = 'unknown'; } $thread->move($wall, $this->wg->User); $this->status = 'ok'; }