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)
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 })
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)
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)
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)
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)
def get(course_id, feature): '''Get feature flag''' url_str = "courses/{}/features/{}".format(course_id, feature) return instance.call_api(url_str)
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")
def reset(): '''Reset group favourites''' url_str = "users/self/favorites/groups" return instance.call_api(url_str, method="DELETE")
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")
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)
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)
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")
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})
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)
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)
def get_folders(course_id): '''List all folders''' url_str = "courses/{}/folders".format(course_id) return instance.call_api(url_str)
def quota(course_id): '''Get quota information''' url_str = "courses/{}/files/quota".format(course_id) return instance.call_api(url_str)
def delete(section_id): '''Delete a section''' url_str = "sections/{}".format(section_id) return instance.call_api(url_str, method="DELETE")
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")
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})
def get(account_id, feature): '''Get feature flag''' url_str = "accounts/{}/features/{}".format(account_id, feature) return instance.call_api(url_str)
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})
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)
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)
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)
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")
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)
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")
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")