Skip to content

Commit 988b30f

Browse files
committed
completed useradd form
1 parent 8959b3f commit 988b30f

File tree

7 files changed

+118
-33
lines changed

7 files changed

+118
-33
lines changed

web/add/user/index.php

Lines changed: 50 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22
// Init
3-
error_reporting(NULL);
3+
//error_reporting(NULL);
44
ob_start();
55
session_start();
66
$TAB = 'USER';
@@ -12,24 +12,70 @@
1212
// Panel
1313
top_panel($user,$TAB);
1414

15-
// Data
15+
// Are you admin?
1616
if ($_SESSION['user'] == 'admin') {
17+
18+
// Cancel
1719
if (!empty($_POST['cancel'])) {
1820
echo $_POST['cancel'];
1921
header("Location: /list/user/");
2022
}
23+
24+
// Ok
2125
if (!empty($_POST['ok'])) {
22-
echo $_POST['vusername'];
23-
echo $_POST['vpassword'];
26+
// Check input
27+
$v_username = escapeshellarg($_POST['v_username']);
28+
$v_password = escapeshellarg($_POST['v_password']);
29+
$v_package = escapeshellarg($_POST['v_package']);
30+
$v_email = escapeshellarg($_POST['v_email']);
31+
$v_fname = escapeshellarg($_POST['v_fname']);
32+
$v_lname = escapeshellarg($_POST['v_lname']);
33+
34+
if (empty($v_username)) $errors[] = 'user';
35+
if (empty($v_password)) $errors[] = 'password';
36+
if (empty($v_package)) $errrors[] = 'package';
37+
if (empty($v_email)) $errors[] = 'email';
38+
if (empty($v_fname)) $errors[] = 'first name';
39+
if (empty($v_lname)) $errors[] = 'last name';
40+
41+
// Check for errors
42+
if (!empty($errors[0])) {
43+
foreach ($errors as $i => $error) {
44+
if ( $i == 0 ) {
45+
$error_msg = $error;
46+
} else {
47+
$error_msg = $error_msg.", ".$error;
48+
}
49+
}
50+
$_SESSION['error_msg'] = "Error: field ".$error_msg." can not be blank.";
51+
} else {
52+
exec (VESTA_CMD."v_add_user ".$v_username." ".$v_password." ".$v_email." ".$v_package." ".$v_fname." ".$v_lname, $output, $return_var);
53+
if ($return_var != 0) {
54+
$error = implode('<br>', $output);
55+
if (empty($error)) $error = 'Error: vesta did not return any output.';
56+
$_SESSION['error_msg'] = $error;
57+
} else {
58+
$_SESSION['ok_msg'] = "OK: user <b>".$v_username."</b> has been created successfully.";
59+
unset($v_username);
60+
unset($v_password);
61+
unset($v_email);
62+
unset($v_fname);
63+
unset($v_lname);
64+
}
65+
unset($output);
66+
}
2467
}
2568

69+
2670
exec (VESTA_CMD."v_list_user_packages json", $output, $return_var);
2771
check_error($return_var);
2872
$data = json_decode(implode('', $output), true);
2973
unset($output);
3074

3175
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_add_user.html');
3276
include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/add_user.html');
77+
unset($_SESSION['error_msg']);
78+
unset($_SESSION['ok_msg']);
3379
}
3480

3581
// Footer

web/templates/admin/add_user.html

Lines changed: 33 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,16 @@
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>
113
<table class='data'>
2-
314
<tr class="data-add">
415
<td class="data-dotted" style="padding: 0px 10px 0px 0px" width="150">
516
<table class="data-col1">
@@ -12,29 +23,33 @@
1223
</tr></table>
1324

1425
<table class="data-col2" width="830px">
15-
<form method="post">
26+
<form method="post" name="v_add_user">
1627
<tr><td class="add-text" style="padding: 10 0 0 2px;">Username</td></tr>
17-
<tr><td><input type="text" size="20" class="add-input" name="vusername"></tr>
18-
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Password</td></tr>
19-
<tr><td><input type="text" size="20" class="add-input" name="vpassword"></tr>
28+
<tr><td><input type="text" size="20" class="add-input" name="v_username" <?php if (!empty($v_username)) echo "value=".$v_username; ?> ></tr>
29+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">
30+
Password <a href="#" onclick="randomString();" class="genpass">generate</a></td></tr>
31+
<tr><td><input type="text" size="20" class="add-input" name="v_password"</tr>
2032
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Email</td></tr>
21-
<tr><td><input type="text" size="20" class="add-input" name="email"></tr>
22-
<tr><td class="add-text" style="padding: 10px 0 0 2px;" name="package">Package</td></tr>
23-
<tr><td><select class="add-list">
24-
<?php
25-
foreach ($data as $key => $value) {
26-
echo "\t\t\t\t<option>".$key."</option>\n";
27-
}
28-
?>
33+
<tr><td><input type="text" size="20" class="add-input" name="v_email" <?php if (!empty($v_email)) echo "value=".$v_email; ?>></tr>
34+
<tr><td class="add-text" style="padding: 10px 0 0 2px;" name="v_package">Package</td></tr>
35+
<tr><td><select class="add-list" name="v_package">
36+
<?php
37+
foreach ($data as $key => $value) {
38+
echo "\t\t\t\t<option value=\"".$key."\"";
39+
if ((!empty($v_package)) && ( $key == $_POST['package'])){
40+
echo 'selected' ;
41+
}
42+
echo ">".$key."</option>\n";
43+
}
44+
?>
2945
</select></td></tr>
30-
<tr><td class="add-text" style="padding: 10px 0 0 2px;" name="fname">Frist Name</td></tr>
31-
<tr><td><input type="text" size="20" class="add-input"></tr>
32-
<tr><td class="add-text" style="padding: 10px 0 0 2px;" name="lname">Last Name</td></tr>
33-
<tr><td><input type="text" size="20" class="add-input"></tr>
46+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Frist Name</td></tr>
47+
<tr><td><input type="text" size="20" class="add-input" name="v_fname" <?php if (!empty($v_fname)) echo "value=".$v_fname; ?>></tr>
48+
<tr><td class="add-text" style="padding: 10px 0 0 2px;">Last Name</td></tr>
49+
<tr><td><input type="text" size="20" class="add-input" name="v_lname" <?php if (!empty($v_lname)) echo "value=".$v_lname; ?>></tr>
3450
<tr><td style="padding: 24px 0 0 0;">
3551
<input type="submit" name="ok" value="OK" class="add-button">
3652
<input type="submit" class="add-button" name="cancel" value="Cancel">
37-
3853
</td></tr>
3954
</form>
4055
</table>
Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,15 @@
11
<table class="sub-menu">
22
<tr>
33
<td style="padding: 10px 2px 28px 0;" ><a class="add-name"><i>Adding New User Account: </i></a>
4-
<a class="add-error"><i>
5-
</i></a>
4+
<?php
5+
if (!empty($_SESSION['error_msg'])) {
6+
echo "<a class=\"add-error\"><i>".$_SESSION['error_msg']."</i></a>";
7+
} else {
8+
if (!empty($_SESSION['ok_msg'])) {
9+
echo "<a class=\"add-ok\"><i>".$_SESSION['ok_msg']."</i></a>";
10+
}
11+
}
12+
?>
613
</td>
714
</tr>
815
</table>

web/templates/admin/panel.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
<li><b><a class="nav-<?php if($TAB == 'CRON' ) echo 's' ?>link" href="/list/cron/">CRON</a></b><p class="counters">
4040
jobs: <? echo $panel[$user]['U_CRON_JOBS']?><br>
4141
suspended: <? echo $panel[$user]['SUSPENDED_CRON']?></p></li>
42-
<li><b><a class="nav-<?php if($TAB == 'BACKUP' ) echo 's' ?>link" href="/list/backup/">BACKUP</a></b><p class="counters">
42+
<li><b><a class="nav-<?php if($TAB == 'BACKUP' ) echo 's' ?>link" href="/list/backup/">BACKUP</a></a></b><p class="counters">
4343
available: <? echo $panel[$user]['U_BACKUPS']?><br>
4444
<ul></div></td>
4545
</tr>

web/templates/header.html

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,13 @@
429429
padding: 0 0 0 28px;
430430
}
431431

432+
.add-ok {
433+
font-family: Georgia;
434+
font-size: 14pt;
435+
color: #80C376;
436+
padding: 0 0 0 6px;
437+
}
438+
432439
.add-error {
433440
font-family: Georgia;
434441
font-size: 14pt;
@@ -453,12 +460,22 @@
453460
color: #555;
454461
}
455462

456-
457463
.add-button {
458464
padding: 4px;
459465
margin: 0 6px 0 0;
460466
font-size: 12pt;
467+
}
461468

469+
.genpass {
470+
color: #34536A;
471+
font-size: 8pt;
472+
font-family: Arial, Helvetica, sans-serif;
473+
padding: 0 5px 0 8px;
474+
letter-spacing: 0.1em;
475+
}
476+
477+
.genpass:hover {
478+
color: #80C376;
462479
}
463480

464481
</style>

web/templates/login.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,11 +102,11 @@
102102
<tr>
103103
<td><p class="login-text1">Username</p></td>
104104
</tr><tr>
105-
<td><input tabindex="1" type="text" size="18px" name="user" class="loggin-input"></td>
105+
<td><input tabindex="1" type="text" size="20px" name="user" class="loggin-input"></td>
106106
</tr><tr>
107107
<td><p class="login-text1">Password <a tabindex="5" class="forgot" href="#" >(forgot password)</a></p></td>
108108
</tr><tr>
109-
<td><input tabindex="2" type="password" size="18px" name="password" class="loggin-input"></td>
109+
<td><input tabindex="2" type="password" size="20px" name="password" class="loggin-input"></td>
110110
</tr><tr>
111111
<td><p class="login-text2"><input tabindex="4" type="checkbox" style="margin: 0 8px 0 0" >Remember me</p></td>
112112
</tr><tr>

web/test.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?php
22

3-
echo "ok<br><pre>";
4-
if (!empty($_GET['d'])){
5-
echo 'ok';
6-
}
7-
//print_r($_GET);
3+
$arg1 = escapeshellarg($_GET['arg1']);
4+
$arg2 = escapeshellarg($_GET['arg2']);
5+
6+
echo "/root/bin/test.sh ".$arg1." ".$arg2."\n";
7+

0 commit comments

Comments
 (0)