diff --git a/stages/admin.py b/stages/admin.py index d66cdd9..21aae2b 100644 --- a/stages/admin.py +++ b/stages/admin.py @@ -1,4 +1,6 @@ +from django import forms from django.contrib import admin +from django.db import models from stages.models import (Student, Section, Klass, Referent, Corporation, CorpContact, Domain, Period, Availability, Training) @@ -12,6 +14,10 @@ class StudentAdmin(admin.ModelAdmin): 'birth_date', 'klass', 'archived') +class ReferentAdmin(admin.ModelAdmin): + list_display = ('__unicode__', 'abrev') + + class CorpContactAdmin(admin.ModelAdmin): list_display = ('__unicode__', 'corporation', 'role') fields = ('corporation', ('title', 'last_name', 'first_name'), @@ -26,6 +32,7 @@ class ContactInline(admin.StackedInline): class CorporationAdmin(admin.ModelAdmin): list_display = ('name', 'pcode', 'city') search_fields = ('name', 'pcode', 'city') + ordering = ('name',) fields = ('name', 'typ', 'street', ('pcode', 'city'), ('tel', 'email'), 'web', 'archived') inlines = [ContactInline] @@ -34,6 +41,10 @@ class CorporationAdmin(admin.ModelAdmin): class AvailabilityInline(admin.TabularInline): model = Availability extra = 1 + formfield_overrides = { + models.TextField: {'widget': forms.Textarea(attrs={'rows':2, 'cols':40})}, + } + class PeriodAdmin(admin.ModelAdmin): list_display = ('title', 'dates', 'section') @@ -46,11 +57,16 @@ class AvailabilityAdmin(admin.ModelAdmin): list_filter = ('period',) fields = (('corporation', 'period'), 'domain', 'comment') + def formfield_for_foreignkey(self, db_field, request, **kwargs): + if db_field.name == "corporation": + kwargs["queryset"] = Corporation.objects.filter(archived=False).order_by('name') + return super(AvailabilityAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs) + admin.site.register(Section) admin.site.register(Klass) admin.site.register(Student, StudentAdmin) -admin.site.register(Referent) +admin.site.register(Referent, ReferentAdmin) admin.site.register(Corporation, CorporationAdmin) admin.site.register(CorpContact, CorpContactAdmin) admin.site.register(Domain) diff --git a/stages/models.py b/stages/models.py index edcab6c..c304ef9 100644 --- a/stages/models.py +++ b/stages/models.py @@ -120,6 +120,7 @@ class Domain(models.Model): class Meta: verbose_name = "Domaine" + ordering = ('name',) def __unicode__(self): return self.name diff --git a/stages/views.py b/stages/views.py index 01bd92f..d96e3b7 100644 --- a/stages/views.py +++ b/stages/views.py @@ -38,7 +38,7 @@ class AttributionView(TemplateView): context.update({ #'period_form': PeriodForm(), 'sections': Section.objects.all(), - 'referents': Referent.objects.all(), + 'referents': Referent.objects.all().order_by('last_name', 'first_name'), }) return context