From a6cda03464bcfbd5beeb47dbd6e9895780fcb543 Mon Sep 17 00:00:00 2001
From: Thomas Fradet <t.fradet8@gmail.com>
Date: Mon, 18 Feb 2019 16:06:12 +0100
Subject: [PATCH] scale bug fixed

---
 CHANGELOG.md                       | 13 +++++++++++++
 view/view_competency_iena_user.php | 30 ++++++++++++++++++++++++------
 2 files changed, 37 insertions(+), 6 deletions(-)

diff --git a/CHANGELOG.md b/CHANGELOG.md
index b1023a2..40bd54f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,2 +1,15 @@
 # 19/02/19
 
+## Page d'un compétence d'un utilisateur dans le cours
+
+L'échelle du référentiel était utilisée pour l'évaluation des compétences, au lieu de l'échelle de la compétence, si elle est paramétrée (différente de celle du référentiel). Ceci pour l'évaluation sur zone de la compétence active, ou l'évaluation rapide. 
+
+Le chargement d'une page contenant des sous-compétences ne fonctionnait plus en version 3.5.4+ : résolut par le changement sur le point précédent. 
+
+# Backlog
+
+## Page d'un compétence d'un utilisateur dans le cours
+
+Il est peut-être possible de rappeler les preuves déposées dans les plans de formation au niveau de cette page et pourquoi pas d'y lier de nouvelles preuves, possiblement depuis les pages ou collections Mahara. La lecture et liaison de preuves au niveau user et non user x course, directement depuis le contexte d'un cours, sans passer par les plans de formation, éviterait d'y avoir recours et donc de les créer / paramétrer / suivre, etc. 
+
+Dans l'accordéon qui permet de visualiser les niveaux supérieur dans le référentiel de compétence, ajouter un bouton pour se rendre sur la page du niveau considéré. Actuellement, il n'est possible que de descendre dans un niveau inférieur. 
diff --git a/view/view_competency_iena_user.php b/view/view_competency_iena_user.php
index c01d8b0..35e00c3 100644
--- a/view/view_competency_iena_user.php
+++ b/view/view_competency_iena_user.php
@@ -52,8 +52,17 @@ class view_competency_iena_user
 		$module_comp = $module_instance->get_modules_by_competencyID($competencyid);
 
 		$data = $competency_instance->get_data($tmpiduser, $competencyid, $COURSE->id);
-		$scale = \grade_scale::fetch(array('id' => $data->usercompetencysummary->competency->framework->scaleid));
+		$scale = \grade_scale::fetch(array('id' => $data->usercompetencysummary->competency->scaleid));
 		$scale->load_items();
+
+		// $core_comp = core_competency\api::read_competency($competencyid);
+
+		// echo "<pre>";
+		// var_dump($data);
+		// var_dump($data->usercompetencysummary->competency->scaleid);
+		// var_dump($scale);
+		// echo "</pre>";
+
 			//var_dump($scale->scale_items);die;
 
 		$student_instance = new block_competency_iena_student();
@@ -110,6 +119,7 @@ class view_competency_iena_user
 		if ( count( $in_course_descendant_ids ) > 0 ) {
 			$children_competencies = [];
 			foreach ( $in_course_descendant_ids as $child_id ) {
+
 				$child_competency = core_competency\api::read_competency($child_id);
 				if ( $child_competency->get('parentid') != $competencyid ) {
 					continue;
@@ -121,10 +131,18 @@ class view_competency_iena_user
 				$tmp_cpt = new StdClass();
 				$tmp_cpt->id = $child_competency->get('id');
 				$tmp_cpt->name = $child_competency->get('shortname');
-				// var_dump($child_competency);
-				$scale = \grade_scale::fetch( ['id' => $child_competency->get('scaleid')] );
-				// var_dump($scale);
-				$tmp_cpt->scale = $scale->load_items();
+				// echo "<pre>";
+				// var_dump($child_in_course_competency);
+				
+				// before
+				// $scale = \grade_scale::fetch( ['id' => $child_competency->get('scaleid')] );
+				// $tmp_cpt->scale = $scale->load_items();
+
+				// after
+				$data = $competency_instance->get_data($tmpiduser, $child_id, $COURSE->id);
+				$sub_scale = \grade_scale::fetch(array('id' => $data->usercompetencysummary->competency->scaleid));
+				$tmp_cpt->scale = $sub_scale->load_items();
+
 				$tmp_cpt->proficiency = $child_in_course_competency->get('proficiency');
 				$tmp_cpt->grade = $child_in_course_competency->get('grade');
 				$children_competencies[] = $tmp_cpt;
@@ -509,7 +527,7 @@ class view_competency_iena_user
 								echo "<div class='alert alert-info'>Validation / Evaluation demandée par l'étudiant</div>";
 							}
 
-						// var_dump($val_asked);
+						// var_dump($scale);
 
 							echo "<button type=\"button\"
 							class=\"btn btn-primary\" id='eval-show'>".get_string('evalute_iena', 'block_competency_iena')."</button>
-- 
GitLab