mirror of https://github.com/Aidaho12/haproxy-wi
parent
df973474bc
commit
1f73efcf49
|
@ -27,11 +27,7 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
template = template.render(title = "Add",
|
template = template.render(title = "Add",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
|
@ -40,7 +36,7 @@ template = template.render(title = "Add",
|
||||||
add = form.getvalue('add'),
|
add = form.getvalue('add'),
|
||||||
conf_add = form.getvalue('conf'),
|
conf_add = form.getvalue('conf'),
|
||||||
group = user_group,
|
group = user_group,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
||||||
|
|
||||||
|
|
|
@ -26,11 +26,7 @@ try:
|
||||||
servbackend = ""
|
servbackend = ""
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')
|
dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')
|
||||||
white_dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')+"/"+user_group+"/white"
|
white_dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')+"/"+user_group+"/white"
|
||||||
|
@ -54,6 +50,6 @@ template = template.render(h2 = 1,
|
||||||
white_lists = white_lists,
|
white_lists = white_lists,
|
||||||
black_lists = black_lists,
|
black_lists = black_lists,
|
||||||
group = user_group,
|
group = user_group,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
|
@ -28,11 +28,6 @@ try:
|
||||||
role = sql.get_user_role_by_uuid(user_id.value)
|
role = sql.get_user_role_by_uuid(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
hap_configs_dir = funct.get_config_var('configs', 'haproxy_save_configs_dir')
|
hap_configs_dir = funct.get_config_var('configs', 'haproxy_save_configs_dir')
|
||||||
|
|
||||||
|
@ -103,6 +98,6 @@ template = template.render(h2 = 1, title = "Working with HAProxy configs",
|
||||||
stderr = stderr,
|
stderr = stderr,
|
||||||
error = error,
|
error = error,
|
||||||
note = 1,
|
note = 1,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
|
@ -27,11 +27,7 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
if serv is not None and form.getvalue('config') is not None:
|
if serv is not None and form.getvalue('config') is not None:
|
||||||
configver = form.getvalue('configver')
|
configver = form.getvalue('configver')
|
||||||
|
@ -71,6 +67,6 @@ template = template.render(h2 = 1, title = "Old Versions HAProxy config",
|
||||||
onclick = "showUploadConfig()",
|
onclick = "showUploadConfig()",
|
||||||
note = 1,
|
note = 1,
|
||||||
token = token,
|
token = token,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
view = view)
|
view = view)
|
||||||
print(template)
|
print(template)
|
||||||
|
|
|
@ -27,11 +27,7 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
form = cgi.FieldStorage()
|
form = cgi.FieldStorage()
|
||||||
serv = form.getvalue('serv')
|
serv = form.getvalue('serv')
|
||||||
|
@ -63,6 +59,6 @@ output_from_parsed_template = template.render(h2 = 1, title = "Delete old versio
|
||||||
open = form.getvalue('open'),
|
open = form.getvalue('open'),
|
||||||
Select = form.getvalue('del'),
|
Select = form.getvalue('del'),
|
||||||
file = file,
|
file = file,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
56
app/funct.py
56
app/funct.py
|
@ -65,6 +65,12 @@ def logging(serv, action, **kwargs):
|
||||||
elif kwargs.get('keep_alive') == 1:
|
elif kwargs.get('keep_alive') == 1:
|
||||||
mess = get_data('date_in_log') + action + "\n"
|
mess = get_data('date_in_log') + action + "\n"
|
||||||
log = open(log_path + "/keep_alive-"+get_data('logs')+".log", "a")
|
log = open(log_path + "/keep_alive-"+get_data('logs')+".log", "a")
|
||||||
|
elif kwargs.get('haproxywi') == 1:
|
||||||
|
if kwargs.get('login'):
|
||||||
|
mess = get_data('date_in_log') + " from " + IP + " user: " + login + " " + action + " for: " + serv + "\n"
|
||||||
|
else:
|
||||||
|
mess = get_data('date_in_log') + action + "\n"
|
||||||
|
log = open(log_path + "/haproxy-wi-"+get_data('logs')+".log", "a")
|
||||||
else:
|
else:
|
||||||
mess = get_data('date_in_log') + " from " + IP + " user: " + login + " " + action + " for: " + serv + "\n"
|
mess = get_data('date_in_log') + " from " + IP + " user: " + login + " " + action + " for: " + serv + "\n"
|
||||||
log = open(log_path + "/config_edit-"+get_data('logs')+".log", "a")
|
log = open(log_path + "/config_edit-"+get_data('logs')+".log", "a")
|
||||||
|
@ -93,7 +99,9 @@ def telegram_send_mess(mess, **kwargs):
|
||||||
bot = telebot.TeleBot(token=token_bot)
|
bot = telebot.TeleBot(token=token_bot)
|
||||||
bot.send_message(chat_id=channel_name, text=mess)
|
bot.send_message(chat_id=channel_name, text=mess)
|
||||||
except:
|
except:
|
||||||
print("Fatal: Can't send message. Add Telegram chanel before use alerting at this servers group")
|
mess = "Fatal: Can't send message. Add Telegram chanel before use alerting at this servers group"
|
||||||
|
print(mess)
|
||||||
|
logging('localhost', mess, haproxywi=1)
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
def check_login(**kwargs):
|
def check_login(**kwargs):
|
||||||
|
@ -245,7 +253,9 @@ def install_haproxy(serv, **kwargs):
|
||||||
" STATS_USER="+stats_user+" STATS_PASS="+stats_password ]
|
" STATS_USER="+stats_user+" STATS_PASS="+stats_password ]
|
||||||
|
|
||||||
error = str(upload(serv, tmp_config_path, script))
|
error = str(upload(serv, tmp_config_path, script))
|
||||||
|
|
||||||
if error:
|
if error:
|
||||||
|
logging('localhost', error, haproxywi=1)
|
||||||
print('error: '+error)
|
print('error: '+error)
|
||||||
|
|
||||||
os.system("rm -f %s" % script)
|
os.system("rm -f %s" % script)
|
||||||
|
@ -267,7 +277,9 @@ def syn_flood_protect(serv, **kwargs):
|
||||||
|
|
||||||
error = str(upload(serv, tmp_config_path, script))
|
error = str(upload(serv, tmp_config_path, script))
|
||||||
if error:
|
if error:
|
||||||
|
logging('localhost', error, haproxywi=1)
|
||||||
print('error: '+error)
|
print('error: '+error)
|
||||||
|
|
||||||
os.system("rm -f %s" % script)
|
os.system("rm -f %s" % script)
|
||||||
ssh_command(serv, commands, print_out="1")
|
ssh_command(serv, commands, print_out="1")
|
||||||
|
|
||||||
|
@ -287,6 +299,7 @@ def waf_install(serv, **kwargs):
|
||||||
error = str(upload(serv, tmp_config_path, script))
|
error = str(upload(serv, tmp_config_path, script))
|
||||||
if error:
|
if error:
|
||||||
print('error: '+error)
|
print('error: '+error)
|
||||||
|
logging('localhost', error, haproxywi=1)
|
||||||
os.system("rm -f %s" % script)
|
os.system("rm -f %s" % script)
|
||||||
|
|
||||||
stderr = ssh_command(serv, commands, print_out="1")
|
stderr = ssh_command(serv, commands, print_out="1")
|
||||||
|
@ -520,12 +533,39 @@ def check_new_version():
|
||||||
|
|
||||||
proxy = sql.get_setting('proxy')
|
proxy = sql.get_setting('proxy')
|
||||||
|
|
||||||
if proxy:
|
try:
|
||||||
proxyDict = { "https" : proxy, "http" : proxy }
|
if proxy:
|
||||||
response = requests.get('https://haproxy-wi.org/update.py?last_ver=1', verify=False, timeout=10, proxies=proxyDict)
|
proxyDict = { "https" : proxy, "http" : proxy }
|
||||||
else:
|
response = requests.get('https://haproxy-wi.org1/update.py?last_ver=1', verify=False, timeout=1, proxies=proxyDict)
|
||||||
response = requests.get('https://haproxy-wi.org/update.py?last_ver=1', verify=False, timeout=10)
|
else:
|
||||||
|
response = requests.get('https://haproxy-wi.org/update.py?last_ver=1', verify=False, timeout=1)
|
||||||
|
|
||||||
|
res = response.content.decode(encoding='UTF-8')
|
||||||
|
except requests.exceptions.RequestException as e:
|
||||||
|
#print(e)
|
||||||
|
e = str(e)
|
||||||
|
logging('localhost', ' '+e, haproxywi=1)
|
||||||
|
|
||||||
|
return res
|
||||||
|
|
||||||
res = response.content.decode(encoding='UTF-8')
|
|
||||||
|
def versions():
|
||||||
|
try:
|
||||||
|
current_ver = check_ver()
|
||||||
|
current_ver_without_dots = current_ver.split('.')
|
||||||
|
current_ver_without_dots = ''.join(current_ver_without_dots)
|
||||||
|
current_ver_without_dots = int(current_ver_without_dots)
|
||||||
|
except:
|
||||||
|
current_ver = "Sorry cannot get current version"
|
||||||
|
current_ver_without_dots = 0
|
||||||
|
|
||||||
return res
|
try:
|
||||||
|
new_ver = check_new_version()
|
||||||
|
new_ver_without_dots = new_ver.split('.')
|
||||||
|
new_ver_without_dots = ''.join(new_ver_without_dots)
|
||||||
|
new_ver_without_dots = int(new_ver_without_dots)
|
||||||
|
except:
|
||||||
|
new_ver = "Sorry cannot get new version"
|
||||||
|
new_ver_without_dots = 0
|
||||||
|
|
||||||
|
return current_ver, new_ver, current_ver_without_dots, new_ver_without_dots
|
|
@ -22,17 +22,13 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(h2 = 1, title = "Configure HA",
|
output_from_parsed_template = template.render(h2 = 1, title = "Configure HA",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
user = user,
|
user = user,
|
||||||
serv = serv,
|
serv = serv,
|
||||||
selects = servers,
|
selects = servers,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
|
@ -19,18 +19,14 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(h2 = 1, title = "Installation HAProxy",
|
output_from_parsed_template = template.render(h2 = 1, title = "Installation HAProxy",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
user = user,
|
user = user,
|
||||||
select_id = "haproxyaddserv",
|
select_id = "haproxyaddserv",
|
||||||
selects = servers,
|
selects = servers,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
||||||
|
|
||||||
|
|
|
@ -31,11 +31,7 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
if serv is not None:
|
if serv is not None:
|
||||||
cfg = kp_save_configs_dir+ serv + '-' + funct.get_data('config') + '.conf'
|
cfg = kp_save_configs_dir+ serv + '-' + funct.get_data('config') + '.conf'
|
||||||
|
@ -92,6 +88,6 @@ output_from_parsed_template = template.render(h2 = 1, title = "Edit Runnig Keepa
|
||||||
stderr = stderr,
|
stderr = stderr,
|
||||||
error = error,
|
error = error,
|
||||||
keepalived = 1,
|
keepalived = 1,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
|
@ -27,10 +27,6 @@ try:
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')
|
dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')
|
||||||
white_dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')+"/"+user_group+"/white"
|
white_dir = os.path.dirname(os.getcwd())+"/"+sql.get_setting('lists_path')+"/"+user_group+"/white"
|
||||||
|
@ -54,6 +50,6 @@ template = template.render(h2 = 1,
|
||||||
white_lists = white_lists,
|
white_lists = white_lists,
|
||||||
black_lists = black_lists,
|
black_lists = black_lists,
|
||||||
group = user_group,
|
group = user_group,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
|
@ -40,7 +40,7 @@ def send_cookie(login):
|
||||||
sql.write_user_uuid(login, user_uuid)
|
sql.write_user_uuid(login, user_uuid)
|
||||||
sql.write_user_token(login, user_token)
|
sql.write_user_token(login, user_token)
|
||||||
try:
|
try:
|
||||||
funct.logging('locahost', sql.get_user_name_by_uuid(user_uuid)+' log in')
|
funct.logging('locahost', sql.get_user_name_by_uuid(user_uuid)+' log in', haproxywi=1, login=1)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
print("Content-type: text/html\n")
|
print("Content-type: text/html\n")
|
||||||
|
@ -113,10 +113,6 @@ except:
|
||||||
user = ""
|
user = ""
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
if form.getvalue('logout'):
|
if form.getvalue('logout'):
|
||||||
try:
|
try:
|
||||||
|
@ -166,6 +162,6 @@ output_from_parsed_template = template.render(h2 = 1, title = "Login page. Enter
|
||||||
error_log = error_log,
|
error_log = error_log,
|
||||||
error = error,
|
error = error,
|
||||||
ref = ref,
|
ref = ref,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
db_create = db_create)
|
db_create = db_create)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
|
@ -30,11 +30,7 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(h2 = 1,
|
output_from_parsed_template = template.render(h2 = 1,
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
|
@ -47,7 +43,7 @@ output_from_parsed_template = template.render(h2 = 1,
|
||||||
serv = form.getvalue('serv'),
|
serv = form.getvalue('serv'),
|
||||||
rows = rows,
|
rows = rows,
|
||||||
grep = grep,
|
grep = grep,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
||||||
|
|
||||||
|
|
|
@ -18,11 +18,7 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
template = template.render(h2 = 1, title = "Metrics",
|
template = template.render(h2 = 1, title = "Metrics",
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
|
@ -30,6 +26,6 @@ template = template.render(h2 = 1, title = "Metrics",
|
||||||
user = user,
|
user = user,
|
||||||
onclick = "metricsShow()",
|
onclick = "metricsShow()",
|
||||||
table_stat = sql.select_table_metrics(user_id.value),
|
table_stat = sql.select_table_metrics(user_id.value),
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
|
@ -30,11 +30,7 @@ try:
|
||||||
metrics_worker, stderr = funct.subprocess_execute(cmd)
|
metrics_worker, stderr = funct.subprocess_execute(cmd)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
template = template.render(h2 = 1,
|
template = template.render(h2 = 1,
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
|
@ -48,6 +44,6 @@ template = template.render(h2 = 1,
|
||||||
checker_master = ''.join(checker_master),
|
checker_master = ''.join(checker_master),
|
||||||
checker_worker = ''.join(checker_worker),
|
checker_worker = ''.join(checker_worker),
|
||||||
error = stderr,
|
error = stderr,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
||||||
|
|
|
@ -22,11 +22,7 @@ try:
|
||||||
ldap_enable = sql.get_setting('ldap_enable')
|
ldap_enable = sql.get_setting('ldap_enable')
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(title = "Servers manage",
|
output_from_parsed_template = template.render(title = "Servers manage",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
|
@ -40,6 +36,6 @@ output_from_parsed_template = template.render(title = "Servers manage",
|
||||||
sshs = sql.select_ssh(),
|
sshs = sql.select_ssh(),
|
||||||
telegrams = sql.get_user_telegram_by_uuid(user_id.value),
|
telegrams = sql.get_user_telegram_by_uuid(user_id.value),
|
||||||
token = token,
|
token = token,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
ldap_enable = ldap_enable)
|
ldap_enable = ldap_enable)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
|
@ -21,16 +21,12 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
template = template.render(h2 = 1, title = "Settings",
|
template = template.render(h2 = 1, title = "Settings",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
user = user,
|
user = user,
|
||||||
settings = settings,
|
settings = settings,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
|
@ -116,7 +116,22 @@
|
||||||
</ul>
|
</ul>
|
||||||
</nav>
|
</nav>
|
||||||
<div class="copyright-menu">
|
<div class="copyright-menu">
|
||||||
<a href="https://github.com/aidaho12/haproxy-wi/" title="Github repo" target="_blank" style="color: #fff">HAproxy-WI</a> <span id="show-updates-button">v{{current_ver}}</span>
|
{% if versions is defined %}
|
||||||
|
{% set current_ver = versions.0 %}
|
||||||
|
{% set new_ver = versions.1 %}
|
||||||
|
{% set current_ver_without_dots = versions.2 %}
|
||||||
|
{% set new_ver_without_dots = versions.3 %}
|
||||||
|
{% endif %}
|
||||||
|
<a href="https://github.com/aidaho12/haproxy-wi/" title="Github repo" target="_blank" style="color: #fff">HAproxy-WI</a>
|
||||||
|
{% if new_ver_without_dots is defined and current_ver_without_dots is defined and new_ver is defined and new_ver_without_dots is defined %}
|
||||||
|
{% if new_ver_without_dots > current_ver_without_dots and new_ver != "Sorry cannot get current version" %}
|
||||||
|
<span id="show-updates-button" class="new-version-exists">v{{current_ver}} </span>
|
||||||
|
{% else %}
|
||||||
|
v{{current_ver}}
|
||||||
|
{% endif %}
|
||||||
|
{% else %}
|
||||||
|
v{{current_ver}}
|
||||||
|
{% endif %}
|
||||||
<br>
|
<br>
|
||||||
<a href="https://www.patreon.com/haproxy_wi" title="Donate" target="_blank" style="color: #fff; margin-left: 30px; color: red;" class="patreon"> Donate</a>
|
<a href="https://www.patreon.com/haproxy_wi" title="Donate" target="_blank" style="color: #fff; margin-left: 30px; color: red;" class="patreon"> Donate</a>
|
||||||
</div>
|
</div>
|
||||||
|
@ -220,7 +235,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="show-updates" style="display: none;">
|
<div id="show-updates" style="display: none;">
|
||||||
<div>
|
<div>
|
||||||
There is a new version HAProxy-WI
|
There is a new version HAProxy-WI. Check the <a href="/app/update.py">Update page</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
|
@ -35,6 +35,7 @@
|
||||||
<a class="ui-button ui-widget ui-corner-all" title="Compare configs" onclick="showCompareConfigs()">Compare</a>
|
<a class="ui-button ui-widget ui-corner-all" title="Compare configs" onclick="showCompareConfigs()">Compare</a>
|
||||||
<a class="ui-button ui-widget ui-corner-all" title="Show map" onclick="showMap()">Map</a>
|
<a class="ui-button ui-widget ui-corner-all" title="Show map" onclick="showMap()">Map</a>
|
||||||
<a class="ui-button ui-widget ui-corner-all" title="View stat" onclick="openStats()">Stat</a>
|
<a class="ui-button ui-widget ui-corner-all" title="View stat" onclick="openStats()">Stat</a>
|
||||||
|
<a class="ui-button ui-widget ui-corner-all" title="Show verisons" onclick="openVersions()">Verisons</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</form>
|
</form>
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -9,8 +9,8 @@
|
||||||
<td></td>
|
<td></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td class="padding10 first-collumn">
|
<td class="padding10 first-collumn" style="width: 350px;">
|
||||||
<b>Haproxy-WI will try install haproxy-2.0.3, if it does not work then haproxy-1.15</b>
|
<b>Haproxy-WI will try install haproxy-2.0.6, if it does not work then haproxy-1.15</b>
|
||||||
</td>
|
</td>
|
||||||
<td class="padding10 first-collumn">
|
<td class="padding10 first-collumn">
|
||||||
<select autofocus required name="{{select_id}}" id="{{select_id}}">
|
<select autofocus required name="{{select_id}}" id="{{select_id}}">
|
||||||
|
|
|
@ -15,7 +15,8 @@
|
||||||
<b>{{new_ver}}</b>
|
<b>{{new_ver}}</b>
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
{% if current_ver_without_dots < new_ver_without_dots and current_ver_without_dots != new_ver_without_dots and new_ver != "Sorry cannot get current version" %}
|
|
||||||
|
{% if new_ver_without_dots > current_ver_without_dots and new_ver != "Sorry cannot get current version" %}
|
||||||
<a class="ui-button ui-widget ui-corner-all" id="update_haproxy_wi" title="Update HAProxy">Update</a>
|
<a class="ui-button ui-widget ui-corner-all" id="update_haproxy_wi" title="Update HAProxy">Update</a>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</td>
|
</td>
|
||||||
|
@ -25,6 +26,7 @@
|
||||||
For update you have to use HAProxy-WI repository. If do not use repositiry then use update.sh script in HAProxy-WI home directory <br />
|
For update you have to use HAProxy-WI repository. If do not use repositiry then use update.sh script in HAProxy-WI home directory <br />
|
||||||
<br />
|
<br />
|
||||||
Read more about update in <a href="https://haproxy-wi.org/updates.py" title="Doc" target="_blank">docs</a>
|
Read more about update in <a href="https://haproxy-wi.org/updates.py" title="Doc" target="_blank">docs</a>
|
||||||
|
and <a href="https://haproxy-wi.org/changelog.py" title="Changelog" target="_blank">changelog</a>
|
||||||
</div>
|
</div>
|
||||||
<div id="ajax"></div>
|
<div id="ajax"></div>
|
||||||
{% endblock %}
|
{% endblock %}
|
|
@ -17,29 +17,11 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
current_ver_without_dots = current_ver.split('.')
|
|
||||||
current_ver_without_dots = ''.join(current_ver_without_dots)
|
|
||||||
except:
|
|
||||||
current_ver = "Sorry cannot get current version"
|
|
||||||
current_ver_without_dots = "Sorry cannot get current version"
|
|
||||||
|
|
||||||
try:
|
|
||||||
new_ver = funct.check_new_version()
|
|
||||||
new_ver_without_dots = new_ver.split('.')
|
|
||||||
new_ver_without_dots = ''.join(new_ver_without_dots)
|
|
||||||
except:
|
|
||||||
new_ver = "Sorry cannot get new version"
|
|
||||||
new_ver_without_dots = "Sorry cannot get new version"
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(h2 = 1, title = "Check updates",
|
output_from_parsed_template = template.render(h2 = 1, title = "Check updates",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
user = user,
|
user = user,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
current_ver_without_dots = current_ver_without_dots,
|
|
||||||
new_ver = new_ver,
|
|
||||||
new_ver_without_dots = new_ver_without_dots,
|
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
|
@ -26,11 +26,7 @@ try:
|
||||||
ldap_enable = sql.get_setting('ldap_enable')
|
ldap_enable = sql.get_setting('ldap_enable')
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(title = "Admin area: users manage",
|
output_from_parsed_template = template.render(title = "Admin area: users manage",
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
|
@ -43,6 +39,6 @@ output_from_parsed_template = template.render(title = "Admin area: users manage"
|
||||||
sshs = sql.select_ssh(),
|
sshs = sql.select_ssh(),
|
||||||
telegrams = sql.select_telegram(),
|
telegrams = sql.select_telegram(),
|
||||||
token = token,
|
token = token,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
ldap_enable = ldap_enable)
|
ldap_enable = ldap_enable)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
||||||
|
|
|
@ -47,11 +47,7 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
def get_files():
|
def get_files():
|
||||||
file = []
|
file = []
|
||||||
|
@ -73,6 +69,6 @@ output_from_parsed_template = template.render(h2 = 1,
|
||||||
selects = selects,
|
selects = selects,
|
||||||
rows = rows,
|
rows = rows,
|
||||||
grep = grep,
|
grep = grep,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
||||||
|
|
|
@ -27,11 +27,7 @@ try:
|
||||||
break
|
break
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
output_from_parsed_template = template.render(h2 = 1,
|
output_from_parsed_template = template.render(h2 = 1,
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
|
@ -42,7 +38,7 @@ output_from_parsed_template = template.render(h2 = 1,
|
||||||
select_id = "serv",
|
select_id = "serv",
|
||||||
selects = servers,
|
selects = servers,
|
||||||
serv = serv,
|
serv = serv,
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(output_from_parsed_template)
|
print(output_from_parsed_template)
|
||||||
|
|
||||||
|
|
|
@ -19,17 +19,13 @@ try:
|
||||||
token = sql.get_token(user_id.value)
|
token = sql.get_token(user_id.value)
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
current_ver = funct.check_ver()
|
|
||||||
except:
|
|
||||||
pass
|
|
||||||
|
|
||||||
template = template.render(h2 = 1, title = "Web application firewall",
|
template = template.render(h2 = 1, title = "Web application firewall",
|
||||||
autorefresh = 1,
|
autorefresh = 1,
|
||||||
role = sql.get_user_role_by_uuid(user_id.value),
|
role = sql.get_user_role_by_uuid(user_id.value),
|
||||||
user = user,
|
user = user,
|
||||||
table_stat = sql.select_table_metrics(user_id.value),
|
table_stat = sql.select_table_metrics(user_id.value),
|
||||||
current_ver = current_ver,
|
versions = funct.versions(),
|
||||||
token = token)
|
token = token)
|
||||||
print(template)
|
print(template)
|
|
@ -163,4 +163,10 @@
|
||||||
font-family: "Font Awesome 5 Solid";
|
font-family: "Font Awesome 5 Solid";
|
||||||
content: "\f067";
|
content: "\f067";
|
||||||
width:3px;
|
width:3px;
|
||||||
|
}
|
||||||
|
.new-version-exists::after {
|
||||||
|
display: none;
|
||||||
|
font-family: "Font Awesome 5 Solid";
|
||||||
|
content: "\f093";
|
||||||
|
padding-left: 5px;
|
||||||
}
|
}
|
|
@ -246,6 +246,12 @@ function openStats() {
|
||||||
var win = window.open(url, '_blank');
|
var win = window.open(url, '_blank');
|
||||||
win.focus();
|
win.focus();
|
||||||
}
|
}
|
||||||
|
function openVersions() {
|
||||||
|
var serv = $("#serv").val();
|
||||||
|
var url = "configver.py?serv="+serv+"&open=open"
|
||||||
|
var win = window.open(url, '_blank');
|
||||||
|
win.focus();
|
||||||
|
}
|
||||||
function showLog() {
|
function showLog() {
|
||||||
var waf = 0;
|
var waf = 0;
|
||||||
if ($('#waf').is(':checked')) {
|
if ($('#waf').is(':checked')) {
|
||||||
|
@ -1342,6 +1348,33 @@ $( function() {
|
||||||
} );
|
} );
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
|
var showUpdates = $( "#show-updates" ).dialog({
|
||||||
|
autoOpen: false,
|
||||||
|
resizable: false,
|
||||||
|
height: "auto",
|
||||||
|
width: 600,
|
||||||
|
modal: true,
|
||||||
|
title: 'There is a new version HAProxy-WI.',
|
||||||
|
show: {
|
||||||
|
effect: "fade",
|
||||||
|
duration: 200
|
||||||
|
},
|
||||||
|
hide: {
|
||||||
|
effect: "fade",
|
||||||
|
duration: 200
|
||||||
|
},
|
||||||
|
buttons: {
|
||||||
|
Close: function() {
|
||||||
|
$( this ).dialog( "close" );
|
||||||
|
clearTips();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
$('#show-updates-button').click(function() {
|
||||||
|
showUpdates.dialog('open');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
function sleep(ms) {
|
function sleep(ms) {
|
||||||
return new Promise(resolve => setTimeout(resolve, ms));
|
return new Promise(resolve => setTimeout(resolve, ms));
|
||||||
|
@ -1545,4 +1578,5 @@ function changeWafMode(id) {
|
||||||
}, 2500 );
|
}, 2500 );
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
10
inc/users.js
10
inc/users.js
|
@ -120,7 +120,11 @@ $( function() {
|
||||||
$('.alert-danger').remove();
|
$('.alert-danger').remove();
|
||||||
$('.alert-warning').remove();
|
$('.alert-warning').remove();
|
||||||
$("#ajax").html('<div class="alert alert-success">'+data+'</data>');
|
$("#ajax").html('<div class="alert alert-success">'+data+'</data>');
|
||||||
}
|
} else if (data.indexOf('Info') != '-1' ){
|
||||||
|
$('.alert-danger').remove();
|
||||||
|
$('.alert-warning').remove();
|
||||||
|
$("#ajax").html('<div class="alert alert-info">'+data+'</data>');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
});
|
});
|
||||||
|
@ -139,7 +143,7 @@ $( function() {
|
||||||
data = data.replace(/\s+/g,' ');
|
data = data.replace(/\s+/g,' ');
|
||||||
if (data.indexOf('error') != '-1' || data.indexOf('Failed') != '-1') {
|
if (data.indexOf('error') != '-1' || data.indexOf('Failed') != '-1') {
|
||||||
$("#ajax").html('<div class="alert alert-danger">'+data+'</data>');
|
$("#ajax").html('<div class="alert alert-danger">'+data+'</data>');
|
||||||
} else if (data.indexOf('success') != '-1'){
|
} else if (data.indexOf('Complete!') != '-1'){
|
||||||
$('.alert-danger').remove();
|
$('.alert-danger').remove();
|
||||||
$('.alert-warning').remove();
|
$('.alert-warning').remove();
|
||||||
$("#ajax").html('<div class="alert alert-success">'+data+'</data>');
|
$("#ajax").html('<div class="alert alert-success">'+data+'</data>');
|
||||||
|
@ -158,7 +162,7 @@ $( function() {
|
||||||
} else if (data.indexOf('No packages marked for update') != '-1') {
|
} else if (data.indexOf('No packages marked for update') != '-1') {
|
||||||
$('.alert-danger').remove();
|
$('.alert-danger').remove();
|
||||||
$('.alert-warning').remove();
|
$('.alert-warning').remove();
|
||||||
$("#ajax").html('<div class="alert alert-success">It is seems like you have the last version HAProxy-WI</data>');
|
$("#ajax").html('<div class="alert alert-info">It is seems like you have the last version HAProxy-WI</data>');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
|
|
|
@ -1,14 +1,13 @@
|
||||||
configparser==3.5.0
|
configparser==3.5.0
|
||||||
paramiko>=2.5.0
|
paramiko>=2.5.0
|
||||||
pytz==2017.3
|
pytz==2017.3
|
||||||
requests>=2.20.0
|
requests>=2.22.0
|
||||||
requests_toolbelt==0.8.0
|
requests_toolbelt==0.8.0
|
||||||
pyTelegramBotAPI==3.6.3
|
pyTelegramBotAPI==3.6.3
|
||||||
dump==0.0.4
|
dump==0.0.4
|
||||||
networkx==2.1
|
networkx==2.1
|
||||||
numpy==1.14.0
|
numpy==1.14.0
|
||||||
matplotlib==2.1.2
|
matplotlib==2.1.2
|
||||||
urllib3>=1.23
|
|
||||||
future==0.13.1
|
future==0.13.1
|
||||||
mysql-connector-python==8.0.11
|
mysql-connector-python==8.0.11
|
||||||
Jinja2>=2.10.1
|
Jinja2>=2.10.1
|
||||||
|
|
Loading…
Reference in New Issue