Esempio n. 1
0
 /**
  * This function checks whether some users in the uploaded file
  * repeated and creates unique usernames if necesary.
  * A case: Within the file there is an user repeted twice (Julio Montoya / Julio Montoya)
  * and the username fields are empty.
  * Then, this function would create unique usernames based on the first and the last name.
  * Two users wiould be created - jmontoya and jmontoya2.
  * Of course, if in the database there is a user with the name jmontoya,
  * the newly created two users registered would be jmontoya2 and jmontoya3.
  * @param $users list of users
  * @author Julio Montoya Armas
  */
 function check_all_usernames($users, $course_list, $id_session)
 {
     $table_user = Database::get_main_table(TABLE_MAIN_USER);
     $usernames = array();
     $new_users = array();
     foreach ($users as $index => $user) {
         $desired_username = array();
         if (empty($user['UserName'])) {
             $desired_username = MySpace::make_username($user['FirstName'], $user['LastName'], '');
             $pre_username = $desired_username['username'] . $desired_username['sufix'];
             $user['UserName'] = $pre_username;
             $user['create'] = '1';
         } else {
             if (UserManager::is_username_available($user['UserName'])) {
                 $desired_username = MySpace::make_username($user['FirstName'], $user['LastName'], $user['UserName']);
                 $user['UserName'] = $desired_username['username'] . $desired_username['sufix'];
                 $user['create'] = '1';
             } else {
                 $is_session_avail = MySpace::user_available_in_session($user['UserName'], $course_list, $id_session);
                 if ($is_session_avail == 0) {
                     $user_name = $user['UserName'];
                     $sql_select = "SELECT user_id FROM {$table_user} WHERE username ='******' ";
                     $rs = Database::query($sql_select);
                     $user['create'] = Database::result($rs, 0, 0);
                     // This should be the ID because the user exists.
                 } else {
                     $user['create'] = $is_session_avail;
                 }
             }
         }
         // Usernames is the current list of users in the file.
         $result_array = MySpace::check_user_in_array($usernames, $desired_username);
         $usernames = $result_array[0];
         $desired_username = $result_array[1];
         $user['UserName'] = $desired_username['username'] . $desired_username['sufix'];
         $new_users[] = $user;
     }
     return $new_users;
 }