Ejemplo n.º 1
0
def edit(rec_id=None):
    setExits()
    g.title = "Edit {} Record".format(g.title)

    role = Role(g.db)
    rec = None

    if rec_id == None:
        rec_id = request.form.get('id', request.args.get('id', -1))

    rec_id = cleanRecordID(rec_id)
    #import pdb;pdb.set_trace

    if rec_id < 0:
        flash("That is not a valid ID")
        return redirect(g.listURL)

    if not request.form:
        """ if no form object, send the form page """
        if rec_id == 0:
            rec = role.new()
        else:
            rec = role.get(rec_id)
            if not rec:
                flash("Unable to locate that record")
                return redirect(g.listURL)
    else:
        #have the request form
        #import pdb;pdb.set_trace()
        if rec_id and request.form['id'] != 'None':
            rec = role.get(rec_id)
        else:
            # its a new unsaved record
            rec = role.new()
            role.update(rec, request.form)

        if validForm(rec):
            #update the record
            role.update(rec, request.form)
            # make names lower case
            rec.name = request.form['name'].lower().strip()

            try:
                role.save(rec)
                g.db.commit()
            except Exception as e:
                g.db.rollback()
                flash(
                    printException(
                        'Error attempting to save ' + g.title + ' record.',
                        "error", e))

            return redirect(g.listURL)

        else:
            # form did not validate
            pass

    # display form
    return render_template('role/role_edit.html', rec=rec)
Ejemplo n.º 2
0
def delete_role(role_id, raise_exception=False) -> None:
    role: Role = Role.get(role_id)
    if not role:
        if raise_exception:
            raise ObjNotFound()
    else:
        role.delete()
Ejemplo n.º 3
0
def get_role(role_id, raise_exception=False) -> Role:
    role: Role = Role.get(role_id)
    if not role and raise_exception:
        raise ObjNotFound()
    return role