Browse Source

Update CommentController, prepare for Micro UI

Daniel Supernault 6 năm trước cách đây
mục cha
commit
dc2a012e6e

+ 20 - 3
app/Http/Controllers/CommentController.php

@@ -2,13 +2,18 @@
 
 
 namespace App\Http\Controllers;
 namespace App\Http\Controllers;
 
 
+use Illuminate\Http\Request;
+use Auth;
+
 use App\Comment;
 use App\Comment;
 use App\Jobs\CommentPipeline\CommentPipeline;
 use App\Jobs\CommentPipeline\CommentPipeline;
 use App\Jobs\StatusPipeline\NewStatusPipeline;
 use App\Jobs\StatusPipeline\NewStatusPipeline;
 use App\Profile;
 use App\Profile;
 use App\Status;
 use App\Status;
-use Auth;
-use Illuminate\Http\Request;
+use League\Fractal;
+use App\Transformer\Api\StatusTransformer;
+use League\Fractal\Serializer\ArraySerializer;
+use League\Fractal\Pagination\IlluminatePaginatorAdapter;
 
 
 class CommentController extends Controller
 class CommentController extends Controller
 {
 {
@@ -57,7 +62,19 @@ class CommentController extends Controller
         CommentPipeline::dispatch($status, $reply);
         CommentPipeline::dispatch($status, $reply);
 
 
         if ($request->ajax()) {
         if ($request->ajax()) {
-            $response = ['code' => 200, 'msg' => 'Comment saved', 'username' => $profile->username, 'url' => $reply->url(), 'profile' => $profile->url(), 'comment' => $reply->caption];
+            $fractal = new Fractal\Manager();
+            $fractal->setSerializer(new ArraySerializer());
+            $entity = new Fractal\Resource\Item($reply, new StatusTransformer());
+            $entity = $fractal->createData($entity)->toArray();
+            $response = [
+                'code' => 200, 
+                'msg' => 'Comment saved', 
+                'username' => $profile->username, 
+                'url' => $reply->url(), 
+                'profile' => $profile->url(), 
+                'comment' => $reply->caption,
+                'entity' => $entity,
+            ];
         } else {
         } else {
             $response = redirect($status->url());
             $response = redirect($status->url());
         }
         }