示例#1
0
    def handleMatch(self, m):
        # keep the username without @
        username = m.group(2)[1:]
        from django.contrib.auth.models import User
        try:
            user = User.objects.get(username=username)
        except User.DoesNotExist:
            return m.group(2)

        user_profile_url = full_url(reverse("kii:user_area:user:profile",
                                   kwargs={"username": user.username}))
        el = util.etree.Element("a")
        el.set('href', user_profile_url)
        el.text = m.group(2)

        return el
示例#2
0
    def handleMatch(self, m):

        pattern = "#{0}/{1}".format(self.contenttype, m.group(3))

        try:
            identifier = self.get_identifier(m.group(3))
        except ValueError:
            return pattern
        try:
            target = self.get_object(identifier)
        except self.get_model().DoesNotExist:
            return pattern

        el = util.etree.Element("a")
        el.set('href', full_url(target.get_absolute_url()))
        anchor = m.group(4)
        if anchor:
            # remove parenthesis
            anchor = anchor[1:-1]
        else:
            anchor = pattern
        el.text = anchor

        return el
示例#3
0
 def full_url(self, *args, **kwargs):
     return full_url(*args, **kwargs)