From 3ca8ce211be703640a396b4660cc164c0ead9f80 Mon Sep 17 00:00:00 2001 From: Julio Date: Fri, 24 Nov 2017 17:48:47 +0100 Subject: [PATCH] Fix sent message to boss when user achieved skill --- main/badge/assign.php | 8 ++++++-- main/inc/lib/skill.lib.php | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/main/badge/assign.php b/main/badge/assign.php index 136208d3f9..9e669e0649 100644 --- a/main/badge/assign.php +++ b/main/badge/assign.php @@ -269,14 +269,16 @@ if ($form->validate()) { $entityManager->persist($skillUser); $entityManager->flush(); + // ofaj // Send email depending of children_auto_threshold $skillRelSkill = new SkillRelSkill(); $skillModel = new \Skill(); - $parents = $skillRelSkill->getSkillParents($values['skill']); + $parents = $skillModel->getDirectParents($skillToProcess); + $extraFieldValue = new ExtraFieldValue('skill'); foreach ($parents as $parentInfo) { - $parentId = $parentInfo['id']; + $parentId = $parentInfo['skill_id']; $parentData = $skillModel->get($parentId); $data = $extraFieldValue->get_values_by_handler_and_field_variable($parentId, 'children_auto_threshold'); @@ -290,6 +292,7 @@ if ($form->validate()) { $counter++; } } + if ($counter >= $requiredSkills) { $bossList = UserManager::getStudentBossList($userId); if (!empty($bossList)) { @@ -311,6 +314,7 @@ if ($form->validate()) { ); } } + break; } } } diff --git a/main/inc/lib/skill.lib.php b/main/inc/lib/skill.lib.php index 9872a09b54..8c3b3bdcbc 100755 --- a/main/inc/lib/skill.lib.php +++ b/main/inc/lib/skill.lib.php @@ -200,7 +200,7 @@ class SkillRelSkill extends Model */ public function getSkillParents($skill_id, $add_child_info = true) { - $skill_id = intval($skill_id); + $skill_id = (int) $skill_id; $sql = 'SELECT child.* FROM '.$this->table.' child LEFT JOIN '.$this->table.' parent ON child.parent_id = parent.skill_id @@ -895,7 +895,7 @@ class Skill extends Model /** * All direct parents * @param int $skillId - * @return int + * @return array */ public function getDirectParents($skillId) {