version 1.10.2.66, 2009/04/17 14:29:13
|
version 1.10.2.80, 2012/01/09 10:36:48
|
Line 25 import logging
|
Line 25 import logging
|
import email |
import email |
import re |
import re |
from OFS.Cache import Cacheable |
from OFS.Cache import Cacheable |
|
import urllib2 |
|
|
from MPIWGHelper import * |
from MPIWGHelper import * |
#ersetzt logging |
#ersetzt logging |
Line 33 def logger(txt,method,txt2):
|
Line 34 def logger(txt,method,txt2):
|
logging.info(txt+ txt2) |
logging.info(txt+ txt2) |
|
|
departmentList="Renn\nRheinberger\nDaston\nKlein\nSibum\nIT\nInstitut\nBibliothek" |
departmentList="Renn\nRheinberger\nDaston\nKlein\nSibum\nIT\nInstitut\nBibliothek" |
|
coneService="http://127.0.0.1:8280/MetaDataManagerRestlet/cone/" # kann in MPIWGRoot konfiguriert werden. |
|
|
|
|
|
|
|
def createNewDBEntry(self,publish_the_data,key,name,vorname,titles_new,position,e_mail,e_mail_p,date_from,date_to,abteilung,heimat_inst,funded_by="",e_mail2="",txt="",txt_p="no",stay_at_mpiwg="",group="",web_object_created="no",current_work=""): |
def createNewDBEntry(self,publish_the_data,key,name,vorname,title,position,e_mail,e_mail_p,date_from,date_to,abteilung,heimat_inst,funded_by="",e_mail2="",txt="",txt_p="no",stay_at_mpiwg="",group="",web_object_created="no",current_work=""): |
|
"""lege person in der datenbank an""" |
"""lege person in der datenbank an""" |
|
|
if date_to=="": # wenn date_to leer |
if date_to=="": # wenn date_to leer |
Line 51 def createNewDBEntry(self,publish_the_da
|
Line 52 def createNewDBEntry(self,publish_the_da
|
return False,"ERROR:key%s already exists"%key |
return False,"ERROR:key%s already exists"%key |
|
|
#eintragen |
#eintragen |
columnlist="""publish_the_data,key,last_name,first_name,title,status,e_mail,e_mail_p,date_from,date_to,department,home_inst,funded_by,e_mail2,date_stay_at_mpiwg,web_object_created,"group",current_work,current_work_p """ |
columnlist="""publish_the_data,key,last_name,first_name,titles_new,status,e_mail,e_mail_p,date_from,date_to,department,home_inst,funded_by,e_mail2,date_stay_at_mpiwg,web_object_created,"group",current_work,current_work_p """ |
insertTuple=(publish_the_data,key,name,vorname,title,position,e_mail,e_mail_p,date_from,date_to,abteilung,heimat_inst,funded_by,e_mail2,stay_at_mpiwg,web_object_created,group,current_work,"yes") |
insertTuple=(publish_the_data,key,name,vorname,titles_new,position,e_mail,e_mail_p,date_from,date_to,abteilung,heimat_inst,funded_by,e_mail2,stay_at_mpiwg,web_object_created,group,current_work,"yes") |
|
|
insert=[] |
insert=[] |
for element in insertTuple: |
for element in insertTuple: |
Line 79 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 80 class MPIWGStaff(CatalogAware,ZSQLExtend
|
meta_type="MPIWGStaff" |
meta_type="MPIWGStaff" |
default_catalog='MembersCatalog' |
default_catalog='MembersCatalog' |
departmentList=departmentList |
departmentList=departmentList |
|
_v_cone=None; |
security=ClassSecurityInfo() |
security=ClassSecurityInfo() |
|
|
def redirect(self,RESPONSE,url): |
def redirect(self,RESPONSE,url): |
Line 97 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 99 class MPIWGStaff(CatalogAware,ZSQLExtend
|
|
|
def getKeyUTF8(self): |
def getKeyUTF8(self): |
"""get db_key utf8""" |
"""get db_key utf8""" |
|
logging.debug("KEY - MPIWGStaff:"+self.getKey()) |
|
logging.debug("KEY - MPIWGStaff:"+utf8ify(self.getKey())) |
|
|
return utf8ify(self.getKey()) |
return utf8ify(self.getKey()) |
|
|
def setKey(self,key): |
def setKey(self,key): |
Line 121 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 126 class MPIWGStaff(CatalogAware,ZSQLExtend
|
return root.getConnectionObj() |
return root.getConnectionObj() |
except: |
except: |
return self.en.getConnectionObj() |
return self.en.getConnectionObj() |
|
|
def isPublished(self): |
def isPublished(self): |
"""gib publications status aus der datenbank aus""" |
"""gib publications status aus der datenbank aus""" |
key=self.getKey() |
key=self.getKey() |
Line 235 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 241 class MPIWGStaff(CatalogAware,ZSQLExtend
|
"""publish the image??, default no""" |
"""publish the image??, default no""" |
return getattr(self,'publishImage','no') |
return getattr(self,'publishImage','no') |
|
|
def updateImage(self,file,publishImage,rename=None,RESPONSE=None): |
def updateImage(self,publishImage,file=None,rename=None,RESPONSE=None): |
"""update image""" |
"""update image""" |
|
|
if file and not(file.filename==""): |
if file and not(file.filename==""): |
Line 316 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 322 class MPIWGStaff(CatalogAware,ZSQLExtend
|
""" |
""" |
return self.id |
return self.id |
|
|
|
def getConeUrl(self): |
|
"""gibt coneURL zurueck""" |
|
|
|
self.coneService=getattr(self, "coneServiceURL",coneService) |
|
logging.debug("coneservice:"+self.coneService) |
|
if self._v_cone==None: |
|
try: |
|
cone = urllib2.urlopen(self.coneService+self.getPersonID()) |
|
self._v_cone=cone.read() |
|
except: |
|
return None |
|
|
|
return self._v_cone |
|
|
|
|
|
|
|
|
def harvest_page_old(self,context=None): |
def harvest_page_old(self,context=None): |
"""geharvestete seite = verschlankte version von members_main""" |
"""geharvestete seite = verschlankte version von members_main""" |
#pt = getTemplate(self, "harvest_members_main") |
#pt = getTemplate(self, "harvest_members_main") |
Line 335 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 358 class MPIWGStaff(CatalogAware,ZSQLExtend
|
|
|
return pt() |
return pt() |
|
|
def harvest_page(self): |
def harvest_page(self,mode="normal"): |
"""harvest""" |
"""harvest""" |
|
|
if not self.isPublished(): |
if not self.isPublished(): |
return "" |
return |
return getattr(self.en.staff.members,self.getId()).index_html() |
st = getattr(self.en.staff.members,self.getId()).index_html(mode) |
|
|
|
templates = self.en.getHarvestCache() |
|
#templates = getattr(self,'getHarvestCache',self.en.getHarvestCache)() |
|
rendered = st |
|
templates[self.absolute_url()]=rendered |
|
|
|
return rendered |
|
|
def index_html(self): |
|
|
|
|
def index_html(self,mode="normal"): |
"""show homepage""" |
"""show homepage""" |
|
|
bound_names={} |
bound_names={} |
Line 368 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 400 class MPIWGStaff(CatalogAware,ZSQLExtend
|
# Got a cached value. |
# Got a cached value. |
return result |
return result |
|
|
|
# look for individual page |
|
if self.hasObject("index.html"): |
|
pt = getattr(self, "index.html") |
|
# else use template |
|
else: |
|
if mode=="slim": |
|
pt = getTemplate(self, "members_main_slim") |
|
else: |
pt = getTemplate(self, "members_main") |
pt = getTemplate(self, "members_main") |
# Execute the template in a new security context. |
# Execute the template in a new security context. |
security.addContext(self) |
security.addContext(self) |
Line 449 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 489 class MPIWGStaff(CatalogAware,ZSQLExtend
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','editMPIWGStaff.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','editMPIWGStaff.zpt')).__of__(self) |
|
|
|
|
logging.error("XX:"+email.Utils.formatdate().split("-")[0]+'GMT') |
logging.debug("XX:"+email.Utils.formatdate().split("-")[0]+'GMT') |
return pt() |
return pt() |
|
|
mainEditFile=PageTemplateFile(os.path.join(package_home(globals()),'zpt','editMPIWGStaff_main.zpt')) |
mainEditFile=PageTemplateFile(os.path.join(package_home(globals()),'zpt','editMPIWGStaff_main.zpt')) |
Line 578 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 618 class MPIWGStaff(CatalogAware,ZSQLExtend
|
"""get the profile""" |
"""get the profile""" |
self.REQUEST.RESPONSE.setHeader('Last-Modified',email.Utils.formatdate().split("-")[0]+'GMT') |
self.REQUEST.RESPONSE.setHeader('Last-Modified',email.Utils.formatdate().split("-")[0]+'GMT') |
|
|
founds=self.ZSQLInlineSearchU(_table='personal_www',key=self.getKey()) |
founds=self.ZSQLInlineSearchU(_table='personal_www',key=self.getKeyUTF8()) |
html="""<html><body>%s</body></html>""" |
html="""<html><body>%s</body></html>""" |
if founds.profile and founds.profile != "": |
if founds.profile and founds.profile != "": |
|
|
Line 630 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 670 class MPIWGStaff(CatalogAware,ZSQLExtend
|
"""erzeugt ein automatisches Profil aus den alten Eintraegen CV, Current work, und research interests""" |
"""erzeugt ein automatisches Profil aus den alten Eintraegen CV, Current work, und research interests""" |
|
|
ret="" |
ret="" |
|
#founds=self.ZSQLInlineSearch(_table='research_interest',key_main=person.getKeyUTF8()) |
founds=self.ZSQLInlineSearch(_table='research_interest',key_main=person.key) |
founds=self.ZSQLInlineSearch(_table='research_interest',key_main=person.key) |
if founds: |
if founds: |
ret="<p class=\"bio_section_header\">Research interests: </p><br/>" |
ret="<p class=\"bio_section_header\">Research interests: </p><br/>" |
Line 706 class MPIWGStaff(CatalogAware,ZSQLExtend
|
Line 747 class MPIWGStaff(CatalogAware,ZSQLExtend
|
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','editMainData.zpt')).__of__(self) |
pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','editMainData.zpt')).__of__(self) |
return pt() |
return pt() |
else: |
else: |
self.ZSQLChange(argv,_table="personal_www",_identify="key=%s"%self.getKeyUTF8(),USE_FORM="yes") |
self.ZSQLChange(argv,_table="personal_www",_identify="lower(key)=%s"%utf8ify(self.getKey().lower()),USE_FORM="yes") |
if RESPONSE: |
if RESPONSE: |
self.redirect(RESPONSE,"editMainData") |
self.redirect(RESPONSE,"editMainData") |
|
|