Commit | Line | Data |
---|---|---|
fc69b61d MW |
1 | <?php |
2 | namespace wcf\system\moderation\queue; | |
3 | use wcf\data\moderation\queue\ModerationQueue; | |
4 | ||
5 | /** | |
6 | * Default interface for moderation queue handlers. | |
7 | * | |
8 | * @author Alexander Ebert | |
ca4ba303 | 9 | * @copyright 2001-2014 WoltLab GmbH |
fc69b61d | 10 | * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php> |
f4f05aa5 | 11 | * @package com.woltlab.wcf |
fc69b61d MW |
12 | * @subpackage system.moderation.queue |
13 | * @category Community Framework | |
14 | */ | |
15 | interface IModerationQueueHandler { | |
16 | /** | |
17 | * Creates queue assignments for matching object ids. | |
18 | * | |
0ad90fc3 | 19 | * @param array<\wcf\data\moderation\queue\ModerationQueue> $queues |
fc69b61d MW |
20 | */ |
21 | public function assignQueues(array $queues); | |
22 | ||
23 | /** | |
24 | * Returns the container id for current object id, may return 0. | |
25 | * | |
26 | * @param integer $objectID | |
27 | * @return integer | |
28 | */ | |
29 | public function getContainerID($objectID); | |
30 | ||
9bf4ce63 AE |
31 | /** |
32 | * Validates object ids and returns orphaned queue ids. | |
33 | * | |
34 | * @param array<integer> $queues | |
35 | * @return array<integer> | |
36 | */ | |
37 | public function identifyOrphans(array $queues); | |
38 | ||
fc69b61d MW |
39 | /** |
40 | * Returns true if given object id is valid. | |
41 | * | |
42 | * @param integer $objectID | |
43 | * @return boolean | |
44 | */ | |
45 | public function isValid($objectID); | |
46 | ||
47 | /** | |
48 | * Populates object properties for viewing. | |
49 | * | |
0ad90fc3 | 50 | * @param array<\wcf\data\moderation\queue\ViewableModerationQueue> $queues |
fc69b61d MW |
51 | */ |
52 | public function populate(array $queues); | |
53 | ||
54 | /** | |
55 | * Removes affected content. It is up to the processing class to either | |
56 | * soft-delete the content or remove it permanently. | |
57 | * | |
0ad90fc3 | 58 | * @param \wcf\data\moderation\queue\ModerationQueue $queue |
fc69b61d MW |
59 | * @param string $message |
60 | */ | |
61 | public function removeContent(ModerationQueue $queue, $message); | |
62 | ||
b91f1424 TD |
63 | /** |
64 | * Returns true if the affected content may be removed. | |
65 | * | |
66 | * @return boolean | |
67 | */ | |
68 | public function canRemoveContent(ModerationQueue $queue); | |
69 | ||
fc69b61d MW |
70 | /** |
71 | * Removes queses from database, should only be called if the referenced | |
72 | * object is permanently deleted. | |
73 | * | |
74 | * @param array<integer> $objectIDs | |
75 | */ | |
76 | public function removeQueues(array $objectIDs); | |
77 | } |