mirror of
https://bitbucket.org/jsuto/piler.git
synced 2024-12-25 21:20:12 +01:00
8a75e5f62c
Signed-off-by: Janos SUTO <sj@acts.hu>
67 lines
2.1 KiB
PHP
67 lines
2.1 KiB
PHP
<?php
|
|
|
|
|
|
class ControllerMessageBulkremove extends Controller {
|
|
|
|
public function index(){
|
|
|
|
$this->id = "content";
|
|
$this->template = "message/bulkremove.tpl";
|
|
$this->layout = "common/layout-empty";
|
|
|
|
$session = Registry::get('session');
|
|
$request = Registry::get('request');
|
|
$db = Registry::get('db');
|
|
|
|
$this->load->model('search/search');
|
|
$this->load->model('search/message');
|
|
$this->load->model('user/user');
|
|
|
|
|
|
$this->document->title = $this->data['text_message'];
|
|
|
|
if(!isset($this->request->post['idlist']) || $this->request->post['idlist'] == '') { die("no idlist parameter given"); }
|
|
if(!isset($this->request->post['reason']) || $this->request->post['reason'] == '') { die("no reason parameter given"); }
|
|
|
|
$idlist = $this->model_search_search->check_your_permission_by_id_list(explode(",", $this->request->post['idlist']));
|
|
|
|
$this->data['removed'] = 0;
|
|
|
|
$this->data['username'] = Registry::get('username');
|
|
|
|
if(Registry::get('auditor_user') == 0) {
|
|
die("go away");
|
|
}
|
|
|
|
if(NEED_TO_APPROVE_DELETE) {
|
|
$deleted = -1;
|
|
} else {
|
|
$deleted = 1;
|
|
}
|
|
|
|
foreach($idlist as $id) {
|
|
$db->query("INSERT INTO " . TABLE_DELETED . " (id, requestor, reason1, date1, deleted) VALUES(?,?,?,?,?)", [$id, $this->data['username'], $this->request->post['reason'], NOW, $deleted]);
|
|
|
|
if(NEED_TO_APPROVE_DELETE) {
|
|
AUDIT(ACTION_MARK_MESSAGE_FOR_REMOVAL, '', '', $id, '');
|
|
syslog(LOG_INFO, $this->data['username'] . " marked message for removal: $id");
|
|
} else {
|
|
AUDIT(ACTION_REMOVE_MESSAGE, '', '', $id, '');
|
|
$db->query("UPDATE " . TABLE_META . " SET retained=? WHERE id=?", [NOW, $id]);
|
|
if(RT) {
|
|
$sphx = Registry::get('sphx');
|
|
$sphx->query("DELETE FROM " . SPHINX_MAIN_INDEX . " WHERE id=" . (int)$this->data['id']);
|
|
}
|
|
|
|
syslog(LOG_INFO, $this->data['username'] . " removed message: $id");
|
|
}
|
|
|
|
$this->data['removed']++;
|
|
}
|
|
|
|
$this->render();
|
|
}
|
|
|
|
|
|
}
|