Fix JS access to css

This commit is contained in:
Emmanuel Viennet 2023-05-12 10:00:11 +02:00
parent 59a25c4cc3
commit d5a6ba7448
5 changed files with 77 additions and 69 deletions

View File

@ -1,27 +1,4 @@
function getCurrentScriptPath() {
// Get all the script elements on the page
var scripts = document.getElementsByTagName('script');
// Find the last script element (which is the currently executing script)
var currentScript = scripts[scripts.length - 1];
// Retrieve the src attribute of the script element
var scriptPath = currentScript.src;
return scriptPath;
}
function removeLastTwoComponents(path) {
// Split the path into individual components
var components = path.split('/');
// Remove the last two components (filename and enclosing directory)
components.splice(-2);
// Join the remaining components back into a path
var newPath = components.join('/');
return newPath;
}
class ref_competences extends HTMLElement {
constructor() {
super();

View File

@ -15,8 +15,8 @@ class releveBUT extends HTMLElement {
/* Style du module */
const styles = document.createElement('link');
styles.setAttribute('rel', 'stylesheet');
if (location.href.split("/")[3] == "ScoDoc") {
styles.setAttribute('href', '/ScoDoc/static/css/releve-but.css'); // Scodoc
if (location.href.includes("ScoDoc")) {
styles.setAttribute('href', removeLastTwoComponents(getCurrentScriptPath()) + '/css/releve-but.css'); // Scodoc
} else {
styles.setAttribute('href', '/assets/styles/releve-but.css'); // Passerelle
}
@ -212,7 +212,7 @@ class releveBUT extends HTMLElement {
this.shadow.querySelector("#identite_etudiant").innerHTML = ` <a href="${data.etudiant.fiche_url}">${data.etudiant.nomprenom}</a> `;
this.shadow.querySelector(".dateInscription").innerHTML += this.ISOToDate(data.semestre.inscription);
let output = '';
if(!data.options.block_moyenne_generale){
if (!data.options.block_moyenne_generale) {
output += `
<div>
<div class=enteteSemestre>Moyenne</div><div class=enteteSemestre>${data.semestre.notes.value}</div>
@ -333,7 +333,7 @@ class releveBUT extends HTMLElement {
} else {
output += `
<div>
<div class="ue ${dataUE.date_capitalisation?"capitalisee":""}">
<div class="ue ${dataUE.date_capitalisation ? "capitalisee" : ""}">
<h3>
${ue}${(dataUE.titre) ? " - " + dataUE.titre : ""}
</h3>
@ -341,7 +341,7 @@ class releveBUT extends HTMLElement {
<div class=moyenne>Moyenne&nbsp;:&nbsp;${dataUE.moyenne?.value || dataUE.moyenne || "-"}</div>
<div class=ue_rang>Rang&nbsp;:&nbsp;${dataUE.moyenne?.rang}&nbsp;/&nbsp;${dataUE.moyenne?.total}</div>
<div class=info>`;
if(!dataUE.date_capitalisation){
if (!dataUE.date_capitalisation) {
output += ` Bonus&nbsp;:&nbsp;${dataUE.bonus || 0}&nbsp;-
Malus&nbsp;:&nbsp;${dataUE.malus || 0}`;
} else {
@ -359,7 +359,7 @@ class releveBUT extends HTMLElement {
</div>*/
output += "</div>";
if(!dataUE.date_capitalisation){
if (!dataUE.date_capitalisation) {
output +=
this.synthese(data, dataUE.ressources) +
this.synthese(data, dataUE.saes);

View File

@ -256,3 +256,27 @@ class ScoFieldEditor {
}
}
function getCurrentScriptPath() {
// Get all the script elements on the page
var scripts = document.getElementsByTagName('script');
// Find the last script element (which is the currently executing script)
var currentScript = scripts[scripts.length - 1];
// Retrieve the src attribute of the script element
var scriptPath = currentScript.src;
return scriptPath;
}
function removeLastTwoComponents(path) {
// Split the path into individual components
var components = path.split('/');
// Remove the last two components (filename and enclosing directory)
components.splice(-2);
// Join the remaining components back into a path
var newPath = components.join('/');
return newPath;
}

View File

@ -7,14 +7,20 @@
{% block app_content %}
{% include 'bul_head.j2' %}
{% include 'bul_head.j2' %}
<releve-but></releve-but>
<script src="{{scu.STATIC_DIR}}/js/releve-but.js"></script>
<releve-but></releve-but>
{% include 'bul_foot.j2' %}
{% include 'bul_foot.j2' %}
<script>
{% endblock %}
{% block scripts %}
{{super()}}
<script src="{{scu.STATIC_DIR}}/js/releve-but.js"></script>
<script>
let dataSrc = "{{bul_url|safe}}";
fetch(dataSrc)
.then(r => { return r.json() })
@ -45,5 +51,6 @@
// throw 'Fin du script - données invalides';
// });
document.querySelector("html").style.scrollBehavior = "smooth";
</script>
</script>
{% endblock %}

View File

@ -19,8 +19,6 @@
<ref-competences></ref-competences>
</div>
<script src="{{scu.STATIC_DIR}}/js/ref_competences.js"></script>
{% include "but/refcomp_parcours_niveaux.j2" %}
@ -49,6 +47,8 @@
{% block scripts %}
{{super()}}
<script src="{{scu.STATIC_DIR}}/js/ref_competences.js"></script>
<script>
$(function () {
let data_url = "{{data_source}}";