Skills : Recalculate results for skills from gradebook - refs BT#19823

pull/4219/head
Christian 3 years ago
parent 4661eb7f10
commit ee58d64660
  1. 9
      main/gradebook/lib/be/category.class.php
  2. 11
      main/inc/lib/skill.lib.php

@ -2148,7 +2148,9 @@ class Category implements GradebookItem
true
);
if (!$userFinishedCourse) {
$enableGradeSubCategorySkills = (true === api_get_configuration_value('gradebook_enable_subcategory_skills_independant_assignement'));
// it continues if is enabled skills independant of assignment
if (!$userFinishedCourse && !$enableGradeSubCategorySkills) {
return false;
}
@ -2180,6 +2182,11 @@ class Category implements GradebookItem
$userHasSkills = !empty($userSkills);
}
// certificate is not generated if course is not finished
if (!$userFinishedCourse) {
return false;
}
// Block certification links depending gradebook configuration (generate certifications)
if (empty($category->getGenerateCertificates())) {
if ($userHasSkills) {

@ -1209,6 +1209,17 @@ class Skill extends Model
$gradebookId = $category->get_id();
$skill_gradebooks = $skill_gradebook->get_all(['where' => ['gradebook_id = ?' => $gradebookId]]);
// It checks if gradebook is passed to add the skill
$userFinished = Category::userFinishedCourse(
$userId,
$category,
true
);
if (!$userFinished) {
return false;
}
if (!empty($skill_gradebooks)) {
foreach ($skill_gradebooks as $skill_gradebook) {
$hasSkill = $this->userHasSkill(

Loading…
Cancel
Save