mirror of
https://github.com/Combodo/iTop.git
synced 2026-02-13 07:24:13 +01:00
Serialization for boolean and integer
This commit is contained in:
@@ -7,7 +7,9 @@
|
||||
|
||||
namespace Combodo\iTop\PropertyType\ValueType\Leaf;
|
||||
|
||||
use Combodo\iTop\DesignElement;
|
||||
use Combodo\iTop\Forms\Block\Base\CheckboxFormBlock;
|
||||
use utils;
|
||||
|
||||
/**
|
||||
* @since 3.3.0
|
||||
@@ -18,4 +20,16 @@ class ValueTypeBoolean extends AbstractLeafValueType
|
||||
{
|
||||
return CheckboxFormBlock::class;
|
||||
}
|
||||
|
||||
public function DeserializeFromDOMNode(DesignElement $oDOMNode): mixed
|
||||
{
|
||||
$value = parent::DeserializeFromDOMNode($oDOMNode);
|
||||
|
||||
return utils::IsTrue($value);
|
||||
}
|
||||
|
||||
public function SerializeToDOMNode(?string $sPropertyName, mixed $value, DesignElement $oDOMNode): void
|
||||
{
|
||||
parent::SerializeToDOMNode($sPropertyName, $value ? 'true' : 'false', $oDOMNode);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
|
||||
namespace Combodo\iTop\PropertyType\ValueType\Leaf;
|
||||
|
||||
use Combodo\iTop\DesignElement;
|
||||
use Combodo\iTop\Forms\Block\Base\IntegerFormBlock;
|
||||
|
||||
/**
|
||||
@@ -18,4 +19,16 @@ class ValueTypeInteger extends AbstractLeafValueType
|
||||
{
|
||||
return IntegerFormBlock::class;
|
||||
}
|
||||
|
||||
public function DeserializeFromDOMNode(DesignElement $oDOMNode): mixed
|
||||
{
|
||||
$value = parent::DeserializeFromDOMNode($oDOMNode);
|
||||
|
||||
return intval($value);
|
||||
}
|
||||
|
||||
public function SerializeToDOMNode(?string $sPropertyName, mixed $value, DesignElement $oDOMNode): void
|
||||
{
|
||||
parent::SerializeToDOMNode($sPropertyName, "$value", $oDOMNode);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -283,6 +283,8 @@ XML,
|
||||
'class_property' => 'class_b',
|
||||
],
|
||||
],
|
||||
'boolean_property' => true,
|
||||
'integer_property' => 3,
|
||||
],
|
||||
'sPropertyTypeXML' => <<<XML
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
@@ -316,6 +318,12 @@ XML,
|
||||
</node>
|
||||
</prototype>
|
||||
</node>
|
||||
<node id="boolean_property" xsi:type="Combodo-ValueType-Boolean">
|
||||
<label>Boolean</label>
|
||||
</node>
|
||||
<node id="integer_property" xsi:type="Combodo-ValueType-Integer">
|
||||
<label>Integer</label>
|
||||
</node>
|
||||
</nodes>
|
||||
</definition>
|
||||
</property_type>
|
||||
@@ -337,6 +345,8 @@ XML,
|
||||
<class_property>class_b</class_property>
|
||||
</item>
|
||||
</items>
|
||||
<boolean_property>true</boolean_property>
|
||||
<integer_property>3</integer_property>
|
||||
</root>
|
||||
XML,
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user