* finish task #2784.

This commit is contained in:
chenfeiCF
2016-11-15 16:59:44 +08:00
parent ce574424d3
commit c4878d4522
7 changed files with 26 additions and 6 deletions
+5 -2
View File
@@ -311,10 +311,12 @@ class project extends control
* Import tasks undoned from other projects.
*
* @param int $projectID
* @param int $fromProject
* @param bool $containDoing
* @access public
* @return void
*/
public function importTask($toProject, $fromProject = 0)
public function importTask($toProject, $fromProject = 0, $containDoing = false)
{
if(!empty($_POST))
{
@@ -325,7 +327,7 @@ class project extends control
$project = $this->commonAction($toProject);
$branches = $this->project->getProjectBranches($toProject);
$tasks = $this->project->getTasks2Imported($toProject, $branches);
$projects = $this->project->getProjectsToImport(array_keys($tasks));
$projects = $this->project->getProjectsToImport(array_keys($tasks), $containDoing);
unset($projects[$toProject]);
unset($tasks[$toProject]);
@@ -352,6 +354,7 @@ class project extends control
$this->view->tasks2Imported = $tasks2Imported;
$this->view->projects = $projects;
$this->view->projectID = $project->id;
$this->view->containDoing = $containDoing;
$this->view->fromProject = $fromProject;
$this->display();
}
+1 -1
View File
@@ -1,2 +1,2 @@
#titlebar .input-group {position: relative; top: -6px; margin-left: 10px; width: 300px;}
#titlebar .input-group {position: relative; top: -6px; margin-left: 10px; width: 500px;}
#titlebar .input-group-addon, #titlebar .form-control {font-size: 12px; padding: 5px 10px; line-height: 18px; height: 30px}
+1 -1
View File
@@ -1,6 +1,6 @@
function reload(toProject, fromProject)
{
link = createLink('project','importtask','toProject='+toProject + '&fromProject='+fromProject);
link = createLink('project','importtask','toProject='+toProject + '&fromProject='+fromProject + '&containDoing=' + containDoing);
location.href = link;
}
$(function()
+1
View File
@@ -50,6 +50,7 @@ $lang->project->mine = 'My Responsibility: ';
$lang->project->other = 'Other:';
$lang->project->deleted = 'Deleted';
$lang->project->delayed = 'Delayed';
$lang->project->containDoing = 'Contain doing project';
$lang->project->start = 'Start';
$lang->project->activate = 'Activate';
+1
View File
@@ -50,6 +50,7 @@ $lang->project->mine = '我负责:';
$lang->project->other = '其他:';
$lang->project->deleted = '已删除';
$lang->project->delayed = '已延期';
$lang->project->containDoing = '包含进行中的项目';
$lang->project->start = '开始';
$lang->project->activate = '激活';
+9 -2
View File
@@ -974,7 +974,7 @@ class projectModel extends model
* @access public
* @return array
*/
public function getProjectsToImport($projectIds)
public function getProjectsToImport($projectIds, $containDoing = 'false')
{
$projects = $this->dao->select('*')->from(TABLE_PROJECT)
->where('id')->in($projectIds)
@@ -986,7 +986,14 @@ class projectModel extends model
$now = date('Y-m-d');
foreach($projects as $id => $project)
{
if($this->checkPriv($project) and ($project->status == 'done' or $project->end < $now)) $pairs[$id] = ucfirst(substr($project->code, 0, 1)) . ':' . $project->name;
if($containDoing)
{
if($this->checkPriv($project) and ($project->status == 'done' or $project->status == 'doing' or $project->end < $now)) $pairs[$id] = ucfirst(substr($project->code, 0, 1)) . ':' . $project->name;
}
else
{
if($this->checkPriv($project) and ($project->status == 'done' or $project->end < $now)) $pairs[$id] = ucfirst(substr($project->code, 0, 1)) . ':' . $project->name;
}
}
return $pairs;
}
+8
View File
@@ -12,6 +12,7 @@
?>
<?php include '../../common/view/header.html.php';?>
<?php include '../../common/view/tablesorter.html.php';?>
<?php js::set('containDoing', $containDoing);?>
<div id='titlebar'>
<div class='heading'>
<span class='prefix pull-left'><?php echo html::icon($lang->icons['task']);?></span>
@@ -20,6 +21,13 @@
<?php $projects = array(0 => $lang->project->allProjects) + $projects;?>
<span class='input-group-addon'><?php echo $lang->project->selectProject;?></span>
<?php echo html::select('fromproject', $projects, $fromProject, "onchange='reload($projectID, this.value)' class='form-control chosen'");?>
<span class='input-group-btn'>
<?php
$toggleClass = $containDoing ? 'icon-toggle-on' : 'icon-toggle-off';
$params = $containDoing ? "toProject=$projectID&fromProject=$fromProject" : "toProject=$projectID&fromProject=$fromProject&containDoing=true";
echo html::a($this->createLink('project', 'importTask', $params), "<i class={$toggleClass}></i>" . $lang->project->containDoing, '', "class='btn'");
?>
</span>
</div>
</div>
</div>