-
Notifications
You must be signed in to change notification settings - Fork 247
Expand file tree
/
Copy pathConfigHandler.class.php
More file actions
42 lines (40 loc) · 1.54 KB
/
ConfigHandler.class.php
File metadata and controls
42 lines (40 loc) · 1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
class ConfigHandler implements Handler {
public function __construct($configId = null) {
//we need nothing to load
}
public function handle($action) {
try {
switch ($action) {
case DConfigAction::UPDATE_CONFIG:
AccessControl::getInstance()->checkPermission(DConfigAction::UPDATE_CONFIG_PERM);
ConfigUtils::updateConfig($_POST);
UI::addMessage(UI::SUCCESS, "Config was updated!");
break;
case DConfigAction::REBUILD_CACHE:
AccessControl::getInstance()->checkPermission(DConfigAction::REBUILD_CACHE_PERM);
$ret = ConfigUtils::rebuildCache();
UI::addMessage(UI::SUCCESS, "Updated all chunks and hashlists. Corrected " . $ret[0] . " chunks and " . $ret[1] . " hashlists.");
break;
case DConfigAction::RESCAN_FILES:
AccessControl::getInstance()->checkPermission(DConfigAction::RESCAN_FILES_PERM);
ConfigUtils::scanFiles();
UI::addMessage(UI::SUCCESS, "File scan was successful, no actions required!");
break;
case DConfigAction::CLEAR_ALL:
AccessControl::getInstance()->checkPermission(DConfigAction::CLEAR_ALL_PERM);
ConfigUtils::clearAll(Login::getInstance()->getUser());
break;
default:
UI::addMessage(UI::ERROR, "Invalid action!");
break;
}
}
catch (HTException $e) {
UI::addMessage(UI::ERROR, $e->getMessage());
}
catch (HTMessages $m) {
UI::addMessage(UI::ERROR, $m->getHTMLMessage());
}
}
}