Procházet zdrojové kódy

Update user model observer

Daniel Supernault před 7 roky
rodič
revize
deb90786d2
1 změnil soubory, kde provedl 17 přidání a 1 odebrání
  1. 17 1
      app/Observer/UserObserver.php

+ 17 - 1
app/Observer/UserObserver.php

@@ -3,6 +3,7 @@
 namespace App\Observers;
 
 use App\{Profile, User};
+use App\Jobs\AvatarPipeline\CreateAvatar;
 
 class UserObserver
 {
@@ -14,11 +15,26 @@ class UserObserver
      */
     public function saved(User $user)
     {
-        if($user->has('profile')->count() == 0) {
+        if(empty($user->profile)) {
             $profile = new Profile;
             $profile->user_id = $user->id;
             $profile->username = $user->username;
+            $profile->name = $user->name;
+            $pkiConfig = [
+                "digest_alg" => "sha512",
+                "private_key_bits" => 2048,
+                "private_key_type" => OPENSSL_KEYTYPE_RSA,
+            ];
+            $pki = openssl_pkey_new($pkiConfig);
+            openssl_pkey_export($pki, $pki_private);
+            $pki_public = openssl_pkey_get_details($pki);
+            $pki_public = $pki_public['key'];
+
+            $profile->private_key = $pki_private;
+            $profile->public_key = $pki_public;
             $profile->save();
+
+            CreateAvatar::dispatch($user);
         }
     }