Diff for /OSAS/OSA_system/OSAS_metadata.py between versions 1.5 and 1.9

version 1.5, 2004/04/05 21:54:42 version 1.9, 2004/05/26 08:08:57
Line 29  class OSAS_MetadataMapping(SimpleItem): Line 29  class OSAS_MetadataMapping(SimpleItem):
   
     def readFieldsFromParent(self):      def readFieldsFromParent(self):
         """read all elements from root"""          """read all elements from root"""
           #print self.getId()
         return self.aq_parent.fieldList          return self.aq_parent.fieldList
           
     def __init__(self,id,title,arglist):      def __init__(self,id,title,arglist,fieldList):
         """init"""          """init"""
         self.id=id          self.id=id
         self.title=title          self.title=title
         self.fields=[]          self.fields=[]
                   
         for fieldName in self.readFieldsFromParent():          for fieldName in fieldList:
             setattr(self,"md_"+fieldName,arglist[fieldName])              setattr(self,"md_"+fieldName,arglist[fieldName])
             self.fields.append(arglist[fieldName])              self.fields.append(arglist[fieldName])
                           
Line 45  class OSAS_MetadataMapping(SimpleItem): Line 46  class OSAS_MetadataMapping(SimpleItem):
         {'label':'Main Config','action':'change_OSAS_MappingForm'},          {'label':'Main Config','action':'change_OSAS_MappingForm'},
         )          )
   
   
       def showSetXML(self,RESPONSE=None):
           """prints out the mapping as XML"""
           ret="""<set name="%s">"""%self.title
           for fieldName in self.readFieldsFromParent():
               entry=getattr(self,"md_"+fieldName)
               if entry[2]=="": # no explanation of this field
                   ret+="""<entry genericName="%s" tag="%s" label="%s"/>"""%(fieldName,entry[0],entry[1])
               else:
                   ret+="""<entry genericName="%s" tag="%s" label="%s">%s</entry>"""%(fieldName,entry[0],entry[1],entry[2])
           ret+="</set>"
   
           if not RESPONSE:
               return ret
           else:
               self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml')
               return ret
   
     def getValue(self,fieldName):      def getValue(self,fieldName):
         """get md value"""          """get md value"""
   
         try:          try:
             return getattr(self,"md_"+fieldName)              return getattr(self,"md_"+fieldName)
         except:          except:
             return ""              return (None,None,None)
   
       def isEmptyValue(self,fieldName):
           """empty"""
           try:
               field=getattr(self,"md_"+fieldName)
               if field[1]=='':
                   return 0
               else:
                   return 1
           except:
               return 0
                   
     def generateMappingHash(self):      def generateMappingHash(self):
         """erzeugen des Hash"""          """erzeugen des Hash"""
Line 76  class OSAS_MetadataMapping(SimpleItem): Line 107  class OSAS_MetadataMapping(SimpleItem):
                   
         for fieldName in self.readFieldsFromParent():          for fieldName in self.readFieldsFromParent():
   
             setattr(self,"md_"+fieldName,arglist[fieldName])              setattr(self,"md_"+fieldName,(arglist[fieldName],arglist['label_'+fieldName],arglist['explanation_'+fieldName]))
             self.fields.append(arglist[fieldName])              self.fields.append(arglist[fieldName])
                           
         if RESPONSE is not None:          if RESPONSE is not None:
Line 93  def manage_addOSAS_MetadataMapping(self, Line 124  def manage_addOSAS_MetadataMapping(self,
     """add the OSAS_root"""      """add the OSAS_root"""
           
     argList={}      argList={}
     for arg in self.REQUEST.form.keys():      for arg in self.fieldList:
         if not (arg in ['idOfObject','titleOfObject']):          if not (arg in ['idOfObject','titleOfObject']):
             argList[arg]=self.REQUEST.form[arg]              argList[arg]=(self.REQUEST.form[arg],self.REQUEST.form['label_'+arg],self.REQUEST.form['explanation_'+arg])
                   
     newObj=OSAS_MetadataMapping(idOfObject,titleOfObject,argList)      newObj=OSAS_MetadataMapping(idOfObject,titleOfObject,argList,self.fieldList)
     self._setObject(idOfObject,newObj)      self._setObject(idOfObject,newObj)
     if RESPONSE is not None:      if RESPONSE is not None:
         RESPONSE.redirect('manage_main')          RESPONSE.redirect('manage_main')
Line 122  class OSAS_add_Metadata(Folder): Line 153  class OSAS_add_Metadata(Folder):
         {'label':'Main Config','action':'add_Metadata_config'},          {'label':'Main Config','action':'add_Metadata_config'},
         )          )
   
       def showGenericXML(self,RESPONSE=None):
           """show generic fields as XML"""
           ret="""<set name="%s">"""%"generic"
           for field in self.fieldList:
               ret+="""<entry genericName="%s"/>"""%field
   
           ret+="</set>"
           
           if not RESPONSE:
               return ret
           else:
               self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml')
               return ret
       def showOverviewXML(self,RESPONSE):
           """gives an overview over the Metadata stored in this folder"""
           ret="""<metadata name="%s">"""%self.getId()
           ret+=self.showGenericXML()
           for entry in self.ZopeFind(self,obj_metatypes=['OSAS_MetadataMapping']):
               ret+=entry[1].showSetXML()
   
           ret+="</metadata>"
   
           if not RESPONSE:
               return ret
           else:
               self.REQUEST.RESPONSE.setHeader('Content-Type','text/xml')
               return ret
           
     def generateMappingList(self):      def generateMappingList(self):
         """Erzeuge Mapping"""          """Erzeuge Mapping"""
Line 220  class OSAS_add_Metadata(Folder): Line 278  class OSAS_add_Metadata(Folder):
         """write new index.meta file"""          """write new index.meta file"""
         return OSAS_add.add6(self)          return OSAS_add.add6(self)
           
           
     
       
 def manage_AddOSAS_add_MetadataForm(self):  def manage_AddOSAS_add_MetadataForm(self):
     """interface for adding the OSAS_add_Metadata"""      """interface for adding the OSAS_add_Metadata"""
     pt=PageTemplateFile('Products/OSA_system/zpt/AddOSAS_metadata.zpt').__of__(self)      pt=PageTemplateFile('Products/OSA_system/zpt/AddOSAS_metadata.zpt').__of__(self)

Removed from v.1.5  
changed lines
  Added in v.1.9


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>