version 1.47.2.40, 2005/10/24 23:51:29
|
version 1.47.2.49, 2006/01/30 14:53:03
|
Line 762 class MPIWGRoot(ZSQLExtendFolder):
|
Line 762 class MPIWGRoot(ZSQLExtendFolder):
|
|
|
def updateHomepages(self,RESPONSE=None): |
def updateHomepages(self,RESPONSE=None): |
""" update""" |
""" update""" |
#FIXME: seite wird hinter apache mehrfach ausgefŸhrt |
|
RESPONSE.setHeader('Content-type', 'text/html') |
RESPONSE.setHeader('Content-type', 'text/html') |
RESPONSE.write("<html><body>\n") |
RESPONSE.write("<html><body>\n") |
url="http://itgroup.mpiwg-berlin.mpg.de:8050/FMPro?-db=personal-www&-format=-dso_xml&-lay=sql_export&-max=20000&-findall" |
url="http://itgroup.mpiwg-berlin.mpg.de:8050/FMPro?-db=personal-www&-format=-dso_xml&-lay=sql_export&-max=20000&-findall" |
Line 787 class MPIWGRoot(ZSQLExtendFolder):
|
Line 787 class MPIWGRoot(ZSQLExtendFolder):
|
name=getTextFromNode(row.xpath('./dn:Name',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
name=getTextFromNode(row.xpath('./dn:Name',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
vorname=getTextFromNode(row.xpath('./dn:Vorname',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
vorname=getTextFromNode(row.xpath('./dn:Vorname',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
title=getTextFromNode(row.xpath('./dn:Title',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
title=getTextFromNode(row.xpath('./dn:Title',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
|
position=getTextFromNode(row.xpath('./dn:Position',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
e_mail=getTextFromNode(row.xpath('./dn:e_mail',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
e_mail=getTextFromNode(row.xpath('./dn:e_mail',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
e_mail_p=getTextFromNode(row.xpath('./dn:e_mail_p',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
e_mail_p=getTextFromNode(row.xpath('./dn:e_mail_p',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
date_from=getTextFromNode(row.xpath('./dn:Date_from',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
date_from=getTextFromNode(row.xpath('./dn:Date_from',explicitNss={'dn':'http://www.filemaker.com/fmpdsoresult'})[0]) |
Line 822 class MPIWGRoot(ZSQLExtendFolder):
|
Line 823 class MPIWGRoot(ZSQLExtendFolder):
|
RESPONSE.write("<p>new:%s</p>\n"%username.encode('utf-8')) |
RESPONSE.write("<p>new:%s</p>\n"%username.encode('utf-8')) |
obj=getattr(memberFolder,username) |
obj=getattr(memberFolder,username) |
ret=obj.createNewDBEntry(publish_the_data,id,name, |
ret=obj.createNewDBEntry(publish_the_data,id,name, |
vorname,username,title,e_mail, |
vorname,username,title,position,e_mail, |
e_mail_p,date_from,date_to, |
e_mail_p,date_from,date_to, |
abteilung,heimat_inst,funded_by, |
abteilung,heimat_inst,funded_by, |
e_mail2,txt,txt_p) |
e_mail2,txt,txt_p,stay_at_mpiwg) |
RESPONSE.write("""<p>%s</p>"""%ret[1].encode('utf-8')) |
RESPONSE.write("""<p>%s</p>"""%ret[1].encode('utf-8')) |
except: |
except: |
RESPONSE.write("<p>ERROR:%s %s %s</p>\n"%(username.encode('utf-8'),name.encode('utf-8'),vorname.encode('utf-8'))) |
RESPONSE.write("<p>ERROR:%s %s %s</p>\n"%(username.encode('utf-8'),name.encode('utf-8'),vorname.encode('utf-8'))) |
Line 849 class MPIWGRoot(ZSQLExtendFolder):
|
Line 850 class MPIWGRoot(ZSQLExtendFolder):
|
|
|
obj=getattr(memberFolder,username) |
obj=getattr(memberFolder,username) |
|
|
obj.updateDBEntry(DBid=id,publish_the_data=publish_the_data, |
done= obj.updateDBEntry(DBid=id,publish_the_data=publish_the_data, |
date_from=date_from, |
date_from=date_from, |
date_to=date_to,stay_at_mpiwg=stay_at_mpiwg) |
date_to=date_to,stay_at_mpiwg=stay_at_mpiwg,position=position) |
|
if not done and (publish_the_data=='yes'): |
|
|
|
ret=obj.createNewDBEntry(publish_the_data,id,name, |
|
vorname,username,title,position,e_mail, |
|
e_mail_p,date_from,date_to, |
|
abteilung,heimat_inst,funded_by, |
|
e_mail2,txt,txt_p,stay_at_mpiwg) |
|
if not ret[0]: |
|
|
|
RESPONSE.write("<p>Error: %s</p>\n"%repr(ret[1])) |
|
else: |
|
RESPONSE.write("<p>New: %s</p>\n"%repr(ret[1])) |
|
|
|
#TODO: reindexCatlogs and updatePublications wieder einbaue |
#self.reindexCatalogs(RESPONSE) |
#self.reindexCatalogs(RESPONSE) |
|
|
#self.updatePublicationDB() |
#self.updatePublicationDB() |
|
|
|
#self.ZSQLResetConnection() |
RESPONSE.write("<h2>Done</h2></body></html>") |
RESPONSE.write("<h2>Done</h2></body></html>") |
|
|
return True |
return True |
Line 874 class MPIWGRoot(ZSQLExtendFolder):
|
Line 889 class MPIWGRoot(ZSQLExtendFolder):
|
|
|
|
|
|
|
|
|
if RESPONSE: |
if RESPONSE: |
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
Line 918 class MPIWGRoot(ZSQLExtendFolder):
|
Line 934 class MPIWGRoot(ZSQLExtendFolder):
|
RESPONSE.redirect('manage_main') |
RESPONSE.redirect('manage_main') |
|
|
|
|
|
# def getAllMembers(self,reset=None): |
|
# """give list of all members""" |
|
# ret=[] |
|
# |
|
# |
|
# if reset or (getattr(self,'_v_membersList',None) is None): |
|
# for member in self.members._objects: |
|
# if member['meta_type']=='MPIWGStaff': |
|
# memberObj=getattr(self.members,member['id']) |
|
# if memberObj.isPublished(): |
|
# ret.append(memberObj.title.decode('utf-8')) |
|
# |
|
# ret.sort() |
|
# self._v_membersList=ret[0:] |
|
# print ret |
|
# |
|
# return self._v_membersList |
|
|
def getAllMembers(self): |
def getAllMembers(self): |
"""give list of all members""" |
#ret=[] |
ret=[] |
|
|
|
#for x in self.members.objectValues('MPIWGStaff'): |
results=self.MembersCatalog({'isPublished':True}) |
#print x.title |
|
# ret.append(x.title.decode('utf-8')) |
|
|
|
for x in self.ZopeFind(self.members,obj_metatypes=['MPIWGStaff']): |
|
if x[1].isPublished(): |
|
ret.append(x[1].title.decode('utf-8')) |
|
|
|
ret.sort() |
ret=[", ".join([proj.lastName, proj.firstName]).decode('utf-8') for proj in results] |
#print ret |
|
|
|
|
ret.sort() |
return ret |
return ret |
|
|
def printAllMembers(self): |
def printAllMembers(self): |
"""prin""" |
"""prin""" |
members=self.getAllMembers() |
members=self.getAllMembers() |
Line 1171 class MPIWGRoot(ZSQLExtendFolder):
|
Line 1197 class MPIWGRoot(ZSQLExtendFolder):
|
"""give tuple member /projects""" |
"""give tuple member /projects""" |
ret=[] |
ret=[] |
members=self.getAllMembers() |
members=self.getAllMembers() |
|
|
#return str(members) |
#return str(members) |
for x in members: |
for x in members: |
|
|
ret+=self.getProjectsOfMember(name=x,date=date) |
ret+=self.getProjectsOfMember(name=x,date=date) |
|
|
return ret |
return ret |
Line 1398 class MPIWGProject(CatalogAware,Folder):
|
Line 1426 class MPIWGProject(CatalogAware,Folder):
|
|
|
|
|
def copyImageToMargin(self,RESPONSE=None): |
def copyImageToMargin(self,RESPONSE=None): |
#TODO: copy more than one image |
|
"""copy inline images to marginal images""" |
"""copy inline images to marginal images""" |
self.getContent('WEB_project_description',filter='yes') |
|
|
|
filename=self.imageURL.split("/")[-1] |
|
|
#getImages from WEB_project_description |
|
description=self.getContent('WEB_project_description') |
|
|
|
text2=description |
|
splitted=text2.split("""<p class="picture">""") |
|
|
|
imageURLs=[] |
|
imageCaptions=[] |
|
for split in splitted[1:]: |
|
tmp=split.split("</p>") |
|
#return repr(splitted[1]) |
|
try: |
|
imageURLs.append(tmp[0].split("\"")[1].encode('utf-8')) |
|
except: |
|
imageURLs.append(tmp[0].split("src=")[1].split(" ")[0].encode('utf-8')) |
|
|
|
split2="</p>".join(tmp[1:]) |
|
|
|
|
|
splitted=split2.split("""<p class="picturetitle">""") |
|
if len(splitted)>1: |
|
tmp=splitted[1].split("</p>") |
|
imageCaptions.append(tmp[0].encode('utf-8')) |
|
|
|
|
|
else: |
|
#keine caption |
|
|
|
imageCaptions.append("") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#eintragen: |
|
for imageURL in imageURLs: |
|
filename=imageURL.split("/")[-1] |
#lege neues images object an, mit leerem bild |
#lege neues images object an, mit leerem bild |
|
|
if self.ZopeFind(self,obj_ids=[filename]): |
if self.ZopeFind(self,obj_ids=[filename]): |
#existiert das bild schon, dann neueun filenamen |
#existiert das bild schon, dann neuen filenamen |
filename="project_image_"+filename |
filename="project_image_"+filename |
|
|
self.addImage(None,self.imagecap,filename=filename) |
self.addImage(None,imageCaptions[imageURLs.index(imageURL)],filename=filename) |
#hole die bilddaten aus der url |
#hole die bilddaten aus der url |
url=self.absolute_url()+"/"+self.imageURL |
url=self.absolute_url()+"/"+imageURL |
#url=self.absolute_url()+"/"+filename |
#url=self.absolute_url()+"/"+filename |
|
|
try:#relative url |
try:#relative url |