Comment modifier ou surcharger proprement un fichier js contenu dans /mod/xxx

Comment modifier ou surcharger proprement un fichier js contenu dans /mod/xxx

par Ghislain Fabre,
Nombre de réponses : 2

Bonjour,

Je rencontre un problème technique (trop d'espace en hauteur pour un contenu scorm dans moodle 3.0 cf. https://moodle.org/mod/forum/post.php?reply=1332744#mformforum ) dont la solution pourrait passer par la modification /mod/scorm/module.js

Ex. y modifier :

if (newheight < 600) {
                newheight = 600;
            }

Par :

if (newheight < 500) {
                newheight = 500;
            }

Je me demande s'il est possible de modifier ce fichier uniquement en passant par un thème, plutôt que de faire un vilain hack du code de moodle, ce qui semble alors être plus une question de développement que de problème technique, d'où mon message dans ce forum.


Si je souhaite modifier du contenu d'un fichier js contenu dans un répertoire de mod  :

1. Est-ce possible sans "hacker" sauvagement le code de moodle

2. Si oui est-ce que l'on appelle surcharger un renderer ? (https://docs.moodle.org/dev/Overriding_a_renderer  )

3. Si c'est possible et qu'il faut overrider un renderer, il y ait fait mention de php mais pas de js, je n'arrive pas à trouver dans le forum ou la doc d'infos à ce sujet, si vous avez des pistes...

4. Si c'est possible mais que ça n'a rien à voir avec overrider un renderer, vers quels mots clés / concept / méthode je pourrai m'orienter ?

Merci par avance pour votre aide,

Ghislain



Moyenne des évaluations  -
En réponse à Ghislain Fabre

Re: Comment modifier ou surcharger proprement un fichier js contenu dans /mod/xxx

par stephane ngov,
bonsoir,

2 solutions sourire :


par css les média-queries directement dans css custum de moodle

@media screen and (max-width: 500px) {

  #newheight : 600px;

}

@media screen and (max-width: 600px) {

   #newheight : 500px;

}

il ne faut pas oublié de d'ajouter l'entête dans le html additionnel ....

<link rel="stylesheet" type="text/css"  media="screen and (max-width: 960px)" href="' . $data->wwwroot . '/theme/profoad/style/mq.css">
(à adapter car j'ai copie le mien ....)

soit par javascript

$(document).ready(){

  if($(window).width() >500)

  {

     $("balise").css("#newheight","500px"); 

}


Moyenne des évaluations Utile (1)