|
@@ -2,35 +2,51 @@
|
2
|
2
|
|
3
|
3
|
"""WebHelpers used in tracim."""
|
4
|
4
|
|
5
|
|
-#from webhelpers import date, feedgenerator, html, number, misc, text
|
|
5
|
+# from webhelpers import date, feedgenerator, html, number, misc, text
|
6
|
6
|
|
7
|
7
|
import datetime
|
8
|
8
|
|
9
|
|
-import pytz
|
10
|
|
-import slugify
|
11
|
9
|
from babel.dates import format_date
|
12
|
10
|
from babel.dates import format_time
|
13
|
11
|
from markupsafe import Markup
|
14
|
|
-
|
|
12
|
+import pytz
|
|
13
|
+import slugify
|
15
|
14
|
import tg
|
16
|
15
|
from tg import tmpl_context
|
17
|
16
|
from tg.i18n import ugettext as _
|
18
|
17
|
|
19
|
18
|
from tracim.lib import app_globals as plag
|
20
|
|
-
|
21
|
19
|
from tracim.lib import CST
|
22
|
20
|
from tracim.lib.base import logger
|
23
|
21
|
from tracim.lib.content import ContentApi
|
24
|
22
|
from tracim.lib.userworkspace import RoleApi
|
25
|
23
|
from tracim.lib.workspace import WorkspaceApi
|
26
|
|
-
|
27
|
|
-from tracim.model.data import ContentStatus
|
28
|
24
|
from tracim.model.data import Content
|
|
25
|
+from tracim.model.data import ContentStatus
|
29
|
26
|
from tracim.model.data import ContentType
|
30
|
27
|
from tracim.model.data import UserRoleInWorkspace
|
31
|
28
|
from tracim.model.data import Workspace
|
32
|
29
|
|
33
|
30
|
|
|
31
|
+def get_lang() -> str:
|
|
32
|
+ """
|
|
33
|
+ Gets language code.
|
|
34
|
+
|
|
35
|
+ Provides the first language:
|
|
36
|
+ - asked by the request to the server,
|
|
37
|
+ - supported by Tracim.
|
|
38
|
+ """
|
|
39
|
+ # TODO - A.P - language code access from test environment
|
|
40
|
+ # try based workaround instead of raw get language call for test
|
|
41
|
+ # environment only, this should be set with tg.i18n.set_lang but
|
|
42
|
+ # I was unable to achieve that.
|
|
43
|
+ try:
|
|
44
|
+ result = tg.i18n.get_lang(all=False)[0]
|
|
45
|
+ except IndexError:
|
|
46
|
+ result = 'en'
|
|
47
|
+ return result
|
|
48
|
+
|
|
49
|
+
|
34
|
50
|
def get_with_timezone(
|
35
|
51
|
datetime_object: datetime.datetime,
|
36
|
52
|
to_timezone: str='',
|