From 40a6f1d775338c4fe65ec4db9c0af93129a984af Mon Sep 17 00:00:00 2001 From: Thomas Fradet Date: Thu, 24 Oct 2019 15:32:37 +0200 Subject: [PATCH] dropdowns for search & list size adaptation --- competency_iena_competencies_2.php | 28 ++++---- competency_iena_competency_students_2.php | 30 +++++--- js/dropdown.js | 84 +++++++++++------------ 3 files changed, 76 insertions(+), 66 deletions(-) diff --git a/competency_iena_competencies_2.php b/competency_iena_competencies_2.php index 9c5d660..ef3ff42 100644 --- a/competency_iena_competencies_2.php +++ b/competency_iena_competencies_2.php @@ -45,8 +45,7 @@ if ($count_course_cpts === 0) { $student->get_student_by_id($studentid); $PAGE->set_heading($OUTPUT->heading($student->firstname . " " . $student->lastname, 2, 'headingblock header outline')); - $PAGE->requires->js("/blocks/competency_iena/js/datalist-polyfill.min.js"); - $PAGE->requires->js("/blocks/competency_iena/js/stud-x-cpts.js"); + $PAGE->requires->js("/blocks/competency_iena/js/dropdown.js"); echo $OUTPUT->header(); /* Les demandes de validation de compétence (review) prises dans le cptuser car n'existent pas dans le contexte restreint à un cours. */ @@ -81,19 +80,20 @@ if ($count_course_cpts === 0) { echo "

{$student->firstname} {$student->lastname}

"; if ( !$is_student ) { - echo "
"; + echo ""; echo ""; echo ""; - /* https://github.com/mfranzke/datalist-polyfill */ - echo ""; - echo ""; - echo ""; + + echo "
"; + echo ""; + echo ""; + echo "
"; foreach ($students as $stud) { - echo ""; + echo ""; } - echo ""; - echo "
"; - echo "
"; + echo "
"; + echo "
"; + echo ""; } @@ -135,7 +135,7 @@ if ($count_course_cpts === 0) { echo "
-

{$cpt->get('shortname')}

"; +

{$cpt->get('shortname')}

"; foreach ($reviews_data as $review) { if ( $review->competencyid == $cpt->get('id') ) { echo "
Évaluation demandée
"; @@ -143,8 +143,8 @@ if ($count_course_cpts === 0) { } } echo "
-

Évaluation : {$eval}

- Acquis : {$proficient_str} +

Évaluation : {$eval} / Acquis : {$proficient_str}

+
"; } echo ""; diff --git a/competency_iena_competency_students_2.php b/competency_iena_competency_students_2.php index d9776a1..0614115 100644 --- a/competency_iena_competency_students_2.php +++ b/competency_iena_competency_students_2.php @@ -52,8 +52,7 @@ if (count($course_cpts) === 0) { } $PAGE->set_heading($OUTPUT->heading($current_cpt->shortname, 2, 'headingblock header outline')); - $PAGE->requires->js("/blocks/competency_iena/js/datalist-polyfill.min.js"); - $PAGE->requires->js("/blocks/competency_iena/js/cpt-x-studs.js"); + $PAGE->requires->js("/blocks/competency_iena/js/dropdown.js"); echo $OUTPUT->header(); /* Les étudiants. */ @@ -72,7 +71,7 @@ if (count($course_cpts) === 0) { echo "
"; /* Début change competency. */ echo "
"; - echo "
"; + echo ""; echo ""; if ( isset($_GET['grade']) ) { echo ""; @@ -84,15 +83,26 @@ if (count($course_cpts) === 0) { echo ""; } echo ""; - echo ""; - echo ""; - echo ""; + + // echo ""; + // echo ""; + // foreach ($course_cpts as $course_cpt) { + // echo ""; + // } + // echo ""; + // echo ""; + // echo ""; + + echo "
"; + echo ""; + echo ""; + echo "
"; foreach ($course_cpts as $course_cpt) { - echo ""; + echo ""; } - echo ""; - echo ""; - echo ""; + echo "
"; + echo "
"; + echo ""; echo "
"; echo "
"; /* Fin change competency. */ diff --git a/js/dropdown.js b/js/dropdown.js index 0dfa1b1..5a39ad6 100644 --- a/js/dropdown.js +++ b/js/dropdown.js @@ -60,55 +60,55 @@ /* Activation of previous and next buttons for dropdowns */ - var opts = document.getElementById('student_list').childNodes; - var studentid = document.getElementById('studentid').innerHTML; - for (var i = 0; i < opts.length; i++) { - 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; - if (prev === false) { - document.getElementById('prevStud').setAttribute('disabled', 'disabled'); - } else { - // document.getElementById('prevStud').href += prev; - document.getElementById('prevStud').dataset.prev = prev; - document.getElementById('prevStud').onclick = function () { - document.getElementById('studentid_sel').value = document.getElementById('prevStud').dataset.prev; + if (document.getElementById('student_list') !== null) { + var opts = document.getElementById('student_list').childNodes; + var studentid = document.getElementById('studentid').innerHTML; + for (var i = 0; i < opts.length; i++) { + 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; + if (prev === false) { + document.getElementById('prevStud').setAttribute('disabled', 'disabled'); + } else { + document.getElementById('prevStud').dataset.prev = prev; + document.getElementById('prevStud').onclick = function () { + document.getElementById('studentid_sel').value = document.getElementById('prevStud').dataset.prev; + } } - } - if (next === false) { - document.getElementById('nextStud').setAttribute('disabled', 'disabled'); - } else { - // document.getElementById('nextStud').href += next; - document.getElementById('nextStud').dataset.next = next; - document.getElementById('nextStud').onclick = function () { - document.getElementById('studentid_sel').value = document.getElementById('nextStud').dataset.next; + if (next === false) { + document.getElementById('nextStud').setAttribute('disabled', 'disabled'); + } else { + document.getElementById('nextStud').dataset.next = next; + document.getElementById('nextStud').onclick = function () { + document.getElementById('studentid_sel').value = document.getElementById('nextStud').dataset.next; + } } } } } - var opts = document.getElementById('competency_list').childNodes; - 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; - if (prev === false) { - document.getElementById('prevCpt').setAttribute('disabled', 'disabled'); - } else { - // document.getElementById('prevCpt').href += prev; - document.getElementById('prevCpt').dataset.prev = prev; - document.getElementById('prevCpt').onclick = function () { - document.getElementById('competencyid_sel').value = document.getElementById('prevCpt').dataset.prev; + if (document.getElementById('competency_list') !== null) { + var opts = document.getElementById('competency_list').childNodes; + 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; + if (prev === false) { + document.getElementById('prevCpt').setAttribute('disabled', 'disabled'); + } else { + document.getElementById('prevCpt').dataset.prev = prev; + document.getElementById('prevCpt').onclick = function () { + document.getElementById('competencyid_sel').value = document.getElementById('prevCpt').dataset.prev; + } } - } - if (next === false) { - document.getElementById('nextCpt').setAttribute('disabled', 'disabled'); - } else { - // document.getElementById('nextCpt').href += next; - document.getElementById('nextCpt').dataset.next = next; - document.getElementById('nextCpt').onclick = function () { - document.getElementById('competencyid_sel').value = document.getElementById('nextCpt').dataset.next; + if (next === false) { + document.getElementById('nextCpt').setAttribute('disabled', 'disabled'); + } else { + document.getElementById('nextCpt').dataset.next = next; + document.getElementById('nextCpt').onclick = function () { + document.getElementById('competencyid_sel').value = document.getElementById('nextCpt').dataset.next; + } } } } -- GitLab