def content(self): page = self.request.matchdict.get("page", "content") params = self.params() params["content_name"] = content_name = self.request.matchdict.get("content_name") content = Content.find_by_name(self.request.ctx.site, content_name) if content: (params["seo_title"], params["seo_keywords"], params["seo_description"]) = SmartSeo.obj_seo( content, self.request.ctx.site ) return self.render(page, params)
def aloha_editable_content(request, content_name): from pvscore.model.cms.content import Content site = request.ctx.site content = Content.find_by_name(site, content_name, False) if content: editable_id = content_name.replace('.', '_') html = literal(""" <div id="editable_{editable_id}"> {val} </div> <input type="hidden" id="editable_{editable_id}_type" value="content"/> <input type="hidden" id="editable_{editable_id}_name" value="{name}"/> <input type="hidden" id="editable_{editable_id}_content_id" value="{content_id}"/> <script type="text/javascript"> Aloha.ready( function() {{ Aloha.jQuery('#editable_{editable_id}').aloha(); Aloha.bind('aloha-editable-deactivated', pvs_aloha_onsave); }} ); </script>""".format(editable_id=editable_id, content_id=content.content_id, name=content_name, val=content.render(request=request) if content else '')) return html