# Menu Manager

Lagom WHMCS Client Theme Menu Manager gives you the best tools to configure the Lagom theme menu items without any technical know-how. From now on, you do not need to create complicated WHMCS hooks or modify the Lagom theme navigation. Menu Manager delivers a super convenient option to set up the menu items for Main Navigation, Secondary Navigation as well as Footer Navigation.

# Before Start

  1. We strongly recommend to "export" any navigation, which you plan to customize. This gives you additional backup of your oryginal navigation, in case you'd like to restore oryginal navigaiton.
  2. Oryginal Lagom theme navigations are stored in /templates/lagom2/core/config/menu/content, so you can "import" them if you need to restore default navigations.

# Main Page

The Lagom theme offers a predefined list of menus for each menu type. These menus can be managed under the "Menu" tab in the "RS Themes" addon.

  1. Type - allows you to choose the menu type that you wish to manage:
    • "Main" - a list of menus created for the "main" theme navigation.
    • "Secondary" - a list of menus prepared for the "secondary" theme navigation.
    • "Footer" - a list of menus designed for the "footer" theme navigation.
  2. Rule - you can freely define for which rules a specific menu should be displayed in the Lagom theme:
    • Unassigned - a menu will remain invisible in the Lagom theme.
    • Existing Client - a menu will be displayed only to "Logged IN" customers.
    • Guest Client - a menu will be visible only to "Logged OUT" customers.
    • Guest Client" and "Existing Client - a menu will be shown to all clients.
  3. Status - set the menu status:
    • Disabled - a menu will not be visible in the Lagom theme.
    • Active - a menu will be shown in the Lagom theme ONLY if it is assigned to the "rule" different than "unassigned".
  4. Import - enables you to import the previously exported menu to the JSON file.
  5. Add New - gives you the possibility to create a brand new menu.

In this part, you can learn more about UI elements that are common for all menu types.

The "Menu Items" section presents a list of created menu items for the menu you currently manage.

# Actions

Each menu item has its own features:

  1. Edit - click to start managing options for the specific menu item.
  1. Add - used to add "child" items to the "parent" menu item.
  2. Remove - deletes specific menu items. If this item includes "child" items, then those items will be ALSO REMOVED.
  3. Show/Hide - empowers you to decide whether a particular item should be shown in the Lagom theme. If this item consists of "child" items, then those items will be also shown or hidden. This option gives you the possibility to hide a specific item without the need to remove it.

# Change Order

The "Up/Down" arrows are used to change the order of menu items for both "parent" and "child' items.

# Add New Item

In order to add a new menu item, use the following buttons:

  1. Add New - creates a new "parent" item at the end of the menu item list.
  2. Add Child - adds a new "child" item for the currently selected "parent" at the end of the "child" items list.
  3. Add New Item - sets a new "child" item for the currently selected "parent" at the end of the "child" items list.
  1. Name - allows you to set a name for the currently managed menu. This name will not be shown in the Lagom theme.
  2. Display Rule - enables you to assign the currently managed menu to specific display rules:
    • Unassigned - a menu will be invisible in the Lagom theme.
    • Existing Client - a menu will be shown only to "Logged IN" customers.
    • Guest Client - a menu will be visible only to "Logged OUT" customers.
    • Guest Client" and "Existing Client - a menu will be displayed to all clients.
  3. Status - allows you to define if a menu will be visible in the Lagom theme:
    • Disabled - a menu will remain invisible in the Lagom theme.
    • Active - if a menu is assigned to the "rule" different than "unassigned", then it will be displayed in the Lagom theme.
  1. Save Changes - saves changes made to the currently managed menu. Once you do that, please remember that the changes implemented to the menu cannot be restored. It is highly recommended that you "Export" the menu before launching any changes. As a result, a backup of your existing menu will be created and can be simply imported later on.
  2. Cancel - will ignore the currently made changes and redirect you to the main page of Lagom Menu Manager.
  3. Delete - will remove the currently managed menu. This action CANNOT be undone!
  4. Export - allows to export the currently managed menu. If changes have been made, you need to "Save Changes" before exporting the menu.

The "Main Menu" type grants you the possibility to manage the main Lagom theme navigation:

# Parent Item Settings

The "Parent" and "Child" menu items have slightly different configuration options. You can find out more about each configuration option below.

# Type

"Type" defines which configuration options will be displayed for the currently managed menu item.

Available "types":

  1. WHMCS Page - displays a predefined list of WHMCS pages to choose from. The menu item URL will be set automatically based on the selected "Page".
  2. Custom Link - allows you to assign a custom URL.
  3. WHMCS Notifications - automatically generates the "WHMCS notification" menu item with its dropdown. You will not be able to assign "child" items for this menu item type.
  1. Client Account - generates the "My Account" menu item. It will automatically display "First Name", "Last Name", "Company Name" of the currently logged in user.
  1. Language - automatically creates the "WHMCS languages" menu item with its dropdown. You cannot assign "child" items for this menu item type.
  1. Currency - generate currency dropdown, with currencies configured in WHMCS settings (opens new window).

# Name

Under this section, you can define the menu item "name" that will be visible in the Lagom theme navigation. For example:

There are 2 different ways to set the menu item name:

  1. Custom String - thanks to this option, you may enter your custom string that can be translated into different languages using the "Translate" button on the right side.
  2. Language Variable - with this option, you may assign the already existing WHMCS language strings (opens new window) by providing a language key in this field as presented above.

# Icon

Defines the menu item "icon" that will be shown in the Lagom theme navigation. For example:

You can freely select one of the four available icon categories:

  1. Lagom Small Icon - a default Lagom font icon package that includes small UI Icons.
  2. Lagom Medium Icons - a default Lagom font icon package that contains medium UI Icons.
  3. Fontawesome - icons available in WHMCS by default including FontAwesome (opens new window) font icons.
  4. Predefined Icons - default Lagom SVG icons that are injected into the menu as the "SVG Inline" code. These icons are loaded from the /templates/lagom2/assets/svg-icon directory, so it is possible to add your own SVG graphics as new .tpl files.

# Theme Layout

This feature gives you the possibility to choose for which Lagom Layout the currently managed menu item should be displayed. You can select multiple items.

The available types are:

  1. All - a menu item will be shown for all Lagom layouts.
  2. Default - a menu item will be displayed only for the Default layout.
  3. Condensed - a menu item will be shown for the Condensed and Condensed Banner layouts.
  4. Left - a menu item will be visible for the Left and Left Wide layouts.

# Client Status

This option allows you to define for which customer login status the currently managed menu item should be shown.

  1. All - a menu item will be displayed to both Logged IN and Logged OUT customers.
  2. Logged in Client - a menu item will be visible ONLY to Logged IN customers.
  3. Logged out Client - a menu item will be shown ONLY to Logged OUT customers.

# Style for Top Menu Layout

This function enables you to choose the menu item style for "Top" Lagom Layouts, which are: Default, Condensed, Condensed Banner.

There are 4 different options to choose from:

  1. Text - a menu item will show the "name" value ONLY and will IGNORE the selected icon.
  2. Text with icon - a menu item will show the "name" and "icon" if selected.
  3. Icon only - a menu item will display the "icon" ONLY and IGNORE the "name" value.
  4. Button - a menu item will be displayed as the "button" and will IGNORE the selected icon as the button does not support "icons". There are 3 different button styles to you can select:
    • Primary
    • Primary Faded
    • Outline

# Style for Left Menu Layout

With this option, you can define the menu item style for the "Left" Lagom Layouts, which are: Left and Left Wide.

It offers the same configuration options as Style for Top Menu Layout.

# Position

Here you can specify the menu item position. This option is supported only by the Default layout as other layouts do not have the left/right menu item position.

You can select one of the following options:

  1. Left - a menu item will be shown on the LEFT side in the Default Lagom Layout:
  2. Right - a menu item will be displayed on the RIGHT side in the Default Lagom Layout:
  1. Default
  2. Extended - When this option is selected, new "Description" filed will be available for the child menu items. In next product version, this option will activate different style for navigation dropdown.

# Custom Classes

This functionality enables you to assign your custom HTML class that gives you full freedom to apply custom CSS rules to this menu item. It is possible to enter multiple classes, for example custom-class-1 custom-class-2 custom-class-3.

# Target Blank

By turning on/off this option, you can decide whether this menu item should be opened in a new browser tab or not.

# Child Item Settings

"Child Items" are displayed in the Lagom theme navigation as "dropdown" elements. It is possible to assign ONLY ONE level of "child" menu items.

"Child Item" settings do not offer so many ways of customization as "Parent" ones. Under this section, you can find the explanation of these options that are different from Parent Item Settings.

# Type

  1. WHMCS Page - displays a predefined list of WHMCS pages to choose from. The menu item URL will be set automatically based on the selected "Page".
  2. Custom Link - allows you to set your custom URL.
  3. Predefined List - presents a predefined list of menu items. These items will be automatically updated based on the WHMCS configuration. Once selected, you have no option to set the menu item "name", or assign "icons", as these are generated based on the predefined set of information.
    • Client Details - show "First Name", "Last Name", "Company Name" and "Gravatar" if activated in Lagom Settings.
    • Download Categories - display a list of "Download Categories" configured in WHMCS settings.
    • Knowledgebase Categories - stand for a list of "Knowledgebase Categories" configured in WHMCS settings.
    • MarketConnect Products - present a list of "MarketConnect" product groups configured in WHMCS settings.
    • Product Groups - show a list of "Product Groups" configured in WHMCS settings.
    • Ticket Departments - describe a list of "Ticket Deparments" configured in WHMCS settings.
  4. Divider - displays a divider between menu items.

# Description

Description field allows to add additional information about sepcific menu item. This option is only available when "Extended" option is selected for the "Dropdown style" in parent item settings.

# Secondary Menu Management

The "Secondary Menu" section grants you the possibility to manage the menu displayed in the top right corner. Secondary Menu offers the same management options as Main Menu with the difference that "Parent Menu Items" does not have the option to choose its Position. To learn more about available management options, please navigate to:

"Footer Menu" gives you all tools to manage the menu for the Lagom theme "Footer" navigation. Settings for this menu type are mostly the same as for Main Menu which is why we will focus only on these options that differ.

The "Footer Position" feature is a key difference between "Main Menu" and "Footer Menu". It allows you to decide where the "parent" menu item will be displayed.

There are 3 available positions:

  1. Primary - menu items assigned to this "position" will be visible in the Lagom theme only when Extended Footer Layout is activated.
  2. Secondary - menu items assigned to this "position" will be visible for all Footer Layouts which are Default and Extended. This position does not allow to add "child" items.
  3. Social - menu items included in this "position" will be visible in the Lagom theme only when Extended Footer Layout is activated. This position does not allow to add "child" items.

# Export/Import

Lagom Menu Manager "export" and "import" functionality has been designed to give you more control over Lagom WHMCS Client Theme navigations. It gives you possibility to create a backup of your navigation, by exporting this into JSON file. Those files can be easily shared, or imported on different Lagom WHMCS Client Theme installations.

# Export

To export specific navigation, you need to visit Menu Management page, by clicking "Manage" button in "Main Page". Menu management page displays affixed navigation into bottom of your browser window, you can find "Export" button in right corner:

# Import

Import button is available in main page of Lagom Menu Manager. By clicking on "import" menu, your navigation will be imported, and its status will be set to "Disabled", so this navgiation will not be visible for your customers. If imported navigation has the same name as already exisitng navigation (1) will be added to its name.