def before_request() -> None: from openatlas.models.openatlas_class import (OpenatlasClass, view_class_mapping) from openatlas.models.cidoc_property import CidocProperty from openatlas.models.cidoc_class import CidocClass from openatlas.models.type import Type from openatlas.models.settings import Settings from openatlas.models.reference_system import ReferenceSystem if request.path.startswith('/static'): # pragma: no cover return # Avoid overhead for files if not using Apache with static alias open_connection(app.config) g.settings = Settings.get_settings() session['language'] = get_locale() g.cidoc_classes = CidocClass.get_all() g.properties = CidocProperty.get_all() g.classes = OpenatlasClass.get_all() g.types = Type.get_all() g.reference_systems = ReferenceSystem.get_all() g.view_class_mapping = view_class_mapping g.class_view_mapping = OpenatlasClass.get_class_view_mapping() g.table_headers = OpenatlasClass.get_table_headers() g.file_stats = get_file_stats() # Set max file upload in MB app.config['MAX_CONTENT_LENGTH'] = \ g.settings['file_upload_max_size'] * 1024 * 1024 if request.path.startswith('/api/'): ip = request.environ.get('HTTP_X_REAL_IP', request.remote_addr) if not current_user.is_authenticated \ and not g.settings['api_public'] \ and ip not in app.config['ALLOWED_IPS']: raise AccessDeniedError # pragma: no cover
def before_request() -> None: from openatlas.models.model import CidocClass, CidocProperty from openatlas.models.node import Node from openatlas.models.settings import Settings from openatlas.models.reference_system import ReferenceSystem if request.path.startswith('/static'): # pragma: no cover return # Only needed if not running with Apache and static alias open_connection(app.config) session['settings'] = Settings.get_settings() session['language'] = get_locale() g.cidoc_classes = CidocClass.get_all() g.properties = CidocProperty.get_all() from openatlas.models import system g.table_headers = system.get_table_headers() g.classes = system.get_system_classes() g.view_class_mapping = system.view_class_mapping g.class_view_mapping = system.get_class_view_mapping() g.nodes = Node.get_all_nodes() g.reference_systems = ReferenceSystem.get_all() # Set max file upload in MB app.config['MAX_CONTENT_LENGTH'] = session['settings'][ 'file_upload_max_size'] * 1024 * 1024
'DATABASE_NAME': DATABASE_NAME, 'DATABASE_USER': DATABASE_USER, 'DATABASE_PASS': DATABASE_PASS, 'DATABASE_PORT': DATABASE_PORT, 'DATABASE_HOST': DATABASE_HOST } start = time.time() for item in config: try: config[item] = vars(production)[item] except: pass db = open_connection(config) cursor = db.cursor(cursor_factory=extras.DictCursor) settings = Settings.get_settings(cursor) def database_upgrade() -> None: print(f"{VERSION} OpenAtlas version") print(f"{DATABASE_VERSION} Database version required") check_database_version_exist() print(f"{settings['database_version']} Installed database version") check_database_version_supported() check_upgrade_needed() backup_database() execute_upgrade()