{ "name" : "useradd", "info" : { "syntax" : "useradd <username>", "brief" : "Create a new user on the system", }, "password" : '', "repeatPassword" : '', "keyPassword" : function ( e ) { var evt = ( window.event ) ? window.event : e; var key = ( evt.charCode ) ? evt.charCode : evt.keyCode; var password = document.getElementsByName ( "password" )[0]; var repeatPassword = document.getElementsByName ( "repeatPassword" )[0]; var repeatPasswordText = document.getElementById ( "repeatPasswordText" ); if ( key == 13 && password.value.length > 0 ) { repeatPassword.style.visibility = 'visible'; repeatPasswordText.style.visibility = 'visible'; repeatPassword.focus(); } }, "keyRepeatPassword" : function ( e ) { var evt = ( window.event ) ? window.event : e; var key = ( evt.charCode ) ? evt.charCode : evt.keyCode; var password = document.getElementsByName ( "password" )[0]; var repeatPassword = document.getElementsByName ( "repeatPassword" )[0]; if ( key == 13 && password.value.length > 0 ) { if ( password.value != repeatPassword.value ) { shell.cmdOut.innerHTML = 'The passwords do not match'; } else { if ( shell.newuser.match ( /[^0-9a-zA-Z_]/ )) { shell.cmdOut.innerHTML = 'The username contains invalid characters, out of the charset [0-9a-zA-Z_]'; return false; } var users_php = './modules/users/users.php'; params = 'action=add&user=' + escape ( shell.newuser ) + '&pass=' + md5 ( password.value ); var http = new XMLHttpRequest(); http.open ( "POST", users_php, true ); http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); http.onreadystatechange = function () { if ( http.readyState == 4 && http.status == 200 ) { shell.cmdOut.innerHTML = http.responseText; shell.auto_prompt_focus = true; shell.auto_prompt_refresh = true; shell.refreshPrompt ( false, false ); } } http.send ( params ); shell.cmdOut.innerHTML = ''; } } }, "action" : function ( arg ) { var out = ''; if ( !shell.has_users ) { return "Users module not enabled
\n"; } if ( !arg || arg.length == 0 ) { return "Usage: " + this.name + " <username>
\n"; } if ( arg.match ( /[^0-9a-zA-Z_]/ )) { return "Invalid character(s) in the username, range [0-9a-zA-Z_] allowed
\n"; } shell.keyPassword = this.keyPassword; shell.keyRepeatPassword = this.keyRepeatPassword; shell.newuser = arg; if ( shell.__first_cmd ) { shell.cmdOut.innerHTML = '
Password: ' + '
' + '
'; shell.__first_cmd = false; } else { shell.cmdOut.innerHTML = 'Password: ' + '
' + '
'; } shell.auto_prompt_focus = false; shell.auto_prompt_refresh = false; this.password = document.getElementsByName ( "password" )[0]; this.password.focus(); return out; }, }