PluginProbe
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder / 2.13.0
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder v2.13.0
2.13.0 2.13.1 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 All 80 releases
← All changes | includes/admin/settings/blocks.php +170 -0 2.7.62.13.0 View file →
@@ -1,0 +1,170 @@
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 +}