Retailler automatiquement les canaux iFrame pour éviter les doubles assenceur
J'ai patché la class CInlineFrame de façon à rajouter un nom à la frame (c'est plus simple si on en a plusieurs sur la même page), le fichier est joint et commenté (partie ajout IUFM)
et la partie a ajouter dans le pubchan :
<parameter>
<name>iFrameName</name>
<value>cdoc-masterisation</value> ==> nom de la frame qui sera utilisé pour la retailler
<description></description>
<ovrd>N</ovrd>
</parameter>
Modifier la fauille xhtml-theme.xsl de façon a définir le domaine :
Ajouter dans le bloc javascript (ligne 26, 65, 141 suivant si on est connecté ou pas ) la ligne :
document.domain="bretagne.iufm.fr";
ensuite dans les applis PHP ,
1 - declarer la variable $iFrameName qui correspond au parametre ci dessus.
Pour certaines applis qui comporte des frames ca ne fonctionne pas alors j'ai declarer la variable $iFrameHeight qui force la hauteur de la page
2 - ajouter dans l'entete de page :
<script type="text/javascript">
document.domain="bretagne.iufm.fr";
function resizeIframe(maframe)
else
<?
if (isset($iFrameHeight) && $iFrameHeight != "") echo "\nheight=$iFrameHeight;\n";
?>
maframe.style.height = height +"px";
};
</script>
3 - ajouter dans le pied de page :
<script type="text/javascript">
document.domain="bretagne.iufm.fr";
try
catch(e){}
</script>
La partie ajoutée dans l'entete pourait etre fait dans le pied, mais si on veut agrandir la taille quand on clic un menu déroulant type arbre, il faut que la fonction soit connue.
C'est tout, c'est relativement simple a mettre en place mais demande bcp de travail pour repasser dans toutes les applis et que celles ci soit bien formatée. J'ai quelques probleme sur safari qui devrait etre réglé rapidemement.
Il faut noter également que seul la derniere version de FCKeditior prend en compte la notion de domaine.
Enfin, c'est un peu plus compliquer pour Moodle, voici ce qu'il faut modifier (sauf sous IE qui pose des probleme avec l'editeur)
Ajouter sans theme/iufm/header.html (ligne 9)
<script type="text/javascript">
if (navigator.appName != "Microsoft Internet Explorer")
// on ne gere pas sous ie, on verra avec la v2 ou l'editeur change
dans theme/iufm/footer.html (l. 30)
<br /> if (navigator.appName != "Microsoft Internet Explorer"){<br /> document.domain="bretagne.iufm.fr";<br /> maframe = parent.document.getElementById('CMoodle'); // nom de la frame in the parent<br /> function resizeIframe()
;<br /><br /> maframe.onload = resizeIframe;<br /> window.onresize = resizeIframe;<br /> }<br />
L'éditeur de texte utilisé dans les forums, wiki, devoirs, bases de données, étiquettes... présente alors ses dysfonctionnements : - impossible d'ajouter une URL, - d'ajouter une image, - d'ouvrir en pleine fenêtre. Il faut ajouter le domaine bretagne dans les fichiers suivants :
la ligne est : if (navigator.appName != "Microsoft Internet Explorer")
dans les fichiers :
* lib/editor/htmlarea/popups/popup.js (ligne 15)
* lib/editor/htmlarea/coursefiles.php (ligne 54)
* lib/editor/htmlarea/popups/fullscreen.php (ligne 24)
Une autre correction est nécessaire pour l'ouverture en plein écran (popup) de l'éditeur. Il s'agit d'ajouter "parent" devant "opener.HTMLArea._object" dans le fichier :
- lib/editor/htmlarea/popups/fullscreen.php (ligne 120)
Remplacer
parent_object = opener.HTMLArea._object;
par
parent_object = parent.opener.HTMLArea._object;
et ca fonctionne
Pour voir ce que ca donne vous pouvez allez sur notre ent (ent.bretagne.iufm.fr), le canal "Votre nouvel Espace Numérique de Travail" inclus cette modif, ainsi que le menu "Aide"