Adding custome conditions see BT#6449

$onlyAddFirstCoachOrTeacher to course session
$removeAllTeachersFromCourse
1.9.x
Julio Montoya 12 years ago
parent fc6b904efb
commit 6dd6ecf360
  1. 4
      main/cron/import_csv.php
  2. 46
      main/inc/lib/sessionmanager.lib.php

@ -830,7 +830,9 @@ $stream = new StreamHandler(api_get_path(SYS_ARCHIVE_PATH).'import_csv.log', $mi
$logger->pushHandler(new BufferHandler($stream, 0, $minLevel));
$logger->pushHandler(new RotatingFileHandler('import_csv', 5, $minLevel));
$import = new ImportCsv($logger, $_configuration['cron_import_csv_conditions']);
$cronImportCSVConditions = isset($_configuration['cron_import_csv_conditions']) ? $_configuration['cron_import_csv_conditions'] : null;
$import = new ImportCsv($logger, $cronImportCSVConditions);
if (isset($_configuration['default_admin_user_id_for_cron'])) {
$import->defaultAdminId = $_configuration['default_admin_user_id_for_cron'];

@ -2903,6 +2903,7 @@ class SessionManager
* @param array $fieldsToAvoidUpdate
* @param bool $deleteUsersNotInList
* @param bool $updateCourseCoaches
* @param bool $sessionWithCoursesModifier
* @return array
*/
static function importCSV(
@ -2983,7 +2984,7 @@ class SessionManager
if (isset($extraFields) && !empty($extraFields)) {
foreach ($extraFields as $original => $to) {
$enreg[$to] = $enreg[$original];
$enreg[$to] = isset($enreg[$original]) ? $enreg[$original] : null;
}
}
@ -3308,31 +3309,33 @@ class SessionManager
}
$course_coaches = array_merge($course_coaches, $teachersToAdd);
}
$coachCounter = 0;
$teacherToAdd = null;
foreach ($course_coaches as $course_coach) {
$coach_id = UserManager::get_user_id_from_username($course_coach);
if ($coach_id !== false) {
if ($onlyAddFirstCoachOrTeacher == false) {
foreach ($course_coaches as $course_coach) {
$coach_id = UserManager::get_user_id_from_username($course_coach);
if ($coach_id !== false) {
// Just insert new coaches
SessionManager::updateCoaches($session_id, $course_code, array($coach_id), false);
// Add only first coach teacher
if ($onlyAddFirstCoachOrTeacher && $coachCounter > 1) {
continue;
if ($debug) {
$logger->addInfo("Sessions - Adding course coach: user #$coach_id ($course_coach) to course: '$course_code' and session #$session_id");
}
$savedCoaches[] = $coach_id;
} else {
$error_message .= get_lang('UserDoesNotExist').' : '.$course_coach.$eol;
}
// Just insert new coaches
SessionManager::updateCoaches($session_id, $course_code, array($coach_id), false);
$teacherToAdd = $coach_id;
$coachCounter++;
if ($debug) {
$logger->addInfo("Sessions - Adding course coach: user #$coach_id ($course_coach) to course: '$course_code' and session #$session_id");
}
} else {
foreach ($course_coaches as $course_coach) {
$coach_id = UserManager::get_user_id_from_username($course_coach);
if ($coach_id !== false) {
$teacherToAdd = $coach_id;
break;
}
$savedCoaches[] = $coach_id;
} else {
$error_message .= get_lang('UserDoesNotExist').' : '.$course_coach.$eol;
}
if (!empty($teacherToAdd)) {
SessionManager::updateCoaches($session_id, $course_code, array($teacherToAdd), true);
}
}
@ -3348,6 +3351,7 @@ class SessionManager
}
}
// Continue default behaviour.
if ($onlyAddFirstCoachOrTeacher == false) {
// Checking one more time see BT#6449#note-149
$coaches = SessionManager::getCoachesByCourseSession($session_id, $course_code);

Loading…
Cancel
Save