From efc5ac3081c7152db0873e420bdaaca87dc980e9 Mon Sep 17 00:00:00 2001 From: Pavel Loginov Date: Fri, 7 Feb 2020 01:36:58 +0300 Subject: [PATCH] v4.0.0.0 Changelog: https://haproxy-wi.org/changelog.py#4 --- app/create_db.py | 1 - app/options.py | 10 +++-- app/sql.py | 14 +++--- app/templates/admin.html | 2 + app/templates/include/admin_add_server.html | 8 ++++ app/templates/include/admin_servers.html | 16 +++++++ app/templates/servers.html | 2 + inc/script.js | 3 +- inc/users.js | 48 ++++++++++++++------- 9 files changed, 78 insertions(+), 26 deletions(-) diff --git a/app/create_db.py b/app/create_db.py index 4a32bf00..f2fb66b8 100644 --- a/app/create_db.py +++ b/app/create_db.py @@ -397,7 +397,6 @@ def update_db_v_4(**kwargs): sql.append("INSERT INTO settings (param, value, section, `desc`) values('nginx_status_command', 'systemctl status nginx', 'nginx', 'Command for status check Nginx service');") sql.append("INSERT INTO settings (param, value, section, `desc`) values('nginx_dir', '/etc/nginx/conf.d/', 'nginx', 'Path to Nginx dir');") sql.append("INSERT INTO settings (param, value, section, `desc`) values('nginx_config_path', '/etc/nginx/conf.d/default.conf', 'nginx', 'Path to Nginx config');") - sql.append("update `servers` set `haproxy` = '1';") for i in sql: try: cur.execute(i) diff --git a/app/options.py b/app/options.py index 40d16ee1..f41ba4c8 100644 --- a/app/options.py +++ b/app/options.py @@ -312,7 +312,7 @@ if act == "overviewHapwi": from jinja2 import Environment, FileSystemLoader env = Environment(loader=FileSystemLoader('templates/ajax'), autoescape=True) template = env.get_template('/overviewHapwi.html') - cmd = "top -b -n 1 |head -9" + cmd = "top -b -n 1 |head -12" server_status, stderr = funct.subprocess_execute(cmd) template = template.render(server_status=server_status,stderr=stderr) @@ -1159,6 +1159,8 @@ if form.getvalue('newserver') is not None: ip = form.getvalue('newip') group = form.getvalue('newservergroup') typeip = form.getvalue('typeip') + haproxy = form.getvalue('haproxy') + nginx = form.getvalue('nginx') enable = form.getvalue('enable') master = form.getvalue('slave') cred = form.getvalue('cred') @@ -1167,7 +1169,7 @@ if form.getvalue('newserver') is not None: port = form.getvalue('newport') desc = form.getvalue('desc') - if sql.add_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): from jinja2 import Environment, FileSystemLoader env = Environment(loader=FileSystemLoader('templates/')) template = env.get_template('ajax/new_server.html') @@ -1195,6 +1197,8 @@ if form.getvalue('updateserver') is not None: name = form.getvalue('updateserver') group = form.getvalue('servergroup') typeip = form.getvalue('typeip') + haproxy = form.getvalue('haproxy') + nginx = form.getvalue('nginx') enable = form.getvalue('enable') master = form.getvalue('slave') id = form.getvalue('id') @@ -1205,7 +1209,7 @@ if form.getvalue('updateserver') is not None: if name is None or port is None: print(error_mess) else: - sql.update_server(name, group, typeip, enable, master, id, cred, port, desc) + sql.update_server(name, group, typeip, enable, master, id, cred, port, desc, haproxy, nginx) funct.logging('the server '+name, ' has updated ', haproxywi=1, login=1) diff --git a/app/sql.py b/app/sql.py index fe21719e..eb8abd48 100644 --- a/app/sql.py +++ b/app/sql.py @@ -161,11 +161,11 @@ def update_group(name, descript, id): con.close() -def add_server(hostname, ip, group, typeip, enable, master, cred, port, desc): +def add_server(hostname, ip, group, typeip, enable, master, cred, port, desc, haproxy, nginx): con, cur = get_cur() - sql = """ INSERT INTO servers (hostname, ip, groups, type_ip, enable, master, cred, port, `desc`) + sql = """ INSERT INTO servers (hostname, ip, groups, type_ip, enable, master, cred, port, `desc`, haproxy, nginx) VALUES ('%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s', '%s') - """ % (hostname, ip, group, typeip, enable, master, cred, port, desc) + """ % (hostname, ip, group, typeip, enable, master, cred, port, desc, haproxy, nginx) try: cur.execute(sql) con.commit() @@ -210,7 +210,7 @@ def update_hapwi_server(id, alert, metrics, active): con.close() -def update_server(hostname, group, typeip, enable, master, id, cred, port, desc): +def update_server(hostname, group, typeip, enable, master, id, cred, port, desc, haproxy, nginx): con, cur = get_cur() sql = """ update servers set hostname = '%s', @@ -220,8 +220,10 @@ def update_server(hostname, group, typeip, enable, master, id, cred, port, desc) master = '%s', cred = '%s', port = '%s', - `desc` = '%s' - where id = '%s'""" % (hostname, group, typeip, enable, master, cred, port, desc, id) + `desc` = '%s', + haproxy = '%s', + nginx = '%s' + where id = '%s'""" % (hostname, group, typeip, enable, master, cred, port, desc, haproxy, nginx, id) try: cur.execute(sql) con.commit() diff --git a/app/templates/admin.html b/app/templates/admin.html index 7a9f426e..a50aa3e9 100644 --- a/app/templates/admin.html +++ b/app/templates/admin.html @@ -145,6 +145,8 @@ Group Enable Virt + HAProxy + Nginx Slave for Credentials Description diff --git a/app/templates/include/admin_add_server.html b/app/templates/include/admin_add_server.html index d1ce00db..e6e4b391 100644 --- a/app/templates/include/admin_add_server.html +++ b/app/templates/include/admin_add_server.html @@ -33,6 +33,14 @@ Virt {{ checkbox('typeip') }} + + HAProxy + {{ checkbox('haproxy') }} + + + Nginx + {{ checkbox('nginx') }} + Slave for diff --git a/app/templates/include/admin_servers.html b/app/templates/include/admin_servers.html index 3512fc37..5d2d619f 100644 --- a/app/templates/include/admin_servers.html +++ b/app/templates/include/admin_servers.html @@ -15,6 +15,22 @@ {{ checkbox(id) }} {% endif %} + + {% set id = 'haproxy-' + server.0|string() %} + {% if server.15 == 1 %} + {{ checkbox(id, checked='checked') }} + {% else %} + {{ checkbox(id) }} + {% endif %} + + + {% set id = 'nginx-' + server.0|string() %} + {% if server.14 == 1 %} + {{ checkbox(id, checked='checked') }} + {% else %} + {{ checkbox(id) }} + {% endif %} +