Changeset View
Changeset View
Standalone View
Standalone View
src/app/Observers/UserObserver.php
Show All 40 Lines | class UserObserver | ||||
* Should ensure some basic settings are available as well. | * Should ensure some basic settings are available as well. | ||||
* | * | ||||
* @param \App\User $user The user created. | * @param \App\User $user The user created. | ||||
* | * | ||||
* @return void | * @return void | ||||
*/ | */ | ||||
public function created(User $user) | public function created(User $user) | ||||
{ | { | ||||
// FIXME: Actual proper settings | $settings = [ | ||||
$user->setSettings( | |||||
[ | |||||
'country' => 'CH', | 'country' => 'CH', | ||||
'currency' => 'CHF', | 'currency' => 'CHF', | ||||
/* | |||||
'first_name' => '', | 'first_name' => '', | ||||
'last_name' => '', | 'last_name' => '', | ||||
'billing_address' => '', | 'billing_address' => '', | ||||
'organization' => '' | 'organization' => '', | ||||
] | 'phone' => '', | ||||
); | 'external_email' => '', | ||||
*/ | |||||
]; | |||||
foreach ($settings as $key => $value) { | |||||
$settings[$key] = [ | |||||
'key' => $key, | |||||
'value' => $value, | |||||
'user_id' => $user->id, | |||||
]; | |||||
} | |||||
// Note: Don't use setSettings() here to bypass UserSetting observers | |||||
// Note: This is a single multi-insert query | |||||
$user->settings()->insert(array_values($settings)); | |||||
$user->wallets()->create(); | $user->wallets()->create(); | ||||
// Create user record in LDAP, then check if the account is created in IMAP | // Create user record in LDAP, then check if the account is created in IMAP | ||||
$chain = [ | $chain = [ | ||||
new \App\Jobs\UserVerify($user), | new \App\Jobs\UserVerify($user), | ||||
]; | ]; | ||||
▲ Show 20 Lines • Show All 97 Lines • Show Last 20 Lines |