Exemplo n.º 1
0
 /**
  * @param string $file
  */
 private function importUnsubscribeStatic($file, $moveFile = false, &$teacherBackup = array(), &$groupBackup = array())
 {
     $data = Import::csv_reader($file);
     if (!empty($data)) {
         $this->logger->addInfo(count($data) . " records found.");
         foreach ($data as $row) {
             $chamiloUserName = $row['UserName'];
             $chamiloCourseCode = $row['CourseCode'];
             $chamiloSessionId = $row['SessionID'];
             $sessionInfo = api_get_session_info($chamiloSessionId);
             if (empty($sessionInfo)) {
                 $this->logger->addError('Session does not exists: ' . $chamiloSessionId);
                 continue;
             }
             $courseInfo = api_get_course_info($chamiloCourseCode);
             if (empty($courseInfo)) {
                 $this->logger->addError('Course does not exists: ' . $courseInfo);
                 continue;
             }
             $userId = Usermanager::get_user_id_from_username($chamiloUserName);
             if (empty($userId)) {
                 $this->logger->addError('User does not exists: ' . $chamiloUserName);
                 continue;
             }
             $sql = "SELECT * FROM " . Database::get_main_table(TABLE_MAIN_COURSE_USER) . "\n                        WHERE\n                            user_id = " . $userId . " AND\n                            course_code = '" . $courseInfo['code'] . "'\n                        ";
             $result = Database::query($sql);
             $userCourseData = Database::fetch_array($result, 'ASSOC');
             $teacherBackup[$userId][$courseInfo['code']] = $userCourseData;
             $sql = "SELECT * FROM " . Database::get_course_table(TABLE_GROUP_USER) . "\n                        WHERE\n                            user_id = " . $userId . " AND\n                            c_id = '" . $courseInfo['real_id'] . "'\n                        ";
             $result = Database::query($sql);
             while ($groupData = Database::fetch_array($result, 'ASSOC')) {
                 $groupBackup['user'][$userId][$courseInfo['code']][$groupData['group_id']] = $groupData;
             }
             $sql = "SELECT * FROM " . Database::get_course_table(TABLE_GROUP_TUTOR) . "\n                        WHERE\n                            user_id = " . $userId . " AND\n                            c_id = '" . $courseInfo['real_id'] . "'\n                        ";
             $result = Database::query($sql);
             while ($groupData = Database::fetch_array($result, 'ASSOC')) {
                 $groupBackup['tutor'][$userId][$courseInfo['code']][$groupData['group_id']] = $groupData;
             }
             CourseManager::unsubscribe_user($userId, $courseInfo['code'], $chamiloSessionId);
             $this->logger->addError("User '{$chamiloUserName}' was removed from session: #{$chamiloSessionId}, Course: " . $courseInfo['code']);
         }
     }
 }
Exemplo n.º 2
0
 /**
  * @param string $file
  */
 private function importUnsubscribeStatic($file)
 {
     $data = Import::csv_reader($file);
     if (!empty($data)) {
         $this->logger->addInfo(count($data) . " records found.");
         foreach ($data as $row) {
             $chamiloUserName = $row['UserName'];
             $chamiloCourseCode = $row['CourseCode'];
             $chamiloSessionId = $row['SessionID'];
             $sessionInfo = api_get_session_info($chamiloSessionId);
             if (empty($sessionInfo)) {
                 $this->logger->addError('Session does not exists: ' . $chamiloSessionId);
                 continue;
             }
             $courseInfo = api_get_course_info($chamiloCourseCode);
             if (empty($courseInfo)) {
                 $this->logger->addError('Course does not exists: ' . $courseInfo);
                 continue;
             }
             $userId = Usermanager::get_user_id_from_username($chamiloUserName);
             if (empty($userId)) {
                 $this->logger->addError('User does not exists: ' . $chamiloUserName);
                 continue;
             }
             CourseManager::unsubscribe_user($userId, $courseInfo['code'], $chamiloSessionId);
             $this->logger->addError("User '{$chamiloUserName}' was removed from session: #{$chamiloSessionId}, Course: " . $courseInfo['code']);
         }
     }
 }