Javascript refactoring. History view now displays tags
[redakcja.git] / platforma / settings.py
1 # -*- coding: utf-8 -*-
2 import os.path
3
4 PROJECT_ROOT = os.path.realpath(os.path.dirname(__file__))
5
6 DEBUG = False
7 TEMPLATE_DEBUG = DEBUG
8
9 MAINTENANCE_MODE = False
10
11 ADMINS = (
12     # (u'Marek Stępniowski', 'marek@stepniowski.com'),
13     (u'Łukasz Rekucki', 'lrekucki@gmail.com'),
14 )
15
16 MANAGERS = ADMINS
17
18 DATABASE_ENGINE = 'sqlite3'           # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
19 DATABASE_NAME = PROJECT_ROOT + '/dev.sqlite'             # Or path to database file if using sqlite3.
20 DATABASE_USER = ''             # Not used with sqlite3.
21 DATABASE_PASSWORD = ''         # Not used with sqlite3.
22 DATABASE_HOST = ''             # Set to empty string for localhost. Not used with sqlite3.
23 DATABASE_PORT = ''             # Set to empty string for default. Not used with sqlite3.
24
25 # Local time zone for this installation. Choices can be found here:
26 # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
27 # although not all choices may be available on all operating systems.
28 # If running in a Windows environment this must be set to the same as your
29 # system time zone.
30 TIME_ZONE = 'Europe/Warsaw Poland'
31
32 # Language code for this installation. All choices can be found here:
33 # http://www.i18nguy.com/unicode/language-identifiers.html
34 LANGUAGE_CODE = 'pl'
35
36 #import locale
37 #locale.setlocale(locale.LC_ALL, '')
38
39 SITE_ID = 1
40
41 # If you set this to False, Django will make some optimizations so as not
42 # to load the internationalization machinery.
43 USE_I18N = True
44
45 # Absolute path to the directory that holds media.
46 # Example: "/home/media/media.lawrence.com/"
47 MEDIA_ROOT = PROJECT_ROOT + '/media/'
48 STATIC_ROOT = PROJECT_ROOT + '/static/'
49
50 # URL that handles the media served from MEDIA_ROOT. Make sure to use a
51 # trailing slash if there is a path component (optional in other cases).
52 # Examples: "http://media.lawrence.com", "http://example.com/media/"
53 MEDIA_URL = '/media/'
54 STATIC_URL = '/static/'
55
56 # URL prefix for admin media -- CSS, JavaScript and images. Make sure to use a
57 # trailing slash.
58 # Examples: "http://foo.com/media/", "/media/".
59 ADMIN_MEDIA_PREFIX = '/admin-media/'
60
61 # Make this unique, and don't share it with anybody.
62 SECRET_KEY = 'ife@x^_lak+x84=lxtr!-ur$5g$+s6xt85gbbm@e_fk6q3r8=+'
63
64 # List of callables that know how to import templates from various sources.
65 TEMPLATE_LOADERS = (
66     'django.template.loaders.filesystem.load_template_source',
67     'django.template.loaders.app_directories.load_template_source',
68 #     'django.template.loaders.eggs.load_template_source',
69 )
70
71 TEMPLATE_CONTEXT_PROCESSORS = (
72     "django.core.context_processors.auth",
73     "django.core.context_processors.debug",
74     "django.core.context_processors.i18n",
75     "platforma.context_processors.settings",
76     "django.core.context_processors.request",
77 )
78
79
80 MIDDLEWARE_CLASSES = (
81     'django.middleware.common.CommonMiddleware',
82     'django.contrib.sessions.middleware.SessionMiddleware',
83
84     'django.contrib.auth.middleware.AuthenticationMiddleware',
85     'django_cas.middleware.CASMiddleware',
86
87     'django.middleware.doc.XViewMiddleware',    
88     'maintenancemode.middleware.MaintenanceModeMiddleware',
89     # 'debug_toolbar.middleware.DebugToolbarMiddleware' #
90 )
91
92 AUTHENTICATION_BACKENDS = (
93     'django.contrib.auth.backends.ModelBackend',
94     'django_cas.backends.CASBackend',
95 )
96
97 ROOT_URLCONF = 'urls'
98
99 TEMPLATE_DIRS = (
100     PROJECT_ROOT + '/templates',
101 )
102
103
104 #
105 # Central Auth System
106 #
107 ## Set this to where the CAS server lives 
108 # CAS_SERVER_URL = "http://cas.fnp.pl/
109 CAS_ADMIN_PREFIX = "/admin/"
110 CAS_LOGOUT_COMPLETELY = True
111
112 # CSS and JS files to compress
113 COMPRESS_CSS = {
114     'detail': {
115          'source_filenames': (
116             'css/master.css',
117             'css/gallery.css',  
118             'css/history.css', 
119             'css/summary.css',
120             'css/html.css',             
121             'css/jquery.autocomplete.css',
122             'css/dialogs.css',
123         ),
124         'output_filename': 'compressed/detail_styles_?.css',
125     },
126     'listing': {
127         'source_filenames': (
128             'css/filelist.css', 
129         ),             
130         'output_filename': 'compressed/listing_styles_?.css',
131      }
132 }
133  
134 COMPRESS_JS = {
135     # everything except codemirror and jquery (which we take from google)
136     'detail': {
137         'source_filenames': (
138                 #'js/jquery-1.4.2.min.js', 
139                 'js/jquery.autocomplete.js', 
140                 'js/jquery.blockui.js',
141                 'js/jquery.elastic.js',
142                 'js/button_scripts.js',
143                 'js/slugify.js',
144                 
145                 # wiki scripts
146                 'js/wiki/wikiapi.js',
147                 'js/wiki/base.js',
148                 'js/wiki/xslt.js',
149                 'js/wiki/history_view.js',
150                 'js/wiki/summary_view.js',
151                 'js/wiki/source_editor.js',
152                 'js/wiki/wysiwyg_editor.js',
153                 'js/wiki/scan_gallery.js',                
154                 'js/wiki/main.js',
155         ),             
156         'output_filename': 'compressed/detail_scripts_?.js',
157      },
158     'listing': {
159         'source_filenames': (
160                 # 'js/jquery-1.4.2.min.js', 
161                 'js/slugify.js',                
162         ),             
163         'output_filename': 'compressed/listing_scripts_?.js',
164      }
165 }
166  
167 COMPRESS = True
168 COMPRESS_CSS_FILTERS = None
169 COMPRESS_JS_FILTERS = None
170 COMPRESS_AUTO = False
171 COMPRESS_VERSION = True
172 COMPRESS_VERSIONING = 'compress.versioning.hash.MD5Versioning'
173
174
175 INSTALLED_APPS = (
176     'django.contrib.auth',
177     'django.contrib.contenttypes',
178     'django.contrib.sessions',
179     'django.contrib.sites',
180     'django.contrib.admin',
181     'django.contrib.admindocs',
182
183     'django_nose',
184     'debug_toolbar',
185     
186     'compress',
187     'south',
188     'sorl.thumbnail',
189     'filebrowser',
190
191     'wiki',    
192     'toolbar',
193 )
194
195
196 #
197 # Nose tests
198 #
199
200 TEST_RUNNER = 'django_nose.run_tests'
201 TEST_MODULES = ('wiki', 'toolbar', 'vstorage')
202 NOSE_ARGS = (
203     '--tests=' + ','.join(TEST_MODULES),
204     '--cover-package=' + ','.join(TEST_MODULES),
205     '-d',
206     '--with-coverage',
207     '--with-doctest'
208 )
209
210
211 FILEBROWSER_URL_FILEBROWSER_MEDIA = STATIC_URL + 'filebrowser/'
212 FILEBROWSER_DIRECTORY = 'images/'
213 FILEBROWSER_ADMIN_VERSIONS = []
214 FILEBROWSER_VERSIONS_BASEDIR = 'thumbnails/'
215 FILEBROWSER_DEFAULT_ORDER = "path_relative"
216
217 # REPOSITORY_PATH = '/Users/zuber/Projekty/platforma/files/books'
218 IMAGE_DIR = 'images'
219
220 # Import localsettings file, which may override settings defined here
221 try:
222     from localsettings import *
223 except ImportError:
224     pass
225
226 try:
227     LOGGING_CONFIG_FILE 
228 except NameError:
229     LOGGING_CONFIG_FILE = os.path.join(PROJECT_ROOT, 'config', 
230                                 ('logging.cfg' if not DEBUG else 'logging.cfg.dev'))
231 try:
232     import logging
233     import logging.config
234     
235     logging.config.fileConfig(LOGGING_CONFIG_FILE)    
236 except ImportError, exc:
237     raise