Feature Proposal: Add a configuration wizard for authentication

Motivation

Authentication is complex, and required multiple settings of login manager, etc. The Wizard would present a radio button for a typical type of site. When "applied" it would set the appropriate defaults in the other authentication tabs.

Description and Documentation

Radio button support

Add Radio button support, and pluggable wizard classes to configure:
  • RADIO.pm - implements the Radio Button class
  • RADIOCLASS.pm - implements a dynamic class selector similar to SELECTCLASS.pm
  • resources/scripts.js - doesn't correctly handle the radio button groups - This is more a bug, but radio button groups are not a typed element, so the current code that tests elem.type = 'radio' is incorrect and never matchs. Also elements are set/cleared by index number in the group, not by element name.
Config.spec is extended with the following type:

# **RADIO EXPERT LINEBREAK button,values,list**

LINEBREAK requests that the buttons be rendered 1 per line, otherwise the buttons will be laid out horizontally

button,values,list comma-separated list of radio buttons.

Configuration Wizard support

Add a new configuration class directory - Wizards.

RADIOCLASS renders a button for each of the classes found in the Wizards directory.

Class methods:
  • <strike>setScenario: Sets other config variables for the scenario.</strike>
  • getJS: Returns javascript snippet to set config variables
  • getDescription: Returns scenario description for inclusion in the UI
(I need some help in this area. I'm not sure how to apply the changes to the UI and reflect all the modified settings. I assume that this is better done in JavaScript than perl. )
  • In Foswiki.spec, change the "User Logins" section to "User Authentication"
  • Add a new first tab under "User Authentication" - Wizards

Examples

See UserAuthenticationSupplement for example scenarios and configuration parameters that would be set when a scenario is "applied" using the Wizard.

An authentication related plugin would add a new class into the Wizards directory that would define a new scenario. (Or should this be a .spec file that drives the wizard?)

Impact

%WHATDOESITAFFECT%
edit

Implementation

-- Contributors: GeorgeClark - 11 Feb 2010

Discussion

Changing to ParkedProposal. The work to move to a ConfigurePlugin with topic based wizards rest / json based configure, and eliminate the requirement for an initial configuration makes this irrelevant.

-- GeorgeClark - 02 Apr 2014
 
Topic revision: r2 - 02 Apr 2014, GeorgeClark
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy