def new_assignment(lti=lti): user, roles, course = ensure_canvas_arguments() menu = request.values.get('menu', "select") if not User.is_lti_instructor(roles): return "You are not an instructor in this course." assignment = Assignment.new(owner_id=user.id, course_id=course.id) launch_type = 'lti_launch_url' if menu != 'share' else 'iframe' endpoint = 'lti_assignments.index' if menu != 'share' else 'lti_assignments.shared' return jsonify( success=True, redirect=url_for('lti_assignments.edit_assignment', assignment_id=assignment.id), id=assignment.id, name=assignment.name, body=strip_tags(assignment.body)[:255], title=assignment.title(), select=url_quote( url_for(endpoint, assignment_id=assignment.id, _external=True)) + "&return_type=" + launch_type + "&title=" + url_quote(assignment.title()) + "&text=BlockPy%20Exercise&width=100%25&height=600", edit=url_for('lti_assignments.edit_assignment', assignment_id=assignment.id), date_modified=assignment.date_modified.strftime( " %I:%M%p on %a %d, %b %Y").replace(" 0", " "))
def new_assignment(lti=lti): user, roles, course = ensure_canvas_arguments() menu = request.values.get('menu', "select") if not User.is_lti_instructor(roles): return "You are not an instructor in this course." assignment = Assignment.new(owner_id=user.id, course_id=course.id) launch_type = 'lti_launch_url' if menu != 'share' else 'iframe' endpoint = 'lti_assignments.index' if menu != 'share' else 'lti_assignments.shared' return jsonify(success=True, redirect=url_for('lti_assignments.edit_assignment', assignment_id=assignment.id), id= assignment.id, name= assignment.name, body= strip_tags(assignment.body)[:255], title= assignment.title(), select = url_quote(url_for(endpoint, assignment_id=assignment.id, _external=True))+"&return_type="+launch_type+"&title="+url_quote(assignment.title())+"&text=BlockPy%20Exercise&width=100%25&height=600", edit= url_for('lti_assignments.edit_assignment', assignment_id=assignment.id), date_modified = assignment.date_modified.strftime(" %I:%M%p on %a %d, %b %Y").replace(" 0", " "))
def new_assignment(course_id, lti=lti): name = request.values.get('name', None) or None level = request.values.get('level', None) or None menu = request.values.get('menu', "select") #TODO: change "normal" type to "blockpy" type = request.values.get('type', "normal") assignment = Assignment.new(owner_id=g.user.id, course_id=course_id, type=type, name=name, level=level) launch_type = 'lti_launch_url' if menu != 'embed' else 'iframe' endpoint = 'assignments.load' return jsonify(success=True, redirect=url_for('assignments.load', assignment_id=assignment.id), id= assignment.id, name= assignment.name, type= type, body= strip_tags(assignment.body)[:255], title= assignment.title(), view = url_for('assignments.load', assignment_id=assignment.id, embed= menu == 'embed'), select = url_quote(url_for(endpoint, assignment_id=assignment.id, _external=True, embed= menu == 'embed'))+"&return_type="+launch_type+"&title="+url_quote(assignment.title())+"&text=BlockPy%20Exercise&width=100%25&height=600", edit= url_for('assignments.load', assignment_id=assignment.id, course_id=assignment.course_id), date_modified = assignment.date_modified.strftime(" %I:%M%p on %a %d, %b %Y").replace(" 0", " "))