diff options
Diffstat (limited to 'src/meetingtools/apps/room/forms.py')
-rw-r--r-- | src/meetingtools/apps/room/forms.py | 43 |
1 files changed, 30 insertions, 13 deletions
diff --git a/src/meetingtools/apps/room/forms.py b/src/meetingtools/apps/room/forms.py index aef7d8d..a211b2d 100644 --- a/src/meetingtools/apps/room/forms.py +++ b/src/meetingtools/apps/room/forms.py @@ -3,21 +3,42 @@ Created on Feb 1, 2011 @author: leifj ''' -from django.forms.models import ModelForm +from django.forms.models import ModelChoiceField from meetingtools.apps.room.models import Room from django.forms.widgets import Select, TextInput -from django.forms.fields import ChoiceField, BooleanField +from django.forms.fields import BooleanField from django.forms.forms import Form from form_utils.forms import BetterModelForm +from django.contrib.auth.models import Group PUBLIC = 0 PROTECTED = 1 PRIVATE = 2 -class UpdateRoomForm(BetterModelForm): - #protection = ChoiceField(choices=((PUBLIC,'Anyone can enter the room.'), - # (PROTECTED,'Only group members and accepted guests can enter the room.'), - # (PRIVATE,'Only group members can enter.'))) +class ModifyRoomForm(BetterModelForm): + class Meta: + model = Room + fields = ['name','source_sco_id','self_cleaning'] + fieldsets = [('name',{'fields': ['name'], + 'classes': ['step'], + 'legend': 'Step 1: Room name', + 'description': 'The room name should be short and descriptive.' + }), + ('properties',{'fields': ['self_cleaning','urlpath','source_sco_id'], + 'classes': ['step'], + 'legend': 'Step 2: Room properties', + 'description': 'These are basic properties for your room. If you set your room to be self-cleaning it will be reset every time the last participant leaves the room.'}), + ] + widgets = {'source_sco_id': Select(), + 'urlpath': TextInput(attrs={'size': '40'}), + 'name': TextInput(attrs={'size': '40'})} + + +class CreateRoomForm(BetterModelForm): + + participants = ModelChoiceField(Group,required=False) + presenters = ModelChoiceField(Group,required=False) + hosts = ModelChoiceField(Group,required=False) class Meta: model = Room @@ -34,15 +55,11 @@ class UpdateRoomForm(BetterModelForm): ('rights',{'fields': ['participants','presenters','hosts'], 'classes': ['step','submit_step'], 'legend': 'Step 3: Room rights (optional)', - 'description': 'Define the groups that are to have access to your room.'}) + 'description': 'Define the groups that are to have access to your room. If you leave the <em>Participants</em> field empty that implies that anyone who knows the URL may enter the room.'}) ] - widgets = {'participants': Select(), - 'presenters': Select(), - 'hosts': Select(), - 'source_sco_id': Select(), + widgets = {'source_sco_id': Select(), 'urlpath': TextInput(attrs={'size': '40'}), - 'name': TextInput(attrs={'size': '40'}), - } + 'name': TextInput(attrs={'size': '40'})} class DeleteRoomForm(Form): confirm = BooleanField(label="Confirm remove room")
\ No newline at end of file |