diff --git a/app/Importer/Importer.php b/app/Importer/Importer.php index 381047a77a..db7dc938f0 100644 --- a/app/Importer/Importer.php +++ b/app/Importer/Importer.php @@ -247,6 +247,18 @@ abstract class Importer $user_username = $this->findCsvMatch($row, "username"); $first_name = ''; $last_name = ''; + if(empty($user_name) && empty($user_email) && empty($user_username)) { + $this->log('No user data provided - skipping user creation, just adding asset'); + //$user_username = ''; + return false; + } + // A username was given. + if( !empty($user_username)) { + $user = User::where('username', $user_username)->first(); + if($user) { + return $user; + } + } // A number was given instead of a name if (is_numeric($user_name)) { $this->log('User '.$user_name.' is not a name - assume this user already exists'); @@ -255,28 +267,24 @@ abstract class Importer return $user; } $this->log('User with id'.$user_name.' does not exist. Continuing through our processes'); - } elseif (empty($user_name)) { - $this->log('No user data provided - skipping user creation, just adding asset'); - //$user_username = ''; - return false; - } else { - $user_email_array = User::generateFormattedNameFromFullName(Setting::getSettings()->email_format, $user_name); - $first_name = $user_email_array['first_name']; - $last_name = $user_email_array['last_name']; + } + // Generate data based on user name. + $user_email_array = User::generateFormattedNameFromFullName(Setting::getSettings()->email_format, $user_name); + $first_name = $user_email_array['first_name']; + $last_name = $user_email_array['last_name']; - if ($user_email=='') { - if (Setting::getSettings()->email_domain) { - $user_email = str_slug($user_email_array['username']).'@'.Setting::getSettings()->email_domain; - } + if (empty($user_email)) { + if (Setting::getSettings()->email_domain) { + $user_email = str_slug($user_email_array['username']).'@'.Setting::getSettings()->email_domain; } + } - if ($user_username=='') { - if ($this->usernameFormat =='email') { - $user_username = $user_email; - } else { - $user_name_array = User::generateFormattedNameFromFullName(Setting::getSettings()->username_format, $user_name); - $user_username = $user_name_array['username']; - } + if (empty($user_username)) { + if ($this->usernameFormat =='email') { + $user_username = $user_email; + } else { + $user_name_array = User::generateFormattedNameFromFullName(Setting::getSettings()->username_format, $user_name); + $user_username = $user_name_array['username']; } } $user = new User;