mirror of
https://github.com/Combodo/iTop.git
synced 2026-08-31 18:38:20 +02:00
37 lines
1.1 KiB
PHP
37 lines
1.1 KiB
PHP
<?php
|
|
|
|
class iTopExtensionsMapFake extends iTopExtensionsMap
|
|
{
|
|
public function __construct($sFromEnvironment = 'production', $aExtraDirs = [])
|
|
{
|
|
$this->aExtensions = [];
|
|
$this->aExtensionsByCode = [];
|
|
$this->aScannedDirs = [];
|
|
}
|
|
|
|
public static function createFromArray($aExtensions): static
|
|
{
|
|
$oMap = new static();
|
|
|
|
foreach ($aExtensions as $sCode => $aExtension) {
|
|
$oExtension = new iTopExtension();
|
|
$oExtension->sCode = $sCode;
|
|
$oExtension->sLabel = $sCode;
|
|
$oExtension->bInstalled = $aExtension['installed'];
|
|
$oExtension->aModules = $aExtension['modules'] ?? [];
|
|
$oExtension->bCanBeUninstalled = $aExtension['uninstallable'] ?? null;
|
|
$oExtension->sVersion = $aExtension['version'] ?? '1.0.0';
|
|
$oExtension->sSource = $aExtension['source'] ?? iTopExtension::SOURCE_MANUAL;
|
|
$oExtension->aModuleInfo = $aExtension['module_info'] ?? [];
|
|
$oExtension->aMissingDependencies = $aExtension['missing_dependencies'] ?? [];
|
|
$oMap->AddExtension($oExtension);
|
|
}
|
|
return $oMap;
|
|
}
|
|
|
|
public function AddExtension(iTopExtension $oNewExtension)
|
|
{
|
|
parent::AddExtension($oNewExtension);
|
|
}
|
|
}
|