Дорабоки интерфейса системы тестирования. Раздел 1 Шапка+Верхний brick
This commit is contained in:
@@ -13,6 +13,31 @@ from datetime import timedelta
|
||||
from flask import Flask, jsonify, render_template, request
|
||||
|
||||
|
||||
_ROLE_LABELS = {
|
||||
'employee': 'Сотрудник',
|
||||
'manager': 'Руководитель',
|
||||
'hr': 'HR',
|
||||
}
|
||||
|
||||
|
||||
def _format_role(role: str | None) -> str:
|
||||
return _ROLE_LABELS.get((role or '').strip().lower(), '')
|
||||
|
||||
|
||||
def _format_surname_with_initials(full_name: str | None, fallback: str | None = None) -> str:
|
||||
name = (full_name or '').strip()
|
||||
if not name:
|
||||
return (fallback or '—').strip() or '—'
|
||||
parts = [p for p in name.replace('\xa0', ' ').split(' ') if p]
|
||||
if len(parts) < 2:
|
||||
return name
|
||||
surname = parts[0]
|
||||
initials = []
|
||||
for p in parts[1:3]:
|
||||
initials.append(f'{p[0].upper()}.')
|
||||
return f"{surname} {' '.join(initials)}".strip()
|
||||
|
||||
|
||||
def create_app() -> Flask:
|
||||
app = Flask(
|
||||
__name__,
|
||||
@@ -49,11 +74,15 @@ def create_app() -> Flask:
|
||||
|
||||
@app.context_processor
|
||||
def _inject_globals():
|
||||
ui_variant = (os.environ.get('UI_VARIANT') or 'modern').strip().lower() or 'modern'
|
||||
return {
|
||||
'current_user': _current_user(),
|
||||
'hr_auth_enabled': is_hr_auth_enabled(),
|
||||
'dev_ui': is_dev_ui(),
|
||||
'assignment_ui': is_assignment_feature_enabled(),
|
||||
'ui_variant': ui_variant,
|
||||
'format_name_short': _format_surname_with_initials,
|
||||
'format_role': _format_role,
|
||||
}
|
||||
|
||||
@app.errorhandler(404)
|
||||
|
||||
Reference in New Issue
Block a user