def _process(self): error=[] if self._cancel: self._redirect(urlHandlers.UHAbstractModNotifTplDisplay.getURL(self._target)) return elif self._save: if len(self._toList)<=0: error.append( _("""At least one "To Address" must be seleted """)) p=WPModCFANotifTplEdit(self, self._target) return p.display(errorList=error, \ title=self._title, \ subject=self._subject, \ body=self._body, \ fromAddr=self._fromAddr, \ toList=self._toList, \ ccList=self._ccList) else: self._notifTpl.setName(self._title) self._notifTpl.setDescription(self._description) self._notifTpl.setTplSubject(self._subject, EmailNotificator.getVarList()) self._notifTpl.setTplBody(self._body, EmailNotificator.getVarList()) self._notifTpl.setFromAddr(self._fromAddr) self._notifTpl.setCCAddrList(self._ccList) self._notifTpl.setCAasCCAddr(self._CAasCCAddr) self._notifTpl.clearToAddrs() for toAddr in self._toList: toAddrWrapper=NotifTplToAddrsFactory.getToAddrById(toAddr) if toAddrWrapper: toAddrWrapper.addToAddr(self._notifTpl) self._redirect(urlHandlers.UHAbstractModNotifTplDisplay.getURL(self._target)) return else: p=WPModCFANotifTplEdit(self, self._target) return p.display()
def getVars(self): vars = wcomponents.WTemplated.getVars(self) vars["name"] = self._notifTpl.getName() vars["description"] = self._notifTpl.getDescription() vars["From"] = self._notifTpl.getFromAddr() vars["toAddrs"] = self._getToAddrsHTML() ccAddrs = ", ".join(self._notifTpl.getCCAddrList()) if self._notifTpl.getCAasCCAddr(): if ccAddrs == "": ccAddrs = "Co-Authors" else: ccAddrs += ", Co-Authors" vars["CCAddrs"] = ccAddrs vars["subject"] = self._notifTpl.getTplSubjectShow( EmailNotificator.getVarList()) vars["body"] = self._notifTpl.getTplBodyShow( EmailNotificator.getVarList()) vars["conditions"] = self._getConditionsHTML() vars["availableConditions"] = self._getConditionItemsHTML() vars["remConditionsURL"] = quoteattr( str( urlHandlers.UHConfModNotifTplConditionRem.getURL( self._notifTpl))) vars["newConditionURL"] = quoteattr( str( urlHandlers.UHConfModNotifTplConditionNew.getURL( self._notifTpl))) vars["modifDataURL"] = quoteattr( str(urlHandlers.UHAbstractModNotifTplEdit.getURL(self._notifTpl))) vars["contribTypeList"] = self._conf.as_event.contribution_types.all() vars["trackList"] = self._conf.getTrackList() return vars
def getVars(self): vars=wcomponents.WTemplated.getVars(self) vars["postURL"] = quoteattr(str(urlHandlers.UHAbstractModNotifTplEdit.getURL(self._notifTpl))) vars["errors"] = vars.get("errorList",[]) if not vars.has_key("title"): vars["title"] = quoteattr(str(self._notifTpl.getName())) else: vars["title"] = quoteattr(str(vars["title"])) if not vars.has_key("description"): vars["description"] = self.htmlText(self._notifTpl.getDescription()) else: vars["description"] = self.htmlText(vars["description"]) if not vars.has_key("subject"): vars["subject"] = quoteattr(str(self._notifTpl.getTplSubjectShow(EmailNotificator.getVarList()))) else: vars["subject"] = quoteattr(str(vars["subject"])) if not vars.has_key("body"): vars["body"] = self.htmlText(self._notifTpl.getTplBodyShow(EmailNotificator.getVarList())) else: vars["body"] = self.htmlText(vars["body"]) if not vars.has_key("fromAddr"): vars["fromAddr"] = quoteattr(str(self._notifTpl.getFromAddr())) else: vars["fromAddr"] = quoteattr(str(vars["fromAddr"])) vars["toAddrsList"] = NotifTplToAddrsFactory.getToAddrList() vars["notifTpl"] = self._notifTpl if not vars.has_key("ccList"): vars["CCAddrs"] = quoteattr(str(", ".join(self._notifTpl.getCCAddrList()))) else: vars["CCAddrs"] = quoteattr(str(", ".join(vars["ccList"]))) vars["CAasCCAddr"] = self._notifTpl.getCAasCCAddr() return vars
def _setValues(self): self._notifTpl.setName(self._title) self._notifTpl.setDescription(self._description) self._notifTpl.setTplSubject(self._subject, EmailNotificator.getVarList()) self._notifTpl.setTplBody(self._body, EmailNotificator.getVarList()) self._notifTpl.setFromAddr(self._fromAddr) self._notifTpl.setCCAddrList(self._ccList) self._notifTpl.setCAasCCAddr(self._CAasCCAddr) self._notifTpl.clearToAddrs() for toAddr in self._toList: toAddrWrapper=NotifTplToAddrsFactory.getToAddrById(toAddr) if toAddrWrapper: toAddrWrapper.addToAddr(self._notifTpl)
def _process(self): if self._cancel: self._redirect( urlHandlers.UHAbstractReviewingNotifTpl.getURL(self._conf)) return elif self._save: if len(self._toList) <= 0: raise NoReportError( _("""At least one "To Address" must be selected""")) elif self._tplCondition is None: #TODO: translate raise NoReportError(_("Choose a condition")) else: tpl = review.NotificationTemplate() tpl.setName(self._title) tpl.setDescription(self._description) tpl.setTplSubject(self._subject, EmailNotificator.getVarList()) tpl.setTplBody(self._body, EmailNotificator.getVarList()) tpl.setFromAddr(self._fromAddr) tpl.setCCAddrList(self._ccList) tpl.setCAasCCAddr(self._CAasCCAddr) for toAddr in self._toList: toAddrWrapper = NotifTplToAddrsFactory.getToAddrById( toAddr) if toAddrWrapper: toAddrWrapper.addToAddr(tpl) self._conf.getAbstractMgr().addNotificationTpl(tpl) # Add the condition condWrapper = NotifTplConditionsFactory.getConditionById( self._tplCondition) if condWrapper: condWrapper.addCondition(tpl, **self._otherData) self._redirect( urlHandlers.UHAbstractModNotifTplDisplay.getURL(tpl)) return p = WPModCFANotifTplNew(self, self._target) return p.display(title = self._title,\ description = self._description,\ subject = self._subject,\ body = self._body,\ fromAddr = self._fromAddr,\ toList = self._toList,\ ccList = self._ccList)
def _process(self): error = [] if self._cancel: self._redirect(urlHandlers.UHAbstractReviewingNotifTpl.getURL( self._conf ) ) return elif self._save: if len(self._toList) <= 0: error.append( _("""At least one "To Address" must be selected""")) elif self._tplCondition is None: #TODO: translate error.append( _("Choose a condition")) else: tpl = review.NotificationTemplate() tpl.setName(self._title) tpl.setDescription(self._description) tpl.setTplSubject(self._subject, EmailNotificator.getVarList()) tpl.setTplBody(self._body, EmailNotificator.getVarList()) tpl.setFromAddr(self._fromAddr) tpl.setCCAddrList(self._ccList) tpl.setCAasCCAddr(self._CAasCCAddr) for toAddr in self._toList: toAddrWrapper = NotifTplToAddrsFactory.getToAddrById(toAddr) if toAddrWrapper: toAddrWrapper.addToAddr(tpl) self._conf.getAbstractMgr().addNotificationTpl(tpl) # Add the condition condWrapper = NotifTplConditionsFactory.getConditionById(self._tplCondition) if condWrapper: condWrapper.addCondition(tpl, **self._otherData) self._redirect(urlHandlers.UHAbstractModNotifTplDisplay.getURL(tpl)) return p = WPModCFANotifTplNew(self,self._target) return p.display(title = self._title,\ description = self._description,\ subject = self._subject,\ body = self._body,\ fromAddr = self._fromAddr,\ toList = self._toList,\ ccList = self._ccList,\ errorList = error)
def getVars(self): vars = wcomponents.WTemplated.getVars(self) vars["postURL"] = quoteattr( str(urlHandlers.UHAbstractModNotifTplEdit.getURL(self._notifTpl))) vars["errors"] = vars.get("errorList", []) if "title" not in vars: vars["title"] = quoteattr(str(self._notifTpl.getName())) else: vars["title"] = quoteattr(str(vars["title"])) if "description" not in vars: vars["description"] = self.htmlText( self._notifTpl.getDescription()) else: vars["description"] = self.htmlText(vars["description"]) if "subject" not in vars: vars["subject"] = quoteattr( str( self._notifTpl.getTplSubjectShow( EmailNotificator.getVarList()))) else: vars["subject"] = quoteattr(str(vars["subject"])) if "body" not in vars: vars["body"] = self.htmlText( self._notifTpl.getTplBodyShow(EmailNotificator.getVarList())) else: vars["body"] = self.htmlText(vars["body"]) if "fromAddr" not in vars: vars["fromAddr"] = quoteattr(str(self._notifTpl.getFromAddr())) else: vars["fromAddr"] = quoteattr(str(vars["fromAddr"])) vars["toAddrsList"] = NotifTplToAddrsFactory.getToAddrList() vars["notifTpl"] = self._notifTpl if "ccList" not in vars: vars["CCAddrs"] = quoteattr( str(", ".join(self._notifTpl.getCCAddrList()))) else: vars["CCAddrs"] = quoteattr(str(", ".join(vars["ccList"]))) vars["CAasCCAddr"] = self._notifTpl.getCAasCCAddr() return vars
def _process(self): if self._cancel: self._redirect( urlHandlers.UHAbstractModNotifTplDisplay.getURL(self._target)) return elif self._save: if len(self._toList) <= 0: raise NoReportError( _("""At least one "To Address" must be seleted """)) p = WPModCFANotifTplEdit(self, self._target) return p.display(title=self._title, subject=self._subject, body=self._body, fromAddr=self._fromAddr, toList=self._toList, ccList=self._ccList) else: self._notifTpl.setName(self._title) self._notifTpl.setDescription(self._description) self._notifTpl.setTplSubject(self._subject, EmailNotificator.getVarList()) self._notifTpl.setTplBody(self._body, EmailNotificator.getVarList()) self._notifTpl.setFromAddr(self._fromAddr) self._notifTpl.setCCAddrList(self._ccList) self._notifTpl.setCAasCCAddr(self._CAasCCAddr) self._notifTpl.clearToAddrs() for toAddr in self._toList: toAddrWrapper = NotifTplToAddrsFactory.getToAddrById( toAddr) if toAddrWrapper: toAddrWrapper.addToAddr(self._notifTpl) self._redirect( urlHandlers.UHAbstractModNotifTplDisplay.getURL( self._target)) return else: p = WPModCFANotifTplEdit(self, self._target) return p.display()
def getVars(self): vars = wcomponents.WTemplated.getVars(self) vars["name"] = self._notifTpl.getName() vars["description"] = self._notifTpl.getDescription() vars["From"] = self._notifTpl.getFromAddr() vars["toAddrs"] = self._getToAddrsHTML() ccAddrs = ", ".join(self._notifTpl.getCCAddrList()) if self._notifTpl.getCAasCCAddr(): if ccAddrs == "": ccAddrs = "Co-Authors" else: ccAddrs += ", Co-Authors" vars["CCAddrs"] = ccAddrs vars["subject"] = self._notifTpl.getTplSubjectShow(EmailNotificator.getVarList()) vars["body"] = self._notifTpl.getTplBodyShow(EmailNotificator.getVarList()) vars["conditions"] = self._getConditionsHTML() vars["availableConditions"] = self._getConditionItemsHTML() vars["remConditionsURL"] = quoteattr(str(urlHandlers.UHConfModNotifTplConditionRem.getURL(self._notifTpl))) vars["newConditionURL"] = quoteattr(str(urlHandlers.UHConfModNotifTplConditionNew.getURL(self._notifTpl))) vars["modifDataURL"] = quoteattr(str(urlHandlers.UHAbstractModNotifTplEdit.getURL(self._notifTpl))) vars["contribTypeList"] = self._conf.getContribTypeList() vars["trackList"] = self._conf.getTrackList() return vars
def _process(self): errMsg = "" if self._action == "MERGE": errorList = self._getErrorsInData() if len(errorList) == 0: self._target.mergeInto(self._getUser(), self._targetAbs, comments=self._comments, mergeAuthors=self._includeAuthors) if self._doNotify: self._target.notify(EmailNotificator(), self._getUser()) self._redirect( urlHandlers.UHAbstractManagment.getURL(self._target)) return else: errMsg = "<br>".join(errorList) p = abstracts.WPModMergeInto(self, self._target) return p.display(comments=self._comments, targetId=self._targetAbsId, errorMsg=errMsg, includeAuthors=self._includeAuthors, notify=self._doNotify)
def _process( self ): if self._reject: st=review.AbstractStatusRejected(self._target,None,None) wrapper=_AbstractWrapper(st) tpl=self._target.getOwner().getNotifTplForAbstract(wrapper) if self._doNotify and not self._warningShown and tpl is None: p=abstracts.WPModRejectConfirmation(self,self._target) return p.display(comments=self._comments) else: self._target.reject(self._getUser(), self._comments) if self._doNotify: n=EmailNotificator() self._target.notify(n,self._getUser()) self._redirect(urlHandlers.UHAbstractManagment.getURL(self._target)) else: p = abstracts.WPAbstractManagmentReject( self, self._target ) return p.display( **self._getRequestParams() )
def _process( self ): if self._accept: cType=self._conf.getContribTypeById(self._typeId) st=review.AbstractStatusAccepted(self._target,None,self._track,cType) wrapper=_AbstractWrapper(st) tpl=self._target.getOwner().getNotifTplForAbstract(wrapper) if self._doNotify and not self._warningShown and tpl is None: p=abstracts.WPModAcceptConfirmation(self,self._target) return p.display(track=self._trackId,comments=self._comments,type=self._typeId,session=self._sessionId) else: self._target.accept(self._getUser(),self._track,cType,self._comments,self._session) if self._doNotify: n=EmailNotificator() self._target.notify(n,self._getUser()) self._redirect(urlHandlers.UHAbstractManagment.getURL(self._abstract)) else: p = abstracts.WPAbstractManagmentAccept( self, self._target ) return p.display( **self._getRequestParams() )
def getVars(self): vars = wcomponents.WTemplated.getVars(self) conf = self._notifTpl.getConference() vars["conf"] = conf if conf.getAbstractMgr().getAbstractList(): abstract = conf.getAbstractMgr().getAbstractList()[0] notif = EmailNotificator().apply(abstract, self._notifTpl) vars["From"] = notif.getFromAddr() vars["to"] = ", ".join(notif.getToList()) vars["cc"] = ", ".join(notif.getCCList()) vars["subject"] = notif.getSubject() vars["body"] = notif.getBody() else: vars["From"] = vars["to"] = vars["cc"] = vars["subject"]= _("No preview available") vars["body"] = _("An abstract must be submitted to display the preview") vars["cfaURL"] = quoteattr(str(urlHandlers.UHConfModifCFA.getURL(conf))) return vars
def _notifyStatus(self, status): wrapper = _AbstractWrapper(status) tpl = self._abstract.getOwner().getNotifTplForAbstract(wrapper) if self._doNotify and tpl: n = EmailNotificator() self._abstract.notify(n, self._getUser())