web/ldt/ldt_utils/forms.py
changeset 41 a5719dcb742a
parent 0 cc4a51750724
child 44 b7e3f3b2d150
--- 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')
+               }