kpsul/kfet/forms.py

59 lines
1.6 KiB
Python
Raw Normal View History

2016-08-02 10:40:46 +02:00
from django import forms
from django.contrib.auth.models import User
from kfet.models import Account
from gestioncof.models import CofProfile
class AccountForm(forms.ModelForm):
# Surcharge pour passer data à Account.save()
def save(self, data = {}, *args, **kwargs):
obj = super(AccountForm, self).save(commit = False, *args, **kwargs)
obj.save(data = data)
return obj
2016-08-02 10:40:46 +02:00
class Meta:
model = Account
fields = ['trigramme', 'promo', 'nickname']
2016-08-02 10:40:46 +02:00
widgets = {
'trigramme': forms.TextInput(attrs={'autocomplete': 'off'}),
}
class AccountTriForm(AccountForm):
class Meta(AccountForm.Meta):
fields = ['trigramme']
class AccountNoTriForm(AccountForm):
class Meta(AccountForm.Meta):
exclude = ['trigramme']
class AccountRestrictForm(AccountForm):
class Meta(AccountForm.Meta):
fields = ['promo']
2016-08-02 10:40:46 +02:00
class CofForm(forms.ModelForm):
def clean_is_cof(self):
instance = getattr(self, 'instance', None)
if instance and instance.pk:
return instance.is_cof
else:
return False
class Meta:
model = CofProfile
fields = ['login_clipper', 'is_cof', 'departement']
class CofRestrictForm(CofForm):
class Meta(CofForm.Meta):
fields = ['departement']
2016-08-02 10:40:46 +02:00
class UserForm(forms.ModelForm):
class Meta:
model = User
fields = ['username', 'first_name', 'last_name', 'email']
help_texts = {
'username': ''
}
class UserRestrictForm(UserForm):
class Meta(UserForm.Meta):
fields = ['first_name', 'last_name', 'email']