blog registeration process done
[yblog:yblog.git] / yblog / settings.py
1 import os
2 import sys
3
4 DEBUG = True
5 TEMPLATE_DEBUG = DEBUG
6
7 DEPLOYMENT = False
8
9 ADMINS = (
10     ('Sameer Rahmani', 'lxsameer@yellowen.com'),
11 )
12
13 MANAGERS = ADMINS
14
15 ROOT = os.path.dirname(__file__)
16
17 DATABASES = {
18     'default': {
19         'ENGINE': 'django.db.backends.sqlite3',
20         'NAME': os.path.join(ROOT, '../db/db.sqlite'),
21         'USER': '',
22         'PASSWORD': '',
23         'HOST': '',
24         'PORT': '',
25     }
26 }
27
28 if DEPLOYMENT:
29     if os.path.exists(os.path.join(ROOT, "conf/pgsecret")):
30         pgsec = file(os.path.join(ROOT, "conf/pgsecret")).read().strip()
31     DATABASES = {
32         'default': {
33             'ENGINE': 'django.db.backends.postgresql_psycopg2',
34             'NAME': 'yblog',
35             'USER': 'ublog',
36             'PASSWORD': pgsec,
37             'HOST': '',
38             'PORT': '',
39             }
40         }
41
42 # Local time zone for this installation. Choices can be found here:
43 # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
44 # although not all choices may be available on all operating systems.
45 # On Unix systems, a value of None will cause Django to use the same
46 # timezone as the operating system.
47 # If running in a Windows environment this must be set to the same as your
48 # system time zone.
49 TIME_ZONE = 'America/Chicago'
50
51 # Language code for this installation. All choices can be found here:
52 # http://www.i18nguy.com/unicode/language-identifiers.html
53 LANGUAGE_CODE = 'en-us'
54
55 _ = lambda s: s
56
57 LANGUAGES = [
58     ["fa", _("Persian")],
59     ["en", _("English")],
60 ]
61
62
63 SITE_ID = 1
64
65 # If you set this to False, Django will make some optimizations so as not
66 # to load the internationalization machinery.
67 USE_I18N = True
68
69 # If you set this to False, Django will not format dates, numbers and
70 # calendars according to the current locale.
71 USE_L10N = True
72
73 # If you set this to False, Django will not use timezone-aware datetimes.
74 USE_TZ = False
75
76 # Absolute filesystem path to the directory that will hold user-uploaded files.
77 # Example: "/home/media/media.lawrence.com/media/"
78 MEDIA_ROOT = os.path.join(ROOT, "../media/statics/")
79
80 # URL that handles the media served from MEDIA_ROOT. Make sure to use a
81 # trailing slash.
82 # Examples: "http://media.lawrence.com/media/", "http://example.com/media/"
83 MEDIA_URL = '/statics/'
84
85 # Absolute path to the directory static files should be collected to.
86 # Don't put anything in this directory yourself; store your static files
87 # in apps' "static/" subdirectories and in STATICFILES_DIRS.
88 # Example: "/home/media/media.lawrence.com/static/"
89 STATIC_ROOT = os.path.join(ROOT, "../statics")
90
91 # URL prefix for static files.
92 # Example: "http://media.lawrence.com/static/"
93 STATIC_URL = '/statics/'
94
95 #ADMIN_MEDIA_PREFIX = '/statics/admin/'
96
97 # Additional locations of static files
98 STATICFILES_DIRS = (
99     # Put strings here, like "/home/html/static" or "C:/www/django/static".
100     # Always use forward slashes, even on Windows.
101     # Don't forget to use absolute paths, not relative paths.
102 )
103
104 # List of finder classes that know how to find static files in
105 # various locations.
106 STATICFILES_FINDERS = (
107     'django.contrib.staticfiles.finders.FileSystemFinder',
108     'django.contrib.staticfiles.finders.AppDirectoriesFinder',
109 #    'django.contrib.staticfiles.finders.DefaultStorageFinder',
110 )
111
112 # Make this unique, and don't share it with anybody.
113 SECRET_KEY = 'q_#ilqm_7y%5zjsbjrcg%r66#7sgu@a^!2_afapz%w-2yy(gze'
114
115 # List of callables that know how to import templates from various sources.
116 TEMPLATE_LOADERS = (
117     'django.template.loaders.filesystem.Loader',
118     'django.template.loaders.app_directories.Loader',
119 #     'django.template.loaders.eggs.Loader',
120 )
121
122 MIDDLEWARE_CLASSES = (
123     'django.middleware.common.CommonMiddleware',
124     'django.contrib.sessions.middleware.SessionMiddleware',
125     'django.middleware.csrf.CsrfViewMiddleware',
126     'django.contrib.auth.middleware.AuthenticationMiddleware',
127     'daarmaan.client.middlewares.DaarmaanAuthMiddleware',
128     'django.contrib.messages.middleware.MessageMiddleware',
129     'ultra_blog.middlewares.BlogMiddleware',
130     # Uncomment the next line for simple clickjacking protection:
131     'django.middleware.clickjacking.XFrameOptionsMiddleware',
132 )
133
134 ROOT_URLCONF = 'yblog.urls'
135
136 # Python dotted path to the WSGI application used by Django's runserver.
137 WSGI_APPLICATION = 'servers.wsgi.application'
138
139 TEMPLATE_DIRS = (
140     os.path.join(ROOT, '../media/templates'),
141 )
142
143 INSTALLED_APPS = (
144     'django.contrib.auth',
145     'django.contrib.contenttypes',
146     'django.contrib.sessions',
147     'django.contrib.sites',
148     'django.contrib.messages',
149     'django.contrib.admin',
150     'django.contrib.comments',
151     #'django.contrib.markup',
152     'vanda.core',
153     'daarmaan.client',
154     'vanda.apps.page',
155     'haystack',
156     'tagging',
157     'robots',
158     'ultra_blog',
159     #'vanda.apps.dtable',
160     'notify',
161     'captcha',
162 )
163
164 # A sample logging configuration. The only tangible logging
165 # performed by this configuration is to send an email to
166 # the site admins on every HTTP 500 error when DEBUG=False.
167 # See http://docs.djangoproject.com/en/dev/topics/logging for
168 # more details on how to customize your logging configuration.
169 LOGGING = {
170     'version': 1,
171     'disable_existing_loggers': False,
172     'filters': {
173         'require_debug_false': {
174             '()': 'django.utils.log.RequireDebugFalse'
175             }
176         },
177     'handlers': {
178         'console': {
179             'level': 'DEBUG',
180             'class': 'logging.StreamHandler',
181             'stream': sys.stdout,
182             },
183         'mail_admins': {
184             'level': 'ERROR',
185             'filters': ['require_debug_false'],
186             'class': 'django.utils.log.AdminEmailHandler'
187             }
188         },
189     'loggers': {
190         ## 'django': {
191         ##     'handlers': ['console', ],
192         ##     'level': 'ERROR',
193         ##     'propagate': True,
194         ##     },
195         'django.request': {
196             'handlers': ['mail_admins', 'console'],
197             'level': 'ERROR',
198             'propagate': True,
199             },
200         'django.db.backends': {
201             'level': 'DEBUG',
202             'handers': ['console'],
203             },
204         }
205 }
206
207 TEMPLATE_CONTEXT_PROCESSORS = (
208     "django.contrib.auth.context_processors.auth",
209     "django.core.context_processors.debug",
210     "django.core.context_processors.i18n",
211     "django.core.context_processors.media",
212     "django.core.context_processors.request",
213     "django.contrib.messages.context_processors.messages",
214     #"daarmaan.client.context_processors.urls",
215     "utils.projectinfo.info",
216     )
217
218
219 CACHES = {
220     'default': {
221         'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
222         'LOCATION': os.path.join(ROOT, '../.cache'),
223     }
224 }
225
226 DOMAIN = "yellowers.com"
227
228 # Email settings ---------------------------
229 try:
230     from conf import smtp_settings
231
232     EMAIL_HOST = smtp_settings.EMAIL_HOST
233     EMAIL_PORT = smtp_settings.EMAIL_PORT
234     EMAIL_HOST_USER = smtp_settings.EMAIL_HOST_USER
235     EMAIL_HOST_PASSWORD = smtp_settings.EMAIL_HOST_PASSWORD
236     EMAIL_USE_TLS = smtp_settings.EMAIL_USE_TLS
237     EMAIL = smtp_settings.EMAIL
238
239 except ImportError:
240     pass
241
242
243 try:
244     from conf import recaptcha
245
246     RECAPTCHA_PRIVATE_KEY = recaptcha.PRIV_KEY
247     RECAPTCHA_PUBLIC_KEY = recaptcha.PUB_KEY
248
249 except ImportError:
250
251     pass
252
253
254 WEBSOCKET_PORT = "9001"
255 UNIX_SOCKET = "/tmp/websucks.sock"
256
257 TITLE = "Yellowen Blog"
258 VERSION = "3.0.0-b1"
259 VANDA_VERSION = "2.4.0"
260
261 # Setting up search ENGINE
262 HAYSTACK_SEARCH_ENGINE = 'whoosh'
263 HAYSTACK_SITECONF = 'conf.search_config'
264 HAYSTACK_WHOOSH_PATH = os.path.join(ROOT, '.search_index')
265
266 # Configuring SSO through Daarmaan service
267 DAARMAAN_SERVER = "http://daarmaan.yellowen.com:9000"
268 DAARMAAN_LOGIN = "%s/authenticate/" % DAARMAAN_SERVER
269 DAARMAAN_LOGOUT = "%s/logout/" % DAARMAAN_SERVER
270 DAARMAAN_DASHBOARD = "%s/my/" % DAARMAAN_SERVER
271
272 SERVICE_NAME = "yblog.com"
273 SERVICE_KEY = "123456"
274
275 AUTHENTICATION_BACKENDS = (
276     'daarmaan.client.backends.DaarmaanBackend',
277 )
278
279 #LOGIN_REDIRECT_URL = "/"
280 LOGIN_URL = DAARMAAN_SERVER
281 LOGOUT_URL = "%s/logout" % DAARMAAN_SERVER
282
283 GLOBAL_DOMAINS = [
284     "www.yellowers.com",
285     "yellowers.com",
286     "localhost:8000",
287     ]