MCPcopy Create free account
hub / github.com/dedsec1121fk/DedSec / browser_settings

Function browser_settings

Scripts/Developer Base/Free Internet.py:1433–1500  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1431
1432@app.route("/browser/settings", methods=["GET", "POST"])
1433def browser_settings():
1434 prefs = browser_prefs()
1435 if request.method == "POST":
1436 prefs["engine"] = request.form.get("engine", "google") if request.form.get("engine") in SEARCH_ENGINES else "google"
1437 prefs["country"] = request.form.get("country", "US") if request.form.get("country") in COUNTRIES else "US"
1438 prefs["mode"] = request.form.get("mode", "smart") if request.form.get("mode") in {"strict", "smart", "direct"} else "smart"
1439 prefs["adblock"] = bool(request.form.get("adblock"))
1440 prefs["lite"] = bool(request.form.get("lite"))
1441 prefs["block_images"] = bool(request.form.get("block_images"))
1442 prefs["vpn_enabled"] = bool(request.form.get("vpn_enabled"))
1443 prefs["tor_enabled"] = bool(request.form.get("tor_enabled"))
1444 save_browser_prefs(prefs)
1445 if prefs["tor_enabled"]:
1446 ok, msg = start_tor()
1447 flash(msg)
1448 else:
1449 stop_tor()
1450 flash("Browser settings saved.")
1451 return redirect(url_for("browser_settings"))
1452 proxy_pool_size = len(fetch_proxy_pool(prefs.get("country", "US"))) if prefs.get("vpn_enabled") else 0
1453 body = render_template_string(
1454 """
1455 <section class="hero stack">
1456 <div>
1457 <div class="muted small">Settings</div>
1458 <h1>Keep it simple.</h1>
1459 <div class="muted">VPN starts off by default. Enable only what you want, then save.</div>
1460 </div>
1461
1462 <form method="post" class="stack">
1463 <div class="grid3">
1464 <div><label>Search engine</label><select name="engine">{% for k,v in engines.items() %}<option value="{{ k }}" {% if prefs.engine == k %}selected{% endif %}>{{ v[0] }}</option>{% endfor %}</select></div>
1465 <div><label>Proxy country</label><select name="country">{% for k,v in countries.items() %}<option value="{{ k }}" {% if prefs.country == k %}selected{% endif %}>{{ v }}</option>{% endfor %}</select></div>
1466 <div><label>VPN mode</label><select name="mode"><option value="smart" {% if prefs.mode=='smart' %}selected{% endif %}>Smart</option><option value="strict" {% if prefs.mode=='strict' %}selected{% endif %}>Strict proxy</option><option value="direct" {% if prefs.mode=='direct' %}selected{% endif %}>Direct only</option></select></div>
1467 </div>
1468
1469 <div class="grid2 toggleRow">
1470 <label><input type="checkbox" name="vpn_enabled" {% if prefs.vpn_enabled %}checked{% endif %}><span><b>Enable VPN routing</b><br><span class="muted small">Use proxies when routing is enabled.</span></span></label>
1471 <label><input type="checkbox" name="tor_enabled" {% if prefs.tor_enabled %}checked{% endif %}><span><b>Enable Tor routing</b><br><span class="muted small">Tor installs and starts automatically when enabled.</span></span></label>
1472 <label><input type="checkbox" name="adblock" {% if prefs.adblock %}checked{% endif %}><span><b>Enable ad blocker</b><br><span class="muted small">Block common ad and tracker requests.</span></span></label>
1473 <label><input type="checkbox" name="lite" {% if prefs.lite %}checked{% endif %}><span><b>Enable lite mode</b><br><span class="muted small">Remove heavier page parts when possible.</span></span></label>
1474 <label><input type="checkbox" name="block_images" {% if prefs.block_images %}checked{% endif %}><span><b>Block images</b><br><span class="muted small">Useful when speed or data matters more.</span></span></label>
1475 </div>
1476
1477 <div class="card stack">
1478 <div class="pillRow">
1479 <span class="badge">{{ 'VPN enabled' if prefs.vpn_enabled else 'VPN off' }}</span>
1480 <span class="badge">{{ 'Tor running' if tor_on else 'Tor off' }}</span>
1481 <span class="badge">{{ proxy_pool_size }} cached proxies</span>
1482 </div>
1483 <div class="row">
1484 <a class="btn" href="{{ url_for('browser_proxy_refresh') }}">Refresh proxies</a>
1485 <a class="btn" href="{{ url_for('browser_update_tools') }}">Update browser tools</a>
1486 <a class="btn danger" href="{{ url_for('browser_clear') }}">Clear browser data</a>
1487 {% if tor_on %}<a class="btn danger" href="{{ url_for('browser_tor_stop') }}">Stop Tor</a>{% endif %}
1488 </div>
1489 </div>
1490

Callers

nothing calls this directly

Calls 7

browser_prefsFunction · 0.70
save_browser_prefsFunction · 0.70
start_torFunction · 0.70
stop_torFunction · 0.70
fetch_proxy_poolFunction · 0.70
tor_runningFunction · 0.70
render_pageFunction · 0.70

Tested by

no test coverage detected