PluginProbe
The Innovative Form Builder – IvyForms / 1.5
The Innovative Form Builder – IvyForms v1.5
1.5.1 1.5 1.4.1 1.4 trunk 0.1.2 0.2 0.2.1 0.3 0.3.1 0.4 0.5 0.6 0.6.1 0.6.1-backup 0.6.1.1 0.7 0.8 0.8.1 0.8.2 0.9 0.9.1 1.0 1.1 1.1.1 All 27 releases
← All changes | backend/src/Controllers/Form/GetFormsController.php +13 -9 0.6 → 1.5 View file →
@@ -1,23 +1,19 @@
1 1 <?php
2 2
3 3 /**
4 - * @copyright © TMS-Plugins. All rights reserved.
4 + * @copyright © Melograno Venture Studio. All rights reserved.
5 5 * @licence See COPYING.md for license details.
6 6 */
7 7
8 8 namespace IvyForms\Controllers\Form;
9 9
10 -// phpcs:disable PSR1.Files.SideEffects
11 -if (!defined('ABSPATH')) {
12 - exit; // Exit if accessed directly
13 -}
14 -
15 10 use IvyForms\Common\Exceptions\ForbiddenException;
16 11 use IvyForms\Common\Exceptions\InvalidArgumentException;
17 12 use IvyForms\Common\Sanitizer\Sanitizer;
18 13 use IvyForms\Controllers\Controller;
19 14 use IvyForms\Services\Form\FormService;
15 +use IvyForms\Services\Permissions\AdminFormListPermissionService;
20 16 use IvyForms\Services\Translations\BackendStrings;
21 17 use WP_REST_Request;
22 18 use WP_REST_Response;
23 19
@@ -28,12 +24,17 @@
28 24 */
29 25 class GetFormsController extends Controller
30 26 {
31 27 private FormService $formService;
28 +
29 + private AdminFormListPermissionService $adminFormListPermissionService;
30 +
32 31 public function __construct(
33 - FormService $formService
32 + FormService $formService,
33 + AdminFormListPermissionService $adminFormListPermissionService
34 34 ) {
35 - $this->formService = $formService;
35 + $this->formService = $formService;
36 + $this->adminFormListPermissionService = $adminFormListPermissionService;
36 37 }
37 38
38 39 /**
39 40 * @param WP_REST_Request $data
@@ -47,13 +48,16 @@
47 48 {
48 49 // Verify the nonce
49 50 Sanitizer::verifyNonce($data->get_header('X-WP-Nonce'));
50 51
51 - $formsArr = $this->formService->getAllForms();
52 + $formsArr = $this->formService->getAllForms() ?? [];
52 53
53 54 $forms = [];
54 55
55 56 foreach ($formsArr as $form) {
57 + if (!$this->adminFormListPermissionService->canAccessFormInAdminLists((int) $form->getId())) {
58 + continue;
59 + }
56 60 $forms[] = $form->toArray();
57 61 }
58 62
59 63 return new WP_REST_Response([