def create_note(user_data):
    user = Users.verify_auth(user_data.get("token", ""))
    committe_id = user_data.get('committee', '')
    committee = Committees.query.filter_by(id=committe_id).first()

    if committee is not None:

        if(user is not None and (user.is_admin or committee.head == user.id)):
            committee_note = CommitteeNotes()
            committee_note.committee = committee.id
            committee_note.description = user_data.get('description',"")
            committee_note.author = user.id
            committee_note.hidden = False
            db.session.add(committee_note)

            try:
                db.session.commit()
                emit('create_committee_note', Response.AddSuccess)
                get_notes(action.id, broadcast = True)
            except Exception as e:
                db.session.rollback()
                db.session.flush()
                emit("create_committee_note", Response.AddError)
        else:
            emit("create_committee_note", Response.UsrNotAuth)
    else:
    	emit("create_committee_note", Response.CommitteeDoesntExist)
Esempio n. 2
0
    def wrapped(*args, **kwargs):

        user = None

        if (args[0].get("token", "") != "" and 
            args[0].get("token", "") != None):
            user = Users.verify_auth(args[0].get("token",""))
        elif current_user.is_authenticated:
            user = current_user

        if user: join_room(user.id)

        return f(user, *args, **kwargs)
def modify_note(user_data):

    user = Users.verify_auth(user_data.get("token",""))

    if(user is None):
        emit('modify_note', Response.UsrDoesntExist)
        return
    committee_note_id = user_data.get("id","")
    committee_note = CommitteeNotes.query.filter_by(id=committee_note_id).first()

    if(committee_note is None):
        emit('modify_note', Response.CommitteeNoteDoesntExist)
        return

    committee = Committees.query.filter_by(id= committee_note.committee).first()

    if(user.id == committee_note.author):

        if "description" in user_data:
            committee_note.description = user_data['description']

    if(user.id == committee.head or user.is_admin or user.id == committee_note.author):

        if "hidden" in user_data:
             committee_note.hidden = user_data['hidden']

        db.session.add(committee_note)

        try:
            db.session.commit()
            emit('modify_committee_note', Response.ModifySuccess)
            #get_note(committee_note.id, broadcast = True)
        except Exception as e:
            db.session.rollback()
            db.session.flush()
            emit("modify_committee_note", Response.ModifyError)
    else:
        emit("modify_committee_note", Response.UsrNotAuth)