web/ldt/ldt_utils/forms.py
changeset 41 a5719dcb742a
parent 0 cc4a51750724
child 44 b7e3f3b2d150
equal deleted inserted replaced
40:509e30b9f5c9 41:a5719dcb742a
     1 from django import forms
     1 from django import forms
     2 from models import Project, Content
     2 from models import Project, Content
     3 import uuid
     3 import uuid
       
     4 from utils import generate_uuid
       
     5 from django.forms.widgets import Widget
       
     6 from django.contrib.admin import widgets as admin_widgets
       
     7 from django.core.urlresolvers import reverse
       
     8 from ldt.settings import BASE_URL
     4 
     9 
     5 class LdtImportForm(forms.Form):
    10 class LdtImportForm(forms.Form):
     6     importFile = forms.FileField()
    11     importFile = forms.FileField()
     7     videoPath = forms.CharField(required=False)
    12     videoPath = forms.CharField(required=False)
     8     flatten = forms.BooleanField(required=False, initial=True)   
    13     flatten = forms.BooleanField(required=False, initial=True)   
    25 class AddProjectForm (forms.Form):
    30 class AddProjectForm (forms.Form):
    26     title = forms.CharField()
    31     title = forms.CharField()
    27 
    32 
    28 class CopyProjectForm (forms.Form):
    33 class CopyProjectForm (forms.Form):
    29     title = forms.CharField()
    34     title = forms.CharField()
       
    35     
       
    36 
       
    37 class ContentForm(forms.ModelForm):
       
    38 
       
    39     #iri_id = forms.CharField(max_length=1024, widget=forms.HiddenInput, initial=generate_uuid)
       
    40     iriurl = forms.CharField(max_length=1024, widget=forms.HiddenInput, required=False)
       
    41     content_creation_date = forms.SplitDateTimeField(widget=admin_widgets.AdminSplitDateTime, required=False)
       
    42     
       
    43     def clean_iri_id(self):
       
    44         data = self.cleaned_data.get('iri_id')
       
    45         if not data:
       
    46             data = generate_uuid()
       
    47         return data
       
    48     
       
    49     def clean(self):
       
    50         cleaned_data = self.cleaned_data
       
    51         iriurl_data = cleaned_data.get('iriurl')
       
    52         iri_id_data = cleaned_data['iri_id']
       
    53         if not iriurl_data:
       
    54             iriurl_data = "%s/%s.iri" % (iri_id_data, iri_id_data)    
       
    55         cleaned_data['iriurl'] = iriurl_data
       
    56         return cleaned_data
       
    57     
       
    58     class Meta:
       
    59         model = Content
       
    60         exclude = ("creation_date", "update_date", "authors")
       
    61         widgets = {
       
    62                    'iri_id': forms.HiddenInput,
       
    63         }
       
    64         
       
    65     class Media:
       
    66         css = {
       
    67             'all' : ('admin/css/forms.css','admin/css/base.css', 'admin/css/base.css', 'admin/css/widgets.css')
       
    68                }