Parcourir la source

Merge pull request #465 from pixelfed/frontend-ui-refactor

Frontend ui refactor
daniel il y a 6 ans
Parent
commit
a38ceb7df6

+ 13 - 9
app/Events/AuthLoginEvent.php → app/Listeners/AuthLogin.php

@@ -1,19 +1,16 @@
 <?php
 <?php
 
 
-namespace App\Events;
+namespace App\Listeners;
 
 
 use App\User;
 use App\User;
 use App\UserSetting;
 use App\UserSetting;
-use Illuminate\Broadcasting\InteractsWithSockets;
-use Illuminate\Foundation\Events\Dispatchable;
-use Illuminate\Queue\SerializesModels;
+use Illuminate\Queue\InteractsWithQueue;
+use Illuminate\Contracts\Queue\ShouldQueue;
 
 
-class AuthLoginEvent
+class AuthLogin
 {
 {
-    use Dispatchable, InteractsWithSockets, SerializesModels;
-
     /**
     /**
-     * Create a new event instance.
+     * Create the event listener.
      *
      *
      * @return void
      * @return void
      */
      */
@@ -22,8 +19,15 @@ class AuthLoginEvent
         //
         //
     }
     }
 
 
-    public function handle(User $user)
+    /**
+     * Handle the event.
+     *
+     * @param  object  $event
+     * @return void
+     */
+    public function handle($event)
     {
     {
+        $user = $event->user;
         if (empty($user->settings)) {
         if (empty($user->settings)) {
             $settings = new UserSetting();
             $settings = new UserSetting();
             $settings->user_id = $user->id;
             $settings->user_id = $user->id;

+ 44 - 0
app/Listeners/LogFailedLogin.php

@@ -0,0 +1,44 @@
+<?php
+
+namespace App\Listeners;
+
+use App\AccountLog;
+use App\User;
+use Illuminate\Queue\InteractsWithQueue;
+use Illuminate\Contracts\Queue\ShouldQueue;
+
+class LogFailedLogin
+{
+    /**
+     * Create the event listener.
+     *
+     * @return void
+     */
+    public function __construct()
+    {
+        //
+    }
+
+    /**
+     * Handle the event.
+     *
+     * @param  object  $event
+     * @return void
+     */
+    public function handle($event)
+    {
+        $user = $event->user;
+        $request = request();
+
+        $log = new AccountLog();
+        $log->user_id = $user->id;
+        $log->item_id = $user->id;
+        $log->item_type = 'App\User';
+        $log->action = 'auth.failed';
+        $log->message = 'Failed login attempt';
+        $log->link = null;
+        $log->ip_address = $request->ip();
+        $log->user_agent = $request->userAgent();
+        $log->save();
+    }
+}

+ 15 - 0
app/Profile.php

@@ -205,4 +205,19 @@ class Profile extends Model
     {
     {
         return $this->hasMany(Media::class, 'profile_id');
         return $this->hasMany(Media::class, 'profile_id');
     }
     }
+
+    public function inboxUrl()
+    {
+        return $this->inbox_url ?? $this->permalink('/inbox');
+    }
+
+    public function outboxUrl()
+    {
+        return $this->outbox_url ?? $this->permalink('/outbox');
+    }
+
+    public function sharedInbox()
+    {
+        return $this->sharedInbox ?? $this->inboxUrl();
+    }
 }
 }

+ 4 - 4
app/Providers/EventServiceProvider.php

@@ -13,11 +13,11 @@ class EventServiceProvider extends ServiceProvider
      * @var array
      * @var array
      */
      */
     protected $listen = [
     protected $listen = [
-        'App\Events\Event' => [
-            'App\Listeners\EventListener',
+        'Illuminate\Auth\Events\Login' => [
+            'App\Listeners\AuthLogin',
         ],
         ],
-        'auth.login' => [
-            'App\Events\AuthLoginEvent',
+        'Illuminate\Auth\Events\Failed' => [
+            'App\Listeners\LogFailedLogin',
         ],
         ],
     ];
     ];