From f309332db3164bcf0e4b0e3b1a87c215fc02b71b Mon Sep 17 00:00:00 2001
From: Arnaud Levy <contact@arnaudlevy.com>
Date: Fri, 18 Mar 2022 08:21:48 +0100
Subject: [PATCH] fix

---
 app/models/university/person/alumnus/import.rb | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/app/models/university/person/alumnus/import.rb b/app/models/university/person/alumnus/import.rb
index fd08abff9..2f8e7bd17 100644
--- a/app/models/university/person/alumnus/import.rb
+++ b/app/models/university/person/alumnus/import.rb
@@ -62,23 +62,24 @@ class University::Person::Alumnus::Import < ApplicationRecord
                          .first_or_create
       first_name = clean_encoding row['first_name']
       last_name = clean_encoding row['last_name']
-      email = row['mail']
+      email = clean_encoding(row['mail']).to_s.downcase
       url = clean_encoding row['url']
-      if email.blank?
-        person = university.people
-                           .where(first_name: first_name, last_name: last_name)
-                           .first_or_create
-      else
+      if email.present?
         person = university.people
                            .where(email: email)
                            .first_or_create
         person.first_name = first_name
         person.last_name = last_name
+      else
+        person = university.people
+                           .where(first_name: first_name, last_name: last_name)
+                           .first_or_create
       end
       # TODO all fields
       person.is_alumnus = true
       person.url = url
-      person.slug = person.to_s.parameterize
+      person.slug = person.to_s.parameterize.dasherize
+      byebug unless person.valid?
       person.save
       cohort.people << person unless person.in?(cohort.people)
     end
@@ -89,6 +90,6 @@ class University::Person::Alumnus::Import < ApplicationRecord
     if value.encoding != 'UTF-8'
       value = value.force_encoding 'UTF-8'
     end
-    value
+    value.strip
   end
 end
-- 
GitLab