|
155 | 155 | include($_SERVER['DOCUMENT_ROOT'].'/templates/admin/edit_user.html'); |
156 | 156 | unset($_SESSION['error_msg']); |
157 | 157 | unset($_SESSION['ok_msg']); |
| 158 | +} else { |
| 159 | + // Check user argument? |
| 160 | + if (empty($_GET['user'])) { |
| 161 | + header("Location: /list/user/"); |
| 162 | + exit; |
| 163 | + } |
| 164 | + |
| 165 | + // Check user |
| 166 | + $v_username = escapeshellarg($_GET['user']); |
| 167 | + exec (VESTA_CMD."v_list_user ".$v_username." json", $output, $return_var); |
| 168 | + if ($return_var != 0) { |
| 169 | + $error = implode('<br>', $output); |
| 170 | + if (empty($error)) $error = 'Error: vesta did not return any output.'; |
| 171 | + $_SESSION['error_msg'] = $error; |
| 172 | + } else { |
| 173 | + $data = json_decode(implode('', $output), true); |
| 174 | + unset($output); |
| 175 | + $v_username = $_GET['user']; |
| 176 | + $v_password = "••••••••"; |
| 177 | + $v_email = $data[$v_username]['CONTACT']; |
| 178 | + $v_fname = $data[$v_username]['FNAME']; |
| 179 | + $v_lname = $data[$v_username]['LNAME']; |
| 180 | + $v_ns = $data[$v_username]['NS']; |
| 181 | + $nameservers = explode(", ", $v_ns); |
| 182 | + $v_ns1 = $nameservers[0]; |
| 183 | + $v_ns2 = $nameservers[1]; |
| 184 | + $v_ns3 = $nameservers[2]; |
| 185 | + $v_ns4 = $nameservers[3]; |
| 186 | + $v_suspended = $data[$v_username]['SUSPENDED']; |
| 187 | + if ( $v_suspended == 'yes' ) { |
| 188 | + $v_status = 'suspended'; |
| 189 | + } else { |
| 190 | + $v_status = 'active'; |
| 191 | + } |
| 192 | + $v_time = $data[$v_username]['TIME']; |
| 193 | + $v_date = $data[$v_username]['DATE']; |
| 194 | + |
| 195 | + } |
| 196 | + |
| 197 | + // Action |
| 198 | + if (!empty($_POST['save'])) { |
| 199 | + $v_username = escapeshellarg($_POST['v_username']); |
| 200 | + |
| 201 | + // Change password |
| 202 | + if (($v_password != $_POST['v_password']) && (empty($_SESSION['error_msg']))) { |
| 203 | + $v_password = escapeshellarg($_POST['v_password']); |
| 204 | + exec (VESTA_CMD."v_change_user_password ".$v_username." ".$v_password, $output, $return_var); |
| 205 | + if ($return_var != 0) { |
| 206 | + $error = implode('<br>', $output); |
| 207 | + if (empty($error)) $error = 'Error: vesta did not return any output.'; |
| 208 | + $_SESSION['error_msg'] = $error; |
| 209 | + } |
| 210 | + $v_password = "••••••••"; |
| 211 | + unset($output); |
| 212 | + } |
| 213 | + |
| 214 | + // Change contact email |
| 215 | + if (($v_email != $_POST['v_email']) && (empty($_SESSION['error_msg']))) { |
| 216 | + $v_email = escapeshellarg($_POST['v_email']); |
| 217 | + exec (VESTA_CMD."v_change_user_contact ".$v_username." ".$v_email, $output, $return_var); |
| 218 | + if ($return_var != 0) { |
| 219 | + $error = implode('<br>', $output); |
| 220 | + if (empty($error)) $error = 'Error: vesta did not return any output.'; |
| 221 | + $_SESSION['error_msg'] = $error; |
| 222 | + } |
| 223 | + unset($output); |
| 224 | + } |
| 225 | + |
| 226 | + // Change Name |
| 227 | + if (($v_fname != $_POST['v_fname']) || ($v_lname != $_POST['v_lname']) && (empty($_SESSION['error_msg']))) { |
| 228 | + $v_fname = escapeshellarg($_POST['v_fname']); |
| 229 | + $v_lname = escapeshellarg($_POST['v_lname']); |
| 230 | + exec (VESTA_CMD."v_change_user_name ".$v_username." ".$v_fname." ".$v_lname, $output, $return_var); |
| 231 | + if ($return_var != 0) { |
| 232 | + $error = implode('<br>', $output); |
| 233 | + if (empty($error)) $error = 'Error: vesta did not return any output.'; |
| 234 | + $_SESSION['error_msg'] = $error; |
| 235 | + } |
| 236 | + unset($output); |
| 237 | + } |
| 238 | + |
| 239 | + // Change NameServers |
| 240 | + 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']))) { |
| 241 | + $v_ns1 = escapeshellarg($_POST['v_ns1']); |
| 242 | + $v_ns2 = escapeshellarg($_POST['v_ns2']); |
| 243 | + $v_ns3 = escapeshellarg($_POST['v_ns3']); |
| 244 | + $v_ns4 = escapeshellarg($_POST['v_ns4']); |
| 245 | + $ns_cmd = VESTA_CMD."v_change_user_ns ".$v_username." ".$v_ns1." ".$v_ns2; |
| 246 | + if (!empty($_POST['v_ns3'])) $ns_cmd = $ns_cmd." ".$v_ns3; |
| 247 | + if (!empty($_POST['v_ns4'])) $ns_cmd = $ns_cmd." ".$v_ns4; |
| 248 | + exec ($ns_cmd, $output, $return_var); |
| 249 | + if ($return_var != 0) { |
| 250 | + $error = implode('<br>', $output); |
| 251 | + if (empty($error)) $error = 'Error: vesta did not return any output.'; |
| 252 | + $_SESSION['error_msg'] = $error; |
| 253 | + } |
| 254 | + unset($output); |
| 255 | + } |
| 256 | + |
| 257 | + if (empty($_SESSION['error_msg'])) { |
| 258 | + $_SESSION['ok_msg'] = "OK: changes has been saved."; |
| 259 | + } |
| 260 | + } |
| 261 | + include($_SERVER['DOCUMENT_ROOT'].'/templates/user/menu_edit_user.html'); |
| 262 | + include($_SERVER['DOCUMENT_ROOT'].'/templates/user/edit_user.html'); |
| 263 | + unset($_SESSION['error_msg']); |
| 264 | + unset($_SESSION['ok_msg']); |
158 | 265 | } |
159 | 266 |
|
160 | 267 | // Footer |
|
0 commit comments