mail.py 709 Bytes
import os
from .models import (
    Antrian,
    Mail,
    File,
    )


def kirim(db_session, p):
    a = Antrian(kirim=True, jalur=6, penerima=p['penerima'], pesan=p['pesan'])
    if 'pengirim' in p:
        a.pengirim = p['pengirim']
    db_session.add(a)
    db_session.flush()  # Dapatkan nilai id
    m = Mail(id=a.id)
    m.subject = 'subject' in p and p['subject'] or ''
    m.name = 'name' in p and p['name'] or ''
    db_session.add(m)
    if 'files' in p:
        i = 0
        for filename, content in p['files']:
            i += 1
            fname = os.path.split(filename)[-1]
            f = File(id=a.id, urutan=i, filename=fname, content=content)
            db_session.add(f)
    return a