mirror of
https://github.com/S2-/pwgen.git
synced 2025-08-02 17:00:03 +02:00
make length random
This commit is contained in:
@@ -15,7 +15,9 @@
|
|||||||
<form>
|
<form>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
<label for"length">length <input type="number" id="length" value="14" min="0" name="length"></label>
|
<label>length</label>
|
||||||
|
<label for"length-min">min <input type="number" id="length-min" value="14" min="0" name="length-min" style="width: 50px;"></label>
|
||||||
|
<label for"length-max">max <input type="number" id="length-max" value="18" min="0" name="length-max" style="width: 50px;"></label>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
@@ -14,9 +14,14 @@ function randPassword(length, includeSpecial) {
|
|||||||
return randPwd;
|
return randPwd;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function generateLength() {
|
||||||
|
return Math.floor(Math.random() * getParams().lengthMax - getParams().lengthMin + 1) + getParams().lengthMin;
|
||||||
|
}
|
||||||
|
|
||||||
function getParams() {
|
function getParams() {
|
||||||
return {
|
return {
|
||||||
length: parseInt(document.getElementById('length').value),
|
lengthMin: parseInt(document.getElementById('length-min').value),
|
||||||
|
lengthMax: parseInt(document.getElementById('length-max').value),
|
||||||
special: document.getElementById('special').checked,
|
special: document.getElementById('special').checked,
|
||||||
directcopy: document.getElementById('directcopy').checked
|
directcopy: document.getElementById('directcopy').checked
|
||||||
}
|
}
|
||||||
@@ -24,7 +29,8 @@ function getParams() {
|
|||||||
|
|
||||||
function loadOptions() {
|
function loadOptions() {
|
||||||
return browser.storage.local.get({
|
return browser.storage.local.get({
|
||||||
length: 14,
|
lengthMin: 14,
|
||||||
|
lengthMax: 17,
|
||||||
special: true,
|
special: true,
|
||||||
directcopy: false
|
directcopy: false
|
||||||
});
|
});
|
||||||
@@ -65,7 +71,7 @@ document.addEventListener('DOMContentLoaded', function() {
|
|||||||
document.getElementById('new').addEventListener('click', (ev) => {
|
document.getElementById('new').addEventListener('click', (ev) => {
|
||||||
ev.preventDefault();
|
ev.preventDefault();
|
||||||
var params = getParams();
|
var params = getParams();
|
||||||
document.getElementById('pw').value = randPassword(params.length, params.special);
|
document.getElementById('pw').value = randPassword(generateLength(), params.special);
|
||||||
});
|
});
|
||||||
|
|
||||||
document.getElementById('copy').addEventListener('click', (ev) => {
|
document.getElementById('copy').addEventListener('click', (ev) => {
|
||||||
@@ -81,10 +87,11 @@ document.addEventListener('DOMContentLoaded', function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
loadOptions().then((options) => {
|
loadOptions().then((options) => {
|
||||||
document.getElementById('length').value = options.length;
|
document.getElementById('length-min').value = options.lengthMin;
|
||||||
|
document.getElementById('length-max').value = options.lengthMax;
|
||||||
document.getElementById('special').checked = options.special;
|
document.getElementById('special').checked = options.special;
|
||||||
document.getElementById('directcopy').checked = options.directcopy;
|
document.getElementById('directcopy').checked = options.directcopy;
|
||||||
document.getElementById('pw').value = randPassword(getParams().length, getParams().special);
|
document.getElementById('pw').value = randPassword(generateLength(), getParams().special);
|
||||||
|
|
||||||
if (options.directcopy) {
|
if (options.directcopy) {
|
||||||
copypasstoclippboard();
|
copypasstoclippboard();
|
||||||
|
Reference in New Issue
Block a user