36 lines
1.0 KiB
Python
36 lines
1.0 KiB
Python
from django import forms
|
|
|
|
from . import models
|
|
|
|
class BaseForm(forms.ModelForm):
|
|
required_css_class = 'required'
|
|
error_css_class = 'error'
|
|
|
|
class ServiceForm(BaseForm):
|
|
class Meta:
|
|
model = models.Service
|
|
|
|
class CollectivityForm(BaseForm):
|
|
class Meta:
|
|
model = models.Collectivity
|
|
|
|
class ServiceInstanceForm(BaseForm):
|
|
class Meta:
|
|
model = models.ServiceInstance
|
|
exclude = ('collectivity',)
|
|
|
|
class AccessForm(BaseForm):
|
|
def __init__(self, *args, **kwargs):
|
|
collectivity = kwargs.pop('collectivity')
|
|
super(AccessForm, self).__init__(*args, **kwargs)
|
|
self.fields['user'].queryset = self.fields['user'].queryset.filter(collectivity=collectivity)
|
|
self.fields['service_instance'].queryset = self.fields['service_instance'].queryset.filter(collectivity=collectivity)
|
|
|
|
class Meta:
|
|
model = models.Access
|
|
|
|
class UserForm(BaseForm):
|
|
class Meta:
|
|
model = models.User
|
|
fields = ('uid', 'first_name', 'last_name', 'email')
|