diff --git a/module/install/config.php b/module/install/config.php new file mode 100644 index 0000000000..7d2a5eb54b --- /dev/null +++ b/module/install/config.php @@ -0,0 +1,3 @@ +install = new stdclass(); +$config->install->step5RequiredFields = 'company,account,password'; diff --git a/module/install/lang/en.php b/module/install/lang/en.php index 9c40159df1..bad6504dce 100644 --- a/module/install/lang/en.php +++ b/module/install/lang/en.php @@ -157,7 +157,10 @@ $lang->install->getPriv = 'Set Admin'; $lang->install->company = 'Company Name'; $lang->install->account = 'Admin Account'; $lang->install->password = 'Admin Password'; -$lang->install->errorEmptyPassword = 'Password should not be blank.'; + +$lang->install->errorEmpty['company'] = "{$lang->install->company} should not be blank."; +$lang->install->errorEmpty['account'] = "{$lang->install->account} should not be blank."; +$lang->install->errorEmpty['password'] = "{$lang->install->password} should not be blank."; $lang->install->processList['11'] = 'Project management'; $lang->install->processList['12'] = 'Project planning'; diff --git a/module/install/lang/zh-cn.php b/module/install/lang/zh-cn.php index 04d06127a2..393e2c1418 100644 --- a/module/install/lang/zh-cn.php +++ b/module/install/lang/zh-cn.php @@ -157,7 +157,10 @@ $lang->install->getPriv = '设置帐号'; $lang->install->company = '公司名称'; $lang->install->account = '管理员帐号'; $lang->install->password = '管理员密码'; -$lang->install->errorEmptyPassword = '密码不能为空'; + +$lang->install->errorEmpty['company'] = "{$lang->install->company}不能为空"; +$lang->install->errorEmpty['account'] = "{$lang->install->account}不能为空"; +$lang->install->errorEmpty['password'] = "{$lang->install->password}不能为空"; $lang->install->processList['11'] = '立项管理'; $lang->install->processList['12'] = '项目规划'; diff --git a/module/install/model.php b/module/install/model.php index 6a2eb8120c..c4ab6ccb7b 100644 --- a/module/install/model.php +++ b/module/install/model.php @@ -502,13 +502,21 @@ class installModel extends model */ public function grantPriv() { - if($this->post->password == '') return print(js::error($this->lang->install->errorEmptyPassword)); + $requiredFields = explode(',', $this->config->install->step5RequiredFields); + foreach($requiredFields as $field) + { + if(empty($this->post->{$field})) + { + dao::$errors[] = $this->lang->install->errorEmpty[$field]; + return false; + } + } /* Insert a company. */ $company = new stdclass(); $company->name = $this->post->company; $company->admins = ",{$this->post->account},"; - $this->dao->insert(TABLE_COMPANY)->data($company)->autoCheck()->batchCheck('name', 'notempty')->exec(); + $this->dao->insert(TABLE_COMPANY)->data($company)->autoCheck()->exec(); if(!dao::isError()) { /* Set admin. */ @@ -518,7 +526,7 @@ class installModel extends model $admin->password = md5($this->post->password); $admin->gender = 'f'; $admin->visions = 'rnd,lite'; - $this->dao->replace(TABLE_USER)->data($admin)->check('account', 'notempty')->exec(); + $this->dao->replace(TABLE_USER)->data($admin)->exec(); } }