A Wizard is module that performs one or more configuration functions. For example, you might have a wizard that helps set up email; when you have all the email settings done, you invoke the wizard to attempt to complete the configuration.
Any number of callable functions may be defined in a wizard. Each function fn has the signature:ObjectMethod fn ($reporter, $spec) → $boolean
Wizards can accept
values from callers using the $this→param()
method. Error messages
etc are reported via the Foswiki::Configure::Reporter $reporter
.
$spec is the root of the type specification tree for configuration entries. This is provided primarily for wizards that need to modify it e.g. installers.
Wizard functions may modify$Foswiki::cfg
, but must report
any such changes that have to persist using the
$reporter→CHANGED
method.
It's up to the UI how wizards are called, and their results returned. See the documentation for the UI for more information.
StaticMethod
loadWizard($name, $param_source) → $wizard $param_source
is a reference to an object that
supports the param()
method for getting parameter values.
ObjectMethod
param($name) → $value Returns the value of a parameter that was given when the wizard was invoked.