diff options
Diffstat (limited to 'app/validators')
-rw-r--r-- | app/validators/existing_username_validator.rb | 6 | ||||
-rw-r--r-- | app/validators/import_validator.rb | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/app/validators/existing_username_validator.rb b/app/validators/existing_username_validator.rb index 8f7d96b8e..1c5596821 100644 --- a/app/validators/existing_username_validator.rb +++ b/app/validators/existing_username_validator.rb @@ -6,7 +6,7 @@ class ExistingUsernameValidator < ActiveModel::EachValidator usernames_and_domains = begin value.split(',').map do |str| - username, domain = str.strip.gsub(/\A@/, '').split('@') + username, domain = str.strip.gsub(/\A@/, '').split('@', 2) domain = nil if TagManager.instance.local_domain?(domain) next if username.blank? @@ -21,8 +21,8 @@ class ExistingUsernameValidator < ActiveModel::EachValidator if options[:multiple] record.errors.add(attribute, I18n.t('existing_username_validator.not_found_multiple', usernames: usernames_with_no_accounts.join(', '))) if usernames_with_no_accounts.any? - else - record.errors.add(attribute, I18n.t('existing_username_validator.not_found')) if usernames_with_no_accounts.any? || usernames_and_domains.size > 1 + elsif usernames_with_no_accounts.any? || usernames_and_domains.size > 1 + record.errors.add(attribute, I18n.t('existing_username_validator.not_found')) end end end diff --git a/app/validators/import_validator.rb b/app/validators/import_validator.rb index 9f19aee2a..cbad56df6 100644 --- a/app/validators/import_validator.rb +++ b/app/validators/import_validator.rb @@ -26,6 +26,8 @@ class ImportValidator < ActiveModel::Validator when 'following' validate_following_import(import, row_count) end + rescue CSV::MalformedCSVError + import.errors.add(:data, :malformed) end private |