Moderation queue management overhaul
[GitHub/WoltLab/WCF.git] / wcfsetup / install / files / lib / data / moderation / queue / ModerationQueueEditor.class.php
1 <?php
2 namespace wcf\data\moderation\queue;
3 use wcf\data\DatabaseObjectEditor;
4 use wcf\system\moderation\queue\ModerationQueueManager;
5
6 /**
7 * Extends the moderation queue object with functions to create, update and delete queue entries.
8 *
9 * @author Alexander Ebert
10 * @copyright 2001-2014 WoltLab GmbH
11 * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
12 * @package com.woltlab.wcf
13 * @subpackage data.moderation.queue
14 * @category Community Framework
15 */
16 class ModerationQueueEditor extends DatabaseObjectEditor {
17 /**
18 * @see \wcf\data\DatabaseObjectEditor::$baseClass
19 */
20 protected static $baseClass = 'wcf\data\moderation\queue\ModerationQueue';
21
22 /**
23 * Marks this entry as done.
24 *
25 * @deprecated 2.1 - Please use markAsConfirmed() or markAsRejected()
26 */
27 public function markAsDone() {
28 $this->update(array('status' => ModerationQueue::STATUS_DONE));
29
30 // reset moderation count
31 ModerationQueueManager::getInstance()->resetModerationCount();
32 }
33
34 /**
35 * Marks this entry as confirmed, e.g. report was justified and content was deleted or
36 * content was approved.
37 */
38 public function markAsConfirmed() {
39 $this->update(array('status' => ModerationQueue::STATUS_CONFIRMED));
40
41 // reset moderation count
42 ModerationQueueManager::getInstance()->resetModerationCount();
43 }
44
45 /**
46 * Marks this entry as rejected, e.g. report was unjustified or content approval was denied.
47 */
48 public function markAsRejected() {
49 $this->update(array('status' => ModerationQueue::STATUS_REJECTED));
50
51 // reset moderation count
52 ModerationQueueManager::getInstance()->resetModerationCount();
53 }
54
55 /**
56 * Marks this entry as in progress.
57 */
58 public function markAsInProgress() {
59 $this->update(array('status' => ModerationQueue::STATUS_PROCESSING));
60 }
61 }