Automic Web Interface customization

Idea created by Michael_Lowry on Apr 13, 2018
    Under review
    Score57

    Additional AWI configuration settings

    Some aspects of the AWI can be configured via the configuration.properties and colors.properties files. A few things however, still cannot be customized. It should be possible to customize the window title and the favorite icon. Each of these should have its own AWI configuration setting. This would make it possible for the AWI administrator to better customize the way the Automic Web Interface appears to users, and would make it easier for admins and users to tell at a glance which browser window/tab corresponds to the DEV system, which to TEST, which to PROD, and so on.


    The color-coded favorite icons in the example above were designed so that each color is associated with particular AE environment.

    AWI administrators might want to create their own custom favorite icons, e.g., with a company logo. However, If there were a separate configuration option for specifying the border color of the favorite icon, this would likely be sufficient in many cases. With an option to specify the color of a border around the favorite icon, AWI admin could simply specify the same favorite icon border color as the main color, and thus establish a consistent color scheme for each AE environment without needing to create a separate icon for each environment.

    Here is my suggestion for how to implement this:

    Config. fileSettingDescriptionDefaultExample
    configuration.propertieshtmlheader.titleSet custom window titleAutomic Web InterfaceAE_DEV
    colors.propertiesfavicon.filenameSet custom favorite iconBuilt-in favicon.ico:
      
    theme/ae_dev.ico
    colors.propertiesfavicon.bordercolorBorder color of favorite iconNA#2A97FF
    colors.propertiesfavicon.borderstyle

    Style of favorite icon border (rect/roundrect/circle/none)

    noneroundrect


    For the HTML title, it might also make sense to provide a way to set the title automatically based on the name of the AE system.
     



    Environment variables for AWI configuration settings
     

    The com.uc4.ecc.config.dir Java property makes it possible to specify the location of the AWI config directory at run time, when the AWI is started. This is documented on the page Customizing the AWI Configuration Path. The AWI admin can prepare a single AWI package that includes all of the configuration files necessary for multiple environments (DEV, TEST, PROD), and then use the com.uc4.ecc.config.dir property to specify which configuration directory to use when the app is started.

    Ideally, it should also be possible to override any AWI configuration setting at run time using an environment variable. Here is a proposal:

    File

    Property

    Environment variable

    Value in EXP

    Value in DEV

    configuration.properties

    automationEngine.index

    AWI_AE_INDEX

    0

    1

    configuration.propertieshtmlheader.titleAWI_HTMLHEADER_TITLEAE_EXPAE_DEV

    colors.properties

    maincolor

    AWI_MAINCOLOR

    #FFFF00

    #2A97FF

    colors.properties

    logo.filename

    AWI_LOGO_FILENAME

    logo-exp.png

    logo-dev.png

    colors.propertiesfavicon.filenameAWI_FAVICON_FILENAMEfavicon-exp.pngfavicon-dev.png
    colors.propertiesfavicon.bordercolorAWI_FAVICON_BORDERCOLOR#FFFF00#2A97FF
    colors.propertiesfavicon.borderstyleAWI_FAVICON_BORDERSTYLEroundrectroundrect


    When every setting has a corresponding environment variable, it is easier to deploy the AWI as a cloud app, e.g., using a Cloud Foundry provider. Default values can be specified in the config files, but can be overridden at run time using environment variables.
     



    Customizable session colors


    Lastly, it should be possible to customize the session colors. Currently, there are just five hard-coded colors.


    Legacy enhancement request IDs: PMPER-1734, PMPER-2002.