feat: 通过链接邀请加入项目

This commit is contained in:
kuaifan
2021-12-26 23:38:25 +08:00
parent 0665f2de5f
commit dd86bb88c6
10 changed files with 386 additions and 11 deletions

View File

@@ -24,7 +24,8 @@ class SystemController extends AbstractController
*
* @apiParam {String} type
* - get: 获取(默认)
* - save: 保存设置参数reg、login_code、password_policy、chat_nickname
* - all: 获取所有(需要管理员权限
* - save: 保存设置参数reg、reg_invite、login_code、password_policy、project_invite、chat_nickname
* @apiSuccess {Number} ret 返回状态码1正确、0错误
* @apiSuccess {String} msg 返回信息(错误描述)
@@ -40,7 +41,7 @@ class SystemController extends AbstractController
User::auth('admin');
$all = Request::input();
foreach ($all AS $key => $value) {
if (!in_array($key, ['reg', 'login_code', 'password_policy', 'chat_nickname'])) {
if (!in_array($key, ['reg', 'reg_invite', 'login_code', 'password_policy', 'project_invite', 'chat_nickname'])) {
unset($all[$key]);
}
}
@@ -49,9 +50,17 @@ class SystemController extends AbstractController
$setting = Base::setting('system');
}
//
if ($type == 'all') {
User::auth('admin');
$setting['reg_invite'] = $setting['reg_invite'] ?: Base::generatePassword(8);
} else {
if (isset($setting['reg_invite'])) unset($setting['reg_invite']);
}
//
$setting['reg'] = $setting['reg'] ?: 'open';
$setting['login_code'] = $setting['login_code'] ?: 'auto';
$setting['password_policy'] = $setting['password_policy'] ?: 'simple';
$setting['project_invite'] = $setting['project_invite'] ?: 'open';
$setting['chat_nickname'] = $setting['chat_nickname'] ?: 'optional';
//
return Base::retSuccess('success', $setting ?: json_decode('{}'));