diff --git a/module/common/lang/menu.php b/module/common/lang/menu.php
index 03b9269b43..27d0816859 100644
--- a/module/common/lang/menu.php
+++ b/module/common/lang/menu.php
@@ -255,6 +255,7 @@ $lang->execution->menu->doc = array('link' => "{$lang->doc->common}|doc|tab
$lang->execution->menu->build = array('link' => "{$lang->build->common}|execution|build|executionID=%s", 'subModule' => 'build');
$lang->execution->menu->action = array('link' => "$lang->dynamic|execution|dynamic|executionID=%s");
$lang->execution->menu->settings = array('link' => "$lang->settings|execution|view|executionID=%s", 'subModule' => 'personnel', 'alias' => 'edit,manageproducts,team,whitelist,addwhitelist,managemembers', 'class' => 'dropdown dropdown-hover');
+if($config->systemMode == 'new') $lang->execution->menu->more = array('link' => "$lang->more|execution|more|%s");
/* Execution menu order. */
$lang->execution->menuOrder[5] = 'task';
diff --git a/module/common/model.php b/module/common/model.php
index ca9eb8ab85..4a487c32a5 100644
--- a/module/common/model.php
+++ b/module/common/model.php
@@ -741,77 +741,85 @@ class commonModel extends model
$active = 'active';
}
- if($menuItem->link)
+ if($menuItem->link['module'] == 'execution' and $menuItem->link['method'] == 'more')
{
- $target = '';
- $module = '';
- $method = '';
- $link = commonModel::createMenuLink($menuItem, $openApp);
- if(is_array($menuItem->link))
- {
- if(isset($menuItem->link['target'])) $target = $menuItem->link['target'];
- if(isset($menuItem->link['module'])) $module = $menuItem->link['module'];
- if(isset($menuItem->link['method'])) $method = $menuItem->link['method'];
- }
- if($module == $currentModule and ($method == $currentMethod or strpos(",$alias,", ",$currentMethod,") !== false) and strpos(",$exclude,", ",$currentMethod,") === false)
- {
- $activeMenu = $menuItem->name;
- $active = 'active';
- }
-
- $label = $menuItem->text;
- $dropMenu = '';
-
- /* Print drop menus. */
- if(isset($menuItem->dropMenu))
- {
- foreach($menuItem->dropMenu as $dropMenuName => $dropMenuItem)
- {
- if(isset($dropMenuItem->hidden) and $dropMenuItem->hidden) continue;
-
- /* Parse drop menu link. */
- $dropMenuLink = $dropMenuItem;
- if(is_array($dropMenuItem) and isset($dropMenuItem['link'])) $dropMenuLink = $dropMenuLink['link'];
-
- list($subLabel, $subModule, $subMethod, $subParams) = explode('|', $dropMenuLink);
- $subLink = helper::createLink($subModule, $subMethod, $subParams);
-
- $subActive = '';
- $activeMainMenu = false;
- if($currentModule == strtolower($subModule) && $currentMethod == strtolower($subMethod))
- {
- $activeMainMenu = true;
- }
- else
- {
- $subModule = isset($dropMenuItem['subModule']) ? explode(',', $dropMenuItem['subModule']) : array();
- if($subModule and in_array($currentModule, $subModule) and strpos(",$exclude,", ",$currentModule-$currentMethod,") === false) $activeMainMenu = true;
- }
-
- if($activeMainMenu)
- {
- $activeMenu = $dropMenuName;
- $active = 'active';
- $subActive = 'active';
- $label = $subLabel;
- }
- $dropMenu .= "
" . html::a($subLink, $subLabel, '', "data-app='$openApp'") . '';
- }
-
- if(empty($dropMenu)) continue;
-
- $label .= "";
- $dropMenu = "";
- }
-
- $misc = (isset($lang->navGroup->$module) and $openApp != $lang->navGroup->$module) ? "data-app='$openApp'" : '';
- $menuItemHtml = "" . html::a($link, $label, $target, $misc) . $dropMenu . "\n";
-
- echo $menuItemHtml;
+ $executionID = $menuItem->link['vars'];
+ commonModel::buildMoreButton($executionID);
}
else
{
- echo "$menuItem->text\n";
+ if($menuItem->link)
+ {
+ $target = '';
+ $module = '';
+ $method = '';
+ $link = commonModel::createMenuLink($menuItem, $openApp);
+ if(is_array($menuItem->link))
+ {
+ if(isset($menuItem->link['target'])) $target = $menuItem->link['target'];
+ if(isset($menuItem->link['module'])) $module = $menuItem->link['module'];
+ if(isset($menuItem->link['method'])) $method = $menuItem->link['method'];
+ }
+ if($module == $currentModule and ($method == $currentMethod or strpos(",$alias,", ",$currentMethod,") !== false) and strpos(",$exclude,", ",$currentMethod,") === false)
+ {
+ $activeMenu = $menuItem->name;
+ $active = 'active';
+ }
+
+ $label = $menuItem->text;
+ $dropMenu = '';
+
+ /* Print drop menus. */
+ if(isset($menuItem->dropMenu))
+ {
+ foreach($menuItem->dropMenu as $dropMenuName => $dropMenuItem)
+ {
+ if(isset($dropMenuItem->hidden) and $dropMenuItem->hidden) continue;
+
+ /* Parse drop menu link. */
+ $dropMenuLink = $dropMenuItem;
+ if(is_array($dropMenuItem) and isset($dropMenuItem['link'])) $dropMenuLink = $dropMenuLink['link'];
+
+ list($subLabel, $subModule, $subMethod, $subParams) = explode('|', $dropMenuLink);
+ $subLink = helper::createLink($subModule, $subMethod, $subParams);
+
+ $subActive = '';
+ $activeMainMenu = false;
+ if($currentModule == strtolower($subModule) && $currentMethod == strtolower($subMethod))
+ {
+ $activeMainMenu = true;
+ }
+ else
+ {
+ $subModule = isset($dropMenuItem['subModule']) ? explode(',', $dropMenuItem['subModule']) : array();
+ if($subModule and in_array($currentModule, $subModule) and strpos(",$exclude,", ",$currentModule-$currentMethod,") === false) $activeMainMenu = true;
+ }
+
+ if($activeMainMenu)
+ {
+ $activeMenu = $dropMenuName;
+ $active = 'active';
+ $subActive = 'active';
+ $label = $subLabel;
+ }
+ $dropMenu .= "" . html::a($subLink, $subLabel, '', "data-app='$openApp'") . '';
+ }
+
+ if(empty($dropMenu)) continue;
+
+ $label .= "";
+ $dropMenu = "";
+ }
+
+ $misc = (isset($lang->navGroup->$module) and $openApp != $lang->navGroup->$module) ? "data-app='$openApp'" : '';
+ $menuItemHtml = "" . html::a($link, $label, $target, $misc) . $dropMenu . "\n";
+
+ echo $menuItemHtml;
+ }
+ else
+ {
+ echo "$menuItem->text\n";
+ }
}
}
echo "\n";
@@ -1324,6 +1332,48 @@ EOD;
}
}
+ /**
+ * Build more executions button.
+ *
+ * @param int $executionID
+ * @static
+ * @access public
+ * @return void
+ */
+ public static function buildMoreButton($executionID)
+ {
+ global $lang, $app;
+
+ $executionPairs = array();
+ $object = $app->dbh->query('SELECT project FROM ' . TABLE_EXECUTION . " WHERE `id` = '$executionID'")->fetch();
+ $executionList = $app->dbh->query("SELECT id,name FROM " . TABLE_EXECUTION . " WHERE `project` = '{$object->project}' ORDER BY `id` DESC")->fetchAll();
+ foreach($executionList as $execution)
+ {
+ if($execution->id == $executionID) continue;
+ $executionPairs[$execution->id] = $execution->name;
+ }
+
+ if(empty($executionPairs)) return;
+
+ $html = "{$lang->more}";
+ $html .= "\n";
+
+ echo $html;
+ }
+
/**
* Print link icon.
*