zentaomax.php 38 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584
  1. <?php
  2. $lang->maxName = '旗艦版';
  3. $lang->userCenter = '個人中心';
  4. $lang->importIcon = "<i class='icon-import'> </i>";
  5. $lang->dragAndSort = "拖動排序";
  6. $lang->importToLib = "導入資產庫";
  7. $lang->scurmModel = '敏捷模型';
  8. $lang->closedFeatureNotice = '設置提醒';
  9. $lang->navIcons['assetlib'] = "<i class='icon icon-assets'></i>";
  10. $lang->navIconNames['assetlib'] = 'assets';
  11. $lang->risk = new stdclass();
  12. $lang->issue = new stdclass();
  13. $lang->weekly = new stdclass();
  14. $lang->measrecord = new stdclass();
  15. $lang->opportunity = new stdclass();
  16. $lang->assetlib = new stdclass();
  17. $lang->meeting = new stdclass();
  18. $lang->approvalflow = new stdclass();
  19. $lang->process = new stdclass();
  20. $lang->reviewcl = new stdclass();
  21. $lang->auditcl = new stdclass();
  22. $lang->reviewissue = new stdclass();
  23. $lang->researchplan = new stdclass();
  24. $lang->gapanalysis = new stdclass();
  25. $lang->trainplan = new stdclass();
  26. $lang->researchreport = new stdclass();
  27. $lang->storylib = new stdclass();
  28. $lang->issuelib = new stdclass();
  29. $lang->risklib = new stdclass();
  30. $lang->opportunitylib = new stdclass();
  31. $lang->practicelib = new stdclass();
  32. $lang->componentlib = new stdclass();
  33. $lang->projectreport = new stdclass();
  34. $lang->projectresearch = new stdclass();
  35. $lang->projectauditplan = new stdclass();
  36. $lang->projectgapanalysis = new stdclass();
  37. $lang->reporttemplate = new stdclass();
  38. $lang->projectchange = new stdclass();
  39. $lang->report->common = '度量報表';
  40. $lang->issue->common = '問題';
  41. $lang->risk->common = '風險';
  42. $lang->opportunity->common = '機會';
  43. $lang->assetlib->common = '資產庫';
  44. $lang->meeting->common = '會議';
  45. $lang->process->common = '過程';
  46. $lang->reviewcl->common = '評審';
  47. $lang->auditcl->common = 'QA檢查項';
  48. $lang->storylib->common = '需求庫';
  49. $lang->issuelib->common = '問題庫';
  50. $lang->risklib->common = '風險庫';
  51. $lang->opportunitylib->common = '機會庫';
  52. $lang->practicelib->common = '最佳實踐庫';
  53. $lang->componentlib->common = '組件庫';
  54. $lang->projectreport->common = '報告';
  55. $lang->projectresearch->common = '調研';
  56. $lang->projectauditplan->common = '質量保證';
  57. $lang->projectgapanalysis->common = '培訓';
  58. $lang->reviewcl->clcategory = '維護檢查單分類';
  59. $lang->reporttemplate->browse = '瀏覽報告模板';
  60. $lang->reporttemplate->common = '報告模板';
  61. $lang->projectchange->common = '項目變更';
  62. $lang->mainNav->assetlib = "{$lang->navIcons['assetlib']} {$lang->assetlib->common}|assetlib|storylib|";
  63. $lang->mainNav->menuOrder[57] = 'assetlib';
  64. $lang->navGroup->assetlib = 'assetlib';
  65. $lang->navGroup->storylib = 'assetlib';
  66. $lang->navGroup->caselib = 'assetlib';
  67. $lang->navGroup->issuelib = 'assetlib';
  68. $lang->navGroup->risklib = 'assetlib';
  69. $lang->navGroup->opportunitylib = 'assetlib';
  70. $lang->navGroup->practicelib = 'assetlib';
  71. $lang->navGroup->componentlib = 'assetlib';
  72. $lang->navGroup->issue = 'project';
  73. $lang->navGroup->risk = 'project';
  74. $lang->navGroup->weekly = 'project';
  75. $lang->navGroup->budget = 'project';
  76. $lang->navGroup->workestimation = 'project';
  77. $lang->navGroup->durationestimation = 'project';
  78. $lang->navGroup->opportunity = 'project';
  79. $lang->navGroup->trainplan = 'project';
  80. $lang->navGroup->gapanalysis = 'project';
  81. $lang->navGroup->researchplan = 'project';
  82. $lang->navGroup->researchreport = 'project';
  83. $lang->navGroup->meeting = 'project';
  84. $lang->navGroup->reviewissue = 'project';
  85. $lang->navGroup->projectreport = 'project';
  86. $lang->navGroup->projectresearch = 'project';
  87. $lang->navGroup->projectauditplan = 'project';
  88. $lang->navGroup->projectgapanalysis = 'project';
  89. $lang->navGroup->projectchange = 'project';
  90. $lang->navGroup->holiday = 'admin';
  91. $lang->navGroup->stage = 'admin';
  92. $lang->navGroup->measurement = 'admin';
  93. $lang->navGroup->sqlbuilder = 'admin';
  94. $lang->navGroup->auditcl = 'admin';
  95. $lang->navGroup->process = 'admin';
  96. $lang->navGroup->activity = 'admin';
  97. $lang->navGroup->zoutput = 'admin';
  98. $lang->navGroup->classify = 'admin';
  99. $lang->navGroup->subject = 'admin';
  100. $lang->navGroup->baseline = 'admin';
  101. $lang->navGroup->auditcl = 'admin';
  102. $lang->navGroup->reviewcl = 'admin';
  103. $lang->navGroup->reviewsetting = 'admin';
  104. $lang->navGroup->meetingroom = 'admin';
  105. $lang->navGroup->deliverable = 'admin';
  106. $lang->navGroup->reporttemplate = 'bi';
  107. $lang->my->icon['my'] = 'icon-menu-my';
  108. $lang->my->icon['program'] = 'icon-menu-project';
  109. $lang->my->icon['system'] = 'icon-cube';
  110. $lang->my->icon['attend'] = 'icon-file';
  111. $lang->my->icon['report'] = 'icon-menu-report';
  112. $lang->my->icon['admin'] = 'icon-menu-backend';
  113. $lang->my->menu->meeting = array('link' => "會議|my|meeting|", 'subModule' => 'meeting');
  114. $lang->my->menuOrder[41] = 'meeting';
  115. $lang->my->menu->work['subMenu']->issue = '問題|my|work|mode=issue';
  116. $lang->my->menu->work['subMenu']->risk = '風險|my|work|mode=risk';
  117. $lang->my->menu->work['subMenu']->reviewissue = array('link' => '評審問題|my|work|mode=reviewissue', 'alias' => 'reviewissue');
  118. $lang->my->menu->work['subMenu']->nc = array('link' => '質量保證|my|work|mode=auditplan&type=mychecking', 'alias' => 'auditplan');
  119. $lang->my->menu->work['subMenu']->myMeeting = '會議|my|work|mode=mymeeting&type=futureMeeting';
  120. $lang->my->menu->work['menuOrder'][40] = 'issue';
  121. $lang->my->menu->work['menuOrder'][45] = 'risk';
  122. $lang->my->menu->work['menuOrder'][50] = 'reviewissue';
  123. $lang->my->menu->work['menuOrder'][55] = 'nc';
  124. $lang->my->menu->work['menuOrder'][60] = 'myMeeting';
  125. if(helper::hasFeature('project_cm')) $lang->my->menu->contribute['subMenu']->baseline = array('link' => '基線|my|contribute|mode=baseline&type=createdBy', 'alias' => 'baseline');
  126. $lang->my->menu->contribute['subMenu']->issue = array('link' => '問題|my|contribute|mode=issue', 'alias' => 'issue');
  127. $lang->my->menu->contribute['subMenu']->risk = array('link' => '風險|my|contribute|mode=risk', 'alias' => 'risk');
  128. $lang->my->menu->contribute['subMenu']->reviewissue = array('link' => '評審問題|my|contribute|mode=reviewissue', 'alias' => 'reviewissue');
  129. $lang->my->menu->contribute['subMenu']->nc = array('link' => '質量保證|my|contribute|mode=nc&type=createdByMe', 'alias' => 'nc');
  130. $lang->my->menu->contribute['menuOrder'][35] = 'audit';
  131. if(helper::hasFeature('project_cm')) $lang->my->menu->contribute['menuOrder'][45] = 'baseline';
  132. $lang->my->menu->contribute['menuOrder'][50] = 'doc';
  133. $lang->my->menu->contribute['menuOrder'][55] = 'issue';
  134. $lang->my->menu->contribute['menuOrder'][60] = 'risk';
  135. $lang->my->menu->contribute['menuOrder'][65] = 'reviewissue';
  136. $lang->my->menu->contribute['menuOrder'][70] = 'nc';
  137. $lang->my->menu->contribute['menuOrder'][75] = 'feedback';
  138. $lang->my->menu->contribute['menuOrder'][80] = 'ticket';
  139. $lang->report->projectMenu = new stdclass();
  140. $lang->report->projectMenu->reports = array('link' => '統計報表|report|projectsummary|project=%s', 'alias' => 'projectworkload,reportmodule,customeredreport,custom,show,viewreport');
  141. $lang->report->projectMenu->measurement = array('link' => '度量列表|measrecord|browse|project=%s');
  142. $lang->project->homeMenu->browse['alias'] .= ',copyproject,copyconfirm';
  143. $lang->project->homeMenu->template = array('link' => "項目模板|project|template|", 'alias' => 'createtemplate');
  144. $lang->scrum->menu->review = array('link' => '評審|review|browse|project=%s', 'subModule' => 'review,reviewissue');
  145. $lang->scrum->menu->review['subMenu'] = new stdclass();
  146. $lang->scrum->menu->review['subMenu']->browse = array('link' => '評審|review|browse|project=%s', 'alias' => 'report,assess,result,audit,create,edit,view');
  147. $lang->scrum->menu->review['subMenu']->issue = array('link' => '評審問題|reviewissue|issue|project=%s', 'alias' => 'create,edit,view');
  148. $lang->scrum->menuOrder[28] = 'review';
  149. $lang->scrum->dividerMenu = ',execution,programplan,settings,';
  150. unset($lang->scrum->menu->settings['subMenu']->workflow); // 企業版已加,此處要刪除為了排序
  151. $lang->scrum->menu->settings['subMenu']->approval = array('link' => "評審設置|project|approval|project=%s", 'alias' => 'approval');
  152. $lang->scrum->menu->settings['subMenu']->workflow = array('link' => "項目流程|project|workflowgroup|project=%s", 'alias' => 'workflowgroup');
  153. $lang->scrum->menu->settings['alias'] .= ',approval,workflowgroup';
  154. $lang->scrum->menu->weekly = array('link' => "{$lang->project->report}|weekly|browse|project=%s", 'subModule' => 'weekly');
  155. if(helper::hasFeature('process')) $lang->scrum->menu->pssp = array('link' => '過程|pssp|browse|projectID=%s', 'subModule' => 'pssp');
  156. if($config->systemMode != 'light') $lang->scrum->menu->other = array('link' => "$lang->other|project|other|project=%s", 'class' => 'dropdown dropdown-hover');
  157. $lang->scrum->menuOrder[45] = 'weekly';
  158. $lang->scrum->menuOrder[55] = 'other';
  159. $lang->scrum->menuOrder[58] = 'pssp';
  160. if($config->systemMode != 'light')
  161. {
  162. unset($lang->scrum->menu->weekly);
  163. unset($lang->scrum->menu->dynamic);
  164. unset($lang->scrum->menu->pssp);
  165. $lang->scrum->menu->other['dropMenu'] = new stdclass();
  166. $lang->scrum->menu->other['dropMenu']->weekly = array('link' => "{$lang->project->report}|weekly|browse|project=%s", 'subModule' => 'weekly');
  167. $lang->scrum->menu->other['dropMenu']->dynamic = array('link' => "$lang->dynamic|project|dynamic|project=%s");
  168. $lang->scrum->menu->other['dropMenu']->issue = array('link' => '問題|issue|browse|projectID=%s', 'subModule' => 'issue');
  169. $lang->scrum->menu->other['dropMenu']->risk = array('link' => '風險|risk|browse|projectID=%s', 'subModule' => 'risk');
  170. $lang->scrum->menu->other['dropMenu']->opportunity = array('link' => "機會|opportunity|browse|projectID=%s", 'subModule' => 'opportunity');
  171. $lang->scrum->menu->other['dropMenu']->pssp = array('link' => '過程|pssp|browse|projectID=%s', 'subModule' => 'pssp', 'data-app' => 'project');
  172. $lang->scrum->menu->other['dropMenu']->meeting = array('link' => '會議|meeting|browse|projectID=%s', 'subModule' => 'meeting');
  173. }
  174. if(helper::hasFeature('deliverable'))
  175. {
  176. $lang->scrum->menu->deliverable = array('link' => "{$lang->deliverable->common}|project|deliverable|projectID=%s", 'alias' => 'viewdeliverable');
  177. $lang->scrum->menuOrder[27] = 'deliverable';
  178. $lang->scrum->dividerMenu .= 'deliverable,';
  179. }
  180. if(strpos($lang->scrum->dividerMenu, 'deliverable') === false) $lang->scrum->dividerMenu .= 'review,';
  181. /* No sprint menu. */
  182. $lang->project->noMultiple->scrum->menu->review = $lang->scrum->menu->review;
  183. $lang->project->noMultiple->scrum->menuOrder[39] = 'review';
  184. if(helper::hasFeature('project_deliverable'))
  185. {
  186. $lang->project->noMultiple->scrum->menu->deliverable = array('link' => "{$lang->deliverable->common}|project|deliverable|projectID=%s", 'alias' => 'viewdeliverable');
  187. $lang->project->noMultiple->scrum->menuOrder[38] = 'deliverable';
  188. }
  189. $lang->project->noMultiple->scrum->menu->other = array('link' => "$lang->other|issue|browse|project=%s", 'class' => 'dropdown dropdown-hover');
  190. $lang->project->noMultiple->scrum->menuOrder[60] = 'other';
  191. $lang->project->noMultiple->scrum->menu->other['dropMenu'] = new stdclass();
  192. $lang->project->noMultiple->scrum->menu->other['dropMenu']->weekly = array('link' => "{$lang->project->report}|weekly|browse|project=%s", 'subModule' => 'weekly');
  193. $lang->project->noMultiple->scrum->menu->other['dropMenu']->dynamic = array('link' => "$lang->dynamic|project|dynamic|project=%s");
  194. if(helper::hasFeature('project_issue')) $lang->project->noMultiple->scrum->menu->other['dropMenu']->issue = array('link' => '問題|issue|browse|projectID=%s', 'subModule' => 'issue');
  195. if(helper::hasFeature('project_risk')) $lang->project->noMultiple->scrum->menu->other['dropMenu']->risk = array('link' => '風險|risk|browse|projectID=%s', 'subModule' => 'risk');
  196. if(helper::hasFeature('project_opportunity')) $lang->project->noMultiple->scrum->menu->other['dropMenu']->opportunity = array('link' => "機會|opportunity|browse|projectID=%s", 'subModule' => 'opportunity');
  197. if(helper::hasFeature('project_process')) $lang->project->noMultiple->scrum->menu->other['dropMenu']->pssp = array('link' => '過程|pssp|browse|projectID=%s', 'subModule' => 'pssp', 'data-app' => 'project');
  198. if(helper::hasFeature('project_auditplan')) $lang->project->noMultiple->scrum->menu->other['dropMenu']->auditplan = array('link' => "{$lang->qa->shortCommon}|auditplan|browse|projectID=%s", 'subModule' => 'auditplan,nc', 'data-app' => 'project', 'alias' => 'project-deliverablechecklist', 'links' => array('project|deliverableChecklist|projectID=%s', 'nc|browse|project=%s&from=project'));
  199. if(helper::hasFeature('project_meeting')) $lang->project->noMultiple->scrum->menu->other['dropMenu']->meeting = array('link' => '會議|meeting|browse|projectID=%s', 'subModule' => 'meeting');
  200. $lang->project->noMultiple->scrum->menu->auditplan['subMenu'] = new stdclass();
  201. $lang->project->noMultiple->scrum->menu->auditplan['subMenu']->auditplan = array('link' => '活動檢查|auditplan|browse|projectID=%s', 'alias' => 'create,view,batchcreate,edit,batchcheck,batchedit');
  202. $lang->project->noMultiple->scrum->menu->auditplan['subMenu']->deliverable = array('link' => "{$lang->deliverable->common}檢查|project|deliverableChecklist|projectID=%s");
  203. $lang->project->noMultiple->scrum->menu->auditplan['subMenu']->nc = array('link' => '不符合項|nc|browse|project=%s&from=project', 'alias' => 'create,edit,view');
  204. $lang->project->noMultiple->scrum->menu->settings['alias'] .= ',approval';
  205. $lang->project->noMultiple->kanban->menu->weekly = array('link' => "{$lang->project->report}|weekly|browse|project=%s", 'subModule' => 'weekly');
  206. $lang->project->noMultiple->kanban->menuOrder[20] = 'weekly';
  207. /* Execution menu. */
  208. $lang->execution->menu->other = array('link' => "$lang->other|issue|browse|project=%s&from=execution", 'class' => 'dropdown dropdown-hover');
  209. $lang->execution->menuOrder[67] = 'other';
  210. $lang->execution->menu->other['dropMenu'] = new stdclass();
  211. $lang->execution->menu->other['dropMenu']->issue = array('link' => '問題|issue|browse|executionID=%s&from=execution', 'subModule' => 'issue');
  212. $lang->execution->menu->other['dropMenu']->risk = array('link' => '風險|risk|browse|executionID=%s&from=execution', 'subModule' => 'risk');
  213. $lang->execution->menu->other['dropMenu']->opportunity = array('link' => "機會|opportunity|browse|executionID=%s&from=execution", 'subModule' => 'opportunity');
  214. $lang->execution->menu->other['dropMenu']->pssp = array('link' => '過程|pssp|browse|projectID=%s', 'subModule' => 'pssp');
  215. $lang->execution->menu->other['dropMenu']->auditplan = array('link' => "{$lang->qa->shortCommon}|auditplan|browse|projectID=%s", 'subModule' => 'auditplan,nc', 'alias' => 'project-deliverablechecklist', 'links' => array('project|deliverableChecklist|projectID=%s', 'nc|browse|project=%s&from=execution'));
  216. $lang->execution->menu->other['dropMenu']->meeting = array('link' => '會議|meeting|browse|executionID=%s&from=execution', 'subModule' => 'meeting');
  217. $lang->execution->menu->auditplan['subMenu'] = new stdclass();
  218. $lang->execution->menu->auditplan['subMenu']->auditplan = array('link' => '活動檢查|auditplan|browse|projectID=%s', 'alias' => 'create,view,batchcreate,edit,batchcheck,batchedit');
  219. $lang->execution->menu->auditplan['subMenu']->deliverable = array('link' => "{$lang->deliverable->common}檢查|project|deliverableChecklist|projectID=%s");
  220. $lang->execution->menu->auditplan['subMenu']->nc = array('link' => '不符合項|nc|browse|project=%s&from=execution', 'alias' => 'create,edit,view');
  221. /* Waterfall menu. */
  222. $lang->waterfall->menu->track = array('link' => "$lang->track|projectstory|track|project=%s", 'alias' => 'track');
  223. $lang->waterfall->menu->review = array('link' => '評審|review|browse|project=%s', 'subModule' => 'review,reviewissue');
  224. $lang->waterfall->menu->cm = array('link' => '基線|cm|browse|project=%s', 'subModule' => 'cm');
  225. $lang->waterfall->menu->projectchange = array('link' => '變更|projectchange|browse|project=%s', 'alias' => 'create,edit,view', 'subModule' => 'projectchange');
  226. $lang->waterfall->menu->other = array('link' => "$lang->other|project|other|", 'class' => 'dropdown dropdown-hover');
  227. $lang->waterfall->dividerMenu = ',programplan,build,dynamic,';
  228. if(helper::hasFeature('deliverable'))
  229. {
  230. $lang->waterfall->menu->deliverable = array('link' => "{$lang->deliverable->common}|project|deliverable|projectID=%s", 'alias' => 'viewdeliverable');
  231. $lang->waterfall->menuOrder[43] = 'deliverable';
  232. $lang->waterfall->dividerMenu .= 'deliverable,';
  233. }
  234. if(strpos($lang->waterfall->dividerMenu, 'deliverable') === false) $lang->waterfall->dividerMenu .= 'review,';
  235. /* Waterfall menu order. */
  236. $lang->waterfall->menuOrder[40] = 'track';
  237. $lang->waterfall->menuOrder[45] = 'review';
  238. $lang->waterfall->menuOrder[50] = 'cm';
  239. $lang->waterfall->menuOrder[53] = 'projectchange';
  240. $lang->waterfall->menuOrder[85] = 'other';
  241. unset($lang->waterfall->menu->dynamic);
  242. $lang->waterfall->menu->other['dropMenu'] = new stdclass();
  243. $lang->waterfall->menu->other['dropMenu']->weekly = array('link' => "{$lang->project->report}|weekly|browse|project=%s", 'subModule' => ',milestone,weekly,');
  244. $lang->waterfall->menu->other['dropMenu']->dynamic = array('link' => "$lang->dynamic|project|dynamic|project=%s");
  245. $lang->waterfall->menu->other['dropMenu']->research = array('link' => '調研|researchplan|browse|projectID=%s', 'subModule' => 'researchplan,researchreport');
  246. $lang->waterfall->menu->other['dropMenu']->estimation = array('link' => "$lang->estimation|workestimation|index|projectID=%s", 'subModule' => 'workestimation,durationestimation,budget');
  247. $lang->waterfall->menu->other['dropMenu']->issue = array('link' => "問題|issue|browse|projectID=%s", 'subModule' => 'issue');
  248. $lang->waterfall->menu->other['dropMenu']->risk = array('link' => "風險|risk|browse|projectID=%s", 'subModule' => 'risk');
  249. $lang->waterfall->menu->other['dropMenu']->opportunity = array('link' => "機會|opportunity|browse|projectID=%s", 'subModule' => 'opportunity');
  250. $lang->waterfall->menu->other['dropMenu']->pssp = array('link' => '過程|pssp|browse|projectID=%s', 'subModule' => 'pssp');
  251. $lang->waterfall->menu->other['dropMenu']->auditplan = array('link' => "{$lang->qa->shortCommon}|auditplan|browse|projectID=%s", 'subModule' => 'auditplan,nc', 'alias' => 'project-deliverablechecklist', 'links' => array('project|deliverableChecklist|projectID=%s', 'nc|browse|project=%s&from=project'));
  252. $lang->waterfall->menu->other['dropMenu']->train = array('link' => '培訓|gapanalysis|browse|projectID=%s', 'subModule' => 'trainplan,gapanalysis');
  253. $lang->waterfall->menu->other['dropMenu']->meeting = array('link' => '會議|meeting|browse|projectID=%s', 'subModule' => 'meeting');
  254. $lang->waterfall->menu->research['subMenu'] = new stdclass();
  255. $lang->waterfall->menu->research['subMenu']->researchplan = array('link' => '調研計劃|researchplan|browse|projectID=%s', 'alias' => 'create,edit,view');
  256. $lang->waterfall->menu->research['subMenu']->researchreport = array('link' => '調研報告|researchreport|browse|projectID=%s', 'alias' => 'create,edit,view');
  257. $lang->waterfall->menu->estimation = array();
  258. $lang->waterfall->menu->estimation['subMenu'] = new stdclass();
  259. $lang->waterfall->menu->estimation['subMenu']->workestimation = '工作量估算|workestimation|index|project=%s';
  260. $lang->waterfall->menu->estimation['subMenu']->duration = array('link' => '工期估算|durationestimation|index|project=%s', 'subModule' => 'durationestimation');
  261. $lang->waterfall->menu->estimation['subMenu']->budget = array('link' => '費用估算|budget|summary|project=%s', 'subModule' => 'budget');
  262. $lang->waterfall->menu->auditplan['subMenu'] = new stdclass();
  263. $lang->waterfall->menu->auditplan['subMenu']->auditplan = array('link' => '活動檢查|auditplan|browse|projectID=%s', 'alias' => 'create,view,batchcreate,edit,batchcheck,batchedit');
  264. $lang->waterfall->menu->auditplan['subMenu']->deliverable = array('link' => "{$lang->deliverable->common}檢查|project|deliverableChecklist|projectID=%s");
  265. $lang->waterfall->menu->auditplan['subMenu']->nc = array('link' => '不符合項|nc|browse|project=%s', 'alias' => 'edit,view,create');
  266. $lang->waterfall->menu->review['subMenu'] = new stdclass();
  267. $lang->waterfall->menu->review['subMenu']->browse = array('link' => '評審|review|browse|project=%s', 'alias' => 'report,assess,result,audit,create,edit,view');
  268. $lang->waterfall->menu->review['subMenu']->issue = array('link' => '評審問題|reviewissue|issue|project=%s', 'alias' => 'create,edit,view');
  269. $lang->waterfall->menu->review['menuOrder'][5] = 'browse';
  270. $lang->waterfall->menu->review['menuOrder'][10] = 'issue';
  271. $lang->waterfall->menu->train['subMenu'] = new stdclass();
  272. $lang->waterfall->menu->train['subMenu']->gapanalysis = array('link' => '能力差距分析|gapanalysis|browse|projectID=%s', 'alias' => 'create,edit,view,batchcreate,batchedit');
  273. $lang->waterfall->menu->train['subMenu']->trainplan = array('link' => '培訓計劃|trainplan|browse|projectID=%s', 'alias' => 'create,edit,view,batchcreate,batchedit');
  274. $lang->waterfall->menu->settings['subMenu'] = clone $lang->scrum->menu->settings['subMenu'];
  275. unset($lang->waterfall->menu->settings['subMenu']->workflow); // 企業版已加,此處要刪除為了排序
  276. $lang->waterfall->menu->settings['subMenu']->approval = array('link' => "評審設置|project|approval|project=%s", 'alias' => 'approval');
  277. $lang->waterfall->menu->settings['subMenu']->workflow = array('link' => "項目流程|project|workflowgroup|project=%s", 'alias' => 'workflowgroup');
  278. $lang->waterfall->menu->settings['alias'] .= ',approval,workflowgroup';
  279. $lang->assetlib->menu = new stdclass();
  280. $lang->assetlib->menu->storylib = array('link' => '需求庫|assetlib|storylib', 'alias' => 'createstorylib,storylibview,story,importstory,editstorylib,storyview,editstory,assigntostory');
  281. $lang->assetlib->menu->caselib = array('link' => '用例庫|assetlib|caselib');
  282. $lang->assetlib->menu->issuelib = array('link' => '問題庫|assetlib|issuelib', 'alias' => 'createissuelib,issuelibview,issue,importissue,editissuelib,issueview,editissue,assigntoissue');
  283. $lang->assetlib->menu->risklib = array('link' => '風險庫|assetlib|risklib', 'alias' => 'createrisklib,risklibview,risk,importrisk,editrisklib,riskview,editrisk,assigntorisk');
  284. $lang->assetlib->menu->opportunitylib = array('link' => '機會庫|assetlib|opportunitylib', 'alias' => 'createopportunitylib,opportunitylibview,opportunity,importopportunity,editopportunitylib,opportunityview,editopportunity,assigntoopportunity');
  285. $lang->assetlib->menu->practicelib = array('link' => '最佳實踐庫|assetlib|practicelib', 'alias' => 'createpracticelib,practicelibview,practice,importpractice,editpracticelib,practiceview,editpractice,assigntopractice');
  286. $lang->assetlib->menu->componentlib = array('link' => '組件庫|assetlib|componentlib', 'alias' => 'createcomponentlib,componentlibview,component,importcomponent,editcomponentlib,componentview,editcomponent,assigntocomponent');
  287. $lang->assetlib->menuOrder[5] = 'storylib';
  288. $lang->assetlib->menuOrder[10] = 'caselib';
  289. $lang->assetlib->menuOrder[15] = 'issuelib';
  290. $lang->assetlib->menuOrder[20] = 'risklib';
  291. $lang->assetlib->menuOrder[25] = 'opportunitylib';
  292. $lang->assetlib->menuOrder[30] = 'practicelib';
  293. $lang->assetlib->menuOrder[35] = 'componentlib';
  294. if(helper::hasFeature('issue')) $lang->searchObjects['issue'] = '問題';
  295. if(helper::hasFeature('risk')) $lang->searchObjects['risk'] = '風險';
  296. if(helper::hasFeature('opportunity')) $lang->searchObjects['opportunity'] = '機會';
  297. if(helper::hasFeature('gapanalysis')) $lang->searchObjects['trainplan'] = '培訓計劃';
  298. $lang->stage->attribute['dev'] = new stdclass();
  299. $lang->stage->attribute['dev']->menu = new stdclass();
  300. $lang->stage->attribute['dev']->menu = clone $lang->execution->menu;
  301. unset($lang->stage->attribute['dev']->menu->other);
  302. $lang->stage->attribute['dev']->dividerMenu = ',story,build,';
  303. $lang->stage->attribute['request'] = new stdclass();
  304. $lang->stage->attribute['request']->menu = new stdclass();
  305. $lang->stage->attribute['request']->menu->task = $lang->execution->menu->task;
  306. $lang->stage->attribute['request']->menu->kanban = $lang->execution->menu->kanban;
  307. $lang->stage->attribute['request']->menu->burn = $lang->execution->menu->burn;
  308. $lang->stage->attribute['request']->menu->view = $lang->execution->menu->view;
  309. $lang->stage->attribute['request']->menu->story = $lang->execution->menu->story;
  310. $lang->stage->attribute['request']->menu->effort = $lang->execution->menu->effort;
  311. $lang->stage->attribute['request']->menu->doc = $lang->execution->menu->doc;
  312. $lang->stage->attribute['request']->menu->action = $lang->execution->menu->action;
  313. $lang->stage->attribute['request']->menu->settings = $lang->execution->menu->settings;
  314. if(isset($lang->execution->menu->more)) $lang->stage->attribute['request']->menu->more = $lang->execution->menu->more;
  315. /* Execution menu order. */
  316. $lang->stage->attribute['request']->menuOrder[5] = 'task';
  317. $lang->stage->attribute['request']->menuOrder[10] = 'kanban';
  318. $lang->stage->attribute['request']->menuOrder[15] = 'burn';
  319. $lang->stage->attribute['request']->menuOrder[20] = 'view';
  320. $lang->stage->attribute['request']->menuOrder[22] = 'view';
  321. $lang->stage->attribute['request']->menuOrder[25] = 'effort';
  322. $lang->stage->attribute['request']->menuOrder[30] = 'doc';
  323. $lang->stage->attribute['request']->menuOrder[40] = 'action';
  324. $lang->stage->attribute['request']->menuOrder[45] = 'settings';
  325. $lang->stage->attribute['request']->menuOrder[50] = 'more';
  326. $lang->stage->attribute['request']->menu->settings['subMenu'] = new stdclass();
  327. $lang->stage->attribute['request']->menu->settings['subMenu']->view = $lang->execution->menu->settings['subMenu']->view;
  328. $lang->stage->attribute['request']->menu->settings['subMenu']->team = $lang->execution->menu->settings['subMenu']->team;
  329. $lang->stage->attribute['request']->menu->settings['subMenu']->whitelist = $lang->execution->menu->settings['subMenu']->whitelist;
  330. $lang->stage->attribute['request']->menu->settings['menuOrder'][5] = 'view';
  331. $lang->stage->attribute['request']->menu->settings['menuOrder'][10] = 'team';
  332. $lang->stage->attribute['request']->menu->settings['menuOrder'][15] = 'whitelist';
  333. $lang->stage->attribute['request']->dividerMenu = ',effort,';
  334. $lang->stage->attribute['design'] = new stdclass();
  335. $lang->stage->attribute['design']->menu = new stdclass();
  336. $lang->stage->attribute['design']->menu->task = $lang->execution->menu->task;
  337. $lang->stage->attribute['design']->menu->kanban = $lang->execution->menu->kanban;
  338. $lang->stage->attribute['design']->menu->burn = $lang->execution->menu->burn;
  339. $lang->stage->attribute['design']->menu->view = $lang->execution->menu->view;
  340. $lang->stage->attribute['design']->menu->story = $lang->execution->menu->story;
  341. $lang->stage->attribute['design']->menu->effort = $lang->execution->menu->effort;
  342. $lang->stage->attribute['design']->menu->doc = $lang->execution->menu->doc;
  343. $lang->stage->attribute['design']->menu->action = $lang->execution->menu->action;
  344. $lang->stage->attribute['design']->menu->settings = $lang->execution->menu->settings;
  345. if(isset($lang->execution->menu->more)) $lang->stage->attribute['design']->menu->more = $lang->execution->menu->more;
  346. /* Execution menu order. */
  347. $lang->stage->attribute['design']->menuOrder[5] = 'task';
  348. $lang->stage->attribute['design']->menuOrder[10] = 'kanban';
  349. $lang->stage->attribute['design']->menuOrder[15] = 'burn';
  350. $lang->stage->attribute['design']->menuOrder[20] = 'view';
  351. $lang->stage->attribute['design']->menuOrder[25] = 'story';
  352. $lang->stage->attribute['design']->menuOrder[30] = 'effort';
  353. $lang->stage->attribute['design']->menuOrder[35] = 'doc';
  354. $lang->stage->attribute['design']->menuOrder[45] = 'action';
  355. $lang->stage->attribute['design']->menuOrder[50] = 'settings';
  356. $lang->stage->attribute['design']->menuOrder[55] = 'more';
  357. $lang->stage->attribute['design']->menu->settings['subMenu'] = new stdclass();
  358. $lang->stage->attribute['design']->menu->settings['subMenu']->view = $lang->execution->menu->settings['subMenu']->view;
  359. $lang->stage->attribute['design']->menu->settings['subMenu']->team = $lang->execution->menu->settings['subMenu']->team;
  360. $lang->stage->attribute['design']->menu->settings['subMenu']->whitelist = $lang->execution->menu->settings['subMenu']->whitelist;
  361. $lang->stage->attribute['design']->menu->settings['menuOrder'][5] = 'view';
  362. $lang->stage->attribute['design']->menu->settings['menuOrder'][10] = 'team';
  363. $lang->stage->attribute['design']->menu->settings['menuOrder'][15] = 'whitelist';
  364. $lang->stage->attribute['design']->dividerMenu = ',story,';
  365. $lang->stage->attribute['qa'] = new stdclass();
  366. $lang->stage->attribute['qa']->menu = new stdclass();
  367. $lang->stage->attribute['qa']->menu->task = $lang->execution->menu->task;
  368. $lang->stage->attribute['qa']->menu->kanban = $lang->execution->menu->kanban;
  369. $lang->stage->attribute['qa']->menu->burn = $lang->execution->menu->burn;
  370. $lang->stage->attribute['qa']->menu->view = $lang->execution->menu->view;
  371. $lang->stage->attribute['qa']->menu->story = $lang->execution->menu->story;
  372. $lang->stage->attribute['qa']->menu->qa = $lang->execution->menu->qa;
  373. $lang->stage->attribute['qa']->menu->effort = $lang->execution->menu->effort;
  374. $lang->stage->attribute['qa']->menu->doc = $lang->execution->menu->doc;
  375. $lang->stage->attribute['qa']->menu->build = $lang->execution->menu->build;
  376. $lang->stage->attribute['qa']->menu->action = $lang->execution->menu->action;
  377. $lang->stage->attribute['qa']->menu->settings = $lang->execution->menu->settings;
  378. if(isset($lang->execution->menu->more)) $lang->stage->attribute['qa']->menu->more = $lang->execution->menu->more;
  379. /* Execution menu order. */
  380. $lang->stage->attribute['qa']->menuOrder[5] = 'task';
  381. $lang->stage->attribute['qa']->menuOrder[10] = 'kanban';
  382. $lang->stage->attribute['qa']->menuOrder[15] = 'burn';
  383. $lang->stage->attribute['qa']->menuOrder[20] = 'view';
  384. $lang->stage->attribute['qa']->menuOrder[25] = 'story';
  385. $lang->stage->attribute['qa']->menuOrder[30] = 'qa';
  386. $lang->stage->attribute['qa']->menuOrder[35] = 'effort';
  387. $lang->stage->attribute['qa']->menuOrder[40] = 'doc';
  388. $lang->stage->attribute['qa']->menuOrder[50] = 'build';
  389. $lang->stage->attribute['qa']->menuOrder[55] = 'action';
  390. $lang->stage->attribute['qa']->menuOrder[60] = 'settings';
  391. $lang->stage->attribute['qa']->menuOrder[65] = 'more';
  392. $lang->stage->attribute['qa']->dividerMenu = ',story,build,';
  393. $lang->stage->attribute['release'] = new stdclass();
  394. $lang->stage->attribute['release']->menu = new stdclass();
  395. $lang->stage->attribute['release']->menu->task = $lang->execution->menu->task;
  396. $lang->stage->attribute['release']->menu->kanban = $lang->execution->menu->kanban;
  397. $lang->stage->attribute['release']->menu->burn = $lang->execution->menu->burn;
  398. $lang->stage->attribute['release']->menu->view = $lang->execution->menu->view;
  399. $lang->stage->attribute['release']->menu->story = $lang->execution->menu->story;
  400. $lang->stage->attribute['release']->menu->qa = $lang->execution->menu->qa;
  401. $lang->stage->attribute['release']->menu->effort = $lang->execution->menu->effort;
  402. $lang->stage->attribute['release']->menu->doc = $lang->execution->menu->doc;
  403. $lang->stage->attribute['release']->menu->build = $lang->execution->menu->build;
  404. $lang->stage->attribute['release']->menu->action = $lang->execution->menu->action;
  405. $lang->stage->attribute['release']->menu->settings = $lang->execution->menu->settings;
  406. if(isset($lang->execution->menu->devops)) $lang->stage->attribute['release']->menu->devops = $lang->execution->menu->devops;
  407. if(isset($lang->execution->menu->more)) $lang->stage->attribute['release']->menu->more = $lang->execution->menu->more;
  408. /* Execution menu order. */
  409. $lang->stage->attribute['release']->menuOrder[5] = 'task';
  410. $lang->stage->attribute['release']->menuOrder[10] = 'kanban';
  411. $lang->stage->attribute['release']->menuOrder[15] = 'burn';
  412. $lang->stage->attribute['release']->menuOrder[20] = 'view';
  413. $lang->stage->attribute['release']->menuOrder[25] = 'story';
  414. $lang->stage->attribute['release']->menuOrder[30] = 'qa';
  415. $lang->stage->attribute['release']->menuOrder[35] = 'devops';
  416. $lang->stage->attribute['release']->menuOrder[40] = 'effort';
  417. $lang->stage->attribute['release']->menuOrder[45] = 'doc';
  418. $lang->stage->attribute['release']->menuOrder[55] = 'build';
  419. $lang->stage->attribute['release']->menuOrder[60] = 'action';
  420. $lang->stage->attribute['release']->menuOrder[65] = 'settings';
  421. $lang->stage->attribute['release']->menuOrder[65] = 'more';
  422. $lang->stage->attribute['release']->dividerMenu = ',story,build,';
  423. $lang->stage->attribute['review'] = new stdclass();
  424. $lang->stage->attribute['review']->menu = new stdclass();
  425. $lang->stage->attribute['review']->menu->task = $lang->execution->menu->task;
  426. $lang->stage->attribute['review']->menu->kanban = $lang->execution->menu->kanban;
  427. $lang->stage->attribute['review']->menu->burn = $lang->execution->menu->burn;
  428. $lang->stage->attribute['review']->menu->view = $lang->execution->menu->view;
  429. $lang->stage->attribute['review']->menu->effort = $lang->execution->menu->effort;
  430. $lang->stage->attribute['review']->menu->doc = $lang->execution->menu->doc;
  431. $lang->stage->attribute['review']->menu->action = $lang->execution->menu->action;
  432. $lang->stage->attribute['review']->menu->settings = $lang->execution->menu->settings;
  433. if(isset($lang->execution->menu->more)) $lang->stage->attribute['review']->menu->more = $lang->execution->menu->more;
  434. /* Execution menu order. */
  435. $lang->stage->attribute['review']->menuOrder[5] = 'task';
  436. $lang->stage->attribute['review']->menuOrder[10] = 'kanban';
  437. $lang->stage->attribute['review']->menuOrder[15] = 'burn';
  438. $lang->stage->attribute['review']->menuOrder[20] = 'view';
  439. $lang->stage->attribute['review']->menuOrder[25] = 'effort';
  440. $lang->stage->attribute['review']->menuOrder[30] = 'doc';
  441. $lang->stage->attribute['review']->menuOrder[40] = 'action';
  442. $lang->stage->attribute['review']->menuOrder[45] = 'settings';
  443. $lang->stage->attribute['review']->menuOrder[50] = 'more';
  444. $lang->stage->attribute['review']->menu->settings['subMenu'] = new stdclass();
  445. $lang->stage->attribute['review']->menu->settings['subMenu']->view = $lang->execution->menu->settings['subMenu']->view;
  446. $lang->stage->attribute['review']->menu->settings['subMenu']->team = $lang->execution->menu->settings['subMenu']->team;
  447. $lang->stage->attribute['review']->menu->settings['subMenu']->whitelist = $lang->execution->menu->settings['subMenu']->whitelist;
  448. $lang->stage->attribute['review']->menu->settings['menuOrder'][5] = 'view';
  449. $lang->stage->attribute['review']->menu->settings['menuOrder'][10] = 'team';
  450. $lang->stage->attribute['review']->menu->settings['menuOrder'][15] = 'whitelist';
  451. $lang->stage->attribute['review']->dividerMenu = ',effort,';
  452. if($config->vision != 'rnd') unset($lang->project->homeMenu->template);
  453. if(!helper::hasFeature('issue'))
  454. {
  455. unset($lang->my->menu->work['subMenu']->issue, $lang->my->menu->work['menuOrder'][40]);
  456. unset($lang->my->menu->contribute['subMenu']->issue, $lang->my->menu->contribute['menuOrder'][45]);
  457. }
  458. if(!helper::hasFeature('risk'))
  459. {
  460. unset($lang->my->menu->work['subMenu']->risk, $lang->my->menu->work['menuOrder'][45]);
  461. unset($lang->my->menu->contribute['subMenu']->risk, $lang->my->menu->contribute['menuOrder'][50]);
  462. }
  463. if(!helper::hasFeature('auditplan'))
  464. {
  465. unset($lang->my->menu->work['subMenu']->nc, $lang->my->menu->work['menuOrder'][50]);
  466. unset($lang->my->menu->contribute['subMenu']->nc, $lang->my->menu->contribute['menuOrder'][55]);
  467. }
  468. if(!helper::hasFeature('meeting'))
  469. {
  470. unset($lang->my->menu->meeting, $lang->my->menuOrder[41]);
  471. unset($lang->my->menu->work['subMenu']->myMeeting, $lang->my->menu->work['menuOrder'][55]);
  472. }
  473. if(!helper::hasFeature('storylib')) unset($lang->assetlib->menu->storylib);
  474. if(!helper::hasFeature('caselib')) unset($lang->assetlib->menu->caselib);
  475. if(!helper::hasFeature('issuelib')) unset($lang->assetlib->menu->issuelib);
  476. if(!helper::hasFeature('risklib')) unset($lang->assetlib->menu->risklib);
  477. if(!helper::hasFeature('opportunitylib')) unset($lang->assetlib->menu->opportunitylib);
  478. if(!helper::hasFeature('practicelib')) unset($lang->assetlib->menu->practicelib);
  479. if(!helper::hasFeature('componentlib')) unset($lang->assetlib->menu->componentlib);
  480. if(!helper::hasFeature('deliverable'))
  481. {
  482. unset($lang->project->noMultiple->scrum->menu->auditplan['subMenu']->deliverable);
  483. unset($lang->execution->menu->auditplan['subMenu']->deliverable);
  484. unset($lang->waterfall->menu->auditplan['subMenu']->deliverable);
  485. }
  486. $lang->bi->menu->reportTemplate = array('link' => "{$lang->reporttemplate->common}|reporttemplate|browse", 'alias' => 'browse,create,edit,view');
  487. $lang->bi->menuOrder[40] = 'reportTemplate';
  488. if(!helper::hasFeature('kanban')) $lang->dividerMenu = str_replace(',kanban,', ',assetlib,', $lang->dividerMenu);
  489. if(!helper::hasFeature('assetlib'))
  490. {
  491. unset($lang->mainNav->assetlib, $lang->mainNav->menuOrder[57]);
  492. }
  493. else
  494. {
  495. $assetlibMenus = array_keys((array)$lang->assetlib->menu);
  496. $methodName = reset($assetlibMenus);
  497. $lang->mainNav->assetlib = "{$lang->navIcons['assetlib']} {$lang->assetlib->common}|assetlib|$methodName|";
  498. }
  499. if(!helper::hasFeature('workestimation')) unset($lang->waterfall->menu->other['dropMenu']->estimation);
  500. $lang->doc->menu->template = array('link' => "模板廣場|doc|browseTemplate|", 'alias' => 'browsetemplate');
  501. $lang->doc->menuOrder[35] = 'template';
  502. $lang->doc->dividerMenu .= ',template,';