# 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')
-SEARCH_INDEX = path.join(MEDIA_ROOT, 'search')
+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).
# 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.core.context_processors.auth',
+ 'django.contrib.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',
+ 'search.context_processors.search_form',
)
MIDDLEWARE_CLASSES = [
'suggest',
'picture',
'search',
+ 'social',
]
-#CACHE_BACKEND = 'locmem:///?max_entries=3000'
-#CACHE_BACKEND = 'memcached://127.0.0.1:11211/'
+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
'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',
'js/search.js',
- #~ 'js/jquery.autocomplete.js',
- #~ 'js/jquery.labelify.js', 'js/catalogue.js',
+ 'js/jquery.labelify.js',
),
'output_filename': 'js/base?.min.js',
},
- #~ 'book': {
- #~ 'source_filenames': ('js/jquery.eventdelegation.js', 'js/jquery.scrollto.js', 'js/jquery.highlightfade.js', 'js/book.js',),
- #~ 'source_filenames': [],
- #~ 'output_filename': 'js/book?.min.js',
- #~ },
- #~ 'book_ie': {
- #~ 'source_filenames': ('js/ierange-m2.js',),
- #~ 'source_filenames': [],
- #~ 'output_filename': 'js/book_ie?.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_ie': {
+ 'source_filenames': ('js/ierange-m2.js',),
+ 'output_filename': 'js/book_ie?.min.js',
+ }
}
NO_BUILD_PDF = False
NO_BUILD_MOBI = True
NO_SEARCH_INDEX = False
-SEARCH_INDEX_PARALLEL = 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