Пример #1
0
 def get_media(self, request, context):
     from cms.plugins.utils import get_plugin_media
     media_classes = [
         get_plugin_media(request, context, plugin)
         for plugin in self.cmsplugin_set.all()
     ]
     if media_classes:
         return reduce(operator.add, media_classes)
     return Media()
Пример #2
0
 def get_media(self, request, context):
     from cms.plugins.utils import get_plugin_media
     media_classes = [
         get_plugin_media(request, context, plugin)
         for plugin in self.get_plugins()
     ]
     if media_classes:
         return reduce(operator.add, media_classes)
     return Media()
Пример #3
0
 def render(self, context, instance, placeholder):
     template_vars = {
         'placeholder': placeholder,
     }
     template_vars['object'] = instance
     lang = instance.from_language
     request = context.get('request', None)
     if not lang:
         if context.has_key('request'):
             lang = get_language_from_request(request)
         else:
             lang = settings.LANGUAGE_CODE
     if instance.from_page:
         page = instance.from_page
     else:
         page = instance.page
     if not instance.page.publisher_is_draft and page.publisher_is_draft:
         page = page.publisher_public
         
     plugins = get_cmsplugin_queryset(request).filter(
         placeholder__page=page,
         language=lang,
         placeholder__slot__iexact=placeholder,
         parent__isnull=True
     ).order_by('position').select_related()
     plugin_output = []
     template_vars['parent_plugins'] = plugins 
     for plg in plugins:
         tmpctx = copy.copy(context)
         tmpctx.update(template_vars)
         inst, name = plg.get_plugin_instance()
         outstr = inst.render_plugin(tmpctx, placeholder)
         plugin_output.append(outstr)
         if request and hasattr(request, 'placeholder_media'):
             request.placeholder_media += get_plugin_media(request, context, inst)
     template_vars['parent_output'] = plugin_output
     context.update(template_vars)
     return context
Пример #4
0
    def render(self, context, instance, placeholder):
        template_vars = {
            'placeholder': placeholder,
        }
        template_vars['object'] = instance
        lang = instance.from_language
        request = context.get('request', None)
        if not lang:
            if context.has_key('request'):
                lang = get_language_from_request(request)
            else:
                lang = settings.LANGUAGE_CODE
        if instance.from_page:
            page = instance.from_page
        else:
            page = instance.page
        if not instance.page.publisher_is_draft and page.publisher_is_draft:
            page = page.publisher_public

        plugins = get_cmsplugin_queryset(request).filter(
            placeholder__page=page,
            language=lang,
            placeholder__slot__iexact=placeholder,
            parent__isnull=True).order_by('position').select_related()
        plugin_output = []
        template_vars['parent_plugins'] = plugins
        for plg in plugins:
            tmpctx = copy.copy(context)
            tmpctx.update(template_vars)
            inst, name = plg.get_plugin_instance()
            outstr = inst.render_plugin(tmpctx, placeholder)
            plugin_output.append(outstr)
            if request and hasattr(request, 'placeholder_media'):
                request.placeholder_media += get_plugin_media(
                    request, context, inst)
        template_vars['parent_output'] = plugin_output
        context.update(template_vars)
        return context