::
Bonjour
Si vous avez un serveur local, le script suivant permet de mettre dans une même page html tous les exos d'un module d'exercices OEF afin de mieux faire son marché pour une feuille d'exercices. C'est une demande que me fait JBa depuis au moins deux ans … Tout vient !
Comme il semble difficile sur ce blog de rajouter des fichiers, je vais le copier-coller. Demandez-le moi s'il n'est pas lisible ! Il est à exécuter dans le répertoire wims. On verra ensuite s'il y a lieu d'en faire autre chose.
Bernadette
#!/usr/bin/perl
my $module='' ;
my $file='toto';
while ($_ = shift (@ARGV)) {
if (/^–module=(.*)$/) { $module = $1; }
elsif (/^–file=(.*)$/) { $file = $1; }
else { if (/^–module=(.*)$/) { $module = $1; }
print STDERR « unknown option: $_n » if (!/^–help$/);
usage(); # includes –help !
}
} ;
my $dir2= »public_html/modules/$module » ;
my $text='<html><body>';
open(IN, « $dir2/Extitles »);
while (<IN>){ my $line=$_ ;
my @a= split(':',$line) ;
$text .= »<iframe
src= »http://127.0.0.1/wims/wims.cgi?module=adm/raw&job=lightpopup&emod=$module&parm=cmd=new;exo=$a[0];&option=noabout »
width= »100% » height= »400″></iframe> »
}
close IN;
$text .= « </body></html> » ;
out ($file. « .html »,$text) ;
sub out { my ($bloc, $text) = @_ ;
open (OUT, « >$bloc ») || warn « peut pas créer $bloc »;
print OUT $text ; close OUT ;
}
sub usage {
print STDERR << « EOT »
sheet.pl –module=xxxx –file=yyy
xxx is the address of the module as H3/algebra/oefprop.fr
yyy.html is the name of the generated file
the command must be executed from the directory
EOT
;
exit 1;
}