Class: MrCommon::PreRegistrations::ImportController

Inherits:
BaseController show all
Defined in:
app/controllers/mr_common/pre_registrations/import_controller.rb

Overview

Implements PreRegistration import for the admin panel. Expects the user to upload a CSV file with a header line and columns ordered like:

first_name, last_name, email

Instance Method Summary collapse

Instance Method Details

#createObject



14
15
16
17
18
19
# File 'app/controllers/mr_common/pre_registrations/import_controller.rb', line 14

def create
  csv = import_params[:csv_file]
  importer = MrCommon::PreRegistrationImporter.new(csv.read)
  result = importer.import
  redirect_to new_pre_registrations_import_path, notice: "Imported #{result.created} and skipped #{result.skipped} duplicate or invalid entries."
end

#import_paramsObject



21
22
23
# File 'app/controllers/mr_common/pre_registrations/import_controller.rb', line 21

def import_params
  params.require(:import).permit(:csv_file)
end

#newObject



11
12
# File 'app/controllers/mr_common/pre_registrations/import_controller.rb', line 11

def new
end