diff --git a/css/backoffice/layout/extension/_extension-details.scss b/css/backoffice/layout/extension/_extension-details.scss index 9a28ca739..837efb30e 100644 --- a/css/backoffice/layout/extension/_extension-details.scss +++ b/css/backoffice/layout/extension/_extension-details.scss @@ -9,8 +9,7 @@ $ibo-extension-details--actions--button--padding-x: $ibo-button--padding-x !defa flex-direction: row; justify-content: space-between; align-items: center; - - width: 450px; + width: 100%; } .ibo-extension-details--information { @@ -48,4 +47,8 @@ $ibo-extension-details--actions--button--padding-x: $ibo-button--padding-x !defa .ibo-extension-details--actions > button { padding: $ibo-extension-details--actions--button--padding-y $ibo-extension-details--actions--button--padding-x; +} + +.ibo-extension-details--actions:has(.toggler-install:not(:disabled)) .ibo-popover-menu--section a[data-resource-id="force_uninstall"] { + display: none; } \ No newline at end of file diff --git a/sources/Application/UI/Base/Layout/Extension/ExtensionDetails.php b/sources/Application/UI/Base/Layout/Extension/ExtensionDetails.php index ae8c66dd9..33aec8a45 100644 --- a/sources/Application/UI/Base/Layout/Extension/ExtensionDetails.php +++ b/sources/Application/UI/Base/Layout/Extension/ExtensionDetails.php @@ -173,6 +173,7 @@ class ExtensionDetails extends UIContentBlock { $this->oToggler = new Toggler(); $this->oToggler->SetName('ExtensionToggler'); + $this->oToggler->AddCSSClass('toggler-install'); } protected function InitializePopoverMenu() @@ -204,7 +205,6 @@ JS, 'force_uninstall', 'Force uninstall', <<AddUiBlock($oSampleBadgeRed); $oPage->AddUiBlock(TitleUIBlockFactory::MakeNeutral('Extensions details layout', 3)); +$oMultiCol = new MultiColumn(); +$oColumnLeft = new Column(); +$oColumnRight = new Column(); +$oMultiCol->AddColumn($oColumnLeft); +$oMultiCol->AddColumn($oColumnRight); +$oPage->AddUiBlock($oMultiCol); + $oExtensionDetailInstalledFromFactory = ExtensionDetailsUIBlockFactory::MakeInstalled('itop-sample', 'My extension v2', 'This is for test only', ['v1.1.1', 'Designer', '12/12/2012'], ['uninstallable' => false,'missing' => true]); -$oPage->AddUiBlock($oExtensionDetailInstalledFromFactory); +$oColumnLeft->AddSubBlock($oExtensionDetailInstalledFromFactory); $oExtensionDetailInstalledWithLongTitle = ExtensionDetailsUIBlockFactory::MakeNotInstalled('itop-sample', 'My extension with a very long title', 'This is for test only', ['v1.1.1', 'Designer', '12/12/2012'], ['uninstallable' => false]); -$oPage->AddUiBlock($oExtensionDetailInstalledWithLongTitle); +$oColumnRight->AddSubBlock($oExtensionDetailInstalledWithLongTitle); $oPage->add('
'); $oPage->output();