def setSmarthost(self, value): self.setModified(isModified=True) mail_inst = QMailObject.getInstance() mail_inst.pre_modify() mail_inst.mailcfg.smarthost = unicode(value) mail_inst.post_modify() # Notify exim page of modification mail = self.mainwindow.getPage('exim') mail.setMailModified(True)
def updateOutgoingNetworks(self): nets = [] for net in self.relayed_net.value(): net = unicode(net) nets.append(IP(net)) mail_inst = QMailObject.getInstance() mail_inst.pre_modify() mail_inst.mailcfg.relay_net_out = nets mail_inst.post_modify()
def updateConfig(self): entries = {} for domain, ip in self.relayed_domains.rawData(): domain = unicode(domain) ip = unicode(ip) if entries.has_key(domain): QMessageBox.warning(self, tr('incoming emails: invalid entries'), tr('Each domain must be unique (%s)') % unicode(domain)) else: entries[domain] = ip mail_inst = QMailObject.getInstance() mail_inst.pre_modify() mail_inst.mailcfg.relay_domain_in = entries mail_inst.post_modify()
def saveConf(self, message): assert self.spam_modified or self.mail_modified self.updateOutgoingNetworks() saveCalls = Multicall(self.client) # if needed: save antispam config, next mail config if self.spam_config is not None and self.spam_modified: saveCalls.addCall('antispam', "setAntispamConfig", self.spam_config.serialize(downgrade=True), message) if self.mail_modified: saveCalls.addCall('exim', "setMailConfig", QMailObject.getInstance().mailcfg.serialize(downgrade=True), message) saveCalls() self.mainwindow.addToInfoArea(tr("email configuration saved")) self.mail_modified = False self.spam_modified = False
def setAntivirusEnabled(self, value): self.setMailModified() mail_inst = QMailObject.getInstance() mail_inst.pre_modify() mail_inst.mailcfg.use_antivirus = bool(value) mail_inst.post_modify()
def isValid(self): is_valid, self.error_message = QMailObject.getInstance().mailcfg.isValid() if is_valid: is_valid, self.error_message = self.spam_config.isValid() return is_valid