Sha256: b5579693249ed8c0020b51dedf1fe26fe9a419c2493b5652e418597a5540f730
Contents?: true
Size: 1.26 KB
Versions: 3
Compression:
Stored size: 1.26 KB
Contents
module QuizApiClient::Services class ItemsService < BaseApiService def list(params:, token: nil) raise 'Quiz Id Required' unless params && params[:quiz_id] list_from_quiz_api(params: params, token: token) end def create(params:, token: nil) raise 'Quiz Id Required' unless params && params[:quiz_id] post_to_quiz_api(params: params, token: token) end def update(params:, token: nil) raise 'Quiz Id Required' unless params && params[:quiz_id] raise 'Item Id Required' unless params && params[:item_id] put_to_quiz_api(params: params, token: token) end private def list_from_quiz_api(params:, token:) quiz_id = params.delete(:quiz_id) client(token: token).get("/api/quizzes/#{quiz_id}/items") end def post_to_quiz_api(params:, token:) quiz_id = params.delete(:quiz_id) client(token: token).post( "/api/quizzes/#{quiz_id}/items", quiz_id: quiz_id, item: params ) end def put_to_quiz_api(params:, token:) quiz_id = params.delete(:quiz_id) item_id = params.delete(:item_id) client(token: token).put( "/api/quizzes/#{quiz_id}/items/#{item_id}", quiz_id: quiz_id, item: params ) end end end
Version data entries
3 entries across 3 versions & 1 rubygems