Skip to content

Commit 2b24bc7

Browse files
richardkorthuismvdhoek1
authored andcommitted
Add settings endpoint
1 parent 030074f commit 2b24bc7

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
<?php
2+
3+
/**
4+
* Controller which handles the (requested) settings.
5+
*/
6+
7+
namespace OWC\OpenPub\Base\RestAPI\Controllers;
8+
9+
use WP_REST_Request;
10+
use OWC\OpenPub\Base\Settings\SettingsPageOptions;
11+
12+
/**
13+
* Controller which handles the settings.
14+
*/
15+
class SettingsController extends BaseController
16+
{
17+
/**
18+
* Get the settings.
19+
*/
20+
public function getSettings(WP_REST_Request $request): array
21+
{
22+
$settingsPageOptions = SettingsPageOptions::make();
23+
24+
$settings = [
25+
'item_slug' => $settingsPageOptions->getPortalItemSlug(),
26+
];
27+
28+
return $settings;
29+
}
30+
}

src/Base/RestAPI/RestAPIServiceProvider.php

+7
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
use OWC\OpenPub\Base\RestAPI\Controllers\ItemController;
77
use OWC\OpenPub\Base\RestAPI\Controllers\SearchController;
88
use OWC\OpenPub\Base\RestAPI\Controllers\ThemeController;
9+
use OWC\OpenPub\Base\RestAPI\Controllers\SettingsController;
910
use WP_REST_Server;
1011

1112
class RestAPIServiceProvider extends ServiceProvider
@@ -98,6 +99,12 @@ public function registerRoutes(): void
9899
'args' => [],
99100
'permission_callback' => '__return_true',
100101
]);
102+
103+
register_rest_route($this->namespace, 'settings', [
104+
'methods' => WP_REST_Server::READABLE,
105+
'callback' => [new SettingsController($this->plugin), 'getSettings'],
106+
'permission_callback' => '__return_true',
107+
]);
101108
}
102109

103110
/**

0 commit comments

Comments
 (0)