Skip to content
Snippets Groups Projects

Účastnická část webu podporuje všechny stavy kola

Merged Jiří Setnička requested to merge jirka/user-all-states into devel
All threads resolved!
2 files
+ 85
19
Compare changes
  • Side-by-side
  • Inline

Files

+ 8
27
import datetime
from mo import util_format
import dateutil.tz
from flask import Flask, request, g, session
import flask.logging
@@ -9,6 +10,7 @@ import logging
import os
import werkzeug.exceptions
import mo
import mo.config as config
import mo.db as db
import mo.users
@@ -31,27 +33,12 @@ logger.addHandler(flask.logging.default_handler)
# Budeme používat české locale
locale.setlocale(locale.LC_COLLATE, 'cs_CZ.UTF-8')
# Naše filtry pro Jinju
def filter_timeformat(dt: datetime.datetime) -> str:
if dt is None:
return ''
else:
return dt.astimezone().strftime("%Y-%m-%d %H:%M")
def filter_inflected(n: int, w1: str, w234: str, wother: str) -> str:
if n == 1:
return f'{n} {w1}'
elif 2 <= n <= 4:
return f'{n} {w234}'
else:
return f'{n} {wother}'
app.jinja_env.filters['timeformat'] = filter_timeformat
app.jinja_env.filters['inflected'] = filter_inflected
app.jinja_env.filters.update(timeformat=util_format.timeformat)
app.jinja_env.filters.update(inflected=util_format.inflect_number)
app.jinja_env.filters.update(timedelta=util_format.timedelta)
app.jinja_env.filters.update(time_and_timedelta=util_format.time_and_timedelta)
# Inicializace požadavků a nucená autorizace
@@ -75,6 +62,8 @@ def init_request():
else:
user = None
g.user = user
mo.now = datetime.datetime.now(tz=dateutil.tz.UTC)
g.now = mo.now # for templates
mo.util.current_log_user = user
# K některým podstromům je nutné mít speciální oprávnění
@@ -93,14 +82,6 @@ def init_request():
app.before_request(init_request)
# Kešování aktuálního času
def get_request_time() -> datetime.datetime:
if not hasattr(g, 'now'):
g.now = datetime.datetime.now(tz=dateutil.tz.UTC)
return g.now
# Většina webu je v samostatných modulech
import mo.web.auth
import mo.web.menu
Loading