def _make_new_vcard(self, handle, name, kind): l = [ VCardLine(name='fn', value=name), VCardLine(name='kind', value=kind) ] if self.KIND in VCardStore.KINDS_PEOPLE: return MailpileVCard( VCardLine(name='email', value=handle, type='pref'), *l) else: return MailpileVCard(VCardLine(name='nickname', value=handle), *l)
def _get_or_create_vcard(self, address): vcard = self.session.config.vcards.get_vcard(address) if not vcard: vcard = MailpileVCard(VCardLine(name='email', value=address, type='pref'), VCardLine(name='kind', value='individual'), config=self.session.config) self.session.config.vcards.add_vcards(vcard) return vcard
def get_vcards(self): if not self.config.active: return [] def _b64(data): return data.encode('base64').replace('\n', '') results = [] for contact in self._want_update(): email = contact.email if not email: continue if mailpile.util.QUITTING: return [] vcard = MailpileVCard(VCardLine(name=self.VCARD_TS, value=int(time.time()))) email, img, gcard, gjson = self.check_libravatar(contact, email) if gcard: # FIXME: Is this boring? # vcard.load(data=gcard) pass if gjson: # FIXME: This is less boring! pass if img: vcard.add(VCardLine( name='photo', value='data:image/jpeg;base64,%s' % _b64(img), mediatype='image/jpeg' )) if gcard or gjson or img: vcard.add(VCardLine(name='email', value=email)) results.append(vcard) return results
def get_vcards(self): if not self.config.active: return [] def _b64(data): return data.encode('base64').replace('\n', '') results = [] for contact in self._want_update(): email = contact.email if not email: continue if mailpile.util.QUITTING: return [] vcard = MailpileVCard(VCardLine(name=self.VCARD_TS, value=int(time.time()))) email, img, gcard, gjson = self.check_libravatar(contact, email) if gcard: # FIXME: Is this boring? # vcard.load(data=gcard) pass if gjson: # FIXME: This is less boring! pass if img: vcard.add(VCardLine( name='photo', value='data:image/jpeg;base64,%s' % _b64(img), mediatype='image/jpeg' )) if gcard or gjson or img: vcard.add(VCardLine(name='email', value=email)) results.append(vcard) return results
def _add_vcard(self, full_name, email): card = MailpileVCard(VCardLine(name='fn', value=full_name), VCardLine(name='email', value=email)) self.config.vcards.add_vcards(card) return card
mailpile.i18n.ActivateTranslation(None, ConfigManager, None) config = ConfigManager(rules=mailpile.config.defaults.CONFIG_RULES) cfg = config with open('/tmp/pass', 'rb') as fort1f3: p1 = fort1f3.read() pass2 = SecurePassphraseStorage(p1) cfg.load_master_key(pass2) session = Session(config) cli_ui = session.ui = UserInteraction(config) session.main = True config.clean_tempfile_dir() config.load(session) session.config = cfg vcard = MailpileVCard() vcard.kind = 'profile' with open('/tmp/mail', 'rb') as fort3f3: mail = fort3f3.read() with open('/tmp/fn', 'rb') as fort2f3: fn = fort2f3.read() mail.replace("\n", "") fn.replace("\n", "") mail = ''.join(mail.splitlines()) fn = ''.join(fn.splitlines()) data = { 'name': [fn], 'email': [mail], 'route-protocol': ['smtp'], 'route-host': ['::1'], 'route-port': ['25'],
mailpile.i18n.ActivateTranslation(None, ConfigManager, None) config = ConfigManager(rules=mailpile.config.defaults.CONFIG_RULES) cfg=config with open('/tmp/pass', 'rb') as fort1f3:p1=fort1f3.read() pass2 = SecurePassphraseStorage(p1) cfg.load_master_key(pass2) session = Session(config) cli_ui = session.ui = UserInteraction(config) session.main = True config.clean_tempfile_dir() config.load(session) session.config=cfg vcard = MailpileVCard() vcard.kind='profile' with open('/tmp/mail', 'rb') as fort3f3:mail=fort3f3.read() with open('/tmp/fn', 'rb') as fort2f3:fn=fort2f3.read() mail.replace("\n", "") fn.replace("\n","") mail=''.join(mail.splitlines()) fn=''.join(fn.splitlines()) data= {'name': [fn], 'email': [mail],'route-protocol':['smtp'],'route-host':['::1'],'route-port':['25'],'route-auth_type':['none']} command=Command(session,data=data) command.session=session addvcard=AddVCard(VCardCommand(command)) addvcard.session=session profile=AddProfile(addvcard) profile.session=session;