/** * Recovers all marked threads. */ public function recoverAll() { if (!empty($this->threadIDs)) { list($boards, $boardIDs) = ThreadEditor::getBoards($this->threadIDs); // check permissions $sql = "SELECT \tboardID\n\t\t\t\tFROM \twbb" . WBB_N . "_thread\n\t\t\t\tWHERE \tthreadID IN (" . $this->threadIDs . ")"; $result = WCF::getDB()->sendQuery($sql); while ($row = WCF::getDB()->fetchArray($result)) { $boards[$row['boardID']]->checkModeratorPermission('canDeleteThreadCompletely'); } ThreadEditor::restoreAll($this->threadIDs); ThreadEditor::unmarkAll(); // refresh counts BoardEditor::refreshAll($boardIDs); // set last post foreach ($boards as $board) { $board->setLastPosts(); } self::resetCache(); } HeaderUtil::redirect($this->url); exit; }