def add_anchor(self, matchobj): """ add a unique anchor to a html headline. """ link_text = matchobj.group(2) link_text = mark_safe(link_text) # Strip all non-ASCII and make the anchor unique anchor = makeUniqueSlug(link_text, self._anchor_list) # Remember the current anchor. # So makeUnique can add a number on double anchors. self._anchor_list.append(anchor) anchor_link = self.permalink + "#" + anchor context = { "no": matchobj.group(1), "link_text": link_text, "anchor": anchor, "anchor_link": anchor_link, } self.toc_list.append(context) # Save for self.build_toc() result = render_to_string("pylucid/headline_anchor.html", context) return result
def _inner(request): context = view_function(request) if getattr(request, "plugin_name", None) != None: # Add css anchor info plugin_name = request.plugin_name method_name = request.method_name if not hasattr(request, "css_id_list"): request.css_id_list = [] css_plugin_id = plugin_name + u"_" + method_name existing_slugs = request.css_id_list css_plugin_id = slug.makeUniqueSlug(css_plugin_id, existing_slugs) request.css_id_list.append(css_plugin_id) context["css_plugin_id"] = css_plugin_id context["css_plugin_class"] = plugin_name return context
def _inner(request): context = view_function(request) if getattr(request, "plugin_name", None) != None: plugin_name = request.plugin_name method_name = request.method_name log.debug("Add css anchor info for plugin '%s.%s'" % (plugin_name, method_name)) if not hasattr(request, "css_id_list"): request.css_id_list = [] css_plugin_id = plugin_name + u"_" + method_name existing_slugs = request.css_id_list css_plugin_id = slug.makeUniqueSlug(css_plugin_id, existing_slugs) request.css_id_list.append(css_plugin_id) context["css_plugin_id"] = css_plugin_id context["css_plugin_class"] = plugin_name return context