CNAM 
  
Centre de
  Recherche et
d'Expérimentation pour
 l'Enseignement des
  M
athématiques

 Versions ActiveX de Geoplan et Geospace
Aide à la conception de pages avec figures-Geoplan ou figures-Geospace
Enregistrement d'une page html modifiée

Date de mise à jour : 30/05/00

Introduction : Quand on a chargé une page avec Internet Explorer, on peut l'enregistrer par l'item Enregistrer sous du menu Fichier. Est enregistrée ainsi une copie de la page dans l'état où elle a été chargée. Si, par exemple, la page contient une instance de GP0, le contrôle activeX de Geoplan, et que l'utilisateur en a modifié la figure, cette modification est perdue.
Pour éviter cela, le CREEM a prévu que dans toute page html contenant une instance de GP0, il peut être installé très simplement la possibilité d'enregistrer la page dans l'état où elle est quand on demande cet enregistrement.

Aspect technique : Le principe consiste à utiliser la propriété document.body.innerHTML qui contient le texte du corps (body) de la page dans l'état actuel. L'enregistrement lui-même se fait par une méthode "fourre-tout" de GP0 qui s'appelle ExecuteSelonCode avec le premier paramètre à -1. Tout ceci est à mettre dans un script en VBScript.

Exemple : La page Enregistrer1.htm contient une instance de GP0, un script avec la procédure "Enregistrement" et un bouton appelant ce script.
Regarder la source de cette page (dans IE, menu Affichage, Item Source ) pour saisir la simplicité du procédé.
On peut partir de cette page et la modifier sous un éditeur comme Front Page Express sans entrer dans la technique.

Amélioration : Il est possible d'appeler la procédure d'enregistrement au moment où l'utilisateur ferme la page. Il suffit pour cela d'inclure cet appel dans la procédure window_onbeforeunload qui est activée automatiquement par IE à la fermeture de la page. La page Enregistrer2.htm  montre ce procédé.
On peut aller plus loin et enregistrer aussi l'entête et le titre de la page. Ceci complique un peu la procédure d'enregistrement, mais il n'est pas nécessaire de la détailler pour l'utiliser dans une page. Exemple : MiniGeoplan.htm.

Remarques : - Dans cette affaire, on peut remplacer GP0 par GE0, le contrôle de Geospace.
                      - La page est complètement sauvegardée par ce procédé d'enregistrement. Ceci concerne tous les contrôles modifiables par le lecteur. Par exemple une zone de texte où un élève a écrit sera sauvée avec son texte.

Retour au début de l'aide