62 lines
2.5 KiB
Python
Executable File
62 lines
2.5 KiB
Python
Executable File
#!/usr/bin/env python3
|
||
# -*- coding: utf-8 -*-
|
||
"""
|
||
Главное меню
|
||
Дата последней оптимизации: 21.04.2023
|
||
"""
|
||
|
||
from app import app # чтение из config.py
|
||
from flask import request # получение данных Cookie, GET и POST
|
||
import sys
|
||
import os
|
||
import json
|
||
|
||
# Подключаем свои библиотеки
|
||
sys.path.append("app/source")
|
||
sys.path.append("app/pages")
|
||
import API_Common as APIC
|
||
|
||
# Глобальные Переменные
|
||
CurPath: str = "app/pages"
|
||
NameModule = "rustdesk"
|
||
|
||
|
||
###############################################################################
|
||
# MAIN
|
||
###############################################################################
|
||
def Main(SessionID):
|
||
|
||
# Объявление переменных
|
||
Var = {"Title": "Главное меню", "ProgName": app.config['PROGNAME']}
|
||
Modal_Vars = {}
|
||
|
||
###
|
||
TemplateData = ""
|
||
ScriptBody = ""
|
||
|
||
# Генерируем HTML
|
||
TemplateName = os.path.join(str(CurPath), str(NameModule), 'template.htm')
|
||
if (os.path.exists(TemplateName) == True):
|
||
with open(TemplateName) as fp:
|
||
TemplateData = fp.read()
|
||
fp.close()
|
||
|
||
# Подгружаем ява скрипт для вставки его в тело шаблона
|
||
ScriptName = os.path.join(CurPath, NameModule, 'script.js')
|
||
if (os.path.exists(ScriptName) == True):
|
||
with open(ScriptName) as fp:
|
||
ScriptBody = fp.read()
|
||
fp.close()
|
||
|
||
# Подставляем переменные в HTML
|
||
TemplateData = TemplateData = TemplateData.replace('}}', '}}')
|
||
TemplateData = TemplateData.replace('{{head}}', APIC.UserHead(Var)) # Подключаем раздел head со скриптами и css
|
||
TemplateData = TemplateData.replace('{{UserHeader}}', APIC.UserHeader(SessionID, Var)) # Рисуем шапку на странице
|
||
TemplateData = TemplateData.replace('{{Modals}}', APIC.Modals(Modal_Vars)) # Модальные окна
|
||
TemplateData = TemplateData.replace('{{ThreadVars_message}}', APIC.ThreadVars_Message()) # Сообщения от потока
|
||
TemplateData = TemplateData.replace('{{version}}', app.config['VERSION']) # Версия Сервера КМС-ИК
|
||
TemplateData = TemplateData.replace('{{IPServer}}', request.host.split(":")[0]) # Версия Сервера КМС-ИК
|
||
TemplateData = TemplateData.replace('{{ScriptBody}}', ScriptBody) # Скрипты. Например, Vue.JS
|
||
|
||
return TemplateData # Отправляем обработанный шаблон
|