Force User Login

Developer

Paul Ojennus, Whitworth University

Description

Opens the native Primo login dialog box on load. If the user is logged in or has dismissed the login dialog box in the current session, the customization does not open the dialog box again on reload.

Primo login form

System Components

Alma Discovery Configure Views, JS

Skill Set Requirements

Alma Discovery Configure Views, JS

Accessibility

Tested for keyboard navigation and NVDA screenreader (there are known issues with reading the login dialog box with NVDA; the customization does not add any further issues)

Browser Support

Tested on Edge, Chrome, and Firefox

Mobile Support

Tested on Android

Implementation

Overview

To enable this module, you will need to:

  • Declare the module (step 2)
  • Insert a declaration to inherit the code from the Central Package (step 3)

Steps

  1. Turn on inheritance from the Central Package.
  2. In your local package, in the custom.js file, include the module ‘forceLogin’ in your app definition. For example:

    var app = angular.module('viewCustom', ['forceLogin']);

    If you are using other angular modules, include them in your app definition as well. For example:

    var app = angular.module('viewCustom', ['toggleAdvancedFields', 'forceLogin']);
  3. Also in the custom.js file, add the following line of code within the anonymous function (that is, before the closing brackets at the end of the file):

    app.component('prmUserAreaExpandableAfter', { bindings: { parentCtrl: '<' }, template: '<force-login></force-login>'});
  4. Zip and upload your package in Alma Discovery. Save your view.