diff --git a/app/modules/config/config.py b/app/modules/config/config.py
index acff1322..addc74ef 100644
--- a/app/modules/config/config.py
+++ b/app/modules/config/config.py
@@ -2,7 +2,7 @@ import os
from pathlib import Path
from typing import Any
-from flask import render_template, request
+from flask import render_template, request, g
import app.modules.db.sql as sql
import app.modules.db.user as user_sql
@@ -203,6 +203,8 @@ def upload_and_restart(server_ip: str, cfg: str, just_save: str, service: str, *
:return: Error message or service title
"""
+ user_id = g.user_params['user_id']
+ user = user_sql.get_user_id(user_id)
file_format = config_common.get_file_format(service)
config_path = kwargs.get('config_file_name')
config_date = get_date.return_date('config')
@@ -216,28 +218,27 @@ def upload_and_restart(server_ip: str, cfg: str, just_save: str, service: str, *
common.check_is_conf(config_path)
- login = kwargs.get('login') if kwargs.get('login') else 1
tmp_file = f"{sql.get_setting('tmp_config_path')}/{config_date}.{file_format}"
try:
os.system(f"dos2unix -q {cfg}")
except OSError as e:
- roxywi_common.handle_exceptions(e, 'Roxy-WI server', 'There is no dos2unix')
+ roxywi_common.handle_exceptions(e, 'Roxy-WI server', 'There is no dos2unix', login=user.username)
try:
upload(server_ip, tmp_file, cfg)
except Exception as e:
- roxywi_common.handle_exceptions(e, 'Roxy-WI server', 'Cannot upload config', login=login)
+ roxywi_common.handle_exceptions(e, 'Roxy-WI server', 'Cannot upload config', login=user.username)
try:
if just_save != 'test':
- roxywi_common.logging(server_ip, 'A new config file has been uploaded', login=login, keep_history=1, service=service)
+ roxywi_common.logging(server_ip, 'A new config file has been uploaded', login=user.username, keep_history=1, service=service)
except Exception as e:
roxywi_common.logging('Roxy-WI server', str(e), roxywi=1)
# If master then save a version of config in a new way
if not kwargs.get('slave') and service != 'waf':
- _create_config_version(server_id, server_ip, service, config_path, kwargs.get('login'), cfg, kwargs.get('oldcfg'), tmp_file)
+ _create_config_version(server_id, server_ip, service, config_path, user.username, cfg, kwargs.get('oldcfg'), tmp_file)
try:
commands = _generate_command(service, server_id, just_save, config_path, tmp_file, cfg, server_ip)
@@ -251,7 +252,7 @@ def upload_and_restart(server_ip: str, cfg: str, just_save: str, service: str, *
try:
if just_save in ('reload', 'restart'):
- roxywi_common.logging(server_ip, f'Service has been {just_save}ed', login=login, keep_history=1, service=service)
+ roxywi_common.logging(server_ip, f'Service has been {just_save}ed', login=user.username, keep_history=1, service=service)
except Exception as e:
roxywi_common.logging('Roxy-WI server', str(e), roxywi=1)
@@ -280,11 +281,6 @@ def master_slave_upload_and_restart(server_ip: str, cfg: str, just_save: str, se
waf = kwargs.get('waf')
server_name = server_sql.get_hostname_by_server_ip(server_ip)
- if kwargs.get('login'):
- login = kwargs.get('login')
- else:
- login = ''
-
for master in masters:
if master[0] is not None:
try:
@@ -296,7 +292,7 @@ def master_slave_upload_and_restart(server_ip: str, cfg: str, just_save: str, se
slave_output += f'
slave_server:\n error: {e}'
try:
output = upload_and_restart(
- server_ip, cfg, just_save, service, waf=waf, config_file_name=config_file_name, oldcfg=old_cfg, login=login
+ server_ip, cfg, just_save, service, waf=waf, config_file_name=config_file_name, oldcfg=old_cfg
)
except Exception as e:
output = f'error: {e}'
diff --git a/app/routes/add/routes.py b/app/routes/add/routes.py
index 428f2f27..7b4bc3c9 100644
--- a/app/routes/add/routes.py
+++ b/app/routes/add/routes.py
@@ -70,6 +70,7 @@ def add(service):
@bp.route('/haproxy/add', methods=['POST'])
+@get_user_params()
def add_haproxy():
"""
Add HAProxy sections
@@ -379,6 +380,7 @@ def add_haproxy():
@bp.post('/haproxy/userlist')
+@get_user_params()
def add_userlist():
"""
Add HAProxy section userlist
@@ -617,6 +619,7 @@ def lets():
@bp.post('/nginx/upstream')
+@get_user_params()
def add_nginx_upstream():
roxywi_auth.page_for_admin(level=3)
diff --git a/app/routes/config/routes.py b/app/routes/config/routes.py
index 8c10faee..880149d2 100644
--- a/app/routes/config/routes.py
+++ b/app/routes/config/routes.py
@@ -141,8 +141,6 @@ def save_config(service, server_ip):
oldcfg = request.form.get('oldconfig')
save = request.form.get('save')
config_file_name = request.form.get('config_file_name')
- user_id = g.user_params['user_id']
- user = user_sql.get_user_id(user_id)
try:
cfg = config_mod.return_cfg(service, server_ip, config_file_name)
@@ -160,7 +158,7 @@ def save_config(service, server_ip):
stderr = config_mod.upload_and_restart(server_ip, cfg, save, service, oldcfg=oldcfg)
else:
stderr = config_mod.master_slave_upload_and_restart(server_ip, cfg, save, service, oldcfg=oldcfg,
- config_file_name=config_file_name, login=user.username)
+ config_file_name=config_file_name)
except Exception as e:
return f'error: {e}', 200
@@ -322,6 +320,7 @@ def haproxy_section_show(server_ip, section):
@bp.route('/section/haproxy//save', methods=['POST'])
+@get_user_params()
def haproxy_section_save(server_ip):
hap_configs_dir = config_common.get_config_dir('haproxy')
cfg = config_common.generate_config_path('haproxy', server_ip)