Coverage for server/bp/admin.py: 21%
39 statements
« prev ^ index » next coverage.py v7.9.1, created at 2026-01-26 23:58 +0100
« prev ^ index » next coverage.py v7.9.1, created at 2026-01-26 23:58 +0100
4from flask import Blueprint, request, url_for, render_template, redirect, render_template_string, send_file
8def create_admin_bp():
9 bp = Blueprint('admin', __name__, url_prefix='')
11 @bp.route("/admin_index")
12 def index():
13 from server.safia import register_user_get_data
14 user, data_needed, lss = register_user_get_data(request, list_data_needed=["project_id", "otp"])
16 id_admin = lss.lib_right.is_user_admin_config(lss.get_user_id())
17 if not id_admin:
18 return redirect(url_for('saxia_interface.index'))
20 from server.safia import lcs
21 config_app = lcs.get_config_app()
22 admin_config_project = config_app.get("admin_config_project", 90)
23 admin_config_project = lcs.get_non_secure_conf("hc_object_ids/admin_config_project", 9090)
25 key_data_admin_project = "safia.installation.folders"
27 config_admin_project = lss.load_conf_project(admin_config_project)
28 from lib.manaudit.lib_datou_audit import load_sub_json
29 data_admin_config = load_sub_json(config_admin_project, key_data_admin_project)
31 return_as_text = """Welcome to admin interface !<br>
32 This is just a test that needs to be renamed, if you are not admin, please report to doc@saxia.app !<br>
33 usage=audit_space_disk_installation<br>
34 """ + str(data_admin_config)
36 from lib.manaudit.lib_datou_audit import get_list_backup
37 list_backup = get_list_backup(data_admin_config.get("default").get("history_version_config_folder"))
39 return_as_text += "<br>List of available backups :<br>" + str(list_backup)
41 return return_as_text
43 @bp.route("/api/v1/admin/config/save", methods=["GET"])
44 def api_v1_admin_config_save():
45 from server.safia import register_user_get_data
46 user, data_needed, lss = register_user_get_data(request, list_data_needed=["project_id", "otp"])
48 id_admin = lss.lib_right.is_user_admin_config(lss.get_user_id())
49 if not id_admin:
50 return redirect(url_for('saxia_interface.index'))
52 id_version = request.args.get("id_version", None)
53 if id_version is None:
54 id_version = "tav"
55 return "You must provide an id_version parameter, tav for test !"
57 from auth.lib_conf_system import lcs_global_singleton
58 lcs_global_singleton.save_all_useful_config(id_version=id_version)
60 admin_user_id = lss.get_user_id()
62# lcs_global_singleton.load_config(id_version=id_version, verbose=verbose,
63# root_output=in_file, admin_user_id=admin_user_id)
65 return "Save config voilà, to use !"
67 return bp
69# usage
70# from server.bp.fvs import create_fvs_bp
71# fvs_bp = create_fvs_bp()
72# app.register_blueprint(fvs_bp)