Class ::xowiki::includelet::my-refers

::xowiki::includelet::my-refers[i] create ... \
           [ -__decoration (default "none") ]

List the pages which are referred to the current page.
Defined in /var/www/openacs.org/packages/xowiki/tcl/includelet-procs.tcl

Class Relations

  • class: ::xowiki::IncludeletClass[i]
  • superclass: ::xowiki::Includelet[i]
::xowiki::IncludeletClass create ::xowiki::includelet::my-refers \
     -superclass ::xowiki::Includelet

Methods (to be applied on instances)

  • __decoration (setter)

  • render (scripted)

    :get_parameters
    
    set item_id [${:__including_page} item_id]
    set refs [list]
    
    ::xo::dc foreach get_refers "SELECT DISTINCT reference,ci.name,ci.parent_id,o.package_id as pid  from xowiki_references,cr_items ci,acs_objects o  where page = :item_id and ci.item_id = reference and ci.item_id = o.object_id" {
      if {$pid eq ""} {
        #
        # In versions begore oacs 5.2, the following query returns
        # empty.
        #
        set pid [::xo::dc get_value 5.2 {
          select package_id from cr_folders where folder_id = :parent_id
        }]
      }
      if {$pid ne ""} {
        ::xowiki::Package require $pid
        lappend refs "<a href='[ns_quotehtml [::$pid pretty_link -parent_id $parent_id $name]]'>[ns_quotehtml $name]</a>"
      }
    }
    
    set references [join $refs ", "]
    
    array set lang {found "" undefined ""}
    foreach i [${:__including_page} array names lang_links] {
      set lang($i) [join [${:__including_page} set lang_links($i)] ", "]
    }
    append references " " $lang(found)
    set result ""
    if {$references ne " "} {
      append result "#xowiki.references_of_label# $references"
    }
    if {$lang(undefined) ne ""} {
      append result "#xowiki.create_this_page_in_language# $lang(undefined)"
    }
    return $result