You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.2 KiB
41 lines
1.2 KiB
# -*- coding: utf-8 -*-
|
|
|
|
from __future__ import unicode_literals
|
|
from django.conf.urls import url
|
|
from django.contrib import admin
|
|
|
|
from .models import Segment
|
|
from .views import set_segment_override, reset_all_segment_overrides
|
|
|
|
class SegmentAdmin(admin.ModelAdmin):
|
|
|
|
#
|
|
# Note: model.Segment is empty and un-managed. Its sole purpose is to
|
|
# provide the opportunity to add custom views to the AdminSite for
|
|
# managing segments from the toolbar.
|
|
#
|
|
|
|
def get_model_perms(self, request):
|
|
'''
|
|
Returns an empty perms dict which has the effect of disabling its
|
|
display in the AdminSite, but still allows access to the views defined
|
|
below.
|
|
'''
|
|
return dict()
|
|
|
|
|
|
def get_urls(self):
|
|
|
|
return [
|
|
url(r'set_override/$',
|
|
self.admin_site.admin_view(set_segment_override),
|
|
name='set_segment_override'
|
|
),
|
|
|
|
url(r'reset_all_segment_overrides/$',
|
|
self.admin_site.admin_view(reset_all_segment_overrides),
|
|
name='reset_all_segment_overrides'
|
|
),
|
|
] + super(SegmentAdmin, self).get_urls()
|
|
|
|
admin.site.register(Segment, SegmentAdmin) |