#!/bin/sh
export DATE="14.8.2007";SCRIPT=${0#/rom}
export TITLE="Administration : Publier"
. ${SCRIPT%/*}/cgi-bin-pre.sh
cat< Avec
le micro système de publication de ce firmware, il est assez facile
de modifier les pages web du point d'accès ou d'en ajouter de
nouvelles. Sous Windows il vous faudra installer le langage de script
Perl et un programme d'archive capable
de créer des archives TAR (par exemple
UltimateZip). Sous Linux ces
outils sont en général déjà installés. Un script perl (template.pl) va lire
un fichier patron HTML (template.html) et chercher les chaînes de
caractère "%BODY%". Ensuite, le script perl va lire tous
les fichier HTML du répertoire courant en extractant la partie
comprise entre <BODY> et </BODY>. La partie extraite du code
HTML est ensuite insérée dans le fichier patron à la
position %BODY% et le résultat sauvegarder dans un autre répertoire
(./out-fr/). Les fichiers
référencés, tels que les images par exemple, sont
aussi copiés par le script dans le nouveau répertoire. La
chaîne de caractère "$(echo -n %)DATE%" est remplacé
par la date et l'heure du fichier source. La chaîne de caractère
"$(echo -n %)TITLE%" est remplacée par la première
entête H1 rencontrée dans le fichier source.
Si le nom du fichier source commence par "cgi-bin"
les commandes shell appropriées seront insérées afin
d'être exécutées du coté serveur. Vos propres
commandes shell peuvent être écrites entre les balises <SCRIPT
LANGUAGE="shell"></SCRIPT> dans le fichier source.
Pendant l'exécution du coté serveur web les variables du
shell seront évaluées de manière standard. Exemples :
"\$PWD" sera transformé en $PWD, "\$(ls /tmp)"
listera le contenu du répertoire /tmp. Au final, le
répertoire de destination (./out-fr/) est mis en paquet avec tous
ses sous répertoires dans un fichier archive TAR-, TGZ- or TAR.GZ.
C'est ce fichier d'archive qui peut être chargé par la page
d'administration. Les pages existantes (telle que cette page
d'administration) ne sont pas effacées au cours du processus. Notes
pour les utilisateurs Windows : Si les programmes "tar"
et "perl" sont installés, les commandes linux seront
aussi acceptées dans le terminal de commande. La chose à
faire néanmoins est de remplacer le caractère "/"
par backslash ("\"). Le script perl peut être exécuté
en double cliquant sur le fichier "template.pl". Ecrire du code HTML valide et fermer les <Tags>
ouvert avec </Tags>. Utiliser un éditeur qui valide le HTML
ou un simple éditeur mais avec un minimum de rigueur. Pour
ajouter un lien vers une nouvelle page dans le fichier template.html.
Copier une des lignes de la table (i.e. <TR>... Etat ...</TR>)
et changer la balise <A HREF=""> et le texte. Il peut être
utile d'élargir la barre de navigation à gauche. Chercher et
changer l'attribut WIDTH="150" avec la valeur désirée.
Un
nouveau répertoire aura besoin d'un nouveau fichier template.html.
Le script perl va lire un fichier patron par répertoire. Pour économiser
de la place changer les références aux images par un répertoire
commun comme avec "../images/" par exemple. L'archive
TAR sera examinée pour supprimer les répertoires en trop. Plusieurs langues
sont supportées ou peuvent être ajoutées avec les tags
<SPAN LANG="xx">. Ainsi les attributs TITLE, ALT et VALUE
sont scannés afin d'y retrouver les motifs de texte "All
langages !xx :Texte pour la langue A !yy :Texte pour
la langue B". Le script perl accepte un paramètre pour filtrer
la langue souhaitée. Chargement des pages Web annulé.
Fichier Archive de la page Web (*.tar)
ou intro.jpg :
Créer sa page Web
Fonctionnement
Manuel
d'utilisation rapide
Astuces
$ffout
" if [ "${ffout##*/}" = "intro.jpg" ]; then set -x rm -f /www/images/intro.jpg mv "$ffout" /www/images set +x else zflag= if [ -z "${ffout##*.tar.gz}" ] || [ -z "${ffout##*.tgz}" ]; then zflag=-z fi tardir=$(tar $zflag -tvf "$ffout"|if read line;then if [ "-" != $(echo $line|dd bs=1 count=1 2>&-) ];then set $line;echo $6;fi;fi) mkdir /tmp/wwwtmp.$$/ tar -C /tmp/wwwtmp.$$/ $zflag -xf "$ffout" rm -f "$ffout" chmod +x /tmp/wwwtmp.$$/$tardir/cgi-bin*>/dev/null 2>&1 chmod +x /tmp/wwwtmp.$$/$tardir/cgi-bin/*>/dev/null 2>&1 tar -cC "/tmp/wwwtmp.$$/$tardir" .| tar -xvC /www/ rm -rf /tmp/wwwtmp.$$/ fi echo "" else cat<
Le chargement des pages web a été annulé.
EOF fi . ${SCRIPT%/*}/cgi-bin-post.sh