from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.orders import views from oscar.apps.dashboard.nav import register, Node node = Node('Orders') node.add_child(Node('Orders', 'dashboard:order-list')) node.add_child(Node('Statistics', 'dashboard:order-stats')) register(node, 80) class OrdersDashboardApplication(Application): name = None order_list_view = views.OrderListView order_detail_view = views.OrderDetailView shipping_address_view = views.ShippingAddressUpdateView line_detail_view = views.LineDetailView order_stats_view = views.OrderStatsView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.order_list_view.as_view(), name='order-list'), url(r'^statistics/$', self.order_stats_view.as_view(), name='order-stats'), url(r'^(?P<number>[-\w]+)/$', self.order_detail_view.as_view(), name='order-detail'), url(r'^(?P<number>[-\w]+)/notes/(?P<note_id>\d+)/$', self.order_detail_view.as_view(), name='order-detail-note'), url(r'^(?P<number>[-\w]+)/lines/(?P<line_id>\d+)/$', self.line_detail_view.as_view(), name='order-line-detail'),
from django.conf.urls import patterns, url from django.contrib.admin.views.decorators import staff_member_required from django.utils.translation import ugettext_lazy as _ from oscar.core.application import Application from oscar.apps.dashboard.users import views from oscar.apps.dashboard.nav import register, Node node = Node(_('Customers'), 'dashboard:users-index') register(node, 30) class UserManagementApplication(Application): name = None index_view = views.IndexView user_detail_view = views.UserDetailView def get_urls(self): urlpatterns = patterns( '', url(r'^$', self.index_view.as_view(), name='users-index'), url(r'^(?P<pk>[-\w]+)/$', self.user_detail_view.as_view(), name='user-detail'), ) return self.post_process_urls(urlpatterns) def get_url_decorator(self, url_name): return staff_member_required
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.offers import views from oscar.apps.dashboard.nav import register, Node node = Node("Offers", "dashboard:offer-list") register(node, 50) class OffersDashboardApplication(Application): name = None list_view = views.OfferListView metadata_view = views.OfferMetaDataView condition_view = views.OfferConditionView benefit_view = views.OfferBenefitView preview_view = views.OfferPreviewView delete_view = views.OfferDeleteView detail_view = views.OfferDetailView def get_urls(self): urlpatterns = patterns( "", url(r"^$", self.list_view.as_view(), name="offer-list"), # Creation url(r"^metadata/$", self.metadata_view.as_view(), name="offer-metadata"), url(r"^condition/$", self.condition_view.as_view(), name="offer-condition"), url(r"^benefit/$", self.benefit_view.as_view(), name="offer-benefit"), url(r"^preview/$", self.preview_view.as_view(), name="offer-preview"),
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.reports import views from oscar.apps.dashboard.nav import register, Node node = Node('Reports', 'dashboard:reports-index') register(node) class ReportsApplication(Application): name = None index_view = views.IndexView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.index_view.as_view(), name='reports-index'), ) return self.post_process_urls(urlpatterns) def get_url_decorator(self, url_name): return staff_member_required application = ReportsApplication()
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.vouchers import views from oscar.apps.dashboard.nav import register, Node node = Node('Vouchers', 'dashboard:voucher-list') register(node, 60) class VoucherDashboardApplication(Application): name = None list_view = views.VoucherListView create_view = views.VoucherCreateView update_view = views.VoucherUpdateView delete_view = views.VoucherDeleteView stats_view = views.VoucherStatsView def get_urls(self): urlpatterns = patterns( '', url(r'^$', self.list_view.as_view(), name='voucher-list'), url(r'^create/$', self.create_view.as_view(), name='voucher-create'), url(r'^update/(?P<pk>\d+)/$', self.update_view.as_view(), name='voucher-update'), url(r'^delete/(?P<pk>\d+)/$',
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.offers import views from oscar.apps.dashboard.nav import register, Node node = Node('Offers', 'dashboard:offer-list') register(node, 50) class OffersDashboardApplication(Application): name = None list_view = views.OfferListView metadata_view = views.OfferMetaDataView condition_view = views.OfferConditionView benefit_view = views.OfferBenefitView preview_view = views.OfferPreviewView delete_view = views.OfferDeleteView detail_view = views.OfferDetailView def get_urls(self): urlpatterns = patterns( '', url(r'^$', self.list_view.as_view(), name='offer-list'), # Creation url(r'^metadata/$', self.metadata_view.as_view(), name='offer-metadata'), url(r'^condition/$',
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.reports import views from oscar.apps.dashboard.nav import register, Node node = Node('Reports', 'dashboard:reports-index') register(node, 90) class ReportsApplication(Application): name = None index_view = views.IndexView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.index_view.as_view(), name='reports-index'), ) return self.post_process_urls(urlpatterns) def get_url_decorator(self, url_name): return staff_member_required application = ReportsApplication()
from django.conf.urls import patterns, url from django.contrib.admin.views.decorators import staff_member_required from django.utils.translation import ugettext_lazy as _ from oscar.apps.dashboard.nav import Node, register from oscar.core.application import Application from oscar.apps.dashboard.pages import views node = Node(_('Pages'), 'dashboard:page-list') register(node, 40) class FlatPageManagementApplication(Application): name = None list_view = views.PageListView create_view = views.PageCreateView update_view = views.PageUpdateView delete_view = views.PageDeleteView def get_urls(self): """ Get URL patterns defined for flatpage management application. """ urlpatterns = patterns('', url(r'^$', self.list_view.as_view(), name='page-list'), url(r'^create/$', self.create_view.as_view(), name='page-create'), url(r'^update/(?P<pk>[-\w]+)/$', self.update_view.as_view(), name='page-update'), url(r'^delete/(?P<pk>\d+)/$', self.delete_view.as_view(), name='page-delete') ) return self.post_process_urls(urlpatterns)
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.ranges import views from oscar.apps.dashboard.nav import register, Node node = Node('Ranges') node.add_child(Node('All ranges', 'dashboard:range-list')) register(node, 70) class RangeDashboardApplication(Application): name = None list_view = views.RangeListView create_view = views.RangeCreateView update_view = views.RangeUpdateView delete_view = views.RangeDeleteView products_view = views.RangeProductListView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.list_view.as_view(), name='range-list'), url(r'^create/$', self.create_view.as_view(), name='range-create'), url(r'^(?P<pk>\d+)/$', self.update_view.as_view(), name='range-update'), url(r'^(?P<pk>\d+)/delete/$', self.delete_view.as_view(), name='range-delete'), url(r'^(?P<pk>\d+)/products/$', self.products_view.as_view(), name='range-products'), ) return self.post_process_urls(urlpatterns)
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.ranges import views from oscar.apps.dashboard.nav import register, Node node = Node('Ranges', 'dashboard:range-list') register(node, 70) class RangeDashboardApplication(Application): name = None list_view = views.RangeListView create_view = views.RangeCreateView update_view = views.RangeUpdateView delete_view = views.RangeDeleteView products_view = views.RangeProductListView def get_urls(self): urlpatterns = patterns( '', url(r'^$', self.list_view.as_view(), name='range-list'), url(r'^create/$', self.create_view.as_view(), name='range-create'), url(r'^(?P<pk>\d+)/$', self.update_view.as_view(), name='range-update'), url(r'^(?P<pk>\d+)/delete/$', self.delete_view.as_view(), name='range-delete'),
from django.conf.urls import patterns, url from django.contrib.admin.views.decorators import staff_member_required from django.utils.translation import ugettext_lazy as _ from oscar.core.application import Application from oscar.apps.dashboard.reports import views from oscar.apps.dashboard.nav import register, Node node = Node(_('Reports'), 'dashboard:reports-index') register(node, 90) class ReportsApplication(Application): name = None index_view = views.IndexView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.index_view.as_view(), name='reports-index'), ) return self.post_process_urls(urlpatterns) def get_url_decorator(self, url_name): return staff_member_required application = ReportsApplication()
from django.conf.urls import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from . import views try: from oscar.apps.dashboard.nav import register, Node except ImportError: pass else: # Old way of registering Dashboard nodes node = Node('Sagepay', 'sagepay-transaction-list') register(node, 100) class SagepayDashboard(Application): name = None list_view = views.Transactions detail_view = views.Transaction def get_urls(self): urlpatterns = patterns( '', url(r'^transactions/$', self.list_view.as_view(), name='sagepay-transaction-list'), url(r'^transactions/(?P<pk>\d+)/$', self.detail_view.as_view(), name='sagepay-transaction-detail'), )
from django.conf.urls import patterns, url from django.contrib.admin.views.decorators import staff_member_required from django.utils.translation import ugettext_lazy as _ from oscar.core.application import Application from oscar.apps.dashboard.orders import views from oscar.apps.dashboard.nav import register, Node node = Node(_('Orders')) node.add_child(Node(_('Orders'), 'dashboard:order-list')) node.add_child(Node(_('Statistics'), 'dashboard:order-stats')) register(node, 80) class OrdersDashboardApplication(Application): name = None order_list_view = views.OrderListView order_detail_view = views.OrderDetailView shipping_address_view = views.ShippingAddressUpdateView line_detail_view = views.LineDetailView order_stats_view = views.OrderStatsView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.order_list_view.as_view(), name='order-list'), url(r'^statistics/$', self.order_stats_view.as_view(), name='order-stats'), url(r'^(?P<number>[-\w]+)/$', self.order_detail_view.as_view(), name='order-detail'), url(r'^(?P<number>[-\w]+)/notes/(?P<note_id>\d+)/$', self.order_detail_view.as_view(), name='order-detail-note'), url(r'^(?P<number>[-\w]+)/lines/(?P<line_id>\d+)/$',
from django.conf.urls import patterns, url from django.contrib.admin.views.decorators import staff_member_required from django.utils.translation import ugettext_lazy as _ from oscar.core.application import Application from oscar.apps.dashboard.users import views from oscar.apps.dashboard.nav import register, Node node = Node(_('Customers'), 'dashboard:users-index') register(node, 30) class UserManagementApplication(Application): name = None index_view = views.IndexView user_detail_view = views.UserDetailView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.index_view.as_view(), name='users-index'), url(r'^(?P<pk>[-\w]+)/$', self.user_detail_view.as_view(), name='user-detail'), ) return self.post_process_urls(urlpatterns) def get_url_decorator(self, url_name): return staff_member_required application = UserManagementApplication()
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.nav import register, Node from oscar.apps.dashboard.reviews import views node = Node('Reviews', 'dashboard:reviews-list') register(node, 35) class ReviewsApplication(Application): name = None list_view = views.ReviewListView update_view = views.ReviewUpdateView delete_view = views.ReviewDeleteView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.list_view.as_view(), name='reviews-list'), url(r'^(?P<pk>\d+)/$', self.update_view.as_view(), name='reviews-update' ), url(r'^(?P<pk>\d+)/delete/$', self.delete_view.as_view(), name='reviews-delete' ), ) return self.post_process_urls(urlpatterns) def get_url_decorator(self, url_name): return staff_member_required
from django.conf.urls.defaults import patterns, url from django.contrib.admin.views.decorators import staff_member_required from oscar.core.application import Application from oscar.apps.dashboard.vouchers import views from oscar.apps.dashboard.nav import register, Node node = Node('Vouchers', 'dashboard:voucher-list') register(node, 60) class VoucherDashboardApplication(Application): name = None list_view = views.VoucherListView create_view = views.VoucherCreateView update_view = views.VoucherUpdateView delete_view = views.VoucherDeleteView stats_view = views.VoucherStatsView def get_urls(self): urlpatterns = patterns('', url(r'^$', self.list_view.as_view(), name='voucher-list'), url(r'^create/$', self.create_view.as_view(), name='voucher-create'), url(r'^update/(?P<pk>\d+)/$', self.update_view.as_view(), name='voucher-update'), url(r'^delete/(?P<pk>\d+)/$', self.delete_view.as_view(), name='voucher-delete'), url(r'^stats/(?P<pk>\d+)/$', self.stats_view.as_view(), name='voucher-stats'), ) return self.post_process_urls(urlpatterns) def get_url_decorator(self, url_name):
from django.utils.translation import ugettext_lazy as _ from django.conf.urls.defaults import patterns, url, include from oscar.core.application import Application from oscar.apps.dashboard.nav import register, Node from oscar.views.decorators import staff_member_required from fancypages.dashboard import views from fancypages.assets.app import application as assets_app node = Node(_("Page Manager")) node.add_child(Node(_("Pages"), "fp-dashboard:page-list")) node.add_child(Node(_("Page Types"), "fp-dashboard:page-type-list")) node.add_child(Node(_("Page Templates"), "fp-dashboard:page-template-list")) register(node, 100) class FancypagesDashboardApplication(Application): name = "fp-dashboard" assets_app = assets_app page_template_list_view = views.PageTemplateListView page_template_create_view = views.PageTemplateCreateView page_template_update_view = views.PageTemplateUpdateView page_template_delete_view = views.PageTemplateDeleteView page_type_list_view = views.PageTypeListView page_type_create_view = views.PageTypeCreateView page_type_update_view = views.PageTypeUpdateView page_type_delete_view = views.PageTypeDeleteView
from django.conf.urls import patterns, url from django.contrib.admin.views.decorators import staff_member_required from django.utils.translation import ugettext_lazy as _ from oscar.core.application import Application from oscar.apps.dashboard.promotions import views from oscar.apps.promotions.conf import PROMOTION_CLASSES from oscar.apps.dashboard.nav import register, Node node = Node(_('Content')) node.add_child(Node(_('Re-usable content blocks'), 'dashboard:promotion-list')) node.add_child(Node(_('Content blocks by page'), 'dashboard:promotion-list-by-page')) node.add_child(Node(_('Pages'), 'dashboard:page-list')) register(node, 20) class PromotionsDashboardApplication(Application): name = None list_view = views.ListView page_list = views.PageListView page_detail = views.PageDetailView create_redirect_view = views.CreateRedirectView delete_page_promotion_view = views.DeletePagePromotionView for klass in PROMOTION_CLASSES: locals()['create_%s_view' % klass.classname()] = \ getattr(views, 'Create%sView' % klass.__name__) locals()['update_%s_view' % klass.classname()] = \ getattr(views, 'Update%sView' % klass.__name__) locals()['delete_%s_view' % klass.classname()] = \ getattr(views, 'Delete%sView' % klass.__name__)