Files
Chamilo/main/cron/check_user_careers.php
Xes 73154ae174
Behat tests 1.11.x 🐞 / PHP 7.4 Test on ubuntu-latest (push) Canceled after 0s
PHP-CS-Fixer / composer_install (7.4) (push) Canceled after 0s
Chamilo 1.11.40 (ZIP oficial v1.11.40)
Fuente: https://github.com/chamilo/chamilo-lms/releases/download/v1.11.40/chamilo-1.11.40.zip
sha256: 1cf4bf2cc7bae1ef1a1eff643235db1d552f78ddf4b6dd1e2d2dac9868679439
Snapshot independiente (rama huerfana); diffable vs 1.11.38. vendor incluido.
2026-08-06 17:59:45 +02:00

56 lines
1.9 KiB
PHP

<?php
/* For licensing terms, see /license.txt */
require_once __DIR__.'/../inc/global.inc.php';
$file = 'all_session_careers_with_users.csv';
$data = Import::csvToArray($file);
$extraFieldValue = new ExtraFieldValue('session');
$count = 1;
$careerValue = new ExtraFieldValue('career');
foreach ($data as $row) {
echo "Line $count ".PHP_EOL;
$count++;
$users = explode('|', $row['Users']);
$externalCareerIdList = $row['extra_careerid'];
if (substr($externalCareerIdList, 0, 1) === '[') {
$externalCareerIdList = substr($externalCareerIdList, 1, -1);
$externalCareerIds = preg_split('/,/', $externalCareerIdList);
} else {
$externalCareerIds = [$externalCareerIdList];
}
$chamiloCareerList = [];
foreach ($externalCareerIds as $careerId) {
$careerFound = $careerValue->get_item_id_from_field_variable_and_field_value('external_career_id', $careerId);
if ($careerFound && isset($careerFound['item_id'])) {
$chamiloCareerList[] = $careerFound['item_id'];
}
}
if (empty($chamiloCareerList)) {
echo "No career found ".PHP_EOL;
continue;
}
foreach ($users as $username) {
$userInfo = api_get_user_info_from_username($username);
if ($userInfo) {
$userId = $userInfo['user_id'];
foreach ($chamiloCareerList as $careerId) {
if (UserManager::userHasCareer($userId, $careerId)) {
echo "User $username (#$userId) has already the chamilo career # $careerId ".PHP_EOL;
continue;
} else {
//UserManager::addUserCareer($userId, $careerId);
echo "Save career #$careerId to user $username (#$userId) ".PHP_EOL;
}
}
} else {
echo "Username not found: $username ".PHP_EOL;
}
}
}