--- MPIWGWeb/MPIWGStaff.py 2008/09/02 09:06:32 1.10.2.54 +++ MPIWGWeb/MPIWGStaff.py 2008/09/05 14:08:24 1.10.2.57 @@ -21,6 +21,9 @@ from AccessControl import ClassSecurityI import time import logging import email +import re + +from MPIWGHelper import * #ersetzt logging def logger(txt,method,txt2): """logging""" @@ -53,8 +56,8 @@ def createNewDBEntry(self,publish_the_da return False,"ERROR:key%s already exists"%key #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" """ - 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) + 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 """ + 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") insert=[] for element in insertTuple: @@ -69,10 +72,10 @@ def createNewDBEntry(self,publish_the_da self.ZSQLQuery(queryStr) logging.info("QQQQ %s:"%queryStr) #currentwork - if not (current_work==""): - queryStr="INSERT INTO current_work (key_main,current,publish) VALUES ('%s',%s,'%s')"%(key,self.ZSQLQuote(current_work),"yes") + #if not (current_work==""): + # queryStr="INSERT INTO current_work (key_main,current,publish) VALUES ('%s',%s,'%s')"%(key,self.ZSQLQuote(current_work),"yes") - self.ZSQLQuery(queryStr) + # self.ZSQLQuery(queryStr) return True,msg class MPIWGStaff(CatalogAware,ZSQLExtendFolder): @@ -97,12 +100,19 @@ class MPIWGStaff(CatalogAware,ZSQLExtend logging.error(email.Utils.formatdate()+' GMT') RESPONSE.redirect(url+addStr%timeStamp) + def getKeyUTF8(self): + """get db_key utf8""" + return utf8ify(self.getKey()) + def getKey(self): """get database key""" if hasattr(self,'key'): - return self.key.lower() + #logging.error("SAVED KEY:%s"%self.key) + return unicodify(self.key.lower()) + #return self.key.lower() #fuer alt faelle ohne key + #logging.error("NEW KEY:%s"%(self.firstName+'_'+self.lastName).lower().replace(' ','')) return (self.firstName+'_'+self.lastName).lower().replace(' ','') def getConnectionObj(self):#ueberschreibe connection id methode @@ -303,11 +313,32 @@ class MPIWGStaff(CatalogAware,ZSQLExtend """ return self.id - def harvest_page(self): + def harvest_page_old(self,context=None): """geharvestete seite = verschlankte version von members_main""" - pt = getTemplate(self, "harvest_members_main") + #pt = getTemplate(self, "harvest_members_main") + + if not self.isPublished(): + return "" + if not context: + context=self + + + ext=getattr(self,"harvest_members_main",None) + if ext: + return getattr(self,ext.getId())() + + pt=PageTemplateFile(os.path.join(package_home(globals()),'zpt','harvest_members_main')).__of__(context) + + return pt() + def harvest_page(self): + """harvest""" + if not self.isPublished(): + return "" + return getattr(self.en.staff.members,self.getId()).index_html() + + def index_html(self): """show homepage""" pt = getTemplate(self, "members_main") @@ -720,6 +751,7 @@ class MPIWGStaff(CatalogAware,ZSQLExtend self.redirect(RESPONSE,self.REQUEST['HTTP_REFERER']) + security.declareProtected('View management screens','addPublications') def addPublications(self,submit=None,REQUEST=None,noredirect=None,RESPONSE=None): """add publications"""