Overview

The Themes page in Admin > Themes controls host-name based branding for the MiRTA PBX web interface. A theme can change the selected UI package, Smartadmin layout behavior, logos, login-page text, menu additions, custom templates, and switchboard access behavior.

Each theme is selected by matching the requested web host against Server Name Regex. Keep the most specific host patterns for branded domains and use a broad expression only for the default theme.

Themes list with fictional documentation theme entries.
Themes list with fictional documentation theme entries.

Working with themes

ActionExplanation
CreateUse New Theme from the Themes list, complete the host pattern and branding fields, then save.
EditSelect a theme from the list by clicking the server-name regex, theme name, or title.
DuplicateUse the duplicate action when a new branded domain should start from an existing theme.
DeleteDelete only unused themes. Removing the active catch-all theme can leave the login page without the expected branding.
Validate host matchingTest each branded hostname after saving. Regex patterns are powerful, so a broad expression can unintentionally match more hostnames than expected.

Theme editor

The editor is split into sections. The screenshots use fictional documentation values and should not be saved directly on a production system.

Theme editor identity and Smartadmin layout options with fictional values.
Theme editor identity and Smartadmin layout options with fictional values.
Theme editor customization and login-page fields with fictional values.
Theme editor customization and login-page fields with fictional values.
Theme editor switchboard link and favicon options with fictional values.
Theme editor switchboard link and favicon options with fictional values.

Field reference

FieldDescription
Server Name RegexMatches the HTTP host name that should use this theme. Use a precise expression for a branded domain, or a broad expression only for a catch-all default theme.
ThemeSelects the installed UI theme package. The standard value is smartadmin.
Fixed headerKeeps the page header visible while scrolling.
Fixed navigationKeeps the navigation panel fixed while page content scrolls.
Menu on topMoves the main navigation from the side panel to a horizontal top menu.
Push contentPushes page content when the mobile navigation is opened.
Force RTL (Right to Left)Forces right-to-left layout for languages or deployments that require it.
Boxed layoutConstrains the page width instead of using the full browser width.
Hidden MenuCollapses the navigation until the user hovers over the visible navigation area.
Minify MenuShows a compact icon-oriented navigation menu.
Bigger FontIncreases the interface font size.
SkinChooses the Smartadmin skin, such as light, default, or dark.
ColorApplies one of the predefined Smartadmin color themes or a custom color file.
Other Body ClassesAdds extra Smartadmin body classes for advanced layout customization.
Provisioning host nameOverrides the host name shown in provisioning-related pages and generated provisioning links. Leave empty to inherit the configured host.
TitleSets the browser tab title. Enable Smart to append page-specific information.
Top TitleSets the title shown in the top application area. HTML can be used for custom branding when needed.
Bottom messageSets the footer or bottom message shown in the interface.
Additional menuAdds custom menu entries. The field can use variables such as tenant code, selected tenant, tenant name, and username.
Additional Configuration item menuAdds custom entries under the Configuration menu.
Additional Status item menuAdds custom entries under the Status menu.
Additional Status/Stats item menuAdds custom entries under the Status/Stats menu grouping.
Additional Admin item menuAdds custom entries under the Admin menu.
Additional Bread itemAdds custom breadcrumb content.
Additional Head entriesAdds custom HTML entries to the page head. Use only trusted markup.
Logo PathPath or URL for the logo image used by the theme.
Favicon PathPath or URL for the browser favicon.
Custom CSSPath to an extra CSS file loaded by the theme.
Custom JavascriptPath to an extra JavaScript file loaded by the theme.
Custom Login tplTemplate file used to override the login page for this theme.
Do not apply CSPWhen enabled, the login page for this theme does not receive the Content Security Policy header. This is useful for legacy custom login templates while they are being updated. Leave it disabled when the custom login page is CSP-compatible.
Custom topmenu tplTemplate file used to override the top menu.
Custom dashboard tplTemplate file used to override the dashboard.
Custom Webphone URLAlternative webphone URL. Use %%NAME%% to substitute the extension username.
Custom Wallboard ProxyAPI URLAlternative Proxy API base URL used by wallboard integrations.
Max number of menu itemsControls how many Configuration menu items are displayed before the interface condenses them. This is applied at login time.
Max number of destination items shownLimits the number of items displayed inside destination selectors.
Max number of Data Table items shownControls when larger lists switch to a grid-style view.
Default number of Data Table items showDefault page length for DataTable lists.
No menu itemsHides the main menu for this theme.
No headerHides the page header for this theme.
LanguageForces a language for this theme, or leaves it on automatic browser detection.
CompanyCompany name shown on the login page.
Company MessageMain message shown on the login page.
Company Sub MessageSecondary login-page message.
Multiple clusters portalAdds the cluster portal link for deployments that expose several clusters.
Switchboard loginControls whether the login page shows a switchboard button, redirects to switchboard login, or shows no switchboard link.
Switchboard Favicon PathPath or URL for the favicon used only by the switchboard page. Leave empty to keep the browser default behavior for the switchboard.

CSP and custom login templates

The Do not apply CSP option is intentionally theme-specific. It allows old or highly customized login templates to keep working while they are being made compatible with the login-page Content Security Policy. For a hardened login page, leave this option disabled and update the custom login template so all scripts, images, frames, and styles comply with the CSP rules.

Operational notes


Revision #14
Created 2026-06-02 21:57:28 UTC by Admin
Updated 2026-06-06 13:48:26 UTC by Admin