Self-serve proxy username+password change, config-driven dedicated pricing
This commit is contained in:
@@ -30,8 +30,15 @@
|
||||
<p class="muted" style="font-size:12px;margin-bottom:0">Proxy password is unique to you. Use it for proxy auth, not your web password.</p>
|
||||
<button class="btn btn-ghost" id="testbtn" onclick="testProxy()" style="margin-top:12px">⚡ Test my proxy</button>
|
||||
<pre class="code" id="testout" style="display:none;margin-top:10px"></pre>
|
||||
<form method="post" action="/dashboard/rotate" style="margin-top:14px">
|
||||
<input type="submit" value="Rotate proxy password">
|
||||
<form method="post" action="/dashboard/credentials" style="margin-top:14px">
|
||||
<label>Proxy username</label>
|
||||
<input type="text" name="username" value="{{ user.username }}" autocomplete="off">
|
||||
<label>Proxy password</label>
|
||||
<div class="copy" style="margin:0">
|
||||
<input type="text" name="proxy_password" id="pwfield" placeholder="leave blank to keep" autocomplete="off">
|
||||
<button type="button" onclick="randompw()">⚡ random</button>
|
||||
</div>
|
||||
<input type="submit" value="Update proxy credentials">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
@@ -105,6 +112,12 @@
|
||||
|
||||
<script>
|
||||
function copy(el){ el.select(); document.execCommand('copy'); }
|
||||
function randompw(){
|
||||
const chars = 'ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789';
|
||||
let s = '';
|
||||
for (let i=0;i<18;i++) s += chars[Math.floor(Math.random()*chars.length)];
|
||||
document.getElementById('pwfield').value = s;
|
||||
}
|
||||
async function testProxy(){
|
||||
const btn = document.getElementById('testbtn');
|
||||
const out = document.getElementById('testout');
|
||||
|
||||
Reference in New Issue
Block a user