X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/dba809feb44cd1c4d155f3e3254a1cca5323f95f..d1582246fb727ec53bb984b432a3a59ce86ea772:/apps/api/urls.py diff --git a/apps/api/urls.py b/apps/api/urls.py index de09605d..6a95cf0c 100644 --- a/apps/api/urls.py +++ b/apps/api/urls.py @@ -5,47 +5,65 @@ 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, + 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, 'text', REVISION, format=False), document_text_resource, {'emitter_format': 'rawxml'}, name="doctext_view"), - url(r'^documents/(?P[^/]+)/dc' + FORMAT_EXT, + url(urlpath(r'documents', DOC, 'html', REVISION, format=False), + document_html_resource, {'emitter_format': 'rawhtml'}, + name="dochtml_view"), + + url(urlpath(r'documents', DOC, 'dc', REVISION), document_dc_resource, name="docdc_view_withformat"), - url(r'^documents/(?P[^/]+)/dc$', + url(urlpath(r'documents', DOC, 'dc', REVISION, format=False), document_dc_resource, {'emitter_format': 'json'}, name="docdc_view"), - url(r'^documents/(?P[^/]+)/parts$', - document_resource, {'emitter_format': 'json'}, - name="docparts_view"), + 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),