mirror of
https://github.com/Combodo/iTop.git
synced 2026-02-13 07:24:13 +01:00
N°9065 - XML Definition for Dashlet properties
This commit is contained in:
@@ -23,7 +23,7 @@ use Combodo\iTop\Application\WebPage\iTopWebPage;
|
||||
use Combodo\iTop\Application\WebPage\Page;
|
||||
use Combodo\iTop\DesignElement;
|
||||
use Combodo\iTop\DesignDocument;
|
||||
use Combodo\iTop\PropertyTree\PropertyTreeDesign;
|
||||
use Combodo\iTop\PropertyType\PropertyTypeDesign;
|
||||
|
||||
require_once(APPROOT.'setup/setuputils.class.inc.php');
|
||||
require_once(APPROOT.'setup/modelfactory.class.inc.php');
|
||||
@@ -700,9 +700,9 @@ PHP;
|
||||
$oModuleDesignsNode = $this->oFactory->GetNodes('/itop_design/module_designs')->item(0);
|
||||
$this->CompileModuleDesigns($oModuleDesignsNode, $sTempTargetDir, $sFinalTargetDir);
|
||||
|
||||
// Create property trees XML files
|
||||
$oPropertyTreesNode = $this->oFactory->GetNodes('/itop_design/meta/property_trees')->item(0);
|
||||
$this->CompilePropertyTrees($oPropertyTreesNode, $sTempTargetDir, $sFinalTargetDir);
|
||||
// Create property types XML files
|
||||
$oPropertyTypesNode = $this->oFactory->GetNodes('/itop_design/meta/property_types')->item(0);
|
||||
$this->CompilePropertyTypes($oPropertyTypesNode, $sTempTargetDir, $sFinalTargetDir);
|
||||
|
||||
// Compile the XML parameters
|
||||
/** @var \MFElement $oParametersNode */
|
||||
@@ -3577,17 +3577,17 @@ EOF;
|
||||
}
|
||||
}
|
||||
|
||||
protected function CompilePropertyTrees(?DOMNode $oPropertyTrees, string $sTempTargetDir, string $sFinalTargetDir): void
|
||||
protected function CompilePropertyTypes(?DOMNode $oPropertyTypes, string $sTempTargetDir, string $sFinalTargetDir): void
|
||||
{
|
||||
if ($oPropertyTrees) {
|
||||
foreach ($oPropertyTrees->GetNodes('property_tree') as $oPropertyTree) {
|
||||
$oDoc = new PropertyTreeDesign();
|
||||
$oClone = $oDoc->importNode($oPropertyTree->cloneNode(true), true);
|
||||
if ($oPropertyTypes) {
|
||||
foreach ($oPropertyTypes->GetNodes('property_type') as $oPropertyType) {
|
||||
$oDoc = new PropertyTypeDesign();
|
||||
$oClone = $oDoc->importNode($oPropertyType->cloneNode(true), true);
|
||||
$oDoc->appendChild($oClone);
|
||||
/** @var DesignElement $oPropertyTree */
|
||||
$sExtends = $oPropertyTree->GetChildText('extends', 'Default');
|
||||
SetupUtils::builddir($sTempTargetDir.'/core/property_trees/'.$sExtends);
|
||||
$oDoc->save($sTempTargetDir.'/core/property_trees/'.$sExtends.'/'.$oPropertyTree->getAttribute('id').'.xml');
|
||||
/** @var DesignElement $oPropertyType */
|
||||
$sExtends = $oPropertyType->GetChildText('extends', 'Default');
|
||||
SetupUtils::builddir($sTempTargetDir.'/core/property_types/'.$sExtends);
|
||||
$oDoc->save($sTempTargetDir.'/core/property_types/'.$sExtends.'/'.$oPropertyType->getAttribute('id').'.xml');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user