Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Requires: phpFox version 4.6.0 or higher.

...

Table of Contents

Supported Types

  • string
  • large_string
  • password
  • integer
  • boolean
  • currency
  • select
  • array
  • multi_text

...

Sample Code

string

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   =>  'example description',
        'type'          => 'string',
        'value'         => 'default_value',
    ],
];

large_string

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   => 'example description',
        'type'          => 'large_string',
        'value'         => 'default_value',
    ],
];

password

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   => 'example description',
        'type'          => 'password',
        'value'         => 'default_value',
    ],
];

integer

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   => 'example description',
        'type'          => 'integer',
        'value'         => 10,
    ],
];

boolean

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   =>'example description',
        'type'          => 'boolean',
        'value'         => 0,
    ],
];

currency

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   => 'example description',
        'type'          => 'currency',
        'value'         => ['USD' => 0],
    ],
];

select

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   => 'example description',
        'type'          => 'select',
        'value'         => 'default_value',
        'options'       => [
            'value_1' => 'Value label 1',
            'value_2' => 'Value label 2',
        ]
    ],
];

array

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   =>'example description',
        'type'          => 'array',
        'value'         => [1,2,3,4],
    ],
];

multi_text

Code Block
php
php

$settings = [
    'your_setting_name' => [
        'var_name'      => 'example_name',
        'info'          => 'example label',
        'description'   =>'example description',
        'type'          => 'multi_text',
        'value'         => [
            'value_1' => 'Value label 1',
            'value_2' => 'Value label 2',
        ],
    ],
];

...

  • Add a plugin/hook with name validator.admincp_settings_{{app}}

 

please replace app with your app alias.

For example, below is the hook for validating settings of Basic Ads app:

 

Code Block
php
php

...

// file name: validator.admincp_settings_ad.php

$aValidation = [
    'ad_multi_ad_count' => [// setting var name
        'def' => 'int:required', //the setting is required and must be an integer number
        'min' => '1', // the in value for this setting is 1.
        'title' => _p('"Ads min Multi-Ad Location" must be greater than 0'), thrown message when admin enter invalid value.
    ]
];