diff -r 509e30b9f5c9 -r a5719dcb742a web/ldt/ldt_utils/forms.py --- a/web/ldt/ldt_utils/forms.py Wed Sep 01 09:50:05 2010 +0200 +++ b/web/ldt/ldt_utils/forms.py Mon Sep 06 17:00:34 2010 +0200 @@ -1,6 +1,11 @@ from django import forms from models import Project, Content import uuid +from utils import generate_uuid +from django.forms.widgets import Widget +from django.contrib.admin import widgets as admin_widgets +from django.core.urlresolvers import reverse +from ldt.settings import BASE_URL class LdtImportForm(forms.Form): importFile = forms.FileField() @@ -27,3 +32,37 @@ class CopyProjectForm (forms.Form): title = forms.CharField() + + +class ContentForm(forms.ModelForm): + + #iri_id = forms.CharField(max_length=1024, widget=forms.HiddenInput, initial=generate_uuid) + iriurl = forms.CharField(max_length=1024, widget=forms.HiddenInput, required=False) + content_creation_date = forms.SplitDateTimeField(widget=admin_widgets.AdminSplitDateTime, required=False) + + def clean_iri_id(self): + data = self.cleaned_data.get('iri_id') + if not data: + data = generate_uuid() + return data + + def clean(self): + cleaned_data = self.cleaned_data + iriurl_data = cleaned_data.get('iriurl') + iri_id_data = cleaned_data['iri_id'] + if not iriurl_data: + iriurl_data = "%s/%s.iri" % (iri_id_data, iri_id_data) + cleaned_data['iriurl'] = iriurl_data + return cleaned_data + + class Meta: + model = Content + exclude = ("creation_date", "update_date", "authors") + widgets = { + 'iri_id': forms.HiddenInput, + } + + class Media: + css = { + 'all' : ('admin/css/forms.css','admin/css/base.css', 'admin/css/base.css', 'admin/css/widgets.css') + }