PluginProbe ʕ •ᴥ•ʔ
Kubio AI Page Builder / trunk
Kubio AI Page Builder vtrunk
2.8.1 trunk 1.0.0 1.0.1 1.1.0 1.2.0 1.2.1 1.2.2 1.2.3 1.3.0 1.3.1 1.3.2 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.7.3 1.8.0 1.8.1 1.8.2 1.9.0 2.0.0 2.1.1 2.1.2 2.1.3 2.2.0 2.2.3 2.2.4 2.2.5 2.3.0 2.3.1 2.3.3 2.3.4 2.4.0 2.4.1 2.4.2 2.4.3 2.4.5 2.5.0 2.5.1 2.5.2 2.5.3 2.6.0 2.6.1 2.6.2 2.6.3 2.6.5 2.6.6 2.6.7 2.7.0 2.7.1 2.7.2 2.7.3 2.8.0
kubio / lib / api / update-settings-flags.php
kubio / lib / api Last commit date
multilanguage 1 year ago recommendations 2 months ago colibri.php 1 year ago contact-form.php 1 year ago entity.php 4 years ago get-body-class.php 1 year ago get-classic-page-template.php 1 year ago get-page-query.php 1 year ago get-page-title.php 1 year ago get-post-content.php 1 year ago get-post-styles.php 1 year ago index.php 11 months ago kubio-cloud.php 1 year ago page-templates.php 4 years ago save-template-parts-filter.php 1 year ago subscribe-form.php 4 years ago typekit.php 4 years ago update-settings-flags.php 1 year ago
update-settings-flags.php
135 lines
1 <?php
2
3 use Kubio\Flags;
4
5 function kubio_api_update_ui_version( WP_REST_Request $request ) {
6 $next_version = intval( $request['version'] );
7 $available_versions = array( 1, 2 );
8 if ( in_array( $next_version, $available_versions ) ) {
9 Flags::setSetting( 'editorUIVersion', $next_version );
10 } else {
11 return new WP_Error( 'kubio_invalid_ui_version' );
12 }
13
14 return array( 'version' => $next_version );
15 }
16
17 function kubio_api_update_ai_capabilities( WP_REST_Request $request ) {
18 $next_value = ! ! intval( $request['value'] );
19 Flags::setSetting( 'enableAICapabilities', $next_value );
20 return array( 'value' => $next_value );
21 }
22
23 function kubio_api_update_editor_mode( WP_REST_Request $request ) {
24 $next_value = $request['value'];
25 $available_values = array( 'simple', 'full' );
26
27 if ( in_array( $next_value, $available_values ) ) {
28 Flags::setSetting( 'editorMode', $next_value );
29 } else {
30 return new WP_Error( 'kubio_invalid_value' );
31 }
32
33 return array( 'value' => $next_value );
34 }
35
36 function kubio_api_update_excluded_section_categories( WP_REST_Request $request ) {
37 $value = $request['value'];
38
39 if ( is_array( $value ) ) {
40 Flags::setSetting( 'excludedSectionCategories', $value );
41 } else {
42 return new WP_Error( 'kubio_invalid_value' );
43 }
44
45 return array( 'value' => $value );
46 }
47
48 function kubio_api_update_flag_settings( WP_REST_Request $request ) {
49 $path = $request['path'];
50 $value = $request['value'];
51
52 if ( gettype( $path ) === 'string' ) {
53 Flags::setSetting( $path, $value );
54 } else {
55 return new WP_Error( 'kubio_invalid_value' );
56 }
57
58 return array(
59 'path' => $path,
60 'value' => $value,
61 );
62 }
63
64 add_action(
65 'rest_api_init',
66 function () {
67 $namespace = 'kubio/v1';
68
69 register_rest_route(
70 $namespace,
71 '/update-ui-version',
72 array(
73 'methods' => 'GET',
74 'callback' => 'kubio_api_update_ui_version',
75 'permission_callback' => function () {
76 return current_user_can( 'edit_theme_options' );
77 },
78
79 )
80 );
81
82 register_rest_route(
83 $namespace,
84 '/update-enable-ai-capabilities',
85 array(
86 'methods' => 'POST',
87 'callback' => 'kubio_api_update_ai_capabilities',
88 'permission_callback' => function () {
89 return current_user_can( 'edit_theme_options' );
90 },
91
92 )
93 );
94
95 register_rest_route(
96 $namespace,
97 '/update-editor-mode',
98 array(
99 'methods' => 'POST',
100 'callback' => 'kubio_api_update_editor_mode',
101 'permission_callback' => function () {
102 return current_user_can( 'edit_theme_options' );
103 },
104
105 )
106 );
107
108 register_rest_route(
109 $namespace,
110 '/update-excluded-section-categories',
111 array(
112 'methods' => 'POST',
113 'callback' => 'kubio_api_update_excluded_section_categories',
114 'permission_callback' => function () {
115 return current_user_can( 'edit_theme_options' );
116 },
117
118 )
119 );
120
121 register_rest_route(
122 $namespace,
123 '/update-flag-settings',
124 array(
125 'methods' => 'POST',
126 'callback' => 'kubio_api_update_flag_settings',
127 'permission_callback' => function () {
128 return current_user_can( 'edit_theme_options' );
129 },
130
131 )
132 );
133 }
134 );
135