Class: Decidim::Admin::ParticipatorySpacePrivateUserCsvImportForm

Inherits:
Form
  • Object
show all
Includes:
HasUploadValidations, ProcessesFileLocally
Defined in:
app/forms/decidim/admin/participatory_space_private_user_csv_import_form.rb

Overview

A form object used to upload CSV to batch participatory space private users.

Instance Method Summary collapse

Instance Method Details

#validate_csvObject



20
21
22
23
24
25
26
27
28
29
30
# File 'app/forms/decidim/admin/participatory_space_private_user_csv_import_form.rb', line 20

def validate_csv
  return if file.blank?

  process_file_locally(file) do |file_path|
    CSV.foreach(file_path, encoding: "BOM|UTF-8") do |, user_name|
      errors.add(:user_name, :invalid) unless user_name.match?(UserBaseEntity::REGEXP_NAME)
    end
  end
rescue CSV::MalformedCSVError
  errors.add(:file, :malformed)
end