#
#
# Modèle "page d'accueil"
#
# Historique
# 1998/06/15 : pda : conception
# 1999/07/04 : pda : réécriture
#
#
# Inclure les directives de formattage de base
#
inclure-tcl include/html/base.tcl
###############################################################################
# Procédures de conversion HTML spécifiques au modèle
###############################################################################
proc htg_tableau {} {
if [catch {set nbcol [htg getnext]} v] then {error $v}
check-int $nbcol
if [catch {set texte [htg getnext]} v] then {error $v}
return "
"
}
proc htg_colonne {} {
if [catch {set texte [htg getnext]} v] then {error $v}
return "$texte | "
}
proc htg_element {} {
if [catch {set nblignes [htg getnext]} v] then {error $v}
check-int $nblignes
if [catch {set titre [htg getnext]} v] then {error $v}
if [catch {set texte [htg getnext]} v] then {error $v}
# sauts de lignes
set r {}
for {set i 0} {$i < $nblignes} {incr i} {
append r "~
"
}
# le titre
append r ""
regsub -all {[A-Z]+} $titre {&} titre
append r $titre
append r ""
# le texte de l'élément
append r $texte
append r "\n"
return $r
}
proc htg_item {} {
if [catch {set texte [htg getnext]} v] then {error $v}
return "\n
. $texte"
}
proc htg_titre {} {
if [catch {set niveau [htg getnext]} v] then {error $v}
check-int $niveau
if [catch {set texte [htg getnext]} v] then {error $v}
switch $niveau {
1 {
set texte "
$texte
"
}
2 {
set texte "$texte
"
}
default {
incr niveau
set texte "$texte"
}
}
return $texte
}
proc htg_partie {} {
global partie
if [catch {set id [htg getnext]} v] then {error $v}
if [catch {set texte [htg getnext]} v] then {error $v}
set texte [nettoyer-html $texte]
switch -exact $id {
banniere -
titrepage {
regsub -all "\n" $texte "
\n" texte
}
default {
regsub -all "\n\n+" $texte "" texte
}
}
set partie($id) $texte
return {}
}
###############################################################################
# Procédures du bandeau, communes à tous les modèles
###############################################################################
inclure-tcl include/html/bandeau.tcl