--- MPIWGWeb/MPIWGStaff.py 2012/01/03 09:26:45 1.10.2.78 +++ MPIWGWeb/MPIWGStaff.py 2012/12/07 10:12:56 1.10.2.87 @@ -26,6 +26,8 @@ import email import re from OFS.Cache import Cacheable import urllib2 +import transaction +import SrvTxtUtils from MPIWGHelper import * #ersetzt logging @@ -80,7 +82,7 @@ class MPIWGStaff(CatalogAware,ZSQLExtend meta_type="MPIWGStaff" default_catalog='MembersCatalog' departmentList=departmentList - _v_cone=None; + #_v_cone=None; security=ClassSecurityInfo() def redirect(self,RESPONSE,url): @@ -99,15 +101,26 @@ class MPIWGStaff(CatalogAware,ZSQLExtend def getKeyUTF8(self): """get db_key utf8""" + logging.debug("KEY - MPIWGStaff 1:"+self.getKey()) + logging.debug("KEY - MPIWGStaff 2 :"+utf8ify(self.getKey())) + return utf8ify(self.getKey()) def setKey(self,key): """set key""" self.key=key + def rmKey(self): + """rm""" + self.key=None + return "" + def getKey(self): """get database key""" - if hasattr(self,'key'): + + + if getattr(self,'key',None): + logging.debug("KEY - MPIWGStaff 4:"+self.key) #logging.error("SAVED KEY:%s"%self.key) return unicodify(self.key.lower()) #return self.key.lower() @@ -324,12 +337,18 @@ class MPIWGStaff(CatalogAware,ZSQLExtend self.coneService=getattr(self, "coneServiceURL",coneService) logging.debug("coneservice:"+self.coneService) - if self._v_cone==None: + + if getattr(self,'_v_cone',None)==None: try: - cone = urllib2.urlopen(self.coneService+self.getPersonID()) - self._v_cone=cone.read() + + self._v_cone=SrvTxtUtils.getHttpData(self.coneService+self.getPersonID()) + #cone = urllib2.urlopen(self.coneService+self.getPersonID()) + #self._v_cone=cone.read() + if self._v_cone==None: + self._v_cone="" except: - return None + self._v_cone="" + return "" return self._v_cone @@ -355,15 +374,23 @@ class MPIWGStaff(CatalogAware,ZSQLExtend return pt() - def harvest_page(self): + def harvest_page(self,mode="normal"): """harvest""" + logging.debug("AAAAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX") if not self.isPublished(): - return "" - st = getattr(self.en.staff.members,self.getId()).index_html() - return st + return + 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 + transaction.commit() + return rendered + - def index_html(self): + def index_html(self,mode="normal"): """show homepage""" bound_names={} @@ -394,7 +421,10 @@ class MPIWGStaff(CatalogAware,ZSQLExtend pt = getattr(self, "index.html") # else use template else: - pt = getTemplate(self, "members_main") + if mode=="slim": + pt = getTemplate(self, "members_main_slim") + else: + pt = getTemplate(self, "members_main") # Execute the template in a new security context. security.addContext(self) @@ -459,7 +489,8 @@ class MPIWGStaff(CatalogAware,ZSQLExtend self.firstName=firstName if key: self.key = key - + + if RESPONSE is not None: self.redirect(RESPONSE,'manage_main') @@ -700,6 +731,7 @@ class MPIWGStaff(CatalogAware,ZSQLExtend self.ZSQLQuery(query%(self.ZSQLQuote(awards),oid)) + if RESPONSE: self.redirect(RESPONSE,"editAwards") @@ -734,6 +766,15 @@ class MPIWGStaff(CatalogAware,ZSQLExtend return pt() else: self.ZSQLChange(argv,_table="personal_www",_identify="lower(key)=%s"%utf8ify(self.getKey().lower()),USE_FORM="yes") + # aendere auch dien enstsprechen infos in der instance + self.changeMPIWGStaff(argv['last_name'],argv['first_name']); + + + + self.reindex_object() + + + if RESPONSE: self.redirect(RESPONSE,"editMainData")