* @package programplan * @version $Id$ * @link http://www.zentao.net */ namespace zin; data('fileName', 'gantt-export-' . $projectID); $ganttLang = new stdclass(); $ganttLang->exporting = $lang->programplan->exporting; $ganttLang->exportFail = $lang->programplan->exportFail; $ganttLang->zooming = $lang->execution->gantt->zooming; $ganttLang->hideCriticalPath = $lang->programplan->hideCriticalPath; $ganttLang->showCriticalPath = $lang->programplan->showCriticalPath; $ganttLang->taskStatusList = $lang->task->statusList; $ganttLang->errorTaskDrag = $lang->programplan->error->taskDrag; $ganttLang->errorPlanDrag = $lang->programplan->error->planDrag; $ganttLang->edit = $lang->programplan->edit; $ganttLang->submit = $lang->programplan->submit; $ganttLang->today = $lang->programplan->today; $typeHtml = '' . $lang->programplan->ganttBrowseType[$ganttType] . ''; $typeHtml .= ''; foreach($lang->programplan->ganttBrowseType as $browseType => $typeName) { $link = $this->createLink('programplan', 'browse', "projectID=$projectID&productID=$productID&type=$browseType"); if($app->rawModule == 'review' and $app->rawMethod == 'assess') $this->createLink('review', 'assess', "reivewID=$reviewID&from=&type=$browseType"); $typeHtml .= ''; } $typeHtml .= ''; $ganttFields = array(); $ganttFields['column_text'] = $typeHtml; $ganttFields['column_owner_id'] = $lang->programplan->PMAB; $ganttFields['column_status'] = $lang->statusAB; $ganttFields['column_percent'] = $lang->programplan->percentAB; $ganttFields['column_taskProgress'] = $lang->programplan->taskProgress; $ganttFields['column_begin'] = $lang->programplan->begin; $ganttFields['column_start_date'] = $lang->programplan->begin; $ganttFields['column_deadline'] = $lang->programplan->end; $ganttFields['column_end_date'] = $lang->programplan->end; $ganttFields['column_realBegan'] = $lang->programplan->realBegan; $ganttFields['column_realEnd'] = $lang->programplan->realEnd; $ganttFields['column_duration'] = $lang->programplan->duration; $ganttFields['column_estimate'] = $lang->programplan->estimate; $ganttFields['column_consumed'] = $lang->programplan->consumed; $ganttFields['column_delay'] = $lang->programplan->delay; $ganttFields['column_delayDays'] = $lang->programplan->delayDays; if($app->rawModule == 'programplan') { if($project->stageBy == 'product') { $viewName = $productID != 0 ? zget($productList, $productID) : $lang->product->allProduct; $items = array(); foreach($productList as $key => $productName) $items[] = array('text' => $productName, 'url' => $this->createLink('programplan', 'browse', "projectID=$projectID&productID=$key&type=gantt"), 'active' => $productID == $key); featureBar( dropdown ( btn(set::type('link'), setClass('no-underline'), $viewName), set::items($items) ) ); } else { featureBar(span(setClass('text font-bold'), $lang->programplan->gantt)); } toolbar ( div ( btn(setClass('primary switchBtn'), set::title($lang->programplan->gantt), icon('gantt-alt')), btn(setClass('switchBtn'), set::title($lang->project->bylist), set::url($this->createLink('project', 'execution', "status=all&projectID=$projectID")), icon('list')) ), btn(setClass('no-underline'), set::type('link'), setID('fullScreenBtn'), icon('fullscreen'), $lang->programplan->full), dropdown ( btn(set::type('link'), setClass('no-underline'), $lang->export), set::items(array ( array('text' => $lang->execution->gantt->exportImg, 'url' => 'javascript:exportGantt()'), array('text' => $lang->execution->gantt->exportPDF, 'url' => 'javascript:exportGantt("pdf")') )) ), btn(set::url($this->createLink('programplan', 'ajaxcustom')), icon('cog-outline'), $lang->settings, setClass('no-underline'), set::type('link'), set('data-toggle', 'modal'), set('data-size', 'sm')), (common::hasPriv('programplan', 'create') && empty($product->deleted)) ? btn(set::url($this->createLink('programplan', 'create', "projectID=$projectID")), icon('plus'), $lang->programplan->create, setClass('primary')) : null ); } gantt ( setID('ganttView'), set('ganttLang', $ganttLang), set('canEdit', common::hasPriv('programplan', 'ganttEdit')), set('canEditDeadline', common::hasPriv('review', 'edit')), set('ganttFields', $ganttFields), set('showChart', !(($app->rawModule == 'review' && $app->rawMethod == 'assess') || $dateDetails)), set('zooming', isset($zooming) ? $zooming : 'day'), set('options', $plans) );