if (is_object($mail) && true == $util->authorized($mail->recipient)) {
$secret_id = $mail->secret_id;
$recipient = $mail->recipient;
+ $sender = $mail->sender;
if ($request == 'release') {
$amavisserver = $CFG->amavisd_db_host;
} else if ($request == 'delete') {
$query[] = "UPDATE msgrcpt SET rs = 'D' WHERE mail_id = '$mail_id'";
} else if ($request == 'block') {
+ $query[] = $sender;
} else {
error("Unknown operation [$request]");
exit;
if ($loggedIn && isset($_GET['id'])) {
$ids = explode(',', $_GET['id']);
if ($request == 'block') {
- // call rest server
+ // /add/(whitelist|blacklist)/(.+)
+ $query = handleRequest($util, $request, $ids);
+ $data = json_encode($query);
+ if ($util->isAdmin()) {
+ $method = '/add/blacklist';
+ } else {
+ $method = '/add/blacklist/' . $util->getUser();
+ }
+ $success = $util->makeRestCall($method, $data);
} else {
$query = handleRequest($util, $request, $ids);
$success = $DB->update($query);
- if (! $success) {
+ }
+ if (! $success) {
+ if ($request == 'block') {
+ error("Could not blacklist sender");
+ } else {
error("Message not released, contact administrator [$query]");
- exit;
}
+ exit;
}
- header('Location: index.php');
+ header('Location: qtadmin.php');
} else if ($loggedIn && $request == 'purge') {
$marked = unserialize($_SESSION['marked']);
unset($_SESSION['marked']);
error("The following messages was not purged [$str], contact administrator");
exit;
}
- header('Location: index.php');
+ header('Location: qtadmin.php');
} else if ($loggedIn) {
- header('Location: index.php');
+ header('Location: qtadmin.php');
} else {
header('Location: auth.php');
}