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 +38 -3 1.6.1 → 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'
@@ -833,10 +834,10 @@
833 834 });
834 835
835 836 $router->post('/upload-editor-file', [FileUploadController::class, 'uploadEditorFile'])->withPolicy('AdminPolicy');
836 837
837 -$router->prefix('notes')->withPolicy('AdminPolicy')->group(function (Router $router) {
838 - $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']);
839 840 });
840 841
841 842 $router->prefix('app')->withPolicy('AdminPolicy')->group(function (Router $router) {
842 843 $router->get('init', [AppController::class, 'init']);
@@ -976,5 +977,39 @@
976 977
977 978 $router->prefix('checkout-fields')->withPolicy('StoreSensitivePolicy')->group(function (Router $router) {
978 979 $router->get('get-fields', [CheckoutFieldsController::class, 'getFields']);
979 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 + ]);
980 1015 });