def service_setAntispamConfig(self, context, serialized, message): new_cfg = AntispamConf.deserialize(serialized) if new_cfg.isValid(): self.config = new_cfg self.save_config(message, context) else: raise NuConfError(ANTISPAM_BAD_CONFIGURATION, "invalid new configuration")
def resetConf(self): try: serialized = self.mainwindow.init_call('antispam', 'getAntispamConfig') self.spam_config = AntispamConf.deserialize(serialized) except: self.spam_config = None mail_inst = QMailObject.getInitializedInstance(self.client) self.antivirus_enable.setChecked(mail_inst.mailcfg.use_antivirus) if self.spam_config is not None: self.antispam_enable.setChecked(self.spam_config.use_antispam) self.mark_spam_level.setValue(self.spam_config.mark_spam_level) self.mark_spam_level.setMaximumWidth(self.mark_spam_level.fontMetrics().averageCharWidth() * 10) self.deny_spam_level.setValue(self.spam_config.deny_spam_level) self.deny_spam_level.setMaximumWidth(self.deny_spam_level.fontMetrics().averageCharWidth() * 10) if not self.spam_config.use_antispam: self.mark_spam_level.setEnabled(False) self.deny_spam_level.setEnabled(False) relayed_domains_data = [] for domain, ip in mail_inst.mailcfg.relay_domain_in.iteritems(): relayed_domains_data.append([domain, ip]) self.relayed_domains.reset(relayed_domains_data) self.relayed_net.setIpAddrs(mail_inst.mailcfg.relay_net_out)
def addAntispamConfig(self, context, templates_variables, responsible): try: serialized_antispam_cfg = yield self.core.callService(context, 'antispam', 'getAntispamConfig') antispam_cfg = AntispamConf.deserialize(serialized_antispam_cfg) except Exception, err: self.writeError(err) responsible.feedback(tr("Unreadable antispam configuration")) use_antispam = False
def _read_config(self): serialized = self.core.config_manager.get(self.NAME) return AntispamConf.deserialize(serialized)