Index: openacs-4/packages/xowiki/tcl/link-procs.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/xowiki/tcl/link-procs.tcl,v diff -u -r1.106.2.19 -r1.106.2.20 --- openacs-4/packages/xowiki/tcl/link-procs.tcl 28 Dec 2021 15:59:42 -0000 1.106.2.19 +++ openacs-4/packages/xowiki/tcl/link-procs.tcl 28 Dec 2021 18:05:59 -0000 1.106.2.20 @@ -50,7 +50,7 @@ Class create ExternalLink -superclass BaseLink ExternalLink instproc render {} { set css_atts [:mk_css_class_and_id -additional external] - return "[ns_quotehtml ${:label}]" + return "${:label}" } # @@ -142,7 +142,7 @@ if {$href eq ""} { return \[$label\] } else { - return " $label" + return "$label" } } Link instproc pretty_link {item_id} { @@ -155,31 +155,39 @@ } set pageArg [list -page $obj] } - return [::${:package_id} pretty_link -parent_id ${:parent_id} -lang ${:lang} \ - -anchor ${:anchor} -query ${:query} \ + return [::${:package_id} pretty_link \ + -parent_id ${:parent_id} \ + -lang ${:lang} \ + -anchor ${:anchor} \ + -query ${:query} \ {*}$pageArg \ ${:name}] } Link instproc new_link {} { set nls_language [${:page} get_nls_language_from_lang ${:lang}] if {${:form} ne ""} { - return [::${:package_id} make_form_link -form ${:form} \ + return [::${:package_id} make_form_link \ + -form ${:form} \ -parent_id ${:parent_id} \ -name ${:name} \ -nls_language $nls_language] } if {[${:page} exists __unresolved_object_type]} { + # # get the desired object_type for unresolved entries + # set object_type [${:page} set __unresolved_object_type] } else { set object_type [[${:page} info class] set object_type] if {$object_type ne "::xowiki::Page" && $object_type ne "::xowiki::PlainPage"} { + # # TODO: this is a temporary solution. We should find a way to # pass similar to file or image entries the type of this # entry. Maybe we can get the type as well from a kind of # blackboard, where the type of the "edit" wiki-menu-entry is # stored as well. + # set object_type ::xowiki::Page } } @@ -245,105 +253,105 @@ return $result } - # - # Small bootstrap modal - # - ::xowiki::LinkTemplate create ::xowiki::template::modal-sm -link_template { - $label - } -body_template { - - } +# # +# # Small bootstrap modal +# # +# ::xowiki::LinkTemplate create ::xowiki::template::modal-sm -link_template { +# $label +# } -body_template { +# +# } - # - # Large bootstrap modal - # - ::xowiki::LinkTemplate create ::xowiki::template::modal-lg -link_template { - $label - } -body_template { - - } +# # +# # Large bootstrap modal +# # +# ::xowiki::LinkTemplate create ::xowiki::template::modal-lg -link_template { +# $label +# } -body_template { +# +# } - # - # Small bootstrap modal using ajax - # - ::xowiki::LinkTemplate create ::xowiki::template::modal-sm-ajax -render_content false -link_template { - $label - } -body_template { - - - } +# # +# # Small bootstrap modal using ajax +# # +# ::xowiki::LinkTemplate create ::xowiki::template::modal-sm-ajax -render_content false -link_template { +# $label +# } -body_template { +# +# +# } - # - # Large bootstrap modal using ajax - # - ::xowiki::LinkTemplate create ::xowiki::template::modal-lg-ajax -render_content false -link_template { -$label - } -body_template { - - -} +# # +# # Large bootstrap modal using ajax +# # +# ::xowiki::LinkTemplate create ::xowiki::template::modal-lg-ajax -render_content false -link_template { +# $label +# } -body_template { +# +# +# } # # folder links @@ -418,10 +426,12 @@ ::xowiki::Link::image instproc render {} { set item_id [:resolve] #:log "-- image resolve for ${:page} returned $item_id (name=${:name}, label=${:label})" - if {$item_id} { - set absolute_links [expr {[${:page} exists absolute_links] ? [${:page} absolute_links] : 0}] - set link [::${:package_id} pretty_link -download true -query ${:query} \ - -absolute $absolute_links -parent_id ${:parent_id} \ + if {$item_id != 0} { + set link [::${:package_id} pretty_link \ + -download true \ + -query ${:query} \ + -absolute [expr {[${:page} exists absolute_links] ? [${:page} absolute_links] : 0}] \ + -parent_id ${:parent_id} \ -page $item_id \ ${:name}] #:log "--l fully quali [${:page} absolute_links], link=$link [info commands ::$item_id]" @@ -455,19 +465,29 @@ append style "$a: [set :$a];" } } - if {$style ne ""} {set style "style='$style'"} - if {[info exists :geometry]} {append link "?geometry=${:geometry}"} - set label [string map [list ' "'"] $label] - if {[info exists :href]} {set href ${:href}} {set href ""} + if {$style ne ""} { + set style "style='$style'" + } + if {[info exists :geometry]} { + append link "?geometry=${:geometry}" + } + #set label [string map [list ' "'"] $label] + set href [expr {[info exists :href] ? ${:href} : ""}] set cls [:mk_css_class_and_id -default [expr {$link ne "" ? "image" : "refused-link"}]] if {$href ne ""} { set href [:resolve_href $href] - if {[string match "java*" $href]} {set href .} - if {[info exists :revision_id]} {append href ?revision_id=${:revision_id}} - return "$pre[ns_quotehtml $label]$post" + if {[string match "java*" $href]} { + set href . + } + if {[info exists :revision_id]} { + append href ?revision_id=${:revision_id} + } + return [ns_trim [subst {$pre$label$post}]] } else { if {[info exists :revision_id]} {append link ?revision_id=${:revision_id}} - return "$pre[ns_quotehtml $label]$post" + return [ns_trim [subst {$pre$label$post}]] } } @@ -586,13 +606,14 @@ if {[info exists :$a]} {append addParams "so.addParam('$a', '[set :$a]');\n"} } - return "
$label
- - " - } + return [ns_trim [subst {
$label
+ + }]] + } # # glossary links @@ -623,7 +644,7 @@ if {![info exists :cssid]} {:cssid [::xowiki::Includelet html_id [self]]} template::add_event_listener \ -id ${:cssid} \ - -script [subst {showInfo('[ns_quotehtml $href?master=0]','[ns_quotehtml $label]')}] + -script [subst {showInfo('[ns_quotehtml $href?master=0]','$label')}] return "$label" }