--- MPIWGWeb/MPIWGProjects.py 2005/10/14 16:32:09 1.47.2.31
+++ MPIWGWeb/MPIWGProjects.py 2005/10/24 19:41:33 1.47.2.38
@@ -4,6 +4,7 @@ for organizing and maintaining the diffe
"""
#TODO: mechanismus fur links to personen ueberarbeiten, da jetzt alle e_mails als members auftauchen unabhaengig vom status publish_the_data
#TODO: was passiert wenn aenderungen von jochen im filemaker nicht mit den aenderungen im sql uebereinstimmen
+#TODO: in einzelnen projecte steht als pfad auf die bilder noch wwwneu statt www
from Products.PageTemplates.PageTemplateFile import PageTemplateFile
from Products.PageTemplates.PageTemplate import PageTemplate
@@ -296,12 +297,12 @@ class MPIWGRoot(ZSQLExtendFolder):
ids=[int(x.id[1:]) for x in founds]
maximum=max(ids)
- id_raw=self.ZSQLQuery("select nextval('id_raw_test')",debug=debug)
+ id_raw=self.ZSQLQuery("select nextval('id_raw')",debug=debug)
if id_raw:
- self.ZSQLQuery("drop sequence id_raw_test",debug=debug)
+ self.ZSQLQuery("drop sequence id_raw",debug=debug)
- self.ZSQLQuery("create sequence id_raw_test start %i"%(maximum+1),debug=debug)
+ self.ZSQLQuery("create sequence id_raw start %i"%(maximum+1),debug=debug)
def queryLink(self,link):
@@ -761,7 +762,8 @@ class MPIWGRoot(ZSQLExtendFolder):
def updateHomepages(self,RESPONSE=None):
""" update"""
- RESPONSE.setHeader('Content-type', 'text/html')
+ #FIXME: seite wird hinter apache mehrfach ausgefŸhrt
+ RESPONSE.setHeader('Content-type', 'text/html')
RESPONSE.write("
\n")
url="http://itgroup.mpiwg-berlin.mpg.de:8050/FMPro?-db=personal-www&-format=-dso_xml&-lay=sql_export&-max=10000&-findall"
dom = NonvalidatingReader.parseUri(url)
@@ -851,9 +853,9 @@ class MPIWGRoot(ZSQLExtendFolder):
date_from=date_from,
date_to=date_to)
- self.reindexCatalogs(RESPONSE)
+ #self.reindexCatalogs(RESPONSE)
- self.updatePublicationDB()
+ #self.updatePublicationDB()
RESPONSE.write("Done
")
@@ -1013,7 +1015,7 @@ class MPIWGRoot(ZSQLExtendFolder):
ret+="""\n"""
if actualDepth==1:
- departmentName={'1':'Department I','2':'Department II','3':'Department III', '4':'Ind. Research Group','5':'Ind. Research Group'}
+ departmentName={'1':'Department I','2':'Department II','3':'Department III', '4':'Ind. Research Group','5':'Ind. Research Group','6':'Research Network'}
department=element[3].getContent('xdata_05')
ret+="""
%s: """%(department,departmentName[department])
@@ -1031,6 +1033,8 @@ class MPIWGRoot(ZSQLExtendFolder):
return """"""%(element[3].absolute_url()+"/index.html",element[3].getContent('WEB_title'))
if element[3].getContent('xdata_05') == "5":
return """"""%(element[3].absolute_url()+"/index.html",element[3].getContent('WEB_title'))
+ if element[3].getContent('xdata_05') == "6":
+ return """"""%(element[3].absolute_url()+"/index.html",element[3].getContent('WEB_title'))
return """"""%(element[3].absolute_url()+"/index.html",element[3].getContent('xdata_05'),element[3].getContent('WEB_title'))
@@ -1394,6 +1398,7 @@ class MPIWGProject(CatalogAware,Folder):
def copyImageToMargin(self,RESPONSE=None):
+ #TODO: copy more than one image
"""copy inline images to marginal images"""
self.getContent('WEB_project_description',filter='yes')
@@ -1406,8 +1411,17 @@ class MPIWGProject(CatalogAware,Folder):
self.addImage(None,self.imagecap,filename=filename)
#hole die bilddaten aus der url
- data=urllib.urlopen(self.absolute_url()+"/"+self.imageURL).read()
-
+ url=self.absolute_url()+"/"+self.imageURL
+ #url=self.absolute_url()+"/"+filename
+
+ try:#relative url
+ data=urllib.urlopen(url).read()
+ except:
+ try:#absolute
+ data=urllib.urlopen(self.imageURL).read()
+ except:
+ zLOG.LOG("MPIWG Project",zLOG.ERROR,"can't open: %s"%url)
+
obj=getattr(self,filename)
obj.update_data(data)
@@ -1904,7 +1918,7 @@ class MPIWGProject(CatalogAware,Folder):
return True
- security.declareProtected('View managment screens','edit')
+ security.declareProtected('View management screens','edit')
def edit(self,western=None):
"""Edit pages"""
if western:
@@ -1913,6 +1927,16 @@ class MPIWGProject(CatalogAware,Folder):
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','edit_MPIWGProjectNeu.zpt')).__of__(self)
return pt()
+
+ edit_MPIWGProject_main = PageTemplateFile('zpt/edit_MPIWGProject_main', globals())
+
+ def getPathStyle(self, path, selected, style=""):
+ """returns a string with the given style + 'sel' if path == selected."""
+
+ if path == selected:
+ return style + 'sel'
+ else:
+ return style
def preview(self,description):
"""preview"""
@@ -1923,7 +1947,7 @@ class MPIWGProject(CatalogAware,Folder):
for field in definedFields:
setattr(tmpPro,field,getattr(self,field))
tmpPro.WEB_project_description=description[0:]
-
+ tmpPro.invisible=True
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','previewFrame.zpt')).__of__(self)
return pt()
@@ -2031,6 +2055,7 @@ class MPIWGProject(CatalogAware,Folder):
splitted=[y.rstrip().lstrip() for y in splitted]
for x in splitted:
+ x=re.sub(r"[^A-z ]","",x)
if (not x==u'') and x in wert:
return 1
return 0
@@ -2041,13 +2066,13 @@ class MPIWGProject(CatalogAware,Folder):
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','edit_MPIWGBasisNeu.zpt')).__of__(self)
return pt()
-
+ security.declareProtected('View management screens','editMPIWGBasisForm')
def editMPIWGBasisForm(self):
"""editform"""
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','edit_MPIWGBasis.zpt')).__of__(self)
return pt()
-
+ security.declareProtected('View management screens','editMPIWGRelatedPublicationsForm')
def editMPIWGRelatedPublicationsForm(self):
"""Edit related Publications"""
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','edit_MPIWGRelatedPublications.zpt')).__of__(self)