mirror of
https://github.com/serghey-rodin/vesta.git
synced 2025-08-19 04:50:46 -07:00
edit mail account page
This commit is contained in:
parent
fb8f65c9a0
commit
dd249d8e60
13 changed files with 254 additions and 33 deletions
|
@ -1,6 +1,6 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# info: add mail account alias aka nickname
|
# info: add mail account autoreply message
|
||||||
# options: user domain account alias
|
# options: user domain account message
|
||||||
#
|
#
|
||||||
# The function add new email account.
|
# The function add new email account.
|
||||||
|
|
||||||
|
@ -27,7 +27,7 @@ source $VESTA/func/domain.sh
|
||||||
# Verifications #
|
# Verifications #
|
||||||
#----------------------------------------------------------#
|
#----------------------------------------------------------#
|
||||||
|
|
||||||
check_args '4' "$#" 'user domain account autoreply'
|
check_args '4' "$#" 'user domain account message'
|
||||||
validate_format 'user' 'domain' 'account' 'autoreply'
|
validate_format 'user' 'domain' 'account' 'autoreply'
|
||||||
is_system_enabled "$MAIL_SYSTEM"
|
is_system_enabled "$MAIL_SYSTEM"
|
||||||
is_object_valid 'user' 'USER' "$user"
|
is_object_valid 'user' 'USER' "$user"
|
||||||
|
|
|
@ -31,9 +31,9 @@ json_list_account() {
|
||||||
echo -e "\t\"$value\": {"
|
echo -e "\t\"$value\": {"
|
||||||
else
|
else
|
||||||
if [ "$fileds_count" -eq "$i" ]; then
|
if [ "$fileds_count" -eq "$i" ]; then
|
||||||
echo -e "\t\t\"${field//$/}\": \"$value\","
|
|
||||||
else
|
|
||||||
echo -e "\t\t\"${field//$/}\": \"$value\""
|
echo -e "\t\t\"${field//$/}\": \"$value\""
|
||||||
|
else
|
||||||
|
echo -e "\t\t\"${field//$/}\": \"$value\","
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
(( ++i))
|
(( ++i))
|
||||||
|
|
|
@ -23,7 +23,7 @@ json_list_msg() {
|
||||||
i='1' # iterator
|
i='1' # iterator
|
||||||
echo '{'
|
echo '{'
|
||||||
echo -e "\t\"$account\": {"
|
echo -e "\t\"$account\": {"
|
||||||
echo " \"MSG\": \"$msg\""
|
echo " \"MSG\": \"$msg\""
|
||||||
echo -e "\t}\n}"
|
echo -e "\t}\n}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -188,6 +188,7 @@ if ($_SESSION['user'] == 'admin') {
|
||||||
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
$_SESSION['error_msg'] = $error;
|
$_SESSION['error_msg'] = $error;
|
||||||
}
|
}
|
||||||
|
$v_val = $_POST['v_val'];
|
||||||
$restart_dns = 'yes';
|
$restart_dns = 'yes';
|
||||||
unset($output);
|
unset($output);
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,9 +171,11 @@ if ($_SESSION['user'] == 'admin') {
|
||||||
unset($_SESSION['error_msg']);
|
unset($_SESSION['error_msg']);
|
||||||
unset($_SESSION['ok_msg']);
|
unset($_SESSION['ok_msg']);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
$v_username = $user;
|
||||||
$v_domain = escapeshellarg($_GET['domain']);
|
$v_domain = escapeshellarg($_GET['domain']);
|
||||||
$v_record_id = escapeshellarg($_GET['record_id']);
|
$v_account = escapeshellarg($_GET['account']);
|
||||||
exec (VESTA_CMD."v_list_dns_domain_records ".$user." ".$v_domain." 'json'", $output, $return_var);
|
exec (VESTA_CMD."v_list_mail_account ".$user." ".$v_domain." ".$v_account." 'json'", $output, $return_var);
|
||||||
if ($return_var != 0) {
|
if ($return_var != 0) {
|
||||||
$error = implode('<br>', $output);
|
$error = implode('<br>', $output);
|
||||||
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
@ -183,46 +185,185 @@ if ($_SESSION['user'] == 'admin') {
|
||||||
unset($output);
|
unset($output);
|
||||||
$v_username = $user;
|
$v_username = $user;
|
||||||
$v_domain = $_GET['domain'];
|
$v_domain = $_GET['domain'];
|
||||||
$v_d = $_GET['record_id'];
|
$v_account = $_GET['account'];
|
||||||
$v_rec = $data[$v_record_id]['RECORD'];
|
$v_password = "••••••••";
|
||||||
$v_type = $data[$v_record_id]['TYPE'];
|
$v_aliases = str_replace(',', "\n", $data[$v_account]['ALIAS']);
|
||||||
$v_val = $data[$v_record_id]['VALUE'];
|
$valiases = explode(",", $data[$v_account]['ALIAS']);
|
||||||
$v_priority = $data[$v_record_id]['PRIORITY'];
|
$v_fwd = str_replace(',', "\n", $data[$v_account]['FWD']);
|
||||||
$v_suspended = $data[$v_record_id]['SUSPENDED'];
|
$vfwd = explode(",", $data[$v_account]['FWD']);
|
||||||
|
$v_quota = $data[$v_account]['QUOTA'];
|
||||||
|
$v_autoreply = $data[$v_account]['AUTOREPLY'];
|
||||||
|
if ( $v_autoreply == 'yes' ) {
|
||||||
|
exec (VESTA_CMD."v_list_mail_account_autoreply ".$user." '".$v_domain."' '".$v_account."' json", $output, $return_var);
|
||||||
|
$autoreply_str = json_decode(implode('', $output), true);
|
||||||
|
unset($output);
|
||||||
|
$v_autoreply_message = $autoreply_str[$v_account]['MSG'];
|
||||||
|
}
|
||||||
|
$v_suspended = $data[$v_account]['SUSPENDED'];
|
||||||
if ( $v_suspended == 'yes' ) {
|
if ( $v_suspended == 'yes' ) {
|
||||||
$v_status = 'suspended';
|
$v_status = 'suspended';
|
||||||
} else {
|
} else {
|
||||||
$v_status = 'active';
|
$v_status = 'active';
|
||||||
}
|
}
|
||||||
$v_date = $data[$v_record_id]['DATE'];
|
$v_date = $data[$v_account]['DATE'];
|
||||||
$v_time = $data[$v_record_id]['TIME'];
|
$v_time = $data[$v_account]['TIME'];
|
||||||
}
|
}
|
||||||
|
|
||||||
// Action
|
// Action
|
||||||
if (!empty($_POST['save'])) {
|
if (!empty($_POST['save'])) {
|
||||||
$v_domain = escapeshellarg($_POST['v_domain']);
|
$v_domain = escapeshellarg($_POST['v_domain']);
|
||||||
$v_record_id = escapeshellarg($_POST['v_record_id']);
|
$v_account = escapeshellarg($_POST['v_account']);
|
||||||
|
|
||||||
if (($v_val != $_POST['v_val']) || ($v_priority != $_POST['v_priority']) && (empty($_SESSION['error_msg']))) {
|
// Password
|
||||||
$v_val = escapeshellarg($_POST['v_val']);
|
if (($v_password != $_POST['v_password']) && (empty($_SESSION['error_msg']))) {
|
||||||
$v_priority = escapeshellarg($_POST['v_priority']);
|
$v_password = escapeshellarg($_POST['v_password']);
|
||||||
exec (VESTA_CMD."v_change_dns_domain_record ".$v_username." ".$v_domain." ".$v_record_id." ".$v_val." ".$v_priority, $output, $return_var);
|
exec (VESTA_CMD."v_change_mail_account_password ".$v_username." ".$v_domain." ".$v_account." ".$v_password, $output, $return_var);
|
||||||
if ($return_var != 0) {
|
if ($return_var != 0) {
|
||||||
$error = implode('<br>', $output);
|
$error = implode('<br>', $output);
|
||||||
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
$_SESSION['error_msg'] = $error;
|
$_SESSION['error_msg'] = $error;
|
||||||
}
|
}
|
||||||
$restart_dns = 'yes';
|
$v_password = "••••••••";
|
||||||
unset($output);
|
unset($output);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Quota
|
||||||
|
if (($v_quota != $_POST['v_quota']) && (empty($_SESSION['error_msg']))) {
|
||||||
|
if (empty($_POST['v_quota'])) {
|
||||||
|
$v_quota = 0;
|
||||||
|
} else {
|
||||||
|
$v_quota = escapeshellarg($_POST['v_quota']);
|
||||||
|
}
|
||||||
|
exec (VESTA_CMD."v_change_mail_account_quota ".$v_username." ".$v_domain." ".$v_account." ".$v_quota, $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Aliases
|
||||||
|
if (empty($_SESSION['error_msg'])) {
|
||||||
|
$waliases = preg_replace("/\n/", " ", $_POST['v_aliases']);
|
||||||
|
$waliases = preg_replace("/,/", " ", $waliases);
|
||||||
|
$waliases = preg_replace('/\s+/', ' ',$waliases);
|
||||||
|
$waliases = trim($waliases);
|
||||||
|
$aliases = explode(" ", $waliases);
|
||||||
|
$v_aliases = str_replace(' ', "\n", $waliases);
|
||||||
|
$result = array_diff($valiases, $aliases);
|
||||||
|
foreach ($result as $alias) {
|
||||||
|
if (empty($_SESSION['error_msg'])) {
|
||||||
|
exec (VESTA_CMD."v_delete_mail_account_alias ".$v_username." ".$v_domain." ".$v_account." '".$alias, $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$result = array_diff($aliases, $valiases);
|
||||||
|
foreach ($result as $alias) {
|
||||||
|
if (empty($_SESSION['error_msg'])) {
|
||||||
|
exec (VESTA_CMD."v_add_mail_account_alias ".$v_username." ".$v_domain." ".$v_account." '".$alias, $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Forwarders
|
||||||
|
if (empty($_SESSION['error_msg'])) {
|
||||||
|
$wfwd = preg_replace("/\n/", " ", $_POST['v_fwd']);
|
||||||
|
$wfwd = preg_replace("/,/", " ", $wfwd);
|
||||||
|
$wfwd = preg_replace('/\s+/', ' ',$wfwd);
|
||||||
|
$wfwd = trim($wfwd);
|
||||||
|
$fwd = explode(" ", $wfwd);
|
||||||
|
$v_fwd = str_replace(' ', "\n", $wfwd);
|
||||||
|
$result = array_diff($vfwd, $fwd);
|
||||||
|
foreach ($result as $forward) {
|
||||||
|
if (empty($_SESSION['error_msg'])) {
|
||||||
|
exec (VESTA_CMD."v_delete_mail_account_forward ".$v_username." ".$v_domain." ".$v_account." '".$forward."'", $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$result = array_diff($fwd, $vfwd);
|
||||||
|
foreach ($result as $forward) {
|
||||||
|
if (empty($_SESSION['error_msg'])) {
|
||||||
|
exec (VESTA_CMD."v_add_mail_account_forward ".$v_username." ".$v_domain." ".$v_account." '".$forward."'", $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Autoreply
|
||||||
|
if (($v_autoreply == 'yes') && (empty($_POST['v_autoreply'])) && (empty($_SESSION['error_msg']))) {
|
||||||
|
exec (VESTA_CMD."v_delete_mail_account_autoreply ".$v_username." ".$v_domain." ".$v_account, $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
$v_autoreply = 'no';
|
||||||
|
$v_autoreply_message = '';
|
||||||
|
}
|
||||||
|
if (($v_autoreply == 'yes') && (!empty($_POST['v_autoreply'])) && (empty($_SESSION['error_msg']))) {
|
||||||
|
if ( $v_autoreply_message != str_replace("\r\n", "\n", $_POST['v_autoreply_message'])) {
|
||||||
|
$v_autoreply_message = str_replace("\r\n", "\n", $_POST['v_autoreply_message']);
|
||||||
|
$v_autoreply_message = escapeshellarg($v_autoreply_message);
|
||||||
|
exec (VESTA_CMD."v_add_mail_account_autoreply ".$v_username." ".$v_domain." ".$v_account." ".$v_autoreply_message, $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
$v_autoreply_message = $_POST['v_autoreply_message'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (($v_autoreply == 'no') && (!empty($_POST['v_autoreply'])) && (empty($_SESSION['error_msg']))) {
|
||||||
|
if (empty($_POST['v_autoreply_message'])) $_SESSION['error_msg'] = "Error: field atoreply message can not be blank.";
|
||||||
|
if (empty($_SESSION['error_msg'])) {
|
||||||
|
$v_autoreply_message = str_replace("\r\n", "\n", $_POST['v_autoreply_message']);
|
||||||
|
$v_autoreply_message = escapeshellarg($v_autoreply_message);
|
||||||
|
exec (VESTA_CMD."v_add_mail_account_autoreply ".$v_username." ".$v_domain." ".$v_account." ".$v_autoreply_message, $output, $return_var);
|
||||||
|
if ($return_var != 0) {
|
||||||
|
$error = implode('<br>', $output);
|
||||||
|
if (empty($error)) $error = 'Error: vesta did not return any output.';
|
||||||
|
$_SESSION['error_msg'] = $error;
|
||||||
|
}
|
||||||
|
unset($output);
|
||||||
|
$v_autoreply = 'yes';
|
||||||
|
$v_autoreply_message = $_POST['v_autoreply_message'];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
if (empty($_SESSION['error_msg'])) {
|
if (empty($_SESSION['error_msg'])) {
|
||||||
$_SESSION['ok_msg'] = "OK: changes has been saved.";
|
$_SESSION['ok_msg'] = "OK: changes has been saved.";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_edit_dns_rec.html');
|
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_edit_mail_acc.html');
|
||||||
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/edit_dns_rec.html');
|
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/edit_mail_acc.html');
|
||||||
unset($_SESSION['error_msg']);
|
unset($_SESSION['error_msg']);
|
||||||
unset($_SESSION['ok_msg']);
|
unset($_SESSION['ok_msg']);
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,7 +43,7 @@
|
||||||
<option value="PTR" <?php if ($v_type == 'PTR') echo selected; ?>>PTR</option>
|
<option value="PTR" <?php if ($v_type == 'PTR') echo selected; ?>>PTR</option>
|
||||||
<option value="SPF" <?php if ($v_type == 'SPF') echo selected; ?>>SPF</option>
|
<option value="SPF" <?php if ($v_type == 'SPF') echo selected; ?>>SPF</option>
|
||||||
</select></td></tr>
|
</select></td></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Value</td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">IP or Value</td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_val" <?php if (!empty($v_val)) echo "value=".$v_val; ?>></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_val" <?php if (!empty($v_val)) echo "value=".$v_val; ?>></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Priority <span style="padding:0 0 0 6px; font-size: 10pt; color:#555;">(optional)</span></td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Priority <span style="padding:0 0 0 6px; font-size: 10pt; color:#555;">(optional)</span></td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_priority" <?php if (!empty($v_priority)) echo "value=".$v_priority; ?>></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_priority" <?php if (!empty($v_priority)) echo "value=".$v_priority; ?>></tr>
|
||||||
|
|
|
@ -39,13 +39,13 @@
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Account</td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Account</td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_account" <?php if (!empty($v_account)) echo "value=".$v_account; ?>></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_account" <?php if (!empty($v_account)) echo "value=".$v_account; ?>></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Password <a href="javascript:randomString();" class="genpass">generate</a></td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Password <a href="javascript:randomString();" class="genpass">generate</a></td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_password"</tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_password"></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;"><a href="javascript:elementHideShow('advtable');" class="add-advanced">Advanced Options ⇢</a></td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;"><a href="javascript:elementHideShow('advtable');" class="add-advanced">Advanced Options ⇢</a></td></tr>
|
||||||
<tr><td class="add-text" style="padding: 9px 0 0 0px;">
|
<tr><td class="add-text" style="padding: 9px 0 0 0px;">
|
||||||
<table style="display:<?php if (empty($v_adv)) echo 'none';?> ;" id="advtable">
|
<table style="display:<?php if (empty($v_adv)) echo 'none';?> ;" id="advtable">
|
||||||
<tr><td class="add-text" style="padding: 0 0 0 2px;">Quota <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(in megabytes)</span></td></tr>
|
<tr><td class="add-text" style="padding: 0 0 0 2px;">Quota <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(in megabytes)</span></td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_quota" <?php if (!empty($v_quota)) echo "value=".$v_quota; ?>></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_quota" <?php if (!empty($v_quota)) echo "value=".$v_quota; ?>></tr>
|
||||||
<tr><td class="add-text" style="padding: 10 0 0 2px;">Aliases <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(local part only)</span></td></tr>
|
<tr><td class="add-text" style="padding: 10 0 0 2px;">Aliases <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(use local-part)</span></td></tr>
|
||||||
<tr><td><textarea size="20" class="add-textinput" name="v_aliases"><?php if (!empty($v_aliases)) echo $v_aliases; ?></textarea></td></tr>
|
<tr><td><textarea size="20" class="add-textinput" name="v_aliases"><?php if (!empty($v_aliases)) echo $v_aliases; ?></textarea></td></tr>
|
||||||
<tr><td class="add-text" style="padding: 10 0 0 2px;">Forward to <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(email address or addresses)</span></td></tr>
|
<tr><td class="add-text" style="padding: 10 0 0 2px;">Forward to <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(email address or addresses)</span></td></tr>
|
||||||
<tr><td><textarea size="20" class="add-textinput" name="v_fwd"><?php if (!empty($v_fwd)) echo $v_fwd; ?></textarea></td></tr>
|
<tr><td><textarea size="20" class="add-textinput" name="v_fwd"><?php if (!empty($v_fwd)) echo $v_fwd; ?></textarea></td></tr>
|
||||||
|
|
|
@ -19,8 +19,8 @@
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_rec" <?php if (!empty($v_rec)) echo "value=".$v_rec; ?> disabled> <input type="hidden" name="v_record_id" <?php if (!empty($v_record_id)) echo "value=".$v_record_id; ?> ></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_rec" <?php if (!empty($v_rec)) echo "value=".$v_rec; ?> disabled> <input type="hidden" name="v_record_id" <?php if (!empty($v_record_id)) echo "value=".$v_record_id; ?> ></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Type</td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Type</td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_type" <?php if (!empty($v_rec)) echo "value=".$v_type; ?> disabled></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_type" <?php if (!empty($v_rec)) echo "value=".$v_type; ?> disabled></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Value</td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">IP or Value</td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_val" <?php if (!empty($v_val)) echo "value=".$v_val; ?>></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_val" <?php if (!empty($v_val)) echo "value='".$v_val."'"; ?>></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Priority <span style="padding:0 0 0 6px; font-size: 10pt; color:#555;">(optional)</span></td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Priority <span style="padding:0 0 0 6px; font-size: 10pt; color:#555;">(optional)</span></td></tr>
|
||||||
<tr><td><input type="text" size="20" class="add-input" name="v_priority" <?php if (!empty($v_priority)) echo "value=".$v_priority; ?>></tr>
|
<tr><td><input type="text" size="20" class="add-input" name="v_priority" <?php if (!empty($v_priority)) echo "value=".$v_priority; ?>></tr>
|
||||||
|
|
||||||
|
|
63
web/templates/admin/edit_mail_acc.html
Normal file
63
web/templates/admin/edit_mail_acc.html
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
<script type="text/javascript">
|
||||||
|
function elementHideShow(elementToHideOrShow) {
|
||||||
|
var el = document.getElementById(elementToHideOrShow);
|
||||||
|
if (el.style.display == "block") {
|
||||||
|
el.style.display = "none";
|
||||||
|
} else {
|
||||||
|
el.style.display = "block";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function randomString() {
|
||||||
|
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
|
||||||
|
var string_length = 10;
|
||||||
|
var randomstring = '';
|
||||||
|
for (var i=0; i<string_length; i++) {
|
||||||
|
var rnum = Math.floor(Math.random() * chars.length);
|
||||||
|
randomstring += chars.substring(rnum,rnum+1);
|
||||||
|
}
|
||||||
|
document.v_add_user.v_password.value = randomstring;
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<table class='data'>
|
||||||
|
<tr class="data-add">
|
||||||
|
<td class="data-dotted" style="padding: 0px 10px 0px 0px" width="150">
|
||||||
|
<table class="data-col1">
|
||||||
|
<tr><td style="padding: 18 0 4 18;"></td></tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
<td class="data-dotted" width="830px" style="vertical-align:top;">
|
||||||
|
<table width="830px"><tr>
|
||||||
|
<td></td>
|
||||||
|
</tr></table>
|
||||||
|
<table class="data-col2" width="600px">
|
||||||
|
<form method="post" name="v_add_user">
|
||||||
|
<tr><td class="add-text" style="padding: 10 0 0 2px;">Domain</td></tr>
|
||||||
|
<tr><td><input type="text" size="20" class="add-input" name="v_domain" <?php echo "value=".$v_domain; ?> disabled ><input type="hidden" name="v_domain" <?php echo "value=".$v_domain; ?>></td></tr>
|
||||||
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Account</td></tr>
|
||||||
|
<tr><td><input type="text" size="20" class="add-input" name="v_account" <?php if (!empty($v_account)) echo "value=".$v_account; ?> disabled > <input type="hidden" name="v_account" <?php if (!empty($v_account)) echo "value=".$v_account; ?> ></tr>
|
||||||
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Password <a href="javascript:randomString();" class="genpass">generate</a></td></tr>
|
||||||
|
<tr><td><input type="text" size="20" class="add-input" name="v_password" <?php if (!empty($v_password)) echo "value=".$v_password; ?> </tr>
|
||||||
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Quota <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(in megabytes)</span></td></tr>
|
||||||
|
<tr><td><input type="text" size="20" class="add-input" name="v_quota" <?php if (!empty($v_quota)) {echo "value=".$v_quota;} else { echo "value=0";}; ?>></tr>
|
||||||
|
<tr><td class="add-text" style="padding: 10 0 0 2px;">Aliases <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(use local-part)</span></td></tr>
|
||||||
|
<tr><td><textarea size="20" class="add-textinput" name="v_aliases"><?php if (!empty($v_aliases)) echo $v_aliases; ?></textarea></td></tr>
|
||||||
|
<tr><td class="add-text" style="padding: 10 0 0 2px;">Forward to <span style="padding: 0pt 0pt 0pt 6px; font-size: 10pt; color: rgb(85, 85, 85);">(email address or addresses)</span></td></tr>
|
||||||
|
<tr><td><textarea size="20" class="add-textinput" name="v_fwd"><?php if (!empty($v_fwd)) echo $v_fwd; ?></textarea></td></tr>
|
||||||
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Autoreply</td></tr>
|
||||||
|
<tr><td><input type="checkbox" size="20" class="add-checkbox" name="v_autoreply" <?php if ($v_autoreply == 'yes') echo "checked=yes" ?> onclick="javascript:elementHideShow('autoreplytable');"></tr>
|
||||||
|
<tr><td><table style="display:<?php if ($v_autoreply == 'no') { echo 'none';} else {echo 'block';}?> ;" id="autoreplytable"><tr>
|
||||||
|
<tr><td class="add-text" style="padding: 9px 0 0 2px;">Autoreply Message</td></tr>
|
||||||
|
<tr><td><textarea size="20" class="add-textinput" name="v_autoreply_message"><?php if (!empty($v_autoreply_message)) echo $v_autoreply_message; ?></textarea></tr>
|
||||||
|
</td></tr></tr></table></td></tr>
|
||||||
|
|
||||||
|
<tr><td style="padding: 24px 0 0 0;">
|
||||||
|
<input type="submit" name="save" value="Save" class="add-button"></form>
|
||||||
|
<input type="button" class="add-button" value="Cancel" onClick="location.href='/list/mail/<?php echo "?domain=".$_GET['domain']; ?>'">
|
||||||
|
</td></tr>
|
||||||
|
</table>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
|
@ -72,7 +72,7 @@
|
||||||
<tr><td><table style="display:<?php if (empty($v_nginx)) { echo 'none';} else {echo 'block';}?> ;" id="nginxtable"><tr>
|
<tr><td><table style="display:<?php if (empty($v_nginx)) { echo 'none';} else {echo 'block';}?> ;" id="nginxtable"><tr>
|
||||||
<tr><td class="add-text" style="padding: 9px 0 0 2px;">Nginx Supported Extentions</td></tr>
|
<tr><td class="add-text" style="padding: 9px 0 0 2px;">Nginx Supported Extentions</td></tr>
|
||||||
<tr><td><textarea size="20" class="add-textinput" name="v_nginx_ext"><?php if (!empty($v_nginx_ext)) { echo $v_nginx_ext;} else { echo 'jpg, jpeg, gif, png, ico, svg, css, zip, tgz, gz, rar, bz2, exe, pdf, doc, xls, ppt, txt, odt, ods, odp, odf, tar, bmp, rtf, js, mp3, avi, mpeg, flv, html, htm'; } ?></textarea></tr>
|
<tr><td><textarea size="20" class="add-textinput" name="v_nginx_ext"><?php if (!empty($v_nginx_ext)) { echo $v_nginx_ext;} else { echo 'jpg, jpeg, gif, png, ico, svg, css, zip, tgz, gz, rar, bz2, exe, pdf, doc, xls, ppt, txt, odt, ods, odp, odf, tar, bmp, rtf, js, mp3, avi, mpeg, flv, html, htm'; } ?></textarea></tr>
|
||||||
</td></tr></tr></table>
|
</td></tr></tr></table></td></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">SSL Support</td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">SSL Support</td></tr>
|
||||||
<tr><td><input type="checkbox" size="20" class="add-checkbox" name="v_ssl" <?php if ($v_ssl == 'yes') echo "checked=yes" ?> onclick="javascript:elementHideShow('ssltable');"></tr>
|
<tr><td><input type="checkbox" size="20" class="add-checkbox" name="v_ssl" <?php if ($v_ssl == 'yes') echo "checked=yes" ?> onclick="javascript:elementHideShow('ssltable');"></tr>
|
||||||
<tr><td><table style="display:<?php if ($v_ssl == 'no' ) { echo 'none';} else {echo 'block';}?> ;" id="ssltable"><tr>
|
<tr><td><table style="display:<?php if ($v_ssl == 'no' ) { echo 'none';} else {echo 'block';}?> ;" id="ssltable"><tr>
|
||||||
|
@ -87,7 +87,7 @@
|
||||||
<tr><td><textarea size="20" class="add-textinput" name="v_ssl_key"><?php if (!empty($v_ssl_key)) echo $v_ssl_key; ?></textarea></tr>
|
<tr><td><textarea size="20" class="add-textinput" name="v_ssl_key"><?php if (!empty($v_ssl_key)) echo $v_ssl_key; ?></textarea></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">SSL Certificate Authority <span style="padding:0 0 0 6px; font-size: 10pt; color:#555;">(optional)</span></td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">SSL Certificate Authority <span style="padding:0 0 0 6px; font-size: 10pt; color:#555;">(optional)</span></td></tr>
|
||||||
<tr><td><textarea size="20" class="add-textinput" name="v_ssl_ca"><?php if (!empty($v_ssl_ca)) echo $v_ssl_ca; ?></textarea></tr>
|
<tr><td><textarea size="20" class="add-textinput" name="v_ssl_ca"><?php if (!empty($v_ssl_ca)) echo $v_ssl_ca; ?></textarea></tr>
|
||||||
</td></tr></tr></table>
|
</td></tr></tr></table></td></tr>
|
||||||
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Web Statistics</td></tr>
|
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Web Statistics</td></tr>
|
||||||
<tr><td><select class="add-list" name="v_stats">
|
<tr><td><select class="add-list" name="v_stats">
|
||||||
<?php
|
<?php
|
||||||
|
|
|
@ -24,7 +24,7 @@ foreach ($data as $key => $value) {
|
||||||
<td class="data-dotted" width="830px" style="vertical-align:top;">
|
<td class="data-dotted" width="830px" style="vertical-align:top;">
|
||||||
<table width="830px"><tr>
|
<table width="830px"><tr>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td class="data-controls" width="50px"><img src="/images/edit.png" width="8px" height="8px"><a href="#"> edit</a></td>
|
<td class="data-controls" width="50px"><img src="/images/edit.png" width="8px" height="8px"><a href="/edit/mail/?domain=<?php echo $_GET['domain'] ?>&account=<?php echo $key ?>"> edit</a></td>
|
||||||
<td class="data-controls" width="80px"><img src="/images/suspend.png" width="7px" height="8px"><a href="#"> <?php echo $spnd_action ?></a></td>
|
<td class="data-controls" width="80px"><img src="/images/suspend.png" width="7px" height="8px"><a href="#"> <?php echo $spnd_action ?></a></td>
|
||||||
<td class="data-controls" width="70px"><img src="/images/delete.png" width="7px" height="7px"><a href="#"> delete</a></td>
|
<td class="data-controls" width="70px"><img src="/images/delete.png" width="7px" height="7px"><a href="#"> delete</a></td>
|
||||||
</tr></table>
|
</tr></table>
|
||||||
|
|
15
web/templates/admin/menu_edit_mail_acc.html
Normal file
15
web/templates/admin/menu_edit_mail_acc.html
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
<table class="sub-menu">
|
||||||
|
<tr>
|
||||||
|
<td style="padding: 10px 2px 28px 0;" ><a class="add-name"><b>Editing Mail Account</b></a>
|
||||||
|
<?php
|
||||||
|
if (!empty($_SESSION['error_msg'])) {
|
||||||
|
echo "<a class=\"add-error\"> → ".$_SESSION['error_msg']."</a>";
|
||||||
|
} else {
|
||||||
|
if (!empty($_SESSION['ok_msg'])) {
|
||||||
|
echo "<a class=\"add-ok\"> → ".$_SESSION['ok_msg']."</a>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
|
@ -417,6 +417,7 @@ if (!empty($_SESSION['look'])) {
|
||||||
font-family: Arial, sans-serif;
|
font-family: Arial, sans-serif;
|
||||||
font-size: 10pt;
|
font-size: 10pt;
|
||||||
color: #484243;
|
color: #484243;
|
||||||
|
color: #5c5455;
|
||||||
}
|
}
|
||||||
|
|
||||||
.cron-counter-name {
|
.cron-counter-name {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue