Skip to content

Commit 6d4b14e

Browse files
committed
delete dns record page & add mail page
1 parent b306202 commit 6d4b14e

20 files changed

+404
-11
lines changed

web/add/mail/index.php

Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
<?php
2+
// Init
3+
error_reporting(NULL);
4+
ob_start();
5+
session_start();
6+
$TAB = 'MAIL';
7+
include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
8+
9+
// Header
10+
include($_SERVER['DOCUMENT_ROOT'].'/templates/header.html');
11+
12+
// Panel
13+
top_panel($user,$TAB);
14+
15+
// Are you admin?
16+
if ($_SESSION['user'] == 'admin') {
17+
18+
// Cancel
19+
if (!empty($_POST['cancel'])) {
20+
header("Location: /list/mail/");
21+
}
22+
23+
// Mail Domain
24+
if (!empty($_POST['ok'])) {
25+
if (empty($_POST['v_domain'])) $errors[] = 'domain';
26+
if (!empty($_POST['v_antispam'])) {
27+
$v_antispam = 'yes';
28+
} else {
29+
$v_antispam = 'no';
30+
}
31+
32+
if (!empty($_POST['v_antivirus'])) {
33+
$v_antivirus = 'yes';
34+
} else {
35+
$v_antivirus = 'no';
36+
}
37+
38+
if (!empty($_POST['v_dkim'])) {
39+
$v_dkim = 'yes';
40+
} else {
41+
$v_dkim = 'no';
42+
}
43+
44+
// Protect input
45+
$v_domain = preg_replace("/^www./i", "", $_POST['v_domain']);
46+
$v_domain = escapeshellarg($v_domain);
47+
48+
// Check for errors
49+
if (!empty($errors[0])) {
50+
foreach ($errors as $i => $error) {
51+
if ( $i == 0 ) {
52+
$error_msg = $error;
53+
} else {
54+
$error_msg = $error_msg.", ".$error;
55+
}
56+
}
57+
$_SESSION['error_msg'] = "Error: field ".$error_msg." can not be blank.";
58+
} else {
59+
60+
// Add mail domain
61+
exec (VESTA_CMD."v_add_mail_domain ".$user." ".$v_domain." ".$v_antispam." ".$v_antivirus." ".$v_dkim, $output, $return_var);
62+
if ($return_var != 0) {
63+
$error = implode('<br>', $output);
64+
if (empty($error)) $error = 'Error: vesta did not return any output.';
65+
$_SESSION['error_msg'] = $error;
66+
}
67+
unset($output);
68+
69+
if (empty($_SESSION['error_msg'])) {
70+
$_SESSION['ok_msg'] = "OK: domain <b>".$_POST[v_domain]."</b> has been created successfully.";
71+
unset($v_domain);
72+
}
73+
}
74+
}
75+
76+
77+
// Mail Account
78+
if (!empty($_POST['ok_acc'])) {
79+
// Check input
80+
if (empty($_POST['v_domain'])) $errors[] = 'domain';
81+
if (empty($_POST['v_account'])) $errors[] = 'account';
82+
if (empty($_POST['v_password'])) $errors[] = 'password';
83+
84+
// Protect input
85+
$v_domain = escapeshellarg($_POST['v_domain']);
86+
$v_account = escapeshellarg($_POST['v_account']);
87+
$v_password = escapeshellarg($_POST['v_password']);
88+
$v_quota = escapeshellarg($_POST['v_quota']);
89+
if (empty($_POST['v_quota'])) $v_quota = 0;
90+
91+
// Check for errors
92+
if (!empty($errors[0])) {
93+
foreach ($errors as $i => $error) {
94+
if ( $i == 0 ) {
95+
$error_msg = $error;
96+
} else {
97+
$error_msg = $error_msg.", ".$error;
98+
}
99+
}
100+
$_SESSION['error_msg'] = "Error: field ".$error_msg." can not be blank.";
101+
} else {
102+
// Add Mail Account
103+
exec (VESTA_CMD."v_add_mail_account ".$user." ".$v_domain." ".$v_account." ".$v_password." ".$v_quota, $output, $return_var);
104+
if ($return_var != 0) {
105+
$error = implode('<br>', $output);
106+
if (empty($error)) $error = 'Error: vesta did not return any output.';
107+
$_SESSION['error_msg'] = $error;
108+
}
109+
unset($output);
110+
if (empty($_SESSION['error_msg'])) {
111+
$_SESSION['ok_msg'] = "OK: account <b>".$_POST['v_account']."</b> has been created successfully.";
112+
unset($v_account);
113+
unset($v_password);
114+
}
115+
}
116+
}
117+
118+
119+
if ((empty($_GET['domain'])) && (empty($_POST['domain']))) {
120+
$v_domain = $_GET['domain'];
121+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_add_mail.html');
122+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/add_mail.html');
123+
unset($_SESSION['error_msg']);
124+
unset($_SESSION['ok_msg']);
125+
} else {
126+
$v_domain = $_GET['domain'];
127+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_add_mail_acc.html');
128+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/add_mail_acc.html');
129+
unset($_SESSION['error_msg']);
130+
unset($_SESSION['ok_msg']);
131+
}
132+
}
133+
134+
// Footer
135+
include($_SERVER['DOCUMENT_ROOT'].'/templates/footer.html');

web/delete/dns/index.php

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
<?php
2+
// Init
3+
//error_reporting(NULL);
4+
ob_start();
5+
session_start();
6+
$TAB = 'DNS';
7+
include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
8+
9+
// Header
10+
include($_SERVER['DOCUMENT_ROOT'].'/templates/header.html');
11+
12+
// Panel
13+
top_panel($user,$TAB);
14+
15+
// Are you admin?
16+
if ($_SESSION['user'] == 'admin') {
17+
18+
// Cancel
19+
if (!empty($_POST['back'])) {
20+
header("Location: /list/dns/");
21+
}
22+
23+
// DNS domain
24+
if ((!empty($_GET['domain'])) && (empty($_GET['record_id']))) {
25+
$v_username = escapeshellarg($user);
26+
$v_domain = escapeshellarg($_GET['domain']);
27+
exec (VESTA_CMD."v_delete_dns_domain ".$v_username." ".$v_domain, $output, $return_var);
28+
if ($return_var != 0) {
29+
$error = implode('<br>', $output);
30+
if (empty($error)) $error = 'Error: vesta did not return any output.';
31+
$_SESSION['error_msg'] = $error;
32+
} else {
33+
$_SESSION['ok_msg'] = "OK: dns domain <b>".$_GET['domain']."</b> has been deleted.";
34+
unset($v_lname);
35+
}
36+
unset($output);
37+
38+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_delete_dns.html');
39+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/delete_dns.html');
40+
unset($_SESSION['error_msg']);
41+
unset($_SESSION['ok_msg']);
42+
}
43+
44+
// DNS record
45+
if ((!empty($_GET['domain'])) && (!empty($_GET['record_id']))) {
46+
$v_username = escapeshellarg($user);
47+
$v_domain = escapeshellarg($_GET['domain']);
48+
$v_record_id = escapeshellarg($_GET['record_id']);
49+
exec (VESTA_CMD."v_delete_dns_domain_record ".$v_username." ".$v_domain." ".$v_record_id, $output, $return_var);
50+
if ($return_var != 0) {
51+
$error = implode('<br>', $output);
52+
if (empty($error)) $error = 'Error: vesta did not return any output.';
53+
$_SESSION['error_msg'] = $error;
54+
} else {
55+
$_SESSION['ok_msg'] = "OK: dns record has been deleted.";
56+
unset($v_lname);
57+
}
58+
unset($output);
59+
60+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_delete_dns_rec.html');
61+
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/delete_dns_rec.html');
62+
unset($_SESSION['error_msg']);
63+
unset($_SESSION['ok_msg']);
64+
}
65+
66+
}
67+
68+
// Footer
69+
include($_SERVER['DOCUMENT_ROOT'].'/templates/footer.html');

web/templates/admin/add_mail.html

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
<table class='data'>
2+
<tr class="data-add">
3+
<td class="data-dotted" style="padding: 0px 10px 0px 0px" width="150">
4+
<table class="data-col1">
5+
<tr><td style="padding: 18 0 4 18;"></td></tr>
6+
</table>
7+
</td>
8+
<td class="data-dotted" width="830px" style="vertical-align:top;">
9+
<table width="830px"><tr>
10+
<td></td>
11+
</tr></table>
12+
<table class="data-col2" width="600px">
13+
<form method="post" name="v_add_user">
14+
<tr><td class="add-text" style="padding: 10 0 0 2px;">Domain</td></tr>
15+
<tr><td><input type="text" size="20" class="add-input" name="v_domain" <?php if (!empty($v_domain)) echo "value=".$v_domain; ?> ></td></tr>
16+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">AntiSpam Support</td></tr>
17+
<tr><td><input type="checkbox" size="20" class="add-checkbox" name="v_antispam" <?php if ((empty($v_antispam)) || ($v_antispam == 'yes')) echo "checked=yes"; ?>></tr>
18+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">AntiVirus Support</td></tr>
19+
<tr><td><input type="checkbox" size="20" class="add-checkbox" name="v_antivirus" <?php if ((empty($v_antivirus)) || ($v_antivirus == 'yes')) echo "checked=yes"; ?>></tr>
20+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">DKIM Support</td></tr>
21+
<tr><td><input type="checkbox" size="20" class="add-checkbox" name="v_dkim" <?php if ($v_dkim == 'yes') echo "checked=yes"; ?>></tr>
22+
<tr><td style="padding: 24px 0 0 0;">
23+
<input type="submit" name="ok" value="OK" class="add-button"></form>
24+
<input type="button" class="add-button" value="Cancel" onClick="location.href='/list/mail/'">
25+
</td></tr>
26+
</table>
27+
</td>
28+
</tr>
29+
</table>
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
<script type="text/javascript">
2+
function randomString() {
3+
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
4+
var string_length = 10;
5+
var randomstring = '';
6+
for (var i=0; i<string_length; i++) {
7+
var rnum = Math.floor(Math.random() * chars.length);
8+
randomstring += chars.substring(rnum,rnum+1);
9+
}
10+
document.v_add_user.v_password.value = randomstring;
11+
}
12+
</script>
13+
14+
15+
<table class='data'>
16+
<tr class="data-add">
17+
<td class="data-dotted" style="padding: 0px 10px 0px 0px" width="150">
18+
<table class="data-col1">
19+
<tr><td style="padding: 18 0 4 18;"></td></tr>
20+
</table>
21+
</td>
22+
<td class="data-dotted" width="830px" style="vertical-align:top;">
23+
<table width="830px"><tr>
24+
<td></td>
25+
</tr></table>
26+
<table class="data-col2" width="600px">
27+
<form method="post" name="v_add_user">
28+
<tr><td class="add-text" style="padding: 10 0 0 2px;">Domain</td></tr>
29+
<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>
30+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Account</td></tr>
31+
<tr><td><input type="text" size="20" class="add-input" name="v_account" <?php if (!empty($v_account)) echo "value=".$v_account; ?>></tr>
32+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Password <a href="javascript:randomString();" class="genpass">generate</a></td></tr>
33+
<tr><td><input type="text" size="20" class="add-input" name="v_password"</tr>
34+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Quota <span style="padding:0 0 0 6px; font-size: 10pt; color:#555;">(optional)</span></td></tr>
35+
<tr><td><input type="text" size="20" class="add-input" name="v_quota" <?php if (!empty($v_quota)) echo "value=".$v_quota; ?>></tr>
36+
<tr><td style="padding: 24px 0 0 0;">
37+
<input type="submit" name="ok_acc" value="OK" class="add-button"></form>
38+
<input type="button" class="add-button" value="Cancel" onClick="location.href='/list/mail/<?php echo "?domain=".$v_domain; ?>'">
39+
</td></tr>
40+
</table>
41+
</td>
42+
</tr>
43+
</table>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<table class='data'>
2+
<tr class="data-add">
3+
<td class="data-dotted" style="padding: 0px 10px 0px 0px" width="150">
4+
<table class="data-col1">
5+
<tr><td style="padding: 18 0 4 18;"></td></tr>
6+
</table>
7+
</td>
8+
<td class="data-dotted" width="830px" style="vertical-align:top;">
9+
<table width="830px"><tr>
10+
<td></td>
11+
</tr></table>
12+
13+
<table class="data-col2" width="830px">
14+
<tr>
15+
<td style="padding: 24px 0 0 0;" width="100px">
16+
<form method="get">
17+
<input type="button" class="add-button" value="List Domains" onClick="location.href='/list/dns/'">
18+
</form>
19+
</td>
20+
<td style="padding: 24px 0 0 0;">
21+
</td>
22+
</tr>
23+
</table>
24+
</td>
25+
</tr>
26+
</table>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
<table class='data'>
2+
<tr class="data-add">
3+
<td class="data-dotted" style="padding: 0px 10px 0px 0px" width="150">
4+
<table class="data-col1">
5+
<tr><td style="padding: 18 0 4 18;"></td></tr>
6+
</table>
7+
</td>
8+
<td class="data-dotted" width="830px" style="vertical-align:top;">
9+
<table width="830px"><tr>
10+
<td></td>
11+
</tr></table>
12+
13+
<table class="data-col2" width="830px">
14+
<tr>
15+
<td style="padding: 24px 0 0 0;" width="100px">
16+
<form method="get">
17+
<input type="button" class="add-button" value="List Records" onClick="location.href='/list/dns/?domain=<?php echo $_GET['domain']?>'">
18+
</form>
19+
</td>
20+
<td style="padding: 24px 0 0 0;">
21+
</td>
22+
</tr>
23+
</table>
24+
</td>
25+
</tr>
26+
</table>

web/templates/admin/delete_user.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<tr>
1515
<td style="padding: 24px 0 0 0;">
1616
<form method="post">
17-
<input type="button" class="add-button" value="List users" onClick="location.href='/list/user/'">
17+
<input type="button" class="add-button" value="List Users" onClick="location.href='/list/user/'">
1818
</form>
1919
</td>
2020
</tr>

web/templates/admin/delete_web.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<tr>
1515
<td style="padding: 24px 0 0 0;">
1616
<form method="post">
17-
<input type="button" class="add-button" value="List domains" onClick="location.href='/list/web/'">
17+
<input type="button" class="add-button" value="List Domains" onClick="location.href='/list/web/'">
1818
</form>
1919
</td>
2020
</tr>

web/templates/admin/list_dns.html

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,14 @@
7373
<p class="counter-value">Are you sure you want to <?php echo $spnd_action ?> <span style="color: #34536A;"><b><?php echo "$key" ?></b></span> domain?</p>
7474
</div>
7575
</td>
76-
<td class="data-controls" width="70px"><img src="/images/delete.png" width="7px" height="7px"><a href="#"> delete</a></td>
76+
<td class="data-controls" width="70px">
77+
<img src="/images/delete.png" width="7px" height="7px">
78+
<a href="#" id="delete_link_<?php echo $i ?>"> delete</a>
79+
<div id="delete_dialog_<?php echo $i ?>" title="Confirmation">
80+
<p class="counter-value">Are you sure you want to delete <span style="color: #34536A;"><b><?php echo "$key" ?></b></span> domain?</p>
81+
</div>
82+
</td>
7783
</tr></table>
78-
7984
<table class="data-col2" width="830px">
8085
<tr><td colspan=3 class="domain" style="padding: 0 0 0 4px;"><b><?php echo $key ?></b></td></tr>
8186
<tr>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<table class="sub-menu">
2+
<tr>
3+
<td style="padding: 10px 2px 28px 0;" ><a class="add-name"><b>Adding Mail Domain</b></a>
4+
<?php
5+
if (!empty($_SESSION['error_msg'])) {
6+
echo "<a class=\"add-error\"> → ".$_SESSION['error_msg']."</a>";
7+
} else {
8+
if (!empty($_SESSION['ok_msg'])) {
9+
echo "<a class=\"add-ok\"> → ".$_SESSION['ok_msg']."</a>";
10+
}
11+
}
12+
?>
13+
</td>
14+
</tr>
15+
</table>

0 commit comments

Comments
 (0)