Diff for /OSAS/OSA_system/OSAS_show.py between versions 1.15 and 1.27

version 1.15, 2004/03/03 13:02:54 version 1.27, 2004/08/19 19:01:17
Line 4 Line 4
 """  """
   
 import addFolder  import addFolder
   import OSAS_helpers
 from OFS.Folder import Folder  from OFS.Folder import Folder
 from OFS.SimpleItem import SimpleItem  from OFS.SimpleItem import SimpleItem
 from Products.PageTemplates.PageTemplateFile import PageTemplateFile  from Products.PageTemplates.PageTemplateFile import PageTemplateFile
Line 60  class OSAS_ShowOnline(SimpleItem): Line 61  class OSAS_ShowOnline(SimpleItem):
         self.tree(path).toggle(path,file)          self.tree(path).toggle(path,file)
         return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']+"?path="+path)          return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1']+"?path="+path)
   
       
 InitializeClass(OSAS_ShowOnline)  InitializeClass(OSAS_ShowOnline)
   
 def manage_AddOSAS_ShowOnlineForm(self):  def manage_AddOSAS_ShowOnlineForm(self):
Line 104  class OSAS_StoreOnline(SimpleItem): Line 106  class OSAS_StoreOnline(SimpleItem):
     def rescaleThumbs(self,path):      def rescaleThumbs(self,path):
         """rescale thumbs of images in path"""          """rescale thumbs of images in path"""
   
         os.popen("ssh nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat.pl %s /mpiwg/temp/online/scaled/thumb 90 --replace >> /tmp/sc.out &"% re.sub('/mpiwg/online/','',self.REQUEST['path']))          dlpath = re.sub('/mpiwg/online/','',self.REQUEST['path'])
           os.popen("ssh archive@nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat -src=/mpiwg/online -dest=/mpiwg/temp/online/scaled/thumb -dir=%s -scaleto=90 -replace >> /tmp/sc.out &"%dlpath )
           #os.popen("ssh archive@nausikaa2.rz-berlin.mpg.de /usr/local/mpiwg/scripts/scaleomat.pl %s /mpiwg/temp/online/scaled/thumb 90 --replace >> /tmp/sc.out &"% re.sub('/mpiwg/online/','',self.REQUEST['path']))
   
         self.REQUEST.SESSION['path']=self.REQUEST['path']          self.REQUEST.SESSION['path']=self.REQUEST['path']
         #return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1'])          #return self.REQUEST.RESPONSE.redirect(self.REQUEST['URL1'])
Line 157  class OSAS_StoreOnline(SimpleItem): Line 161  class OSAS_StoreOnline(SimpleItem):
         """Test ob Eintrag ein Folder ist"""          """Test ob Eintrag ein Folder ist"""
         return isFullText(path,folder_name)          return isFullText(path,folder_name)
   
       def isPdf(self,path,folder_name):
           """Test ob Eintrag ein Folder mit pdf2 ist"""
           return isPdf(path,folder_name)
   
   
       def isPresentation(self,path,folder_name):
           """Test ob Eintrag ein Folder ist"""
           return isPresentation(path,folder_name)
   
     def date(self):      def date(self):
     return strftime("%d.%m.%Y",localtime())       return strftime("%d.%m.%Y",localtime()) 
   
Line 165  class OSAS_StoreOnline(SimpleItem): Line 178  class OSAS_StoreOnline(SimpleItem):
         pt=PageTemplateFile('Products/OSA_system/zpt/OSAS_addFolder.zpt').__of__(self)          pt=PageTemplateFile('Products/OSA_system/zpt/OSAS_addFolder.zpt').__of__(self)
         return pt()          return pt()
   
       def showHelp(self,refType,genericTag):
           """helptext"""
           for reference in self.ZopeFind(self.standardMD):
               if reference[1].title==refType:
                   text=getattr(reference[1],'md_'+genericTag)[2]
                   return text
           return "NO EXPLANATION"
   
       def showHelpTag(self,url,reftype,item):
           """gen javascript for showhelp"""
           url2=url+'/showHelp?refType=%s&genericTag=%s'%(reftype,item)
           ret="""javascript:wd=window.open(\'%s\',\'Help\',\'width=300,height=250\');void(\'\');wd.focus();"""%url2
           return ret
           
     def addFolder(self,path,folder_name,description,archive_creation_date,creator):      def addFolder(self,path,folder_name,description,archive_creation_date,creator):
         """add the folder to the filesystem and write the metadata files"""          """add the folder to the filesystem and write the metadata files"""
Line 174  class OSAS_StoreOnline(SimpleItem): Line 200  class OSAS_StoreOnline(SimpleItem):
         """Editiere das Index Metafile"""          """Editiere das Index Metafile"""
         try:          try:
             dom=xml.dom.minidom.parse(path+"/index.meta")              dom=xml.dom.minidom.parse(path+"/index.meta")
             indexmeta=dom.toxml()              indexmeta=dom.toxml(encoding='UTF-8')
         except:          except:
             indexmeta=""              indexmeta=""
                           
Line 204  class OSAS_StoreOnline(SimpleItem): Line 230  class OSAS_StoreOnline(SimpleItem):
         pt=PageTemplateFile('Products/OSA_system/zpt/OSAS_addmetadata.zpt').__of__(self)          pt=PageTemplateFile('Products/OSA_system/zpt/OSAS_addmetadata.zpt').__of__(self)
         return pt()          return pt()
   
       def getTextToolsField(self,path,name,default=''):
           """Lese Textoolsfelder aus index.meta im path aus"""
           
           try:
               dom=xml.dom.minidom.parse(path+"/index.meta")
               node=dom.getElementsByTagName('texttool')[0] #getNode
               subnode=node.getElementsByTagName(name)[0]
   
               # bei text wird nur der Folder gebraucht
               if name=="text":
                   splitted=getText(subnode.childNodes).split("/")
                   return splitted[len(splitted)-2]
               else:
                   return getText(subnode.childNodes)
           except:
               return default
               
       def getViewerTemplateSets(self,obj_ids=None):
           """Get the ViewerTemplateSet title for configuration"""
           ret=[]
           
           try:
               viewerTemplateSets=self.ZopeFind(self.viewerTemplateSets,obj_metatypes=['OSAS_viewerTemplateSet'],obj_ids=obj_ids)#assumes viewerTemplateSets folder somewhere in the hierarchie.
               
               for viewerTemplateSet in viewerTemplateSets:
                   ret.append((viewerTemplateSet[1].title,viewerTemplateSet[0],viewerTemplateSet[1]))
               
               return ret
           
           except:
               return [('no ViewerTemplateSetfolders','')]
   
       def changeTemplatesForm(self,path):
           """changeform"""
           path=self.REQUEST.SESSION['path']=path
           pt=PageTemplateFile('Products/OSA_system/zpt/changeTemplatesForm.zpt').__of__(self)
           return pt()
   
           
   
       def changeTemplates(self,path,RESPONSE=None):
           """Andere alle Eintraege in index.meta"""
           os.path.walk(path,OSAS_helpers.changeIndexMeta,self.REQUEST.form)
       if RESPONSE is not None:
               RESPONSE.redirect(self.REQUEST['URL1']+"?path="+self.REQUEST.SESSION['path'])
   
           
 InitializeClass(OSAS_StoreOnline)  InitializeClass(OSAS_StoreOnline)
           
 def manage_AddOSAS_StoreOnlineForm(self):  def manage_AddOSAS_StoreOnlineForm(self):
Line 250  from AccessControl import ClassSecurityI Line 323  from AccessControl import ClassSecurityI
 from AccessControl.Role import RoleManager  from AccessControl.Role import RoleManager
 from Acquisition import Implicit  from Acquisition import Implicit
 from Globals import Persistent  from Globals import Persistent
   try:
 from time import strptime  from time import strptime
   except:
       print "ignoring time.strptime import"
       
 from time import strftime  from time import strftime
 import time  import time
 import os.path  import os.path
Line 886  def getBib(nodelist): Line 963  def getBib(nodelist):
                   
         if node.nodeType == node.ELEMENT_NODE:          if node.nodeType == node.ELEMENT_NODE:
        """nothing"""         """nothing"""
              
        rc = rc+"<tr><td valign='right'>"+str(node.nodeName)+":</td><td> "+getText(node.childNodes)+"</td></tr>"         rc = rc+"<tr><td valign='right'>"+str(node.nodeName)+":</td><td> "+getText(node.childNodes)+"</td></tr>"
              
     #print rc      #print rc
     return rc+"</table>"      return rc+"</table>"
   
Line 945  def getMetafile(path): Line 1024  def getMetafile(path):
                 
 #        html=html.encode('utf-8','replace')+getBib(bib.childNodes).encode('utf-8','replace')  #        html=html.encode('utf-8','replace')+getBib(bib.childNodes).encode('utf-8','replace')
                 
        return html         return html.encode('utf-8')
   
 def hasMetafile(path):  def hasMetafile(path):
     """get index.meta"""      """get index.meta"""
     return os.path.exists(path+"/index.meta")      return os.path.exists(path+"/index.meta")
     #return path      #return path
   
   
   
 def isdigilib2(path):  def isdigilib2(path):
       """check if folder is candidate for digilib without metadata"""         """check if folder is candidate for digilib without metadata""" 
           try:            try:
Line 1001  def isFullText(path,folder_name): Line 1082  def isFullText(path,folder_name):
                           
             return 0              return 0
   
   def isPdf(path,folder_name):
         """check if foldername in path is full text"""
         try:
               dom=xml.dom.minidom.parse(path+"/index.meta")
               for node in dom.getElementsByTagName("dir"):
                     
                     if getText(node.getElementsByTagName("content-type")[0].childNodes).lower()=="pdf":
                           
                           if getText(node.getElementsByTagName("name")[0].childNodes)==folder_name:
                                 return 1
               return 0
         except:
               
               return 0
   
 def isPresentation(path,folder_name):  def isPresentation(path,folder_name):
       """check if foldername in path is full text"""        """check if foldername in path is full text"""
Line 1161  def isScannedDocument(self,path): Line 1256  def isScannedDocument(self,path):
             try:              try:
                   dom = xml.dom.minidom.parseString(lines)                    dom = xml.dom.minidom.parseString(lines)
                   content_type=getText(dom.getElementsByTagName("content-type")[0].childNodes)                     content_type=getText(dom.getElementsByTagName("content-type")[0].childNodes) 
                   if (content_type=="scanned-document") or (content_type=="scanned document"):                    if (content_type=="scanned-document") or (content_type=="scanned document") or (content_type=="fulltext document"):
                         return 1                          return 1
                   else:                    else:
                         return 0                          return 0

Removed from v.1.15  
changed lines
  Added in v.1.27


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