Minor - Refactor code BT#15624

pull/2926/head
Julio Montoya 7 years ago
parent e551d248e4
commit 72ceffd2d1
  1. 60
      main/inc/lib/certificate.lib.php
  2. 51
      main/social/my_skills_report.php

@ -863,4 +863,64 @@ class Certificate extends Model
return Database::store_result($rs, 'ASSOC');
}
/**
* @param int $userId
*/
public static function generateUserSkills($userId)
{
$controller = new IndexManager(get_lang('MyCourses'));
$courseAndSessions = $controller->returnCoursesAndSessions($userId, true, null, true, false);
if (isset($courseAndSessions['courses']) && !empty($courseAndSessions['courses'])) {
foreach ($courseAndSessions['courses'] as $course) {
$cats = Category::load(
null,
null,
$course['code'],
null,
null,
null,
false
);
if (isset($cats[0]) && !empty($cats[0])) {
Category::generateUserCertificate(
$cats[0]->get_id(),
$userId
);
}
}
}
if (isset($courseAndSessions['sessions']) && !empty($courseAndSessions['sessions'])) {
foreach ($courseAndSessions['sessions'] as $sessionCategory) {
if (isset($sessionCategory['sessions'])) {
foreach ($sessionCategory['sessions'] as $sessionData) {
if (!empty($sessionData['courses'])) {
$sessionId = $sessionData['session_id'];
foreach ($sessionData['courses'] as $courseData) {
$cats = Category:: load(
null,
null,
$courseData['course_code'],
null,
null,
$sessionId,
false
);
if (isset($cats[0]) && !empty($cats[0])) {
Category::generateUserCertificate(
$cats[0]->get_id(),
$userId
);
}
}
}
}
}
}
}
}
}

@ -29,56 +29,7 @@ switch ($action) {
$certificate->generatePdfFromCustomCertificate();
break;
case 'generate':
$controller = new IndexManager(get_lang('MyCourses'));
$courseAndSessions = $controller->returnCoursesAndSessions($userId, true, null, true, false);
foreach ($courseAndSessions['courses'] as $course) {
$cats = Category:: load(
null,
null,
$course['code'],
null,
null,
null,
false
);
if (isset($cats[0]) && !empty($cats[0])) {
$certificate = Category::generateUserCertificate(
$cats[0]->get_id(),
$userId
);
}
}
foreach ($courseAndSessions['sessions'] as $sessionCategory) {
if (isset($sessionCategory['sessions'])) {
foreach ($sessionCategory['sessions'] as $sessionData) {
if (!empty($sessionData['courses'])) {
$sessionId = $sessionData['session_id'];
foreach ($sessionData['courses'] as $courseData) {
$cats = Category:: load(
null,
null,
$courseData['course_code'],
null,
null,
$sessionId,
false
);
if (isset($cats[0]) && !empty($cats[0])) {
$certificate = Category::generateUserCertificate(
$cats[0]->get_id(),
$userId
);
}
}
}
}
}
}
$certificate = Certificate::generateUserSkills(api_get_user_id());
Display::addFlash(Display::return_message(get_lang('Updated')));
header('Location: '.api_get_self());
exit;

Loading…
Cancel
Save