--- a/alcatel/controller/DocumentaryFile.py Wed Sep 04 10:03:16 2013 +0200
+++ b/alcatel/controller/DocumentaryFile.py Tue Sep 10 13:25:16 2013 +0200
@@ -11,7 +11,6 @@
from dataparser.ClientDocumentaryFileAttributes import ClientDocumentaryFileAttributes
from dataparser.ClientDocumentaryFileVisibilityAttributes import ClientDocumentaryFileVisibilityAttribute
-from dataparser.ClientDocumentaryFileDeleteAttributes import ClientDocumentaryFileDeleteAttributes
from document.models import Cluster
from document.models import Image
from document.models import Document
@@ -58,6 +57,54 @@
return json
+
+ def modify(self,attr):
+ logger.info('modify')
+
+ logger.info('get_description = ' + str(attr.get_description().encode("utf8")))
+ logger.info('get_title = ' + str(attr.get_title().encode("utf8")))
+ logger.info('get_visibility = ' + str(attr.get_visibility()))
+ try:
+ documentaryfile = Documentaryfile.objects.get(pk=attr.get_documentary_file_id())
+ except Documentaryfile.DoesNotExist:
+ json = '{"Error": "Invalid documentary id"}'
+ logger.info(json)
+ return json
+
+ logger.info('documentaryfile.user.name = ' + str(documentaryfile.user.username))
+ if documentaryfile.user.username == attr.get_user():
+ if attr.get_visibility() == 'on':
+ visibility_attr = True
+ else:
+ visibility_attr = False
+ '''else:
+ json = '{"Error" : "Invalid visibility parameter"}'
+ logger.info(json)
+ return json'''
+
+ for thecluster in documentaryfile.cluster_set.all():
+ for thedocument in thecluster.document.all():
+ for theannotationdoc in thedocument.annotationdocument_set.all():
+ theannotationdoc.visibility = visibility_attr
+ theannotationdoc.save()
+
+ title_attr = str(attr.get_title().encode("utf8"))
+ description_attr = str(attr.get_description().encode("utf8"))
+
+ documentaryfile.visibility = visibility_attr
+ documentaryfile.title = title_attr
+ documentaryfile.description = description_attr
+
+ documentaryfile.save()
+ json = '{"modif": ok "}'
+ logger.info(json)
+ else:
+ json = '{"Error": "User does not matched"}'
+ logger.info(json)
+
+ return json
+
+
def visibilityChange(self):
logger.info('visibilityChange')
attr = ClientDocumentaryFileVisibilityAttribute(self.request)