annotate src/server/constants.py @ 917:86563d6c83b0

server: Libervia pages: - introduce new LiberviaPage which are easy to create web pages tailored for SàT architecture. They are expected to be the cornerstone of the future of Libervia. - webpages paths reflected by files paths in src/pages directory (directory should be changeable in the future) - if a pages subdirectory as a page_meta.py file, it is a webpage, same for sub-subdirectories and so on - page_meta.py variable are used to instanciate the resource. Check __init__ docstring for details - access is set with a page_meta.py variable (only public for now), and subdirectories access are restricted by parent directory ones. - callables in page_meta.py get 2 arguments: the LiberviaPage resource instance, and the request - callables there can use Deferred (or not) - LiberviaPage has a couple of helper method to e.g. parse URL or return an error
author Goffi <goffi@goffi.org>
date Sun, 05 Mar 2017 23:56:31 +0100
parents 5cefc6ab302f
children 16d1084d1371
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
317
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
1 #!/usr/bin/python
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
2 # -*- coding: utf-8 -*-
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
3
449
981ed669d3b3 /!\ reorganize all the file hierarchy, move the code and launching script to src:
souliane <souliane@mailoo.org>
parents: 445
diff changeset
4 # Libervia: a SAT frontend
818
f8a7a046ff9c copyright update
Goffi <goffi@goffi.org>
parents: 703
diff changeset
5 # Copyright (C) 2009-2016 Jérôme Poisson (goffi@goffi.org)
317
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
6
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
7 # This program is free software: you can redistribute it and/or modify
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
8 # it under the terms of the GNU Affero General Public License as published by
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
9 # the Free Software Foundation, either version 3 of the License, or
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
10 # (at your option) any later version.
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
11
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
12 # This program is distributed in the hope that it will be useful,
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
15 # GNU Affero General Public License for more details.
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
16
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
17 # You should have received a copy of the GNU Affero General Public License
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
18 # along with this program. If not, see <http://www.gnu.org/licenses/>.
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
19
860
05cd9dc775e6 server: use of relative import instead of try/except block in server/constants
Goffi <goffi@goffi.org>
parents: 856
diff changeset
20 from ..common import constants
317
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
21
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
22
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
23 class Const(constants.Const):
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
24
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
25 APP_NAME = 'Libervia'
512
750db9ff8525 server side: launching script improvments:
Goffi <goffi@goffi.org>
parents: 490
diff changeset
26 APP_NAME_FILE = "libervia"
436
73f767a9ac2f server_side: added constant SERVICE_PROFILE to remove hard-coded value
souliane <souliane@mailoo.org>
parents: 340
diff changeset
27 SERVICE_PROFILE = 'libervia' # the SàT profile that is used for exporting the service
317
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
28
555
db1b330c1eb1 server_side: set the connection attempt timeout to the bridge timeout (2 minutes)
souliane <souliane@mailoo.org>
parents: 554
diff changeset
29 SESSION_TIMEOUT = 300 # Session's timeout, after that the user will be disconnected
449
981ed669d3b3 /!\ reorganize all the file hierarchy, move the code and launching script to src:
souliane <souliane@mailoo.org>
parents: 445
diff changeset
30 HTML_DIR = "html/"
703
1a19ee7d8d8a server_side: add default theme
souliane <souliane@mailoo.org>
parents: 685
diff changeset
31 THEMES_DIR = "themes/"
823
027139763511 server (blog): cleaning & improvments:
Goffi <goffi@goffi.org>
parents: 818
diff changeset
32 THEMES_URL = "themes"
317
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
33 MEDIA_DIR = "media/"
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
34 CARDS_DIR = "games/cards/tarot"
917
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
35 PAGES_DIR = u"pages"
317
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
36
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
37 ERRNUM_BRIDGE_ERRBACK = 0 # FIXME
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
38 ERRNUM_LIBERVIA = 0 # FIXME
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
39
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
40 # Security limit for Libervia (get/set params)
338
80016abf3ad3 server_side: raised default security_limit to 5
Goffi <goffi@goffi.org>
parents: 317
diff changeset
41 SECURITY_LIMIT = 5
317
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
42
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
43 # Security limit for Libervia server_side
bbadd490e63c misc: gather the constants in a single file, as it is done for other frontends
souliane <souliane@mailoo.org>
parents:
diff changeset
44 SERVER_SECURITY_LIMIT = constants.Const.NO_SECURITY_LIMIT
605
917e271975d9 server + browser side: implementation of new getEntitiesData bridge method + added a security check: only a white list of entities can be gotten
Goffi <goffi@goffi.org>
parents: 555
diff changeset
45
917e271975d9 server + browser side: implementation of new getEntitiesData bridge method + added a security check: only a white list of entities can be gotten
Goffi <goffi@goffi.org>
parents: 555
diff changeset
46 # keys for cache values we can get from browser
917e271975d9 server + browser side: implementation of new getEntitiesData bridge method + added a security check: only a white list of entities can be gotten
Goffi <goffi@goffi.org>
parents: 555
diff changeset
47 ALLOWED_ENTITY_DATA = {'avatar', 'nick'}
823
027139763511 server (blog): cleaning & improvments:
Goffi <goffi@goffi.org>
parents: 818
diff changeset
48
027139763511 server (blog): cleaning & improvments:
Goffi <goffi@goffi.org>
parents: 818
diff changeset
49 STATIC_RSM_MAX_LIMIT = 100
027139763511 server (blog): cleaning & improvments:
Goffi <goffi@goffi.org>
parents: 818
diff changeset
50 STATIC_RSM_MAX_DEFAULT = 10
027139763511 server (blog): cleaning & improvments:
Goffi <goffi@goffi.org>
parents: 818
diff changeset
51 STATIC_RSM_MAX_COMMENTS_DEFAULT = 10
917
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
52
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
53 ## Libervia pages ##
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
54 PAGES_META_FILE = u"page_meta.py"
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
55 PAGES_ACCESS_PUBLIC = u"public"
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
56 PAGES_ACCESS_PROFILE = u"profile" # a session with an existing profile must be started
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
57 PAGES_ACCESS_ADMIN = u"admin" # only profiles set in admins_list can access the page
86563d6c83b0 server: Libervia pages:
Goffi <goffi@goffi.org>
parents: 861
diff changeset
58 PAGES_ACCESS_ALL = (PAGES_ACCESS_PUBLIC, PAGES_ACCESS_PROFILE, PAGES_ACCESS_ADMIN)