Exemple #1
0
def fork_group(lti=lti):
    ''' Adds a group to a course'''
    # Get arguments
    assignment_group_id = int(request.values.get('assignment_group_id'))
    assignment_group = AssignmentGroup.by_id(assignment_group_id)
    is_embedded = ('embed' == request.values.get('menu', "select"))
    # Verify exists
    check_resource_exists(assignment_group, "Assignment Group",
                          assignment_group_id)
    # Verify permissions
    require_course_instructor(g.user, assignment_group.course_id)
    # Perform action
    new_assignment_group = AssignmentGroup.new(
        owner_id=g.user.id,
        course_id=assignment_group.course_id,
        name=assignment_group.name)
    new_assignment_group.forked_id = assignment_group_id
    new_assignment_group.forked_version = assignment_group.version
    # Result
    select_url = get_select_menu_link(new_assignment_group.id,
                                      new_assignment_group.name, is_embedded,
                                      True)
    return jsonify(success=True,
                   id=new_assignment_group.id,
                   name=new_assignment_group.name,
                   select=select_url)
Exemple #2
0
def add_group(lti=lti):
    ''' Adds a group to a course'''
    # Get arguments
    course_id = int(request.values.get('course_id'))
    new_name = request.values.get('name')
    new_url = request.values.get('url')
    is_embedded = ('embed' == request.values.get('menu', "select"))
    # Verify permissions
    require_course_instructor(g.user, course_id)
    # Perform action
    assignment_group = AssignmentGroup.new(owner_id=g.user.id,
                                           course_id=course_id,
                                           name=new_name,
                                           url=new_url)
    # Result
    select_url = get_select_menu_link(assignment_group.id,
                                      assignment_group.name, is_embedded, True)
    return jsonify(success=True,
                   id=assignment_group.id,
                   url=assignment_group.url,
                   name=assignment_group.name,
                   select=select_url)
Exemple #3
0
    def run(self, owner_id, **kwargs):
        from models.user import User
        from models.course import Course
        from models.role import Role
        from models.assignment import Assignment
        from models.assignment_group import AssignmentGroup
        from models.assignment_group_membership import AssignmentGroupMembership

        owner_id = int(owner_id)
        maze_course = Course.new('Maze Course', owner_id, 'public')

        maze_group = AssignmentGroup.new(owner_id, maze_course.id, "Maze Game")

        for level in range(10):
            maze_level = Assignment.new(owner_id,
                                        maze_course.id,
                                        'maze',
                                        level=str(1 + level))
            db.session.add(maze_level)
            db.session.flush()
            membership = AssignmentGroupMembership.move_assignment(
                maze_level.id, maze_group.id)
            db.session.add(membership)
        db.session.commit()