diff --git a/app/controllers/v1/collections_controller.rb b/app/controllers/v1/collections_controller.rb index 195f6023552e7864fb1c165b0444b3558646cf3a..2deb8b8d2adfa62f66afa2d048d188874fe38124 100644 --- a/app/controllers/v1/collections_controller.rb +++ b/app/controllers/v1/collections_controller.rb @@ -11,7 +11,9 @@ class V1::CollectionsController < ApplicationController # GET /v1/collections # GET /v1/collections.json def index - render json: Collection.all + limit = params[:limit] || 10 + offset = params[:offset] || 0 + render json: Collection.limit(limit).offset(offset) end # GET /v1/collections/1 diff --git a/app/controllers/v1/learning_objects_controller.rb b/app/controllers/v1/learning_objects_controller.rb index e2df8d39221a36584fbc14e8f4c59fb61c8cb866..19588ceb19cb620fb43dda41fddd0f3f389478f2 100644 --- a/app/controllers/v1/learning_objects_controller.rb +++ b/app/controllers/v1/learning_objects_controller.rb @@ -12,8 +12,10 @@ class V1::LearningObjectsController < ApplicationController before_action :authorize!, only: [:show, :update, :destroy] def index + limit = params[:limit] || 10 + offset = params[:offset] || 0 serializer = params[:obaa].nil? ? LearningObjectSerializer : LearningObjectObaaSerializer - render json: LearningObject.limit(limit).offset(offset).all, each_serializer: serializer + render json: LearningObject.includes(:tags, :publisher, :language, :license).limit(limit).offset(offset), each_serializer: serializer end # GET /learning_objects/1 diff --git a/app/controllers/v1/search_controller.rb b/app/controllers/v1/search_controller.rb index b104a2b97d80a460a47ff3b9ebaa08325bf0f667..98563378a3b2b1cd254a72e6c27ad1d36ed66c1c 100644 --- a/app/controllers/v1/search_controller.rb +++ b/app/controllers/v1/search_controller.rb @@ -5,7 +5,7 @@ class V1::SearchController < ApplicationController # GET v1/search.json def index render json: SearchService.search(@search, current_user), status: :ok - rescue SearchService::InvalidSearchError => e + rescue SearchService::InvalidSearchError render json: @search.errors, status: :bad_request end @@ -13,7 +13,7 @@ class V1::SearchController < ApplicationController # GET v1/search/autocomplete.json def autocomplete render json: SearchService.autocomplete(@search, current_user), status: :ok - rescue SearchService::InvalidSearchError => e + rescue SearchService::InvalidSearchError render json: @search.errors, status: :bad_request end diff --git a/app/models/concerns/thumbnailable.rb b/app/models/concerns/thumbnailable.rb index e22d871bfba9593fbd6f1790d20410631cef7d0c..123ffb7de4f048ba8e712fe8e04d1e6f39899613 100644 --- a/app/models/concerns/thumbnailable.rb +++ b/app/models/concerns/thumbnailable.rb @@ -2,7 +2,7 @@ module Thumbnailable extend ActiveSupport::Concern included do - has_attached_file :thumbnail, styles: { medium: '530x300', small: '250x140' }, default_url: 'learning-object-preview.png' + has_attached_file :thumbnail, styles: { medium: '530x300', small: '250x140' }, default_url: '' validates_attachment_content_type :thumbnail, content_type: ['image/jpg', 'image/jpeg', 'image/png', 'image/gif'] end diff --git a/app/models/concerns/trackable.rb b/app/models/concerns/trackable.rb index 4da704bf74b767eec43d45afab93bb1455f59e42..c0b2c747e084b47917e7cdbe140ad5829f25f807 100644 --- a/app/models/concerns/trackable.rb +++ b/app/models/concerns/trackable.rb @@ -3,7 +3,7 @@ module Trackable include PublicActivity::Model included do - tracked owner: proc { |controller, _model| - _model.try(:user) || _model.try(:owner) || controller.try(:current_user) } + tracked owner: proc { |controller, model| + model.try(:user) || model.try(:owner) || controller.try(:current_user) } end end diff --git a/app/services/search_service.rb b/app/services/search_service.rb index d95fe90014fe5fa37998d74c91bad69bae7e3bed..c8883fcea7c33a44f98a823040b1fca12feecc03 100644 --- a/app/services/search_service.rb +++ b/app/services/search_service.rb @@ -1,7 +1,7 @@ module SearchService SEARCH_CLASSES = %w(LearningObject Collection User) - class InvalidSearchError < StandardError; end; + class InvalidSearchError < StandardError; end def self.search(search, user) model = instance(search, user) @@ -13,8 +13,6 @@ module SearchService model.autocomplete end - private - def self.instance(search, user) raise InvalidSearchError unless search.valid? "SearchService::#{search.search_class}".constantize.new(search, user)