Add CorpContact.archived field

This commit is contained in:
Claude Paroz 2016-01-18 12:55:57 +01:00
parent 73e3680da0
commit 7d45cd0047
4 changed files with 25 additions and 5 deletions

View file

@ -41,8 +41,8 @@ class CorpContactAdmin(admin.ModelAdmin):
list_display = ('__str__', 'corporation', 'role')
ordering = ('last_name', 'first_name')
search_fields = ('last_name', 'first_name', 'role')
fields = (('corporation',), ('sections', 'is_main', 'always_cc'),
('title', 'last_name', 'first_name'),
fields = (('corporation',), ('title', 'last_name', 'first_name'),
('sections', 'is_main', 'always_cc', 'archived'),
'role', ('tel', 'email'))
formfield_overrides = {
models.ManyToManyField: {'widget': forms.CheckboxSelectMultiple},
@ -56,8 +56,8 @@ class CorpContactAdmin(admin.ModelAdmin):
class ContactInline(admin.StackedInline):
model = CorpContact
fields = (('sections', 'is_main', 'always_cc'),
('title', 'last_name', 'first_name'),
fields = (('title', 'last_name', 'first_name'),
('sections', 'is_main', 'always_cc', 'archived'),
('role', 'tel', 'email'))
extra = 1
formfield_overrides = {
@ -139,6 +139,8 @@ class AvailabilityAdmin(admin.ModelAdmin):
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == "corporation":
kwargs["queryset"] = Corporation.objects.filter(archived=False).order_by('name')
if db_field.name == "contact":
kwargs["queryset"] = CorpContact.objects.filter(archived=False)
return super(AvailabilityAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)

View file

@ -0,0 +1,17 @@
# Generated by Django 1.9.1 on 2016-01-18 12:37
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('stages', '0006_corporation_parent'),
]
operations = [
migrations.AddField(
model_name='corpcontact',
name='archived',
field=models.BooleanField(default=False, verbose_name='Archivé'),
),
]

View file

@ -152,6 +152,7 @@ class CorpContact(models.Model):
role = models.CharField(max_length=40, verbose_name='Fonction', blank=True)
tel = models.CharField(max_length=20, blank=True, verbose_name='Téléphone')
email = models.CharField(max_length=100, blank=True, verbose_name='Courriel')
archived = models.BooleanField(default=False, verbose_name='Archivé')
sections = models.ManyToManyField(Section, blank=True)
class Meta:

View file

@ -130,7 +130,7 @@ class CorpContactJSONView(ListView):
return_fields = ['id', 'first_name', 'last_name', 'role', 'is_main']
def get_queryset(self):
return CorpContact.objects.filter(corporation__pk=self.kwargs['pk'])
return CorpContact.objects.filter(corporation__pk=self.kwargs['pk'], archived=False)
def render_to_response(self, context):
serialized = [dict([(field, getattr(obj, field)) for field in self.return_fields])