settings: add per-service settings, for non-default behaviours

Closes #5457
This commit is contained in:
Frédéric Péters 2014-09-10 21:54:44 +02:00
parent 72eaf82e8e
commit 602ecd0788
2 changed files with 18 additions and 0 deletions

View File

@ -295,6 +295,9 @@ INVOICING_DIRECTORY = None
# display events only for current service
CURRENT_SERVICE_EVENTS_ONLY = True
# dictionary to define non-default behaviours for some services
SERVICE_SETTINGS = {}
#CSV_ENCODING = 'cp1252' #For windows : windows-1252/Winlatin1
#CSVPROFILE = {\
# 'delimiter' : ';',

View File

@ -1,7 +1,10 @@
from django.contrib.auth.models import Group
from django.conf import settings
from datetime import timedelta, datetime
from .middleware.request import get_request
__EPOCH = datetime(day=5,month=1,year=1970)
def __date_to_datetime(date):
@ -75,3 +78,15 @@ def get_nir_control_key(nir):
return (97 - (nir % 97))
except:
return None
def get_service_setting(setting_name, default_value=None):
from .cbv import HOME_SERVICE_COOKIE
request = get_request()
if not request:
return None
service = request.COOKIES.get(HOME_SERVICE_COOKIE)
if not service:
return None
if not hasattr(settings, 'SERVICE_SETTINGS'):
return None
return settings.SERVICE_SETTINGS.get(service, {}).get(setting_name) or default_value