Index: openacs-4/packages/acs-templating/tcl/head-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-templating/tcl/head-procs.tcl,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-templating/tcl/head-procs.tcl 5 Jan 2008 16:28:54 -0000 1.8 +++ openacs-4/packages/acs-templating/tcl/head-procs.tcl 7 Jan 2008 17:49:30 -0000 1.9 @@ -461,17 +461,66 @@ variable ::template::head::links template::multirow create link rel type href title lang media if {[array exists links]} { + # first media = "screen" foreach name [array names links] { foreach {rel href type media title lang} $links($name) { - template::multirow append link \ - $rel \ - $type \ - $href \ - $title \ - $lang \ - $media + if {$media eq "screen" && $rel ne "alternate stylesheet"} { + template::multirow append link \ + $rel \ + $type \ + $href \ + $title \ + $lang \ + $media + set links($name) "" + } } } + # then media != "screen" + foreach name [array names links] { + foreach {rel href type media title lang} $links($name) { + if {$rel ne "alternate stylesheet" && $links($name) ne ""} { + template::multirow append link \ + $rel \ + $type \ + $href \ + $title \ + $lang \ + $media + set links($name) "" + } + } + } + # now alternate stylesheet, prioritize media = "screen" + foreach name [array names links] { + foreach {rel href type media title lang} $links($name) { + if {$media eq "screen" && $links($name) ne ""} { + template::multirow append link \ + $rel \ + $type \ + $href \ + $title \ + $lang \ + $media + set links($name) "" + } + } + } + # now alternate stylesheets, media other than screen + # plus any other links + foreach name [array names links] { + foreach {rel href type media title lang} $links($name) { + if {$links($name) ne ""} { + template::multirow append link \ + $rel \ + $type \ + $href \ + $title \ + $lang \ + $media + } + } + } unset links }