You are viewing the documentation for Blueriq 17. Documentation for other versions is available in our documentation directory.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Introduction

The MVC UI has two default themes (Forms theme and Dashboard theme) and has support for custom made themes. A theme is basically a set of files and some configuration that consists of the following components:

 DescriptionLocation
Index fileStringTemplate index fileJAR or spring.config.additional-location
Web resourcesJavaScript, CSS, images, etc.JAR or spring.config.additional-location
ConfigurationProperties in the aquima.properties filespring.config.additional-location

A theme can be part of a custom plugin JAR (for example the Dashboard plugin) but can also just be a collection of files located in spring.config.additional-location.

Getting started

The base of a theme is the index file from which the main page is build. Blueriq uses a template engine called StringTemplate to make server properties available in the client. A default Blueriq index page is injected with a template context that features the following properties:

PropertyTypeDescription
themeStringName of the theme currently selected
apiBasePathStringBase path for the web API
webResourcesBasePathStringBase path for web resources
extensionsObject (ExtensionContext)Contains all registered CSS and JavaScript files
 cssExtensionUrlsString[]URLs to all registered CSS files
 jsExtensionUrlsString[]URLs to all registered JavaScript files
developmentModebooleanIndicates whether or not the application runs in development mode
sessionTimeoutintConfigured session timeout in seconds

 

Configuration

In order to configure your theme so it will be known by the Runtime several properties must be set. The following example shows properties for registering a theme named "custom_dashboard":

Properties for registering a custom theme
mvc.themes=custom_dashboard
mvc.custom_dashboard.templateGroupFile=UI/mvc/custom_dashboard.stg
mvc.custom_dashboard.templateName=main
  • No labels