Statistics
| Branch: | Tag: | Revision:

root / snf-astakos-app / astakos / im / settings.py @ ed7e736e

History | View | Annotate | Download (10.4 kB)

1 ff5edb80 Giorgos Korfiatis
# Copyright 2012-2014 GRNET S.A. All rights reserved.
2 91884d63 Giorgos Korfiatis
#
3 91884d63 Giorgos Korfiatis
# Redistribution and use in source and binary forms, with or
4 91884d63 Giorgos Korfiatis
# without modification, are permitted provided that the following
5 91884d63 Giorgos Korfiatis
# conditions are met:
6 91884d63 Giorgos Korfiatis
#
7 91884d63 Giorgos Korfiatis
#   1. Redistributions of source code must retain the above
8 91884d63 Giorgos Korfiatis
#      copyright notice, this list of conditions and the following
9 91884d63 Giorgos Korfiatis
#      disclaimer.
10 91884d63 Giorgos Korfiatis
#
11 91884d63 Giorgos Korfiatis
#   2. Redistributions in binary form must reproduce the above
12 91884d63 Giorgos Korfiatis
#      copyright notice, this list of conditions and the following
13 91884d63 Giorgos Korfiatis
#      disclaimer in the documentation and/or other materials
14 91884d63 Giorgos Korfiatis
#      provided with the distribution.
15 91884d63 Giorgos Korfiatis
#
16 91884d63 Giorgos Korfiatis
# THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
17 91884d63 Giorgos Korfiatis
# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 91884d63 Giorgos Korfiatis
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19 91884d63 Giorgos Korfiatis
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
20 91884d63 Giorgos Korfiatis
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 91884d63 Giorgos Korfiatis
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 91884d63 Giorgos Korfiatis
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
23 91884d63 Giorgos Korfiatis
# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
24 91884d63 Giorgos Korfiatis
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 91884d63 Giorgos Korfiatis
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
26 91884d63 Giorgos Korfiatis
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 91884d63 Giorgos Korfiatis
# POSSIBILITY OF SUCH DAMAGE.
28 91884d63 Giorgos Korfiatis
#
29 91884d63 Giorgos Korfiatis
# The views and conclusions contained in the software and
30 91884d63 Giorgos Korfiatis
# documentation are those of the authors and should not be
31 91884d63 Giorgos Korfiatis
# interpreted as representing official policies, either expressed
32 91884d63 Giorgos Korfiatis
# or implied, of GRNET S.A.
33 91884d63 Giorgos Korfiatis
34 92defad4 Sofia Papagiannaki
from django.conf import settings
35 a2110608 Olga Brani
from synnefo_branding import settings as synnefo_settings
36 e3ff6830 Georgios D. Tsoukalas
from synnefo.lib import parse_base_url
37 81e604c5 Ilias Tsitsimpis
from astakos.api.services import astakos_services as vanilla_astakos_services
38 6c7af65c Georgios D. Tsoukalas
from synnefo.lib import join_urls
39 d861a967 Georgios D. Tsoukalas
from synnefo.lib.services import fill_endpoints
40 d861a967 Georgios D. Tsoukalas
41 d861a967 Georgios D. Tsoukalas
from copy import deepcopy
42 484a79a1 Georgios D. Tsoukalas
43 e3ff6830 Georgios D. Tsoukalas
44 e3ff6830 Georgios D. Tsoukalas
BASE_URL = getattr(settings, 'ASTAKOS_BASE_URL',
45 e3ff6830 Georgios D. Tsoukalas
                   'https://accounts.example.synnefo.org')
46 e3ff6830 Georgios D. Tsoukalas
47 e3ff6830 Georgios D. Tsoukalas
48 e3ff6830 Georgios D. Tsoukalas
BASE_HOST, BASE_PATH = parse_base_url(BASE_URL)
49 e3ff6830 Georgios D. Tsoukalas
50 d861a967 Georgios D. Tsoukalas
astakos_services = deepcopy(vanilla_astakos_services)
51 d861a967 Georgios D. Tsoukalas
fill_endpoints(astakos_services, BASE_URL)
52 9c6d629f Giorgos Korfiatis
ACCOUNTS_PREFIX = astakos_services['astakos_account']['prefix']
53 9c6d629f Giorgos Korfiatis
VIEWS_PREFIX = astakos_services['astakos_ui']['prefix']
54 9c6d629f Giorgos Korfiatis
KEYSTONE_PREFIX = astakos_services['astakos_identity']['prefix']
55 9c6d629f Giorgos Korfiatis
WEBLOGIN_PREFIX = astakos_services['astakos_weblogin']['prefix']
56 9c6d629f Giorgos Korfiatis
ADMIN_PREFIX = astakos_services['astakos_admin']['prefix']
57 92defad4 Sofia Papagiannaki
58 92defad4 Sofia Papagiannaki
# Set the expiration time of newly created auth tokens
59 92defad4 Sofia Papagiannaki
# to be this many hours after their creation time.
60 92defad4 Sofia Papagiannaki
AUTH_TOKEN_DURATION = getattr(settings, 'ASTAKOS_AUTH_TOKEN_DURATION', 30 * 24)
61 92defad4 Sofia Papagiannaki
62 92defad4 Sofia Papagiannaki
DEFAULT_USER_LEVEL = getattr(settings, 'ASTAKOS_DEFAULT_USER_LEVEL', 4)
63 92defad4 Sofia Papagiannaki
64 92defad4 Sofia Papagiannaki
INVITATIONS_PER_LEVEL = getattr(settings, 'ASTAKOS_INVITATIONS_PER_LEVEL', {
65 5ce3ce4f Sofia Papagiannaki
    0: 100,
66 5ce3ce4f Sofia Papagiannaki
    1: 2,
67 5ce3ce4f Sofia Papagiannaki
    2: 0,
68 5ce3ce4f Sofia Papagiannaki
    3: 0,
69 5ce3ce4f Sofia Papagiannaki
    4: 0
70 92defad4 Sofia Papagiannaki
})
71 92defad4 Sofia Papagiannaki
72 190a2743 Giorgos Korfiatis
ADMINS = tuple(getattr(settings, 'ADMINS', ()))
73 190a2743 Giorgos Korfiatis
MANAGERS = tuple(getattr(settings, 'MANAGERS', ()))
74 190a2743 Giorgos Korfiatis
HELPDESK = tuple(getattr(settings, 'HELPDESK', ()))
75 92defad4 Sofia Papagiannaki
76 31bc3a62 Kostas Papadimitriou
CONTACT_EMAIL = settings.CONTACT_EMAIL
77 31bc3a62 Kostas Papadimitriou
SERVER_EMAIL = settings.SERVER_EMAIL
78 8998f09a Sofia Papagiannaki
SECRET_KEY = settings.SECRET_KEY
79 8998f09a Sofia Papagiannaki
SESSION_ENGINE = settings.SESSION_ENGINE
80 a3eb3a95 Giorgos Korfiatis
81 92defad4 Sofia Papagiannaki
# Identity Management enabled modules
82 55c99c1c Sofia Papagiannaki
# Supported modules are: 'local', 'twitter' and 'shibboleth'
83 55c99c1c Sofia Papagiannaki
IM_MODULES = getattr(settings, 'ASTAKOS_IM_MODULES', ['local'])
84 92defad4 Sofia Papagiannaki
85 92defad4 Sofia Papagiannaki
# Force user profile verification
86 0a7a4104 Kostas Papadimitriou
FORCE_PROFILE_UPDATE = getattr(settings, 'ASTAKOS_FORCE_PROFILE_UPDATE', False)
87 92defad4 Sofia Papagiannaki
88 92defad4 Sofia Papagiannaki
#Enable invitations
89 55c99c1c Sofia Papagiannaki
INVITATIONS_ENABLED = getattr(settings, 'ASTAKOS_INVITATIONS_ENABLED', False)
90 92defad4 Sofia Papagiannaki
91 92defad4 Sofia Papagiannaki
COOKIE_NAME = getattr(settings, 'ASTAKOS_COOKIE_NAME', '_pithos2_a')
92 92defad4 Sofia Papagiannaki
COOKIE_DOMAIN = getattr(settings, 'ASTAKOS_COOKIE_DOMAIN', None)
93 ca34523e Antony Chazapis
COOKIE_SECURE = getattr(settings, 'ASTAKOS_COOKIE_SECURE', True)
94 92defad4 Sofia Papagiannaki
95 94459980 Kostas Papadimitriou
IM_STATIC_URL = getattr(settings, 'ASTAKOS_IM_STATIC_URL', '/static/im/')
96 92defad4 Sofia Papagiannaki
97 9d20fe23 Kostas Papadimitriou
# If set to False and invitations not enabled newly created user
98 9d20fe23 Kostas Papadimitriou
# will be automatically accepted
99 1463659a Sofia Papagiannaki
MODERATION_ENABLED = getattr(settings, 'ASTAKOS_MODERATION_ENABLED', True)
100 1463659a Sofia Papagiannaki
101 374611bc Sofia Papagiannaki
# Set service name
102 a2110608 Olga Brani
SITENAME = getattr(settings, 'ASTAKOS_SITENAME', synnefo_settings.SERVICE_NAME)
103 1ae97c83 Sofia Papagiannaki
104 db7fecd9 Sofia Papagiannaki
# Set recaptcha keys
105 db7fecd9 Sofia Papagiannaki
RECAPTCHA_PUBLIC_KEY = getattr(settings, 'ASTAKOS_RECAPTCHA_PUBLIC_KEY', '')
106 db7fecd9 Sofia Papagiannaki
RECAPTCHA_PRIVATE_KEY = getattr(settings, 'ASTAKOS_RECAPTCHA_PRIVATE_KEY', '')
107 5ce3ce4f Sofia Papagiannaki
RECAPTCHA_OPTIONS = getattr(settings, 'ASTAKOS_RECAPTCHA_OPTIONS',
108 8fb8d0cf Giorgos Korfiatis
                            {'theme': 'custom',
109 8fb8d0cf Giorgos Korfiatis
                             'custom_theme_widget': 'okeanos_recaptcha'})
110 989b28f3 Kostas Papadimitriou
RECAPTCHA_USE_SSL = getattr(settings, 'ASTAKOS_RECAPTCHA_USE_SSL', True)
111 55c99c1c Sofia Papagiannaki
RECAPTCHA_ENABLED = getattr(settings, 'ASTAKOS_RECAPTCHA_ENABLED', False)
112 ee1de5e9 Kostas Papadimitriou
113 3a9f4931 Sofia Papagiannaki
# Set where the user should be redirected after logout
114 ebd369d0 Sofia Papagiannaki
LOGOUT_NEXT = getattr(settings, 'ASTAKOS_LOGOUT_NEXT', '')
115 ebd369d0 Sofia Papagiannaki
116 ebd369d0 Sofia Papagiannaki
# Set user email patterns that are automatically activated
117 5ce3ce4f Sofia Papagiannaki
RE_USER_EMAIL_PATTERNS = getattr(
118 5ce3ce4f Sofia Papagiannaki
    settings, 'ASTAKOS_RE_USER_EMAIL_PATTERNS', [])
119 25d9d4d0 Sofia Papagiannaki
120 76776df1 Kostas Papadimitriou
# Messages to display on login page header
121 8fb8d0cf Giorgos Korfiatis
# e.g. {'warning':
122 8fb8d0cf Giorgos Korfiatis
#       'This warning message will be displayed on the top of login page'}
123 4f78c22c Sofia Papagiannaki
LOGIN_MESSAGES = getattr(settings, 'ASTAKOS_LOGIN_MESSAGES', [])
124 25d9d4d0 Sofia Papagiannaki
125 ad956265 Kostas Papadimitriou
# Messages to display on login page header
126 8fb8d0cf Giorgos Korfiatis
# e.g. {'warning':
127 8fb8d0cf Giorgos Korfiatis
#       'This warning message will be displayed on the top of signup page'}
128 4f78c22c Sofia Papagiannaki
SIGNUP_MESSAGES = getattr(settings, 'ASTAKOS_SIGNUP_MESSAGES', [])
129 ad956265 Kostas Papadimitriou
130 ad956265 Kostas Papadimitriou
# Messages to display on login page header
131 8fb8d0cf Giorgos Korfiatis
# e.g. {'warning':
132 8fb8d0cf Giorgos Korfiatis
#       'This warning message will be displayed on the top of profile page'}
133 4f78c22c Sofia Papagiannaki
PROFILE_MESSAGES = getattr(settings, 'ASTAKOS_PROFILE_MESSAGES', [])
134 ad956265 Kostas Papadimitriou
135 ad956265 Kostas Papadimitriou
# Messages to display on all pages
136 8fb8d0cf Giorgos Korfiatis
# e.g. {'warning':
137 8fb8d0cf Giorgos Korfiatis
#       'This warning message will be displayed on the top of every page'}
138 4f78c22c Sofia Papagiannaki
GLOBAL_MESSAGES = getattr(settings, 'ASTAKOS_GLOBAL_MESSAGES', [])
139 ad956265 Kostas Papadimitriou
140 76776df1 Kostas Papadimitriou
# messages to display as extra actions in account forms
141 9d889386 Olga Brani
# e.g. {'https://www.myhomepage.com': 'Back to <service_name>'}
142 76776df1 Kostas Papadimitriou
PROFILE_EXTRA_LINKS = getattr(settings, 'ASTAKOS_PROFILE_EXTRA_LINKS', {})
143 76776df1 Kostas Papadimitriou
144 8fb8d0cf Giorgos Korfiatis
# The number of unsuccessful login requests per minute allowed
145 8fb8d0cf Giorgos Korfiatis
# for a specific user
146 5ce3ce4f Sofia Papagiannaki
RATELIMIT_RETRIES_ALLOWED = getattr(
147 5ce3ce4f Sofia Papagiannaki
    settings, 'ASTAKOS_RATELIMIT_RETRIES_ALLOWED', 3)
148 672d445a Sofia Papagiannaki
149 e2447828 Sofia Papagiannaki
# If False the email change mechanism is disabled
150 e2447828 Sofia Papagiannaki
EMAILCHANGE_ENABLED = getattr(settings, 'ASTAKOS_EMAILCHANGE_ENABLED', False)
151 e2447828 Sofia Papagiannaki
152 e2447828 Sofia Papagiannaki
# Set the expiration time (in days) of email change requests
153 5ce3ce4f Sofia Papagiannaki
EMAILCHANGE_ACTIVATION_DAYS = getattr(
154 5ce3ce4f Sofia Papagiannaki
    settings, 'ASTAKOS_EMAILCHANGE_ACTIVATION_DAYS', 10)
155 111f3da6 Sofia Papagiannaki
156 c9e378c7 Sofia Papagiannaki
# Set the astakos main functions logging severity (None to disable)
157 111f3da6 Sofia Papagiannaki
from logging import INFO
158 ad956265 Kostas Papadimitriou
LOGGING_LEVEL = getattr(settings, 'ASTAKOS_LOGGING_LEVEL', INFO)
159 fc1e2f02 Sofia Papagiannaki
160 d220292f Sofia Papagiannaki
# Set how many objects should be displayed per page
161 3f3dc4b7 Olga Brani
PAGINATE_BY = getattr(settings, 'ASTAKOS_PAGINATE_BY', 50)
162 f46c95c4 Sofia Papagiannaki
163 5a3921a1 Sofia Papagiannaki
# Set how many objects should be displayed per page in show all projects page
164 3f3dc4b7 Olga Brani
PAGINATE_BY_ALL = getattr(settings, 'ASTAKOS_PAGINATE_BY_ALL', 50)
165 59728d4e Olga Brani
166 f46c95c4 Sofia Papagiannaki
# Enforce token renewal on password change/reset
167 f46c95c4 Sofia Papagiannaki
NEWPASSWD_INVALIDATE_TOKEN = getattr(
168 cd1e1513 root
    settings, 'ASTAKOS_NEWPASSWD_INVALIDATE_TOKEN', True)
169 3cbd5e47 Olga Brani
170 80a30d20 Kostas Papadimitriou
# Interval at which to update the user's available quota in astakos usage
171 80a30d20 Kostas Papadimitriou
# profile view
172 80a30d20 Kostas Papadimitriou
USAGE_UPDATE_INTERVAL = getattr(settings, 'ASTAKOS_USAGE_UPDATE_INTERVAL',
173 80a30d20 Kostas Papadimitriou
                                5000)
174 3cbd5e47 Olga Brani
175 ef20ea07 Sofia Papagiannaki
# Permit local account migration
176 8fb8d0cf Giorgos Korfiatis
ENABLE_LOCAL_ACCOUNT_MIGRATION = getattr(
177 8fb8d0cf Giorgos Korfiatis
    settings, 'ASTAKOS_ENABLE_LOCAL_ACCOUNT_MIGRATION', True)
178 1d59653f Kostas Papadimitriou
179 6a80a0ae Kostas Papadimitriou
# Migrate eppn identifiers to remote id
180 6a80a0ae Kostas Papadimitriou
SHIBBOLETH_MIGRATE_EPPN = getattr(settings, 'ASTAKOS_SHIBBOLETH_MIGRATE_EPPN',
181 6a80a0ae Kostas Papadimitriou
                                  False)
182 6a80a0ae Kostas Papadimitriou
183 b08aadc0 Kostas Papadimitriou
# Migrate eppn identifiers to remote id
184 b08aadc0 Kostas Papadimitriou
SHIBBOLETH_MIGRATE_EPPN = getattr(settings, 'ASTAKOS_SHIBBOLETH_MIGRATE_EPPN',
185 b08aadc0 Kostas Papadimitriou
                                  False)
186 b08aadc0 Kostas Papadimitriou
187 1d59653f Kostas Papadimitriou
# Strict shibboleth usage
188 1d59653f Kostas Papadimitriou
SHIBBOLETH_REQUIRE_NAME_INFO = getattr(settings,
189 1d59653f Kostas Papadimitriou
                                       'ASTAKOS_SHIBBOLETH_REQUIRE_NAME_INFO',
190 1d59653f Kostas Papadimitriou
                                       False)
191 272cf735 Sofia Papagiannaki
192 4991129c Kostas Papadimitriou
default_activation_redirect_url = join_urls('/', BASE_PATH, VIEWS_PREFIX,
193 4991129c Kostas Papadimitriou
                                            "landing")
194 484a79a1 Georgios D. Tsoukalas
ACTIVATION_REDIRECT_URL = getattr(settings, 'ASTAKOS_ACTIVATION_REDIRECT_URL',
195 4991129c Kostas Papadimitriou
                                  default_activation_redirect_url)
196 8e1a5af5 Georgios D. Tsoukalas
197 469d0997 Georgios D. Tsoukalas
# If true, this enables a ui compatibility layer for the introduction of UUIDs
198 8fb8d0cf Giorgos Korfiatis
# in identity management. WARNING: Setting to True will break your installation
199 469d0997 Georgios D. Tsoukalas
TRANSLATE_UUIDS = getattr(settings, 'ASTAKOS_TRANSLATE_UUIDS', False)
200 469d0997 Georgios D. Tsoukalas
201 8e1a5af5 Georgios D. Tsoukalas
# Users that can approve or deny project applications from the web.
202 8e1a5af5 Georgios D. Tsoukalas
PROJECT_ADMINS = getattr(settings, 'ASTAKOS_PROJECT_ADMINS', set())
203 5a3921a1 Sofia Papagiannaki
204 5a3921a1 Sofia Papagiannaki
# OAuth2 Twitter credentials.
205 5a3921a1 Sofia Papagiannaki
TWITTER_TOKEN = getattr(settings, 'ASTAKOS_TWITTER_TOKEN', '')
206 5a3921a1 Sofia Papagiannaki
TWITTER_SECRET = getattr(settings, 'ASTAKOS_TWITTER_SECRET', '')
207 8fb8d0cf Giorgos Korfiatis
TWITTER_AUTH_FORCE_LOGIN = getattr(
208 8fb8d0cf Giorgos Korfiatis
    settings, 'ASTAKOS_TWITTER_AUTH_FORCE_LOGIN', False)
209 5a3921a1 Sofia Papagiannaki
210 5a3921a1 Sofia Papagiannaki
# OAuth2 Google credentials.
211 5a3921a1 Sofia Papagiannaki
GOOGLE_CLIENT_ID = getattr(settings, 'ASTAKOS_GOOGLE_CLIENT_ID', '')
212 5a3921a1 Sofia Papagiannaki
GOOGLE_SECRET = getattr(settings, 'ASTAKOS_GOOGLE_SECRET', '')
213 5a3921a1 Sofia Papagiannaki
214 5a3921a1 Sofia Papagiannaki
# OAuth2 LinkedIn credentials.
215 5a3921a1 Sofia Papagiannaki
LINKEDIN_TOKEN = getattr(settings, 'ASTAKOS_LINKEDIN_TOKEN', '')
216 5a3921a1 Sofia Papagiannaki
LINKEDIN_SECRET = getattr(settings, 'ASTAKOS_LINKEDIN_SECRET', '')
217 398c10a2 Kostas Papadimitriou
218 984fec93 Kostas Papadimitriou
# URL to redirect the user after successful login when no next parameter is set
219 4991129c Kostas Papadimitriou
default_success_url = join_urls('/', BASE_PATH, VIEWS_PREFIX, "landing")
220 484a79a1 Georgios D. Tsoukalas
LOGIN_SUCCESS_URL = getattr(settings, 'ASTAKOS_LOGIN_SUCCESS_URL',
221 4991129c Kostas Papadimitriou
                            default_success_url)
222 984fec93 Kostas Papadimitriou
223 bea584e1 Giorgos Korfiatis
# A way to extend the components presentation metadata
224 bea584e1 Giorgos Korfiatis
COMPONENTS_META = getattr(settings, 'ASTAKOS_COMPONENTS_META', {})
225 37d59b27 Kostas Papadimitriou
226 37d59b27 Kostas Papadimitriou
# A way to extend the resources presentation metadata
227 37d59b27 Kostas Papadimitriou
RESOURCES_META = getattr(settings, 'ASTAKOS_RESOURCES_META', {})
228 e7cb4085 Kostas Papadimitriou
229 e7cb4085 Kostas Papadimitriou
# Do not require email verification for new users
230 e7cb4085 Kostas Papadimitriou
SKIP_EMAIL_VERIFICATION = getattr(settings,
231 e7cb4085 Kostas Papadimitriou
                                  'ASTAKOS_SKIP_EMAIL_VERIFICATION', False)
232 7763f5c6 Kostas Papadimitriou
233 7763f5c6 Kostas Papadimitriou
# Kamaki download url. Displayed in api access view
234 7763f5c6 Kostas Papadimitriou
API_CLIENT_URL = getattr(settings, 'ASTAKOS_API_CLIENT_URL',
235 7763f5c6 Kostas Papadimitriou
                         'https://pypi.python.org/pypi/kamaki')
236 1ca02d1a Kostas Papadimitriou
237 1ca02d1a Kostas Papadimitriou
KAMAKI_CONFIG_CLOUD_NAME = getattr(settings,
238 1ca02d1a Kostas Papadimitriou
                                   'ASTAKOS_KAMAKI_CONFIG_CLOUD_NAME',
239 1ca02d1a Kostas Papadimitriou
                                   None)
240 184f551f Georgios D. Tsoukalas
241 184f551f Georgios D. Tsoukalas
REDIRECT_ALLOWED_SCHEMES = getattr(settings,
242 184f551f Georgios D. Tsoukalas
                                   'ASTAKOS_REDIRECT_ALLOWED_SCHEMES',
243 abe6915b Christos Stavrakakis
                                   ('pithos', 'pithosdev'))
244 c8a38c0e Christos Stavrakakis
245 c8a38c0e Christos Stavrakakis
ADMIN_STATS_PERMITTED_GROUPS = getattr(settings,
246 c8a38c0e Christos Stavrakakis
                                       'ASTAKOS_ADMIN_STATS_PERMITTED_GROUPS',
247 c8a38c0e Christos Stavrakakis
                                       ['admin-stats'])
248 af4d8c34 Giorgos Korfiatis
249 af4d8c34 Giorgos Korfiatis
ENDPOINT_CACHE_TIMEOUT = getattr(settings,
250 af4d8c34 Giorgos Korfiatis
                                 'ASTAKOS_ENDPOINT_CACHE_TIMEOUT',
251 af4d8c34 Giorgos Korfiatis
                                 60)
252 56bbece7 Giorgos Korfiatis
253 56bbece7 Giorgos Korfiatis
RESOURCE_CACHE_TIMEOUT = getattr(settings,
254 56bbece7 Giorgos Korfiatis
                                 'ASTAKOS_RESOURCE_CACHE_TIMEOUT',
255 56bbece7 Giorgos Korfiatis
                                 60)