From 9c6146c3849ae487f79f51e170a1e833532002a9 Mon Sep 17 00:00:00 2001 From: Yann PETIT Date: Mon, 19 Jun 2023 21:43:06 +0200 Subject: [PATCH 1/3] fix: [3] Si pas de bouton pour recuperer le detail, ajoute un message reprenant le texte de detail --- ParcourSimple.js | 86 ++++++++++++++++++++++++++++-------------------- 1 file changed, 50 insertions(+), 36 deletions(-) diff --git a/ParcourSimple.js b/ParcourSimple.js index 1e79cbf..9fd9eda 100644 --- a/ParcourSimple.js +++ b/ParcourSimple.js @@ -1,7 +1,7 @@ // ==UserScript== // @name ParcourSimple // @namespace https://ypetit.net/ -// @version 0.8.2 +// @version 0.8.3 // @description Simplification de l'affichage des voeux en attente sur ParcourSup! // @author ypetit // @license GNU GPLv3 @@ -224,12 +224,19 @@ return this; }; + setMessage(_message) { + this.message = _message; + return this; + }; + show() { let ligne = ""; ligne += "" + this.school + ""; ligne += "" + this.course + ""; if (this.error) { ligne += "Une erreur est survenue, classement indisponible dans ParcourSimple :("; + } else if ( this.message ) { + ligne += "" + this.message + ""; } else { ligne += "" + this.places + ""; ligne += "" + (Number.isNaN(this.lastLastYear) ? "???" : this.lastLastYear) + ""; @@ -268,41 +275,48 @@ const school = card.querySelectorAll('.psup-wish-card__school')[0].innerHTML; const course = card.querySelectorAll('.psup-wish-card__course')[0].innerHTML; try { - const onclick = card.querySelectorAll('button')[0].getAttribute('onclick'); - const id = onclick.substring(onclick.indexOf("&") + 1, onclick.lastIndexOf("'")); - const URL = "admissions?ACTION=2&" + id + "&frOpened=false&frJsModalButton=true"; - promises.push($.ajax({ - url: URL, - type: "GET", - dataType: "html", - success: function (h) { - const template = document.createElement('div'); - template.innerHTML = h.trim(); - const waiting_position = template.querySelector("div ul li:nth-child(1) b").innerHTML; - const waiting_total = template.querySelector("div ul li:nth-child(2) b").innerHTML; - // -------------- - const places = template.querySelector(".fr-alert ul li:nth-child(1) b").innerHTML; - const ranking = template.querySelector(".fr-alert ul li:nth-child(2) p b").innerHTML; - const last = template.querySelector(".fr-alert ul li:nth-child(3) b").innerHTML; - const lastYear = template.querySelector(".fr-alert ul li:nth-child(4) b"); - const lastLastYear = (lastYear) ? lastYear.innerHTML : "?"; - wishes.push(new Wish(school, - course, - id, - waiting_position, - waiting_total, - places, - ranking, - last, - lastLastYear - )); - }, - error: function (h) { - console.err(h); - }, - complete: function () { - } - })); + const buttons = card.querySelectorAll('button'); + if(buttons.length > 0 ) { + const onclick = buttons[0].getAttribute('onclick'); + const id = onclick.substring(onclick.indexOf("&") + 1, onclick.lastIndexOf("'")); + const URL = "admissions?ACTION=2&" + id + "&frOpened=false&frJsModalButton=true"; + promises.push($.ajax({ + url: URL, + type: "GET", + dataType: "html", + success: function (h) { + const template = document.createElement('div'); + template.innerHTML = h.trim(); + const waiting_position = template.querySelector("div ul li:nth-child(1) b").innerHTML; + const waiting_total = template.querySelector("div ul li:nth-child(2) b").innerHTML; + // -------------- + const places = template.querySelector(".fr-alert ul li:nth-child(1) b").innerHTML; + const ranking = template.querySelector(".fr-alert ul li:nth-child(2) p b").innerHTML; + const last = template.querySelector(".fr-alert ul li:nth-child(3) b").innerHTML; + const lastYear = template.querySelector(".fr-alert ul li:nth-child(4) b"); + const lastLastYear = (lastYear) ? lastYear.innerHTML : "?"; + wishes.push(new Wish(school, + course, + id, + waiting_position, + waiting_total, + places, + ranking, + last, + lastLastYear + )); + }, + error: function (h) { + console.err(h); + }, + complete: function () { + } + })); + }else{ + // apprentissage ? essaye afficher details + const details = card.querySelectorAll(".m_psup-wish-card__detail"); + wishes.push(new Wish(school, course).setMessage(details.innerText)); + } } catch (error) { // log the error in the console console.log(error); From 46c17ea04bfafc56302827e8fabb171277deac52 Mon Sep 17 00:00:00 2001 From: Yann PETIT Date: Wed, 21 Jun 2023 19:40:21 +0200 Subject: [PATCH 2/3] fix: [3] Erreur sur commit precedent pour affichage message detail --- ParcourSimple.js | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/ParcourSimple.js b/ParcourSimple.js index 9fd9eda..91878aa 100644 --- a/ParcourSimple.js +++ b/ParcourSimple.js @@ -1,7 +1,7 @@ // ==UserScript== // @name ParcourSimple // @namespace https://ypetit.net/ -// @version 0.8.3 +// @version 0.8.4 // @description Simplification de l'affichage des voeux en attente sur ParcourSup! // @author ypetit // @license GNU GPLv3 @@ -235,7 +235,7 @@ ligne += "" + this.course + ""; if (this.error) { ligne += "Une erreur est survenue, classement indisponible dans ParcourSimple :("; - } else if ( this.message ) { + } else if (this.message) { ligne += "" + this.message + ""; } else { ligne += "" + this.places + ""; @@ -276,7 +276,7 @@ const course = card.querySelectorAll('.psup-wish-card__course')[0].innerHTML; try { const buttons = card.querySelectorAll('button'); - if(buttons.length > 0 ) { + if (buttons.length > 0) { const onclick = buttons[0].getAttribute('onclick'); const id = onclick.substring(onclick.indexOf("&") + 1, onclick.lastIndexOf("'")); const URL = "admissions?ACTION=2&" + id + "&frOpened=false&frJsModalButton=true"; @@ -312,10 +312,9 @@ complete: function () { } })); - }else{ + } else { // apprentissage ? essaye afficher details - const details = card.querySelectorAll(".m_psup-wish-card__detail"); - wishes.push(new Wish(school, course).setMessage(details.innerText)); + wishes.push(new Wish(school, course).setMessage(card.querySelectorAll(".m_psup-wish-card__detail")[0].innerText)); } } catch (error) { // log the error in the console From 7c7ab35738359b4944fc72e392650d8d7606b4dc Mon Sep 17 00:00:00 2001 From: Yann Petit Date: Tue, 27 Jun 2023 07:48:57 +0200 Subject: [PATCH 3/3] fix: [3] corrects bad prefix in selector --- ParcourSimple.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ParcourSimple.js b/ParcourSimple.js index 91878aa..e465b11 100644 --- a/ParcourSimple.js +++ b/ParcourSimple.js @@ -1,7 +1,7 @@ // ==UserScript== // @name ParcourSimple // @namespace https://ypetit.net/ -// @version 0.8.4 +// @version 0.8.5 // @description Simplification de l'affichage des voeux en attente sur ParcourSup! // @author ypetit // @license GNU GPLv3 @@ -314,7 +314,7 @@ })); } else { // apprentissage ? essaye afficher details - wishes.push(new Wish(school, course).setMessage(card.querySelectorAll(".m_psup-wish-card__detail")[0].innerText)); + wishes.push(new Wish(school, course).setMessage(card.querySelectorAll(".psup-wish-card__detail")[0].innerText)); } } catch (error) { // log the error in the console