Maxscape::Menu Package
Member Functions
- _registerPageMenuNodeHyperlink
- CategoryLink
- checkProjectMemberNames
- checkProjectName
- createProject
- createProjectPages
- displayCategories
- displayCategory
- displayCategoryMenu
- displayMainMenu
- displayMainMenuCategories
- displayMainMenuHyperlink
- displayMenu
- displayPageMenuNodeHyperlink
- HashOfListsEntryToHash
- initialiseMainMenu
- manageProject
- MenuHeaderRule
- new
- PageMenuProperty
- PathDepth
- pushCategories
- registerCurrentCategoriesAndPages
- registerPageMenuNodeHyperlink
- selectRandomImage
- SequenceLinks
- setSequenceLinksAnchorCSS_Class
Synopsis
Menusystem that works with the content database.
Description
The maXscape Maxscape::Menu package supplies the basic functionality to deal with site navigation and menu systems related to the content database.
The Maxscape runtime system can be configured to create a Maxscape::Menu" object by default and fill it's members with the data about categories and pages of the current page category level.
Note, that the displayMainMenuHyperlink method is app server or site global and defined in GlobalServerApplication.pm, resp. ServerApplication.pm.
Examples
new
Synopsis
$Menu = Maxscape::Menu->new (Page => $Page, 'Font' => $Font, 'FontEnd' => $FontEnd, 'otherText' => $otherText, );
Description
Creates a new 'Maxscape::Menu' navigation object.
Examples
HashOfListsEntryToHash
Synopsis
Description
Examples
initialiseMainMenu
Synopsis
$Menu->initialiseMainMenu ($Page);
Examples
my $Text .= $Menu->initialiseMainMenu ($self, $MenuCallbackFunctionName);
Description
Initialises the 'Menu->{mainMenu}' member to the reference returned by the subroutine '$MenuCallbackFunctionName'.
registerCurrentCategoriesAndPages
Synopsis
$Menu->registerCurrentCategoriesAndPages ($self);
Description
Registers the pages current level nodes from the previously collected data.
Examples
if ($Page->{Context}->{'Query.Mode'}) { $Menu->registerCurrentCategoriesAndPages($Page); }
CategoryLink
Synopsis
Description
Examples
PageMenuProperty
Synopsis
$self->PageMenuProperty ("otherText", $UserChannelText . $otherMenuText);
Description
Examples
pushCategories
Synopsis
$self->pushCategories ($Page->{Elements}->{Categories});
Description
Examples
displayCategories
Synopsis
Description
Examples
displayCategoryMenu
Synopsis
Description
Examples
registerPageMenuNodeHyperlink
Synopsis
$self->registerPageMenuNodeHyperlink ($Category);
Description
Examples
_registerPageMenuNodeHyperlink
Synopsis
$self->_registerPageMenuNodeHyperlink ($Category);
Description
The default function. Not in use!!!
Examples
displayPageMenuNodeHyperlink
Synopsis
$self->displayPageMenuNodeHyperlink (Category => ${$self->{Categories}}[$i]);
Description
The default function. Not in use!!!
Examples
displayMenu
Synopsis
Description
Function is not in use.
Examples
displayCategory
Synopsis
$self->displayCategory ();
Description
Examples
setSequenceLinksAnchorCSS_Class
Synopsis
$self->setSequenceLinksAnchorCSS_Class ();
Description
Examples
SequenceLinks
Synopsis
$self->SequenceLinks ();
Description
Examples
displayMainMenu
Synopsis
Displays the categories and pages of node tree in the content database.
Description
Displays categories and pages of the content database. Several meta data are used to control if and how a node is displayed. E.g, to control if a node is actually displayed, the MENU_NUMBER column of the NODE table is used. The position in the menue is given by the MENU_NUMBER number. Note, that the displayMainMenuHyperlink method is app server or site global and defined in GlobalServerApplication.pm, resp. ServerApplication.pm.
Examples
@{[$Page->{Menu}->displayMainMenu ( SubCategoryIndent => "$::SP$::SP$::SP", Image => $Page->{Layout}{MenuImage}, selectedImage => $Page->{Layout}{selectedMenuImage}, ReplaceCategory => { "//Search" => $Page->{MenuAnchor}{Search}, "//Comments" => $Page->{MenuAnchor}{Comments}, "//Contact" => $Page->{MenuAnchor}{Chat}, }, )]} @{[$Page->{Menu}->displayMainMenu ( dontShowMainCategories => 1, dontShowRootCategory => 1, SubCategoryIndent => "$::SP$::SP$::SP", CSSLinkClass => 'leftSideMenu', MenuSelectedLinkBgColor => $Page->{Layout}->{leftSideMenuSelectedLinkBgColor}, MenuSelectedLinkTextColor => $Page->{Layout}->{leftSideMenuSelectedLinkTextColor}, leftMenuUserAdminPageText => 'Home', )]}
PathDepth
Synopsis
Description
Examples
displayMainMenuCategories
Synopsis
my $Menu = $Page->{Menu}->displayMainMenuCategories ();
Description
Displays the categories and pages of the node tree in the content database. To control if a node is actually displayed, the MENU_NUMBER column of the NODE table is used. The position in the menue is given by the MENU_NUMBER number.
Examples
my $Menu = $Page->{Menu}->displayMainMenuCategories ( CSSLinkClass => "Menu", Categories => $Page->{Context}->{MainCategories}, myCategory => $Page->Category(), myPage => $Page->PageName(), Type => 'horizontal', Indent => '', MenuSelectedLinkBgColor => $Page->{Layout}{TopMenuSelectedLinkBgColor}, MenuSelectedLinkTextColor => $Page->{Layout}{MenuSelectedLinkTextColor}, DisplayStart => 0, DisplayStop => $#{$Page->{Context}->{MainCategories}}, ReplaceCategory => { $ReplaceCategory => '', }, additionalMenuLinks => $displayMemberButton, #$editTopMenuButton, );
displayMainMenuHyperlink
Synopsis
$Page->{Menu}->displayMainMenuHyperlink (Category => ${$Page->{Categories}}[$i]);
Description
Examples
MenuHeaderRule
Synopsis
Description
selectRandomImage
Synopsis
$Page->selectRandomImage ();
Description
createProject
Synopsis
$Page->createProject ($PageTreeDocumentRoot);
Description
checkProjectName
Synopsis
$Page->checkProjectName ($PageTreeDocumentRoot, $ProjectName);
Description
createProjectPages
Synopsis
$Page->createProjectPages ($PageTreeDocumentRoot, $ProjectName);
Description
manageProject
Synopsis
$Page->manageProject ($PageTreeDocumentRoot);
Description
checkProjectMemberNames
Synopsis
$Page->checkProjectMemberNames ($PageTreeDocumentRoot, $ProjectName);
Description