Introduction
Server Platform
Application Server
Content Generation
Class Library API
   Runtime System
   WebServer
   Process
   Database
   Page
   Context
   Elements
   Templates
   Menu
   User
   CGI
   Form
   Table
   TreeAdmin
   DirectoryTree
   Application
Manual Index

next | previous

Maxscape::Menu Package

Member Functions

  1. _registerPageMenuNodeHyperlink
  2. CategoryLink
  3. checkProjectMemberNames
  4. checkProjectName
  5. createProject
  6. createProjectPages
  7. displayCategories
  8. displayCategory
  9. displayCategoryMenu
  10. displayMainMenu
  11. displayMainMenuCategories
  12. displayMainMenuHyperlink
  13. displayMenu
  14. displayPageMenuNodeHyperlink
  15. HashOfListsEntryToHash
  16. initialiseMainMenu
  17. manageProject
  18. MenuHeaderRule
  19. new
  20. PageMenuProperty
  21. PathDepth
  22. pushCategories
  23. registerCurrentCategoriesAndPages
  24. registerPageMenuNodeHyperlink
  25. selectRandomImage
  26. SequenceLinks
  27. 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


nextprevioustopbecome a membercontact © Maxscape