PluginProbe
Extendify / 0.11.1
Extendify v0.11.1
3.2.1 3.2.0 3.1.6 3.1.5 3.1.4 3.1.3 3.1.2 3.1.1 3.1.0 3.0.6 3.0.5 3.0.4 trunk 0.1.0 0.10.0 0.10.1 0.10.2 0.11.0 0.11.1 0.2.0 0.3.0 0.3.1 0.4.0 0.5.0 0.6.0 All 127 releases
extendify / routes / api.php

api.php in Extendify 0.11.1, at routes/api.php

85 lines 4.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Api routes
4 */
5
6 if (!defined('ABSPATH')) {
7 die('No direct access.');
8 }
9
10 use Extendify\ApiRouter;
11 use Extendify\Library\Controllers\AuthController;
12 use Extendify\Library\Controllers\MetaController;
13 use Extendify\Library\Controllers\PingController;
14 use Extendify\Library\Controllers\PluginController;
15 use Extendify\Library\Controllers\SiteSettingsController;
16 use Extendify\Library\Controllers\TaxonomyController;
17 use Extendify\Library\Controllers\TemplateController;
18 use Extendify\Library\Controllers\UserController;
19 use Extendify\Onboarding\Controllers\DataController;
20 use Extendify\Onboarding\Controllers\LibraryController;
21 use Extendify\Onboarding\Controllers\WPController;
22 use Extendify\Assist\Controllers\AssistDataController;
23 use Extendify\Assist\Controllers\GlobalsController;
24 use Extendify\Assist\Controllers\TasksController;
25 use Extendify\Assist\Controllers\UserSelectionController;
26
27 \add_action(
28 'rest_api_init',
29 function () {
30 ApiRouter::get('/active-plugins', [PluginController::class, 'active']);
31 ApiRouter::get('/plugins', [PluginController::class, 'index']);
32 ApiRouter::post('/plugins', [PluginController::class, 'install']);
33
34 ApiRouter::get('/taxonomies', [TaxonomyController::class, 'index']);
35
36 ApiRouter::post('/templates', [TemplateController::class, 'index']);
37 ApiRouter::post('/templates/(?P<template_id>[a-zA-Z0-9-]+)', [TemplateController::class, 'ping']);
38
39 ApiRouter::get('/user', [UserController::class, 'show']);
40 ApiRouter::post('/user', [UserController::class, 'store']);
41 ApiRouter::post('/clear-user', [UserController::class, 'delete']);
42 ApiRouter::get('/user-meta', [UserController::class, 'meta']);
43 ApiRouter::get('/max-free-imports', [UserController::class, 'maxImports']);
44
45 ApiRouter::post('/register-mailing-list', [UserController::class, 'mailingList']);
46
47 ApiRouter::post('/register', [AuthController::class, 'register']);
48 ApiRouter::post('/login', [AuthController::class, 'login']);
49
50 ApiRouter::get('/meta-data', [MetaController::class, 'getAll']);
51 ApiRouter::post('/simple-ping', [PingController::class, 'ping']);
52
53 ApiRouter::get('/site-settings', [SiteSettingsController::class, 'show']);
54 ApiRouter::post('/site-settings', [SiteSettingsController::class, 'store']);
55 ApiRouter::post('/site-settings/options', [SiteSettingsController::class, 'updateOption']);
56
57 // Onboarding.
58 ApiRouter::post('/onboarding/options', [WPController::class, 'updateOption']);
59 ApiRouter::get('/onboarding/options', [WPController::class, 'getOption']);
60 ApiRouter::post('/onboarding/parse-theme-json', [WPController::class, 'parseThemeJson']);
61
62 ApiRouter::get('/onboarding/site-types', [DataController::class, 'getSiteTypes']);
63 ApiRouter::get('/onboarding/styles', [DataController::class, 'getStyles']);
64 ApiRouter::get('/onboarding/layout-types', [DataController::class, 'getLayoutTypes']);
65 ApiRouter::get('/onboarding/goals', [DataController::class, 'getGoals']);
66 ApiRouter::get('/onboarding/suggested-plugins', [DataController::class, 'getSuggestedPlugins']);
67 ApiRouter::get('/onboarding/template', [DataController::class, 'getTemplate']);
68 ApiRouter::post('/onboarding/create-order', [DataController::class, 'createOrder']);
69 ApiRouter::get('/onboarding/exit-questions', [DataController::class, 'exitQuestions']);
70
71 // Assist.
72 ApiRouter::get('/assist/launch-pages', [AssistDataController::class, 'getLaunchPages']);
73 ApiRouter::get('/assist/tasks', [TasksController::class, 'fetchTasks']);
74 ApiRouter::get('/assist/task-data', [TasksController::class, 'get']);
75 ApiRouter::post('/assist/task-data', [TasksController::class, 'store']);
76 ApiRouter::get('/assist/global-data', [GlobalsController::class, 'get']);
77 ApiRouter::post('/assist/global-data', [GlobalsController::class, 'store']);
78 ApiRouter::get('/assist/user-selection-data', [UserSelectionController::class, 'get']);
79 ApiRouter::post('/assist/user-selection-data', [UserSelectionController::class, 'store']);
80
81 // TODO: consider merging this route into the library.
82 ApiRouter::post('/library/site-type', [LibraryController::class, 'updateSiteType']);
83 }
84 );
85