Esempio n. 1
0
def put_quiz(course_id, quiz_id, post_fields, *args):
    '''Edit a quiz
        post_fields: - fields to post        
            quiz[title] : string
            quiz[description] : string
            quiz[quiz_type] : string
            quiz[assignment_group_id] : integer
            quiz[time_limit] : integer
            quiz[shuffle_answers] : boolean
            quiz[hide_results] : string
            quiz[show_correct_answers] : boolean
            quiz[show_correct_answers_last_attempt] : boolean
            quiz[show_correct_answers_at] : DateTime
            quiz[hide_correct_answers_at] : DateTime
            quiz[allowed_attempts] : integer
            quiz[scoring_policy] : string
            quiz[one_question_at_a_time] : boolean
            quiz[cant_go_back] : boolean
            quiz[access_code] : string
            quiz[ip_filter] : string
            quiz[due_at] : DateTime
            quiz[lock_at] : DateTime
            quiz[unlock_at] : DateTime
            quiz[published] : boolean
            quiz[one_time_results] : boolean
            quiz[only_visible_to_overrides] : boolean
    '''
    url_str = "courses/{}/quizzes/{}".format(course_id, quiz_id,
                                             callhelper.args_to_params(*args))
    return instance.call_api(url_str, method="PUT", post_fields=post_fields)
Esempio n. 2
0
def update_name(user_id, full_name, sortable_name):
    '''updates a user's name'''
    url_str = "users/{}".format(user_id)
    return instance.call_api(url_str,
                             method="PUT",
                             post_fields={
                                 "user[name]": full_name,
                                 "user[short_name]": full_name,
                                 "user[sortable_name]": sortable_name
                             })
Esempio n. 3
0
def post_question(course_id, quiz_id, post_fields):
    '''Create a single quiz question
            question[question_name] : string
            question[question_text] : string
            question[quiz_group_id] : integer
            question[question_type] : string
            question[position] : integer
            question[points_possible] : integer
            question[correct_comments] : string
            question[incorrect_comments] : string
            question[neutral_comments] : string
            question[text_after_answers] : string
            question[answers] : Model
            '''
    url_str = "courses/{}/quizzes/{}/questions".format(course_id, quiz_id)
    return instance.call_api(url_str, method="POST", post_fields=post_fields)
Esempio n. 4
0
def post(section_id, user_id, post_fields={}):
    '''Enroll a user

        Keyword Arguments:
        course_id - id of course
        post_fields: - fields to post
            enrollment[type] : string
            enrollment[role] : string
            enrollment[rolle_id] : integer
            enrollment[enrollment_state] : string (active, invited, inactive)
            enrollment[limit_privileges_to_course_section] : boolean
            enrollment[notify] : boolean
    '''
    post_fields['enrollment[user_id]'] = user_id
    url_str = "sections/{}/enrollments".format(section_id)
    return instance.call_api(url_str, method="POST", post_fields=post_fields)
Esempio n. 5
0
def put(course_id, post_fields, *args):
    '''Updates a course

        Keyword Arguments:
        course_id - id of course
        post_fields: - fields to post
            course[account_id] : integer
            course[name] : string
            course[course_code] : string
            course[start_at] : DateTime
            course[end_at] : DateTime
            course[license] : string
            course[is_public] : boolean
            course[is_public_to_auth_users] : boolean
            course[public_syllabus] : boolean
            course[public_syllabus_to_auth] : boolean
            course[public_description] : string
            course[allow_student_wiki_edits] : boolean
            course[allow_wiki_comments] : boolean
            course[allow_student_forum_attachments] : boolean
            course[open_enrollment] : boolean
            course[self_enrollment] : boolean
            course[restrict_enrollments_to_course_dates] : boolean
            course[term_id] : integer
            course[sis_course_id] : string
            course[integration_id] : string
            course[hide_final_grades] : boolean
            course[time_zone] : string
            course[apply_assignment_group_weights] : boolean
            course[storage_quota_mb] : integer
            offer : boolean
            course[event] : string
            course[default_view] : string
            course[syllabus_body] : string
            course[grading_standard_id] : integer
            course[course_format] : string
            course[image_id] : integer
            course[image_url] : string
            course[remove_image] : boolean
            course[blueprint] : boolean
            course[blueprint_restrictions] : BlueprintRestriction
            course[use_blueprint_restrictions_by_object_type] : boolean
            course[blueprint_restrictions_by_object_type] : multiple BlueprintRestrictions
    '''
    url_str = "courses/{}{}".format(course_id,
                                    callhelper.args_to_params(*args))
    return instance.call_api(url_str, method="PUT", post_fields=post_fields)
Esempio n. 6
0
def put(course_id, post_fields, *args):
    '''Updates course settings

        Keyword arguments:
        course_id - id of course to update
        post_fields - a dict of fields to update
            - allow_student_discussion_topics : boolean
            - allow_student_forum_attachments : boolean
            - allow_student_discussion_editing : boolean
            - allow_student_organized_groups : boolean
            - hide_final_grades : boolean
            - hide_distribution_graphs : boolean
            - lock_all_announcements : boolean
            - restrict_student_past_view : boolean
            - restrict_student_future_view : boolean
            - show_announcements_on_home_page : boolean
            - home_page_announcement_limit : integer
    '''
    url_str = "courses/{}/settings{}".format(course_id,
                                             callhelper.args_to_params(*args))
    return instance.call_api(url_str, method="PUT", post_fields=post_fields)
Esempio n. 7
0
def get(course_id, feature):
    '''Get feature flag'''
    url_str = "courses/{}/features/{}".format(course_id, feature)
    return instance.call_api(url_str)
Esempio n. 8
0
def delete(course_id):
    '''Add course to favorites'''
    url_str = "users/self/favorites/courses/{}".format(course_id)
    return instance.call_api(url_str, method="DELETE")
Esempio n. 9
0
def reset():
    '''Reset group favourites'''
    url_str = "users/self/favorites/groups"
    return instance.call_api(url_str, method="DELETE")
Esempio n. 10
0
def post(group_id):
    '''Add group to favorites'''
    url_str = "users/self/favorites/groups/{}".format(group_id)
    return instance.call_api(url_str, method="POST")
Esempio n. 11
0
def get(course_id, column_id, *args):
    '''List entries for a column'''
    url_str = "courses/{}/custom_gradebook_columns/{}/data{}".format(course_id, column_id, callhelper.args_to_params(*args))
    return instance.call_api(url_str)
Esempio n. 12
0
def get(section_id, *args):
    '''Get section information'''
    url_str = "sections/{}{}".format(section_id,
                                     callhelper.args_to_params(*args))
    return instance.call_api(url_str)
Esempio n. 13
0
def cross_list_section(section_id, new_course_id):
    '''Cross-list a Section'''
    url_str = "sections/{}/crosslist/{}".format(section_id, new_course_id)
    return instance.call_api(url_str, method="POST")
Esempio n. 14
0
def put(course_id, feature, state):
    '''Set feature flag'''
    url_str = "courses/{}/features/flags/{}".format(course_id, feature)
    return instance.call_api(url_str, method="PUT", post_fields={"state":state})
Esempio n. 15
0
def get_question(course_id, quiz_id, question_id, *args):
    '''Get a single quiz question'''
    url_str = "courses/{}/quizzes/{}/questions/{}{}".format(
        course_id, quiz_id, question_id, callhelper.args_to_params(*args))
    return instance.call_api(url_str)
Esempio n. 16
0
def get_course(course_id):
    '''Gets a course'''
    url_str = "audit/grade_change/courses/{}?include[]=current_grade".format(
        course_id)
    return instance.call_api(url_str)
Esempio n. 17
0
def get_folders(course_id):
    '''List all folders'''
    url_str = "courses/{}/folders".format(course_id)
    return instance.call_api(url_str)
Esempio n. 18
0
def quota(course_id):
    '''Get quota information'''
    url_str = "courses/{}/files/quota".format(course_id)
    return instance.call_api(url_str)
Esempio n. 19
0
def delete(section_id):
    '''Delete a section'''
    url_str = "sections/{}".format(section_id)
    return instance.call_api(url_str, method="DELETE")
Esempio n. 20
0
def delete_question(course_id, quiz_id, question_id):
    '''Deletes a question'''
    url_str = "courses/{}/quizzes/{}/questions/{}".format(
        course_id, quiz_id, question_id)
    return instance.call_api(url_str, method="DELETE")
Esempio n. 21
0
def post(course_id, name):
    '''Create course section'''
    url_str = "courses/{}/sections".format(course_id)
    return instance.call_api(url_str,
                             method="POST",
                             post_fields={"course_section[name]": name})
Esempio n. 22
0
def get(account_id, feature):
    '''Get feature flag'''
    url_str = "accounts/{}/features/{}".format(account_id, feature)
    return instance.call_api(url_str)
Esempio n. 23
0
def put(course_id, column_id, user_id, column_data_content):
    '''Updates column data'''
    url_str = "courses/{}/custom_gradebook_columns/{}/data/{}".format(course_id, column_id, user_id)
    return instance.call_api(url_str, method="PUT", post_fields={"column_data[content]":column_data_content})
Esempio n. 24
0
def get(course_id, external_tool_id):
    '''Get a single external tool'''
    url_str = "courses/{}/external_tools/{}".format(course_id,
                                                    external_tool_id)
    print(url_str)
    return instance.call_api(url_str)
Esempio n. 25
0
def get(file_id, *args):
    '''Gets a course'''
    url_str = "files/{}{}".format(file_id, callhelper.args_to_params(*args))
    return instance.call_api(url_str)
Esempio n. 26
0
def put(course_id, external_tool_id, post_fields={}):
    '''Edit an external tool'''
    url_str = "courses/{}/external_tools/{}".format(course_id,
                                                    external_tool_id)
    return instance.call_api(url_str, method="PUT", post_fields=post_fields)
Esempio n. 27
0
def delete(group_id):
    '''Add group to favorites'''
    url_str = "users/self/favorites/groups/{}".format(group_id)
    return instance.call_api(url_str, method="DELETE")
Esempio n. 28
0
def get(account_id, external_tool_id):
    '''Get a single external tool'''
    url_str = "accounts/{}/external_tools/{}".format(account_id,
                                                     external_tool_id)
    return instance.call_api(url_str)
Esempio n. 29
0
def delete(account_id, sub_account):
    '''Delete a sub-account'''
    url_str = "accounts/{}/sub_accounts/{}".format(account_id, sub_account)
    return instance.call_api(url_str, method="DELETE")
Esempio n. 30
0
def post(course_id):
    '''Add course to favorites'''
    url_str = "users/self/favorites/courses/{}".format(course_id)
    return instance.call_api(url_str, method="POST")