diff --git a/app/options.py b/app/options.py index 6883c98d..6dae154f 100644 --- a/app/options.py +++ b/app/options.py @@ -577,7 +577,7 @@ if act == "overviewServers": out1 += r out1 += "
" else: - out1 = "Can\'t connect to HAproxy" + out1 = "Cannot connect to HAProxy" else: out1 = '' @@ -655,9 +655,9 @@ if serv is not None and act == "stats": try: response = requests.get('http://%s:%s/%s' % (serv, stats_port, stats_page), auth=(haproxy_user, haproxy_pass)) except requests.exceptions.ConnectTimeout: - print('error: Oops. Connection timeout occured!') + print('error: Oops. Connection timeout occurred!') except requests.exceptions.ReadTimeout: - print('error: Oops. Read timeout occured') + print('error: Oops. Read timeout occurred') except requests.exceptions.HTTPError as errh: print("error: Http Error:", errh) except requests.exceptions.ConnectionError as errc: @@ -845,7 +845,7 @@ if form.getvalue('servaction') is not None: if enable != "show": print( - '

You %s %s on HAproxy %s. Look it or Edit something else


' % (enable, backend, serv, serv)) + '

You %s %s on HAProxy %s. Look it or Edit something else


' % (enable, backend, serv, serv)) print(funct.ssh_command(serv, command, show_log="1")) action = 'runtimeapi.py ' + enable + ' ' + backend @@ -2772,3 +2772,97 @@ if form.getvalue('edit_aws_provider'): if sql.update_aws_provider(new_name, new_key, new_secret, provider_id): print('ok') funct.logging('localhost', 'Provider has been renamed. New name is ' + new_name, provisioning=1) + +if form.getvalue('loadservices') or form.getvalue('loadupdatehapwi') or form.getvalue('loadchecker'): + from jinja2 import Environment, FileSystemLoader + env = Environment(loader=FileSystemLoader('templates')) + versions = '' + checker_ver = '' + smon_ver = '' + metrics_ver = '' + keep_ver = '' + telegrams = '' + groups = '' + page = '' + + if form.getvalue('loadservices'): + template = env.get_template('ajax/load_services.html') + elif form.getvalue('loadupdatehapwi'): + versions = funct.versions() + checker_ver = funct.check_new_version(service='checker') + smon_ver = funct.check_new_version(service='smon') + metrics_ver = funct.check_new_version(service='metrics') + keep_ver = funct.check_new_version(service='keep') + template = env.get_template('ajax/load_updatehapwi.html') + elif form.getvalue('loadchecker'): + groups = sql.select_groups() + page = form.getvalue('page') + if page == 'servers.py': + user_group = funct.get_user_group(id=1) + telegrams = sql.get_user_telegram_by_group(user_group) + else: + telegrams = sql.select_telegram() + + template = env.get_template('ajax/load_telegram.html') + + services = [] + services_name = {'checker_haproxy': 'Checker backends master service', + 'keep_alive': 'Auto start service', + 'metrics_haproxy': 'Metrics master service', + 'prometheus': 'Prometheus service', + 'grafana-server': 'Grafana service', + 'smon': 'Simple monitoring network ports', + 'fail2ban': 'Fail2ban service'} + for s, v in services_name.items(): + cmd = "systemctl status %s |grep Act |awk '{print $2}'" % s + status, stderr = funct.subprocess_execute(cmd) + if s != 'keep_alive': + service_name = s.split('_')[0] + else: + service_name = s + cmd = "rpm --query haproxy-wi-" + service_name + "-* |awk -F\"" + service_name + "\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'" + service_ver, stderr = funct.subprocess_execute(cmd) + + try: + services.append([s, status, v, service_ver[0]]) + except Exception: + services.append([s, status, v, '']) + + template = template.render(services=services, + versions=versions, + checker_ver=checker_ver, + smon_ver=smon_ver, + metrics_ver=metrics_ver, + keep_ver=keep_ver, + telegrams=telegrams, + groups=groups, + page=page) + print(template) + +if form.getvalue('loadopenvpn'): + import platform + from jinja2 import Environment, FileSystemLoader + env = Environment(loader=FileSystemLoader('templates')) + template = env.get_template('ajax/load_openvpn.html') + openvpn_configs = '' + openvpn_sess = '' + openvpn = '' + + try: + os_name = platform.linux_distribution()[0] + except Exception: + os_name = '' + + if os_name == 'CentOS Linux' or os_name == 'Red Hat Enterprise Linux Server': + stdout, stderr = funct.subprocess_execute("rpm --query openvpn3-client") + if stdout[0] != 'package openvpn3-client is not installed' and stderr != '/bin/sh: rpm: command not found': + cmd = "sudo openvpn3 configs-list |grep -E 'ovpn|(^|[^0-9])[0-9]{4}($|[^0-9])' |grep -v net|awk -F\" \" '{print $1}'|awk 'ORS=NR%2?\" \":\"\\n\"'" + openvpn_configs, stderr = funct.subprocess_execute(cmd) + cmd = "sudo openvpn3 sessions-list|grep -E 'Config|Status'|awk -F\":\" '{print $2}'|awk 'ORS=NR%2?\" \":\"\\n\"'| sed 's/^ //g'" + openvpn_sess, stderr = funct.subprocess_execute(cmd) + openvpn = stdout[0] + + template = template.render(openvpn=openvpn, + openvpn_sess=openvpn_sess, + openvpn_configs=openvpn_configs) + print(template) diff --git a/app/servers.py b/app/servers.py index b51265fa..1afe2ce4 100644 --- a/app/servers.py +++ b/app/servers.py @@ -12,28 +12,10 @@ funct.page_for_admin(level=2) try: user, user_id, role, token, servers = funct.get_users_params() ldap_enable = sql.get_setting('ldap_enable') - grafana, stderr = funct.subprocess_execute("service grafana-server status |grep Active |awk '{print $1}'") user_group = funct.get_user_group(id=1) settings = sql.get_setting('', all=1) geoip_country_codes = sql.select_geoip_country_codes() - services = [] - services_name = {'checker_haproxy': 'Checker backends master service',} - for s, v in services_name.items(): - cmd = "systemctl status %s |grep Act |awk '{print $2}'" % s - status, stderr = funct.subprocess_execute(cmd) - if s != 'keep_alive': - service_name = s.split('_')[0] - else: - service_name = s - cmd = "rpm --query haproxy-wi-"+service_name+"-* |awk -F\""+service_name + "\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'" - service_ver, stderr = funct.subprocess_execute(cmd) - - try: - services.append([s, status, v, service_ver[0]]) - except Exception: - services.append([s, status, v, '']) - except Exception as e: pass @@ -48,13 +30,10 @@ output_from_parsed_template = template.render(title="Servers: ", masters=sql.select_servers(get_master_servers=1, uuid=user_id.value), group=user_group, sshs=sql.select_ssh(group=user_group), - telegrams=sql.get_user_telegram_by_group(user_group), token=token, settings=settings, backups=sql.select_backups(), - grafana=''.join(grafana), page="servers.py", geoip_country_codes=geoip_country_codes, - services=services, ldap_enable=ldap_enable) print(output_from_parsed_template) diff --git a/app/templates/admin.html b/app/templates/admin.html index b9d53012..4d8edfb1 100644 --- a/app/templates/admin.html +++ b/app/templates/admin.html @@ -75,101 +75,9 @@ {% include 'include/admin_ssh.html' %} -
- {% include 'include/admin_telegram.html' %} -
+
-
- {% if openvpn != '' %} - - - - - - - - - {% for c in openvpn_configs %} - - - - - - - {% endfor %} -

OpenVPN profiles

- Profile name - - Time of creation -
- {{c.split('/')[-1]}} - - {{c.split('/')[0]}} - - - - -
-
- - - - - - - - - {% for c in openvpn_sess %} - - - - - - - {% endfor %} -

OpenVPN sessions

- Session name - - Status -
- {{c.split(' ')[0]}} - - {{c.split(' ')[4]}} - - - - -
-
- - - - - - - - - - -

Uploading ovpn files

Ovpn file name - Upload ovpn file (?) -
- {{ input('ovpn_upload_name', size='30') }} - -

- Upload -

-
- - {% else %} -
-
-

You do not have installed OpenVPN client. - Read hear - how to install OpenVPN client

-
- {% endif %} -
+
{% include 'include/admin_settings.html' %} @@ -177,45 +85,18 @@
- - - - - - {% for s in services %} - - + + - - + - {% endfor %} + +
- Service - - Actions - Description
- {% if s.1.0 == 'active' %} - - {% else %} - {% if s.1.0 == 'inactive' or s.1.0 == 'failed' %} - - {% else %} - - {% endif %} - {% endif %} - {{s.0}} +
+ Service - - - - - - - - - - - {{ s.2 }} + + Actions Description
You can read about services here @@ -223,11 +104,8 @@
- {% set current_ver = versions.0 %} - {% set new_ver = versions.1 %} - {% set current_ver_without_dots = versions.2 %} - {% set new_ver_without_dots = versions.3 %} + @@ -237,95 +115,8 @@ Description - - - - - - - - {% for s in services %} - {% if s.0 == 'smon' or s.0 == 'checker_haproxy' or s.0 == 'keep_alive' or s.0 == 'metrics_haproxy' %} - - {% set is_need_update = 0 %} - {% if s.0 == 'smon' %} - {% set service_name = 'SMON' %} - {% set service_link = 'smon' %} - {% set desc_link = 'https://haproxy-wi.org/services.py?service=smon' %} - {% if s.3|float < smon_ver|float %} - {% set is_need_update = 1 %} - {% endif %} - {% elif s.0 == 'checker_haproxy' %} - {% set service_name = 'Checker' %} - {% set service_link = 'checker' %} - {% set desc_link = 'https://haproxy-wi.org/services.py?service=checker' %} - {% if s.3|float < checker_ver|float %} - {% set is_need_update = 1 %} - {% endif %} - {% elif s.0 == 'keep_alive' %} - {% set service_name = 'Auto start' %} - {% set service_link = 'auto_start' %} - {% set desc_link = 'https://haproxy-wi.org/services.py?service=auto_start' %} - {% if s.3|float < keep_ver|float %} - {% set is_need_update = 1 %} - {% endif %} - {% elif s.0 == 'metrics_haproxy' %} - {% set service_name = 'Metrics' %} - {% set service_link = 'metrics' %} - {% set desc_link = 'https://haproxy-wi.org/services.py?service=metrics' %} - {% if s.3|float < metrics_ver|float %} - {% set is_need_update = 1 %} - {% endif %} - {% endif %} - - - - - - - {% endif %} - {% endfor %} + +
Service Currnet version
- HAProxy-WI - - {{current_ver}} - - {{new_ver}} - - {% if new_ver_without_dots > current_ver_without_dots and new_ver != "Sorry cannot get current version" %} - Update - {% endif %} - - The main application -
- {{service_name}} - - {% if s.3 != '* is not installed' %} - {{s.3}} - {% endif %} - - - {% if s.0 == 'smon' %} - {{smon_ver}} - {% elif s.0 == 'checker_haproxy' %} - {{checker_ver}} - {% elif s.0 == 'keep_alive' %} - {{keep_ver}} - {% elif s.0 == 'metrics_haproxy' %} - {{metrics_ver}} - {% endif %} - - - {% if s.3 != '* is not installed' %} - {% if is_need_update %} - Update - {% endif %} - {% else %} - {{service_name}} service is not installed - Read about installation - {% endif %} - - Read more about {{service_name}} -
Note: diff --git a/app/templates/ajax/load_openvpn.html b/app/templates/ajax/load_openvpn.html new file mode 100644 index 00000000..822ae11a --- /dev/null +++ b/app/templates/ajax/load_openvpn.html @@ -0,0 +1,89 @@ +{% from 'include/input_macros.html' import input, select %} +{% if openvpn != '' %} + + + + + + + + + {% for c in openvpn_configs %} + + + + + + + {% endfor %} +

OpenVPN profiles

+ Profile name + + Time of creation +
+ {{c.split('/')[-1]}} + + {{c.split('/')[0]}} + + + + +
+
+ + + + + + + + + {% for c in openvpn_sess %} + + + + + + + {% endfor %} +

OpenVPN sessions

+ Session name + + Status +
+ {{c.split(' ')[0]}} + + {{c.split(' ')[4]}} + + + + +
+
+ + + + + + + + + + +

Uploading ovpn files

Ovpn file name + Upload ovpn file (?) +
+ {{ input('ovpn_upload_name', size='30') }} + +

+ Upload +

+
+{% else %} +
+
+

You do not have installed OpenVPN client. + Read hear + how to install OpenVPN client

+
+{% endif %} \ No newline at end of file diff --git a/app/templates/ajax/load_services.html b/app/templates/ajax/load_services.html new file mode 100644 index 00000000..29277748 --- /dev/null +++ b/app/templates/ajax/load_services.html @@ -0,0 +1,30 @@ +{% for s in services %} + + + {% if s.1.0 == 'active' %} + + {% else %} + {% if s.1.0 == 'inactive' or s.1.0 == 'failed' %} + + {% else %} + + {% endif %} + {% endif %} + {{s.0}} + + + + + + + + + + + + + + {{ s.2 }} + + +{% endfor %} \ No newline at end of file diff --git a/app/templates/ajax/load_telegram.html b/app/templates/ajax/load_telegram.html new file mode 100644 index 00000000..fe187f07 --- /dev/null +++ b/app/templates/ajax/load_telegram.html @@ -0,0 +1,66 @@ +{% from 'include/input_macros.html' import input, select %} +{% for s in services %} +{% if s.0 == 'checker_haproxy' %} + {% if s.3 != '* is not installed' and s.3 != '' %} + + + + + {% if page != "servers.py" %} + + {% endif %} + + + + {% for telegram in telegrams %} + + + + {% if page != "servers.py" %} + + {% endif %} + + + + {% endfor %} +
+ Token + Channel nameGroup
+ {% set id = 'telegram-token-' + telegram.0|string() %} + {{ input(id, value=telegram.1, size='30') }} + + {% set id = 'telegram-chanel-' + telegram.0|string() %} + {{ input(id, value=telegram.2) }} + + + + + + +
+
+ Add +

+
+
+ You can read the description of all parameters here + and How to create and use Telegram bot in this article +
+ {% else %} +
+
+

You do not have installed Backends checker + Read hear + how to install Checker service

+
+ {% endif %} +{% endif %} +{% endfor %} diff --git a/app/templates/ajax/load_updatehapwi.html b/app/templates/ajax/load_updatehapwi.html new file mode 100644 index 00000000..21ed7390 --- /dev/null +++ b/app/templates/ajax/load_updatehapwi.html @@ -0,0 +1,93 @@ +{% set current_ver = versions.0 %} +{% set new_ver = versions.1 %} +{% set current_ver_without_dots = versions.2 %} +{% set new_ver_without_dots = versions.3 %} + + + HAProxy-WI + + + {{current_ver}} + + + {{new_ver}} + + + {% if new_ver_without_dots > current_ver_without_dots and new_ver != "Sorry cannot get current version" %} + Update + {% endif %} + + + The main application + + +{% for s in services %} + {% if s.0 == 'smon' or s.0 == 'checker_haproxy' or s.0 == 'keep_alive' or s.0 == 'metrics_haproxy' %} + + {% set is_need_update = 0 %} + {% if s.0 == 'smon' %} + {% set service_name = 'SMON' %} + {% set service_link = 'smon' %} + {% set desc_link = 'https://haproxy-wi.org/services.py?service=smon' %} + {% if s.3|float < smon_ver|float %} + {% set is_need_update = 1 %} + {% endif %} +{% elif s.0 == 'checker_haproxy' %} + {% set service_name = 'Checker' %} + {% set service_link = 'checker' %} + {% set desc_link = 'https://haproxy-wi.org/services.py?service=checker' %} + {% if s.3|float < checker_ver|float %} + {% set is_need_update = 1 %} + {% endif %} +{% elif s.0 == 'keep_alive' %} + {% set service_name = 'Auto start' %} + {% set service_link = 'auto_start' %} + {% set desc_link = 'https://haproxy-wi.org/services.py?service=auto_start' %} + {% if s.3|float < keep_ver|float %} + {% set is_need_update = 1 %} + {% endif %} +{% elif s.0 == 'metrics_haproxy' %} + {% set service_name = 'Metrics' %} + {% set service_link = 'metrics' %} + {% set desc_link = 'https://haproxy-wi.org/services.py?service=metrics' %} + {% if s.3|float < metrics_ver|float %} + {% set is_need_update = 1 %} + {% endif %} +{% endif %} + + {{service_name}} + + + {% if s.3 != '* is not installed' %} + {{s.3}} + {% endif %} + + + + {% if s.0 == 'smon' %} + {{smon_ver}} + {% elif s.0 == 'checker_haproxy' %} + {{checker_ver}} + {% elif s.0 == 'keep_alive' %} + {{keep_ver}} + {% elif s.0 == 'metrics_haproxy' %} + {{metrics_ver}} + {% endif %} + + + + {% if s.3 != '* is not installed' %} + {% if is_need_update %} + Update + {% endif %} + {% else %} + {{service_name}} service is not installed + Read about installation + {% endif %} + + + Read more about {{service_name}} + + +{% endif %} +{% endfor %} \ No newline at end of file diff --git a/app/templates/include/admin_telegram.html b/app/templates/include/admin_telegram.html deleted file mode 100644 index d1893954..00000000 --- a/app/templates/include/admin_telegram.html +++ /dev/null @@ -1,65 +0,0 @@ -{% for s in services %} -{% if s.0 == 'checker_haproxy' %} -{% if s.3 != '* is not installed' %} - - - - - {% if page != "servers.py" %} - - {% endif %} - - - - {% for telegram in telegrams %} - - - - {% if page != "servers.py" %} - - {% endif %} - - - - {% endfor %} -
- Token - Channel nameGroup
- {% set id = 'telegram-token-' + telegram.0|string() %} - {{ input(id, value=telegram.1, size='30') }} - - {% set id = 'telegram-chanel-' + telegram.0|string() %} - {{ input(id, value=telegram.2) }} - - - - - - -
-
+ Add -

-
-
- You can read the description of all parameters here - and How to create and use Telegram bot in this article -
-{% else %} -
-
-

You do not have installed Backends checker - Read hear - how to install Checker service

-
-{% endif %} -{% endif %} -{% endfor %} diff --git a/app/templates/servers.html b/app/templates/servers.html index 6ed3ef4d..05d9c5ad 100644 --- a/app/templates/servers.html +++ b/app/templates/servers.html @@ -36,10 +36,7 @@ {% include 'include/servers_group_error.html' %}
-
- {% include 'include/admin_telegram.html' %} - {% include 'include/servers_group_error.html' %} -
+
{% include 'include/admin_settings.html' %} diff --git a/app/users.py b/app/users.py index c8c49358..703de26a 100644 --- a/app/users.py +++ b/app/users.py @@ -3,13 +3,10 @@ import funct import sql from jinja2 import Environment, FileSystemLoader -import platform + env = Environment(loader=FileSystemLoader('templates/'), autoescape=True) template = env.get_template('admin.html') form = funct.form -openvpn_configs = '' -openvpn_sess = '' -openvpn = '' print('Content-type: text/html\n') @@ -23,43 +20,6 @@ try: ldap_enable = sql.get_setting('ldap_enable') grafana, stderr = funct.subprocess_execute("service grafana-server status |grep Active |awk '{print $1}'") - services = [] - services_name = {'checker_haproxy': 'Checker backends master service', - 'keep_alive': 'Auto start service', - 'metrics_haproxy': 'Metrics master service', - 'prometheus': 'Prometheus service', - 'grafana-server': 'Grafana service', - 'smon': 'Simple monitoring network ports', - 'fail2ban': 'Fail2ban service'} - for s, v in services_name.items(): - cmd = "systemctl status %s |grep Act |awk '{print $2}'" % s - status, stderr = funct.subprocess_execute(cmd) - if s != 'keep_alive': - service_name = s.split('_')[0] - else: - service_name = s - cmd = "rpm --query haproxy-wi-"+service_name+"-* |awk -F\""+service_name + "\" '{print $2}' |awk -F\".noa\" '{print $1}' |sed 's/-//1' |sed 's/-/./'" - service_ver, stderr = funct.subprocess_execute(cmd) - - try: - services.append([s, status, v, service_ver[0]]) - except Exception: - services.append([s, status, v, '']) - - try: - os_name = platform.linux_distribution()[0] - except Exception: - os_name = '' - - if os_name == 'CentOS Linux' or os_name == 'Red Hat Enterprise Linux Server': - stdout, stderr = funct.subprocess_execute("rpm --query openvpn3-client") - if stdout[0] != 'package openvpn3-client is not installed' and stderr != '/bin/sh: rpm: command not found': - cmd = "sudo openvpn3 configs-list |grep -E 'ovpn|(^|[^0-9])[0-9]{4}($|[^0-9])' |grep -v net|awk -F\" \" '{print $1}'|awk 'ORS=NR%2?\" \":\"\\n\"'" - openvpn_configs, stderr = funct.subprocess_execute(cmd) - cmd = "sudo openvpn3 sessions-list|grep -E 'Config|Status'|awk -F\":\" '{print $2}'|awk 'ORS=NR%2?\" \":\"\\n\"'| sed 's/^ //g'" - openvpn_sess, stderr = funct.subprocess_execute(cmd) - openvpn = stdout[0] - except Exception: pass @@ -73,19 +33,9 @@ template = template.render(title="Admin area: Manage users", roles=sql.select_roles(), masters=sql.select_servers(get_master_servers=1), sshs=sql.select_ssh(), - telegrams=sql.select_telegram(), token=token, - versions=funct.versions(), - checker_ver=funct.check_new_version(service='checker'), - smon_ver=funct.check_new_version(service='smon'), - metrics_ver=funct.check_new_version(service='metrics'), - keep_ver=funct.check_new_version(service='keep'), - openvpn=openvpn, - openvpn_configs=openvpn_configs, - openvpn_sess=openvpn_sess, settings=settings, backups=sql.select_backups(), - services=services, grafana=''.join(grafana), page="users.py", ldap_enable=ldap_enable) diff --git a/inc/users.js b/inc/users.js index b181f8a4..f2e74ac1 100644 --- a/inc/users.js +++ b/inc/users.js @@ -776,7 +776,38 @@ $( function() { } } ); }); + $("#tabs ul li").click(function() { + var activeTab = $(this).find("a").attr("href"); + + if (activeTab == '#services') { + loadServices(); + } else if (activeTab == '#updatehapwi') { + loadupdatehapwi(); + } else if (activeTab == '#checker'){ + loadchecker(); + } else if (activeTab == '#openvpn'){ + loadopenvpn(); + } + }); } ); +window.onload = function() { + var activeTabIdx = $('#tabs').tabs('option','active') + if (cur_url[0].split('#')[0] == 'users.py') { + if (activeTabIdx == 7) { + loadServices(); + } else if (activeTabIdx == 8) { + loadupdatehapwi(); + } else if (activeTabIdx == 4) { + loadchecker(); + } else if (activeTabIdx == 5) { + loadopenvpn(); + } + } else if (cur_url[0].split('#')[0] == 'servers.py') { + if (activeTabIdx == 3) { + loadchecker(); + } + } +} function common_ajax_action_after_success(dialog_id, new_group, ajax_append_id, data) { toastr.clear(); $("#"+ajax_append_id).append(data); @@ -842,7 +873,7 @@ function addNewSmonServer(dialog_id) { $( "input[type=submit], button" ).button(); $( "input[type=checkbox]" ).checkboxradio(); $( "select" ).selectmenu(); - $.getScript('/inc/unsers.js'); + $.getScript('/inc/users.js'); } } } ); @@ -1014,7 +1045,6 @@ function addCreds(dialog_id) { toastr.error(data); } else { var group_name = getGroupNameById($('#new-sshgroup').val()); - console.log(group_name) var getId = new RegExp('ssh-table-[0-9]+'); var id = data.match(getId) + ''; id = id.split('-').pop(); @@ -1043,7 +1073,6 @@ function getGroupNameById(group_id) { if (data.indexOf('error:') != '-1') { toastr.error(data); } else { - console.log(data); group_name = data; } } @@ -2005,8 +2034,13 @@ function ajaxActionServies(action, service) { token: $('#token').val() }, success: function( data ) { - window.history.pushState("services", "services", cur_url[0].split("#")[0]+"#services") - location.reload() + if (data.indexOf('error:') != '-1' || data.indexOf('Failed') != '-1') { + toastr.error(data); + } else { + window.history.pushState("services", "services", cur_url[0].split("#")[0] + "#services"); + toastr.success('The ' + service + 'has been ' + action +'ed'); + loadServices(); + } }, error: function(){ alert(w.data_error); @@ -2025,7 +2059,6 @@ function updateService(service) { }, type: "POST", success: function( data ) { - console.log(data) data = data.replace(/\s+/g,' '); if (data.indexOf('error:') != '-1' || data.indexOf('Failed') != '-1') { toastr.error(data); @@ -2060,7 +2093,8 @@ function updateService(service) { toastr.clear(); toastr.error(data); } - $("#ajax-update").html('') + $("#ajax-update").html(''); + loadupdatehapwi(); } } ); } @@ -2084,7 +2118,6 @@ function confirmDeleteOpenVpnProfile(id) { } function removeOpenVpnProfile(id) { - console.log(id) $("#"+id).css("background-color", "#f2dede"); $.ajax( { url: "options.py", @@ -2218,3 +2251,82 @@ function viewFirewallRules(id) { } } ); } +function loadServices() { + $.ajax({ + url: "options.py", + data: { + loadservices: 1, + token: $('#token').val() + }, + type: "POST", + success: function (data) { + data = data.replace(/\s+/g, ' '); + if (data.indexOf('danger') != '-1' || data.indexOf('unique') != '-1' || data.indexOf('error:') != '-1') { + toastr.error(data); + } else { + $('#ajax-services-body').html(data); + $.getScript(awesome); + } + } + } ); +} +function loadupdatehapwi() { + $.ajax({ + url: "options.py", + data: { + loadupdatehapwi: 1, + token: $('#token').val() + }, + type: "POST", + success: function (data) { + data = data.replace(/\s+/g, ' '); + if (data.indexOf('danger') != '-1' || data.indexOf('unique') != '-1' || data.indexOf('error:') != '-1') { + toastr.error(data); + } else { + $('#ajax-updatehapwi-body').html(data); + } + } + } ); +} +function loadchecker() { + $.ajax({ + url: "options.py", + data: { + loadchecker: 1, + page: cur_url[0].split('#')[0], + token: $('#token').val() + }, + type: "POST", + success: function (data) { + data = data.replace(/\s+/g, ' '); + if (data.indexOf('group_error') == '-1' && data.indexOf('error:') != '-1') { + toastr.error(data); + } else { + $('#checker').html(data); + $( "select" ).selectmenu(); + $.getScript('/inc/users.js'); + $.getScript(awesome); + } + } + } ); +} +function loadopenvpn() { + $.ajax({ + url: "options.py", + data: { + loadopenvpn: 1, + token: $('#token').val() + }, + type: "POST", + success: function (data) { + data = data.replace(/\s+/g, ' '); + if (data.indexOf('group_error') == '-1' && data.indexOf('error:') != '-1') { + toastr.error(data); + } else { + $('#openvpn').html(data); + $.getScript(awesome); + } + } + } ); +} +