Compatibility with both south 0.7.0 and 0.7.3
[snf-cloudcms] / cloudcms / synnefo_settings.py
1 # Copyright 2012 GRNET S.A. All rights reserved.
2 #
3 # Redistribution and use in source and binary forms, with or
4 # without modification, are permitted provided that the following
5 # conditions are met:
6 #
7 #   1. Redistributions of source code must retain the above
8 #      copyright notice, this list of conditions and the following
9 #      disclaimer.
10 #
11 #   2. Redistributions in binary form must reproduce the above
12 #      copyright notice, this list of conditions and the following
13 #      disclaimer in the documentation and/or other materials
14 #      provided with the distribution.
15 #
16 # THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
17 # OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18 # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
19 # PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
20 # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
23 # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
24 # AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
26 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27 # POSSIBILITY OF SUCH DAMAGE.
28 #
29 # The views and conclusions contained in the software and
30 # documentation are those of the authors and should not be
31 # interpreted as representing official policies, either expressed
32 # or implied, of GRNET S.A.
33
34
35 CLOUDCMS_APPS = [
36     'cloudcms',
37     'cloudcmsblog',
38     'pagination',
39
40     'django.contrib.auth',
41     'django.contrib.contenttypes',
42     'django.contrib.sessions',
43     'django.contrib.sites',
44     'django.contrib.messages',
45     'django.contrib.admin',
46     'django.contrib.admindocs',
47     'django.contrib.sitemaps',
48
49     'south',
50
51     'feincms',
52     'feincms.module.page',
53     'feincms.module.medialibrary',
54 ]
55 CLOUDCMS_MIDDLEWARES = [
56     'django.contrib.sessions.middleware.SessionMiddleware',
57     'django.contrib.auth.middleware.AuthenticationMiddleware',
58     'django.contrib.messages.middleware.MessageMiddleware',
59     'django.middleware.csrf.CsrfViewMiddleware',
60     'pagination.middleware.PaginationMiddleware'
61 ]
62 CLOUDCMS_STATICFILES = {
63         'cloudcms': '',
64         'feincms': ''
65 }
66 CLOUDCMS_CONTEXT_PROCESSORS = [
67     'cloudcms.context_processors.application',
68     'cloudcms.context_processors.cloudbar'
69 ]
70
71
72 # Required additions in Django project settings
73
74 # keep compatibility with south v0.7.0 (available in debian squeeze)
75 try:
76     from south import __version__
77     if __version__ == "0.7":
78         # south 0.7.0 requires full module name as keys while 0.7.3
79         # uses the app names
80         SOUTH_MIGRATION_MODULES = {
81             'cloudcmsblog': 'cloudcms.migrate.cloudcmsblog',
82             'feincms.module.page': 'cloudcms.migrate.page',
83             'feincms.module.medialibrary': 'cloudcms.migrate.medialibrary',
84         }
85     else:
86         SOUTH_MIGRATION_MODULES = {
87             'cloudcmsblog': 'cloudcms.migrate.cloudcmsblog',
88             'page': 'cloudcms.migrate.page',
89             'medialibrary': 'cloudcms.migrate.medialibrary',
90         }
91 except:
92     pass
93
94
95 CLOUDBAR_URL = '/static/im/cloudbar/cloudbar.js'
96 CLOUDBAR_ACTIVE_SERVICE = 'okeanos_cms'
97
98 import os
99 SITE_ID = int(os.environ.get('CLOUDCMS_SITE_ID', 1))