PluginProbe
Post Grid Gutenberg Blocks – PostX / 2.9.7
Post Grid Gutenberg Blocks – PostX v2.9.7
5.0.39 5.0.38 5.0.37 5.0.36 5.0.35 5.0.34 5.0.33 5.0.32 5.0.31 5.0.30 5.0.29 5.0.28 5.0.27 5.0.26 5.0.25 5.0.23 5.0.24 5.0.22 5.0.21 5.0.20 5.0.19 5.0.18 5.0.17 2.1.1 2.1.2 All 237 releases
ultimate-post / classes / options / Addons.php

Addons.php in Post Grid Gutenberg Blocks – PostX 2.9.7, at classes/options/Addons.php

120 lines 7.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace ULTP;
3
4 defined('ABSPATH') || exit;
5
6 class Option_Addons{
7 public function __construct() {
8 $this->create_admin_page();
9 }
10
11
12 /**
13 * Settings page output
14 */
15 public function create_admin_page() { ?>
16 <div class="ultp-dashboard-container">
17
18 <!-- addons content -->
19 <div class="ultp-dashboard-body ultp-addons-content">
20
21 <!-- Pro Popup Container -->
22 <?php ultimate_post()->pro_popup_html(); ?>
23
24 <h3 class="ultp-md-heading ultp-mb25">
25 <?php _e('All Addons', 'ultimate-post'); ?>
26 </h3>
27
28 <div class="ultp-addons-grid">
29 <?php
30 $settings = apply_filters('ultp_settings', []);
31 $option_value = ultimate_post()->get_setting();
32 $addons_data = ultimate_post()->all_addons();
33
34 $keys =[];
35 foreach ($addons_data as $key => $val) {
36 array_push($keys, !empty($val['position']) ? $val['position'] : 100 );
37 }
38 array_multisort($keys, SORT_ASC, $addons_data);
39
40 foreach ($addons_data as $key => $val) {
41 $require_plugin = '';
42 if (isset($val['required'])) {
43 $active_plugins = get_option( 'active_plugins', array() );
44 if (is_multisite()) {
45 $active_plugins = array_merge($active_plugins, array_keys(get_site_option( 'active_sitewide_plugins', array() )));
46 }
47 if ( !in_array($val['required']['slug'], apply_filters('active_plugins', $active_plugins)) ) {
48 $require_plugin = $val['required']['name'];
49 }
50 }
51 ?>
52 <div class="ultp-content-addon ultp-card ultp-p25">
53 <div class="ultp-content-addon-container">
54 <div class="ultp-content-meta">
55 <img src="<?php echo esc_url($val['img']); ?>" alt="<?php echo esc_attr($val['name']); ?>">
56 </div>
57 <div class="ultp-addons-option-wrapper">
58 <div class="ultp-addons-option-control">
59 <h4 class="ultp-xs-heading"><?php echo esc_html($val['name']); ?></h4>
60 <div class="ultp-control-option">
61 <?php
62 if (isset($val['docs'])) { ?>
63 <a href="<?php echo esc_url($val['docs']); ?>" class="ultp-option-tooltip" target="_blank">
64 <span><?php esc_html_e('Documentation', 'ultimate-post'); ?></span>
65 <div class="dashicons dashicons-book"></div>
66 </a>
67 <?php } ?>
68
69 <?php
70 if (isset($val['live'])) { ?>
71 <a href="<?php echo esc_url($val['live']); ?>" class="ultp-option-tooltip" target="_blank">
72 <span><?php esc_html_e('Live View', 'ultimate-post'); ?></span>
73 <div class="dashicons dashicons-visibility"></div>
74 </a>
75 <?php } ?>
76
77 <input type="checkbox" data-type="<?php echo esc_attr($key); ?>" class="ultp-addons-enable <?php echo (($val['is_pro'] && (!defined('ULTP_PRO_VER'))) ? 'disabled' : ''); ?>" id="<?php echo esc_attr($key); ?>" <?php echo ( isset($option_value[$key]) && $option_value[$key] == 'true' ? $val['is_pro'] && (!defined('ULTP_PRO_VER')) ? '' : 'checked' : '' ); ?>/>
78 <label for="<?php echo esc_attr($key); ?>" class="ultp-control__label">
79 <?php if ($val['is_pro'] && (!defined('ULTP_PRO_VER'))) { ?>
80 <span class="dashicons dashicons-lock"></span>
81 <?php } ?>
82 </label>
83
84 <?php
85 if (isset($settings[$key])) { ?>
86 <span class="ultp-block-settings dashicons dashicons-admin-generic"></span>
87 <div class="ultp-popup-container blocks-settings">
88 <div class="ultp-unlock-popup">
89 <form action="">
90 <?php
91 require_once ULTP_PATH.'classes/options/Settings.php';
92 $obj = new \ULTP\Option_Settings();
93 $obj->get_settings_data($settings[$key]['attr']);
94 ?>
95 <div class="ultp-data-message"></div>
96 <div>
97 <button class="ultp-addons-setting-save"><?php esc_html_e('Save Settings', 'ultimate-post'); ?></button>
98 </div>
99 </form>
100 <button class="ultp-popup-close"></button>
101 </div>
102 </div>
103 <?php } ?>
104 </div>
105 </div>
106 <div class="ultp-addon-desc ultp-sm-text"><?php echo esc_html($val['desc']); ?></div>
107 </div>
108 </div>
109 <?php if ($require_plugin) { ?>
110 <div class="ultp-plugin-required">
111 <?php esc_html_e('This addon required this plugin:', 'ultimate-post'); ?> <b><?php echo wp_kses($require_plugin, 'post'); ?></b>
112 </div>
113 <?php } ?>
114 </div>
115 <?php } ?>
116 </div>
117 </div>
118 </div>
119 <?php }
120 }