File tree Expand file tree Collapse file tree 6 files changed +37
-17
lines changed Expand file tree Collapse file tree 6 files changed +37
-17
lines changed Original file line number Diff line number Diff line change 8
8
use App \Models \Reaction ;
9
9
use App \Models \Reply ;
10
10
use App \Models \User ;
11
+ use Illuminate \Http \JsonResponse ;
11
12
use Illuminate \Http \Request ;
12
13
use Illuminate \Http \Resources \Json \AnonymousResourceCollection ;
13
14
use Illuminate \Support \Facades \Auth ;
@@ -44,8 +45,12 @@ public function like(Request $request, int $id): ReplyResource
44
45
return new ReplyResource ($ reply );
45
46
}
46
47
47
- public function delete ()
48
+ public function delete (int $ id ): JsonResponse
48
49
{
50
+ /** @var Reply $reply */
51
+ $ reply = Reply::findOrFail ($ id );
52
+ $ reply ->delete ();
49
53
54
+ return response ()->json (['message ' => 'Commentaire supprimé avec succès ' ]);
50
55
}
51
56
}
Original file line number Diff line number Diff line change @@ -101,4 +101,11 @@ public function scopeIsSolution(Builder $builder): Builder
101
101
{
102
102
return $ builder ->has ('solutionTo ' );
103
103
}
104
+
105
+ public function delete ()
106
+ {
107
+ $ this ->deleteReplies ();
108
+
109
+ parent ::delete ();
110
+ }
104
111
}
Original file line number Diff line number Diff line change @@ -6373,14 +6373,6 @@ select {
6373
6373
--tw-blur : blur (8px );
6374
6374
filter : var (--tw-filter );
6375
6375
}
6376
- .blur-lg {
6377
- --tw-blur : blur (16px );
6378
- filter : var (--tw-filter );
6379
- }
6380
- .blur-md {
6381
- --tw-blur : blur (12px );
6382
- filter : var (--tw-filter );
6383
- }
6384
6376
.blur-sm {
6385
6377
--tw-blur : blur (4px );
6386
6378
filter : var (--tw-filter );
Original file line number Diff line number Diff line change @@ -3396,10 +3396,19 @@ function Comments(_ref) {
3396
3396
}, []); // On supprime un commentaire
3397
3397
3398
3398
const handleDelete = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_2__.useCallback)(async comment => {
3399
+ const isReply = comment.model_type === 'reply';
3399
3400
await (0,_api_comments__WEBPACK_IMPORTED_MODULE_4__.deleteReply)(comment.id);
3400
- setState(s => _objectSpread(_objectSpread({}, s), {}, {
3401
- comments: s.comments.filter(c => c !== comment)
3402
- }));
3401
+
3402
+ if (isReply) {
3403
+ const comments = await (0,_api_comments__WEBPACK_IMPORTED_MODULE_4__.findAllReplies)(target);
3404
+ setState(s => _objectSpread(_objectSpread({}, s), {}, {
3405
+ comments
3406
+ }));
3407
+ } else {
3408
+ setState(s => _objectSpread(_objectSpread({}, s), {}, {
3409
+ comments: s.comments.filter(c => c !== comment)
3410
+ }));
3411
+ }
3403
3412
}, []); // On répond à un commentaire
3404
3413
3405
3414
const handleReply = (0,preact_hooks__WEBPACK_IMPORTED_MODULE_2__.useCallback)(comment => {
Original file line number Diff line number Diff line change @@ -58,11 +58,18 @@ export function Comments ({ target, parent }) {
58
58
59
59
// On supprime un commentaire
60
60
const handleDelete = useCallback ( async comment => {
61
+ const isReply = comment . model_type === 'reply'
62
+
61
63
await deleteReply ( comment . id )
62
- setState ( s => ( {
63
- ...s ,
64
- comments : s . comments . filter ( c => c !== comment )
65
- } ) )
64
+ if ( isReply ) {
65
+ const comments = await findAllReplies ( target )
66
+ setState ( s => ( { ...s , comments } ) )
67
+ } else {
68
+ setState ( s => ( {
69
+ ...s ,
70
+ comments : s . comments . filter ( c => c !== comment )
71
+ } ) )
72
+ }
66
73
} , [ ] )
67
74
68
75
// On répond à un commentaire
Original file line number Diff line number Diff line change 18
18
Route::post ('replies ' , [ReplyController::class, 'store ' ]);
19
19
Route::put ('replies/{id} ' , [ReplyController::class, 'update ' ]);
20
20
Route::post ('like/{id} ' , [ReplyController::class, 'like ' ]);
21
- Route::delete ('replies/{id} ' , [ReplyController::class, 'update ' ]);
21
+ Route::delete ('replies/{id} ' , [ReplyController::class, 'delete ' ]);
You can’t perform that action at this time.
0 commit comments