* Adjust the code

This commit is contained in:
lichengjun
2021-06-17 13:05:31 +08:00
parent 06c6deb1ea
commit 2c97d3cc2d
3 changed files with 22 additions and 10 deletions
+17 -8
View File
@@ -83,17 +83,22 @@ class gitlab extends control
{
if($this->post->zentaoUsers)
{
if(count($this->post->zentaoUsers) != count(array_unique($this->post->zentaoUsers)))
{
$this->send(array('result' => 'fail', 'message' => $this->lang->gitlab->bindUserError, 'locate' => inlink('binduser')));
}
$data = array();
$number = 0;
foreach($this->post->zentaoUsers as $gitlabId => $account)
{
if($account)
if($account)
{
$data[$number]['openID'] = $gitlabId;
$data[$number]['account'] = $account;
$data[$number]['providerType'] = 'gitlab';
$data[$number]['providerID'] = $id;
$number++;
$data[$number]['openID'] = $gitlabId;
$data[$number]['account'] = $account;
$data[$number]['providerType'] = 'gitlab';
$data[$number]['providerID'] = $id;
$number++;
}
}
}
@@ -102,10 +107,14 @@ class gitlab extends control
{
if(!$this->gitlab->checkAccountId($bindUser['openID'],$bindUser['providerID']))
{
$this->dao->insert(TABLE_OAUTH)->data($bindUser)->exec();
$this->dao->insert(TABLE_OAUTH)->data($bindUser)->exec();
if(dao::isError()) $this->send(array('result' => 'fail', 'message' => dao::getError()));
$this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'locate' => inlink('binduser')));
}else
{
$this->dao->update(TABLE_OAUTH)->data($bindUser)->where('openID')->eq($bindUser['openID'])->andWhere('providerID')->eq($bindUser['providerID'])->exec();
$this->dao->update(TABLE_OAUTH)->data($bindUser)->where('openID')->eq($bindUser['openID'])->andWhere('providerID')->eq($bindUser['providerID'])->exec();
if(dao::isError()) $this->send(array('result' => 'fail', 'message' => dao::getError()));
$this->send(array('result' => 'success', 'message' => $this->lang->saveSuccess, 'locate' => inlink('binduser')));
}
}
}
+3 -2
View File
@@ -27,5 +27,6 @@ $lang->gitlab->gitlabNameTips = '该名称会显示在其他相应模块中
$lang->gitlab->gitlabUrlTips = "填写示例:https://gitlab.zcorp.cc <br> 仅填写gitlab服务地址,不需要填写其他URI";
$lang->gitlab->gitlabTokenTips = "请填写具有admin权限账户的access token <br> 可在:https://&lt;gitlab url&gt;/-/profile/personal_access_tokens 创建";
$lang->gitlab->tokenError = "当前token非管理员权限。";
$lang->gitlab->hostError = "无效的gitlab服务地址。";
$lang->gitlab->tokenError = "当前token非管理员权限。";
$lang->gitlab->hostError = "无效的gitlab服务地址。";
$lang->gitlab->bindUserError = "禅道用户绑定gitlab服务号失败";
+2
View File
@@ -135,6 +135,8 @@ class gitlabModel extends model
if($gitlabUser->email == $zentaoUser->email) $matches->emails[$gitlabUser->email][] = $zentaoUser->account;
}
}
/*Get binded users from db.*/
$matchedUsers = array();
foreach($gitlabUsers as $gitlabUser)