def admin_rlms_rlms_lab_edit_permissions(rlmstype, rlmsversion, id, lab_id): template_variables = {} lab, rlms = get_lab_and_lms(rlmstype, rlmsversion, id, lab_id) if lab is None or rlms is None: return render_template("labmanager_admin/rlms_errors.html") if request.method == 'POST': if request.form.get('action','').startswith('revoke-'): lms_login = request.form['action'][len('revoke-'):] lms = db_session.query(LMS).filter_by(lms_login = lms_login).first() if lms is None: return render_template("labmanager_admin/rlms_errors.html") permission = db_session.query(PermissionOnLaboratory).filter_by(laboratory_id = lab_id, lms_id = lms.id).first() if permission is not None: db_session.delete(permission) db_session.commit() granted_lms_ids = [ perm.lms_id for perm in lab.permissions ] lmss = db_session.query(LMS).all() template_variables['granted_lms_ids'] = granted_lms_ids template_variables['type_name'] = rlmstype template_variables['version'] = rlmsversion template_variables['rlms_name'] = rlms.name template_variables['rlms_id'] = id template_variables['lab_name'] = lab.name template_variables['lab_id'] = lab_id template_variables['lmss'] = lmss return render_template("labmanager_admin/rlms_rlms_lab_edit_permissions.html", **template_variables)
def lms_admin_courses_permissions(course_id): db_lms = db_session.query(LMS).filter_by(lms_login = session['lms']).first() course = db_session.query(Course).filter_by(id = course_id, lms = db_lms).first() if course is None: return render_template("lms_admin/course_errors.html") granted_permission_ids = [ permission.permission_on_lab_id for permission in course.permissions ] if request.method == 'POST': if request.form.get('action','').startswith('revoke-'): try: permission_on_lab_id = int(request.form['action'][len('revoke-'):]) except: flash("Error parsing permission on lab identifier") return render_template("lms_admin/course_errors.html") permission_on_course = db_session.query(PermissionOnCourse).filter_by(course = course, permission_on_lab_id = permission_on_lab_id).first() if permission_on_course is not None: db_session.delete(permission_on_course) db_session.commit() return redirect(url_for('lms_admin_courses_permissions', course_id = course_id)) return render_template("lms_admin/courses_permissions.html", permissions = db_lms.permissions, course = course, granted_permission_ids = granted_permission_ids)
def decorated(*args, **kwargs): if request.method == "POST" and request.form.get("action", "") == "delete": for current_id in request.form: element = db_session.query(table).filter_by(id=current_id).first() if element is not None: db_session.delete(element) db_session.commit() return f(*args, **kwargs)
def decorated(*args, **kwargs): if request.method == 'POST' and request.form.get('action', '') == 'delete': for current_id in request.form: element = db_session.query(table).filter_by( id=current_id).first() if element is not None: db_session.delete(element) db_session.commit() return f(*args, **kwargs)
def admin_rlms_rlms_lab_edit_permissions(rlmstype, rlmsversion, id, lab_id): template_variables = {} lab, rlms = get_lab_and_lms(rlmstype, rlmsversion, id, lab_id) if lab is None or rlms is None: return render_template("labmanager_admin/rlms_errors.html") if request.method == 'POST': if request.form.get('action', '').startswith('revoke-'): lms_login = request.form['action'][len('revoke-'):] lms = db_session.query(LMS).filter_by(lms_login=lms_login).first() if lms is None: return render_template("labmanager_admin/rlms_errors.html") permission = db_session.query(PermissionOnLaboratory).filter_by( laboratory_id=lab_id, lms_id=lms.id).first() if permission is not None: db_session.delete(permission) db_session.commit() granted_lms_ids = [perm.lms_id for perm in lab.permissions] lmss = db_session.query(LMS).all() template_variables['granted_lms_ids'] = granted_lms_ids template_variables['type_name'] = rlmstype template_variables['version'] = rlmsversion template_variables['rlms_name'] = rlms.name template_variables['rlms_id'] = id template_variables['lab_name'] = lab.name template_variables['lab_id'] = lab_id template_variables['lmss'] = lmss return render_template( "labmanager_admin/rlms_rlms_lab_edit_permissions.html", **template_variables)
def lms_admin_courses_permissions(course_id): db_lms = db_session.query(LMS).filter_by(lms_login=session['lms']).first() course = db_session.query(Course).filter_by(id=course_id, lms=db_lms).first() if course is None: return render_template("lms_admin/course_errors.html") granted_permission_ids = [ permission.permission_on_lab_id for permission in course.permissions ] if request.method == 'POST': if request.form.get('action', '').startswith('revoke-'): try: permission_on_lab_id = int( request.form['action'][len('revoke-'):]) except: flash("Error parsing permission on lab identifier") return render_template("lms_admin/course_errors.html") permission_on_course = db_session.query( PermissionOnCourse).filter_by( course=course, permission_on_lab_id=permission_on_lab_id).first() if permission_on_course is not None: db_session.delete(permission_on_course) db_session.commit() return redirect( url_for('lms_admin_courses_permissions', course_id=course_id)) return render_template("lms_admin/courses_permissions.html", permissions=db_lms.permissions, course=course, granted_permission_ids=granted_permission_ids)