steps.rb 626 B

12345678910111213141516171819202122
  1. class StepsController < ApplicationController
  2. before_filter :ensure_logged_in
  3. def update
  4. wizard = CustomWizard::Builder.new(current_user, params[:wizard_id]).build
  5. updater = wizard.create_updater(params[:id], params[:fields])
  6. updater.update
  7. if updater.success?
  8. result = { success: 'OK' }
  9. result[:refresh_required] = true if updater.refresh_required?
  10. render json: result
  11. else
  12. errors = []
  13. updater.errors.messages.each do |field, msg|
  14. errors << { field: field, description: msg.join }
  15. end
  16. render json: { errors: errors }, status: 422
  17. end
  18. end
  19. end