Diff for /MPIWGWeb/MPIWGProjects.py between versions 1.26 and 1.36

version 1.26, 2004/09/03 08:04:21 version 1.36, 2004/10/11 15:41:51
Line 6  from Products.PageTemplates.PageTemplate Line 6  from Products.PageTemplates.PageTemplate
 from Products.PageTemplates.PageTemplate import PageTemplate  from Products.PageTemplates.PageTemplate import PageTemplate
 from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate  from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
 from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder  from Products.ZSQLExtend.ZSQLExtend import ZSQLExtendFolder
   from Globals import package_home
 import urllib  import urllib
 import MPIWGStaff  import MPIWGStaff
 import string  import string
 import re  import re
   import os
 from types import *  from types import *
   
 import xmlhelper # Methoden zur Verwaltung der projekt xmls  import xmlhelper # Methoden zur Verwaltung der projekt xmls
Line 72  class MPIWGRoot(ZSQLExtendFolder): Line 73  class MPIWGRoot(ZSQLExtendFolder):
     folders=['MPIWGProject','Folder']      folders=['MPIWGProject','Folder']
     meta_type='MPIWGRoot'      meta_type='MPIWGRoot'
   
       def upDateSQL(self,fileName):
           """updates SQL databases using fm.jar"""
           fmJarPath=os.path.join(package_home(globals()), 'updateSQL/fm.jar')
           xmlPath=os.path.join(package_home(globals()), "updateSQL/%s"%fileName)
   
           os.popen("java -classpath %s -Djava.awt.headless=true Convert %s"%(fmJarPath,xmlPath),"r").read()
   
           return 1
       
       def patchProjects(self,RESPONSE):
           """patch"""
           projects=self.ZopeFind(self.projects,obj_metatypes=['MPIWGProject'])
           for project in projects:
           tmp=project[1].WEB_project_description[0].replace("/CD/projects/","")[0:]
                   setattr(project[1],'WEB_project_description',[tmp[0:]])
                   RESPONSE.write("<p>%s</p>\n"%project[0])
               
     def replaceNotEmpty(self,format,field):      def replaceNotEmpty(self,format,field):
         """replace not empty"""          """replace not empty"""
         if field and (not field==''):          if field and (not field==''):
Line 80  class MPIWGRoot(ZSQLExtendFolder): Line 98  class MPIWGRoot(ZSQLExtendFolder):
             return ""              return ""
                   
                   
       def redirectIndex_html(self,request):
           #return request['URL1']+'/index_html'
           
           return urllib.urlopen(request['URL1']+'/index_html').read()
   
       
     def formatBibliography(self,here,found):      def formatBibliography(self,here,found):
         """format"""          """format"""
         return formatBibliography(here,found)          return formatBibliography(here,found)
Line 342  class MPIWGRoot(ZSQLExtendFolder): Line 366  class MPIWGRoot(ZSQLExtendFolder):
           
                   
     manage_options = Folder.manage_options+(      manage_options = Folder.manage_options+(
         {'label':'Import Persons','action':'importNamesForm'},          {'label':'Update Personal Homepages','action':'updateHomepages'},
         {'label':'Main config','action':'changeMPIWGRootForm'},          {'label':'Main config','action':'changeMPIWGRootForm'},
         {'label':'Edit Historical Persons','action':'editHistoricalPersonsForm'},          {'label':'Edit Historical Persons','action':'editHistoricalPersonsForm'},
         {'label':'Store Historical Persons','action':'storeHistoricalPersons'},          {'label':'Store Historical Persons','action':'storeHistoricalPersons'},
Line 376  class MPIWGRoot(ZSQLExtendFolder): Line 400  class MPIWGRoot(ZSQLExtendFolder):
         if RESPONSE is not None:          if RESPONSE is not None:
             RESPONSE.redirect('manage_main')              RESPONSE.redirect('manage_main')
   
       def updateHomepages(self,RESPONSE):
           """lege members an"""
           self.upDateSQL('personalwww.xml')
           founds=self.ZSQLInlineSearch(_table='personal_www')
           project=getattr(self,'members')
           for found in founds:
               
               if not (found.e_mail==""):
                   newObj=MPIWGStaff.MPIWGStaff(found.username,found.name,found.vorname)
                   
                   try:
                       project._setObject(found.username,newObj)
                       RESPONSE.write("<p>new:%s</p>\n"%found.username)
                   except:
                       RESPONSE.write("<p>old:%s (%s,%s)</p>\n"%(found.username,found.name,found.vorname))
   
   
                       
           if RESPONSE is not None:
               RESPONSE.redirect('manage_main')
   
           
     def getAllMembers(self):      def getAllMembers(self):
         """give list of all members"""          """give list of all members"""
         ret=[]          ret=[]
Line 425  class MPIWGRoot(ZSQLExtendFolder): Line 471  class MPIWGRoot(ZSQLExtendFolder):
                   
         return returnList          return returnList
   
   
     def formatElementForOverview(self,element):      def formatElementForOverview(self,element):
         """format the element for output in overview"""          """format the element for output in overview"""
         if element[0]==1: #department          if element[0]==1: #department
             #print element[3].getContent('xdata_05')              #print element[3].getContent('xdata_05')
             if element[3].getContent('xdata_05') == "4":              if element[3].getContent('xdata_05') == "4":
                 return """<h2><a href="%s">Ind. Research Group I: %s</a></h2>"""%(element[3].absolute_url()+"/index_html",element[3].getContent('WEB_title'))                  return """<h2 class="hier"><a href="%s">Ind. Research Group I: %s</a></h2>"""%(element[3].absolute_url()+"/index.html",element[3].getContent('WEB_title'))
             if element[3].getContent('xdata_05') == "5":              if element[3].getContent('xdata_05') == "5":
                 return """<h2><a href="%s">Ind. Research Group II: %s</a></h2>"""%(element[3].absolute_url()+"/index_html",element[3].getContent('WEB_title'))                  return """<h2 class="hier"><a href="%s">Ind. Research Group II: %s</a></h2>"""%(element[3].absolute_url()+"/index.html",element[3].getContent('WEB_title'))
                           
             return """<h2><a href="%s">Department %s: %s</a></h2>"""%(element[3].absolute_url()+"/index_html",element[3].getContent('xdata_05'),element[3].getContent('WEB_title'))              return """<h2 class="hier"><a href="%s">Department %s: %s</a></h2>"""%(element[3].absolute_url()+"/index.html",element[3].getContent('xdata_05'),element[3].getContent('WEB_title'))
   
         elif element[0]==2: #mainprojects          elif element[0]==2: #mainprojects
             return """<h3><a href="%s">%s</a></h3><p>"""%(element[3].absolute_url()+"/index_html",element[3].getContent('WEB_title'))              return """<h3 class="hier"><a href="%s">%s</a></h3><p>"""%(element[3].absolute_url()+"/index.html",element[3].getContent('WEB_title'))
   
         elif element[0]==3:          elif element[0]==3:
             return """<p><a href="%s">%s</a></p>"""%(element[3].absolute_url()+"/index_html",element[3].getContent('WEB_title'))              return """<p class="hier"><a href="%s">%s</a></p>"""%(element[3].absolute_url()+"/index.html",element[3].getContent('WEB_title'))
   
                   
     def changePosition(self,treeId,select,RESPONSE=None):      def changePosition(self,treeId,select,RESPONSE=None):
         """Change Postion Entry"""          """Change Postion Entry"""
Line 524  class MPIWGRoot(ZSQLExtendFolder): Line 572  class MPIWGRoot(ZSQLExtendFolder):
   
                 if proj:                  if proj:
                     #ret.append("<a href=%s >%s</a>"%(proj[0].absolute_url,person.encode('utf-8')))                      #ret.append("<a href=%s >%s</a>"%(proj[0].absolute_url,person.encode('utf-8')))
                     ret.append("<a href=%s >%s</a>"%('members/'+proj[0].id+'/index_html',person))                      ret.append("<a href=%s >%s</a>"%('members/'+proj[0].id+'/index.html',person))
                 else:                  else:
                     #ret.append("%s"%person.encode('utf-8'))                      #ret.append("%s"%person.encode('utf-8'))
                     ret.append("%s"%person)                      ret.append("%s"%person)
Line 554  class MPIWGRoot(ZSQLExtendFolder): Line 602  class MPIWGRoot(ZSQLExtendFolder):
                         proj=None                          proj=None
   
                 if proj:                  if proj:
               if person =="Otto Sibum" : person="H. Otto Sibum"
               if person =="Norton Wise" : person="M. Norton Wise"
                     #ret.append("<a href=%s >%s</a>"%(proj[0].absolute_url,person.encode('utf-8')))                      #ret.append("<a href=%s >%s</a>"%(proj[0].absolute_url,person.encode('utf-8')))
                     ret.append("<a href=%s >%s</a>"%(proj[0].absolute_url+"/index_html",person))                      ret.append("<a href=%s >%s</a>"%(proj[0].absolute_url+"/index.html",person))
                 else:                  else:
                     #ret.append("%s"%person.encode('utf-8'))                      #ret.append("%s"%person.encode('utf-8'))
                     ret.append("%s"%person)                      ret.append("%s"%person)
Line 587  class MPIWGRoot(ZSQLExtendFolder): Line 637  class MPIWGRoot(ZSQLExtendFolder):
   
         y=name          y=name
         splitted=y.split(",")            splitted=y.split(",")  
         for s in splitted:          #XXXX
             splitNeu.append("\""+s+"\"")          splitNeu=["\'"+splitted[1]+" "+splitted[0]+"\'"]
           
           #for s in splitted:
           #    splitNeu.append("\""+s+"\"")
         search=string.join(splitNeu,' AND ')          search=string.join(splitNeu,' AND ')
                           
         proj=self.ProjectCatalog({'xdata_01':search})          proj=self.ProjectCatalog({'xdata_01':search})
   
         if proj:          if proj:
             proj2=[x for x in proj]              proj2=[]
               for x in proj:
                
                   if not((splitted[1]==" Christoph") and (splitted[0]=="Hoffmann") and (str(x.WEB_title).find('Einstein')>0)):
                          
                          #print repr(splitted[1]),repr(splitted[0]),repr(x.WEB_title)
                          proj2.append(x)
         #    proj2.sort(sortP)          #    proj2.sort(sortP)
         #    ret.append((y,proj2))          #    ret.append((y,proj2))
         else:          else:
Line 768  class MPIWGProject(Folder): Line 828  class MPIWGProject(Folder):
         {'label':'Edit Themes & Disciplines','action':'editMPIWGDisciplinesThemesForm'},          {'label':'Edit Themes & Disciplines','action':'editMPIWGDisciplinesThemesForm'},
         )          )
   
   
       def index_html(self):
           """show homepage"""
       ext=self.ZopeFind(self.aq_parent,obj_ids=["project_main"])
   
           if ext:
               return getattr(self,ext[0][1].getId())()
   
           pt=PageTemplateFile('Products/MPIWGWeb/zpt/project_main').__of__(self)
           return pt()
   
     def getDataFields(self):      def getDataFields(self):
         """giveListofDatafields"""          """giveListofDatafields"""
         ret=[]          ret=[]
Line 815  class MPIWGProject(Folder): Line 886  class MPIWGProject(Folder):
             """nothing"""              """nothing"""
   
         text2=re.sub(r';([^\s])','; \g<1>',text)          text2=re.sub(r';([^\s])','; \g<1>',text)
           #teste ob ergebnis leer und header dann nehme title
           
           if (text2=='') and (field=='WEB_project_header'):
               return self.getContent('WEB_title')
   
           #teste ob WEB_project_description und keine führenden p tags
           if (len(text2)>4) and (not text2[0:3]=='<p>') and (field=='WEB_project_description'):
               return "<p>"+text2+"</p>"
           #if text2=="Otto Sibum":
           #text2="H. Otto Sibum"
         return text2          return text2
           
     def show_html(self):      def show_html(self):

Removed from v.1.26  
changed lines
  Added in v.1.36


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