More work on web UI

This commit is contained in:
andryyy
2017-01-22 16:41:45 +01:00
parent e87c5d30dd
commit 66e9833c91
13 changed files with 401 additions and 226 deletions

View File

@@ -2,6 +2,7 @@
require_once 'dkim.inc.php';
require_once 'mailbox.inc.php';
require_once 'domainadmin.inc.php';
require_once 'admin.inc.php';
function hash_password($password) {
$salt_str = bin2hex(openssl_random_pseudo_bytes(8));
return "{SSHA256}".base64_encode(hash('sha256', $password . $salt_str, true) . $salt_str);
@@ -433,11 +434,11 @@ function set_time_limited_aliases($postarray) {
'msg' => sprintf($lang['success']['mailbox_modified'], htmlspecialchars($username))
);
break;
case "extend":
case "extendall":
try {
$stmt = $pdo->prepare("UPDATE `spamalias` SET `validity` = (`validity` + 3600)
WHERE `goto` = :username
AND `validity` >= :validity");
$stmt = $pdo->prepare("UPDATE `spamalias` SET `validity` = (`validity` + 3600) WHERE
`goto` = :username AND
`validity` >= :validity");
$stmt->execute(array(
':username' => $username,
':validity' => time(),
@@ -455,6 +456,38 @@ function set_time_limited_aliases($postarray) {
'msg' => sprintf($lang['success']['mailbox_modified'], htmlspecialchars($username))
);
break;
case "extend":
if (empty($postarray['item']) || !filter_var($postarray['item'], FILTER_VALIDATE_EMAIL)) {
$_SESSION['return'] = array(
'type' => 'danger',
'msg' => sprintf($lang['danger']['access_denied'])
);
return false;
}
$item = $postarray['item'];
try {
$stmt = $pdo->prepare("UPDATE `spamalias` SET `validity` = (`validity` + 3600) WHERE
`goto` = :username AND
`address` = :item AND
`validity` >= :validity");
$stmt->execute(array(
':username' => $username,
':item' => $item,
':validity' => time(),
));
}
catch (PDOException $e) {
$_SESSION['return'] = array(
'type' => 'danger',
'msg' => 'MySQL: '.$e
);
return false;
}
$_SESSION['return'] = array(
'type' => 'success',
'msg' => sprintf($lang['success']['mailbox_modified'], htmlspecialchars($username))
);
break;
}
}
function get_time_limited_aliases($username = null) {