NAME
Kernel::System::SysConfig::ValueType::VacationDaysOneTime – System configuration vacation-days-one-time value type backed.
PUBLIC INTERFACE
new()
Create an object. Do not use it directly, instead use:
use Kernel::System::ObjectManager;
local $Kernel::OM = Kernel::System::ObjectManager->new();
my $ValueTypeObject = $Kernel::OM->Get('Kernel::System::SysConfig::ValueType::VacationDaysOneTime');
SettingEffectiveValueCheck()
Check if provided EffectiveValue matches structure defined in XMLContentParsed.
my %Result = $ValueTypeObject->SettingEffectiveValueCheck(
XMLContentParsed => {
Value => [
{
'Item' => [
{
'Item' => [
{
'Content' => 'New Year\'s Day',
'Translatable' => '1',
'ValueDay' => '1',
'ValueMonth' => '1',
'ValueYear' => '2004',
},
],
'ValueType' => 'VacationDaysOneTime',
},
],
},
],
},
EffectiveValue => {
'2014' => {
'1' => {
'1' => 'New Year\'s Day',
},
},
'2016' => {
'2' => {
'2' => 'Test',
},
},
},
);
Result: %Result = ( EffectiveValue => { # Note for VacationDaysOneTime ValueTypes EffectiveValue is not changed. '2014' => { '1' => { '1' => 'New Year\'s Day', }, }, '2016' => { '2' => { '2' => 'Test', }, }, }, Success => 1, Error => undef, );
SettingRender()
Extracts the effective value from a XML parsed setting.
my $SettingHTML = $ValueTypeObject->SettingRender(
Name => 'SettingName',
DefaultID => 123, # (required)
EffectiveValue => '{
'2016' => {
'1' => {
'1' => 'New Year\'s Day',
},
},
...
},
DefaultValue => 'Product 5', # (optional)
Class => 'My class' # (optional)
Item => [ # (optional) XML parsed item
{
'ValueType' => 'VacationDaysOneTime',
'Content' => '',
'ValueRegex' => '',
},
],
RW => 1, # (optional) Allow editing. Default 0.
IsArray => 1, # (optional) Item is part of the array
IsHash => 1, # (optional) Item is part of the hash
IDSuffix => 1, # (optional) Suffix will be added to the element ID
SkipEffectiveValueCheck => 1, # (optional) If enabled, system will not perform effective value check.
# Default: 1.
);
Returns:
$SettingHTML = '<div class "Field"...</div>';
AddItem()
Generate HTML for new array/hash item.
my $HTML = $ValueTypeObject->AddItem(
Name => 'SettingName', (required) Name
DefaultItem => { (optional) DefaultItem hash, if available
Item => {
Content => 'Value',
},
},
);
Returns:
$HTML = "<input type='text' id='Setting_ExampleArray'
value='Value' name='ExampleArray' class='Entry'/>";
DefaultItemAdd()
Return structure of the DefaultItem in case it's not inside of Array or Hash.
my $DefaultItem = $ValueTypeObject->DefaultItemAdd();
Returns:
$DefaultItem = {
Item => {
Content => '',
},
ValueType => 'VacationDaysOneTime',
};