Commit 96b1e3e06ff3def90e632b9de2dbd9ace080b65e

Authored by Василь Свідрик
1 parent 4d53c4ce92
Exists in master

fix update server

Showing 2 changed files with 1 additions and 1 deletions Inline Diff

__pycache__/routes.cpython-310.pyc
No preview for this file type
1 from flask_sqlalchemy import SQLAlchemy 1 from flask_sqlalchemy import SQLAlchemy
2 from sqlalchemy import text 2 from sqlalchemy import text
3 from .k2obj import k2obj 3 from .k2obj import k2obj
4 import yaml 4 import yaml
5 import os 5 import os
6 import requests 6 import requests
7 import pytz 7 import pytz
8 import os 8 import os
9 import sys 9 import sys
10 from flask import session, request 10 from flask import session, request
11 from flask_login import LoginManager 11 from flask_login import LoginManager
12 import platform 12 import platform
13 13
14 class k2(k2obj): 14 class k2(k2obj):
15 version = '2.5.1.27' 15 version = '2.5.1.27'
16 db = SQLAlchemy() 16 db = SQLAlchemy()
17 domain = 'http://127.0.0.1:5000/' 17 domain = 'http://127.0.0.1:5000/'
18 update_domain = 'http://192.168.20.229/' #'http://185.174.172.137/' 18 update_domain = 'https://k2update.corp2.eu/' #'http://185.174.172.137/'
19 venv_bin_path = os.path.join(os.path.dirname(sys.prefix), 'venv/Scripts') #for windows 19 venv_bin_path = os.path.join(os.path.dirname(sys.prefix), 'venv/Scripts') #for windows
20 #venv_bin_path = os.path.join(os.path.dirname(sys.prefix), 'venv/bin') #for linux 20 #venv_bin_path = os.path.join(os.path.dirname(sys.prefix), 'venv/bin') #for linux
21 json_sort_keys = False 21 json_sort_keys = False
22 timezone = pytz.timezone('Europe/Kiev') 22 timezone = pytz.timezone('Europe/Kiev')
23 secret_key = 'JH&INH987gFDHdsagh&8dwbjdw8ckw' 23 secret_key = 'JH&INH987gFDHdsagh&8dwbjdw8ckw'
24 default_language = 'en' 24 default_language = 'en'
25 current_language = '' 25 current_language = ''
26 babel_translation_directories = '' 26 babel_translation_directories = ''
27 languages = { 27 languages = {
28 'en': 'English', 28 'en': 'English',
29 'uk': 'Українська', 29 'uk': 'Українська',
30 'pl': 'Polski' 30 'pl': 'Polski'
31 } 31 }
32 components = '' 32 components = ''
33 login_manager = LoginManager() 33 login_manager = LoginManager()
34 34
35 35
36 36
37 37
38 def __init__(self): 38 def __init__(self):
39 super().__init__() 39 super().__init__()
40 40
41 @classmethod 41 @classmethod
42 def load_babel_translation_directories(cls): 42 def load_babel_translation_directories(cls):
43 with open('languages/babel_translation_directories.yml', 'r') as f: 43 with open('languages/babel_translation_directories.yml', 'r') as f:
44 data = yaml.safe_load(f) 44 data = yaml.safe_load(f)
45 #print(data['babel_translation_directories']) 45 #print(data['babel_translation_directories'])
46 cls.babel_translation_directories = data['babel_translation_directories'] 46 cls.babel_translation_directories = data['babel_translation_directories']
47 47
48 @classmethod 48 @classmethod
49 def get_locale(cls): 49 def get_locale(cls):
50 if 'lang' in session: 50 if 'lang' in session:
51 # Отримати обрану мову з сеансу користувача 51 # Отримати обрану мову з сеансу користувача
52 return session['lang'] 52 return session['lang']
53 else: 53 else:
54 # Повернути мову за замовчуванням з налаштувань додатку 54 # Повернути мову за замовчуванням з налаштувань додатку
55 return cls.default_language #app.config['DEFAULT_LANGUAGE'] 55 return cls.default_language #app.config['DEFAULT_LANGUAGE']
56 56
57 @classmethod 57 @classmethod
58 def search_babel_translation_directories(cls): 58 def search_babel_translation_directories(cls):
59 response = requests.get(f'{cls.domain}api/languages') 59 response = requests.get(f'{cls.domain}api/languages')
60 if response.status_code == 200: 60 if response.status_code == 200:
61 cls.babel_translation_directories = response.text 61 cls.babel_translation_directories = response.text
62 data = {'babel_translation_directories': response.text} 62 data = {'babel_translation_directories': response.text}
63 else: 63 else:
64 cls.babel_translation_directories = 'languages' 64 cls.babel_translation_directories = 'languages'
65 data = {'babel_translation_directories': 'languages'} 65 data = {'babel_translation_directories': 'languages'}
66 66
67 with open('languages/babel_translation_directories.yml', 'w') as f: 67 with open('languages/babel_translation_directories.yml', 'w') as f:
68 yaml.dump(data, f) 68 yaml.dump(data, f)
69 69
70 70
71 71
72 # load database settings from yml file 72 # load database settings from yml file
73 def init_db_uri(self): 73 def init_db_uri(self):
74 with open('db/db.yml', 'r') as f: 74 with open('db/db.yml', 'r') as f:
75 db_config = yaml.load(f, Loader=yaml.FullLoader) 75 db_config = yaml.load(f, Loader=yaml.FullLoader)
76 return db_config 76 return db_config
77 77
78 # creating a connection 78 # creating a connection
79 def init_db(self, app): 79 def init_db(self, app):
80 db_config = self.init_db_uri() 80 db_config = self.init_db_uri()
81 db_uri = f"mysql+{db_config['driver']}://{db_config['user']}:{db_config['password']}@{db_config['host']}/{db_config['dbname']}" 81 db_uri = f"mysql+{db_config['driver']}://{db_config['user']}:{db_config['password']}@{db_config['host']}/{db_config['dbname']}"
82 app.config['SQLALCHEMY_DATABASE_URI'] = db_uri 82 app.config['SQLALCHEMY_DATABASE_URI'] = db_uri
83 db_path = '../db/database.db' 83 db_path = '../db/database.db'
84 app.config['SQLALCHEMY_BINDS'] = {'db2': f'sqlite:///{db_path}'} 84 app.config['SQLALCHEMY_BINDS'] = {'db2': f'sqlite:///{db_path}'}
85 self.db.init_app(app) 85 self.db.init_app(app)
86 86
87 def init_lm(self, app): 87 def init_lm(self, app):
88 # Initialize LoginManager 88 # Initialize LoginManager
89 self.login_manager.init_app(app) 89 self.login_manager.init_app(app)
90 @classmethod 90 @classmethod
91 def get_platform(cls): 91 def get_platform(cls):
92 operating_system = platform.system() 92 operating_system = platform.system()
93 cls.platform = operating_system 93 cls.platform = operating_system
94 return cls.platform 94 return cls.platform
95 95
96 96
97 97
98 98
99 99