* Task #39998: Adjust the tab active in project drop menu.
This commit is contained in:
@@ -117,29 +117,20 @@ class project extends control
|
||||
$programs = array();
|
||||
$orderedProjects = array();
|
||||
|
||||
$objects = $this->dao->select('*')->from(TABLE_PROGRAM)
|
||||
->where('type')->in('program,project')
|
||||
$projects = $this->dao->select('*')->from(TABLE_PROJECT)
|
||||
->where('type')->eq('project')
|
||||
->andWhere('deleted')->eq(0)
|
||||
->beginIF(!$this->app->user->admin)
|
||||
->andWhere('(id')->in($this->app->user->view->programs)
|
||||
->orWhere('id')->in($this->app->user->view->projects)
|
||||
->markRight(1)
|
||||
->fi()
|
||||
->beginIF(!$this->app->user->admin)->andWhere('id')->in($this->app->user->view->projects)->fi()
|
||||
->orderBy('id_asc')
|
||||
->fetchAll('id');
|
||||
|
||||
foreach($objects as $objectID => $object)
|
||||
$programs = $this->program->getPairs(true);
|
||||
|
||||
foreach($projects as $project)
|
||||
{
|
||||
if($object->type == 'program')
|
||||
{
|
||||
$programs[$objectID] = $object->name;
|
||||
}
|
||||
else
|
||||
{
|
||||
$object->parent = $this->program->getTopByID($object->parent);
|
||||
$orderedProjects[$object->parent][] = $object;
|
||||
unset($objects[$object->id]);
|
||||
}
|
||||
$project->parent = $this->program->getTopByID($project->parent);
|
||||
$orderedProjects[$project->parent][] = $project;
|
||||
unset($projects[$project->id]);
|
||||
}
|
||||
|
||||
$this->view->projectID = $projectID;
|
||||
|
||||
@@ -25,6 +25,7 @@ $projectNames = array();
|
||||
$myProjectsHtml = '';
|
||||
$normalProjectsHtml = '';
|
||||
$closedProjectsHtml = '';
|
||||
$tabActive = '';
|
||||
$iCharges = 0;
|
||||
$others = 0;
|
||||
$dones = 0;
|
||||
@@ -70,12 +71,16 @@ foreach($projects as $programID => $programProjects)
|
||||
{
|
||||
$myProjectsHtml .= '<li>' . html::a(sprintf($link, $project->id), $projectName, '', "class='text-muted $selected' title='{$project->name}' data-key='" . zget($projectsPinYin, $project->name, '') . "'") . '</li>';
|
||||
|
||||
if($selected == 'selected') $tabActive = 'myProject';
|
||||
|
||||
$iCharges++;
|
||||
}
|
||||
else if($project->status != 'done' and $project->status != 'closed' and !($project->PM == $this->app->user->account))
|
||||
{
|
||||
$normalProjectsHtml .= '<li>' . html::a(sprintf($link, $project->id), $projectName, '', "class='$selected' title='{$project->name}' data-key='" . zget($projectsPinYin, $project->name, '') . "'") . '</li>';
|
||||
|
||||
if($selected == 'selected') $tabActive = 'other';
|
||||
|
||||
$others++;
|
||||
}
|
||||
else if($project->status == 'done' or $project->status == 'closed') $closedProjectsHtml .= html::a(sprintf($link, $project->id), $project->name, '', "class='$selected' title='{$project->name}' data-key='" . zget($projectsPinYin, $project->name, '') . "'");
|
||||
@@ -96,21 +101,18 @@ foreach($projects as $programID => $programProjects)
|
||||
<div class="table-row">
|
||||
<div class="table-col col-left">
|
||||
<div class='list-group'>
|
||||
<?php if($iCharges): ?>
|
||||
<?php $tabActive = ($tabActive == '' or $tabActive == 'myProject') ? 'myProject' : 'other';?>
|
||||
<ul class="nav nav-tabs">
|
||||
<?php if($iCharges): ?>
|
||||
<li class="active"><?php echo html::a('#myProject', $lang->project->myProject, '', "data-toggle='tab' class='not-list-item not-clear-menu'");?><span class="text-muted"><?php echo $iCharges;?></span><li>
|
||||
<li><?php echo html::a('#other', $lang->project->other, '', "data-toggle='tab' class='not-list-item not-clear-menu'")?><span class="text-muted"><?php echo $others;?></span><li>
|
||||
<?php endif;?>
|
||||
<li class="<?php if($tabActive == 'myProject') echo 'active';?>"><?php echo html::a('#myProject', $lang->project->myProject, '', "data-toggle='tab' class='not-list-item not-clear-menu'");?><span class="text-muted"><?php echo $iCharges;?></span><li>
|
||||
<li class="<?php if($tabActive == 'other') echo 'active';?>"><?php echo html::a('#other', $lang->project->other, '', "data-toggle='tab' class='not-list-item not-clear-menu'")?><span class="text-muted"><?php echo $others;?></span><li>
|
||||
</ul>
|
||||
<?php
|
||||
$myProjectActive = $iCharges ? 'active' : '';
|
||||
$otherActive = $iCharges ? '' : 'active';
|
||||
?>
|
||||
<?php endif;?>
|
||||
<div class="tab-content">
|
||||
<div class="tab-pane <?php echo $myProjectActive;?>" id="myProject">
|
||||
<div class="tab-pane <?php if($tabActive == 'myProject') echo 'active';?>" id="myProject">
|
||||
<?php echo $myProjectsHtml;?>
|
||||
</div>
|
||||
<div class="tab-pane <?php echo $otherActive;?>" id="other">
|
||||
<div class="tab-pane <?php if($tabActive == 'other') echo 'active';?>" id="other">
|
||||
<?php echo $normalProjectsHtml;?>
|
||||
</div>
|
||||
</div>
|
||||
@@ -129,7 +131,7 @@ foreach($projects as $programID => $programProjects)
|
||||
$(function()
|
||||
{
|
||||
$('.nav-tabs li span').hide();
|
||||
$('.nav-tabs li:first').find('span').show();
|
||||
$('.nav-tabs li.active').find('span').show();
|
||||
|
||||
$('.nav-tabs>li').click(function()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user