web/ldt/ldt_utils/projectserializer.py
changeset 24 1296cc9b23d5
parent 0 cc4a51750724
child 26 5442e8569ff0
equal deleted inserted replaced
23:f4c16209280a 24:1296cc9b23d5
     1 import xml.dom
     1 import xml.dom
     2 import Ft.Xml.Domlette
     2 import Ft.Xml.Domlette
     3 import xml.xpath
     3 import xml.xpath
       
     4 import uuid
     4 from datetime import datetime
     5 from datetime import datetime
     5 from ldt.ldt_utils.models import Content, Project
     6 from ldt.ldt_utils.models import Content, Project
     6 
     7 
     7 DATE_FORMATS = ["%d/%m/%Y","%Y-%m-%d"]
     8 DATE_FORMATS = ["%d/%m/%Y","%Y-%m-%d"]
     8 
     9 
   141                     restagnode = xml.xpath.Evaluate("tags/tag/text()", element_node)
   142                     restagnode = xml.xpath.Evaluate("tags/tag/text()", element_node)
   142                     for tagnode in restagnode:
   143                     for tagnode in restagnode:
   143                         tags_list.append(tagnode.data)
   144                         tags_list.append(tagnode.data)
   144                 
   145                 
   145                 tag_date = datetime.utcnow().isoformat()
   146                 tag_date = datetime.utcnow().isoformat()
   146                 for tag_id in tags_list:
   147                 for tag_title in tags_list:
   147                     if tag_id not in self.tags:
   148                     if tag_title not in self.tags:
       
   149                         tag_id = uuid.uuid1()
   148                         new_tag = {
   150                         new_tag = {
   149                             "id":tag_id,
   151                             "id":tag_id,
   150                             "meta" : {
   152                             "meta" : {
   151                                 "dc:creator":"IRI",
   153                                 "dc:creator":"IRI",
   152                                 "dc:created": tag_date,
   154                                 "dc:created": tag_date,
   153                                 "dc:contributor":"IRI",
   155                                 "dc:contributor":"IRI",
   154                                 "dc:modified": tag_date,
   156                                 "dc:modified": tag_date,
   155                                 "dc:title":tag_id
   157                                 "dc:title":tag_title
   156                             }
   158                             }
   157                         }
   159                         }
   158                         self.tags[tag_id] = new_tag
   160                         self.tags[tag_title] = new_tag
   159                     element_tags.append({"id-ref":tag_id})
   161                     element_tags.append({"id-ref":tag_id})
   160 
   162 
   161                 if not element_tags:
   163                 if not element_tags:
   162                     element_tags = None
   164                     element_tags = None
   163                     
   165