diff --git a/application/itopwebpage.class.inc.php b/application/itopwebpage.class.inc.php index 9a89527a0..5bd7c12f0 100644 --- a/application/itopwebpage.class.inc.php +++ b/application/itopwebpage.class.inc.php @@ -480,6 +480,25 @@ EOF $sForm = $this->GetSiloSelectionForm(); $this->DisplayMenu(); // Compute the menu + // Call the extensions to add content to the page, so that they can also add styles or scripts + $sBannerExtraHtml = ''; + foreach (MetaModel::EnumPlugins('iPageUIExtension') as $oExtensionInstance) + { + $sBannerExtraHtml .= $oExtensionInstance->GetBannerHtml($this); + } + + $sNorthPane = ''; + foreach (MetaModel::EnumPlugins('iPageUIExtension') as $oExtensionInstance) + { + $sNorthPane .= $oExtensionInstance->GetNorthPaneHtml($this); + } + + $sSouthPane = ''; + foreach (MetaModel::EnumPlugins('iPageUIExtension') as $oExtensionInstance) + { + $sSouthPane .= $oExtensionInstance->GetSouthPaneHtml($this); + } + // Put here the 'ready scripts' that must be executed after all others $this->add_ready_script( <<'; } - foreach (MetaModel::EnumPlugins('iPageUIExtension') as $oExtensionInstance) - { - $sApplicationBanner .= $oExtensionInstance->GetBannerHtml($this); - } + $sApplicationBanner .= $sBannerExtraHtml; - $sNorthPane = ''; - foreach (MetaModel::EnumPlugins('iPageUIExtension') as $oExtensionInstance) - { - $sNorthPane .= $oExtensionInstance->GetNorthPaneHtml($this); - } if (!empty($sNorthPane)) { - $sNorthPane = '
'.$sNorthPane.'
'; + $sNorthPane = '
'.$sNorthPane.'
'; } - $sSouthPane = ''; - foreach (MetaModel::EnumPlugins('iPageUIExtension') as $oExtensionInstance) - { - $sSouthPane .= $oExtensionInstance->GetSouthPaneHtml($this); - } if (!empty($sSouthPane)) { $sSouthPane = '
'.$sSouthPane.'
';