mirror of
https://github.com/Combodo/iTop.git
synced 2026-05-22 00:32:16 +02:00
N°9564 - fix first screen
log cleanup after merge adaptations
This commit is contained in:
@@ -21,10 +21,12 @@ use Combodo\iTop\DataFeatureRemoval\Service\DataFeatureRemoverExtensionService;
|
|||||||
use Combodo\iTop\Setup\FeatureRemoval\DryRemovalRuntimeEnvironment;
|
use Combodo\iTop\Setup\FeatureRemoval\DryRemovalRuntimeEnvironment;
|
||||||
use Combodo\iTop\Setup\FeatureRemoval\SetupAudit;
|
use Combodo\iTop\Setup\FeatureRemoval\SetupAudit;
|
||||||
use ContextTag;
|
use ContextTag;
|
||||||
|
use CoreException;
|
||||||
use Dict;
|
use Dict;
|
||||||
use Exception;
|
use Exception;
|
||||||
use IssueLog;
|
use IssueLog;
|
||||||
use MetaModel;
|
use MetaModel;
|
||||||
|
use MissingDependencyException;
|
||||||
use SetupUtils;
|
use SetupUtils;
|
||||||
use utils;
|
use utils;
|
||||||
|
|
||||||
@@ -55,6 +57,7 @@ class DataFeatureRemovalController extends Controller
|
|||||||
$aParams['sSetupUrl'] = utils::GetAbsoluteUrlAppRoot().'setup';
|
$aParams['sSetupUrl'] = utils::GetAbsoluteUrlAppRoot().'setup';
|
||||||
$aParams['iCount'] = $this->iCount;
|
$aParams['iCount'] = $this->iCount;
|
||||||
|
|
||||||
|
Session::Set('bForceCompilation', true);
|
||||||
$this->AddLinkedStylesheet(utils::GetAbsoluteUrlModulesRoot().DataFeatureRemovalHelper::MODULE_NAME.'/assets/css/DataFeatureRemoval.css');
|
$this->AddLinkedStylesheet(utils::GetAbsoluteUrlModulesRoot().DataFeatureRemovalHelper::MODULE_NAME.'/assets/css/DataFeatureRemoval.css');
|
||||||
$this->AddLinkedScript(utils::GetAbsoluteUrlModulesRoot().DataFeatureRemovalHelper::MODULE_NAME.'/assets/js/DataFeatureRemoval.js');
|
$this->AddLinkedScript(utils::GetAbsoluteUrlModulesRoot().DataFeatureRemovalHelper::MODULE_NAME.'/assets/js/DataFeatureRemoval.js');
|
||||||
$this->DisplayPage($aParams);
|
$this->DisplayPage($aParams);
|
||||||
@@ -77,6 +80,7 @@ class DataFeatureRemovalController extends Controller
|
|||||||
$this->aAnalysisDataTable = $this->GetTableData('Analysis', $aColumns, $aData);
|
$this->aAnalysisDataTable = $this->GetTableData('Analysis', $aColumns, $aData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
public function OperationAnalyze(): void
|
public function OperationAnalyze(): void
|
||||||
{
|
{
|
||||||
$iCount = $this->ReadExtensionsDiff();
|
$iCount = $this->ReadExtensionsDiff();
|
||||||
@@ -103,6 +107,7 @@ class DataFeatureRemovalController extends Controller
|
|||||||
IssueLog::Debug(__METHOD__, null, ['aGetRemovedClasses' => $aGetRemovedClasses]);
|
IssueLog::Debug(__METHOD__, null, ['aGetRemovedClasses' => $aGetRemovedClasses]);
|
||||||
$this->aCountClassesToCleanup = $aGetRemovedClasses;
|
$this->aCountClassesToCleanup = $aGetRemovedClasses;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
public function OperationAnalysisResult(): void
|
public function OperationAnalysisResult(): void
|
||||||
{
|
{
|
||||||
@@ -133,7 +138,14 @@ class DataFeatureRemovalController extends Controller
|
|||||||
$aParams['aHiddenInputs'] = $aHiddenInputs;
|
$aParams['aHiddenInputs'] = $aHiddenInputs;
|
||||||
|
|
||||||
$aAddedExtensions = json_decode($aHiddenInputs['added_extensions'], true);
|
$aAddedExtensions = json_decode($aHiddenInputs['added_extensions'], true);
|
||||||
|
|
||||||
$aRemovedExtensions = json_decode($aHiddenInputs['removed_extensions'], true);
|
$aRemovedExtensions = json_decode($aHiddenInputs['removed_extensions'], true);
|
||||||
|
if (count($aRemovedExtensions) == 0) {
|
||||||
|
$this->ReadExtensionsDiff();
|
||||||
|
$aRemovedExtensions = $this->aRemovedExtensionsForCheck;
|
||||||
|
}
|
||||||
|
|
||||||
|
$aRemoveExtensionCodes = array_keys($aRemovedExtensions);
|
||||||
|
|
||||||
$aParams['aAddedExtensions'] = $aAddedExtensions;
|
$aParams['aAddedExtensions'] = $aAddedExtensions;
|
||||||
$aParams['aRemovedExtensions'] = $aRemovedExtensions;
|
$aParams['aRemovedExtensions'] = $aRemovedExtensions;
|
||||||
@@ -142,17 +154,29 @@ class DataFeatureRemovalController extends Controller
|
|||||||
'added_extensions' => $aAddedExtensions,
|
'added_extensions' => $aAddedExtensions,
|
||||||
'removed_extensions' => $aRemovedExtensions]);
|
'removed_extensions' => $aRemovedExtensions]);
|
||||||
|
|
||||||
$this->Compile(array_keys($aRemovedExtensions), false);
|
$aParams['sTransactionId'] = utils::GetNewTransactionId();
|
||||||
|
$aParams['iColumnCount'] = $this->iColumnCount;
|
||||||
|
$aParams['aAvailableExtensions'] = $this->SplitArrayIntoColumns($this->GetExtensionsDiff($aAddedExtensions, $aRemovedExtensions), $this->iColumnCount);
|
||||||
|
|
||||||
|
$bForceCompilation = Session::Get('bForceCompilation', false);
|
||||||
|
try {
|
||||||
|
$this->Compile($aRemoveExtensionCodes, $bForceCompilation);
|
||||||
|
} catch (CoreException $e) {
|
||||||
|
$aParams['DataFeatureRemovalErrorMessage'] = $e->getHtmlDesc();
|
||||||
|
$this->DisplayPage($aParams, 'AnalysisResult');
|
||||||
|
return;
|
||||||
|
} catch (Exception $e) {
|
||||||
|
$aParams['DataFeatureRemovalErrorMessage'] = $e->getMessage();
|
||||||
|
$this->DisplayPage($aParams, 'AnalysisResult');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
$sSourceEnv = MetaModel::GetEnvironment();
|
$sSourceEnv = MetaModel::GetEnvironment();
|
||||||
$oSetupAudit = new SetupAudit($sSourceEnv);
|
$oSetupAudit = new SetupAudit($sSourceEnv);
|
||||||
$aGetRemovedClasses = array_keys($oSetupAudit->RunDataAudit());
|
$aGetRemovedClasses = array_keys($oSetupAudit->RunDataAudit());
|
||||||
IssueLog::Debug(__METHOD__, null, ['aGetRemovedClasses' => $aGetRemovedClasses]);
|
IssueLog::Debug(__METHOD__, null, ['aGetRemovedClasses' => $aGetRemovedClasses]);
|
||||||
|
|
||||||
$aParams['sTransactionId'] = utils::GetNewTransactionId();
|
|
||||||
$aParams['aClasses'] = $aGetRemovedClasses;
|
$aParams['aClasses'] = $aGetRemovedClasses;
|
||||||
$aParams['iColumnCount'] = $this->iColumnCount;
|
|
||||||
$aParams['aAvailableExtensions'] = $this->SplitArrayIntoColumns($this->GetExtensionsDiff($aAddedExtensions, $aRemovedExtensions), $this->iColumnCount);
|
|
||||||
|
|
||||||
new ContextTag(ContextTag::TAG_SETUP);
|
new ContextTag(ContextTag::TAG_SETUP);
|
||||||
$aParams['sLaunchSetupUrl'] = utils::GetAbsoluteUrlAppRoot().'setup/wizard.php';
|
$aParams['sLaunchSetupUrl'] = utils::GetAbsoluteUrlAppRoot().'setup/wizard.php';
|
||||||
@@ -170,6 +194,13 @@ class DataFeatureRemovalController extends Controller
|
|||||||
$this->DisplayPage($aParams, 'AnalysisResult');
|
$this->DisplayPage($aParams, 'AnalysisResult');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $aRemovedExtensions
|
||||||
|
* @param bool $bForceCompilation
|
||||||
|
* @return void
|
||||||
|
* @throws \ConfigException
|
||||||
|
* @throws \CoreException
|
||||||
|
*/
|
||||||
private function Compile(array $aRemovedExtensions, bool $bForceCompilation = true): void
|
private function Compile(array $aRemovedExtensions, bool $bForceCompilation = true): void
|
||||||
{
|
{
|
||||||
$sSourceEnv = MetaModel::GetEnvironment();
|
$sSourceEnv = MetaModel::GetEnvironment();
|
||||||
|
|||||||
@@ -4,64 +4,87 @@
|
|||||||
|
|
||||||
|
|
||||||
{% UIPanel ForInformation { sTitle:'DataFeatureRemoval:Analysis:Title'|dict_s} %}
|
{% UIPanel ForInformation { sTitle:'DataFeatureRemoval:Analysis:Title'|dict_s} %}
|
||||||
{% UIPanel Neutral { sTitle:'DataFeatureRemoval:Features:Title'|dict_s, sSubTitle: '' } %}
|
{% if null != DataFeatureRemovalErrorMessage %}
|
||||||
{% UIMultiColumn Standard {} %}
|
<div id="feature_removal_error_msg_div" style="display:block">
|
||||||
{% for iColumnIndex in 0..iColumnCount-1 %}
|
{% UIAlert ForFailure { sTitle:'DataFeatureRemoval:Failure:Title'|dict_s, sId: 'feature_removal_error_msg', sContent:DataFeatureRemovalErrorMessage } %}
|
||||||
{% UIColumn Standard {} %}
|
{% EndUIAlert %}
|
||||||
{% for aExtension in aAvailableExtensions[iColumnIndex] %}
|
</div>
|
||||||
{% if aExtension['installed'] %}
|
|
||||||
{% UIExtensionDetails Installed { sCode : aExtension['code'], sLabel : aExtension['label'], sDescription : aExtension['description'], aMetaData : [aExtension['version'], aExtension['source']], aExtraFlags : aExtension['extra_flags']} %}{% EndUIExtensionDetails %}
|
|
||||||
{% else %}
|
|
||||||
{% UIExtensionDetails NotInstalled { sCode : aExtension['code'], sLabel : aExtension['label'], sDescription : aExtension['description'], aMetaData : [aExtension['version'], aExtension['source']], aExtraFlags : aExtension['extra_flags']} %}{% EndUIExtensionDetails %}
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
{% EndUIColumn %}
|
|
||||||
{% endfor %}
|
|
||||||
{% EndUIMultiColumn %}
|
|
||||||
{% EndUIPanel %}
|
|
||||||
|
|
||||||
{% if bDeletionNeeded %}
|
{% UIPanel Neutral { sTitle:'DataFeatureRemoval:Features:Title'|dict_s, sSubTitle: '' } %}
|
||||||
{% UIFieldSet Standard {sLegend:'DataFeatureRemoval:DeletionPlan:Title'|dict_s} %}
|
{% UIMultiColumn Standard {} %}
|
||||||
{% UIDataTable ForForm { sRef:'aDeletionPlanSummary', aColumns:aDeletionPlanSummary.Columns, aData:aDeletionPlanSummary.Data} %}{% EndUIDataTable %}
|
{% for iColumnIndex in 0..iColumnCount-1 %}
|
||||||
{% EndUIFieldSet %}
|
{% UIColumn Standard {} %}
|
||||||
{% if bDeletionPossible %}
|
{% for aExtension in aAvailableExtensions[iColumnIndex] %}
|
||||||
{% UIForm Standard {} %}
|
{% if aExtension['installed'] %}
|
||||||
{% UIInput ForHidden { sName:'transaction_id', sValue:sTransactionId} %}
|
{% UIExtensionDetails Installed { sCode : aExtension['code'], sLabel : aExtension['label'], sDescription : aExtension['description'], aMetaData : [aExtension['version'], aExtension['source']], aExtraFlags : aExtension['extra_flags']} %}{% EndUIExtensionDetails %}
|
||||||
{% UIInput ForHidden { sName:'operation', sValue:'DoDeletion'} %}
|
{% else %}
|
||||||
{% for sKey, sClass in aClasses %}
|
{% UIExtensionDetails NotInstalled { sCode : aExtension['code'], sLabel : aExtension['label'], sDescription : aExtension['description'], aMetaData : [aExtension['version'], aExtension['source']], aExtraFlags : aExtension['extra_flags']} %}{% EndUIExtensionDetails %}
|
||||||
{% UIInput ForHidden { sName:"classes[" ~ sKey ~ "]", sValue:sClass } %}
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
{% EndUIColumn %}
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% for sCode, sLabel in aAddedExtensions %}
|
{% EndUIMultiColumn %}
|
||||||
{% UIInput ForHidden { sName:"aAddedExtensions[" ~ sCode ~ "]", sValue:sLabel } %}
|
{% EndUIPanel %}
|
||||||
{% endfor %}
|
|
||||||
{% for sCode, sLabel in aRemovedExtensions %}
|
|
||||||
{% UIInput ForHidden { sName:"aRemovedExtensions[" ~ sCode ~ "]", sValue:sLabel } %}
|
|
||||||
{% endfor %}
|
|
||||||
{% for sInputName, sValue in aHiddenInputs %}
|
|
||||||
{% UIInput ForHidden { sName:sInputName, sValue:sValue } %}
|
|
||||||
{% endfor %}
|
|
||||||
{% UIToolbar ForButton {} %}
|
|
||||||
{% UIButton ForPrimaryAction {sLabel:'UI:Button:DoDeletion'|dict_s, sName:'btn_deletion', sId:'btn_deletion', bIsSubmit:true} %}
|
|
||||||
{% EndUIToolbar %}
|
|
||||||
{% EndUIForm %}
|
|
||||||
{% else %}
|
|
||||||
{% UIAlert ForFailure { sContent: 'DataFeatureRemoval:DeletionPlan:Error:Issues'|dict_s } %}{% EndUIAlert %}
|
|
||||||
{% endif %}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
{% UIAlert ForSuccess { sTitle:'DataFeatureRemoval:CleanupComplete:Title'|dict_s, sContent:'DataFeatureRemoval:CompilComplete'|dict_s, sId:value } %}{% EndUIAlert %}
|
{% UIPanel Neutral { sTitle:'DataFeatureRemoval:Features:Title'|dict_s, sSubTitle: '' } %}
|
||||||
|
{% UIMultiColumn Standard {} %}
|
||||||
|
{% for iColumnIndex in 0..iColumnCount-1 %}
|
||||||
|
{% UIColumn Standard {} %}
|
||||||
|
{% for aExtension in aAvailableExtensions[iColumnIndex] %}
|
||||||
|
{% if aExtension['installed'] %}
|
||||||
|
{% UIExtensionDetails Installed { sCode : aExtension['code'], sLabel : aExtension['label'], sDescription : aExtension['description'], aMetaData : [aExtension['version'], aExtension['source']], aExtraFlags : aExtension['extra_flags']} %}{% EndUIExtensionDetails %}
|
||||||
|
{% else %}
|
||||||
|
{% UIExtensionDetails NotInstalled { sCode : aExtension['code'], sLabel : aExtension['label'], sDescription : aExtension['description'], aMetaData : [aExtension['version'], aExtension['source']], aExtraFlags : aExtension['extra_flags']} %}{% EndUIExtensionDetails %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
{% EndUIColumn %}
|
||||||
|
{% endfor %}
|
||||||
|
{% EndUIMultiColumn %}
|
||||||
|
{% EndUIPanel %}
|
||||||
|
|
||||||
{% UIForm Standard {'sId':'launch-setup-form', Action:sLaunchSetupUrl, 'EncType': 'application/x-www-form-urlencoded'} %}
|
{% if bDeletionNeeded %}
|
||||||
{% for sKey, sValue in aSetupParams %}
|
{% UIFieldSet Standard {sLegend:'DataFeatureRemoval:DeletionPlan:Title'|dict_s} %}
|
||||||
{% UIInput ForHidden { sName:sKey, sValue:sValue } %}
|
{% UIDataTable ForForm { sRef:'aDeletionPlanSummary', aColumns:aDeletionPlanSummary.Columns, aData:aDeletionPlanSummary.Data} %}{% EndUIDataTable %}
|
||||||
{% endfor %}
|
{% EndUIFieldSet %}
|
||||||
{% UIButton ForPrimaryAction {sLabel:'UI:Button:Setup'|dict_s, sName:'btn_setup', sId:'btn_setup', bIsSubmit:true} %}
|
{% if bDeletionPossible %}
|
||||||
{% EndUIForm %}
|
{% UIForm Standard {} %}
|
||||||
{% endif %}
|
{% UIInput ForHidden { sName:'transaction_id', sValue:sTransactionId} %}
|
||||||
|
{% UIInput ForHidden { sName:'operation', sValue:'DoDeletion'} %}
|
||||||
|
{% for sKey, sClass in aClasses %}
|
||||||
|
{% UIInput ForHidden { sName:"classes[" ~ sKey ~ "]", sValue:sClass } %}
|
||||||
|
{% endfor %}
|
||||||
|
{% for sCode, sLabel in aAddedExtensions %}
|
||||||
|
{% UIInput ForHidden { sName:"aAddedExtensions[" ~ sCode ~ "]", sValue:sLabel } %}
|
||||||
|
{% endfor %}
|
||||||
|
{% for sCode, sLabel in aRemovedExtensions %}
|
||||||
|
{% UIInput ForHidden { sName:"aRemovedExtensions[" ~ sCode ~ "]", sValue:sLabel } %}
|
||||||
|
{% endfor %}
|
||||||
|
{% for sInputName, sValue in aHiddenInputs %}
|
||||||
|
{% UIInput ForHidden { sName:sInputName, sValue:sValue } %}
|
||||||
|
{% endfor %}
|
||||||
|
{% UIToolbar ForButton {} %}
|
||||||
|
{% UIButton ForPrimaryAction {sLabel:'UI:Button:DoDeletion'|dict_s, sName:'btn_deletion', sId:'btn_deletion', bIsSubmit:true} %}
|
||||||
|
{% EndUIToolbar %}
|
||||||
|
{% EndUIForm %}
|
||||||
|
{% else %}
|
||||||
|
{% UIAlert ForFailure { sContent: 'DataFeatureRemoval:DeletionPlan:Error:Issues'|dict_s } %}{% EndUIAlert %}
|
||||||
|
{% endif %}
|
||||||
|
{% else %}
|
||||||
|
{% UIAlert ForSuccess { sTitle:'DataFeatureRemoval:CleanupComplete:Title'|dict_s, sContent:'DataFeatureRemoval:CompilComplete'|dict_s, sId:value } %}{% EndUIAlert %}
|
||||||
|
|
||||||
{% if bHasDeletionExecution %}
|
{% UIForm Standard {'sId':'launch-setup-form', Action:sLaunchSetupUrl, 'EncType': 'application/x-www-form-urlencoded'} %}
|
||||||
{% UIFieldSet Standard {sLegend:'DataFeatureRemoval:Execution:Title'|dict_s} %}
|
{% for sKey, sValue in aSetupParams %}
|
||||||
{% UIDataTable ForForm { sRef:'aDeletionExecutionSummary', aColumns:aDeletionExecutionSummary.Columns, aData:aDeletionExecutionSummary.Data} %}{% EndUIDataTable %}
|
{% UIInput ForHidden { sName:sKey, sValue:sValue } %}
|
||||||
{% EndUIFieldSet %}
|
{% endfor %}
|
||||||
|
{% UIButton ForPrimaryAction {sLabel:'UI:Button:Setup'|dict_s, sName:'btn_setup', sId:'btn_setup', bIsSubmit:true} %}
|
||||||
|
{% EndUIForm %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if bHasDeletionExecution %}
|
||||||
|
{% UIFieldSet Standard {sLegend:'DataFeatureRemoval:Execution:Title'|dict_s} %}
|
||||||
|
{% UIDataTable ForForm { sRef:'aDeletionExecutionSummary', aColumns:aDeletionExecutionSummary.Columns, aData:aDeletionExecutionSummary.Data} %}{% EndUIDataTable %}
|
||||||
|
{% EndUIFieldSet %}
|
||||||
|
{% endif %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% UIForm Standard {} %}
|
{% UIForm Standard {} %}
|
||||||
|
|||||||
@@ -1,29 +0,0 @@
|
|||||||
{# @copyright Copyright (C) 2010-2026 Combodo SARL #}
|
|
||||||
{# @license http://opensource.org/licenses/AGPL-3.0 #}
|
|
||||||
|
|
||||||
{% UIPanel ForInformation { sTitle:'DataFeatureRemoval:DeletionPlan:Title'|dict_s, sSubTitle: 'DataFeatureRemoval:DeletionPlan:SubTitle'|dict_format(iQueryCount) } %}
|
|
||||||
{% UIDataTable ForForm { sRef:'aDeletionPlanSummary', aColumns:aDeletionPlanSummary.Columns, aData:aDeletionPlanSummary.Data} %}{% EndUIDataTable %}
|
|
||||||
{% EndUIPanel %}
|
|
||||||
|
|
||||||
{% if bDeletionPossible %}
|
|
||||||
{% UIForm Standard {} %}
|
|
||||||
{% UIInput ForHidden { sName:'transaction_id', sValue:sTransactionId} %}
|
|
||||||
{% UIInput ForHidden { sName:'operation', sValue:'DoDeletion'} %}
|
|
||||||
{% for sKey, sClass in aClasses %}
|
|
||||||
{% UIInput ForHidden { sName:"classes[" ~ sKey ~ "]", sValue:sClass } %}
|
|
||||||
{% endfor %}
|
|
||||||
{% UIToolbar ForButton {} %}
|
|
||||||
{% UIButton ForPrimaryAction {sLabel:'UI:Button:DoDeletion'|dict_s, sName:'btn_deletion', sId:'btn_deletion', bIsSubmit:true} %}
|
|
||||||
{% EndUIToolbar %}
|
|
||||||
{% EndUIForm %}
|
|
||||||
{% else %}
|
|
||||||
{{ 'DataFeatureRemoval:DeletionPlan:Error:Issues'|dict_s }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% UIForm Standard {} %}
|
|
||||||
{% UIInput ForHidden { sName:'transaction_id', sValue:sTransactionId} %}
|
|
||||||
{% UIInput ForHidden { sName:'operation', sValue:'Main'} %}
|
|
||||||
{% UIToolbar ForButton {} %}
|
|
||||||
{% UIButton ForPrimaryAction {sLabel:'UI:Button:BackToMain'|dict_s, sName:'btn_back', sId:'btn_back', bIsSubmit:true} %}
|
|
||||||
{% EndUIToolbar %}
|
|
||||||
{% EndUIForm %}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
|
|
||||||
{# @license http://opensource.org/licenses/AGPL-3.0 #}
|
|
||||||
|
|
||||||
{% if bHasData %}
|
|
||||||
{% UIPanel Neutral { sTitle:'DataFeatureRemoval:Analysis:Title'|dict_s, sSubTitle: 'DataFeatureRemoval:Analysis:SubTitle'|dict_format(iCount) } %}
|
|
||||||
{% UIDataTable ForForm { sRef:'aAnalysisDataTable', aColumns:aAnalysisDataTable.Columns, aData:aAnalysisDataTable.Data} %}{% EndUIDataTable %}
|
|
||||||
{% EndUIPanel %}
|
|
||||||
|
|
||||||
{% UIForm Standard {} %}
|
|
||||||
{% UIInput ForHidden { sName:'transaction_id', sValue:sTransactionId} %}
|
|
||||||
{% UIInput ForHidden { sName:'operation', sValue:'DeletionPlan'} %}
|
|
||||||
{% for sKey, sClass in aClasses %}
|
|
||||||
{% UIInput ForHidden { sName:"classes[" ~ sKey ~ "]", sValue:sClass } %}
|
|
||||||
{% endfor %}
|
|
||||||
{% UIToolbar ForButton {} %}
|
|
||||||
{% UIButton ForPrimaryAction {sLabel:'UI:Button:PlanDeletion'|dict_s, sName:'btn_plandeletion', sId:'btn_plandeletion', bIsSubmit:true} %}
|
|
||||||
{% EndUIToolbar %}
|
|
||||||
{% EndUIForm %}
|
|
||||||
{% endif %}
|
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
|
|
||||||
{% UIForm Standard {} %}
|
{% UIForm Standard {} %}
|
||||||
{% UIInput ForHidden {sName:'operation', sValue:'Analyze'} %}
|
{% UIInput ForHidden {sName:'operation', sValue:'AnalysisResult'} %}
|
||||||
{% UIInput ForHidden {sName:'transaction_id', sValue:sTransactionId} %}
|
{% UIInput ForHidden {sName:'transaction_id', sValue:sTransactionId} %}
|
||||||
|
|
||||||
{% UIPanel Neutral { sTitle:'DataFeatureRemoval:Features:Title'|dict_s, sSubTitle: '' } %}
|
{% UIPanel Neutral { sTitle:'DataFeatureRemoval:Features:Title'|dict_s, sSubTitle: '' } %}
|
||||||
|
|||||||
@@ -15,21 +15,5 @@
|
|||||||
{{ 'DataFeatureRemoval:Helper:Desc2'|dict_s }}
|
{{ 'DataFeatureRemoval:Helper:Desc2'|dict_s }}
|
||||||
{% EndUIAlert %}
|
{% EndUIAlert %}
|
||||||
|
|
||||||
{% if null != DataFeatureRemovalErrorMessage %}
|
|
||||||
<div id="feature_removal_error_msg_div" style="display:block">
|
|
||||||
{% UIAlert ForFailure { sTitle:'DataFeatureRemoval:Failure:Title'|dict_s, sId: 'feature_removal_error_msg', sContent:DataFeatureRemovalErrorMessage } %}
|
|
||||||
{% EndUIAlert %}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% include 'Features.html.twig' %}
|
{% include 'Features.html.twig' %}
|
||||||
{% include 'ExtensionRemovalData.html.twig' %}
|
|
||||||
|
|
||||||
{% if not bHasData %}
|
|
||||||
{% UIToolbar ForButton {} %}
|
|
||||||
<a href="{{ sSetupUrl }}">
|
|
||||||
{% UIButton ForPrimaryAction {sLabel:'UI:Button:Setup'|dict_s, sName:'btn_setup', sId:'btn_setup', bIsSubmit:false} %}
|
|
||||||
</a>
|
|
||||||
{% EndUIToolbar %}
|
|
||||||
{% endif %}
|
|
||||||
{% EndUIPanel %}
|
{% EndUIPanel %}
|
||||||
|
|||||||
@@ -1634,7 +1634,6 @@ class RunTimeEnvironment
|
|||||||
protected function GetModulesToLoad(string $sSourceEnv, array $aSearchDirs): ?array
|
protected function GetModulesToLoad(string $sSourceEnv, array $aSearchDirs): ?array
|
||||||
{
|
{
|
||||||
if (is_null($this->GetExtensionMap())) {
|
if (is_null($this->GetExtensionMap())) {
|
||||||
SetupLog::Error(__METHOD__ . '================' . __LINE__);
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1642,7 +1641,6 @@ class RunTimeEnvironment
|
|||||||
|
|
||||||
$aChoices = $this->GetExtensionMap()->GetChoicesFromDatabase($oSourceConfig);
|
$aChoices = $this->GetExtensionMap()->GetChoicesFromDatabase($oSourceConfig);
|
||||||
if (false === $aChoices) {
|
if (false === $aChoices) {
|
||||||
SetupLog::Error(__METHOD__ . '================' . __LINE__);
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
$sSourceDir = $oSourceConfig->Get('source_dir');
|
$sSourceDir = $oSourceConfig->Get('source_dir');
|
||||||
@@ -1668,7 +1666,6 @@ class RunTimeEnvironment
|
|||||||
$aModulesToLoad[] = $sModuleName;
|
$aModulesToLoad[] = $sModuleName;
|
||||||
}
|
}
|
||||||
|
|
||||||
SetupLog::Error(__METHOD__ . '================' . __LINE__, null, [$aChoices, $aModuleIdsToLoad]);
|
|
||||||
return $aModulesToLoad;
|
return $aModulesToLoad;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user