steinikallinn

steinikallinn does not currently provide support for this item.

Popular questions for this item

What does a mask file look like?

Here is the welcome_message.html mask file used in all of the usage examples:

<p>This is a welcome message into what is about to be
configured. You can use the mask keywords here</p>
<p>You are about to install <b>{product}</b> v.<b>{version}</b>
developed by <b>{company}</b>.</p>

What does the step configuration look like?

Here is a small part copied directly from the configuration, more specifically, the language selection and table prefix steps.

$steps = array(
/*---------------------------------------------------------------------|
|  Language Selection                                                  |
|----------------------------------------------------------------------|
|  Does the system you are installing require a language selection?
|
|  > title        : The title of this step in the process box
|  > enabled      : Should this step be included or not
|  > supported    : Array of supported languages, with country code and name
\---------------------------------------------------------------------*/
STEP_LANGUAGE => array(
    'title'        =>  'Select Language',
    'enabled'      =>  true,
    'supported'    =>  array(
        'gb'=>'English (UK)',
        'us'=>'English (USA)',
        'de'=>'German',
        'fr'=>'French'
        ),
    ),

/*---------------------------------------------------------------------|
|  Database Table Prefix                                               |
|----------------------------------------------------------------------|
|  A very usefull option when you want to make sure that the table names 
|  will be unique and not collide with other table names. Either from 
|  other systems or another version of this same system 
|
|  > title      : The title of this step in the process box
|
|  > enabled    : Should this step be included or not
|
|  > optional   : The table prefix is not always wanted, though it is
|                 a nice feature to offer. If you want the table prefix
|                 to be enabled but not forced - set optional to true
|                 so the user can self deside if he wants a prefix. Set
|                 it to false and the prefix must have a value, thus
|                 forced to have some value
|
|  > separator  : This string value is added at the end of the prefix.
|                 If it is already at the end (the user added it) then
|                 it will not be repeated. Keep the box empty if you
|                 wish not to use a separator
\---------------------------------------------------------------------*/
STEP_DBPREFIX => array(
    'title'        =>  'Table Prefix',
    'enabled'      =>  true,
    'optional'     =>  true,
    'separator'    =>  '_',  
    )
);

All steps have similar documentation in-code to explain what you are configuring.

How are forms created with the HtmlMaker class?

Set the main title to the welcome step title, and set the icon to home. Load the welcome message from Masks class and display the content in a paragraph

$page->MainTitle($steps[STEP_WELCOME]['title'], 'home');
$page->Paragraph( $mask->GetWelcomeMessage() );
Start a form, and add a hidden field (using the array) such that the step navigator is set to the next available step from the welcome step
$page->FormStart(array('step'=>GetNextStep(STEP_WELCOME)));
If there are any available steps before the welcome message, add a back button (that uses JavaScript)
$prev = GetPrevStep(STEP_WELCOME);
if($prev) 
    $page->FormButton('Back', array('step'=>$prev));
Add a submit button to the form with Next as caption and close the form
$page->FormSubmit('Next');
$page->FormClose();
Show the page with all the added HTML elements, and set the process dialog to the welcome step. PHP will die after the page has been shown
$page->ShowPage(STEP_WELCOME);

What does the Additional Information step configuration look like, how are the forms created “by config” ?

Here are two examples on how users can construct their own forms via config. These are taken from the Advanced and Multiple_Configs demos:

From Advanced example

/*---------------------------------------------------------------------|
|  Additional Information                                              |
|----------------------------------------------------------------------|
|  Does the system you are installing require some custom inputs from
|  the user, like the "title" of the website or other related things
|  that should go into the configs but are not related to login, db,
|  admin account or any of the other steps available.
|
|  > title        : The title of this step in the process box
|  > enabled      : Should this step be included or not
\---------------------------------------------------------------------*/
STEP_ADDEDINFO => array(
    'title'        =>  'Additional Information',
    'enabled'      =>  true,
    'form'        =>  array(                        
          array('type' => 'paragraph',
                'text' => 'When <b>{product}</b> cannot connect to the database (meaning no access to data), what should be displayed to the user?'),

          array('type' => 'label',
                'text' => 'The name of your company:'),
          array('type' => 'textbox',
                'keyword'  => 'company_name',
                'value'    => '',
                'numeric'  => false,
                'mustfill' => true,
                'minlen'   => false,
                'maxlen'   => false,
                'minval'   => false,        
                'maxval'   => false), 

          array('type' => 'label',
                'text' => 'Main breakdown title:'),
          array('type' => 'textbox',
                'keyword'  => 'error_title',
                'value'    => 'Oooops!!',
                'numeric'  => false,
                'mustfill' => true,
                'minlen'   => false,
                'maxlen'   => false,
                'minval'   => false,        
                'maxval'   => false), 

          array('type' => 'label',
                'text' => 'Short message saying that the website is down for now:'),
          array('type' => 'textarea',
                'keyword'  => 'breaokdown_desc',
                'value'    => 'Our database is somehow not working anymore. All our sweaty nerds are on the case and trying to fix the problem!',
                'numeric'  => false,
                'mustfill' => true,
                'minlen'   => false,
                'maxlen'   => 500,
                'minval'   => false,
                'maxval'   => false),

          array('type' => 'label',
                'text' => 'Automatic JavaScript website-refresh:'),
          array('type'      => 'radiobox',
                'keyword'   => 'auto_refresh',
                'value'     => 'true',
                'text'      => 'Automatically refresh the page to see if it is online again.',
                'checked'   => true),
          array('type'      => 'radiobox',
                'keyword'   => 'auto_refresh',
                'value'     => 'false',
                'text'      => 'Nope, just display the error message.',
                'checked'   => false),
        ),
    ),    

From Multiple configs example

/*---------------------------------------------------------------------|
|  Additional Information                                              |
|----------------------------------------------------------------------|
|  Does the system you are installing require some custom inputs from
|  the user, like the "title" of the website or other related things
|  that should go into the configs but are not related to login, db,
|  admin account or any of the other steps available.
|
|  > title        : The title of this step in the process box
|  > enabled      : Should this step be included or not
\---------------------------------------------------------------------*/
STEP_ADDEDINFO => array(
    'title'        =>  'Additional Information',
    'enabled'      =>  true,
    'form'         =>  array(                        
          array('type'      => 'paragraph',
                'text'      => 'Please fill out this form to further customize <b>{product}</b>'.
                               'which you are currently installing.'),

          array('type'      => 'label',
                'text'      => 'Admin panel skin:'),

          array('type'      => 'radiobox',
                'keyword'   => 'system_skin',
                'value'     => 'coralblue',
                'text'      => 'Coral Blue',
                'checked'   => false),

          array('type'      => 'radiobox',
                'keyword'   => 'system_skin',
                'value'     => 'default',
                'text'      => '<i>Default skin</i>',
                'checked'   => true),

          array('type'      => 'label',
                'text'      => 'Modules and Settings:'),

          array('type'      => 'checkbox',
                'keyword'   => 'module_shop',
                'value_on'  => 'true',
                'value_off' => 'false',
                'text'      => 'Shopping module to manage categories and products',
                'checked'   => false),

          array('type'      => 'checkbox',
                'keyword'   => 'module_blog',
                'value_on'  => 'true',
                'value_off' => 'false',
                'text'      => 'Blog module to keep up with current events',
                'checked'   => true),                        

          array(),

          array('type'      => 'label',
                'text'      => 'What year did your website debut?:'),

          array('type'      => 'textbox',
                'keyword'   => 'debut_year',
                'value'     => '',
                'numeric'   => true,
                'mustfill'  => true,
                'minlen'    => false,
                'maxlen'    => false,
                'minval'    => 1920,        
                'maxval'    => date('Y')), 

          array('type'      => 'label',
                'text'      => 'Write short description or summary:'),

          array('type'      => 'textarea',
                'keyword'   => 'website_desc',
                'value'     => '',
                'numeric'   => false,
                'mustfill'  => true,
                'minlen'    => 50,
                'maxlen'    => 255,
                'minval'    => false,
                'maxval'    => false),
    ),
),    

Show more

by
by
by
by
by
by