mirror of https://gitee.com/karson/fastadmin.git
新增自定义会员等级&会员主页URL&是否启用字母头像
parent
05a18ca601
commit
f45090391e
|
|
@ -4,7 +4,6 @@ return [
|
|||
'User id' => '会员ID',
|
||||
'Username' => '用户名',
|
||||
'Nickname' => '昵称',
|
||||
'Mobile' => '手机',
|
||||
'Email' => '邮箱',
|
||||
'Password' => '密码',
|
||||
'Mobile' => '手机号',
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ class User extends Model
|
|||
*/
|
||||
public function getUrlAttr($value, $data)
|
||||
{
|
||||
return "/u/" . $data['id'];
|
||||
return str_replace("{uid}", $data['id'], config('fastadmin.user_home_url') ?: "/u/{uid}");
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -45,11 +45,9 @@ class User extends Model
|
|||
public function getAvatarAttr($value, $data)
|
||||
{
|
||||
if (!$value) {
|
||||
//如果不需要启用首字母头像,请使用
|
||||
//$value = '/assets/img/avatar.png';
|
||||
$value = letter_avatar($data['nickname']);
|
||||
$value = config('fastadmin.user_letter_avatar') ? letter_avatar($data['nickname']) : '/assets/img/avatar.png';
|
||||
}
|
||||
return $value;
|
||||
return cdnurl($value, true);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -124,9 +122,16 @@ class User extends Model
|
|||
if ($user && $score != 0) {
|
||||
$before = $user->score;
|
||||
$after = $user->score + $score;
|
||||
$level = self::nextlevel($after);
|
||||
$data = ['score' => $after];
|
||||
$levelrule = config('fastadmin.user_level_rule') ?: '';
|
||||
if (in_array($levelrule, ['auto', 'up'])) {
|
||||
$level = self::nextlevel($after);
|
||||
if ($levelrule == 'auto' || $level > $user['level']) {
|
||||
$data['level'] = $level;
|
||||
}
|
||||
}
|
||||
//更新会员信息
|
||||
$user->save(['score' => $after, 'level' => $level]);
|
||||
$user->save($data);
|
||||
//写入日志
|
||||
ScoreLog::create(['user_id' => $user_id, 'score' => $score, 'before' => $before, 'after' => $after, 'memo' => $memo]);
|
||||
}
|
||||
|
|
@ -143,9 +148,9 @@ class User extends Model
|
|||
*/
|
||||
public static function nextlevel($score = 0)
|
||||
{
|
||||
$lv = array(1 => 0, 2 => 30, 3 => 100, 4 => 500, 5 => 1000, 6 => 2000, 7 => 3000, 8 => 5000, 9 => 8000, 10 => 10000);
|
||||
$levelDict = config('fastadmin.user_level_dict') ?: [];
|
||||
$level = 1;
|
||||
foreach ($lv as $key => $value) {
|
||||
foreach ($levelDict as $key => $value) {
|
||||
if ($score >= $value) {
|
||||
$level = $key;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -271,6 +271,14 @@ return [
|
|||
'usercenter' => true,
|
||||
//会员注册验证码类型email/mobile/wechat/text/false
|
||||
'user_register_captcha' => 'text',
|
||||
//会员主页URL规则
|
||||
'user_home_url' => '/u/{uid}',
|
||||
//是否启用会员字母头像
|
||||
'user_letter_avatar' => true,
|
||||
//是否启用会员等级规则none/auto/up,auto表示自动升降级,up表示只升不降
|
||||
'user_level_rule' => '',
|
||||
//会员等级积分字典
|
||||
'user_level_dict' => [1 => 0, 2 => 30, 3 => 100, 4 => 500, 5 => 1000, 6 => 2000, 7 => 3000, 8 => 5000, 9 => 8000, 10 => 10000],
|
||||
//登录验证码
|
||||
'login_captcha' => true,
|
||||
//登录失败超过10次则1天后重试
|
||||
|
|
|
|||
Loading…
Reference in New Issue