|
@@ -349,7 +349,7 @@ class DisplayBlock
|
|
|
foreach($aGroupBy as $sValue => $iCount)
|
|
|
{
|
|
|
$aData[] = array ( 'group' => $sLabels[$sValue],
|
|
|
- 'value' => "<a href=\"./UI.php?operation=search&dosearch=1&$sParams&filter=$sFilter&$sGroupByField=".urlencode($sValue)."\">$iCount</a>"); // TO DO: add the context information
|
|
|
+ 'value' => "<a href=\"".utils::GetAbsoluteUrlAppRoot()."pages/UI.php?operation=search&dosearch=1&$sParams&filter=$sFilter&$sGroupByField=".urlencode($sValue)."\">$iCount</a>"); // TO DO: add the context information
|
|
|
}
|
|
|
$aAttribs =array(
|
|
|
'group' => array('label' => MetaModel::GetLabel($this->m_oFilter->GetClass(), $sGroupByField), 'description' => ''),
|
|
@@ -528,7 +528,7 @@ class DisplayBlock
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- $sHtml .= $oPage->GetP("<a href=\"./UI.php?operation=new&class=$sClass&$sParams{$sDefault}\">".Dict::Format('UI:ClickToCreateNew', Metamodel::GetName($sClass))."</a>\n");
|
|
|
+ $sHtml .= $oPage->GetP("<a href=\"".utils::GetAbsoluteUrlAppRoot()."pages/UI.php?operation=new&class=$sClass&$sParams{$sDefault}\">".Dict::Format('UI:ClickToCreateNew', Metamodel::GetName($sClass))."</a>\n");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -564,7 +564,7 @@ class DisplayBlock
|
|
|
$sDefaults .= '&'.urlencode($sName).'='.urlencode($sValue);
|
|
|
}
|
|
|
}
|
|
|
- $sHtml .= $oPage->GetP("<a href=\"../pages/UI.php?operation=modify_links&class=$sClass&sParams&link_attr=".$aExtraParams['link_attr']."&id=".$aExtraParams['object_id']."&target_class=$sTargetClass&addObjects=true$sDefaults\">".Dict::Format('UI:ClickToCreateNew', Metamodel::GetName($sClass))."</a>\n");
|
|
|
+ $sHtml .= $oPage->GetP("<a href=\"".utils::GetAbsoluteUrlAppRoot()."pages/UI.php?operation=modify_links&class=$sClass&sParams&link_attr=".$aExtraParams['link_attr']."&id=".$aExtraParams['object_id']."&target_class=$sTargetClass&addObjects=true$sDefaults\">".Dict::Format('UI:ClickToCreateNew', Metamodel::GetName($sClass))."</a>\n");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -600,7 +600,7 @@ class DisplayBlock
|
|
|
$this->m_oSet = new CMDBObjectSet($this->m_oFilter, array(), $aQueryParams);
|
|
|
}
|
|
|
$iCount = $this->m_oSet->Count();
|
|
|
- $sHyperlink = '../pages/UI.php?operation=search&'.$oAppContext->GetForLink().'&filter='.$this->m_oFilter->serialize();
|
|
|
+ $sHyperlink = utils::GetAbsoluteUrlAppRoot().'pages/UI.php?operation=search&'.$oAppContext->GetForLink().'&filter='.$this->m_oFilter->serialize();
|
|
|
$sHtml .= '<p><a class="actions" href="'.$sHyperlink.'">';
|
|
|
$sHtml .= MetaModel::GetClassIcon($sClass, true, 'float;left;margin-right:10px;');
|
|
|
$sHtml .= MetaModel::GetName($sClass).': '.$iCount.'</a></p>';
|
|
@@ -608,9 +608,9 @@ class DisplayBlock
|
|
|
$sHtml .= '<p>';
|
|
|
if (UserRights::IsActionAllowed($sClass, UR_ACTION_MODIFY))
|
|
|
{
|
|
|
- $sHtml .= "<a href=\"../pages/UI.php?operation=new&class={$sClass}&$sParams\">".Dict::Format('UI:ClickToCreateNew', MetaModel::GetName($sClass))."</a><br/>\n";
|
|
|
+ $sHtml .= "<a href=\"".utils::GetAbsoluteUrlAppRoot()."pages/UI.php?operation=new&class={$sClass}&$sParams\">".Dict::Format('UI:ClickToCreateNew', MetaModel::GetName($sClass))."</a><br/>\n";
|
|
|
}
|
|
|
- $sHtml .= "<a href=\"../pages/UI.php?operation=search_form&class={$sClass}&$sParams\">".Dict::Format('UI:SearchFor_Class', MetaModel::GetName($sClass))."</a>\n";
|
|
|
+ $sHtml .= "<a href=\"".utils::GetAbsoluteUrlAppRoot()."pages/UI.php?operation=search_form&class={$sClass}&$sParams\">".Dict::Format('UI:SearchFor_Class', MetaModel::GetName($sClass))."</a>\n";
|
|
|
$sHtml .= '</p>';
|
|
|
break;
|
|
|
|
|
@@ -661,7 +661,7 @@ class DisplayBlock
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
- $sHyperlink = '../pages/UI.php?operation=search&'.$oAppContext->GetForLink().'&filter='.$oFilter->serialize();
|
|
|
+ $sHyperlink = utils::GetAbsoluteUrlAppRoot().'pages/UI.php?operation=search&'.$oAppContext->GetForLink().'&filter='.$oFilter->serialize();
|
|
|
$aCounts[$sStateValue] = "<a href=\"$sHyperlink\">{$aCounts[$sStateValue]}</a>";
|
|
|
}
|
|
|
}
|
|
@@ -670,7 +670,7 @@ class DisplayBlock
|
|
|
$sHtml .= '<tr><td>'.implode('</td><td>', $aCounts).'</td></tr></table></div>';
|
|
|
// Title & summary
|
|
|
$iCount = $this->m_oSet->Count();
|
|
|
- $sHyperlink = '../pages/UI.php?operation=search&'.$oAppContext->GetForLink().'&filter='.$this->m_oFilter->serialize();
|
|
|
+ $sHyperlink = utils::GetAbsoluteUrlAppRoot().'pages/UI.php?operation=search&'.$oAppContext->GetForLink().'&filter='.$this->m_oFilter->serialize();
|
|
|
$sHtml .= '<h1>'.Dict::S(str_replace('_', ':', $sTitle)).'</h1>';
|
|
|
$sHtml .= '<a class="summary" href="'.$sHyperlink.'">'.Dict::Format(str_replace('_', ':', $sLabel), $iCount).'</a>';
|
|
|
break;
|
|
@@ -726,7 +726,7 @@ EOF
|
|
|
$sHtml .= "<div id=\"my_chart_{$iChartCounter}\">If the chart does not display, <a href=\"http://get.adobe.com/flash/\" target=\"_blank\">install Flash</a></div>\n";
|
|
|
$oPage->add_script("function ofc_resize(left, width, top, height) { /* do nothing special */ }");
|
|
|
$oPage->add_ready_script("swfobject.embedSWF(\"../images/open-flash-chart.swf\", \"my_chart_{$iChartCounter}\", \"100%\", \"300\",\"9.0.0\", \"expressInstall.swf\",
|
|
|
- {\"data-file\":\"".urlencode("../pages/ajax.render.php?operation=open_flash_chart¶ms[group_by]=$sGroupBy{$sGroupByExpr}¶ms[chart_type]=$sChartType¶ms[chart_title]=$sTitle&id=$sId&filter=".$sFilter)."\"}, {wmode: 'transparent'} );\n");
|
|
|
+ {\"data-file\":\"".urlencode(utils::GetAbsoluteUrlAppRoot()."pages/ajax.render.php?operation=open_flash_chart¶ms[group_by]=$sGroupBy{$sGroupByExpr}¶ms[chart_type]=$sChartType¶ms[chart_title]=$sTitle&id=$sId&filter=".$sFilter)."\"}, {wmode: 'transparent'} );\n");
|
|
|
$iChartCounter++;
|
|
|
if (isset($aExtraParams['group_by']))
|
|
|
{
|
|
@@ -1042,6 +1042,7 @@ class MenuBlock extends DisplayBlock
|
|
|
$sFilterDesc = $this->m_oFilter->ToOql();
|
|
|
$aActions = array();
|
|
|
$sUIPage = cmdbAbstractObject::ComputeStandardUIPage($sClass);
|
|
|
+ $sRootUrl = utils::GetAbsoluteUrlAppRoot();
|
|
|
// 1:n links, populate the target object as a default value when creating a new linked object
|
|
|
if (isset($aExtraParams['target_attr']))
|
|
|
{
|
|
@@ -1060,7 +1061,7 @@ class MenuBlock extends DisplayBlock
|
|
|
case 0:
|
|
|
// No object in the set, the only possible action is "new"
|
|
|
$bIsModifyAllowed = (UserRights::IsActionAllowed($sClass, UR_ACTION_MODIFY) == UR_ALLOWED_YES);
|
|
|
- if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:New'), 'url' => "../page/$sUIPage?operation=new&class=$sClass&$sContext{$sDefault}"); }
|
|
|
+ if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:New'), 'url' => "{$sRootUrl}page/$sUIPage?operation=new&class=$sClass&$sContext{$sDefault}"); }
|
|
|
break;
|
|
|
|
|
|
case 1:
|
|
@@ -1073,9 +1074,9 @@ class MenuBlock extends DisplayBlock
|
|
|
// Just one object in the set, possible actions are "new / clone / modify and delete"
|
|
|
if (!isset($aExtraParams['link_attr']))
|
|
|
{
|
|
|
- if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Modify'), 'url' => "../pages/$sUIPage?operation=modify&class=$sClass&id=$id&$sContext#"); }
|
|
|
- if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:New'), 'url' => "../pages/$sUIPage?operation=new&class=$sClass&$sContext{$sDefault}"); }
|
|
|
- if ($bIsDeleteAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Delete'), 'url' => "../pages/$sUIPage?operation=delete&class=$sClass&id=$id&$sContext"); }
|
|
|
+ if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Modify'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=modify&class=$sClass&id=$id&$sContext#"); }
|
|
|
+ if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:New'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=new&class=$sClass&$sContext{$sDefault}"); }
|
|
|
+ if ($bIsDeleteAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Delete'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=delete&class=$sClass&id=$id&$sContext"); }
|
|
|
// Transitions / Stimuli
|
|
|
$aTransitions = $oObj->EnumTransitions();
|
|
|
if (count($aTransitions))
|
|
@@ -1088,7 +1089,7 @@ class MenuBlock extends DisplayBlock
|
|
|
switch($iActionAllowed)
|
|
|
{
|
|
|
case UR_ALLOWED_YES:
|
|
|
- $aActions[] = array('label' => $aStimuli[$sStimulusCode]->GetLabel(), 'url' => "../pages/UI.php?operation=stimulus&stimulus=$sStimulusCode&class=$sClass&id=$id&$sContext");
|
|
|
+ $aActions[] = array('label' => $aStimuli[$sStimulusCode]->GetLabel(), 'url' => "{$sRootUrl}pages/UI.php?operation=stimulus&stimulus=$sStimulusCode&class=$sClass&id=$id&$sContext");
|
|
|
break;
|
|
|
|
|
|
default:
|
|
@@ -1103,14 +1104,14 @@ class MenuBlock extends DisplayBlock
|
|
|
$this->AddMenuSeparator($aActions);
|
|
|
foreach($aRelations as $sRelationCode)
|
|
|
{
|
|
|
- $aActions[] = array ('label' => MetaModel::GetRelationVerbUp($sRelationCode), 'url' => "../pages/$sUIPage?operation=swf_navigator&relation=$sRelationCode&class=$sClass&id=$id&$sContext");
|
|
|
+ $aActions[] = array ('label' => MetaModel::GetRelationVerbUp($sRelationCode), 'url' => "{$sRootUrl}pages/$sUIPage?operation=swf_navigator&relation=$sRelationCode&class=$sClass&id=$id&$sContext");
|
|
|
}
|
|
|
}
|
|
|
$this->AddMenuSeparator($aActions);
|
|
|
// Static menus: Email this page & CSV Export
|
|
|
$sUrl = ApplicationContext::MakeObjectUrl($sClass, $id);
|
|
|
$aActions[] = array ('label' => Dict::S('UI:Menu:EMail'), 'url' => "mailto:?subject=".$oObj->GetName()."&body=".urlencode($sUrl));
|
|
|
- $aActions[] = array ('label' => Dict::S('UI:Menu:CSVExport'), 'url' => "../pages/$sUIPage?operation=search&filter=$sFilter&format=csv&$sContext");
|
|
|
+ $aActions[] = array ('label' => Dict::S('UI:Menu:CSVExport'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=search&filter=$sFilter&format=csv&$sContext");
|
|
|
}
|
|
|
$this->AddMenuSeparator($aActions);
|
|
|
foreach (MetaModel::EnumPlugins('iApplicationUIExtension') as $oExtensionInstance)
|
|
@@ -1136,16 +1137,16 @@ class MenuBlock extends DisplayBlock
|
|
|
$oAttDef = MetaModel::GetAttributeDef($sClass, $sTargetAttr);
|
|
|
$sTargetClass = $oAttDef->GetTargetClass();
|
|
|
$bIsDeleteAllowed = UserRights::IsActionAllowed($sClass, UR_ACTION_DELETE, $oSet);
|
|
|
- if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Add'), 'url' => "../pages/$sUIPage?operation=modify_links&class=$sClass&link_attr=".$aExtraParams['link_attr']."&target_class=$sTargetClass&id=$id&addObjects=true&$sContext"); }
|
|
|
- if ($bIsBulkModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Manage'), 'url' => "../pages/$sUIPage?operation=modify_links&class=$sClass&link_attr=".$aExtraParams['link_attr']."&target_class=$sTargetClass&id=$id&sContext"); }
|
|
|
+ if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Add'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=modify_links&class=$sClass&link_attr=".$aExtraParams['link_attr']."&target_class=$sTargetClass&id=$id&addObjects=true&$sContext"); }
|
|
|
+ if ($bIsBulkModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:Manage'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=modify_links&class=$sClass&link_attr=".$aExtraParams['link_attr']."&target_class=$sTargetClass&id=$id&sContext"); }
|
|
|
//if ($bIsBulkDeleteAllowed) { $aActions[] = array ('label' => 'Remove All...', 'url' => "#"); }
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
// many objects in the set, possible actions are: new / modify all / delete all
|
|
|
- if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:New'), 'url' => "../pages/$sUIPage?operation=new&class=$sClass&$sContext{$sDefault}"); }
|
|
|
- if ($bIsBulkModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:ModifyAll'), 'url' => "../pages/$sUIPage?operation=select_for_modify_all&class=$sClass&filter=$sFilter&sContext"); }
|
|
|
- if ($bIsBulkDeleteAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:BulkDelete'), 'url' => "../pages/$sUIPage?operation=select_for_deletion&filter=$sFilter&$sContext"); }
|
|
|
+ if ($bIsModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:New'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=new&class=$sClass&$sContext{$sDefault}"); }
|
|
|
+ if ($bIsBulkModifyAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:ModifyAll'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=select_for_modify_all&class=$sClass&filter=$sFilter&sContext"); }
|
|
|
+ if ($bIsBulkDeleteAllowed) { $aActions[] = array ('label' => Dict::S('UI:Menu:BulkDelete'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=select_for_deletion&filter=$sFilter&$sContext"); }
|
|
|
|
|
|
// Stimuli
|
|
|
$aStates = MetaModel::EnumStates($sClass);
|
|
@@ -1176,7 +1177,7 @@ class MenuBlock extends DisplayBlock
|
|
|
{
|
|
|
case UR_ALLOWED_YES:
|
|
|
case UR_ALLOWED_DEPENDS:
|
|
|
- $aActions[] = array('label' => $aStimuli[$sStimulusCode]->GetLabel(), 'url' => "../pages/UI.php?operation=select_bulk_stimulus&stimulus=$sStimulusCode&state=$sState&class=$sClass&filter=$sFilter&$sContext");
|
|
|
+ $aActions[] = array('label' => $aStimuli[$sStimulusCode]->GetLabel(), 'url' => "{$sRootUrl}pages/UI.php?operation=select_bulk_stimulus&stimulus=$sStimulusCode&state=$sState&class=$sClass&filter=$sFilter&$sContext");
|
|
|
break;
|
|
|
|
|
|
default:
|
|
@@ -1189,7 +1190,7 @@ class MenuBlock extends DisplayBlock
|
|
|
$this->AddMenuSeparator($aActions);
|
|
|
$sUrl = utils::GetAbsoluteUrlAppRoot();
|
|
|
$aActions[] = array ('label' => Dict::S('UI:Menu:EMail'), 'url' => "mailto:?subject=$sFilterDesc&body=".urlencode("{$sUrl}pages/$sUIPage?operation=search&filter=$sFilter&$sContext"));
|
|
|
- $aActions[] = array ('label' => Dict::S('UI:Menu:CSVExport'), 'url' => "../pages/$sUIPage?operation=search&filter=$sFilter&format=csv&$sContext");
|
|
|
+ $aActions[] = array ('label' => Dict::S('UI:Menu:CSVExport'), 'url' => "{$sRootUrl}pages/$sUIPage?operation=search&filter=$sFilter&format=csv&$sContext");
|
|
|
}
|
|
|
$this->AddMenuSeparator($aActions);
|
|
|
foreach (MetaModel::EnumPlugins('iApplicationUIExtension') as $oExtensionInstance)
|