def isubscriptions(): """Return an iterator of subscription information.""" keys_iter = db.ikeys('email_sub') while True: key = keys_iter.next() if key is not None: sub = db.get('email_sub', key) if sub is not None: yield key, sub
def delta_report_updated(domain): """Retrieve when a delta report was last updated, or None.""" updated = db.get('delta_report_updated', domain) if updated is not None: return db.from_db_datetime(updated)
def get_delta_report(domain): """Retrieve the delta report for a domain, or None.""" return db.get('delta_report', domain)
def get_resolution_report(domain): """Retrieve the resolution report for a domain, or None.""" return db.get('resolution_report', domain)
def is_domain_registered(domain): """Return whether a domain is registered for reporting.""" return db.get('registered_for_reporting', domain) is True
def subscribed_domain(sub_id): """Return what domain the subscription is for.""" subscription = db.get('email_sub', sub_id) if subscription is not None: return subscription['domain']
def email_last_send_for_sub(sub_id): """Return when an email was last sent for a subscription, or None.""" last_sent = db.get('email_sub_last_sent', sub_id) if last_sent is not None: return db.from_db_datetime(last_sent)
def email_last_send_for_sub(sub_id): """Return when an email was last sent for a subscription, or None.""" last_sent = db.get('email_sub_last_sent', sub_id) if last_sent is not None: return datetime.datetime.strptime(last_sent, db.datetime_format)
def delta_report_last_read(domain): """Retrieve the "last-read" date for delta report.""" last_read = db.get('delta_report_read', domain) if last_read is not None: return datetime.datetime.strptime(last_read, db.datetime_format)
def delta_report_updated(domain): """Retrieve when a delta report was last updated, or None.""" updated = db.get('delta_report_updated', domain) if updated is not None: return datetime.datetime.strptime(updated, db.datetime_format)
def delta_report_last_read(domain): """Retrieve the "last-read" date for delta report.""" last_read = db.get('delta_report_read', domain) if last_read is not None: return db.from_db_datetime(last_read)
def get_proposition(verify_code): """Retrieve the proposition for a verify code (or None).""" return db.get('email_sub_pending', verify_code)