Module: Calagator::DuplicateChecking::ControllerActions
- Included in:
- EventsController, VenuesController
- Defined in:
- lib/calagator/duplicate_checking/controller_actions.rb
Instance Method Summary collapse
-
#duplicates ⇒ Object
GET /##model_class/duplicates.
-
#squash_many_duplicates ⇒ Object
POST /##model_class/squash_multiple_duplicates.
Instance Method Details
#duplicates ⇒ Object
GET /##model_class/duplicates
7 8 9 10 11 12 13 |
# File 'lib/calagator/duplicate_checking/controller_actions.rb', line 7 def duplicates @type = params[:type] || 'na' @grouped = model_class.find_duplicates_by_type(@type) rescue ArgumentError => e @grouped = {} flash[:failure] = e.to_s end |
#squash_many_duplicates ⇒ Object
POST /##model_class/squash_multiple_duplicates
16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/calagator/duplicate_checking/controller_actions.rb', line 16 def squash_many_duplicates primary = model_class.find_by(id: params[:primary_id]) duplicate_ids = params.keys.grep(/^duplicate_id_\d+$/) { |t| params[t].to_i } duplicates = model_class.where(id: duplicate_ids) squasher = model_class.squash(primary, duplicates) if squasher.success flash[:success] = squasher.success else flash[:failure] = squasher.failure end redirect_to action: 'duplicates', type: params[:type] end |