One of the important changes made to OpenInsight 10 was a comprehensive update of the login and authentication process used to access applications, adding features such as AES encryption, password length, character requirements, expiry dates and so on. However, the addition of this new functionality also revealed the need to update the user-interface, requiring that it move from a “hard-coded” DLL-based Windows Dialog Box to an actual OpenInsight form, mainly due to the tight coupling needed between the various Basic+ components involved during login.
A new form, calling PS_OPENAPP, was added to the system to serve as the login window for the system, as shown here:
However, this is mainly aimed at developers rather than end users and so it may not be suitable for use with your own deployed applications. In this case a new facility was added to v10.0.8 whereby you may customize the dialog appearance by specifying a “login template” instead – this template is simply the name of a SYSPROG form that contains the styling and controls that PS_OPENAPP should apply and display at runtime rather than its own.
When a login template form is specified the PS_OPENAPP dialog performs the following tasks:
- Reads the template’s OIWINEXE definition.
- Hides its own controls.
- Applies the following WINDOW properties from the template to itself:
- Creates the controls defined in template on itself and preserves their tab order.
So, with this facility it is possible to completely change the user-login experience to something like this instead:
(This is an example template called RTI_EXAMPLE_LOGIN_TEMPLATE supplied with v10.0.8)
There are of course several technical steps needed to achieve this, but this post is simply intended to highlight this new functionality – full documentation on how to implement Login Templates is supplied with the upcoming v10.0.8 release, so you can read more about it there.