Diff for /MPIWGWeb/Attic/MPIWGRoot.py between versions 1.1.2.35 and 1.1.2.40

version 1.1.2.35, 2012/01/09 10:36:48 version 1.1.2.40, 2012/03/02 14:03:21
Line 21  from bibliography import * Line 21  from bibliography import *
 import time  import time
 import xml.dom.minidom  import xml.dom.minidom
 import sys  import sys
   import transaction
   
 #from Ft.Xml.XPath import Evaluate  #from Ft.Xml.XPath import Evaluate
 #from Ft.Xml.XPath.Context import Context  #from Ft.Xml.XPath.Context import Context
 #from Ft.Xml.Domlette import NonvalidatingReader,PrettyPrint, Print  #from Ft.Xml.Domlette import NonvalidatingReader,PrettyPrint, Print
Line 96  class MPIWGRoot(ZSQLExtendFolder): Line 98  class MPIWGRoot(ZSQLExtendFolder):
              storage = ClientStorage.ClientStorage(addr)               storage = ClientStorage.ClientStorage(addr)
              db = DB(storage)               db = DB(storage)
              self._v_harvestDV=db               self._v_harvestDV=db
                self._v_harvestDV=db
              conn = db.open()               conn = db.open()
              dbroot = conn.root()               dbroot = conn.root()
              if not dbroot.has_key('templates'):               if not dbroot.has_key('templates'):
Line 106  class MPIWGRoot(ZSQLExtendFolder): Line 109  class MPIWGRoot(ZSQLExtendFolder):
         logging.debug("CACHE2:"+repr(self._v_harvestCache))                      logging.debug("CACHE2:"+repr(self._v_harvestCache))            
         return self._v_harvestCache          return self._v_harvestCache
           
       
       
     def __del__(self):      def __del__(self):
          if self._v_harvestCache!=None:           if self._v_harvestCache!=None:
              self._v_harvestDV.close();               self._v_harvestDV.close();
Line 715  class MPIWGRoot(ZSQLExtendFolder): Line 720  class MPIWGRoot(ZSQLExtendFolder):
         return ret          return ret
   
           
       def getAllProjectsAndTagsAsCSV(self,archived=1,RESPONSE=None):
           """alle projekte auch die nicht getaggten"""
           retList=[]
           headers=['sortingNumber','projectName','scholars','startedAt','completedAt','lastChange thesaurus','last change project','persons','places','objects']
           headers.extend(list(self.thesaurus.tags.keys()))
           retList.append("\t".join(headers))
           if not hasattr(self,'thesaurus'):
               return "NON thesaurus (there have to be a MPIWGthesaurus object, with object ID thesaurus)"
           
           projectTags = self.thesaurus.getProjectsAndTags()
           for project in self.getProjectFields('WEB_title_or_short'):
               proj = project[0]
               p_name = project[1]
               retProj=[]
               #if (not proj.isArchivedProject() and archived==1) or (proj.isArchivedProject() and archived==2):
               retProj.append(self.utf8ify(proj.getContent('xdata_05')))
               retProj.append(self.utf8ify(p_name))  
               retProj.append(self.utf8ify(proj.getContent('xdata_01')))
               retProj.append(self.utf8ify(proj.getStartedAt()))
               retProj.append(self.utf8ify(proj.getCompletedAt()))
               retProj.append(self.thesaurus.lastChangeInThesaurus.get(proj.getId(),''))   
               retProj.append(self.utf8ify(getattr(proj,'creationTime','20050101000000')))  
               retProj.append(";".join([person[1] for person in self.thesaurus.getPersonsFromProject(proj.getId())]))
               retProj.append(";".join([person[1] for person in self.thesaurus.getHistoricalPlacesFromProject(proj.getId())]))
               retProj.append(";".join([person[1] for person in self.thesaurus.getObjectsFromProject(proj.getId())]))
               retProj+=self.thesaurus.getTags(proj.getId(),projectTags)
               retList.append("\t".join(retProj))
           
           if RESPONSE:
               
               RESPONSE.setHeader('Content-Disposition','attachment; filename="ProjectsAndTags.tsv"')
               RESPONSE.setHeader('Content-Type', "application/octet-stream")
         
           return "\n".join(retList);
       
       
       
     
     def getProjectFields(self,fieldName,date=None,folder=None,sort=None):      def getProjectFields(self,fieldName,date=None,folder=None,sort=None):
         """getListofFieldNames"""          """getListofFieldNames"""
         ret=[]          ret=[]
Line 1295  class MPIWGRoot(ZSQLExtendFolder): Line 1338  class MPIWGRoot(ZSQLExtendFolder):
         """give tuple member /projects"""          """give tuple member /projects"""
         ret=[]          ret=[]
         members=self.getAllMembers()          members=self.getAllMembers()
         logging.error("X %s"%repr(members))          logging.debug("X %s"%repr(members))
         #return str(members)          #return str(members)
         for x in members:          for x in members:
             logging.error("X %s"%repr(x))              #logging.debug("X %s"%repr(x))
             projects=self.getProjectsOfMember(key=x[1],date=date)              projects=self.getProjectsOfMember(key=x[1],date=date)
             if len(projects)>0:              if len(projects)>0:
                 ret.append((x[0],projects))                  ret.append((x[0],projects))
Line 1327  class MPIWGRoot(ZSQLExtendFolder): Line 1370  class MPIWGRoot(ZSQLExtendFolder):
         else:          else:
             return ret # key muss definiert sein              return ret # key muss definiert sein
                   
         logging.debug("MPIWGROOT (getProjectsOfMember):"+repr(proj))          #logging.debug("MPIWGROOT (getProjectsOfMember):"+repr(proj))
         if proj:          if proj:
             proj2=[]              proj2=[]
             for x in proj:              for x in proj:

Removed from v.1.1.2.35  
changed lines
  Added in v.1.1.2.40


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