121 lines
3.8 KiB
Python
121 lines
3.8 KiB
Python
#!env/bin/python3.10
|
||
# -*- coding: UTF-8 -*-
|
||
|
||
# Активация FLASK
|
||
from app import app # чтение из config.py, роуты
|
||
from flask import render_template # использование шаблонов
|
||
from flask import request # получение данных Cookie, GET и POST
|
||
from flask import redirect # Код страницы и перенаравление
|
||
|
||
import os # чтение куки и работа с файлами и папками
|
||
|
||
# Глобальные переменные
|
||
ProgName = app.config['PROGNAME']
|
||
version = app.config['VERSION']
|
||
|
||
LevelA = ""
|
||
Flag = False
|
||
FIO = ""
|
||
UserID = ""
|
||
tb_Hashpassword = ""
|
||
OldSession = ""
|
||
CurSessionID = ""
|
||
|
||
|
||
S = ['0', '1', '2', '3']
|
||
|
||
###############################################################################
|
||
|
||
|
||
@app.errorhandler(413)
|
||
def request_entity_too_large(error):
|
||
return 'Превышен максимальный размер файла', 413
|
||
|
||
|
||
@app.errorhandler(404)
|
||
def page_not_found(e):
|
||
|
||
return """Здесь нет того, чего ты ищешь... <br><a href ="/"> Вернутся на главную</a> """, 404
|
||
|
||
|
||
@app.errorhandler(403)
|
||
def access_denided(e):
|
||
# Получаем куки и сессию
|
||
|
||
SessionID = request.cookies.get('SessionID')
|
||
print(SessionID)
|
||
|
||
if SessionID is None or SessionID == "": # если нет сессии
|
||
return redirect("/login", code=302)
|
||
else:
|
||
HTML = """Похоже, сюда можно только администраторам. <br><a href ="/"> Вернутся на главную</a> """
|
||
return render_template('index.htm', UserHeader=APIC.UserHeader(SessionID, "<font color=red>Доступ запрещен</font>", ProgName), HTML=HTML)
|
||
|
||
# return render_template('404.html'), 404
|
||
|
||
|
||
###############################################################################
|
||
# Добавляем роуты
|
||
@app.route('/')
|
||
@app.route('/index')
|
||
@app.route('/about')
|
||
@app.route('/main')
|
||
def main():
|
||
Title = "Обо мне"
|
||
return render_template('about.htm',
|
||
UserHeader=UserHeader(Title, ProgName), version=version, Title=Title, ProgName=ProgName
|
||
)
|
||
|
||
|
||
###############################################################################
|
||
@app.route('/rustdesk')
|
||
def rustdesk():
|
||
Title = "RustDesk"
|
||
return render_template('rustdesk.htm',
|
||
UserHeader=UserHeader(Title, ProgName), version=version, Title=Title, ProgName=ProgName
|
||
)
|
||
|
||
|
||
###############################################################################
|
||
@app.route('/price')
|
||
def price():
|
||
Title = "Прайс"
|
||
return render_template('price.htm',
|
||
UserHeader=UserHeader(Title, ProgName), version=version, Title=Title, ProgName=ProgName
|
||
)
|
||
|
||
|
||
###############################################################################
|
||
@app.route('/portfolio')
|
||
def portfolio():
|
||
|
||
Title = "Отзывы"
|
||
return render_template('portfolio.htm',
|
||
UserHeader=UserHeader(Title, ProgName), version=version, Title=Title, ProgName=ProgName
|
||
)
|
||
|
||
|
||
###############################################################################
|
||
def UserHeader(Title, ProgName):
|
||
CurStr = ""
|
||
if (os.path.exists("app/templates/_header") == True):
|
||
file = open("app/templates/_header", "r")
|
||
|
||
CurStr = file.read()
|
||
file.close()
|
||
|
||
CurStr = CurStr.replace("{{ProgName}}", ProgName)
|
||
CurStr = CurStr.replace("{{Title}}", Title)
|
||
|
||
return CurStr
|
||
|
||
|
||
###############################################################################
|
||
@app.route('/favicon.ico')
|
||
def favicon1():
|
||
if (os.path.exists("app/static/image/favicon.ico") == True):
|
||
file = open("app/static/image/favicon.ico", "r")
|
||
CurStr = file.read()
|
||
file.close()
|
||
return CurStr
|