Example #1
0
def complete_and_send(m, subject, content):
    sender = wleconfirm.confirmation_sender(m)
    wlelog.log(3, 'Sending %s to %s' % (subject, sender))
    rfrom = "WLE email program <%s>" % sender
    rto = email.Utils.formataddr \
          ((wleconfig.config.get ('DEFAULT', 'myname'), sender))
    r = MIMEText(content, 'plain', wleconfig.config.get('DEFAULT', 'charset'))
    wlemail.complete_message(r, rfrom, rto, subject)
    wlemail.add_magic(r)
    wleconfirm.deliver_mail(r, 'mailbox')
Example #2
0
def complete_and_send (m, subject, content):
    sender = wleconfirm.confirmation_sender (m)
    wlelog.log (3, 'Sending %s to %s' % (subject, sender))
    rfrom = "WLE email program <%s>" % sender
    rto = email.Utils.formataddr \
          ((wleconfig.config.get ('DEFAULT', 'myname'), sender))
    r = MIMEText (content, 'plain',
                  wleconfig.config.get ('DEFAULT', 'charset'))
    wlemail.complete_message (r, rfrom, rto, subject)
    wlemail.add_magic (r)
    wleconfirm.deliver_mail (r, 'mailbox')
Example #3
0
def vacation_message (m):
    db = wledb.connect_db ()
    recipient = wlemail.senders(m)[0]
    recipient_email = recipient[1]
    target = email.Utils.formataddr (recipient)
    c = db.cursor ()
    c.execute ("select stamp from vacation where email='%s'" % recipient_email)
    if c.rowcount > 0 and time.time () - float(c.fetchone()[0]) < \
       86400 * wleconfig.config.getint ('DEFAULT', 'vacation_days'):
        wlelog.log (8, "Not sending duplicate vacation message to %s" % target)
        return None
    c.execute ("insert into vacation values ('%s', %f)" %
               (recipient_email, time.time ()))
    db.commit ()
    my_name = wleconfig.config.get ('DEFAULT', 'myname')
    my_addr = wleconfirm.confirmation_sender (m)
    subject = m['subject'] or "..."
    subject = wleconfirm.decoded_header (subject)
    trimmed_subject = wlemail.canonical_subject (subject)
    t = open (wleconfig.config.get('DEFAULT', 'vacation_msg'), 'r').read() % \
        {'target_name' :    recipient[0],
         'target_email':    recipient_email,
         'target':          target,
         'subject':         subject,
         'trimmed_subject': trimmed_subject,
         'my_name':         my_name,
         'my_addr':         my_addr}
    r = MIMEText (t, 'plain', wleconfig.config.get ('DEFAULT', 'charset'))
    try: r['In-Reply-To'] = m.get ('message-id')
    except: pass
    rsubject = wlemail.make_answer (subject)
    r['Precedence'] = 'junk'
    rfrom = email.Utils.formataddr ((my_name, my_addr))
    wlelog.log (3, "Sending vacation message to %s" % target)
    wlemail.complete_message (r, rfrom, target, rsubject)
    wlemail.add_action (m, "Vacation message sent")
    return r