* Finish task #36488.
This commit is contained in:
@@ -115,13 +115,29 @@ class project extends control
|
||||
*/
|
||||
public function ajaxGetDropMenu($projectID = 0, $module, $method)
|
||||
{
|
||||
$projects = $this->dao->select('*')->from(TABLE_PROJECT)->where('id')->in($this->app->user->view->projects)->andWhere('deleted')->eq(0)->orderBy('parent desc')->fetchAll();
|
||||
$programs = $this->dao->select('id, name')->from(TABLE_PROGRAM)->where('type')->eq('program')->andWhere('deleted')->eq(0)->orderBy('order_asc')->fetchPairs();
|
||||
$projects = $this->dao->select('*')->from(TABLE_PROJECT)->where('id')->in($this->app->user->view->projects)->andWhere('deleted')->eq(0)->orderBy('openedDate_desc')->fetchAll('id');
|
||||
|
||||
/* Sort project by program. */
|
||||
$orderedProjects = array();
|
||||
foreach($programs as $programID => $programName)
|
||||
{
|
||||
foreach($projects as $project)
|
||||
{
|
||||
if($project->parent == $programID)
|
||||
{
|
||||
$orderedProjects[] = $project;
|
||||
unset($projects[$project->id]);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(!empty($projects)) $orderedProjects += $projects;
|
||||
|
||||
$this->view->projectID = $projectID;
|
||||
$this->view->projects = $projects;
|
||||
$this->view->projects = $orderedProjects;
|
||||
$this->view->module = $module;
|
||||
$this->view->method = $method;
|
||||
$this->view->programs = $this->loadModel('program')->getPairs(true);
|
||||
$this->view->programs = $programs;
|
||||
|
||||
$this->display();
|
||||
}
|
||||
@@ -355,10 +371,10 @@ class project extends control
|
||||
$this->loadModel('action');
|
||||
|
||||
$project = $this->project->getByID($projectID);
|
||||
$projectID = $project->parent;
|
||||
$programID = $project->parent;
|
||||
|
||||
/* Navigation stay in project when enter from project list. */
|
||||
$this->adjustNavigation($from, $projectID);
|
||||
/* Navigation stay in program when enter from program list. */
|
||||
$this->adjustNavigation($from, $programID);
|
||||
|
||||
if($_POST)
|
||||
{
|
||||
@@ -409,7 +425,7 @@ class project extends control
|
||||
$this->view->PMUsers = $this->loadModel('user')->getPairs('noclosed|nodeleted|pmfirst', $project->PM);
|
||||
$this->view->users = $this->user->getPairs('noclosed|nodeleted');
|
||||
$this->view->project = $project;
|
||||
$this->view->projectList = $this->program->getParentPairs();
|
||||
$this->view->programList = $this->program->getParentPairs();
|
||||
$this->view->projectID = $projectID;
|
||||
$this->view->allProducts = array('0' => '') + $allProducts;
|
||||
$this->view->productPlans = $productPlans;
|
||||
|
||||
@@ -852,7 +852,7 @@ class projectModel extends model
|
||||
->setIF($this->post->future, 'budget', 0)
|
||||
->setIF($this->post->budget != 0, 'budget', round($this->post->budget, 2))
|
||||
->join('whitelist', ',')
|
||||
->stripTags($this->config->project->editor->prjedit['id'], $this->config->allowedTags)
|
||||
->stripTags($this->config->project->editor->edit['id'], $this->config->allowedTags)
|
||||
->remove('products,branch,plans,delta,future')
|
||||
->get();
|
||||
|
||||
@@ -892,7 +892,7 @@ class projectModel extends model
|
||||
return false;
|
||||
}
|
||||
|
||||
$project = $this->loadModel('file')->processImgURL($project, $this->config->project->editor->prjedit['id'], $this->post->uid);
|
||||
$project = $this->loadModel('file')->processImgURL($project, $this->config->project->editor->edit['id'], $this->post->uid);
|
||||
|
||||
$requiredFields = $this->config->project->edit->requiredFields;
|
||||
if($this->post->delta == 999) $requiredFields = trim(str_replace(',end,', ',', ",{$requiredFields},"), ',');
|
||||
@@ -909,7 +909,7 @@ class projectModel extends model
|
||||
->checkIF($project->begin != '', 'begin', 'date')
|
||||
->checkIF($project->end != '', 'end', 'date')
|
||||
->checkIF($project->end != '', 'end', 'gt', $project->begin)
|
||||
->check('name', 'unique', "id!=$projectID and deleted='0'")
|
||||
->check('name', 'unique', "id != $projectID and deleted='0'")
|
||||
->where('id')->eq($projectID)
|
||||
->exec();
|
||||
|
||||
@@ -1192,6 +1192,7 @@ class projectModel extends model
|
||||
public function updateProductProgram($oldProgram, $newProgram, $products)
|
||||
{
|
||||
$this->loadModel('action');
|
||||
$this->loadModel('program');
|
||||
/* Product belonging project set processing. */
|
||||
$oldTopProgram = $this->program->getTopByID($oldProgram);
|
||||
$newTopProgram = $this->program->getTopByID($newProgram);
|
||||
|
||||
@@ -21,7 +21,7 @@ $projectsPinYin = common::convert2Pinyin($projectNames);
|
||||
foreach($projects as $project)
|
||||
{
|
||||
$link = helper::createLink('project', 'index', "projectID=%s", '', '', $project->id);
|
||||
$projectName = $project->parent ? zget($programs, $project->parent, '') . '/' . $project->name : $project->name;
|
||||
$projectName = zget($programs, $project->parent, '') ? zget($programs, $project->parent) . '/' . $project->name : $project->name;
|
||||
if($project->status != 'done' and $project->status != 'closed' and $project->PM == $this->app->user->account)
|
||||
{
|
||||
$myProjectsHtml .= html::a(sprintf($link, $project->id), $projectName, '', "class='text-important' title='{$projectName}' data-key='" . zget($projectsPinYin, $projectName, '') . "'");
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
<table class='table table-form'>
|
||||
<tr>
|
||||
<th class='w-120px'><?php echo $lang->program->parent;?></th>
|
||||
<td><?php echo html::select('parent', $projectList, $project->parent, "class='form-control chosen'");?></td>
|
||||
<td><?php echo html::select('parent', $programList, $project->parent, "class='form-control chosen'");?></td>
|
||||
<td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
|
||||
Reference in New Issue
Block a user