Sha256: 6c106323e2b26b1450b69923269492f9e56c765d3e6a2ca71f29935322c34545
Contents?: true
Size: 1.27 KB
Versions: 13
Compression:
Stored size: 1.27 KB
Contents
module QuizApiClient::Services class CoursesService < BaseApiService def create(params:, token: nil) post_to_quiz_api(params: params, token: token) end def update(params:, token: nil) patch_to_quiz_api(params: params, token: token) end def destroy(params:, token: nil) delete_from_quiz_api(params: params, token: token) end def sync_blueprint_restrictions(params:, token: nil) client(token: token).post( "/api/courses/#{params[:canvas_id]}/sync_blueprint_restrictions", lock_quizzes: params[:lock_quizzes] ) end def associate_quizzes(params:, token: nil) client(token: token).patch( "/api/courses/#{params[:canvas_id]}/associate_quizzes", quiz_ids: params[:quiz_ids] ) end private def post_to_quiz_api(params:, token:) client(token: token).post( '/api/courses', course: params ) end def patch_to_quiz_api(params:, token:) client(token: token).patch( "/api/courses/#{params[:canvas_id]}", course: params.dup.tap { |p| p.delete(:canvas_id) } ) end def delete_from_quiz_api(params:, token:) client(token: token).delete( "/api/courses/#{params[:canvas_id]}" ) end end end
Version data entries
13 entries across 13 versions & 1 rubygems