boomerang::get_relevant_subsite (private)

 boomerang::get_relevant_subsite

Defined in packages/boomerang/tcl/boomerang-procs.tcl

Find the best "top" subsite on the instance. The code is based on the "register subsite", which is in plain sites (single subsite) the top subsite, or on host-node-mapped subsites to mapped subsite (when the host-node map points to a subsite) or the main subsite. This code makes sure, we can provide a URL on this site. We should distinguish between cases where we provide a URL (e.g. the beacon) or just include stuff, in which case it works as well for host-node entries, which are no subsites..... but these cases are rare enough, such we don't care so far.

Partial Call Graph (max 5 caller/called nodes):
%3 boomerang::initialize_widget boomerang::initialize_widget (public) boomerang::get_relevant_subsite boomerang::get_relevant_subsite boomerang::initialize_widget->boomerang::get_relevant_subsite security::get_register_subsite security::get_register_subsite (public) boomerang::get_relevant_subsite->security::get_register_subsite site_node::get_from_url site_node::get_from_url (public) boomerang::get_relevant_subsite->site_node::get_from_url site_node::get_object_id site_node::get_object_id (public) boomerang::get_relevant_subsite->site_node::get_object_id

Testcases:
No testcase defined.
Source code:
        set dict [security::get_register_subsite]
        if {![dict exists $dict subsite_id]} {
            set host_node_id [dict get $dict host_node_id]
            if {$host_node_id == 0} {
                #
                # Provide compatibility with older versions of
                # get_register_subsite, not returning the
                # host_node_id. In such cases, we get the host_node_id
                # via the URL
                #
                set node_info [site_node::get_from_url -url [dict get $dict url]]
                set host_node_id [dict get $node_info node_id]
            }
            set subsite_id [site_node::get_object_id -node_id $host_node_id]
        } else {
            set subsite_id [dict get $dict subsite_id]
        }
        return $subsite_id
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: