File diff 96596dc5ddb2 → 6d5c24e6354f
symposion/sponsorship/admin.py
Show inline comments
 
from django.contrib import admin
 

	
 
from symposion.sponsorship.models import SponsorLevel, Sponsor, Benefit, BenefitLevel, SponsorBenefit
 
from symposion.sponsorship.models import SponsorLevel, Sponsor, Benefit, BenefitLevel, \
 
    SponsorBenefit
 

	
 

	
 
class BenefitLevelInline(admin.TabularInline):
 
    model = BenefitLevel
 
    extra = 0
 

	
...
 
@@ -21,13 +22,13 @@ class SponsorBenefitInline(admin.StackedInline):
 
            ]
 
        })
 
    ]
 

	
 

	
 
class SponsorAdmin(admin.ModelAdmin):
 
    
 

 
    save_on_top = True
 
    fieldsets = [
 
        (None, {
 
            "fields": [
 
                ("name", "applicant"),
 
                ("level", "active"),
...
 
@@ -40,32 +41,32 @@ class SponsorAdmin(admin.ModelAdmin):
 
            "fields": ["added"],
 
            "classes": ["collapse"]
 
        })
 
    ]
 
    inlines = [SponsorBenefitInline]
 
    list_display = ["name", "external_url", "level", "active"]
 
    
 

 
    def get_form(self, *args, **kwargs):
 
        # @@@ kinda ugly but using choices= on NullBooleanField is broken
 
        form = super(SponsorAdmin, self).get_form(*args, **kwargs)
 
        form.base_fields["active"].widget.choices = [
 
            (u"1", "unreviewed"),
 
            (u"2", "approved"),
 
            (u"3", "rejected")
 
        ]
 
        return form
 

	
 

	
 
class BenefitAdmin(admin.ModelAdmin):
 
    
 

 
    list_display = ["name", "type", "description"]
 
    inlines = [BenefitLevelInline]
 

	
 

	
 
class SponsorLevelAdmin(admin.ModelAdmin):
 
    
 

 
    inlines = [BenefitLevelInline]
 

	
 

	
 
admin.site.register(SponsorLevel, SponsorLevelAdmin)
 
admin.site.register(Sponsor, SponsorAdmin)
 
admin.site.register(Benefit, BenefitAdmin)