Éditeur WYSIWYG

Éditeur WYSIWYG

par Fabien Beyaert,
Nombre de réponses : 18
Bonjour,

Je suis un nouvel utilisateur de Moodle. J'ai téléchargé et installé sur mon hébergeur la version 1.9.9+
Je ne vois pas la barre de l'éditeur WYSIWYG (pourtant ici présente pour écrire ce message dans cet espace moodle). J'ai juste le petit clavier jaune (aide sur les racourcis clavier editeur) en bas de mes fenêtres. Que dois-je faire pour voir cette barre ?

J'utilise Firefox comme navigateur (Sous IE le problème est le même). J'ai vérifié dans mon profil et dans le bloc administrateur que l'éditeur WYSIWYG était sélectionné.

Aidez-moi... je cale !

Cordialement.
Moyenne des évaluations  -
En réponse à Fabien Beyaert

Re: Éditeur WYSIWYG

par Eric Salice,
Bonjour,

Et les raccourcis clavier, ils fonctionnent ?

Si tu sélectionnes du texte dans dans la zone de texte et que tu tapes Ctrl-i, est-ce que le texte se met en italique ?

Si ça ne fonctionne pas, c'est que l'éditeur WYSIWYG ne se charge pas et qu'il ne s'agit pas seulement d'un problème de disparition de barre de boutons.

Je pense qu'au départ, l'éditeur est une "bête" zone de texte (textarea HTML) et que via Javascript, c'est remplacé par un éditeur WYSIWYG. C'est donc peut-être cette étape qui n'a pas lieu.

Fais le test d'un raccourci clavier, on verra ce que ça donne.

Éric


En réponse à Eric Salice

Re: Éditeur WYSIWYG

par Fabien Beyaert,
Bonjour,

Merci de me répondre.

Effectivement, les raccourcis claviers ne fonctionnent pas. Ctrl-i m'ouvre le marque pages de firefox et le texte n'est pas modifié.

Fabien
En réponse à Fabien Beyaert

Re: Éditeur WYSIWYG

par Eric Salice,
C'est donc très probablement que la zone de texte n'est pas remplacée par l'éditeur HTML.

Dans Firefox, peux-tu afficher la console d'erreurs (Outils | Console d'erreurs ou Ctrl-Maj-j) ? Il y a probablement des messages en rapport avec ton problème.

Normalement, si tu ajoutes une ressource étiquette à un cours et que tu affiches le code source de la page (Ctrl-u dans Firefox), en faisant une recherche sur "id_content" dans le code source, tu devrais avoir les lignes

<script type="text/javascript" src="url..."></script>
<textarea class="form-textarea" id="id_content" name="content" rows="10" cols="45"></textarea>
suivie un peu plus loin de lignes qui ressemblent à ceci

<script type="text/javascript" defer="defer">
//<![CDATA[

editor_9a0364b9e99bb480dd25e1f0284c8555 = new HTMLArea('id_content');
...

Tu les as ?

Si tu as une extension pour Firefox qui te permet de voir le code source "généré" (telle que l'extension Web Developer) en allant dans Outils | Web Developer | Voir Source | Voir le code source généré, et refaisant une recherche sur id_content, tu devrais voir un changement dans le code HTML par rapport à celui affiché par Firefox qui est le code tel qu'il a été chargé.

En particulier, si tu fais une recherche sur "iframe" dans le source généré, si l'éditeur HTML a bien été activé, tu devrais trouver quelque chose.

S'il n'y a pas d'iframe, alors ça confirme que l'éditeur HTML n'a pas remplacé la zone de texte. L'étape suivante sera de comprendre pourquoi et de corriger clin d’œil.

Éric



En réponse à Eric Salice

Re: Éditeur WYSIWYG

par Fabien Beyaert,
J'ai tout d'abord effacer le contenu de la console d'erreurs.
J'ai ensuite demandé à insérer une étiquette dans un cours.
La console d'erreur m'indique des erreurs comme indiqué ci dessous :

Erreur : unterminated regular expression literal
Fichier Source : http://monsite.com/moodle/lib/javascript-mod.php
Ligne : 5, Colonne : 123
Code Source :
<noscript><a href="http://www.hosting24.com/"><img src="http://analytics.hosting24.com/count.php" alt="web hosting" /></a></noscript>

et

Erreur : HTMLArea is not defined
Fichier Source : http://monsite.com/moodle/course/modedit.php?add=label&type=&course=4&section=1&return=0
Ligne : 233

J'ai ensuite affiché le code source de la page (Ctrl-u) :
Je ne vois pas de ligne :
<textarea class="form-textarea" id="id_content" name="content" rows="10" cols="45"></textarea>

ni la ligne :
editor_9a0364b9e99bb480dd25e1f0284c8555 = new HTMLArea('id_content');



Voici une copie de ce que j'ai :

<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="expires" content="0" /> <meta name="keywords" content="moodle, Eval_Collège: Modifier Étiquette " />
 <title>Eval_Collège: Modifier Étiquette</title>
 <link rel="shortcut icon" href="http://monsite.com/moodle/theme/formal_white/favicon.ico" />
 <!--<style type="text/css">/*<![CDATA[*/ body{behavior:url(http://physique.comeze.com/moodle/lib/csshover.htc);} /*]]>*/</style>-->

<script type="text/javascript" src="http://monsite.com/moodle/lib/javascript-static.js"></script>
<script type="text/javascript" src="http://monsite.com/moodle/lib/javascript-mod.php"></script>
<script type="text/javascript" src="http://monsite.com/moodle/lib/overlib/overlib.js"></script>
<script type="text/javascript" src="http://monsite.com/moodle/lib/overlib/overlib_cssstyle.js"></script>
<script type="text/javascript" src="http://monsite.com/moodle/lib/cookies.js"></script>
<script type="text/javascript" src="http://monsite.com/moodle/lib/ufo.js"></script>
<script type="text/javascript" src="http://monsite.com/moodle/lib/dropdown.js"></script>

<script type="text/javascript" defer="defer">
//<![CDATA[
setTimeout('fix_column_widths()', 20);
//]]>
</script>
<script type="text/javascript">
//<![CDATA[



Tout ceci est bien obscure pour moi. Merci de m'aider.

Fabien


En réponse à Fabien Beyaert

Re: Éditeur WYSIWYG

par Eric Salice,
On dirait que ton hébergeur injecte du code HTML dans les fichiers retournés par le serveur web. Visiblement, il s'agit d'un compteur.

C'est peut-être ajouté automatiquement à tous les fichiers produits par PHP. Or le problème c'est que le fichier lib/javascript-mod.php génère du Javascript et que le code HTML injecté provoque une erreur Javascript, donc probablement l'arrêt de l'exécution du Javascript qui suit en particulier celui qui crée l'éditeur HTML.

Visiblement, c'est un problème connu avec cet hébergeur.

Il semblerait qu'il y ait moyen de supprimer ce comportement dans l'interface de gestion de ton hébergement, cPanel (en tapant le message d'erreur de la console dans Google, il semblerait que ça se fasse ici: http://members.000webhost.com/analytics.php)

Ah les hébergeurs, il ne savent plus quoi inventer. Il n'y a pas longtemps dans ce même forum, un hébergeur était soudainement revenu à du PHP4 en place de PHP5 sourire.

J'espère que ça résoudra ton problème.

Éric



Moyenne des évaluations Utile (3)
En réponse à Eric Salice

Re: Éditeur WYSIWYG

par Fabien Beyaert,
Vous avez résolu mon problème !
J'ai désormais l'éditeur WYSIWYG après avoir désactivé ce compteur de mon hébergement.
Un grand merci !

Cordialement

Fabien
En réponse à Fabien Beyaert

Re: Éditeur WYSIWYG

par François MORICE,
Bonjour,

j'ai le même problème !! pas de barre de l'éditeur WYSIWYG. Mon hébergeur n'injecte pas de code dans mes scripts, et HTMLArea apparait bien dans les sources (cf. votre discussion plus haut).

Par contre, via la consolde d'erreur Firefox, j'ai le message "HTMLArea is not defined".

Pouvez-vous m'aider s'il vous plait ?

amicalement
François Morice
En réponse à François MORICE

Re: Éditeur WYSIWYG

par Jean-Jacques Calliet,
Même souci ! je tourne en rond sur les forums... Aucune solution !
Je suis sous 1.9.9
En revanche HTMLArea n'apparait pas chez moi dans les sources.
Il est pourtant bien présent dans le repertoire lib.

Ca devient franchement pénible : je n'avais jamais eu ce pb auparavant...

J'envisage de passer en 2.0, il semblerait que l'éditeur ait changé...

Cordialement,

Jean-Jacques Calliet
En réponse à Jean-Jacques Calliet

Re: Éditeur WYSIWYG

par Eric Salice,
Bonjour Jean-Jacques,

Tu n'a donc pas dans le code source de ta page une balise qui ressemble à

<script type="text/javascript" src="http://adresseDeMoodle/lib/editor/htmlarea/htmlarea.php?id=2"><script>

ni une ligne du genre

editor_9a0364b9e99bb480dd25e1f0284c8555 = new HTMLArea('id_content');
As-tu bien vérifié que tu avais activé l'éditeur WYSIWYG dans le profil de tes utilisateurs. Il faut pour cela aller dans le profil d'un utilisateur, presser le bouton "Afficher les éléments supplémentaires" et s'assurer que la valeur du paramètre "Lors de l'édition de texte" a bien la valeur "Utiliser l'éditeur WYSIWYG (ne fonctionne pas avec tous les navigateurs)" est sélectionnée. Il me semble que c'est la valeur par défaut mais on ne sait jamais.

Cordialement,

Eric

En réponse à Eric Salice

Re: Éditeur WYSIWYG

par Jean-Jacques Calliet,
Re bonsoir !

Je n'ai pas l'option "Lors de l'édition du texte" quand je presse le bouton "Afficher les éléments supplémentaires" et donc je ne peux pas faire la manip...

Est-ce l'origine du problème ?

Pour l'instant, je n'ai essayé qu'avec Firefox et Google Chrome, sans résultat.

Cordialement,

Jean-Jacques
En réponse à Jean-Jacques Calliet

Re: Éditeur WYSIWYG

par Eric Salice,
Je viens de découvir (ou redécouvrir) qu'il y avait aussi une option pour autoriser l'utilisation de l'éditeur WYSIWIG au niveau du site.

Elle se trouve dans le bloc Administration du site dans Présentation puis Editeur WYSIWYG.

Il faut cocher la case "Utiliser l'éditeur WYSIWYG" tout au début de la page.

Quand elle n'est pas cochée, l'option d'activation de l'éditeur dans le profil utilisateur n'apparait effectivement pas.

Eric

En réponse à Eric Salice

Re: Éditeur WYSIWYG

par Jean-Jacques Calliet,
Un grand merci à vous !
C'était bien le problème...
Dire que j'ai passé une bonne après-midi là dessus !
Cela mérite d'être diffusé car c'est vraiment un big piège...

Cordialement,

Jean-Jacques Calliet
En réponse à Jean-Jacques Calliet

Re: Éditeur WYSIWYG

par Glenys Hanson,
Bonjour,

Je viens d'installer Moodle 1.9.9. L'éditeur WYSIWYG était activité par défaut. Je n'ai rien eu à faire. Pour quoi était-ce différent pour certains ???

Cheers,
Glenys
En réponse à François MORICE

Re: Éditeur WYSIWYG

par Eric Salice,
Bonjour François,

Il est possible que le fichier contenant le code de HTMLArea ne soit pas chargé au moment où le navigateur appelle la fonction qui remplace la zone de texte par l'éditeur HTML (techniquement, à cause de l'attribut defer dans la balise script où se trouve l'appel de la fonction).

Ca peut se produire pour des versions de Firefox antérieures à la 3.5 qui ne tenaient pas compte de l'attribut defer.

Il serait bon d'essayer avec un autre navigateur (Internet Explorer, par exemple) pour voir si ça fonctionne.

Sinon, on peut aussi vérifier qu'il n'y a pas d'erreur au moment du chargement du code de HTMLArea. Il suffit pour cela de se connecter à Moodle puis de taper dans la barre d'adresse du navigateur l'adresse

http://adresse du site Moodle/lib/editor/htmlarea/htmlarea.php

Normalement, du code Javascript devrait s'afficher. Ce code commence par les lignes

// htmlArea v3.0 - Copyright (c) 2002, 2003 interactivetools.com, inc.
// This copyright notice MUST stay intact for use (see license.txt).
//
// Portions (c) dynarch.com, 2003-2004
//
// A free WYSIWYG editor replacement for <textarea> fields.
// For full source code and docs, visit http://www.interactivetools.com/
//
// Version 3.0 developed by Mihai Bazon.
// http://dynarch.com/mishoo
//
// $Id: htmlarea.php,v 1.24.2.8 2009/08/27 03:21:33 jerome Exp $

Peux-tu tester et nous donner les résultats ?

A bientôt,

Eric


En réponse à Eric Salice

Re: Éditeur WYSIWYG

par Jean-Jacques Calliet,
Bonsoir,

Oui, j'ai fait ce test et j'ai bien le code javascript que tu décris qui s'affiche...
Je continue mes investigations.

Merci

Jean-Jacques
En réponse à Eric Salice

Re: Éditeur WYSIWYG

par François MORICE,
Bonjour Eric,

Mille merci !! ça marche maintenant.

En fait, tu m'as mis sur la piste. J'avais une erreur 500 lors du lancement du script htmlarea.php. Via les logs d'aministration fournis par mon hébergeur, je suis tombé sur le message d'erreur suivant :

/home/sbfm/public_html/moodle/lib/.htaccess: Invalid command 'php_flag'

J'ai renommé (pour le désactiver) le .htaccess en htaccess et là, miracle (après 3 jours de recherches !!), ça marche.

Voili, encore merci.

Amicalement
François Morice
www.enseignerenligne.com