PluginProbe
FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler / 1.7.0
FluentCart A New Era of eCommerce – Faster, Lighter, and Simpler v1.7.0
1.7.0 1.6.6 1.6.5 1.6.4 1.6.3 1.6.2 1.6.1 1.6.0 1.5.4 1.5.5 1.5.3 1.5.2 1.5.1 1.5.0 1.4.2 1.4.1 1.4.0 1.3.28 1.3.27 1.3.26 1.3.25 1.3.23 1.3.22 1.3.21 1.3.20 All 50 releases
← All changes | app/Http/Routes/api.php +43 -6 1.6.0 → 1.7.0 View file →
@@ -34,8 +34,9 @@
34 34 use FluentCart\App\Http\Controllers\TaxRateController;
35 35 use FluentCart\App\Http\Controllers\TemplateController;
36 36 use FluentCart\App\Http\Controllers\VariantController;
37 37 use FluentCart\App\Http\Controllers\WidgetsController;
38 +use FluentCart\App\Http\Controllers\ProductReviewController;
38 39 use FluentCart\App\Modules\PaymentMethods\PayPalGateway\ConnectConfig;
39 40 use FluentCart\Framework\Http\Router;
40 41 use \FluentCart\App\Http\Controllers\PaymentMethodController;
41 42 use \FluentCart\App\Http\Controllers\ActivityController;
@@ -553,9 +554,9 @@
553 554 'permissions' => 'orders/create'
554 555 ]);
555 556
556 557 $router->post('/do-bulk-action', [OrderController::class, 'handleBulkActions'])->meta([
557 - 'permissions' => 'orders/manage'
558 + 'permissions' => 'orders/delete' // every accepted action deletes orders — same gate as DELETE /{order_id}
558 559 ]);
559 560
560 561 $router->post('/{order}/mark-as-paid', [OrderController::class, 'markAsPaid'])->meta([
561 562 'permissions' => 'orders/manage'
@@ -610,11 +611,13 @@
610 611 $router->post('/{order}/transactions/{transaction_id}/accept-dispute/', [OrderController::class, 'acceptDispute'])->meta([
611 612 'permissions' => 'orders/manage'
612 613 ]);
613 614
614 - $router->get('/{id}/transactions/{transaction_id}', [OrderController::class, 'getDetails'])->meta([
615 - 'permissions' => 'orders/view'
616 - ]);
615 + $router->get('/{id}/transactions/{transaction_id}', [OrderController::class, 'getTransactionDetails'])
616 + ->int('id', 'transaction_id')
617 + ->meta([
618 + 'permissions' => 'orders/view'
619 + ]);
617 620
618 621 $router->put('/{order}/address/{id}', [OrderController::class, 'updateOrderAddress'])->meta([
619 622 'permissions' => 'orders/manage'
620 623 ]);
@@ -831,10 +834,10 @@
831 834 });
832 835
833 836 $router->post('/upload-editor-file', [FileUploadController::class, 'uploadEditorFile'])->withPolicy('AdminPolicy');
834 837
835 -$router->prefix('notes')->withPolicy('AdminPolicy')->group(function (Router $router) {
836 - $router->post('/attach', [NotesController::class, 'attach']);
838 +$router->prefix('notes')->withPolicy('OrderPolicy')->group(function (Router $router) {
839 + $router->post('/attach', [NotesController::class, 'attach'])->meta(['permissions' => 'orders/manage']);
837 840 });
838 841
839 842 $router->prefix('app')->withPolicy('AdminPolicy')->group(function (Router $router) {
840 843 $router->get('init', [AppController::class, 'init']);
@@ -974,5 +977,39 @@
974 977
975 978 $router->prefix('checkout-fields')->withPolicy('StoreSensitivePolicy')->group(function (Router $router) {
976 979 $router->get('get-fields', [CheckoutFieldsController::class, 'getFields']);
977 980 $router->post('save-fields', [CheckoutFieldsController::class, 'saveFields']);
981 +});
982 +
983 +// Product Reviews routes
984 +$router->prefix('reviews')->withPolicy('ReviewPolicy')->group(function (Router $router) {
985 + $router->get('/', [ProductReviewController::class, 'index'])->meta([
986 + 'permissions' => 'reviews/manage'
987 + ]);
988 + $router->get('/stats', [ProductReviewController::class, 'stats'])->meta([
989 + 'permissions' => 'reviews/manage'
990 + ]);
991 + $router->get('/{id}', [ProductReviewController::class, 'find'])->int('id')->meta([
992 + 'permissions' => 'reviews/manage'
993 + ]);
994 + $router->put('/{id}', [ProductReviewController::class, 'update'])->int('id')->meta([
995 + 'permissions' => 'reviews/manage'
996 + ]);
997 + $router->delete('/{id}', [ProductReviewController::class, 'delete'])->int('id')->meta([
998 + 'permissions' => 'reviews/manage'
999 + ]);
1000 + $router->post('/bulk-action', [ProductReviewController::class, 'bulkAction'])->meta([
1001 + 'permissions' => 'reviews/manage'
1002 + ]);
1003 + $router->post('/{id}/reply', [ProductReviewController::class, 'reply'])->int('id')->meta([
1004 + 'permissions' => 'reviews/manage'
1005 + ]);
1006 + $router->delete('/{reviewId}/replies/{replyId}', [ProductReviewController::class, 'deleteReply'])->int('reviewId')->int('replyId')->meta([
1007 + 'permissions' => 'reviews/manage'
1008 + ]);
1009 + $router->post('/bulk-reply', [ProductReviewController::class, 'bulkReply'])->meta([
1010 + 'permissions' => 'reviews/manage'
1011 + ]);
1012 + $router->post('/', [ProductReviewController::class, 'create'])->meta([
1013 + 'permissions' => 'reviews/manage'
1014 + ]);
978 1015 });