Generated: Wed 2013-03-13 10:33 CET
Source file: /media/Envs/Envs/filer-gallery/lib/python2.7/site-packages/cms/conf/patch.py
Stats: 0 executed, 22 missed, 6 excluded, 34 ignored
# -*- coding: utf-8 -*-from django.conf import settingsfrom django.core.exceptions import ImproperlyConfiguredfrom django.utils.translation import ugettext_lazy as _from sekizai.helpers import validate_templatefrom warnings import warndef pre_patch(): """Patch settings befere adding global cms defaults """ # append some usefull properties to settings append_properties = { 'i18n_installed': 'cms.middleware.multilingual.MultilingualURLMiddleware' in settings.MIDDLEWARE_CLASSES } for attr, value in append_properties.items(): if not hasattr(settings, attr): setattr(settings._wrapped, attr, value)def post_patch(): """Patch settings after global are adde """ if settings.CMS_TEMPLATE_INHERITANCE: # Append the magic inheritance template settings.CMS_TEMPLATES = tuple(settings.CMS_TEMPLATES) + ( (settings.CMS_TEMPLATE_INHERITANCE_MAGIC, _('Inherit the template of the nearest ancestor')), )def post_patch_check(): """Post patch check, just make sure there isn't any misconfiguration. All the code for checking settings should go here. """ # Ensure templates are set, and more than just the inheritance setting. cms_templates_length = len(settings.CMS_TEMPLATES) if (cms_templates_length < 1 or (cms_templates_length == 1 and settings.CMS_TEMPLATES[0][0] == settings.CMS_TEMPLATE_INHERITANCE_MAGIC)): raise ImproperlyConfigured('Please make sure you specified a CMS_TEMPLATES setting.') # check if is user middleware installed if settings.CMS_PERMISSION and not 'cms.middleware.user.CurrentUserMiddleware' in settings.MIDDLEWARE_CLASSES: raise ImproperlyConfigured('CMS Permission system requires cms.middleware.user.CurrentUserMiddleware.\n' 'Please put it into your MIDDLEWARE_CLASSES in settings file') # check sekizai namespaces try: from django.template.loaders.app_directories import Loader except ImportError: return # south... for template in settings.CMS_TEMPLATES: if template[0] == settings.CMS_TEMPLATE_INHERITANCE_MAGIC: continue if not validate_template(template[0], ['js', 'css']): raise ImproperlyConfigured( "The 'js' and 'css' sekizai namespaces must be present in each template, " "- or a template it inherits from - defined in CMS_TEMPLATES. " "I can't find the namespaces in %r." % template[0] )