subsite-navigation-procs.tcl

Procs to manage the default template's navigation multirow.

Location:
packages/acs-subsite/tcl/subsite-navigation-procs.tcl
Created:
2008-04-26
Author:
Don Baccus <dhogaza@pacifier.com>
CVS Identification:
$Id: subsite-navigation-procs.tcl,v 1.5.2.3 2022/08/29 14:17:24 antoniop Exp $

Procedures in this file

Detailed information

subsite_navigation::add_section_row (private)

 subsite_navigation::add_section_row [ -subsite_id subsite_id ] \
    -array array -base_url base_url -multirow multirow -group group \
    [ -section section ] [ -parent parent ]

Helper proc for adding rows of sections to the page flow of the subsite.

Switches:
-subsite_id
(optional)
-array
(required)
-base_url
(required)
-multirow
(required)
-group
(required)
-section
(optional)
-parent
(optional)
See Also:

Partial Call Graph (max 5 caller/called nodes):
%3 subsite_navigation::define_pageflow subsite_navigation::define_pageflow (public) subsite_navigation::add_section_row subsite_navigation::add_section_row subsite_navigation::define_pageflow->subsite_navigation::add_section_row ad_conn ad_conn (public) subsite_navigation::add_section_row->ad_conn ad_file ad_file (public) subsite_navigation::add_section_row->ad_file site_node::closest_ancestor_package site_node::closest_ancestor_package (public) subsite_navigation::add_section_row->site_node::closest_ancestor_package site_node::get_node_id_from_object_id site_node::get_node_id_from_object_id (public) subsite_navigation::add_section_row->site_node::get_node_id_from_object_id subsite::package_keys subsite::package_keys (public) subsite_navigation::add_section_row->subsite::package_keys

Testcases:
No testcase defined.

subsite_navigation::define_pageflow (public)

 subsite_navigation::define_pageflow [ -subsite_id subsite_id ] \
    [ -show_applications_p show_applications_p ] \
    [ -no_tab_application_list no_tab_application_list ] \
    [ -initial_pageflow initial_pageflow ] \
    [ -navigation_multirow navigation_multirow ] [ -group group ] \
    [ -subgroup subgroup ] [ -include_all ]

Defines the page flow of the subsite. This sets up a navigation multirow as defined by the default master installed by openacs, which renders it as one or more rows of tabs. The standard CSS defines classes for two rows of tabs, if you want more, you must define your own CSS classes. If the navigation multirow doesn't exist, we create it.

Switches:
-subsite_id
(optional)
The package id of the subsite we're interested in (defaults to current)
-show_applications_p
(defaults to "1") (optional)
If true, autogenerate tabs for applications (not declared boolean because the tabbed master takes this from a package parameter)
-no_tab_application_list
(optional)
A list of application package keys to ignore when autogenerating tabs for applications
-initial_pageflow
(optional)
Add these subsections before computing the rest of the page flow
-navigation_multirow
(defaults to "navigation") (optional)
The name of the multirow used to build the nav bars
-group
(defaults to "main") (optional)
Group name for the primary section
-subgroup
(defaults to "sub") (optional)
Group name for the subsection (opened under a selected tab)
-include_all
(boolean) (defaults to "false") (optional)
Per default, only the subgroup of the currently selected top menu is return. When -include_all is specified, the resulting multirow contains all subgroups (useful for pull-down menus)

Partial Call Graph (max 5 caller/called nodes):
%3 packages/acs-subsite/www/admin/tabbed-master-dotlrn.tcl packages/acs-subsite/ www/admin/tabbed-master-dotlrn.tcl subsite_navigation::define_pageflow subsite_navigation::define_pageflow packages/acs-subsite/www/admin/tabbed-master-dotlrn.tcl->subsite_navigation::define_pageflow packages/acs-subsite/www/admin/tabbed-master-turquois.tcl packages/acs-subsite/ www/admin/tabbed-master-turquois.tcl packages/acs-subsite/www/admin/tabbed-master-turquois.tcl->subsite_navigation::define_pageflow packages/acs-subsite/www/admin/tabbed-master.tcl packages/acs-subsite/ www/admin/tabbed-master.tcl packages/acs-subsite/www/admin/tabbed-master.tcl->subsite_navigation::define_pageflow packages/acs-subsite/www/shared/tabbed-master.tcl packages/acs-subsite/ www/shared/tabbed-master.tcl packages/acs-subsite/www/shared/tabbed-master.tcl->subsite_navigation::define_pageflow packages/acs-subsite/www/tabbed-master.tcl packages/acs-subsite/ www/tabbed-master.tcl packages/acs-subsite/www/tabbed-master.tcl->subsite_navigation::define_pageflow ad_conn ad_conn (public) subsite_navigation::define_pageflow->ad_conn ad_file ad_file (public) subsite_navigation::define_pageflow->ad_file subsite::get_element subsite::get_element (public) subsite_navigation::define_pageflow->subsite::get_element subsite_navigation::add_section_row subsite_navigation::add_section_row (private) subsite_navigation::define_pageflow->subsite_navigation::add_section_row subsite_navigation::get_pageflow_struct subsite_navigation::get_pageflow_struct (public) subsite_navigation::define_pageflow->subsite_navigation::get_pageflow_struct

Testcases:
No testcase defined.

subsite_navigation::get_pageflow_from_parameter (private)

 subsite_navigation::get_pageflow_from_parameter -parameter parameter \
    -subsite_id subsite_id
Switches:
-parameter
(required)
subsite parameter name
-subsite_id
(required)
package_id of subsite
Returns:
pageflow

Partial Call Graph (max 5 caller/called nodes):
%3 subsite_navigation::get_pageflow_struct subsite_navigation::get_pageflow_struct (public) subsite_navigation::get_pageflow_from_parameter subsite_navigation::get_pageflow_from_parameter subsite_navigation::get_pageflow_struct->subsite_navigation::get_pageflow_from_parameter parameter::get parameter::get (public) subsite_navigation::get_pageflow_from_parameter->parameter::get

Testcases:
No testcase defined.

subsite_navigation::get_pageflow_struct (public)

 subsite_navigation::get_pageflow_struct [ -subsite_id subsite_id ] \
    [ -initial_pageflow initial_pageflow ] \
    [ -show_applications_p show_applications_p ] \
    [ -no_tab_application_list no_tab_application_list ]

Defines the page flow structure.

Switches:
-subsite_id
(optional)
The package id of the subsite we're interested in (defaults to current)
-initial_pageflow
(optional)
Add these subsections before computing the rest of the page flow
-show_applications_p
(defaults to "1") (optional)
If true, autogenerate tabs for applications (not declared boolean because the tabbed master takes this from a package parameter)
-no_tab_application_list
(optional)
A list of application package keys to ignore when autogenerating tabs for applications

Partial Call Graph (max 5 caller/called nodes):
%3 subsite_navigation::define_pageflow subsite_navigation::define_pageflow (public) subsite_navigation::get_pageflow_struct subsite_navigation::get_pageflow_struct subsite_navigation::define_pageflow->subsite_navigation::get_pageflow_struct ad_conn ad_conn (public) subsite_navigation::get_pageflow_struct->ad_conn parameter::get parameter::get (public) subsite_navigation::get_pageflow_struct->parameter::get permission::permission_p permission::permission_p (public) subsite_navigation::get_pageflow_struct->permission::permission_p site_node::closest_ancestor_package site_node::closest_ancestor_package (public) subsite_navigation::get_pageflow_struct->site_node::closest_ancestor_package site_node::get_children site_node::get_children (public) subsite_navigation::get_pageflow_struct->site_node::get_children

Testcases:
No testcase defined.

subsite_navigation::get_section_info (public)

 subsite_navigation::get_section_info [ -array array ] \
    [ -navigation_multirow navigation_multirow ]

Takes the navigation_multirow and sets the passed array name with the elements label and url of the selected section.

Switches:
-array
(defaults to "section_info") (optional)
-navigation_multirow
(defaults to "navigation") (optional)

Partial Call Graph (max 5 caller/called nodes):
%3 template::multirow template::multirow (public) subsite_navigation::get_section_info subsite_navigation::get_section_info subsite_navigation::get_section_info->template::multirow

Testcases:
No testcase defined.
[ show source ]