Diff for /OSAS/OSA_system/OSAS_addfiles.py between versions 1.3 and 1.7

version 1.3, 2003/10/06 16:22:09 version 1.7, 2003/10/08 17:37:48
Line 1 Line 1
 # Methoden und Classen zum Hinzufuegen von Dokumenten  # Methoden und Classen zum Hinzufuegen von Dokumenten
   
   import xml.dom.minidom
   from Products.ECHO_content import ECHO_collection
 import urllib  import urllib
 import OSAS_add  import OSAS_add
   import string
 from OFS.Folder import Folder  from OFS.Folder import Folder
 from AccessControl import ClassSecurityInfo  from AccessControl import ClassSecurityInfo
 from Globals import InitializeClass  from Globals import InitializeClass
Line 153  class OSAS_add_contextData(Folder): Line 156  class OSAS_add_contextData(Folder):
         self.id=id          self.id=id
         self.collection=collection          self.collection=collection
   
       def getChilds(self,id,depth,items):
           list=[]
           for object in items:
               if (depth==object[2])&(id==object[0]):
                   list.append(object)
           return list
   
       def printChilds(self,startItem,depth,items,enddepth):
   
           def spaces(depth):
               tmp=""
               k=0
               while k<2*depth:
                   k+=1
                   tmp=tmp+"&nbsp;"+"&nbsp;"
               return tmp
   
           def retLink(object):
               return "<input type='checkbox' name='collection' value='%s'>%s</input>"% (string.join(object.getPhysicalPath(),"."),object.title)
                
           depth+=1
           childs=self.getChilds(startItem,depth,items)
           tmp=""
           for child in childs:
               if depth < enddepth:
                   tmp=tmp+spaces(depth)
                   
                   tmp= tmp+retLink(child[1])+"<br>"+self.printChilds(child[1],depth,items,enddepth)+"<br>"
               else:
                   tmp=tmp+spaces(2*depth)
                   tmp = tmp+retLink(child[1])+"<br>"
   
           return tmp
                       
     def generateTree(self,depth=3):      def generateTree(self,depth=3):
         """Erzeugt HTML-Tree der Collection"""          """Erzeugt HTML-Tree der Collection"""
                   
           exec("items=self.getPhysicalRoot()."+self.collection+".getCollectionTree()")
           #print items[0][0]
   
         def getChilds(id,depth,items):          childs=self.printChilds(items[0][0],0,items,3)
             list=[]  
             for object in item:  
                 if (depth==object[2])&(id==object[0]):  
                     list.append[object]  
   
           return childs
   
         exec("items=self.getPhysicalRoot()."+self.collection+".getCollectionTree()")      def getPartners(self):
           """Zeige Partnerliste"""
           exec("items=self.getPhysicalRoot()."+self.collection+".partners.getPartners()")
           return items
       def addContextData(self,path):
           """Hinzufügen zu einer Sammlung"""
           try:
               urllib.urlopen(self.REQUEST['SERVER_URL']+path+"/index.meta")
               pt=PageTemplateFile('products/OSA_system/contextDataMain.zpt').__of__(self)
               return pt()
           except:
               return "index.meta file has to exist!"
   
                   
                   
       def addContextData2(self,path,collection,context,science,practice,source_type,period,label,description,content_type,responsible,credits):
           """Hinzufuegen der Resource"""
           splitted=path.split("/")
                                   
           id=splitted[len(splitted)-1]
           title=splitted[len(splitted)-1]
           metalink=self.REQUEST['SERVER_URL']+path+"/index.meta"
           link="TOBEDONE"
           """Hinzufügen der Ressource"""
                   
   
         return a[1][0].id          exec("collection_object=self"+collection)
   
     def addContextData(self):          ECHO_collection.manage_AddECHO_resource(collection_object,context,science,practice,source_type,period,id,title,label,description,content_type,responsible,link,metalink,credits,RESPONSE=None)
         pt=PageTemplateFile('products/OSA_system/contextDataMain.zpt').__of__(self)  
   
           getattr(collection_object,id).ECHO_getResourceMD()
   
           return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL2']+'?path='+path)
   
     manage_options = Folder.manage_options+(      manage_options = Folder.manage_options+(
             {'label':'Main Config','action':'add_contextData_config'},              {'label':'Main Config','action':'add_contextData_config'},
Line 297  class OSAS_combineTextImage(Folder): Line 354  class OSAS_combineTextImage(Folder):
   
     def combineTextImage2(self,path):      def combineTextImage2(self,path):
         """Eingabe von Metadateninformationen"""          """Eingabe von Metadateninformationen"""
         return OSAS_add.combineTextImage2(self,path)          OSAS_add.combineTextImage2(self,path) # Add images
           splitted=path.split("/")
           linkPath=splitted[len(splitted)-1]
           linkViewerEnvironment="http://nausikaa2.mpiwg-berlin.mpg.de:86/cgi-bin/toc/toc.x.cgi?dir=%s&step=thumb" % linkPath
           self.REQUEST.SESSION['linkViewerEnvironment']=linkViewerEnvironment
   
           writeToContext(path,linkViewerEnvironment,"ECHO standard environment")
           
           pt=PageTemplateFile('products/OSA_system/AddOSAS_combineTextImageFinal.zpt').__of__(self)
   
           return pt()
   
   
   def writeToContext(path,link,description):
       """Created an additional entry to the index.meta file of path"""
       dom=xml.dom.minidom.parse(path+"/index.meta")
       node=dom.getElementsByTagName('resource')[0]
   
       subnode=dom.createElement('context')
   
       linknode=dom.createElement('link')
       namelinknode=dom.createTextNode(link)
       linknode.appendChild(namelinknode)
       subnode.appendChild(linknode)
   
       linknode=dom.createElement('name')
       namelinknode=dom.createTextNode(description)
       linknode.appendChild(namelinknode)
       subnode.appendChild(linknode)
   
       node.appendChild(subnode)
       
       writefile=file(path+"/index.meta","w")
       #print path+"/index.meta"
       writefile.write(dom.toxml().encode('utf-8'))
       writefile.close()
           
 def manage_AddOSAS_combineTextImageForm(self):  def manage_AddOSAS_combineTextImageForm(self):
     """interface for adding the OSAS_add_Metadata"""      """interface for adding the OSAS_add_Metadata"""

Removed from v.1.3  
changed lines
  Added in v.1.7


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