1#
2#
3# Mod�le "transp" (transparents)
4#
5# Historique
6#   1998/06/29 : pda : conception
7#   1999/07/25 : pda : conversion au nouveau htg
8#
9
10#
11# Inclure les directives de formattage de base
12#
13
14inclure-tcl include/html/base.tcl
15
16###############################################################################
17# Proc�dures de conversion HTML sp�cifiques au mod�le
18###############################################################################
19
20global transparents
21set transparents(max) 0
22
23proc htg_transparent {} {
24    global transparents
25
26    if [catch {set titre "<TITLE>[htg getnext]</TITLE>"} v] then {error $v}
27
28    if [catch {set texte [htg getnext]} v] then {error $v}
29    set texte [nettoyer-html $texte]
30    regsub -all "\n\n+" $texte "<P>" texte
31
32    set n $transparents(max)
33    incr n
34    set transparents($n) $texte
35    set transparents(titre-$n) $titre
36    if {[info exists transparents(alias)]} then {
37	set transparents(alias-$n) $transparents(alias)
38	unset transparents(alias)
39    }
40    set transparents(max) $n
41
42    return {}
43}
44
45proc htg_alias {} {
46    global transparents
47
48    if [catch {set transparents(alias) [htg getnext]} v] then {error $v}
49    return {}
50}
51
52proc htg_titre {} {
53    if [catch {set texte [htg getnext]} v] then {error $v}
54
55    return "<H1 ALIGN=\"CENTER\">$texte</H1>"
56}
57
58###############################################################################
59# lecture du fichier mod�le
60###############################################################################
61
62proc htg_go {} {
63    global partie transparents
64
65    set n $transparents(max)
66    for {set i 1} {$i <= $n} {incr i} {
67	set filename [format $partie(template) $i]
68	set fd [open $filename w]
69
70	#######################################################################
71	# le bandeau
72	#######################################################################
73
74	set prec [format $partie(template) [expr $i-1]]
75	set suiv [format $partie(template) [expr $i+1]]
76
77	set bandeau "<H6 ALIGN=\"right\">"
78	if {$i > 1} then {
79	    append bandeau "<A HREF=\"$prec\">\[Retour\]</A>"
80	}
81	if {$i < $n} then {
82	    append bandeau "<A HREF=\"$suiv\">\[Suite\]</A>"
83	}
84	append bandeau "</H6>"
85
86	#######################################################################
87	# on y va
88	#######################################################################
89
90	puts $fd $partie(fond1)
91	puts $fd $transparents(titre-$i)
92	puts $fd $partie(fond2)
93	puts $fd $bandeau
94	puts $fd $transparents($i)
95	puts $fd $partie(fond3)
96
97	close $fd
98
99	#######################################################################
100	# alias
101	#######################################################################
102
103	if {[info exists transparents(alias-$i)]} then {
104	    file delete -force -- $transparents(alias-$i)
105	    file copy -- $filename $transparents(alias-$i)
106	}
107    }
108
109    return {}
110}
111