Requires: phpFox version 4.6.0 or higher.
Supported Types
- string
- large_string
- password
- integer
- boolean
- currency
- select
- array
- multi_text
Deprecated types
Below types won't be supported anymore since phpFox version 4.7.0.
- drop_with_key
- input:text
- input:radio
Sample Code
string
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'description' => 'example description', 'type' => 'string', 'value'=> [ '1' => 'string_admin', '2' => 'string_registered_user', '3' => 'string_guest', '4' => 'string_staff', '5' => 'string__ban', ] ], ];
large_string
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'description' => 'example description', 'type' => 'large_string', 'value'=> [ '1' => 'large_string_admin', '2' => 'large_string_registered_user', '3' => 'large_string_guest', '4' => 'large_string_staff', '5' => 'large_string_ban', ] ], ];
password
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'description' => 'example description', 'type' => 'password', 'value'=> [ '1' => 'password_admin', '2' => 'password_registered_user', '3' => 'password_guest', '4' => 'password_staff', '5' => 'password_ban', ] ], ];
integer
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'description' => 'example description', 'type' => 'integer', 'value'=> [ '1' => 1, '2' => 2, '3' => 3, '4' => 4, '5' => 5, ] ], ];
boolean
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'type' => 'boolean', 'value'=> [ '1' => 1, '2' => 0, '3' => 0, '4' => 1, '5' => 1, ] ], ];
currency
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'description' => 'example description', 'type' => 'currency', 'value' => [ '1' => ['USD' => 0], '2' => ['USD' => 1], '3' => ['USD' => 2], '4' => ['USD' => 3], '5' => ['USD' => 4], ] ], ];
select
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'description'=>'example description', 'type' => 'select', 'value'=> [ '1' => 'value_1', '2' => 'value_2', '3' => 'value_2', '4' => 'value_1', '5' => 'value_2', ] 'options' => [ 'value_1' => 'Value label 1', 'value_2' => 'Value label 2', ] ], ];
array
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example label', 'description' => 'example description', 'type' => 'array', 'value' => [ '1' => [1,2,3,4], '2' => [10,20,30,40], '3' => [11,21,31,41], '4' => [12,22,32,42], '5' => [13,23,33,43], ] ], ];
multi_text
$user_groups_settings = [ 'your_setting_name' => [ 'var_name' => 'example_name', 'info' => 'example_label', 'description' => 'example description', 'type' => 'multi_text', 'value' => [ '1' => [ 'key1' =>'example value 1 group 1', 'key2' =>'example value 2 group 1', ], '2' => [ 'key1' =>'example value 1 group 2', 'key2' =>'example value 2 group 2', ], '3' => [ 'key1' =>'example value 1 group 3', 'key2' =>'example value 2 group 3', ], '4' => [ 'key1' =>'example value 1 group 4', 'key2' =>'example value 2 group 4', ], '5' => [ 'key1' =>'example value 1 group 5', 'key2' =>'example value 2 group 5', ], ], ], ];
Validation
You can support to validate your user group settings when admin change them in Admincp:
- Add a plugin/hook with name
validator.admincp_user_settings_{{app
}}
please replace
app
with your app alias.
For example, below is the hook for validating settings of Blogs
app:
// file name: vvalidator.admincp_user_settings_blog.php $aValidation = [ 'flood_control_blog' => [ //setting var name 'def' => 'int', //setting value must be a interger number 'min' => '0', //setting value must greater or equal to 0 'title' => _p('"Time to wait before add another blog" must be greater than or equal to 0'), //thrown message when admin enter invalid value ], ... ];