Merge pull request #572 from bergware/master

Miscellaneous updates
This commit is contained in:
tom mortensen
2020-01-14 21:17:21 -08:00
committed by GitHub
4 changed files with 37 additions and 15 deletions

View File

@@ -31,7 +31,7 @@ if ($_SERVER['REQUEST_URI'] == '/logout') {
$_SESSION['unraid_user'] = $_POST['username'];
session_regenerate_id(true);
session_write_close();
exec("logger -t webGUI ".escapeshellarg("Successful login user {$_POST['username']} from {$_SERVER['REMOTE_ADDR']}"));
exec("logger -t webGUI ".escapeshellarg("Successful login user {$_POST['username']} from {$_SERVER['REMOTE_ADDR']}"));
header("Location: /".$var['START_PAGE']);
exit;
}
@@ -339,7 +339,7 @@ $theme_dark = in_array($display['theme'],['black','gray']);
<form action="/login" method="POST">
<p>
<input name="username" type="text" placeholder="Username" required>
<input name="username" type="text" placeholder="Username" autocapitalize="none" autofocus required>
<input name="password" type="password" placeholder="Password" required>
</p>
<? if ($error) echo '<p class="error">'.$error.'</p>'; ?>

View File

@@ -42,7 +42,7 @@ function check_encryption() {
echo mk_option(1,'text','Passphrase');
echo mk_option(1,'file','Keyfile');
echo "</select></td></tr>";
echo "<tr id='text'><td></td><td class='gap'>Passphrase:</td><td><input type='password' name='text' maxlength='512' value='' onkeyup='selectInput(this.form)'><input name='showPass' type='checkbox' onchange='selectInput(this.form)'>show passphrase</td></tr>";
echo "<tr id='text'><td></td><td class='gap'>Passphrase:</td><td><input type='password' name='text' maxlength='512' value='' onkeyup='selectInput(this.form)' placeholder='use printable characters only'><input name='showPass' type='checkbox' onchange='selectInput(this.form)'>show passphrase</td></tr>";
echo "<tr id='copy'><td></td><td class='gap'>Retype passphrase:</td><td><input type='password' name='copy' maxlength='512' value='' onkeyup='selectInput(this.form)'></td></tr>";
echo "<tr id='file'><td></td><td class='gap'>Keyfile:</td><td><input type='file' name='local' onchange='getFileContent(event,this.form)'></td></tr>";
}
@@ -80,6 +80,10 @@ span#pass{display:none;margin-left:20px}
var ctrl = "<span class='status <?=$tabbed?'':'vhshift'?>'><a style='cursor:pointer' class='tooltip_diskio' title='Toggle reads/writes display' onclick='toggle_diskio();return false'><i class='toggle fa'></i></a></span>";
function selectInput(form) {
<?if ($wrong && $keyfile):?>
form.input.value = 'file';
form.input.disabled = true;
<?endif;?>
if (form.input.value == 'text') {
form.file.value = '';
form.local.value = '';
@@ -131,8 +135,18 @@ function prepareInput(form) {
form.text.disabled = true;
form.copy.disabled = true;
if (form.text.value) {
$(form).append('<input type="hidden" name="luksKey" value="'+base64(form.text.value)+'">');
form.submit();
var valid = new RegExp('^[ -~]+$');
if (valid.test(form.text.value)) {
$(form).append('<input type="hidden" name="luksKey" value="'+base64(form.text.value)+'">');
form.submit();
} else {
form.input.disabled = false;
form.local.disabled = false;
form.file.disabled = false;
form.text.disabled = false;
form.copy.disabled = false;
swal({title:'Printable Characters Only',text:'Use <b>ASCII</b> characters from space " " to tilde "~"<br>Otherwise use the <b>keyfile</b> method for UTF8 input',html:true,type:'error'});
}
return;
}
var data = {};

View File

@@ -55,15 +55,17 @@ function checkUsername(form) {
swal({title:"Invalid user name",text:"Do not use reserved names",type:"error"});
return false;
}
if (form.userPassword.value.length > 128 || form.userPasswordConf.value.length > 128) {
if (form.userPasswordGUI.value.length > 128 || form.userPasswordConfGUI.value.length > 128) {
swal({title:"Password too long",text:"Use a password up to 128 characters",type:"error"});
return false;
}
if (filename) {
$.post("/webGui/include/FileUpload.php",{cmd:'save',path:path,filename:filename,output:username+'.png'});
}
form.userPassword.value = base64(form.userPassword.value);
form.userPasswordConf.value = base64(form.userPasswordConf.value);
form.userPassword.value = base64(form.userPasswordGUI.value);
form.userPasswordConf.value = base64(form.userPasswordConfGUI.value);
form.userPasswordGUI.disabled = true;
form.userPasswordConfGUI.disabled = true;
return true;
}
@@ -138,12 +140,14 @@ Custom image:
> The image will be scaled to 48x48 pixels in size. The maximum image file upload size is 95 kB (97,280 bytes).
Password:
: <input type="password" name="userPassword" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userName.value=='' || this.form.userPassword.value!=this.form.userPasswordConf.value)">
<input type="hidden" name="userPassword" value="">
: <input type="password" name="userPasswordGUI" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userName.value=='' || this.form.userPasswordGUI.value!=this.form.userPasswordConfGUI.value)">
> Up to 128 characters.
Retype password:
: <input type="password" name="userPasswordConf" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userName.value=='' || this.form.userPassword.value!=this.form.userPasswordConf.value)">
<input type="hidden" name="userPasswordConf" value="">
: <input type="password" name="userPasswordConfGUI" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userName.value=='' || this.form.userPasswordGUI.value!=this.form.userPasswordConfGUI.value)">
&nbsp;
: <input type="submit" name="cmdUserEdit" value="Add" disabled><input type="button" value="Done" onclick="done('UserAdd')">

View File

@@ -47,12 +47,14 @@ var path = '/boot/config/plugins/dynamix/users';
var filename = '';
function checkPassword(form) {
if (form.userPassword.value.length > 128 || form.userPasswordConf.value.length > 128) {
if (form.userPasswordGUI.value.length > 128 || form.userPasswordConfGUI.value.length > 128) {
swal({title:"Password too long",text:"Use a password up to 128 characters",type:"error"});
return false;
}
form.userPassword.value = base64(form.userPassword.value);
form.userPasswordConf.value = base64(form.userPasswordConf.value);
form.userPassword.value = base64(form.userPasswordGUI.value);
form.userPasswordConf.value = base64(form.userPasswordConfGUI.value);
form.userPasswordGUI.disabled = true;
form.userPasswordConfGUI.disabled = true;
return true;
}
@@ -157,12 +159,14 @@ Delete<input type="checkbox" name="confirmDelete" onChange="chkDelete(this.form,
<form markdown="1" method="POST" action="/update.htm" target="progressFrame" onsubmit="return checkPassword(this)">
<input type="hidden" name="userName" value="<?=htmlspecialchars($name)?>">
Password:
: <input type="password" name="userPassword" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userPassword.value != this.form.userPasswordConf.value);">
<input type="hidden" name="userPassword" value="">
: <input type="password" name="userPasswordGUI" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userPasswordGUI.value != this.form.userPasswordConfGUI.value);">
> Up to 128 characters.
Retype password:
: <input type="password" name="userPasswordConf" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userPassword.value != this.form.userPasswordConf.value);">
<input type="hidden" name="userPasswordConf" value="">
: <input type="password" name="userPasswordConfGUI" maxlength="129" onKeyUp="this.form.cmdUserEdit.disabled=(this.form.userPasswordGUI.value != this.form.userPasswordConfGUI.value);">
&nbsp;
: <input type="submit" name="cmdUserEdit" value="Change" disabled><input type="button" value="Done" onclick="done('UserEdit')">