From ce13f74bf6351d3cc72f71fbfd6929c7d9cb787a Mon Sep 17 00:00:00 2001
From: Myriam Delaruelle
 <Myriam Delaruelle@bdn-un-mdelarue.ad.univ-lorraine.fr>
Date: Fri, 22 Oct 2021 11:04:28 +0200
Subject: [PATCH] fix student view dashboard

---
 course_competency.php                         | 12 ++--
 js/dropdown.js                                | 17 +-----
 styles.css                                    |  7 ++-
 .../dashboard_competency_student.mustache     | 57 +++++++++++--------
 4 files changed, 47 insertions(+), 46 deletions(-)

diff --git a/course_competency.php b/course_competency.php
index 9215c72..06ab1aa 100644
--- a/course_competency.php
+++ b/course_competency.php
@@ -8,6 +8,7 @@ $courseid = required_param('courseid', PARAM_INT);
 $studentid = required_param('studentid', PARAM_INT);
 $competencyid = required_param('competencyid', PARAM_INT);
 
+
 $url = new moodle_url('/blocks/competency_iena/course_competency.php', array('courseid' => $courseid, 'studentid' => $studentid, 'competencyid' => $competencyid));
 $PAGE->set_url($url);
 
@@ -92,9 +93,10 @@ $student = user_get_users_by_id([$studentid])[$studentid];
 
 /* All students */
 /* Only if is teacher because it's to load stud list to switch : teacher feature */
-$students = NULL;
+$students = array();
 if ( $is_teacher ) {
 	$students = get_enrolled_users($context);
+	
 }
 
 
@@ -121,6 +123,7 @@ $course_cpts = \core_competency\course_competency::list_competencies($COURSE->id
 
 foreach ($course_cpts as $course_cpt) {
 	$course_cpt->shortname=$course_cpt->get("shortname");
+	$course_cpt->id=$course_cpt->get("id");
 }
 
 
@@ -166,9 +169,9 @@ if ( $review_asked ) {
 }
 
 
-
+$scale=array();
 if ( $is_teacher ) {
-	$scale=array();
+	
 	foreach ($cpt_scale as $key => $item) {
 		$scaleItem=new StdClass();
 		$scaleItem->label=$item;
@@ -251,8 +254,6 @@ if ( count($all_evidences) != 0 ) {
 		}
 		$ev->date = date("d/m/y – H:i", $ev->timemodified);
 	}
-
-	var_dump($all_evidences);
 	
 	/* $chart = new core\chart_line(); */
 	$chart = new core\chart_bar();
@@ -310,7 +311,6 @@ if ( count($cm_ids) !== 0 ) {
 
 }
 
-
 $data=array();
 $data['is_enrolled']=$is_enrolled;
 $data['link_switch']=$CFG->wwwroot."/blocks/competency_iena/course_competency.php";
diff --git a/js/dropdown.js b/js/dropdown.js
index 720f0ec..2d6675a 100644
--- a/js/dropdown.js
+++ b/js/dropdown.js
@@ -2,10 +2,8 @@
 	function filter (e) {
 		let filter = e.target.value.toUpperCase();
 		let a = e.target.parentNode.querySelectorAll('a');
-		console.log(a);
 		for (let k = 0; k < a.length; k++) {
 			let txtValue = a[k].textContent || a[k].innerText;
-			console.log(txtValue);
 			if (txtValue.toUpperCase().indexOf(filter) > -1) {
 				a[k].style.display = "block";
 			} else {
@@ -15,7 +13,6 @@
 	}
 	window.addEventListener('load', function () {
 		/* Activation of dropdowns in the page */
-		console.log("on load");
 		let drops = document.querySelectorAll('.iena-dropdown');
 		
 		for (var i = 0; i < drops.length; i++) {
@@ -29,14 +26,9 @@
 				//Pas propre mais sinon c'est le template qui est pas propre 
 				//pour le dashboard compétence/étudiant, on a rajouté un div inline-form
 				if(!list){
-					console.log("pas list");
-					console.log(e.target.parentNode.parentNode.parentNode);
 					list=e.target.parentNode.parentNode.parentNode.getElementsByClassName('iena-droplist')[0]
-					console.log(list);
 				}
-				console.log(list);
 				list.style.display="block";
-				console.log("c'était ici l'erreur");
 				filter(e);
 			});
 			
@@ -53,10 +45,8 @@
 
 					let list = e.target.parentNode;
 					if(!list){
-						console.log("pas list");
 						list=e.target.parentNode.parentNode.parentNode;
 					}
-					console.log(list);
 					list.style.display="none";
 					
 					list.parentNode.parentNode.submit();
@@ -68,14 +58,11 @@
 				for (var i = 0; i < a.length; i++) {
 					a[i].style.display = "none";
 				}*/
-				console.log("hello");
 				
 				let list = e.target.parentNode.getElementsByClassName('iena-droplist')[0];
 				if(!list){
-					console.log("pas list");
 					list=e.target.parentNode.parentNode.parentNode.getElementsByClassName('iena-droplist')[0]
 				}
-				console.log(list);
 
 				list.style.display="none";
 			});
@@ -134,7 +121,6 @@
 			var opts = document.getElementById('student_list').getElementsByClassName('iena-drop-item');
 			var studentid = document.getElementById('studentid').innerHTML;
 			for (var i = 0; i < opts.length; i++) {
-				console.log(opts[i].dataset);
 				if (opts[i].dataset.value === studentid) {
 					var prev = opts[i - 1] === undefined ? false : opts[i - 1].dataset.value;
 					var next = opts[i + 1] === undefined ? false : opts[i + 1].dataset.value;
@@ -162,6 +148,7 @@
 			var opts = document.getElementById('competency_list').getElementsByClassName('iena-drop-item');
 			var competencyid = document.getElementById('competencyid').innerHTML;
 			for (var i = 0; i < opts.length; i++) {
+
 				if (opts[i].dataset.value === competencyid) {
 					var prev = opts[i - 1] === undefined ? false : opts[i - 1].dataset.value;
 					var next = opts[i + 1] === undefined ? false : opts[i + 1].dataset.value;
@@ -172,7 +159,6 @@
 						document.getElementById('prevCpt').onclick = function () {
 
 							document.getElementById('competencyid_sel').value = document.getElementById('prevCpt').dataset.prev;
-							console.log(document.getElementById('competencyid_sel').value);
 						}
 					}
 					if (next === false) {
@@ -181,7 +167,6 @@
 						document.getElementById('nextCpt').dataset.next = next;
 						document.getElementById('nextCpt').onclick = function () {
 							document.getElementById('competencyid_sel').value = document.getElementById('nextCpt').dataset.next;
-							console.log(document.getElementById('competencyid_sel').value);
 						}
 					}
 				}
diff --git a/styles.css b/styles.css
index a526f29..165b80d 100644
--- a/styles.css
+++ b/styles.css
@@ -74,7 +74,7 @@
 /* Page compétences d'un utilisateurs */
 
 .list-group{
-    padding-bottom: 1px;
+    padding-bottom: 1px!important;
 }
 
 .list-group-item-action:hover .iena-cpt-action-title {
@@ -358,6 +358,7 @@ table.dataTable{
 .dashboard-chart{
     grid-column: 2;
     grid-row: 1 / 2;
+    overflow-y:auto;
 }
 
 .dashboard-chart .iena-chart{
@@ -390,4 +391,8 @@ table.dataTable{
 
 .button-assess{
     margin-top: 15px;
+}
+
+#modal-assess{
+    text-align: left;
 }
\ No newline at end of file
diff --git a/templates/dashboard_competency_student.mustache b/templates/dashboard_competency_student.mustache
index 6993593..d895cab 100644
--- a/templates/dashboard_competency_student.mustache
+++ b/templates/dashboard_competency_student.mustache
@@ -1,8 +1,9 @@
 <h2>{{# str }} details_competency, block_competency_iena{{/ str }}</h2>
 {{#is_enrolled}}
 
-	{{#is_teacher}}
+	
 		<div class="row" style="margin-top:20px; margin-bottom:20px">
+		{{#is_teacher}}
 			<div class="col-md-6">
 				<form action='{{link_switch}}' id='change_student' class='m-b-1' autocomplete='off'>
 					<input type='text' hidden name='courseid' value='{{courseid}}'>
@@ -23,8 +24,9 @@
 					</div>
 				</form>
 			</div>
+			{{/is_teacher}}
 			<div class="col-md-6">
-				<form action='{{link_switch}}' id='change_cpt_form' class='m-b-1' autocomplete='off' style='display: block;height: 1.5rem;'>
+				<form action='{{link_switch}}' id='change_cpt_form' class='m-b-1' autocomplete='off' style='display: block;'>
 					<input type='text' hidden name='courseid' value='{{courseid}}'>
 					<input type='text' hidden name='studentid' value='{{studentid}}'>
 					<span hidden id='competencyid'>{{competencyid}}</span>
@@ -45,21 +47,22 @@
 				</form>
 			</div>
 		</div>
-	{{/is_teacher}}
+	
+	
 	<div class='iena-grid'>
 		
 		<div class='dashboard-panel'>
 			<div class='alert alert-{{proficiency_class}}'>
 
 				<h3 class='h4'>Validation</h3>
-				<p class='m-b-0 btn p-l-0' style='cursor: text;'>{{proficiency}}</p>
+				<p class='m-b-0 btn' style='cursor: text;'>{{proficiency}}</p>
 			</div>
 		</div>
 	
 		<div class='dashboard-panel'>
 			<div class='alert alert-secondary'>
 				<h3 class='h4'>Dernière évaluation</h3>
-				<p class='m-b-0 btn p-l-0' style='cursor: text;'>{{eval}}</p>
+				<p class='m-b-0 btn' style='cursor: text;'>{{eval}}</p>
 				{{#review_asked}}
 					<div class="iena-asked"><small class='review-badge'>Évaluation demandée</small></div>
 					{{^is_teacher}}
@@ -109,11 +112,12 @@
 							</div>
 						</div>
 					</div>
+				</div>
 				{{/is_teacher}}
 			</div>
 		</div>
 		
-	</div>
+
 	
 	<div class='dashboard-chart'>
 		<div class='iena-chart alert alert-secondary'>
@@ -143,28 +147,35 @@
 						<a class='nav-link' href='#' id='other_history_tab'>Hors de ce cours</a>
 					</li>
 				</ul>
-				<ul class='list-group' style='max-height: 40vh; overflow-y: auto;'>
+				<ul class='list-group' style='max-height: 60vh; overflow-y: auto;'>
 				{{#all_evidences}}
-					<li class='list-group-item{{grade_make_proficient}}'{{is_course_evidence}}>
-						<div class='d-flex w-100 justify-content-between'>
-							{{#gradename}}
-								<p class='mb-1'><b>Évaluation :</b> {{gradename}}</p>
-							{{/gradename}}
-							<small>{{date}}</small>
-						</div>
-						
-						{{#note}}
-							<p class='mb-1' ><b>Commentaire :</b> "{{note}}"</p>
-						{{/note}}
-						{{#actionuser}}
-							<p><b>Évalué par :</b> <a target='_blank' href='{{profileurl}}'>{{fullname}}</a></p>
-						{{/actionuser}}
-						<p class='mb-1 font-weight-light'><em>{{description}}</em></p>
+					{{#is_course_evidence}}
+						<li class='list-group-item{{grade_make_proficient}}'{{is_course_evidence}}>
+							<div class='d-flex w-100 justify-content-between'>
+								{{#gradename}}
+									<p class='mb-1'><b>Évaluation :</b> {{gradename}}</p>
+								{{/gradename}}
+								<small>{{date}}</small>
+							</div>
+							
+							{{#note}}
+								<p class='mb-1' ><b>Commentaire :</b> "{{note}}"</p>
+							{{/note}}
+							{{#actionuser}}
+								<p><b>Évalué par :</b> <a target='_blank' href='{{profileurl}}'>{{fullname}}</a></p>
+							{{/actionuser}}
+							<p class='mb-1 font-weight-light'><em>{{description}}</em></p>
+						</li>
+					{{/is_course_evidence}}
+					{{^is_course_evidence}}
+					<li>
+						<p>La compétence n'a pas été évaluée dans ce contexte.</p>
 					</li>
+					{{/is_course_evidence}}
 
 				{{/all_evidences}}
 				{{^all_evidences}}
-				 <li><p><i>La compétence n'a pas encore été évaluée</i></p></li>
+				 	<li><p><i>La compétence n'a pas encore été évaluée.</i></p></li>
 				{{/all_evidences}}
 				</ul>
 			</div>
-- 
GitLab