fnp
/
wolnelektury.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
some speedups for batch indexing
[wolnelektury.git]
/
wolnelektury
/
settings.py
diff --git
a/wolnelektury/settings.py
b/wolnelektury/settings.py
index
8a82221
..
1608b5f
100644
(file)
--- a/
wolnelektury/settings.py
+++ b/
wolnelektury/settings.py
@@
-1,3
+1,4
@@
+# -*- coding: utf-8 -*-
# Django settings for wolnelektury project.
from os import path
# Django settings for wolnelektury project.
from os import path
@@
-13,19
+14,23
@@
ADMINS = [
MANAGERS = ADMINS
MANAGERS = ADMINS
-DATABASE_ENGINE = 'sqlite3' # 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
-DATABASE_NAME = path.join(PROJECT_DIR, 'dev.db') # Or path to database file if using sqlite3.
-DATABASE_USER = '' # Not used with sqlite3.
-DATABASE_PASSWORD = '' # Not used with sqlite3.
-DATABASE_HOST = '' # Set to empty string for localhost. Not used with sqlite3.
-DATABASE_PORT = '' # Set to empty string for default. Not used with sqlite3.
+DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
+ 'NAME': path.join(PROJECT_DIR, 'dev.db'), # Or path to database file if using sqlite3.
+ 'USER': '', # Not used with sqlite3.
+ 'PASSWORD': '', # Not used with sqlite3.
+ 'HOST': '', # Set to empty string for localhost. Not used with sqlite3.
+ }
+}
+
# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
# although not all choices may be available on all operating systems.
# If running in a Windows environment this must be set to the same as your
# system time zone.
# Local time zone for this installation. Choices can be found here:
# http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
# although not all choices may be available on all operating systems.
# If running in a Windows environment this must be set to the same as your
# system time zone.
-TIME_ZONE = 'Europe/Warsaw
Poland
'
+TIME_ZONE = 'Europe/Warsaw'
# Language code for this installation. All choices can be found here:
# http://www.i18nguy.com/unicode/language-identifiers.html
# Language code for this installation. All choices can be found here:
# http://www.i18nguy.com/unicode/language-identifiers.html
@@
-34,14
+39,14
@@
LANGUAGE_CODE = 'pl'
gettext = lambda s: s
LANGUAGES = tuple(sorted([
gettext = lambda s: s
LANGUAGES = tuple(sorted([
- ('pl',
gettext('Polish')
),
- ('de',
gettext('German')
),
- ('en',
gettext('English')
),
- ('lt',
gettext('Lithuanian')
),
- ('fr',
gettext('French')
),
- ('ru',
gettext('Russian')
),
- ('es',
gettext('Spanish')
),
- ('uk',
gettext('Ukrainian')
),
+ ('pl',
u'polski'
),
+ ('de',
u'Deutsch'
),
+ ('en',
u'English'
),
+ ('lt',
u'lietuvių'
),
+ ('fr',
u'français'
),
+ ('ru',
u'русский'
),
+ ('es',
u'español'
),
+ ('uk',
u'українська'
),
], key=lambda x: x[0]))
], key=lambda x: x[0]))
@@
-53,8
+58,9
@@
USE_I18N = True
# Absolute path to the directory that holds media.
# Example: "/home/media/media.lawrence.com/"
# Absolute path to the directory that holds media.
# Example: "/home/media/media.lawrence.com/"
-MEDIA_ROOT = path.join(PROJECT_DIR, '../media')
-STATIC_ROOT = path.join(PROJECT_DIR, 'static')
+MEDIA_ROOT = path.join(PROJECT_DIR, '../media/')
+STATIC_ROOT = path.join(PROJECT_DIR, 'static/')
+SEARCH_INDEX = path.join(MEDIA_ROOT, 'search/')
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash if there is a path component (optional in other cases).
# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash if there is a path component (optional in other cases).
@@
-71,29
+77,33
@@
ADMIN_MEDIA_PREFIX = '/admin-media/'
# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = [
# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = [
- 'django.template.loaders.filesystem.
load_template_source
',
- 'django.template.loaders.app_directories.
load_template_source
',
-# 'django.template.loaders.eggs.
load_template_source
',
+ 'django.template.loaders.filesystem.
Loader
',
+ 'django.template.loaders.app_directories.
Loader
',
+# 'django.template.loaders.eggs.
Loader
',
]
]
-TEMPLATE_CONTEXT_PROCESSORS =
[
- 'django.co
re
.context_processors.auth',
+TEMPLATE_CONTEXT_PROCESSORS =
(
+ 'django.co
ntrib.auth
.context_processors.auth',
'django.core.context_processors.debug',
'django.core.context_processors.i18n',
'django.core.context_processors.media',
'django.core.context_processors.request',
'wolnelektury.context_processors.extra_settings',
'django.core.context_processors.debug',
'django.core.context_processors.i18n',
'django.core.context_processors.media',
'django.core.context_processors.request',
'wolnelektury.context_processors.extra_settings',
-]
+ 'search.context_processors.search_form',
+)
MIDDLEWARE_CLASSES = [
MIDDLEWARE_CLASSES = [
+ 'django.middleware.cache.UpdateCacheMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.middleware.doc.XViewMiddleware',
'pagination.middleware.PaginationMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.middleware.doc.XViewMiddleware',
'pagination.middleware.PaginationMiddleware',
'django.middleware.locale.LocaleMiddleware',
-
+ 'piwik.django.middleware.PiwikMiddleware',
'maintenancemode.middleware.MaintenanceModeMiddleware',
'maintenancemode.middleware.MaintenanceModeMiddleware',
+ 'django.middleware.common.CommonMiddleware',
+ 'django.middleware.cache.FetchFromCacheMiddleware',
]
ROOT_URLCONF = 'wolnelektury.urls'
]
ROOT_URLCONF = 'wolnelektury.urls'
@@
-107,65
+117,155
@@
LOGIN_URL = '/uzytkownicy/zaloguj/'
LOGIN_REDIRECT_URL = '/'
INSTALLED_APPS = [
LOGIN_REDIRECT_URL = '/'
INSTALLED_APPS = [
- #
included
+ #
external
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.admin',
'django.contrib.admindocs',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.admin',
'django.contrib.admindocs',
-
- # external
+ 'pagination',
+ 'piston',
+ 'piwik.django',
+ 'rosetta',
'south',
'sorl.thumbnail',
'south',
'sorl.thumbnail',
- 'sponsors',
- 'newtagging',
- 'pagination',
- 'chunks',
+ 'djcelery',
+ 'djkombu',
+ # 'django_nose',
+
+ # included
'compress',
'modeltranslation',
'compress',
'modeltranslation',
- 'catalogue',
- 'lessons',
- '
piston
',
+
+ # our
+ '
ajaxable
',
'api',
'api',
- 'rosetta',
+ 'catalogue',
+ 'chunks',
+ 'dictionary',
'infopages',
'infopages',
+ 'lesmianator',
+ 'lessons',
+ 'newtagging',
+ 'opds',
+ 'pdcounter',
+ 'reporting',
+ 'sponsors',
+ 'stats',
'suggest',
'suggest',
+ 'picture',
+ 'search',
+ 'social',
]
]
-CACHE_BACKEND = 'locmem:///?max_entries=3000'
+CACHES = {
+ 'default': {
+ 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
+ 'LOCATION': [
+ '127.0.0.1:11211',
+ ]
+ },
+ 'permanent': {
+ 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
+ 'TIMEOUT': 2419200,
+ 'LOCATION': [
+ '127.0.0.1:11211',
+ ]
+ },
+ 'api': {
+ 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
+ 'LOCATION': path.join(PROJECT_DIR, 'django_cache/'),
+ 'KEY_PREFIX': 'api',
+ 'TIMEOUT': 86400,
+ },
+}
+CACHE_MIDDLEWARE_ANONYMOUS_ONLY=True
# CSS and JavaScript file groups
COMPRESS_CSS = {
'all': {
# CSS and JavaScript file groups
COMPRESS_CSS = {
'all': {
- 'source_filenames': ('css/master.css', 'css/jquery.autocomplete.css', 'css/jquery.countdown.css', 'css/master.plain.css', 'css/sponsors.css', 'css/facelist_2-0.css',),
+ #'source_filenames': ('css/master.css', 'css/jquery.autocomplete.css', 'css/master.plain.css', 'css/facelist_2-0.css',),
+ 'source_filenames': [
+ 'css/jquery.countdown.css',
+
+ 'css/base.css',
+ 'css/cite.css',
+ 'css/header.css',
+ 'css/main_page.css',
+ 'css/dialogs.css',
+ 'css/picture_box.css',
+ 'css/book_box.css',
+ 'css/catalogue.css',
+ 'css/sponsors.css',
+
+ 'css/social/shelf_tags.css',
+ 'css/ui-lightness/jquery-ui-1.8.16.custom.css',
+ ],
'output_filename': 'css/all.min?.css',
},
'output_filename': 'css/all.min?.css',
},
+ 'ie': {
+ 'source_filenames': [
+ 'css/ie.css',
+ ],
+ 'output_filename': 'css/ie.min?.css',
+ },
'book': {
'source_filenames': ('css/master.book.css',),
'output_filename': 'css/book.min?.css',
'book': {
'source_filenames': ('css/master.book.css',),
'output_filename': 'css/book.min?.css',
- }
+ },
+ 'player': {
+ 'source_filenames': [
+ 'jplayer/jplayer.blue.monday.css',
+ ],
+ 'output_filename': 'css/player.min?.css',
+ },
+ 'simple': {
+ 'source_filenames': ('css/simple.css',),
+ 'output_filename': 'css/simple.min?.css',
+ },
}
COMPRESS_JS = {
}
COMPRESS_JS = {
- 'jquery': {
- 'source_filenames': ('js/jquery.js',),
- 'output_filename': 'js/jquery.min.js',
- },
- 'all': {
- 'source_filenames': ('js/jquery.autocomplete.js', 'js/jquery.form.js',
+ 'base': {
+ 'source_filenames': (
+ 'js/jquery.cycle.min.js',
+ 'js/jquery.jqmodal.js',
+ 'js/jquery.form.js',
'js/jquery.countdown.js', 'js/jquery.countdown-pl.js',
'js/jquery.countdown-de.js', 'js/jquery.countdown-uk.js',
'js/jquery.countdown-es.js', 'js/jquery.countdown-lt.js',
'js/jquery.countdown-ru.js', 'js/jquery.countdown-fr.js',
'js/jquery.countdown.js', 'js/jquery.countdown-pl.js',
'js/jquery.countdown-de.js', 'js/jquery.countdown-uk.js',
'js/jquery.countdown-es.js', 'js/jquery.countdown-lt.js',
'js/jquery.countdown-ru.js', 'js/jquery.countdown-fr.js',
- 'js/jquery.jqmodal.js', 'js/jquery.labelify.js', 'js/catalogue.js',
+
+ 'js/jquery-ui-1.8.16.custom.min.js',
+
+ 'js/locale.js',
+ 'js/dialogs.js',
+ 'js/sponsors.js',
+ 'js/base.js',
+ 'js/pdcounter.js',
+
+ 'js/search.js',
),
),
- 'output_filename': 'js/all?.min.js',
+ 'output_filename': 'js/base?.min.js',
+ },
+ 'player': {
+ 'source_filenames': [
+ 'jplayer/jquery.jplayer.min.js',
+ 'jplayer/jplayer.playlist.min.js',
+ 'js/player.js',
+ ],
+ 'output_filename': 'js/player.min?.js',
},
'book': {
'source_filenames': ('js/jquery.eventdelegation.js', 'js/jquery.scrollto.js', 'js/jquery.highlightfade.js', 'js/book.js',),
'output_filename': 'js/book?.min.js',
},
'book': {
'source_filenames': ('js/jquery.eventdelegation.js', 'js/jquery.scrollto.js', 'js/jquery.highlightfade.js', 'js/book.js',),
'output_filename': 'js/book?.min.js',
+ },
+ 'book_ie': {
+ 'source_filenames': ('js/ierange-m2.js',),
+ 'output_filename': 'js/book_ie?.min.js',
}
}
+
}
COMPRESS_VERSION = True
}
COMPRESS_VERSION = True
@@
-186,9
+286,40
@@
THUMBNAIL_PROCESSORS = (
TRANSLATION_REGISTRY = "wolnelektury.translation"
TRANSLATION_REGISTRY = "wolnelektury.translation"
+
+# seconds until a changes appears in the changes api
+API_WAIT = 10
+
# limit number of filtering tags
MAX_TAG_LIST = 6
# limit number of filtering tags
MAX_TAG_LIST = 6
+NO_BUILD_EPUB = False
+NO_BUILD_TXT = False
+NO_BUILD_PDF = False
+NO_BUILD_MOBI = True
+NO_SEARCH_INDEX = False
+
+ALL_EPUB_ZIP = 'wolnelektury_pl_epub'
+ALL_PDF_ZIP = 'wolnelektury_pl_pdf'
+ALL_MOBI_ZIP = 'wolnelektury_pl_mobi'
+
+CATALOGUE_DEFAULT_LANGUAGE = 'pol'
+PUBLISH_PLAN_FEED = 'http://redakcja.wolnelektury.pl/documents/track/editor-proofreading/'
+
+PAGINATION_INVALID_PAGE_RAISES_404 = True
+
+import djcelery
+djcelery.setup_loader()
+
+BROKER_BACKEND = "djkombu.transport.DatabaseTransport"
+BROKER_HOST = "localhost"
+BROKER_PORT = 5672
+BROKER_USER = "guest"
+BROKER_PASSWORD = "guest"
+BROKER_VHOST = "/"
+
+CELERY_EAGER_PROPAGATES_EXCEPTIONS = True
+
# Load localsettings, if they exist
try:
from localsettings import *
# Load localsettings, if they exist
try:
from localsettings import *