diff --git a/module/productplan/control.php b/module/productplan/control.php index 6917df0113..458ef6d6b8 100644 --- a/module/productplan/control.php +++ b/module/productplan/control.php @@ -421,6 +421,7 @@ class productplan extends control $this->view->link = $link; $this->view->param = $param; $this->view->storyCases = $this->loadModel('testcase')->getStoryCaseCounts($planStories ? array_keys($planStories) : array()); + $this->view->tabUrl = $this->createLink('productplan', 'view', "planID=$planID&type=%s&orderBy=$orderBy&link=$link¶m=$param&recTotal=$recTotal&recPerPage=$recPerPage&pageID=$pageID"); if($this->viewType != 'json') { diff --git a/module/productplan/ui/view.html.php b/module/productplan/ui/view.html.php index d1596799d5..d7b1de078b 100644 --- a/module/productplan/ui/view.html.php +++ b/module/productplan/ui/view.html.php @@ -223,12 +223,14 @@ detailBody tabs ( setClass('w-full relative'), + on::shown('.tab-pane')->call('$.apps.updateAppUrl', jsRaw('$this.data("url")')), tabPane ( to::prefix(icon($lang->icons['story'], setClass('text-secondary'))), set::key('stories'), set::title($lang->productplan->linkedStories), set::active($type == 'story'), + setData('url', sprintf($tabUrl, 'story')), $plan->parent >= 0 ? toolbar ( setClass('tab-actions absolute right-0 gap-2'), @@ -300,6 +302,7 @@ detailBody set::key('bugs'), set::title($lang->productplan->linkedBugs), set::active($type == 'bug'), + setData('url', sprintf($tabUrl, 'bug')), !$isInModal && $plan->parent >= 0 && common::hasPriv('productplan', 'linkBug') ? toolbar ( setClass('tab-actions absolute right-0 gap-2'), @@ -343,6 +346,7 @@ detailBody set::key('planInfo'), set::title($lang->productplan->view), set::active($type == 'planInfo'), + setData('url', sprintf($tabUrl, 'planInfo')), tableData ( set::title($lang->productplan->basicInfo),