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()
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()
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
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