view mysite/band/admin.py @ 88:7245c769e31e django1.3

Close this branch. I'm not sure if I merged it correctly to the default branch, because the graphlog doesn't look right. But the changes were made to default somehow. So closing this off to prevent future confusion.
author Brian Neal <bgneal@gmail.com>
date Sat, 13 Apr 2013 18:08:19 -0500
parents e602b5302b94
children 25e00d1b99bf
line wrap: on
line source
#######################################################################
#
# PyBand Copyright (C) 2008 by Brian Neal
#
#######################################################################

from django.contrib import admin

from mysite.band.models import Article
from mysite.band.models import Album
from mysite.band.models import Album_Merchant
from mysite.band.models import Album_Track
from mysite.band.models import Band
from mysite.band.models import City
from mysite.band.models import Country
from mysite.band.models import Fan
from mysite.band.models import Gear
from mysite.band.models import Gig
from mysite.band.models import Label_Release
from mysite.band.models import Member
from mysite.band.models import Merchandise
from mysite.band.models import Mp3
from mysite.band.models import Mp3_Set
from mysite.band.models import News
from mysite.band.models import Record_Label
from mysite.band.models import SiteConfig
from mysite.band.models import State
from mysite.band.models import Venue
from mysite.band.models import Video
from mysite.band.models import Video_Set

#######################################################################

admin.site.register(Video)

#######################################################################

class SiteConfigAdmin(admin.ModelAdmin):
   list_display = ('band_name', 'url', 'contact_email')
   fieldsets = (
         (None, { 'fields' : ('band_name', 'url', 'contact_email', 'intro_text', 'ordering_info',
            'intro_photo') }),
      )

admin.site.register(SiteConfig, SiteConfigAdmin)

#######################################################################

class GearInline(admin.TabularInline):
   model = Gear

class GearAdmin(admin.ModelAdmin):
   list_display = ('item', 'member')
   list_filter = ('member', )

admin.site.register(Gear, GearAdmin)

#######################################################################

class MemberAdmin(admin.ModelAdmin):
   list_display = ('name', 'instrument', 'is_active')
   inlines = [
         GearInline,
   ]

admin.site.register(Member, MemberAdmin)

#######################################################################

class CityInline(admin.TabularInline):
   model = City

class CityAdmin(admin.ModelAdmin):
   list_display = ('name', 'state', 'country')
   list_filter = ('state', )
   search_fields = ('name', )

admin.site.register(City, CityAdmin)

#######################################################################

admin.site.register(Country)

#######################################################################

class StateAdmin(admin.ModelAdmin):
   inlines = [
         CityInline,
   ]

admin.site.register(State, StateAdmin)

#######################################################################

class VenueAdmin(admin.ModelAdmin):
   list_filter = ('city', )
   list_display = ('name', 'city', )
   search_fields = ('name', )

admin.site.register(Venue, VenueAdmin)

#######################################################################

class BandAdmin(admin.ModelAdmin):
   search_fields = ('name', )

admin.site.register(Band, BandAdmin)

#######################################################################

class GigAdmin(admin.ModelAdmin):
   list_filter = ('date', 'venue')
   save_on_top = True
   filter_horizontal = ('bands', )

admin.site.register(Gig, GigAdmin)

#######################################################################

class NewsAdmin(admin.ModelAdmin):
   save_on_top = True
   list_filter = ('date', )
   list_display = ('date', 'title')
   search_fields = ('text', 'title')

admin.site.register(News, NewsAdmin)

#######################################################################

class ArticleAdmin(admin.ModelAdmin):
   save_on_top = True
   list_filter = ('date', )
   list_display = ('title', 'date')
   search_fields = ('text', 'title')

admin.site.register(Article, ArticleAdmin)

#######################################################################

class Mp3Inline(admin.TabularInline):
   model = Mp3

class Mp3Admin(admin.ModelAdmin):
   prepopulated_fields = {'slug' : ('title', 'desc')}

admin.site.register(Mp3, Mp3Admin)

#######################################################################

class Mp3_SetAdmin(admin.ModelAdmin):
   list_filter = ('date', )
   list_display = ('title', 'date')
   inlines = [
         Mp3Inline,
   ]

admin.site.register(Mp3_Set, Mp3_SetAdmin)

#######################################################################

class VideoInline(admin.TabularInline):
   model = Video

class Video_SetAdmin(admin.ModelAdmin):
   list_filter = ('date', )
   list_display = ('title', 'date')
   inlines = [
         VideoInline,
   ]

admin.site.register(Video_Set, Video_SetAdmin)

#######################################################################

class Album_TrackInline(admin.TabularInline):
   model = Album_Track

class Album_TrackAdmin(admin.ModelAdmin):
   list_display = ('track_name', 'album')
   list_filter = ('album', )

admin.site.register(Album_Track, Album_TrackAdmin)

#######################################################################

class Label_ReleaseInline(admin.TabularInline):
   model = Label_Release

class Label_ReleaseAdmin(admin.ModelAdmin):
   list_display = ('catalog_number', 'album', 'record_label', 'release_date')
   list_filter = ('record_label', 'album')

admin.site.register(Label_Release, Label_ReleaseAdmin)

#######################################################################

class Record_LabelAdmin(admin.ModelAdmin):
   inlines = [
         Label_ReleaseInline,
   ]

admin.site.register(Record_Label, Record_LabelAdmin)

#######################################################################

class Album_MerchantInline(admin.TabularInline):
   model = Album_Merchant

class Album_MerchantAdmin(admin.ModelAdmin):
   list_display = ('name', 'album')
   list_filter = ('album', )

admin.site.register(Album_Merchant, Album_MerchantAdmin)

#######################################################################

class AlbumAdmin(admin.ModelAdmin):
   save_on_top = True
   inlines = [
         Album_TrackInline,
         Label_ReleaseInline,
         Album_MerchantInline,
   ]

admin.site.register(Album, AlbumAdmin)

#######################################################################

class MerchandiseAdmin(admin.ModelAdmin):
   list_display = ('name', 'price', 'in_stock')
   list_filter = ('in_stock', )

admin.site.register(Merchandise, MerchandiseAdmin)

#######################################################################

class FanAdmin(admin.ModelAdmin):
   list_display = ('name', 'email', 'current_status')
   search_fields = ('name', 'email')

admin.site.register(Fan, FanAdmin)

#######################################################################