k4ever/k4ever/api2/urls.py

51 lines
2.0 KiB
Python
Raw Normal View History

2011-09-28 10:51:32 +02:00
from django.conf.urls.defaults import *
from piston.resource import Resource
from piston.authentication import HttpBasicAuthentication
from api2.authentication import DjangoAuthentication, MultiAuthentication
2011-09-28 10:51:32 +02:00
from api2.handlers import *
2011-09-29 00:26:39 +02:00
# taken from
# http://www.robertshady.com/content/creating-very-basic-api-using-python-django-and-piston
class CsrfExemptResource( Resource ):
def __init__( self, handler, authentication = None ):
super( CsrfExemptResource, self ).__init__( handler, authentication )
self.csrf_exempt = getattr( self.handler, 'csrf_exempt', True )
# build authenticatiooors
basicAuth = HttpBasicAuthentication(realm="Freitagsrundenkassensystemapi")
djangoAuth = DjangoAuthentication()
multiAuth = MultiAuthentication([basicAuth, djangoAuth])
ad = {'authentication': multiAuth}
2011-09-28 10:51:32 +02:00
2011-09-29 00:26:39 +02:00
buyableItemRes = CsrfExemptResource(handler=BuyableItemHandler, **ad)
buyableTypeRes = CsrfExemptResource(handler=BuyableTypeHandler, **ad)
2011-10-02 17:58:54 +02:00
historyRes = CsrfExemptResource(handler=HistoryHandler, **ad)
2011-09-28 10:51:32 +02:00
2011-09-29 00:26:39 +02:00
transactionTransactRes = CsrfExemptResource(handler=TransactionTransactHandler, **ad)
transactionTypeRes = CsrfExemptResource(handler=TransactionTypeHandler, **ad)
2011-09-29 23:38:25 +02:00
accountBalanceRes = CsrfExemptResource(handler=AccountBalanceHandler, **ad)
2011-09-28 10:51:32 +02:00
2011-09-29 14:14:29 +02:00
authBlobRes = CsrfExemptResource(handler=AuthBlobHandler, **ad)
2011-09-30 22:29:02 +02:00
authUserRes = CsrfExemptResource(handler=AuthUserHandler, **ad)
2011-09-29 14:14:29 +02:00
configRes = CsrfExemptResource(handler=ConfigHandler, **ad)
2011-09-29 00:26:39 +02:00
2011-09-28 10:51:32 +02:00
urlpatterns = patterns('',
2011-09-30 01:24:41 +02:00
url(r'buyable/item/?$', buyableItemRes),
url(r'buyable/item/(?P<itemId>\d+)/?$', buyableItemRes),
url(r'buyable/types/?$', buyableTypeRes),
2011-10-02 17:58:54 +02:00
url(r'buyable/history/?$', historyRes),
2011-09-28 10:51:32 +02:00
2011-09-30 01:24:41 +02:00
url(r'account/transactions/transact/?$', transactionTransactRes),
url(r'account/transfers/transfer/?$', transactionTransactRes),
url(r'account/transactions/types/?$', transactionTypeRes),
url(r'account/transfers/types/?$', transactionTypeRes),
url(r'account/balance/?$', accountBalanceRes),
2011-09-28 10:51:32 +02:00
2011-09-30 01:24:41 +02:00
url(r'auth/blob/?$', authBlobRes),
2011-09-30 22:29:02 +02:00
url(r'auth/user/?$', authUserRes),
2011-09-30 01:24:41 +02:00
url(r'config/?$', configRes),
2011-09-28 10:51:32 +02:00
)