PluginProbe
BlockSpare – Gutenberg Blocks for News, Magazine, Blog & Business Websites / 3.1.1
BlockSpare – Gutenberg Blocks for News, Magazine, Blog & Business Websites v3.1.1
4.1.0 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.1.0 1.1.1 1.1.2 1.2.0 1.2.1 1.2.2 1.2.3 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 2.1.2 2.5.0 2.5.3 2.6.1 All 38 releases
← All changes | admin/index.php +119 -259 trunk3.1.1 View file →
@@ -1,6 +1,5 @@
1 1 <?php
2 -
3 2 /**
4 3 * Welcome screen.
5 4 */
6 5
@@ -5,66 +4,58 @@
5 4 */
6 5
7 6 // Exit if accessed directly.
8 7 if (!defined('ABSPATH')) {
9 - exit;
8 + exit;
10 9 }
11 10
12 11 if (!class_exists('Blockspare_Admin_Dashboard')) {
13 - class Blockspare_Admin_Dashboard
14 - {
15 - public function __construct()
12 + class Blockspare_Admin_Dashboard
16 13 {
17 - add_action('admin_menu', array($this, 'add_dashboard_page'));
14 + function __construct()
15 + {
16 + add_action('admin_menu', array($this, 'add_dashboard_page'));
18 17
19 - add_action('admin_enqueue_scripts', array($this, 'enqueue_dashboard_script'));
18 + add_action('admin_enqueue_scripts', array($this, 'enqueue_dashboard_script'));
20 19
21 - add_action('admin_init', array($this, 'redirect_to_blockspare_page'));
20 + add_action('admin_init', array($this, 'redirect_to_blockspare_page'));
21 +
22 + //add_action( 'init', array($this,'blockspare_load_api_files'));
22 23
23 - //add_action('init', array($this, 'blockspare_load_api_files'));
24 + add_filter( 'plugin_row_meta', [ $this, 'plugin_row_meta' ], 10, 2 );
25 +
26 + add_filter( 'plugin_action_links_' . BLOCKSPARE_PLUGIN_BASE, [ $this, 'plugin_action_links' ] );
27 + }
24 28
25 - add_filter('plugin_row_meta', [$this, 'plugin_row_meta'], 10, 2);
29 + public function plugin_action_links( $links ) {
30 + $settings_link = sprintf( '<a href="%1$s">%2$s</a>', admin_url( 'admin.php?page=blockspare' ), esc_html__( 'Design Library', 'blockspare' ) );
31 +
32 + array_unshift( $links, $settings_link );
33 +
34 + $links['bspro'] = sprintf( '<a href="%1$s" target="_blank" class="blockspare-pro-link">%2$s</a>', 'https://www.blockspare.com/pricing/', esc_html__( 'Get Blockspare Pro', 'blockspare' ) );
35 +
36 + return $links;
37 + }
38 + public function plugin_row_meta( $plugin_meta, $plugin_file ) {
39 + if ( BLOCKSPARE_PLUGIN_BASE === $plugin_file ) {
40 + $row_meta = [
41 + 'starter' => '<a href="https://www.blockspare.com/starter-templates/" aria-label="' . esc_attr( esc_html__( 'View Blockspare Starter Templates', 'blockspare' ) ) . '" target="_blank">' . esc_html__( 'Demos', 'blockspare' ) . '</a>',
42 + 'docs' => '<a href="https://www.blockspare.com/docs/" aria-label="' . esc_attr( esc_html__( 'View Blockspare Documentation', 'blockspare' ) ) . '" target="_blank">' . esc_html__( 'Docs', 'blockspare' ) . '</a>',
43 + 'video' => '<a href="https://afthemes.com/all-themes-plan/" aria-label="' . esc_attr( esc_html__( 'Access All Themes and Plugins', 'blockspare' ) ) . '" target="_blank">' . esc_html__( 'All Themes & Plugins', 'blockspare' ) . '</a>',
44 + 'support' => '<a href="https://afthemes.com/supports/" aria-label="' . esc_attr( esc_html__( 'Need help for Blockspare?', 'blockspare' ) ) . '" target="_blank">' . esc_html__( 'Need Help?', 'blockspare' ) . '</a>',
45 + ];
26 46
27 - add_filter('plugin_action_links_' . BLOCKSPARE_PLUGIN_BASE, [$this, 'plugin_action_links']);
47 + $plugin_meta = array_merge( $plugin_meta, $row_meta );
48 + }
28 49
29 - // include_once(BLOCKSPARE_PLUGIN_DIR . 'admin/notice-setup.php');
30 - // include_once(BLOCKSPARE_PLUGIN_DIR . 'admin/notice-theme.php');
31 - // include_once(BLOCKSPARE_PLUGIN_DIR . 'admin/notice-review.php');
32 - // include_once BLOCKSPARE_PLUGIN_DIR . 'admin/notice-upgrade.php';
33 - include_once(BLOCKSPARE_PLUGIN_DIR . 'admin/class-enable-disable-blocks.php');
34 - }
50 + return $plugin_meta;
51 + }
35 52
36 - public function plugin_action_links($links)
37 - {
38 - $settings_link = sprintf('<a href="%1$s">%2$s</a>', admin_url('admin.php?page=blockspare'), esc_html__('Get Started', 'blockspare'));
53 + public function add_dashboard_page()
54 + {
39 55
40 - array_unshift($links, $settings_link);
41 -
42 - $links['bspro'] = sprintf('<a href="%1$s" target="_blank" class="blockspare-pro-link">%2$s</a>', 'https://www.blockspare.com/', esc_html__('Upgrade', 'blockspare'));
43 -
44 - return $links;
45 - }
46 - public function plugin_row_meta($plugin_meta, $plugin_file)
47 - {
48 - if (BLOCKSPARE_PLUGIN_BASE === $plugin_file) {
49 - $row_meta = [
50 - 'starter' => '<a href="https://www.blockspare.com/starter-templates/" aria-label="' . esc_attr(esc_html__('View Blockspare Starter Templates', 'blockspare')) . '" target="_blank">' . esc_html__('Demos', 'blockspare') . '</a>',
51 - 'docs' => '<a href="https://www.blockspare.com/docs/" aria-label="' . esc_attr(esc_html__('View Blockspare Documentation', 'blockspare')) . '" target="_blank">' . esc_html__('Docs', 'blockspare') . '</a>',
52 - 'video' => '<a href="https://www.youtube.com/@blockspare" aria-label="' . esc_attr(esc_html__('View Blockspare Video Tutorials', 'blockspare')) . '" target="_blank">' . esc_html__('Videos', 'blockspare') . '</a>',
53 - 'support' => '<a href="https://afthemes.com/supports/" aria-label="' . esc_attr(esc_html__('Need help for Blockspare?', 'blockspare')) . '" target="_blank">' . esc_html__('Need help?', 'blockspare') . '</a>',
54 - ];
55 -
56 - $plugin_meta = array_merge($plugin_meta, $row_meta);
57 - }
58 -
59 - return $plugin_meta;
60 - }
61 -
62 - public function add_dashboard_page()
63 - {
64 -
65 - // @see images/blockspare-icon.svg
66 - $svg = <<< SVG
56 + // @see images/blockspare-icon.svg
57 + $svg = <<< SVG
67 58 <svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
68 59 viewBox="0 0 40 40" style="enable-background:new 0 0 40 40;" xml:space="preserve">
69 60 <g>
70 61 <g>
@@ -71,9 +62,9 @@
71 62 <path class="st0" d="M1.6,9.2v21.4l18.3-9.2L20.2,0L1.6,9.2z M16.9,19.8L4.9,26V10.9l12-6.1V19.8z"/>
72 63 <polygon id="XMLID_3_" class="st1" points="19.9,21.4 16.9,23 26,27.7 13.8,33.8 4.9,29 1.6,30.7 13.9,36.9 32.4,27.7 "/>
73 64 </g>
74 65 <g>
75 - <polygon id="XMLID_2_" class="st0" points="23,1.5 23,19.8 32.4,24.6 32.4,9.4 35.3,10.9 35.3,29 38.4,30.7 38.4,9.2 29.4,4.8
66 + <polygon id="XMLID_2_" class="st0" points="23,1.5 23,19.8 32.4,24.6 32.4,9.4 35.3,10.9 35.3,29 38.4,30.7 38.4,9.2 29.4,4.8
76 67 29.2,19.7 26,18.4 26,3.1 "/>
77 68 <polygon id="XMLID_1_" class="st1" points="17,38.4 19.9,40 38.4,30.7 35.3,29 "/>
78 69 </g>
79 70 </g>
@@ -79,228 +70,97 @@
79 70 </g>
80 71 </svg>
81 72 SVG;
82 73
83 - add_menu_page(
84 - __('Blockspare', 'blockspare'), // Page Title.
85 - __('Blockspare', 'blockspare'), // Menu Title.
86 - 'edit_posts', // Capability.
87 - 'blockspare', // Menu slug.
88 - array($this, 'blockspare_admin_dashboard'), // Action.
89 - 'data:image/svg+xml;base64,' . base64_encode($svg), // Blockspare icon.
90 - 25
91 - );
74 + add_menu_page(
75 + __('Blockspare', 'blockspare'), // Page Title.
76 + __('Blockspare', 'blockspare'), // Menu Title.
77 + 'edit_posts', // Capability.
78 + 'blockspare', // Menu slug.
79 + array($this, 'blockspare_admin_dashboard'), // Action.
80 + 'data:image/svg+xml;base64,' . base64_encode($svg) // Blockspare icon.
81 + );
92 82
93 - add_submenu_page(
94 - 'blockspare', // Parent slug.
95 - __('Home Dashboard', 'blockspare'), // Page title.
96 - __('Home Dashboard', 'blockspare'), // Menu title.
97 - 'manage_options', // Capability.
98 - 'blockspare', // Menu slug.
99 - array($this, 'blockspare_admin_dashboard'), // Callback function.
100 - 1 // Position
101 - );
83 +
84 + // Our getting started page.
85 + add_submenu_page(
86 + 'blockspare', // Parent slug.
87 + __('Design Library', 'blockspare'), // Page title.
88 + __('Design Library', 'blockspare'), // Menu title.
89 + 'manage_options', // Capability.
90 + 'blockspare', // Menu slug.
91 + array($this, 'blockspare_admin_dashboard'), // Callback function.
92 + 1 // Position
93 + );
102 94
103 - // Our getting started page.
104 - add_submenu_page(
105 - 'blockspare', // Parent slug.
106 - __('Starter Templates', 'blockspare'), // Page title.
107 - __('Starter Templates', 'blockspare'), // Menu title.
108 - 'manage_options', // Capability.
109 - 'bspare-starter-sites', // Menu slug.
110 - array($this, 'blockspare_admin_blocks'), // Callback function.
111 - 1 // Position
112 - );
95 + add_submenu_page(
96 + 'blockspare', // Parent slug.
97 + __('My Templates', 'blockspare'), // Page title.
98 + __('My Templates', 'blockspare'), // Menu title.
99 + 'manage_options', // Capability.
100 + 'edit.php?post_type=bs_templates', // Menu slug.
113 101
114 - add_submenu_page(
115 - 'blockspare', // Parent slug.
116 - __('Gutenberg Blocks', 'blockspare'), // Page title.
117 - __('Gutenberg Blocks', 'blockspare'), // Menu title.
118 - 'manage_options', // Capability.
119 - 'bs-blocks', // Menu slug.
120 - array($this, 'blockspare_admin_explore_more_blocks'), // Callback function.
121 - 2 // Position
122 - );
102 + );
103 + }
123 104
124 - add_submenu_page(
125 - 'blockspare', // Parent slug.
126 - __('Saved Templates', 'blockspare'), // Page title.
127 - __('Saved Templates', 'blockspare'), // Menu title.
128 - 'manage_options', // Capability.
129 - 'edit.php?post_type=bs_templates', // Menu slug.
130 105
131 - );
132 - add_submenu_page(
133 - 'blockspare', // Parent slug.
134 - __('Compare Free & Pro', 'blockspare'), // Page title.
135 - __('Compare Free & Pro', 'blockspare'), // Menu title.
136 - 'manage_options', // Capability.
137 - 'bs-free-pro', // Capability.
138 - array($this, 'blockspare_admin_free_vs_pro'),
139 - );
106 + public function enqueue_dashboard_script($hook)
107 + {
108 + wp_enqueue_style('blockspare-admin', BLOCKSPARE_PLUGIN_URL .'admin/assets/css/style.css','','');
109 + wp_enqueue_script( 'blockspare_dashboard_js', BLOCKSPARE_PLUGIN_URL. 'dist/block_admin_dashboard.js', array('react', 'react-dom', 'wp-components', 'wp-element', 'wp-api-fetch', 'wp-polyfill'), '1.0' );
110 + wp_enqueue_style('blockspare-admin-css',BLOCKSPARE_PLUGIN_URL.'dist/style-block_admin_dashboard.css');
111 + $blockspare_dashboard_logo = BLOCKSPARE_PLUGIN_URL . 'admin/assets/images/blockspare-logo.png';
112 + wp_localize_script(
113 + 'blockspare_dashboard_js',
114 + 'blockspare_dashboard',
115 + array(
116 +
117 + 'logo'=>$blockspare_dashboard_logo,
118 + "imagePath"=> "https://templatespare.com/wp-content/uploads/blockspare-demo-data/blocks/",
119 + "static_img"=>BLOCKSPARE_PLUGIN_URL,
120 + 'newPageUrl'=>admin_url('post-new.php?post_type=page&blockspare_create_block'),
121 + 'adminPath'=>admin_url('post-new.php?post_type=page&blockspare_show_intro=true'),
122 + 'pluginVesion'=>BLOCKSPARE_VERSION
123 +
124 +
125 + )
126 + );
127 + }
140 128
141 - add_submenu_page(
142 - 'blockspare',
143 - esc_html__('Documentation', 'blockspare'),
144 - esc_html__('Documentation', 'blockspare'),
145 - 'manage_options',
146 - esc_url('https://blockspare.com/docs/')
129 + public function blockspare_admin_dashboard()
130 + {
131 + ?>
132 + <div id="bs-dashboard"></div>
133 +
134 + <?php
135 + }
147 136
148 - );
137 + /**
138 + * Adds a marker to remember to redirect after activation.
139 + * Redirecting right away will not work.
140 + */
141 + public static function start_redirect_to_blockspare_page()
142 + {
143 + update_option('blockspare_redirect_to_welcome', '1');
144 + }
149 145
150 - add_submenu_page(
151 - 'blockspare', // Parent slug.
152 - __('Change Log', 'blockspare'), // Page title.
153 - __('Change Log', 'blockspare'), // Menu title.
154 - 'manage_options', // Capability.
155 - 'bs-change-log', // Menu slug.
156 - array($this, 'blockspare_admin_change_log'), // Callback function.
157 -
158 - );
159 -
160 - add_submenu_page(
161 - 'blockspare',
162 - esc_html__('Explore More', 'blockspare'),
163 - esc_html__('Explore More', 'blockspare'),
164 - 'manage_options',
165 - esc_url('https://blockspare.com/')
166 -
167 - );
168 - add_submenu_page(
169 - 'blockspare',
170 - esc_html__('Need a Website?', 'blockspare'),
171 - esc_html__('Need a Website?', 'blockspare'),
172 - 'manage_options',
173 - esc_url('https://afthemes.com/make-a-website/')
174 -
175 - );
176 - add_submenu_page(
177 - 'blockspare',
178 - esc_html__('Power Bundle', 'blockspare'),
179 - esc_html__('Power Bundle', 'blockspare'),
180 - 'manage_options',
181 - esc_url('https://afthemes.com/all-themes-plan/')
182 -
183 - );
184 -
185 -
186 - add_submenu_page(
187 - 'blockspare',
188 - esc_html__('Support', 'blockspare'),
189 - esc_html__('Support', 'blockspare'),
190 - 'manage_options',
191 - esc_url('https://afthemes.com/supports/')
192 -
193 - );
146 + /**
147 + * Redirect to the welcome screen if our marker exists.
148 + */
149 + public function redirect_to_blockspare_page()
150 + {
151 + if (get_option('blockspare_redirect_to_welcome')) {
152 + delete_option('blockspare_redirect_to_welcome');
153 + wp_redirect(esc_url(admin_url('admin.php?page=blockspare')));
154 + die();
155 + }
156 + }
157 +
158 +
159 +
194 160 }
195 161
196 -
197 - public function enqueue_dashboard_script($hook)
198 - {
199 - wp_enqueue_style('blockspare-admin', BLOCKSPARE_PLUGIN_URL . 'admin/assets/css/style.css', '', '');
200 - wp_enqueue_script('blockspare_dashboard_js', BLOCKSPARE_PLUGIN_URL . 'dist/block_admin_dashboard.js', array('react', 'react-dom', 'wp-components', 'wp-element', 'wp-api-fetch', 'wp-polyfill'), '1.0');
201 - wp_enqueue_style('blockspare-admin-css', BLOCKSPARE_PLUGIN_URL . 'dist/dashboard_css.css');
202 - wp_enqueue_script('wp-api');
203 - $blockspare_dashboard_logo = BLOCKSPARE_PLUGIN_URL . 'admin/assets/images/blockspare-logo.png';
204 - global $blockspare_block_manager;
205 -
206 - wp_localize_script(
207 - 'blockspare_dashboard_js',
208 - 'blockspare_dashboard',
209 - array(
210 -
211 - 'logo' => $blockspare_dashboard_logo,
212 - "imagePath" => "https://raw.githubusercontent.com/afthemes/blockspare-demo-data/master/blocks/new/",
213 - "static_img" => BLOCKSPARE_PLUGIN_URL,
214 - 'newPageUrl' => admin_url('post-new.php?post_type=page&blockspare_create_block'),
215 - 'adminPath' => admin_url('post-new.php?post_type=page&blockspare_show_intro=true'),
216 - 'pluginVesion' => BLOCKSPARE_VERSION,
217 - 'exploreUrl' => admin_url('admin.php?page=bs-blocks'),
218 - 'adminUrl' => admin_url('admin.php?page=blockspare'),
219 - 'templateUrl' => admin_url('edit.php?post_type=bs_templates'),
220 - 'starterUrl' => admin_url('admin.php?page=bspare-starter-sites'),
221 - 'blockUrl' => admin_url('admin.php?page=bs-blocks'),
222 - 'freevspro' => admin_url('admin.php?page=bs-free-pro'),
223 - 'changelogUrl' => admin_url('admin.php?page=bs-change-log'),
224 - 'docsUrl' => 'https://blockspare.com/docs/',
225 - 'channel' => 'https://www.youtube.com/@blockspare/videos',
226 - 'devChnagelog' => 'https://wordpress.org/plugins/blockspare/#developers',
227 - 'changelog' => blockspare_get_latest_change_log(),
228 - 'blocks' => $blockspare_block_manager->get_all_blocks(),
229 - 'disabledBlocks' => $blockspare_block_manager->get_disabled_blocks(),
230 -
231 - )
232 - );
233 - }
234 -
235 -
236 - public function blockspare_admin_blocks()
237 - {
238 -?>
239 - <div id="bs-starter-sites"></div>
240 -
241 - <?php
242 - }
243 -
244 - public function blockspare_admin_dashboard()
245 - {
246 - ?>
247 - <div id="bs-dashboard"></div>
248 -
249 -
250 - <?php
251 -
252 - }
253 -
254 - public function blockspare_admin_explore_more_blocks()
255 - {
256 -
257 - ?>
258 - <div id="bs-explore-more-dashboard"></div>
259 -
260 -
261 - <?php
262 - }
263 -
264 - public function blockspare_admin_change_log()
265 - {
266 - ?>
267 - <div id="bs-change-log"></div>
268 - <?php
269 -
270 - }
271 -
272 - public function blockspare_admin_free_vs_pro()
273 - {
274 - ?>
275 - <div id="bs-free-vs-pro"></div>
276 -<?php
277 -
278 - }
279 -
280 - /**
281 - * Adds a marker to remember to redirect after activation.
282 - * Redirecting right away will not work.
283 - */
284 - public static function start_redirect_to_blockspare_page()
285 - {
286 - update_option('blockspare_redirect_to_welcome', '1');
287 - }
288 -
289 - /**
290 - * Redirect to the welcome screen if our marker exists.
291 - */
292 - public function redirect_to_blockspare_page()
293 - {
294 - if (get_option('blockspare_redirect_to_welcome')) {
295 - delete_option('blockspare_redirect_to_welcome');
296 - wp_redirect(esc_url(admin_url('admin.php?page=blockspare')));
297 - die();
298 - }
299 - }
300 - }
301 -
302 - new Blockspare_Admin_Dashboard();
162 + new Blockspare_Admin_Dashboard();
303 163 }
304 164
305 165 // Redirect to the welcome screen.
306 -register_activation_hook(BLOCKSPARE_BASE_FILE, array('Blockspare_Admin_Dashboard', 'start_redirect_to_blockspare_page'));
166 +register_activation_hook(BLOCKSPARE_BASE_FILE, array('Blockspare_Admin_Dashboard', 'start_redirect_to_blockspare_page'));