diff --git a/bin/v_add_database b/bin/v_add_database index 8be920d12..2192d2b28 100755 --- a/bin/v_add_database +++ b/bin/v_add_database @@ -32,6 +32,8 @@ source $VESTA/func/db.sh # Hiding password A4='******' +EVENT="DATE='$DATE' TIME='$TIME' CMD='$SCRIPT' A1='$A1' A2='$A2' A3='$A3'" +EVENT="$EVENT A4='$A4' A5='$A5' A6='$A6' A7='$A7' A8='$A8' A9='$A9'" #----------------------------------------------------------# diff --git a/bin/v_add_mail_account b/bin/v_add_mail_account index e032f145f..3c9db6887 100755 --- a/bin/v_add_mail_account +++ b/bin/v_add_mail_account @@ -25,6 +25,8 @@ source $VESTA/func/domain.sh # Hiding password A4='******' +EVENT="DATE='$DATE' TIME='$TIME' CMD='$SCRIPT' A1='$A1' A2='$A2' A3='$A3'" +EVENT="$EVENT A4='$A4' A5='$A5' A6='$A6' A7='$A7' A8='$A8' A9='$A9'" #----------------------------------------------------------# diff --git a/bin/v_add_user b/bin/v_add_user index db613e742..b11f6ccf0 100755 --- a/bin/v_add_user +++ b/bin/v_add_user @@ -23,6 +23,8 @@ source $VESTA/func/main.sh # Hiding password A2='******' +EVENT="DATE='$DATE' TIME='$TIME' CMD='$SCRIPT' A1='$A1' A2='$A2' A3='$A3'" +EVENT="$EVENT A4='$A4' A5='$A5' A6='$A6' A7='$A7' A8='$A8' A9='$A9'" is_user_free() { check_sysuser=$(cut -f 1 -d : /etc/passwd | grep -w "$user" ) diff --git a/bin/v_add_web_domain_stats_user b/bin/v_add_web_domain_stats_user index 0e2007b14..ff856ca39 100755 --- a/bin/v_add_web_domain_stats_user +++ b/bin/v_add_web_domain_stats_user @@ -22,6 +22,8 @@ source $VESTA/func/domain.sh # Hiding password A4='******' +EVENT="DATE='$DATE' TIME='$TIME' CMD='$SCRIPT' A1='$A1' A2='$A2' A3='$A3'" +EVENT="$EVENT A4='$A4' A5='$A5' A6='$A6' A7='$A7' A8='$A8' A9='$A9'" #----------------------------------------------------------# diff --git a/bin/v_change_database_password b/bin/v_change_database_password index 34d04cb47..3fb91085f 100755 --- a/bin/v_change_database_password +++ b/bin/v_change_database_password @@ -22,6 +22,8 @@ source $VESTA/func/db.sh # Hiding password A3='******' +EVENT="DATE='$DATE' TIME='$TIME' CMD='$SCRIPT' A1='$A1' A2='$A2' A3='$A3'" +EVENT="$EVENT A4='$A4' A5='$A5' A6='$A6' A7='$A7' A8='$A8' A9='$A9'" #----------------------------------------------------------# diff --git a/bin/v_change_mail_account_password b/bin/v_change_mail_account_password index ecfe679e2..6dc04f05f 100755 --- a/bin/v_change_mail_account_password +++ b/bin/v_change_mail_account_password @@ -24,6 +24,8 @@ source $VESTA/func/domain.sh # Hiding password A4='******' +EVENT="DATE='$DATE' TIME='$TIME' CMD='$SCRIPT' A1='$A1' A2='$A2' A3='$A3'" +EVENT="$EVENT A4='$A4' A5='$A5' A6='$A6' A7='$A7' A8='$A8' A9='$A9'" #----------------------------------------------------------# diff --git a/bin/v_change_user_password b/bin/v_change_user_password index aaa18a0be..b418f24f6 100755 --- a/bin/v_change_user_password +++ b/bin/v_change_user_password @@ -18,7 +18,9 @@ source $VESTA/conf/vesta.conf source $VESTA/func/main.sh # Hiding password -A2='******' +A2="******" +EVENT="DATE='$DATE' TIME='$TIME' CMD='$SCRIPT' A1='$A1' A2='$A2' A3='$A3'" +EVENT="$EVENT A4='$A4' A5='$A5' A6='$A6' A7='$A7' A8='$A8' A9='$A9'" #----------------------------------------------------------# diff --git a/web/add/user/index.php b/web/add/user/index.php index 772a0e980..ea9a49642 100644 --- a/web/add/user/index.php +++ b/web/add/user/index.php @@ -17,7 +17,6 @@ if ($_SESSION['user'] == 'admin') { // Cancel if (!empty($_POST['cancel'])) { - echo $_POST['cancel']; header("Location: /list/user/"); } diff --git a/web/edit/user/index.php b/web/edit/user/index.php new file mode 100644 index 000000000..6e5653e2d --- /dev/null +++ b/web/edit/user/index.php @@ -0,0 +1,152 @@ +', $output); + if (empty($error)) $error = 'Error: vesta did not return any output.'; + $_SESSION['error_msg'] = $error; + } else { + $data = json_decode(implode('', $output), true); + $v_username = $_GET['user']; + $v_password = "••••••••"; + $v_email = $data[$v_username]['CONTACT']; + $v_package = $data[$v_username]['PACKAGE']; + $v_fname = $data[$v_username]['FNAME']; + $v_lname = $data[$v_username]['LNAME']; + $v_shell = $data[$v_username]['SHELL']; + $v_ns = $data[$v_username]['NS']; + $nameservers = explode(", ", $v_ns); + $v_ns1 = $nameservers[0]; + $v_ns2 = $nameservers[1]; + $v_ns3 = $nameservers[2]; + $v_ns4 = $nameservers[3]; + + unset($output); + + exec (VESTA_CMD."v_list_user_packages json", $output, $return_var); + $packages = json_decode(implode('', $output), true); + unset($output); + + exec (VESTA_CMD."v_list_sys_shells json", $output, $return_var); + $shells = json_decode(implode('', $output), true); + unset($output); + } + + if (!empty($_POST['save'])) { + $v_username = escapeshellarg($_POST['v_username']); + + if (($v_password != $_POST['v_password']) && (empty($_SESSION['error_msg']))) { + $v_password = escapeshellarg($_POST['v_password']); + exec (VESTA_CMD."v_change_user_password ".$v_username." ".$v_password, $output, $return_var); + if ($return_var != 0) { + $error = implode('
', $output); + if (empty($error)) $error = 'Error: vesta did not return any output.'; + $_SESSION['error_msg'] = $error; + } + $v_password = "••••••••"; + unset($output); + } + + if (($v_package != $_POST['v_package']) && (empty($_SESSION['error_msg']))) { + $v_package = escapeshellarg($_POST['v_package']); + exec (VESTA_CMD."v_change_user_package ".$v_username." ".$v_package, $output, $return_var); + if ($return_var != 0) { + $error = implode('
', $output); + if (empty($error)) $error = 'Error: vesta did not return any output.'; + $_SESSION['error_msg'] = $error; + } + unset($output); + } + + if (($v_shell != $_POST['v_shell']) && (empty($_SESSION['error_msg']))) { + $v_shell = escapeshellarg($_POST['v_shell']); + exec (VESTA_CMD."v_change_user_shell ".$v_username." ".$v_shell, $output, $return_var); + if ($return_var != 0) { + $error = implode('
', $output); + if (empty($error)) $error = 'Error: vesta did not return any output.'; + $_SESSION['error_msg'] = $error; + } + unset($output); + } + + if (($v_email != $_POST['v_email']) && (empty($_SESSION['error_msg']))) { + $v_email = escapeshellarg($_POST['v_email']); + exec (VESTA_CMD."v_change_user_contact ".$v_username." ".$v_email, $output, $return_var); + if ($return_var != 0) { + $error = implode('
', $output); + if (empty($error)) $error = 'Error: vesta did not return any output.'; + $_SESSION['error_msg'] = $error; + } + unset($output); + } + + if (($v_fname != $_POST['v_fname']) || ($v_lname != $_POST['v_lname']) && (empty($_SESSION['error_msg']))) { + $v_fname = escapeshellarg($_POST['v_fname']); + $v_lname = escapeshellarg($_POST['v_lname']); + exec (VESTA_CMD."v_change_user_name ".$v_username." ".$v_fname." ".$v_lname, $output, $return_var); + if ($return_var != 0) { + $error = implode('
', $output); + if (empty($error)) $error = 'Error: vesta did not return any output.'; + $_SESSION['error_msg'] = $error; + } + unset($output); + } + + if (($v_ns1 != $_POST['v_ns1']) || ($v_ns2 != $_POST['v_ns2']) || ($v_ns3 != $_POST['v_ns3']) || ($v_ns4 != $_POST['v_ns4']) && (empty($_SESSION['error_msg']))) { + $v_ns1 = escapeshellarg($_POST['v_ns1']); + $v_ns2 = escapeshellarg($_POST['v_ns2']); + $v_ns3 = escapeshellarg($_POST['v_ns3']); + $v_ns4 = escapeshellarg($_POST['v_ns4']); + + $ns_cmd = VESTA_CMD."v_change_user_ns ".$v_username." ".$v_ns1." ".$v_ns2; + if (!empty($_POST['v_ns3'])) $ns_cmd = $ns_cmd." ".$v_ns3; + if (!empty($_POST['v_ns4'])) $ns_cmd = $ns_cmd." ".$v_ns4; + exec ($ns_cmd, $output, $return_var); + if ($return_var != 0) { + $error = implode('
', $output); + if (empty($error)) $error = 'Error: vesta did not return any output.'; + $_SESSION['error_msg'] = $error; + } + unset($output); + } + + if (empty($_SESSION['error_msg'])) { + $_SESSION['ok_msg'] = "OK: changes has been saved."; + } + } + include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/menu_edit_user.html'); + include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/edit_user.html'); + unset($_SESSION['error_msg']); + unset($_SESSION['ok_msg']); + + +} + +// Footer +include($_SERVER['DOCUMENT_ROOT'].'/templates/footer.html'); diff --git a/web/templates/admin/edit_user.html b/web/templates/admin/edit_user.html new file mode 100644 index 000000000..7fa4b16b1 --- /dev/null +++ b/web/templates/admin/edit_user.html @@ -0,0 +1,74 @@ + + + + + + +
+ + +
+
+ + +
+
+ + + + + + + + + + + + + +
Username
+ Password generate
Email
Package
Frist Name
Last Name
Shell
Name Servers
+ + +
+
diff --git a/web/templates/admin/menu_add_user.html b/web/templates/admin/menu_add_user.html index db853839b..7e5dec35f 100644 --- a/web/templates/admin/menu_add_user.html +++ b/web/templates/admin/menu_add_user.html @@ -1,12 +1,12 @@ -