from django.conf.urls import patterns, url
from django.conf import settings
from django.contrib.auth.decorators import login_required
from wakawaka.views import *
from wakawaka.views import preview, invalid_slug

# Wiki slugs must been CamelCase but slashes are fine, if each slug
# is also a CamelCase/OtherSide
WIKI_SLUG = r'[\w\-%\+\/]{1,40}'

urlpatterns = patterns('',
    url(r'^$', index, name='wakawaka_index'),

    # Revision and Page list
    url(r'^Special:RecentChanges$', revision_list, name='wakawaka_revisions'),
    url(r'^Special:Allpages$', page_list, name='wakawaka_page_list'),
    url(r'^Special:Preview$', preview, name='wakawaka_preview'),
    url(r'^Special:NewPage$', newpage, name='wakawaka_newpage'),

    #If the page doesn't match the above, its a wiki page
    url(r'^(?P<slug>%s)$' % WIKI_SLUG, page, name='wakawaka_page'),
    
    url(r'^(?P<slug>.*)$', invalid_slug, name='wakawaka_page'),

)
