Esempio n. 1
0
def message_ajax():
    user_id = request.args.get('user_id', -1, type=int)

    # get unread messages
    user = User.select_user_by_id(user_id)
    not_read_messages = Message.select_not_read_messages(
        user_id, current_user.get_id())
    not_read_message_ids = [message.id for message in not_read_messages]
    if not_read_message_ids:
        with db.session.begin(subtransactions=True):
            Message.update_is_read_by_ids(not_read_message_ids)
        db.session.commit()

    # get my messages that it is read and unchecked.
    not_checked_messages = Message.select_not_checked_messages(
        current_user.get_id(), user_id)
    not_checked_message_ids = [
        not_checked_message.id for not_checked_message in not_checked_messages
    ]
    if not_checked_message_ids:
        with db.session.begin(subtransactions=True):
            Message.update_is_checked_by_ids(not_checked_message_ids)
        db.session.commit()
    return jsonify(data=make_message_format(user, not_read_messages),
                   checked_message_ids=not_checked_message_ids)
Esempio n. 2
0
def message_ajax():
    user_id = request.args.get('user_id', -1, type=int)
    # まだ読んでいない相手からのメッセージを取得
    user = User.select_user_by_id(user_id)
    not_read_messages = Message.select_not_read_messages(user_id, current_user.get_id())
    not_read_message_ids = [message.id for message in not_read_messages]
    if not_read_message_ids:
        with db.session.begin(subtransactions=True):
            Message.update_is_read_by_ids(not_read_message_ids)
        db.session.commit()
    # すでに読まれた自分のメッセージでまだチェックしていないものを取得
    not_checked_messages = Message.select_not_checked_messages(current_user.get_id(), user_id)
    not_checked_message_ids = [not_checked_message.id for not_checked_message in not_checked_messages]
    if not_checked_message_ids:
        with db.session.begin(subtransactions=True):
            Message.update_is_checked_by_ids(not_checked_message_ids)
        db.session.commit()
    return jsonify(data=make_message_format(user, not_read_messages), checked_message_ids = not_checked_message_ids)