40 lines
1.9 KiB
Python
40 lines
1.9 KiB
Python
from django import forms
|
|
from .models import ChatRoom
|
|
from users.models import UserFullName
|
|
|
|
|
|
class ChatUpdateChatRoom(forms.ModelForm):
|
|
|
|
class Meta:
|
|
model = ChatRoom
|
|
labels = {
|
|
"roomname" : "Raumname",
|
|
"chatmembers" : "Mitglieder",
|
|
"chatmembers_admin" : "Verwalter",
|
|
}
|
|
|
|
fields = ['roomname', 'chatmembers', 'chatmembers_admin']
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
print(kwargs)
|
|
super(ChatUpdateChatRoom, self).__init__(*args, **kwargs)
|
|
self.fields['chatmembers'] = forms.MultipleChoiceField(required=True, label="Mitglieder", choices=[(u.id, u) for u in UserFullName.objects.filter(profile__agency__pk=kwargs["instance"].creator.profile.agency.pk).exclude(pk=kwargs["instance"].pk)], widget=forms.CheckboxSelectMultiple())
|
|
self.fields['chatmembers_admin'] = forms.MultipleChoiceField(required=False, label="Raumverwalter", choices=[(u.id, u) for u in UserFullName.objects.filter(profile__agency__pk=kwargs["instance"].creator.profile.agency.pk).exclude(pk=kwargs["instance"].pk)], widget=forms.CheckboxSelectMultiple())
|
|
|
|
class ChatAddChatRoom(forms.ModelForm):
|
|
|
|
class Meta:
|
|
model = ChatRoom
|
|
labels = {
|
|
"roomname" : "Raumname",
|
|
"chatmembers" : "Mitglieder",
|
|
"chatmembers_admin" : "Verwalter",
|
|
}
|
|
|
|
fields = ['roomname', 'chatmembers', 'chatmembers_admin']
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
super(ChatAddChatRoom, self).__init__(*args, **kwargs)
|
|
self.fields['chatmembers'] = forms.MultipleChoiceField(required=True, label="Mitglieder", choices=[(u.id, u) for u in UserFullName.objects.filter(profile__agency__pk=kwargs["instance"].profile.agency.pk).exclude(pk=kwargs["instance"].pk)], widget=forms.CheckboxSelectMultiple())
|
|
self.fields['chatmembers_admin'] = forms.MultipleChoiceField(required=False, label="Raumverwalter", choices=[(u.id, u) for u in UserFullName.objects.filter(profile__agency__pk=kwargs["instance"].profile.agency.pk).exclude(pk=kwargs["instance"].pk)], widget=forms.CheckboxSelectMultiple())
|