X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/dba809feb44cd1c4d155f3e3254a1cca5323f95f..663d1c8f22c26b51c0c132388cde9d28fa6eeef0:/apps/api/urls.py diff --git a/apps/api/urls.py b/apps/api/urls.py index de09605d..c5b0986d 100644 --- a/apps/api/urls.py +++ b/apps/api/urls.py @@ -5,47 +5,73 @@ from django.conf.urls.defaults import * from api.resources import * -FORMAT_EXT = r"\.(?Pxml|json|yaml)$" +FORMAT = r"\.(?Pxml|json|yaml)" +DOC = r'(?P[^/]+)' +# REVISION = r'(?Platest|[0-9a-f]{40})' + +def urlpath(*args, **kwargs): + format = kwargs.get('format', True) + return r'^' + (r'/'.join(args)) + (FORMAT if format else '') + '$' urlpatterns = patterns('', # url(r'^hello$', hello_resource, {'emitter_format': 'json'}), # url(r'^hello\.(?P.+)$', hello_resource), # Toolbar - url(r'^toolbar/buttons$', toolbar_buttons, {'emitter_format': 'json'}), - - # Toolbar + url(r'^toolbar/buttons$', toolbar_buttons, {'emitter_format': 'json'}), url(r'^toolbar/scriptlets$', scriptlets, {'emitter_format': 'json'}), + + # Pull requests + url(r"^pull-requests$", pullrequest_collection, + {'emitter_format': 'json'} ), + + url(r"^pull-requests/(?P\d+)$", pullrequest_rsrc, + {'emitter_format': 'json'}, name="pullrequest_view" ), # Documents url(r'^documents$', library_resource, {'emitter_format': 'json'}, name="document_list_view"), - url(r'^documents'+FORMAT_EXT, library_resource, + url(urlpath(r'documents'), library_resource, name="document_list_view_withformat"), - url(r'^documents/(?P[^/]+)'+FORMAT_EXT, - document_resource, name="document_view_withformat"), + #url(urlpath(r'documents', DOC), + # document_resource, name="document_view_withformat"), - url(r'^documents/(?P[^/]+)$', + url(urlpath(r'documents', DOC, format=False), document_resource, {'emitter_format': 'json'}, name="document_view"), - - url(r'^documents/(?P[^/]+)/text$', + + url(urlpath(r'documents', DOC, 'gallery', format=False), + document_gallery, {'emitter_format': 'json'}, + name="docgallery_view"), + + # XML + url(urlpath(r'documents', DOC, 'text', format=False), document_text_resource, {'emitter_format': 'rawxml'}, name="doctext_view"), - url(r'^documents/(?P[^/]+)/dc' + FORMAT_EXT, - document_dc_resource, - name="docdc_view_withformat"), + # HTML + url(urlpath(r'documents', DOC, 'html', format=False), + document_html_resource, {'emitter_format': 'rawhtml'}, + name="dochtml_view"), + + # DC + #url(urlpath(r'documents', DOC, 'dc'), + # document_dc_resource, + # name="docdc_view_withformat"), - url(r'^documents/(?P[^/]+)/dc$', + url(urlpath(r'documents', DOC, 'dc', format=False), document_dc_resource, {'emitter_format': 'json'}, name="docdc_view"), - url(r'^documents/(?P[^/]+)/parts$', - document_resource, {'emitter_format': 'json'}, - name="docparts_view"), + # MERGE + url(urlpath(r'documents', DOC, 'revision', format=False), + document_merge, {'emitter_format': 'json'}, name="docmerge_view") + +# url(r'^documents/(?P[^/]+)/parts$', +# document_resource, {'emitter_format': 'json'}, +# name="docparts_view"), # url(r'^posts/(?P[^/]+)/$', blogpost_resource), # url(r'^other/(?P[^/]+)/(?P.+)/$', arbitrary_resource),