# from http://open.e-scribe.com/browser/python/django/apps/protowiki/templatetags/wikitags.py
# copyright Paul Bissex, MIT license
import re
from django.core.exceptions import ObjectDoesNotExist
from django.template import Library
from django.utils.safestring import mark_safe
from django.core.urlresolvers import reverse
from wakawaka.models import WikiPage, Wiki, get_diff_to_rev
from wakawaka.urls import WIKI_SLUG
from wakawaka.creole import MbedParser
from django import template
register = template.Library()

register = Library()


@register.filter
def wikify(content, wikislug=''):
    return mark_safe(MbedParser(wikislug=wikislug).parse(content))


@register.simple_tag
def get_wiki_name(wikislug):
    return Wiki.objects.get(slug=wikislug).name

@register.inclusion_tag('wakawaka/recent_pages_inc.html', takes_context=True)
def recent_pages(context):
    
    if context.has_key('rev'):
        if context['rev']:
            w = context['rev'].page.wiki 
            context['recentpages'] = WikiPage.objects.filter(wiki=w, hidelog=False).order_by('-updated')[:11]

    return context

@register.simple_tag
def get_diff(rev_to=None):
    return get_diff_to_rev(rev_to)


