Ejemplo n.º 1
0
def adm_rm_group(group_id):
    delete_group(group_id)
    flash('Group has been deleted!', 'success')

    create_log('INFO', 'Admin', 'Delete Group', f"Deleted group '{group.name}'")


    return(redirect(url_for('groups.adm_groups')))
Ejemplo n.º 2
0
def delete_group(group_id):
    group = Group.query.get(group_id)

    db.session.delete(group)
    db.session.commit()
    create_log('INFO', 'Admin', 'Delete Group', f"Created group '{group.name}'")

    return True
Ejemplo n.º 3
0
def create_group(name, description=None):
    group = Group()
    group.name = name
    group.description = description

    db.session.add(group)
    db.session.commit()
    create_log('INFO', 'Admin', 'Create Group', f"Created group '{group.name}'")

    return group
Ejemplo n.º 4
0
def verify_nfc(client_id, nfc_id):
    # print(client_id)
    # print(nfc_id)
    user = User.query.filter_by(nfc_id=nfc_id).first()
    # print(user)

    authorized = False
    client = Client.query.get(client_id)
    if user and user.active:
        if any(group in client.groups for group in user.groups):
            authorized = True

    if not client:
        create_log('ERROR', 'Client', 'Reject',
                   f"Invalid client ID: {client_id}", user, None, nfc_id)
        return False

    if not authorized:
        if user:
            create_log('INFO', 'Client', 'Reject',
                       f"Unauthorized '{user.username}' at {client.name}",
                       user, None, nfc_id)
        else:
            create_log('INFO', 'Client', 'Reject',
                       f"Unknown badge '{nfc_id}' at {client.name}", None,
                       None, nfc_id)
    else:
        create_log('INFO', 'Client', 'Authorize',
                   f"Authorized '{user.username}' at {client.name}", user,
                   None, nfc_id)

    return authorized
Ejemplo n.º 5
0
def adm_new_group():
    form = EditGroup()

    if form.validate_on_submit():
        group = create_group(form.name.data, form.description.data)
        flash('Group has been created!', 'success')

        create_log('INFO', 'Admin', 'Create Group', f"Created group '{group.name}'")

        return redirect(url_for('groups.adm_group', title="Edit Group",
                                group_id=group.id))
                                
    elif request.method == 'GET':
        return render_template('group_admin_page.html', title="Create Group",
                            group=None, form=form)
Ejemplo n.º 6
0
def api_client_deauthorize(client_id):
    status = 200
    client = Client.query.get(client_id)

    if not client:
        status = 404

    create_log('INFO', 'Client', 'De-authorize',
               f"De-authorized {client.name}", None, None, None)

    response = current_app.response_class(response=json.dumps('{}'),
                                          status=status,
                                          mimetype='application/json')

    return response