Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

app.py 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from django.conf.urls import patterns, url
  2. from oscar.views.decorators import staff_member_required
  3. from oscar.core.application import Application
  4. from oscar.apps.dashboard.offers import views
  5. class OffersDashboardApplication(Application):
  6. name = None
  7. list_view = views.OfferListView
  8. metadata_view = views.OfferMetaDataView
  9. condition_view = views.OfferConditionView
  10. benefit_view = views.OfferBenefitView
  11. restrictions_view = views.OfferRestrictionsView
  12. delete_view = views.OfferDeleteView
  13. detail_view = views.OfferDetailView
  14. def get_urls(self):
  15. urlpatterns = patterns('',
  16. url(r'^$', self.list_view.as_view(), name='offer-list'),
  17. # Creation
  18. url(r'^new/name-and-description/$', self.metadata_view.as_view(),
  19. name='offer-metadata'),
  20. url(r'^new/condition/$', self.condition_view.as_view(),
  21. name='offer-condition'),
  22. url(r'^new/incentive/$', self.benefit_view.as_view(),
  23. name='offer-benefit'),
  24. url(r'^new/restrictions/$', self.restrictions_view.as_view(),
  25. name='offer-restrictions'),
  26. # Update
  27. url(r'^(?P<pk>\d+)/name-and-description/$',
  28. self.metadata_view.as_view(update=True),
  29. name='offer-metadata'),
  30. url(r'^(?P<pk>\d+)/condition/$',
  31. self.condition_view.as_view(update=True),
  32. name='offer-condition'),
  33. url(r'^(?P<pk>\d+)/incentive/$',
  34. self.benefit_view.as_view(update=True),
  35. name='offer-benefit'),
  36. url(r'^(?P<pk>\d+)/restrictions/$',
  37. self.restrictions_view.as_view(update=True),
  38. name='offer-restrictions'),
  39. # Delete
  40. url(r'^(?P<pk>\d+)/delete/$',
  41. self.delete_view.as_view(), name='offer-delete'),
  42. # Stats
  43. url(r'^(?P<pk>\d+)/$', self.detail_view.as_view(),
  44. name='offer-detail'),
  45. )
  46. return self.post_process_urls(urlpatterns)
  47. def get_url_decorator(self, url_name):
  48. return staff_member_required
  49. application = OffersDashboardApplication()