Exemple #1
0
def save_email(sender,
               sender_name,
               receiver,
               receiver_name,
               subject,
               emessage,
               _get_id,
               data,
               db=None,
               **kwargs):

    if not db:
        _db = get_db()
    else:
        _db = db

    dbc = _db.cursor()
    rdb = get_redis_db()

    if sender_name is None:
        sender_name = sender
    if receiver_name is None:
        receiver_name = receiver

    from MySQLdb import IntegrityError
    try:
        dbc.execute(
            'insert into mail_queue (id, sender, sender_name, receiver, receiver_name, time_created, subject, message, data) values (%s,%s,%s,%s,%s,now(),%s,%s,%s)',
            (None, sender, sender_name, receiver, receiver_name, subject,
             emessage, data))

        # print (dbc._last_executed)
    except IntegrityError as e:
        log.critical('Inserting mail queue: {}'.format(e))
        return False, msgs.CANNOT_SAVE_MESSAGE, None

    _db.commit()
    m_id = dbc.lastrowid

    r_data = {
        'id': m_id,
        'sender': sender,
        'sender_name': sender_name,
        'receiver': receiver,
        'receiver_name': receiver_name,
        'subject': subject,
        'message': emessage
    }

    r_data = json.dumps(r_data, ensure_ascii=False)

    from config import send_mail_config

    __SVC_PORT = send_mail_config.SVC_PORT
    rdb.lpush("{} {}".format(MAIL_CHANNEL, __SVC_PORT), r_data)

    if _get_id:
        return True, None, m_id

    return True, None, None
Exemple #2
0
def __set_session_token_in_redis(uid, tk):

    r = get_redis_db()
    n = datetime.datetime.now()
    n = str(n)[:19]

    _rd = {'created': n, 'id_user': uid}
    r.set(tk, json.dumps(_rd, ensure_ascii=False))
Exemple #3
0
def __set_session_token_in_redis(uid, tk):

    r = get_redis_db()
    n = datetime.datetime.now()
    n = str(n)[:19]

    _rd = {"created": n, "id_user": uid}
    r.set(tk, json.dumps(_rd, ensure_ascii=False))
Exemple #4
0
def __set_session_token_in_redis(uid, tk):

    r = get_redis_db()
    n = datetime.datetime.now()
    n = str(n)[:19]

    _rd = {
        'created': n,
        'id_user': uid
    }
    r.set(tk, json.dumps(_rd))
Exemple #5
0
def save_email(sender, sender_name, receiver, receiver_name, subject, emessage, _get_id, data, db=None, **kwargs):

    if not db:
        _db = get_db()
    else:
        _db = db
    
    dbc = _db.cursor()
    rdb = get_redis_db()

    if sender_name is None:
        sender_name = sender
    if receiver_name is None:
        receiver_name = receiver

    from MySQLdb import IntegrityError
    try:
        dbc.execute('insert into mail_queue (id, sender, sender_name, receiver, receiver_name, time_created, subject, message, data) values (%s,%s,%s,%s,%s,now(),%s,%s,%s)',
                    (None, sender, sender_name, receiver, receiver_name, subject, emessage, data))

        # print (dbc._last_executed)
    except IntegrityError as e:
        log.critical('Inserting mail queue: {}'.format(e))
        return False, msgs.CANNOT_SAVE_MESSAGE, None

    _db.commit()
    m_id = dbc.lastrowid

    r_data = {
        'id': m_id,
        'sender': sender,
        'sender_name': sender_name,
        'receiver': receiver,
        'receiver_name': receiver_name,
        'subject': subject,
        'message': emessage
    }

    r_data = json.dumps(r_data, ensure_ascii=False)

    from config import send_mail_config

    __SVC_PORT = send_mail_config.SVC_PORT
    rdb.lpush("{} {}".format(MAIL_CHANNEL, __SVC_PORT), r_data)

    if _get_id:
        return True, None, m_id

    return True, None, None
Exemple #6
0
def _get_user_by_token_from_redis(db, tk, is_active):

    r = get_redis_db()
    _rd = r.get(tk)
    if not _rd:
        log.critical('Cannot find users token {} in redis'.format(tk))
        return False

    import json.decoder
    try:
        _rd = json.loads(_rd.decode('utf-8'))
    except json.decoder.JSONDecodeError as e:
        log.critical('Error loading token {} string {}: {}'.format(tk, _rd, e))
        return False

    u_id = _rd['id_user']

    return base_common.app_hooks.pack_user_by_id(db, u_id)
Exemple #7
0
def _get_user_by_token_from_redis(db, tk, is_active):

    r = get_redis_db()
    _rd = r.get(tk)
    if not _rd:
        log.critical('Cannot find users token {} in redis'.format(tk))
        return False

    import json.decoder
    try:
        _rd = json.loads(_rd.decode('utf-8'))
    except json.decoder.JSONDecodeError as e:
        log.critical('Error loading token {} string {}: {}'.format(tk, _rd, e))
        return False

    u_id = _rd['id_user']

    return base_common.app_hooks.pack_user_by_id(db, u_id)
Exemple #8
0
def do_put(sender, receiver, emessage, _get_id, **kwargs):
    """
    Save e-mail message
    """

    _db = get_db()
    dbc = _db.cursor()
    rdb = get_redis_db()

    q = get_mail_query(sender, receiver, emessage)
    from MySQLdb import IntegrityError
    try:
        dbc.execute(q)
    except IntegrityError as e:
        log.critical('Inserting mail queue: {}'.format(e))
        return base_common.msg.error(msgs.CANNOT_SAVE_MESSAGE)

    _db.commit()
    m_id = dbc.lastrowid
    subject = 'General mail subject'

    r_data = {
        'id': m_id,
        'sender': sender,
        'receiver': receiver,
        'subject': subject,
        'message': emessage
    }

    r_data = json.dumps(r_data)

    rdb.lpush(MAIL_CHANNEL, r_data)

    if _get_id:
        return base_common.msg.post_ok({'message_id': m_id})

    return base_common.msg.post_ok()
Exemple #9
0
def __get_user_by_token_from_redis(tk, is_active):

    r = get_redis_db()
    return r.exists(tk)
Exemple #10
0
def __close_session_by_token_in_redis(tk):

    r = get_redis_db()
    r.delete(tk)

    return True
Exemple #11
0
def __get_user_by_token_from_redis(tk, is_active):

    r = get_redis_db()
    return r.exists(tk)
Exemple #12
0
def __close_session_by_token_in_redis(tk):

    r = get_redis_db()
    r.delete(tk)

    return True