* fix for project limited.

This commit is contained in:
wangyidong
2018-07-12 11:55:32 +08:00
parent 51ce3062dd
commit bcef5cbbc5
6 changed files with 31 additions and 21 deletions
+6 -6
View File
@@ -1397,19 +1397,19 @@ EOD;
if($module == 'effort' and ($method == 'batchcreate' or $method == 'createforobject')) return true;
// limited project
$limitedProject = false;
if(!empty($module) && $module == 'task' && !empty($object->project) or
!empty($module) && $module == 'project' && !empty($object->id))
!empty($module) && $module == 'project' && !empty($object->id)
)
{
$limitedProject = false;
$objectID = '';
if(!empty($object->id)) $objectID = $object->id;
if(!empty($object->id) && !empty($object->project)) $objectID = $object->project;
if($module == 'project' and !empty($object->id)) $objectID = $object->id;
if($module == 'task' and !empty($object->project))$objectID = $object->project;
$limitedProjects = !empty($_SESSION['limitedProjects']) ? $_SESSION['limitedProjects'] : '';
if(strpos(",{$limitedProjects},", ",$objectID,") !== false) $limitedProject = true;
if(empty($app->user->rights['rights']['my']['limited']) && !$limitedProject) return true;
}
if(empty($app->user->rights['rights']['my']['limited'])) return true;
if(empty($app->user->rights['rights']['my']['limited']) && !$limitedProject) return true;
if(!is_null($method) && strpos($method, 'batch') === 0) return false;
if(!is_null($method) && strpos($method, 'link') === 0) return false;
+4 -2
View File
@@ -67,8 +67,10 @@
</ul>
</div>
<?php
$checkObject = new stdclass();
$checkObject->project = $projectID;
$link = $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : ''));
if(common::hasPriv('task', 'create')) echo html::a($link, "<i class='icon icon-plus'></i> {$lang->task->create}", '', "class='btn btn-primary'");
if(common::hasPriv('task', 'create', $checkObject)) echo html::a($link, "<i class='icon icon-plus'></i> {$lang->task->create}", '', "class='btn btn-primary'");
?>
</div>
</div>
@@ -77,7 +79,7 @@
<div class="table-empty-tip">
<p>
<span class="text-muted"><?php echo $lang->task->noTask;?></span>
<?php if(common::hasPriv('task', 'create')):?>
<?php if(common::hasPriv('task', 'create', $checkObject)):?>
<span class="text-muted"><?php echo $lang->youCould;?></span>
<?php echo html::a($this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')), "<i class='icon icon-plus'></i> " . $lang->task->create, '', "class='btn btn-info'");?>
<?php endif;?>
+5 -3
View File
@@ -35,8 +35,10 @@
</ul>
</div>
<?php
$misc = common::hasPriv('task', 'create', $project) ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('task', 'create', $project) ? $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
$checkObject = new stdclass();
$checkObject->project = $projectID;
$misc = common::hasPriv('task', 'create', $checkObject) ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('task', 'create', $checkObject) ? $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
echo html::a($link, "<i class='icon icon-plus'></i>" . $lang->task->create, '', $misc);
?>
</div>
@@ -67,7 +69,7 @@ $account = $this->app->user->account;
<div class="table-empty-tip">
<p>
<span class="text-muted"><?php echo $lang->task->noTask;?></span>
<?php if(common::hasPriv('task', 'create')):?>
<?php if(common::hasPriv('task', 'create', $checkObject)):?>
<span class="text-muted"><?php echo $lang->youCould;?></span>
<?php echo html::a($this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')), "<i class='icon icon-plus'></i> " . $lang->task->create, '', "class='btn btn-info'");?>
<?php endif;?>
+5 -3
View File
@@ -144,11 +144,13 @@ js::set('browseType', $browseType);
</ul>
</div>
<?php
$checkObject = new stdclass();
$checkObject->project = $projectID;
$link = $this->createLink('task', 'batchCreate', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : ''));
if(common::hasPriv('task', 'batchCreate')) echo html::a($link, "<i class='icon icon-plus'></i> {$lang->task->batchCreate}", '', "class='btn btn btn-secondary'");
if(common::hasPriv('task', 'batchCreate', $checkObject)) echo html::a($link, "<i class='icon icon-plus'></i> {$lang->task->batchCreate}", '', "class='btn btn btn-secondary'");
$link = $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : ''));
if(common::hasPriv('task', 'create')) echo html::a($link, "<i class='icon icon-plus'></i> {$lang->task->create}", '', "class='btn btn-primary'");
if(common::hasPriv('task', 'create', $checkObject)) echo html::a($link, "<i class='icon icon-plus'></i> {$lang->task->create}", '', "class='btn btn-primary'");
?>
</div>
</div>
@@ -169,7 +171,7 @@ js::set('browseType', $browseType);
<div class="table-empty-tip">
<p>
<span class="text-muted"><?php echo $lang->task->noTask;?></span>
<?php if(common::hasPriv('task', 'create')):?>
<?php if(common::hasPriv('task', 'create', $checkObject)):?>
<span class="text-muted"><?php echo $lang->youCould;?></span>
<?php echo html::a($this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')), "<i class='icon icon-plus'></i> " . $lang->task->create, '', "class='btn btn-info'");?>
<?php endif;?>
+6 -4
View File
@@ -125,12 +125,14 @@
<div class='btn-group'>
<div class='btn-group' id='createActionMenu'>
<?php
$misc = common::hasPriv('task', 'create', $project) ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('task', 'create', $project) ? $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
$checkObject = new stdclass();
$checkObject->project = $projectID;
$misc = common::hasPriv('task', 'create', $checkObject) ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('task', 'create', $checkObject) ? $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
echo html::a($link, "<i class='icon icon-plus'></i>" . $lang->task->create, '', $misc);
$misc = common::hasPriv('task', 'batchCreate', $project) ? '' : "disabled";
$link = common::hasPriv('task', 'batchCreate', $project) ? $this->createLink('task', 'batchCreate', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
$misc = common::hasPriv('task', 'batchCreate', $checkObject) ? '' : "disabled";
$link = common::hasPriv('task', 'batchCreate', $checkObject) ? $this->createLink('task', 'batchCreate', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
?>
<button type='button' class='btn btn-primary dropdown-toggle <?php echo $misc?>' data-toggle='dropdown'><span class='caret'></span></button>
<ul class='dropdown-menu pull-right'>
+5 -3
View File
@@ -51,8 +51,10 @@
$link = common::hasPriv('task', 'export') ? $this->createLink('task', 'export', "project=$projectID&orderBy=$orderBy&type=$browseType") : '#';
echo html::a($link, "<i class='icon icon-export muted'></i> <span class='text'>{$lang->export}</span>", '', $misc);
$misc = common::hasPriv('task', 'create', $project) ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('task', 'create', $project) ? $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
$checkObject = new stdclass();
$checkObject->project = $projectID;
$misc = common::hasPriv('task', 'create', $checkObject) ? "class='btn btn-primary'" : "class='btn btn-primary disabled'";
$link = common::hasPriv('task', 'create', $checkObject) ? $this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')) : '#';
echo html::a($link, "<i class='icon icon-plus'></i>" . $lang->task->create, '', $misc);
?>
</div>
@@ -63,7 +65,7 @@
<div class="table-empty-tip">
<p>
<span class="text-muted"><?php echo $lang->task->noTask;?></span>
<?php if(common::hasPriv('task', 'create')):?>
<?php if(common::hasPriv('task', 'create', $checkObject)):?>
<span class="text-muted"><?php echo $lang->youCould;?></span>
<?php echo html::a($this->createLink('task', 'create', "project=$projectID" . (isset($moduleID) ? "&storyID=&moduleID=$moduleID" : '')), "<i class='icon icon-plus'></i> " . $lang->task->create, '', "class='btn btn-info'");?>
<?php endif;?>