Problème au chargement YUI

Problème au chargement YUI

par Valery Fremaux,
Nombre de réponses : 17

Le patch ci-joint permet d'intégrer un menu déroulant dans le bloc de contenu de l'index. Il s'agit d'une tentative d'intégration des objets YUI dans Moodle (comme le préconisent les H.Q.). Ca marche très bien sauf sous IE où le premier chargement de la page donne la popup donnée en annexe.

Quelqu'un connaitrait une origine possible du problème ? 

Annexe abandon.jpg
Moyenne des évaluations  -
En réponse à Valery Fremaux

Voilà le patch qui va avec

par Valery Fremaux,

Je n'ai pas encore rédigé les LISEZMOI mais ça s'intègre TRES facilement :

on met les ressources dans les répertoires adéquats (comme dans le zip)

on va activer le filtre yuimenuinsert

on place une meta-balise dans l'éditorial de première page :

[%%YUI_COURSE_MENU%%]

et le tour est joué.

On peut styler le menu comme on veut par les assets. (menu.css)

En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Joseph Rézeau,
Avatar Développeurs Avatar Développeurs de plugins Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs
Valery > "... intégrer un menu déroulant dans le bloc de contenu de l'index"

C'est quoi, "le bloc de contenu de l'index" ?thoughtful

Joseph

En réponse à Joseph Rézeau

Re: Problème au chargement YUI

par Valery Fremaux,

Le bloc éditorial éditable qu'il y a sur la première page où lorsqu'on est loggué, au dessus de la table des cours, etc.

Voici le "shot" de ce que ça donne, une fois intégré.

Ca marche impec sous Mozilla, mais sous IE

ca plante une fois sur deux avec la fenêtre d'erreur que j'ai mentionné. Au bout de quelques rechargements (un voire deux) tout s'affiche et fonctionne correctement.

Annexe shot_yuimenu.jpg
En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Valery Fremaux,

Je me réponds pour avancer moi même le schmililibilik :

problème avec la méthode render() des objets Menu et Dialog, d'autres essais à faire. Maintenant il faut voir pourquoi ça "rend pas" chez moi. Si ça fonctionne chez Joseph ou Bibo ce serait déjà une bonne nouvelle... 

En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Éric Bugnet,
Avatar Développeurs de plugins Avatar Documentation writers Avatar Traducteurs
Salut,

J'ai testé en local ton appli, et sous IE comme sous FF ca fonctionne.
J'hésite à le mettre sur la prod. comme tu dis avoir des problèmes, mais en tout cas, c'est un travail intéressant.

Une question idiote, c'est quoi YUI ?

++
Eric
En réponse à Éric Bugnet

Re: Problème au chargement YUI

par Valery Fremaux,

"Les seules questions idiotes sont celles que l'on a pas posées" (j'sais pas qui)

YUI est l'acronyme de YAHOO USER INTERFACE

Une librairie Javascript qui propose "une fois pour toutes" des éléments tous faits d'interface utilisateur qui permettent de développer des interfaces riches dans le navigateur, en étant sûr de la compatibilité.

Javascript est un langage intéressant, mais extrêmement problématique en termes de fiabilité. Il n'est pas "solide" car il est très permissif et ignore les instructions à la moindre erreur. Du coup, une erreur n'est pas visible. Ca ne marche pas, c'est tout. De très nombreux sites ont tourné autour du pot en essayant d'améliorer l'interactivté des pages à base de Javascript et d'astuces locales. (On ne doit pas oublier que le Web, d'un point de vue ergnomique, est une superbe régréssion technique par rapport à l'état de l'art des interfaces en génie logiciel : le Web a pris le plus petit dénominateur commun des savoir-faire de l'époque).

Prendre le temps de constituer des libairies "solides" n'est pas à la portée d'un projet pragmatique, d'un petit développement. Il y a trop de tests à faire, et une veille permanente sur les évolutions. Seuls des acteurs majeurs pouvaient "investir" dans cette recherche et dépenser le budget de développement nécessaire. Yahoo l'a fait, mais Google aussi (Google Toolkit).

En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Jérôme DEMIAUX,
Avatar Traducteurs
Génial le nouvel avatar.
Pourrait-on de nouveau modifier nos petites frimousses?
En réponse à Éric Bugnet

Re: Problème au chargement YUI

par Valery Fremaux,
Vas y Eric, pas de problèmes, c'est encore un effet de bord de mon eAccelerator (la première, c'était la perte de toutes les exceptions PHP !!). Je vais me décider à mettre à jour la version que j'ai.
En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Valery Fremaux,

Rien à voir avec eAccelerator en fait.

L'explication trouvée sur des forums généraux :

Un script tente de partir de la page ou d'exécuter une requête mettant en jeu dynamiquement du contenu AVANT le chargement complet de la page. Le script de rendu (render()) des fonctions YUI est sensible à ce phénomène.

Toute utilisation des fonctions de rendu de la classe YAHOO.widget.Container doit donc nécessairement être mis dans une fonction, et jamais exécuté en cours de constitution de page, laquelle fonction sera appelée sur un événement "document.body.onload"

La distribution suivante tient compte de ces modification et est stable.

En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Jérôme DEMIAUX,
Avatar Traducteurs
Apparition d'un petit message d'erreur à l'installation de la dernière version
require_js: yui_container_core - file not found.
qui disparait si l'on revient à la précédente.

en version 1.8.2 et 1.9 beta sous firefox 2.0.0.7 ou IE7

Jérôme.
En réponse à Jérôme DEMIAUX

Re: Problème au chargement YUI

par Valery Fremaux,

Une librairie YUI à été oubliée dans la prise en charge des noms courts

entrée tracker : http://tracker.moodle.org/browse/MDL-11475

Ajouter à /lib/ajaxlib.php en ligne §83 exactement la ligne :

   'yui_container_core' => '/lib/yui/container/container_core-min.js',
 

En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Jérôme DEMIAUX,
Avatar Traducteurs
Parfait, ça marche au poil.
Sais-tu pourquoi avant les menus se déroulaient automatiquement à leur survol et plus maintenant, il faut cliquer triste

En réponse à Jérôme DEMIAUX

Re: Problème au chargement YUI

par Valery Fremaux,

Moi ça marche parfaitement en survol, non je ne sais pas.

Il faut avant tout remercier Bibo (Hubert Zerbib) qui a eu l'initiative de faire cette demande.

J'ai encore probablement quelques améliorations à faire, notamment, pouvoir indiquer quelques exclusions dans le menu. Ce n'est pas forcément nécessaire d'y mentionner TOUS les cours et TOUTES les catégories.

J'y réfléchis. Bibo m'a demandé également de pouvoir ajouter quelques liens et/ou catégories en dur, à la volée. Je regarde ça également. 

En réponse à Valery Fremaux

Re: Problème au chargement YUI

par Jérôme DEMIAUX,
Avatar Traducteurs
Erreur : YAHOO.lang.extend failed, please check that all dependencies are included.
Fichier source : http://localhost/lib/yui/yahoo-dom-event/yahoo-dom-event.js
Ligne : 18
return!YAHOO.lang.isUndefined(o[prop])&&o.constructor.prototype[prop]!==o[prop];},_IEEnumFix:function(r,s){if(YAHOO.env.ua.ie){var add=["toString","valueOf"];for(i=0;i<add.length;i=i+1){var fname=add[i],f=s[fname];if(YAHOO.lang.isFunction(f)&&f!=Object.prototype[fname]){r[fname]=f;}}}},extend:function(subc,superc,overrides){if(!superc||!subc){throw new Error("YAHOO.lang.extend failed, please check that "+"all dependencies are included.");}

Quelqu'un pour décoder ??