PluginProbe
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder / trunk
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder vtrunk
2.12.0 2.11.1 2.11.0 2.10.0 2.9.0 2.7.4 2.7.5 2.7.6 2.7.7 2.8.0 2.8.1 2.9.1 trunk 1.0 1.0-beta1 1.0-beta2 1.0-beta3 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 1.2.0 1.2.1 All 78 releases
ablocks / includes / admin / settings / blocks.php

blocks.php in aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder trunk, at includes/admin/settings/blocks.php

171 lines 5.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace ABlocks\Admin\Settings;
3
4 if ( ! defined( 'ABSPATH' ) ) {
5 exit;
6 }
7
8 class Blocks {
9 public static function get_saved_data() {
10 $settings = get_option( ABLOCKS_BLOCKS_VISIBILITY_SETTINGS_NAME );
11 if ( $settings ) {
12 return json_decode( $settings, true );
13 }
14 return [];
15 }
16 public static function get_default_data() {
17 return apply_filters('ablocks/admin/settings/blocks_default_data', [
18 // Core Blocks
19 'progress-tracker' => true,
20 'accordion' => true,
21 'button' => true,
22 'dual-button' => true,
23 'notice' => true,
24 'container' => true,
25 'countdown' => true,
26 'counter' => true,
27 'divider' => true,
28 'heading' => true,
29 'atomic-text' => true,
30 'atomic-image' => true,
31 'atomic-svg' => true,
32 'atomic-div' => true,
33 'atomic-flex' => true,
34 'atomic-grid' => true,
35 'icon' => true,
36 'image' => true,
37 'image-scroll' => true,
38 'lists' => true,
39 'paragraph' => true,
40 'player' => true,
41 'spacer' => true,
42 'star-ratings' => true,
43 'video' => true,
44 'tabs' => true,
45 'toggle' => true,
46 'loop-builder' => true,
47 'loop-template' => true,
48 'loop-load-more' => true,
49 'news-ticker' => true,
50 'image-hotspot' => true,
51 'form-builder' => true,
52 'form-multi-step' => true,
53 'toggle-child' => true,
54 'menu' => true,
55 'coupon' => true,
56 'modal' => true,
57 'content-timeline' => true,
58 'map' => true,
59 'table-of-content' => true,
60 'table' => true,
61 'carousel' => true,
62 'image-comparison' => true,
63 'flip-box' => true,
64 'filterable-cards' => true,
65 'filterable-cards-item' => true,
66 'stripe-button' => true,
67 'paypal-button' => true,
68 'social-shares' => true,
69 'search' => true,
70 'svg-draw' => true,
71 'info-box' => true,
72 'price-menu' => true,
73 'savings-calculator' => true,
74 'frontend-dashboard' => true,
75 'lottie-animation' => true,
76 'marquee' => true,
77 'marquee-child' => true,
78 'logout' => true,
79 'qr-code' => true,
80 'chart' => true,
81 'text-path' => true,
82 'advance-lists' => true,
83 'stacked-cards' => true,
84 'group-image-effect' => true,
85 'taxonomy-listing' => true,
86 'dynamic-text' => true,
87 'featured-image' => true,
88 'scroll-to-top' => true,
89 'breadcrumb' => true,
90 'interactive-circle-infographic' => true,
91 'code-highlighter' => true,
92 // Academy LMS Blocks
93 'academy-courses' => true,
94 'academy-container' => true,
95 'academy-course-search' => true,
96 'academy-enroll-form' => true,
97 'academy-instructor-registration-form' => true,
98 'academy-course-media' => true,
99 'academy-login-form' => true,
100 'academy-password-reset-form' => true,
101 'academy-pdf' => true,
102 'academy-student-registration-form' => true,
103 'academy-certificate' => true,
104 'academy-course-curriculums' => true,
105 'academy-course-reviews' => true,
106 'academy-review-form' => true,
107 'academy-review-list' => true,
108 'academy-addition-info' => true,
109 'academy-course-instructor' => true,
110 'academy-course-description' => true,
111 'academy-enroll-content' => true,
112
113 // StoreEngine Blocks
114 'storeengine-products' => true,
115 'storeengine-cart-list' => true,
116 'storeengine-login-form' => true,
117 'storeengine-coupon-form' => true,
118 'storeengine-product-filter' => true,
119 'storeengine-checkout-form' => true,
120 'storeengine-continue-button' => true,
121 'storeengine-checkout-button' => true,
122 'storeengine-cart-sub-table' => true,
123 'storeengine-cart-button' => true,
124 'storeengine-order-info' => true,
125 'storeengine-billing-info' => true,
126 'storeengine-shipping-info' => true,
127 'storeengine-order-details' => true,
128 'storeengine-funnel-checkout' => true,
129 'storeengine-funnel-offer' => true,
130 'storeengine-funnel-accept' => true,
131 'storeengine-funnel-decline' => true,
132 'storeengine-funnel-continue' => true,
133 'storeengine-mini-cart' => true,
134 'storeengine-cart-notice' => true,
135 'storeengine-product-gallery' => true,
136 'storeengine-product-summary' => true,
137 'storeengine-product-description' => true,
138 'storeengine-product-review' => true,
139
140 // Easy Content Manager Blocks
141 'ecm-bookmark-button' => true,
142 'ecm-bookmark-badge' => true,
143 'ecm-bookmark-list' => true,
144 'ecm-bookmark-count' => true,
145 'ecm-reaction-list' => true,
146 'ecm-reaction' => true,
147 'ecm-upvote' => true,
148 'ecm-upvote-count' => true,
149 'ecm-upvote-list' => true,
150 'ecm-claim-button' => true,
151 'ecm-claim-badge' => true,
152 'ecm-claim-list' => true,
153 'ecm-claim-count' => true,
154 ]);
155 }
156
157 public static function save_settings( $form_data = false ) {
158 $default_data = self::get_default_data();
159 $saved_data = self::get_saved_data();
160 $settings_data = wp_parse_args( $saved_data, $default_data );
161 if ( $form_data ) {
162 $settings_data = wp_parse_args( $form_data, $settings_data );
163 }
164 // if settings already saved, then update it
165 if ( count( $saved_data ) ) {
166 return update_option( ABLOCKS_BLOCKS_VISIBILITY_SETTINGS_NAME, wp_json_encode( $settings_data ) );
167 }
168 return add_option( ABLOCKS_BLOCKS_VISIBILITY_SETTINGS_NAME, wp_json_encode( $settings_data ) );
169 }
170 }
171