terom@2: from django.contrib import admin terom@2: from qrurls.models import URL, URLItem terom@4: import django.utils.html terom@2: terom@3: class URLItemInline (admin.TabularInline) : terom@3: model = URLItem terom@3: terom@2: class URLAdmin (admin.ModelAdmin) : terom@4: def qrcode_img (self, obj) : terom@4: return ''.format( terom@4: img=django.utils.html.escape(obj.qrcode_img()), terom@4: ) terom@4: qrcode_img.allow_tags = True terom@4: terom@4: readonly_fields = ( terom@4: 'qrcode_url', terom@4: 'qrcode_img', terom@7: 'active_item', terom@7: 'upcoming_item', terom@4: ) terom@2: list_display = ( terom@11: 'get_absolute_url', terom@8: 'active_item', terom@8: 'upcoming_item', terom@2: ) terom@4: fieldsets = ( terom@4: (None, { terom@7: 'fields': ('shorturl', 'active_item', 'upcoming_item') terom@4: }), terom@4: ("QRCode", { terom@7: 'fields': ('qrcode_url', 'qrcode_img'), terom@4: }), terom@4: ) terom@3: inlines = (URLItemInline, ) terom@2: terom@2: class URLItemAdmin (admin.ModelAdmin) : terom@2: list_display = ( terom@6: 'shorturl', 'get_absolute_url', 'published_state', terom@3: ) terom@6: readonly_fields = ('published_state',) terom@3: fieldsets = ( terom@3: ("Publishing", { terom@3: 'fields': ('shorturl', 'published', ), terom@3: }), terom@3: ("Target", { terom@3: 'fields': ('url', ), terom@3: }), terom@2: ) terom@2: terom@2: admin.site.register(URL, URLAdmin) terom@2: admin.site.register(URLItem, URLItemAdmin)