--- MPIWGWeb/MPIWGProjects.py 2005/10/14 17:13:37 1.47.2.33
+++ MPIWGWeb/MPIWGProjects.py 2005/10/24 23:51:29 1.47.2.40
@@ -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
@@ -764,7 +765,7 @@ class MPIWGRoot(ZSQLExtendFolder):
#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"
+ url="http://itgroup.mpiwg-berlin.mpg.de:8050/FMPro?-db=personal-www&-format=-dso_xml&-lay=sql_export&-max=20000&-findall"
dom = NonvalidatingReader.parseUri(url)
#fh=urllib.urlopen(url)
#dom=xml.dom.minidom.parse(fh)
@@ -795,7 +796,7 @@ class MPIWGRoot(ZSQLExtendFolder):
funded_by=getTextFromNode(row.xpath('./dn:funded_by',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0])
e_mail2=getTextFromNode(row.xpath('./dn:e_mail2',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0])
publish_the_data=getTextFromNode(row.xpath('./dn:publish_the_data',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0])
-
+ stay_at_mpiwg=getTextFromNode(row.xpath('./dn:stay_at_mpiwg',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0])
#cwNode=row.xpath('./dn:current_work.current',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]
cw=row.xpath('./dn:current_work/dn:DATA',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})
if cw:
@@ -850,15 +851,15 @@ class MPIWGRoot(ZSQLExtendFolder):
obj.updateDBEntry(DBid=id,publish_the_data=publish_the_data,
date_from=date_from,
- date_to=date_to)
+ date_to=date_to,stay_at_mpiwg=stay_at_mpiwg)
- self.reindexCatalogs(RESPONSE)
+ #self.reindexCatalogs(RESPONSE)
- self.updatePublicationDB()
+ #self.updatePublicationDB()
RESPONSE.write("Done
")
-
+ return True
def reindexCatalogs(self,RESPONSE=None):
"""reindex members and project catalog"""
@@ -1014,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])
@@ -1032,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'))
@@ -1395,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')
@@ -1407,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)
@@ -1914,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"""
@@ -1924,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()
@@ -2032,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