Changelog: https://roxy-wi.org/changelog#6_3_6
pull/355/head
Aidaho 2023-02-28 09:55:03 +03:00
parent 0054f25da7
commit be142bd8f3
8 changed files with 57 additions and 59 deletions

View File

@ -424,6 +424,12 @@ def create_server(hostname, ip, group, typeip, enable, master, cred, port, desc,
if sql.add_server(hostname, ip, group, typeip, enable, master, cred, port, desc, haproxy, nginx, apache, firewall):
try:
try:
sql.insert_new_checker_setting_for_server(ip)
except Exception as e:
roxywi_common.logging(f'Cannot insert Checker settings for {hostname}', str(e), roxywi=1)
raise Exception(f'error: Cannot insert Checker settings for {hostname} {e}')
if scan_server == '1':
nginx_config_path = sql.get_setting('nginx_config_path')
haproxy_config_path = sql.get_setting('haproxy_config_path')
@ -454,12 +460,6 @@ def create_server(hostname, ip, group, typeip, enable, master, cred, port, desc,
roxywi_common.logging(f'Cannot scan a new server {hostname}', str(e), roxywi=1)
raise Exception(f'error: Cannot scan a new server {hostname} {e}')
try:
sql.insert_new_checker_setting_for_server(ip)
except Exception as e:
roxywi_common.logging(f'Cannot insert Checker settings for {hostname}', str(e), roxywi=1)
raise Exception(f'error: Cannot insert Checker settings for {hostname} {e}')
try:
get_system_info(ip)
except Exception as e:

View File

@ -20,17 +20,14 @@ except Exception as e:
sys.exit()
form = common.form
try:
servbackend = form.getvalue('servbackend')
serv = form.getvalue('serv')
if servbackend is None:
servbackend = ""
except Exception:
pass
servbackend = form.getvalue('servbackend')
serv = form.getvalue('serv')
if servbackend is None:
servbackend = ""
rendered_template = template.render(
h2=0, title="RunTime API", role=user_params['role'], user=user_params['user'], select_id="serv",
selects=user_params['servers'], token=user_params['token'], user_services=user_params['user_services'], servbackend=servbackend
selects=user_params['servers'], token=user_params['token'], user_services=user_params['user_services'],
servbackend=servbackend, lang=user_params['lang']
)
print(rendered_template)

View File

@ -1,4 +1,6 @@
{% extends "base.html" %}
{% block title %}{{lang.menu_links.add_proxy|title()}}{% endblock %}
{% block h2 %}{{lang.menu_links.add_proxy|title()}}{% endblock %}
{% block content %}
{% from 'include/input_macros.html' import input, checkbox, select %}
{% set balance_params = dict() %}

View File

@ -1,6 +1,6 @@
{% extends "base.html" %}
{% block title %}{{lang.menu_links.add_proxy.title}}{% endblock %}
{% block h2 %}{{lang.menu_links.add_proxy.title}}{% endblock %}
{% block title %}{{lang.menu_links.add_proxy|title()}}{% endblock %}
{% block h2 %}{{lang.menu_links.add_proxy|title()}}{% endblock %}
{% block content %}
{% from 'include/input_macros.html' import input, checkbox, select %}
{% set balance_params = dict() %}

View File

@ -1,6 +1,6 @@
{% extends "base.html" %}
{% block title %}{{ lang.menu_links.ha.title }} {% endblock %}
{% block h2 %}{{ lang.menu_links.ha.title }} {% endblock %}
{% block title %}{{ lang.menu_links.ha|title() }} {% endblock %}
{% block h2 %}{{ lang.menu_links.ha|title() }} {% endblock %}
{% block content %}
{% from 'include/input_macros.html' import input, checkbox %}
<script src="/inc/users.js"></script>

View File

@ -1,7 +1,7 @@
{% from 'include/input_macros.html' import copy_to_clipboard %}
{% extends "base.html" %}
{% block title %}{{ lang.menu_links.history.title }} {{ lang.words[service] }}{% endblock %}
{% block h2 %}{{ lang.menu_links.history.title }} {{ lang.words[service] }}{% endblock %}
{% block title %}{{ lang.menu_links.history|title() }} {{ lang.words[service] }}{% endblock %}
{% block h2 %}{{ lang.menu_links.history|title() }} {{ lang.words[service] }}{% endblock %}
{% block content %}
{% if user_status == 0 or user_plan == 'user' %}
{% include 'include/no_sub.html' %}

View File

@ -1,5 +1,5 @@
{% extends "base.html" %}
{% block title %}{{lang.menu_links.overview.title}}{% endblock %}
{% block title %}{{lang.menu_links.overview|title()}}{% endblock %}
{% block h2 %}{{lang.menu_links.overview.h2}}{% endblock %}
{% block content %}
<link href="/inc/css/chart.min.css" rel="stylesheet">

View File

@ -1,4 +1,6 @@
{% extends "base.html" %}
{% block title %}Runtime API{% endblock %}
{% block h2 %}Runtime API{% endblock %}
{% block content %}
{% from 'include/input_macros.html' import input, checkbox %}
<link href="/inc/css/table.css" rel="stylesheet" type="text/css">
@ -8,11 +10,11 @@
<ul>
<li><a href="#runtimeapi" title="Runtime API - Roxy-WI">Runtime API</a></li>
{% if role <= 3 %}
<li><a href="#maxconn" title="Runtime API: Changing Maxconn - Roxy-WI">Change Maxconn</a></li>
<li><a href="#ip" title="Runtime API: Changing IP and Port for backend servers - Roxy-WI">Change IP and Port</a></li>
<li><a href="#maxconn" title="Runtime API: {{lang.words.change|title()}} Maxconn - Roxy-WI">{{lang.words.change|title()}} Maxconn</a></li>
<li><a href="#ip" title="Runtime API: {{lang.words.change|title()}} IP {{lang.words.and}} {{lang.words.port}} {{lang.words.backend}} {{lang.words.servers}} - Roxy-WI">{{lang.words.change|title()}} IP {{lang.words.and}} {{lang.words.port}}</a></li>
<li><a href="#table" title="Runtime API: Stick Table - Roxy-WI">Stick Table</a></li>
<li><a href="#lists" title="Runtime API: Change dynamically whitelist and blacklist - Roxy-WI">Lists</a></li>
<li><a href="#sessions" title="Runtime API: Sessions - Roxy-WI">Sessions</a></li>
<li><a href="#lists" title="Runtime API: {{lang.words.change|title()}} {{lang.words.dynamically}}} whitelist {{lang.words.and}} blacklist - Roxy-WI">{{lang.words.lists|title()}}</a></li>
<li><a href="#sessions" title="Runtime API: {{lang.words.sessions|title()}}} - Roxy-WI">{{lang.words.sessions|title()}}</a></li>
{% endif %}
{% include 'include/login.html' %}
</ul>
@ -20,11 +22,11 @@
<div id="runtimeapi">
<table class="overview">
<tr class="overviewHead">
<td class="padding10 first-collumn">Server</td>
<td>Disable/Enable server or output any information</td>
<td>Command</td>
<td class="padding10 first-collumn">{{lang.words.server|title()}}</td>
<td>{{lang.words.action|title()}}</td>
<td>{{lang.words.command|title()}}</td>
{% if role <= 3 %}
<td class="checkbox-head">Save change</td>
<td class="checkbox-head">{{lang.words.save|title()}} {{lang.words.change}}</td>
{% endif %}
<td></td>
</tr>
@ -35,7 +37,7 @@
</td>
<td style="width: 30%;">
<select required name="servaction" id="servaction">
<option disabled>Choose action</option>
<option disabled>{{lang.words.select|title()}} {{lang.words.action}}</option>
{% if role <= 3 %}
<option value="disable">Disable</option>
<option value="shutdown">Shutdown</option>
@ -57,7 +59,7 @@
</td>
{% endif %}
<td>
<button type="submit" name="Enter" value="Enter" id="enter">Enter</button>
<button type="submit" name="Enter" value="Enter" id="enter">{{lang.words.enter|title()}}</button>
</td>
</form>
</tr>
@ -74,15 +76,15 @@
</script>
<div id="ajaxruntime"></div>
<div class="add-note addName alert-info" style="width: inherit; margin-right: 15px;">
You can read the description of all Run Time API <a href="https://roxy-wi.org/description/runtimeapi#commands" title="Run Time API description" target="_blank">here</a>
You can read the description of all Run Time API <a href="https://roxy-wi.org/description/runtimeapi#commands" title="Runtime API {{lang.words.desc}}" target="_blank">{{lang.words.here}}</a>
</div>
</div>
{% if role <= 3 %}
<div id="maxconn">
<table class="overview">
<tr class="overviewHead">
<td class="padding10 first-collumn">Server</td>
<td>Choose Frontend</td>
<td class="padding10 first-collumn">{{lang.words.server|title()}}</td>
<td>{{lang.words.select|title()}} {{lang.words.frontend|title()}}</td>
<td>Maxconn</td>
<td></td>
</tr>
@ -101,28 +103,28 @@
</select>
</td>
<td>
{{ input('maxconnint', title='Enter maxconn', type="number", required='required') }}
{{ input('maxconnint', title=lang.words.enter|title() + ' maxconn', type="number", required='required') }}
</td>
<td>
<button type="submit" name="Enter" value="Enter" id="enter">Enter</button>
<button type="submit" name="Enter" value="Enter" id="enter">{{lang.words.enter|title()}}</button>
</td>
</form>
</tr>
</table>
<div id="ajaxmaxconn"></div>
<div class="add-note addName alert-info" style="width: inherit; margin-right: 15px;">
You can read how it works <a href="https://roxy-wi.org/description/runtimeapi#maxconn" title="Change Maxconn" target="_blank">here</a>
{{lang.phrases.read_how_it_works}} <a href="https://roxy-wi.org/description/runtimeapi#maxconn" title="Change Maxconn" target="_blank">{{lang.words.here}}</a>
</div>
</div>
<div id="ip">
<table class="overview">
<tr class="overviewHead">
<td class="padding10 first-collumn">Server</td>
<td>Choose Backend</td>
<td>Choose Server</td>
<td>New IP</td>
<td>New Port</td>
<td class="padding10 first-collumn">{{lang.words.server|title()}}</td>
<td>{{lang.words.select|title()}} {{lang.words.backend|title()}}</td>
<td>{{lang.words.select|title()}} {{lang.words.server}}</td>
<td>{{lang.words.new|title()}} IP</td>
<td>{{lang.words.new|title()}} {{lang.words.port}}</td>
<td></td>
</tr>
<tr>
@ -144,10 +146,10 @@
</select>
</td>
<td>
{{ input('backend_ip', title='Set new server IP', required='required', size='16') }}
{{ input('backend_ip', title=lang.words.set|title()+' '+lang.words.new + ' ' + lang.words.server + ' IP', required='required', size='16') }}
</td>
<td>
{{ input('backend_port', title='Set new server Port', type="number", required='required', size='6') }}
{{ input('backend_port', title=lang.words.set|title()+' '+lang.words.new + ' ' + lang.words.server + ' ' + lang.words.port, type="number", required='required', size='6') }}
</td>
<td>
<button type="submit" name="Enter" value="Enter" id="enter">Enter</button>
@ -157,14 +159,14 @@
</table>
<div id="ajaxip"></div>
<div class="add-note addName alert-info" style="width: inherit; margin-right: 15px;">
You can read how it works <a href="https://roxy-wi.org/description/runtimeapi#ip" title="Change IP and Port" target="_blank">here</a>
{{lang.phrases.read_how_it_works}} <a href="https://roxy-wi.org/description/runtimeapi#ip" title="Change IP and Port" target="_blank">{{lang.words.here}}</a>
</div>
</div>
<div id="table">
<table class="overview">
<tr class="overviewHead">
<td class="padding10 first-collumn">Server</td>
<td>Choose Table</td>
<td class="padding10 first-collumn">{{lang.words.server|title()}}</td>
<td>{{lang.words.select|title()}} {{lang.words.table}}</td>
<td></td>
</tr>
<tr>
@ -182,21 +184,21 @@
</select>
</td>
<td>
<button type="submit" name="Enter" value="Enter" id="enter">Get table</button>
<button type="submit" name="Enter" value="Enter" id="enter">{{lang.words.w_get|title()}} {{lang.words.table}}</button>
</td>
</form>
</tr>
</table>
<div id="ajaxtable"></div>
<div class="add-note addName alert-info" style="width: inherit; margin-right: 15px;">
You can read how it works <a href="https://roxy-wi.org/description/runtimeapi#ip" title="Change IP and Port" target="_blank">here</a>
{{lang.phrases.read_how_it_works}} <a href="https://roxy-wi.org/description/runtimeapi#ip" title="{{lang.words.change|title()}} IP {{lang.words.and}} {{lang.words.port}}" target="_blank">{{lang.words.here}}</a>
</div>
</div>
<div id="lists">
<table class="overview">
<tr class="overviewHead">
<td class="padding10 first-collumn">Server</td>
<td>Choose List</td>
<td class="padding10 first-collumn">{{lang.words.server|title()}}</td>
<td>{{lang.words.select|title()}} {{lang.words.list}}</td>
<td></td>
</tr>
<tr>
@ -214,20 +216,20 @@
</select>
</td>
<td>
<button type="submit" name="Enter" value="Enter" id="enter">Get list</button>
<button type="submit" name="Enter" value="Enter" id="enter">{{lang.words.w_get|title()}} {{lang.words.list}}</button>
</td>
</form>
</tr>
</table>
<div id="ajaxlist"></div>
<div class="add-note addName alert-info" style="width: inherit; margin-right: 15px;">
You can read how it works <a href="https://roxy-wi.org/description.py/runtimeapi#lists" title="Manage lists" target="_blank">here</a>
{{lang.phrases.read_how_it_works}} <a href="https://roxy-wi.org/description.py/runtimeapi#lists" title="{{lang.words.manage|title()}} {{lang.words.lists}}" target="_blank">{{lang.words.here}}</a>
</div>
</div>
<div id="sessions">
<table class="overview">
<tr class="overviewHead">
<td class="padding10 first-collumn">Server</td>
<td class="padding10 first-collumn">{{lang.words.server|title()}}</td>
<td></td>
</tr>
<tr>
@ -241,15 +243,12 @@
</select>
</td>
<td>
<button type="submit" name="Enter" value="Enter" id="enter">Get sessions</button>
<button type="submit" name="Enter" value="Enter" id="enter">{{lang.words.w_get|title()}} {{lang.words.sessions}}</button>
</td>
</form>
</tr>
</table>
<div id="ajaxsessions"></div>
<div class="add-note addName alert-info" style="width: inherit; margin-right: 15px;">
You can read how it works <a href="https://roxy-wi.org/description/runtimeapi#lists" title="Manage lists" target="_blank">here</a>
</div>
</div>
{% endif %}
</div>