diff --git a/module/common/lang/menu.php b/module/common/lang/menu.php index 49e4397d59..7a0df2094f 100644 --- a/module/common/lang/menu.php +++ b/module/common/lang/menu.php @@ -681,6 +681,7 @@ $lang->navGroup->caselib = 'qa'; $lang->navGroup->devops = 'devops'; $lang->navGroup->repo = 'devops'; +$lang->navGroup->repo_setRules = 'admin'; $lang->navGroup->job = 'devops'; $lang->navGroup->jenkins = 'devops'; $lang->navGroup->mr = 'devops'; diff --git a/module/group/config.php b/module/group/config.php index 7e673df7fd..1b54dc5875 100644 --- a/module/group/config.php +++ b/module/group/config.php @@ -43,6 +43,6 @@ $config->group->priv->search['params']['recommendPrivs'] = array('operator' => ' $config->group->priv->search['params']['dependPrivs'] = array('operator' => 'include', 'control' => 'select', 'values' => ''); $config->group->priv->search['params']['desc'] = array('operator' => 'include', 'control' => 'input', 'values' => ''); -$config->group->hiddenPriv = array('system-dashboard', 'store-browse', 'store-appView', 'space-getStoreAppInfo', 'system-dblist', 'system-configdomain', 'system-ossview', 'instance-ajaxStart', 'instance-ajaxStop', 'instance-upgrade'); +$config->group->hiddenPriv = array('system-dashboard', 'system-dblist', 'system-configdomain', 'system-ossview'); include 'packagemanager.php'; diff --git a/module/group/lang/en.php b/module/group/lang/en.php index 573eadde36..8ffc419427 100644 --- a/module/group/lang/en.php +++ b/module/group/lang/en.php @@ -580,8 +580,8 @@ $lang->group->package->artifactrepo = 'Artifact Repo'; $lang->group->package->browseArtifactrepo = 'Artifact Repo List'; $lang->group->package->manageArtifactrepo = 'Manage Artifact Repo'; $lang->group->package->deleteArtifactrepo = 'Delete Artifact Repo'; -$lang->group->package->browseInstance = 'Application List'; -$lang->group->package->browseInstance = 'Manage Application'; +$lang->group->package->browseApplication = 'Application List'; +$lang->group->package->mangeApplication = 'Manage Application'; $lang->group->package->trainPracticeLib = 'Practice Library'; $lang->group->package->other = 'Other'; diff --git a/module/group/lang/resource.php b/module/group/lang/resource.php index cf5f0d02da..7250b0237a 100644 --- a/module/group/lang/resource.php +++ b/module/group/lang/resource.php @@ -1311,7 +1311,6 @@ $lang->repo->methodOrder[45] = 'log'; $lang->repo->methodOrder[50] = 'revision'; $lang->repo->methodOrder[55] = 'blame'; $lang->repo->methodOrder[60] = 'download'; -$lang->repo->methodOrder[65] = 'setRules'; $lang->repo->methodOrder[70] = 'apiGetRepoByUrl'; $lang->repo->methodOrder[75] = 'downloadCode'; $lang->repo->methodOrder[80] = 'linkStory'; @@ -1376,6 +1375,24 @@ $lang->serverroom->methodOrder[10] = 'edit'; $lang->serverroom->methodOrder[15] = 'delete'; $lang->serverroom->methodOrder[20] = 'view'; +$lang->resource->instance = new stdclass(); +$lang->resource->instance->manage = 'manage'; + +$lang->resource->space = new stdclass(); +$lang->resource->space->browse = 'browse'; + +$lang->resource->system = new stdclass(); +$lang->resource->system->dashboard = 'dashboard'; +$lang->resource->system->dblist = 'dbList'; +$lang->resource->system->configdomain = 'configDomain'; +$lang->resource->system->ossview = 'ossView'; + +$lang->resource->ops = new stdclass(); +$lang->resource->ops->provide = 'provider'; +$lang->resource->ops->city = 'city'; +$lang->resource->ops->cpubrand = 'cpuBrand'; +$lang->resource->ops->os = 'os'; + /* Doc. */ $lang->resource->doc = new stdclass(); $lang->resource->doc->index = 'index'; @@ -1542,9 +1559,6 @@ $lang->mr->methodOrder[95] = 'addReview'; /* App. */ $lang->resource->app = new stdclass(); -$lang->resource->app->serverlink = 'serverLink'; - -$lang->app->methodOrder[10] = 'link'; /* Git. */ $lang->resource->git = new stdclass(); @@ -2019,9 +2033,6 @@ $lang->resource->codereview = new stdclass(); $lang->resource->repocode = new stdclass(); $lang->resource->artifactrepo = new stdclass(); $lang->resource->deploy = new stdclass(); -$lang->resource->ops = new stdclass(); -$lang->resource->instance = new stdclass(); -$lang->resource->space = new stdclass(); global $config; $inUpgrade = (defined('IN_UPGRADE') and IN_UPGRADE); diff --git a/module/group/lang/zh-cn.php b/module/group/lang/zh-cn.php index 661c66ce56..1f2e94be2c 100644 --- a/module/group/lang/zh-cn.php +++ b/module/group/lang/zh-cn.php @@ -580,8 +580,8 @@ $lang->group->package->artifactrepo = '制品库'; $lang->group->package->browseArtifactrepo = '浏览制品库'; $lang->group->package->manageArtifactrepo = '创建维护制品库'; $lang->group->package->deleteArtifactrepo = '删除制品库'; -$lang->group->package->browseInstance = '浏览应用'; -$lang->group->package->browseInstance = '管理应用'; +$lang->group->package->browseApplication = '浏览应用'; +$lang->group->package->mangeApplication = '管理应用'; $lang->group->package->trainPracticeLib = '实践库'; $lang->group->package->other = '其他'; diff --git a/module/group/model.php b/module/group/model.php index 8c3e562f73..00cf4bb1b3 100644 --- a/module/group/model.php +++ b/module/group/model.php @@ -771,14 +771,24 @@ class groupModel extends model * @param string $nav * @param string $moduleName * @access public - * @return void + * @return bool */ - public function checkNavModule($nav, $moduleName) + public function checkNavModule($nav, $moduleName, $methodName = '') { if(empty($nav)) return true; if($nav == 'general' and (isset($this->lang->navGroup->$moduleName) or isset($this->lang->mainNav->$moduleName))) return false; - if($nav != 'general' and !($moduleName == $nav or (isset($this->lang->navGroup->$moduleName) and $this->lang->navGroup->$moduleName == $nav))) return false; + if($nav != 'general') + { + if($moduleName === $nav) return true; + if(isset($this->lang->navGroup->{$moduleName . '_' . $methodName})) + { + if($this->lang->navGroup->{$moduleName . '_' . $methodName} === $nav) return true; + return false; + } + if(isset($this->lang->navGroup->$moduleName) and $this->lang->navGroup->$moduleName == $nav) return true; + return false; + } if($nav == 'project' and strpos('caselib|testsuite|report', $moduleName) !== false) return false; return true; @@ -1742,18 +1752,19 @@ class groupModel extends model list($moduleName, $methodName) = explode('-', $privCode); $allPrivs[$privCode] = $privCode; + if(!$this->config->inQuickon && in_array("{$moduleName}-{$methodName}", $this->config->group->hiddenPriv)) continue; if(strpos(',' . $priv['edition'] . ',', ',' . $this->config->edition . ',') === false) continue; if(strpos(',' . $priv['vision'] . ',', ',' . $this->config->vision . ',') === false) continue; - if(!$this->checkNavModule($nav, $moduleName)) continue; + if(!$this->checkNavModule($nav, $moduleName, $methodName)) continue; /* If version is selected, only show privs before the version. */ if(!empty($version) and strpos($versionPrivs, ",$privCode,") === false) continue; /* Remove privs unused in the edition. */ if(!isset($this->lang->resource->$moduleName) || !isset($this->lang->resource->$moduleName->$methodName)) continue; - $methodLang = $this->lang->resource->$moduleName->$methodName; + if(!isset($this->lang->$moduleName->$methodLang)) $this->app->loadLang($moduleName); $priv = (object)array('subset' => $packageData->subset, 'package' => $packageCode, 'module' => $moduleName, 'method' => $methodName, 'selected' => false, 'name' => $this->lang->$moduleName->$methodLang); $privList[$privCode] = $priv; diff --git a/module/group/packagemanager.php b/module/group/packagemanager.php index 715d2be513..add040bab4 100644 --- a/module/group/packagemanager.php +++ b/module/group/packagemanager.php @@ -1627,6 +1627,12 @@ $config->group->package->manageTrainCourse->privs['traincourse-uploadCourse'] = $config->group->package->manageTrainCourse->privs['traincourse-batchImport'] = array('edition' => 'biz,max,ipd', 'vision' => 'rnd', 'order' => 4, 'depend' => array(), 'recommend' => array()); $config->group->package->manageTrainCourse->privs['traincourse-cloudImport'] = array('edition' => 'biz,max,ipd', 'vision' => 'rnd', 'order' => 10, 'depend' => array(), 'recommend' => array()); +$config->group->package->dashboard = new stdclass(); +$config->group->package->dashboard->order = 2160; +$config->group->package->dashboard->subset = 'ops'; +$config->group->package->dashboard->privs = array(); +$config->group->package->dashboard->privs['system-dashboard'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 5, 'depend' => array(), 'recommend' => array()); + $config->group->package->system = new stdclass(); $config->group->package->system->order = 2180; $config->group->package->system->subset = 'ops'; @@ -2690,12 +2696,6 @@ $config->group->package->sonarqube = new stdclass(); $config->group->package->sonarqube->order = 30; $config->group->package->sonarqube->subset = 'repo'; -$config->group->package->repoRules = new stdclass(); -$config->group->package->repoRules->order = 2380; -$config->group->package->repoRules->subset = 'ops'; -$config->group->package->repoRules->privs = array(); -$config->group->package->repoRules->privs['repo-setRules'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 5, 'depend' => array(), 'recommend' => array()); - $config->group->package->browseJob = new stdclass(); $config->group->package->browseJob->order = 5; $config->group->package->browseJob->subset = 'pipeline'; @@ -3822,12 +3822,6 @@ $config->group->package->deletePrompt->subset = 'ai'; $config->group->package->deletePrompt->privs = array(); $config->group->package->deletePrompt->privs['ai-promptDelete'] = array('edition' => 'biz,max,ipd', 'vision' => 'rnd', 'order' => 30, 'depend' => array('ai-prompts', 'ai-promptView'), 'recommend' => array()); -$config->group->package->dashboard = new stdclass(); -$config->group->package->dashboard->order = 2160; -$config->group->package->dashboard->subset = 'ops'; -$config->group->package->dashboard->privs = array(); -$config->group->package->dashboard->privs['system-dashboard'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 5, 'depend' => array(), 'recommend' => array()); - $config->group->package->resource = new stdclass(); $config->group->package->resource->order = 2200; $config->group->package->resource->subset = 'ops'; @@ -3856,6 +3850,12 @@ $config->group->package->manageOS->subset = 'ops'; $config->group->package->manageOS->privs = array(); $config->group->package->manageOS->privs['ops-os'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 35, 'depend' => array(), 'recommend' => array()); +$config->group->package->repoRules = new stdclass(); +$config->group->package->repoRules->order = 2380; +$config->group->package->repoRules->subset = 'ops'; +$config->group->package->repoRules->privs = array(); +$config->group->package->repoRules->privs['repo-setRules'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 5, 'depend' => array(), 'recommend' => array()); + $config->group->package->browseRepo = new stdclass(); $config->group->package->browseRepo->order = 2420; $config->group->package->browseRepo->subset = 'repo'; @@ -3947,17 +3947,16 @@ $config->group->package->deleteArtifactrepo->subset = 'artifactrepo'; $config->group->package->deleteArtifactrepo->privs = array(); $config->group->package->deleteArtifactrepo->privs['artifactrepo-delete'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 5, 'depend' => array(), 'recommend' => array()); -$config->group->package->application = new stdclass(); -$config->group->package->application->order = 2840; -$config->group->package->application->subset = 'app'; -$config->group->package->application->privs = array(); -$config->group->package->application->privs['space-browse'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 5, 'depend' => array(), 'recommend' => array()); - -$config->group->package->application = new stdclass(); -$config->group->package->application->order = 2860; -$config->group->package->application->subset = 'app'; -$config->group->package->application->privs = array(); -$config->group->package->application->privs['instance-manage'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 10, 'depend' => array(), 'recommend' => array()); +$config->group->package->browseApplication = new stdclass(); +$config->group->package->browseApplication->order = 2840; +$config->group->package->browseApplication->subset = 'app'; +$config->group->package->browseApplication->privs = array(); +$config->group->package->browseApplication->privs['space-browse'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 5, 'depend' => array(), 'recommend' => array()); +$config->group->package->mangeApplication = new stdclass(); +$config->group->package->mangeApplication->order = 2840; +$config->group->package->mangeApplication->subset = 'app'; +$config->group->package->mangeApplication->privs = array(); +$config->group->package->mangeApplication->privs['instance-manage'] = array('edition' => 'open,biz,max,ipd', 'vision' => 'rnd', 'order' => 10, 'depend' => array(), 'recommend' => array()); $config->group->package->trainPracticeLib = new stdclass(); $config->group->package->trainPracticeLib->order = 8; diff --git a/module/system/lang/de.php b/module/system/lang/de.php index a6dd3757d4..5f21f0be09 100644 --- a/module/system/lang/de.php +++ b/module/system/lang/de.php @@ -1,9 +1,12 @@ system->common = 'Dashboard'; $lang->system->dashboard = 'Dashboard'; $lang->system->systemInfo = 'System information'; $lang->system->dbManagement = 'Database management'; $lang->system->ldapManagement = 'LDAP'; $lang->system->dbList = 'Database list'; +$lang->system->configDomain = 'Config Domain'; +$lang->system->ossview = 'OSS'; $lang->system->dbName = 'Name'; $lang->system->dbStatus = 'Status'; $lang->system->dbType = 'Type'; diff --git a/module/system/lang/en.php b/module/system/lang/en.php index a6dd3757d4..5f21f0be09 100644 --- a/module/system/lang/en.php +++ b/module/system/lang/en.php @@ -1,9 +1,12 @@ system->common = 'Dashboard'; $lang->system->dashboard = 'Dashboard'; $lang->system->systemInfo = 'System information'; $lang->system->dbManagement = 'Database management'; $lang->system->ldapManagement = 'LDAP'; $lang->system->dbList = 'Database list'; +$lang->system->configDomain = 'Config Domain'; +$lang->system->ossview = 'OSS'; $lang->system->dbName = 'Name'; $lang->system->dbStatus = 'Status'; $lang->system->dbType = 'Type'; diff --git a/module/system/lang/fr.php b/module/system/lang/fr.php index a6dd3757d4..5f21f0be09 100644 --- a/module/system/lang/fr.php +++ b/module/system/lang/fr.php @@ -1,9 +1,12 @@ system->common = 'Dashboard'; $lang->system->dashboard = 'Dashboard'; $lang->system->systemInfo = 'System information'; $lang->system->dbManagement = 'Database management'; $lang->system->ldapManagement = 'LDAP'; $lang->system->dbList = 'Database list'; +$lang->system->configDomain = 'Config Domain'; +$lang->system->ossview = 'OSS'; $lang->system->dbName = 'Name'; $lang->system->dbStatus = 'Status'; $lang->system->dbType = 'Type'; diff --git a/module/system/lang/zh-cn.php b/module/system/lang/zh-cn.php index ed664297e3..4706daa40c 100644 --- a/module/system/lang/zh-cn.php +++ b/module/system/lang/zh-cn.php @@ -1,9 +1,12 @@ system->dashboard = '仪表盘'; +$lang->system->common = '仪表盘'; +$lang->system->dashboard = 'DevOps平台仪表盘'; $lang->system->systemInfo = '系统信息'; $lang->system->dbManagement = '数据库管理'; $lang->system->ldapManagement = 'LDAP'; $lang->system->dbList = '数据库列表'; +$lang->system->configDomain = '域名管理'; +$lang->system->ossView = '对象存储管理'; $lang->system->dbName = '名称'; $lang->system->dbStatus = '状态'; $lang->system->dbType = '类型'; diff --git a/module/system/view/index.html.php b/module/system/view/index.html.php index a76bff722e..4630e5a335 100644 --- a/module/system/view/index.html.php +++ b/module/system/view/index.html.php @@ -17,7 +17,7 @@