PluginProbe
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder / 2.9.1
aBlocks – Gutenberg Blocks, User Dashboard Builder, Popup Builder, Form Builder & Animation Builder v2.9.1
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
ablocks / includes / admin / settings / blocks.php

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

98 lines 2.6 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 'icon' => true,
30 'image' => true,
31 'image-scroll' => true,
32 'lists' => true,
33 'paragraph' => true,
34 'spacer' => true,
35 'star-ratings' => true,
36 'video' => true,
37 'tabs' => true,
38 'toggle' => true,
39 'news-ticker' => true,
40 'image-hotspot' => true,
41 'form-builder' => true,
42 'form-multi-step' => true,
43 'toggle-child' => true,
44 'menu' => true,
45 'coupon' => true,
46 'modal' => true,
47 'content-timeline' => true,
48 'map' => true,
49 'table-of-content' => true,
50 'table' => true,
51 'carousel' => true,
52 'image-comparison' => true,
53 'flip-box' => true,
54 'filterable-cards' => true,
55 'filterable-cards-item' => true,
56 'stripe-button' => true,
57 'paypal-button' => true,
58 'social-shares' => true,
59 'search' => true,
60 'svg-draw' => true,
61 'info-box' => true,
62 'price-menu' => true,
63 'marquee' => true,
64 'marquee-child' => true,
65 'logout' => true,
66 'chart' => true,
67 'text-path' => true,
68 'advance-lists' => true,
69 'stacked-cards' => true,
70 'filterable-card' => true,
71 // Academy LMS Blocks
72 'academy-courses' => true,
73 'academy-course-search' => true,
74 'academy-enroll-form' => true,
75 'academy-instructor-registration-form' => true,
76 'academy-login-form' => true,
77 'academy-password-reset-form' => true,
78 'academy-pdf' => true,
79 'academy-student-registration-form' => true,
80 'academy-certificate' => true,
81 ]);
82 }
83
84 public static function save_settings( $form_data = false ) {
85 $default_data = self::get_default_data();
86 $saved_data = self::get_saved_data();
87 $settings_data = wp_parse_args( $saved_data, $default_data );
88 if ( $form_data ) {
89 $settings_data = wp_parse_args( $form_data, $settings_data );
90 }
91 // if settings already saved, then update it
92 if ( count( $saved_data ) ) {
93 return update_option( ABLOCKS_BLOCKS_VISIBILITY_SETTINGS_NAME, wp_json_encode( $settings_data ) );
94 }
95 return add_option( ABLOCKS_BLOCKS_VISIBILITY_SETTINGS_NAME, wp_json_encode( $settings_data ) );
96 }
97 }
98