mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-24 01:50:38 +00:00
splitted user name
This commit is contained in:
@@ -31,9 +31,14 @@ class CreateNewUserAction extends Controller
|
||||
'email' => $data->email,
|
||||
]);
|
||||
|
||||
// Split username
|
||||
$name = split_name($data->name);
|
||||
|
||||
// Store user data
|
||||
$user->settings()->create([
|
||||
'name' => $data->name,
|
||||
'avatar' => $data->avatar,
|
||||
'first_name' => $name['first_name'],
|
||||
'last_name' => $name['last_name'],
|
||||
'avatar' => $data->avatar,
|
||||
]);
|
||||
|
||||
// Subscribe user for metered billing
|
||||
|
||||
@@ -22,7 +22,7 @@ class CheckAccountController extends Controller
|
||||
}
|
||||
|
||||
return [
|
||||
'name' => $user->settings->name,
|
||||
'name' => $user->settings->first_name,
|
||||
'avatar' => $user->settings->avatar,
|
||||
'verified' => $user->email_verified_at ? 1 : 0,
|
||||
'oauth_provider' => $user->password ? null : $user->oauth_provider,
|
||||
|
||||
@@ -6,6 +6,7 @@ use Laravel\Scout\Searchable;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Support\Facades\Storage;
|
||||
use TeamTNT\TNTSearch\Indexer\TNTIndexer;
|
||||
use Database\Factories\UserSettingFactory;
|
||||
use Illuminate\Database\Eloquent\Relations\HasOne;
|
||||
|
||||
class UserSetting extends Model
|
||||
@@ -24,12 +25,19 @@ class UserSetting extends Model
|
||||
'id' => 'string',
|
||||
];
|
||||
|
||||
protected $appends = [
|
||||
'name',
|
||||
];
|
||||
|
||||
protected static function newFactory(): UserSettingFactory
|
||||
{
|
||||
return UserSettingFactory::new();
|
||||
}
|
||||
|
||||
/**
|
||||
* Format avatar to full url
|
||||
*
|
||||
* @return \Illuminate\Contracts\Routing\UrlGenerator|string|array
|
||||
*/
|
||||
public function getAvatarAttribute()
|
||||
public function getAvatarAttribute(): array|string
|
||||
{
|
||||
$link = [];
|
||||
|
||||
@@ -61,6 +69,11 @@ class UserSetting extends Model
|
||||
return $link;
|
||||
}
|
||||
|
||||
public function getNameAttribute(): string
|
||||
{
|
||||
return $this->first_name . ' ' . $this->last_name;
|
||||
}
|
||||
|
||||
public function user(): HasOne
|
||||
{
|
||||
return $this->hasOne(User::class, 'id', 'user_id');
|
||||
@@ -94,7 +107,7 @@ class UserSetting extends Model
|
||||
|
||||
static::creating(function ($user) {
|
||||
$user->id = Str::uuid();
|
||||
$user->color = ['#9ad2bf', '#9ad2cd', '#d29a9a', '#d2ce9a', '#9aadd2', '#c59ad2'][rand(0, 5)];
|
||||
$user->color = config('vuefilemanager.colors')[rand(0, 5)];
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
<?php
|
||||
|
||||
namespace App\Users\Resources;
|
||||
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
@@ -20,6 +21,8 @@ class SettingsResource extends JsonResource
|
||||
'attributes' => [
|
||||
'avatar' => $this->avatar,
|
||||
'name' => $this->name,
|
||||
'first_name' => $this->first_name,
|
||||
'last_name' => $this->last_name,
|
||||
'address' => $this->address,
|
||||
'state' => $this->state,
|
||||
'city' => $this->city,
|
||||
|
||||
@@ -75,7 +75,7 @@ class UserResource extends JsonResource
|
||||
$this->mergeWhen($isMeteredSubscription, fn () => [
|
||||
'totalDebt' => [
|
||||
'formatted' => format_currency($this->failedPayments->sum('amount'), $this->subscription->plan->currency),
|
||||
'amount' => $this->failedPayments->sum('amount'),
|
||||
'amount' => $this->failedPayments->sum('amount'),
|
||||
],
|
||||
]),
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user