PluginProbe ʕ •ᴥ•ʔ
Premium Addons for Elementor – Powerful Elementor Templates & Widgets / 4.10.78
Premium Addons for Elementor – Powerful Elementor Templates & Widgets v4.10.78
4.11.79 4.11.78 4.11.77 4.11.76 4.11.75 3.20.5 4.11.69 3.20.6 4.11.7 3.20.7 4.11.70 3.20.8 4.11.71 3.20.9 4.11.72 3.21.1 4.11.73 3.21.2 4.11.74 3.21.3 4.11.8 3.21.4 4.11.9 3.21.5 4.2.0 3.21.6 4.2.1 3.3.0 4.2.2 3.3.1 4.2.3 3.3.2 4.2.4 3.3.3 4.2.5 3.3.4 4.2.6 3.3.5 4.2.7 3.3.6 4.2.8 3.3.7 4.2.9 3.3.8 4.3.0 3.3.9 4.3.1 3.4.0 4.3.2 3.4.1 4.3.3 3.4.2 4.3.4 3.4.3 4.3.5 3.4.4 4.3.6 3.4.5 4.3.7 3.4.6 4.3.8 3.4.7 4.3.9 3.4.8 4.4.0 3.4.9 4.4.1 3.5.0 4.4.2 3.5.1 4.4.3 3.5.2 4.4.4 3.5.3 4.4.5 3.5.4 4.4.6 3.5.5 4.4.7 3.5.6 4.4.8 3.5.7 4.4.9 3.5.8 4.5.0 3.5.9 4.5.1 3.6.0 4.5.2 3.6.1 4.5.3 3.6.2 4.5.4 3.6.3 4.5.5 3.6.4 4.5.6 3.6.5 4.5.7 3.6.6 4.5.8 3.6.7 4.5.9 3.6.8 4.6.0 3.6.9 4.6.1 3.7.0 4.7.0 3.7.1 4.7.1 3.7.2 4.7.2 3.7.3 4.7.3 3.7.4 4.7.4 3.7.5 4.7.5 3.7.6 4.7.6 3.7.7 4.7.7 3.7.8 4.7.8 3.7.9 4.7.9 3.8.0 4.8.0 3.8.1 4.8.1 3.8.2 4.8.10 3.8.3 4.8.11 3.8.4 4.8.2 3.8.5 4.8.3 3.8.6 4.8.4 3.8.7 4.8.5 3.8.8 4.8.6 3.8.9 4.8.7 3.9.0 4.8.8 3.9.1 4.8.9 3.9.2 4.9.0 3.9.3 4.9.0-beta1 3.9.4 4.9.0-beta2 3.9.5 4.9.1 3.9.6 4.9.10 3.9.7 4.9.11 3.9.8 4.9.12 3.9.9 4.9.13 4.0.1 4.9.14 4.0.3 4.9.15 4.0.4 4.9.16 4.0.5 4.9.17 4.0.6 4.9.18 4.0.7 4.9.19 4.0.8 4.9.2 4.0.9 4.9.20 4.1.0 4.9.21 4.1.1 4.9.22 4.1.2 4.9.23 4.1.3 4.9.24 trunk 4.1.4 4.9.25 1.0 4.1.5 4.9.26 1.01 4.1.6 4.9.27 1.02 4.1.7 4.9.28 1.03 4.1.8 4.9.29 1.04 4.1.9 4.9.3 1.05 4.10.0 4.9.30 1.06 4.10.1 4.9.31 1.07 4.10.10 4.9.32 1.08 4.10.11 4.9.33 1.09 4.10.12 4.9.34 2.0 4.10.13 4.9.35 2.0.1 4.10.14 4.9.36 2.0.2 4.10.15 4.9.37 2.0.3 4.10.16 4.9.38 2.0.4 4.10.17 4.9.39 2.0.5 4.10.18 4.9.4 2.0.6 4.10.19 4.9.40 2.0.7 4.10.2 4.9.41 2.0.8 4.10.20 4.9.42 2.0.9 4.10.21 4.9.43 2.1.0 4.10.22 4.9.45 2.1.1 4.10.23 4.9.46 2.1.2 4.10.24 4.9.47 2.1.3 4.10.25 4.9.48 2.1.4 4.10.26 4.9.49 2.1.5 4.10.27 4.9.5 2.1.5-beta1 4.10.28 4.9.50 2.1.6 4.10.29 4.9.51 2.1.7 4.10.3 4.9.52 2.1.8 4.10.30 4.9.53 2.1.9 4.10.31 4.9.54 2.2.0 4.10.32 4.9.55 2.2.1 4.10.33 4.9.56 2.2.2 4.10.34 4.9.57 2.2.3 4.10.35 4.9.6 2.2.4 4.10.36 4.9.7 2.2.5 4.10.37 4.9.8 2.2.6 4.10.38 4.9.9 2.2.7 4.10.39 2.2.8 4.10.4 2.2.9 4.10.40 2.3.0 4.10.41 2.3.1 4.10.42 2.3.2 4.10.43 2.3.3 4.10.44 2.3.4 4.10.45 2.3.5 4.10.46 2.3.6 4.10.47 2.3.7 4.10.48 2.3.8 4.10.49 2.3.9 4.10.5 2.4.0 4.10.50 2.4.1 4.10.51 2.5.0 4.10.52 2.5.1 4.10.53 2.5.2 4.10.54 2.5.3 4.10.55 2.5.4 4.10.56 2.5.5 4.10.57 2.5.6 4.10.58 2.5.7 4.10.59 2.5.8 4.10.6 2.5.9 4.10.60 2.6.0 4.10.61 2.6.1 4.10.62 2.6.2 4.10.63 2.6.3 4.10.64 2.6.4 4.10.65 2.6.5 4.10.66 2.6.6 4.10.67 2.6.7 4.10.68 2.6.8 4.10.69 2.6.9 4.10.7 2.7.0 4.10.70 2.7.1 4.10.71 2.7.2 4.10.72 2.7.3 4.10.73 2.7.4 4.10.74 2.7.5 4.10.75 2.7.6 4.10.76 2.7.7 4.10.77 2.7.8 4.10.78 2.7.9 4.10.79 2.8.0 4.10.8 2.8.1 4.10.80 2.8.2 4.10.81 2.8.3 4.10.82 2.8.4 4.10.83 2.8.5 4.10.84 2.8.6 4.10.85 2.8.7 4.10.86 2.8.8 4.10.87 2.8.9 4.10.88 2.9.0 4.10.89 2.9.1 4.10.9 2.9.2 4.10.90 2.9.3 4.11.0 2.9.4 4.11.1 2.9.5 4.11.10 2.9.6 4.11.11 2.9.7 4.11.12 2.9.8 4.11.13 2.9.9 4.11.14 3.0.0 4.11.15 3.0.1 4.11.16 3.0.2 4.11.17 3.0.3 4.11.18 3.0.4 4.11.19 3.0.5 4.11.2 3.0.6 4.11.20 3.0.7 4.11.21 3.0.8 4.11.22 3.0.9 4.11.23 3.1.0 4.11.24 3.1.1 4.11.25 3.1.2 4.11.26 3.1.3 4.11.27 3.1.4 4.11.28 3.1.5 4.11.29 3.1.6 4.11.3 3.1.7 4.11.30 3.1.8 4.11.31 3.1.9 4.11.32 3.10.0 4.11.33 3.10.1 4.11.34 3.10.2 4.11.35 3.10.3 4.11.36 3.10.4 4.11.37 3.10.5 4.11.38 3.10.6 4.11.39 3.10.7 4.11.4 3.10.8 4.11.40 3.10.9 4.11.41 3.11.0 4.11.42 3.11.1 4.11.43 3.11.2 4.11.44 3.11.3 4.11.45 3.11.4 4.11.46 3.11.5 4.11.47 3.11.6 4.11.48 3.11.7 4.11.49 3.11.8 4.11.5 3.11.9 4.11.50 3.12.0 4.11.51 3.12.1 4.11.52 3.12.2 4.11.53 3.12.3 4.11.54 3.2.0 4.11.55 3.2.1 4.11.56 3.2.2 4.11.57 3.2.3 4.11.58 3.2.4 4.11.59 3.2.5 4.11.6 3.2.6 4.11.60 3.2.7 4.11.61 3.2.8 4.11.62 3.2.9 4.11.63 3.20.0 4.11.64 3.20.1 4.11.65 3.20.2 4.11.66 3.20.3 4.11.67 3.20.4 4.11.68
premium-addons-for-elementor / includes / class-pa-core.php
premium-addons-for-elementor / includes Last commit date
controls 1 year ago pa-display-conditions 1 year ago templates 1 year ago acf-helper.php 1 year ago addons-cross-cp.php 1 year ago addons-integration.php 1 year ago assets-manager.php 1 year ago class-pa-core.php 1 year ago class-premium-template-tags.php 1 year ago helper-functions.php 1 year ago live-editor-modal.php 1 year ago module-base.php 1 year ago pa-nav-menu-walker.php 1 year ago
class-pa-core.php
269 lines
1 <?php
2 /**
3 * PA Core.
4 */
5
6 namespace PremiumAddons\Includes;
7
8 if ( ! class_exists( 'PA_Core' ) ) {
9
10 /**
11 * Intialize and Sets up the plugin
12 */
13 class PA_Core {
14
15 /**
16 * Member Variable
17 *
18 * @var instance
19 */
20 private static $instance = null;
21
22 /**
23 * Sets up needed actions/filters for the plug-in to initialize.
24 *
25 * @since 1.0.0
26 * @access public
27 *
28 * @return void
29 */
30 public function __construct() {
31
32 // Autoloader.
33 spl_autoload_register( array( $this, 'autoload' ) );
34
35 // Load plugin textdomain.
36 add_action( 'init', array( $this, 'i18n' ) );
37
38 // Run plugin and require the necessary files.
39 add_action( 'plugins_loaded', array( $this, 'premium_addons_elementor_setup' ) );
40
41 // Load Elementor files.
42 add_action( 'elementor/init', array( $this, 'elementor_init' ) );
43
44 add_action( 'elementor/elements/categories_registered', array( $this, 'register_widgets_category' ), 9 );
45 add_action( 'init', array( $this, 'init' ), -999 );
46
47 // Register Activation hooks.
48 register_activation_hook( PREMIUM_ADDONS_FILE, array( $this, 'handle_activation' ) );
49 }
50
51 /**
52 * AutoLoad
53 *
54 * @since 3.20.9
55 * @param string $class class.
56 */
57 public function autoload( $class ) {
58
59 if ( 0 !== strpos( $class, 'PremiumAddons' ) ) {
60 return;
61 }
62
63 $class_to_load = $class;
64
65 if ( ! class_exists( $class_to_load ) ) {
66 $filename = strtolower(
67 preg_replace(
68 array( '/^PremiumAddons\\\/', '/([a-z])([A-Z])/', '/_/', '/\\\/' ),
69 array( '', '$1-$2', '-', DIRECTORY_SEPARATOR ),
70 $class_to_load
71 )
72 );
73
74 $filename = PREMIUM_ADDONS_PATH . $filename . '.php';
75
76 if ( is_readable( $filename ) ) {
77 include $filename;
78 }
79 }
80 }
81
82 /**
83 * Installs translation text domain and checks if Elementor is installed
84 *
85 * @since 1.0.0
86 * @access public
87 *
88 * @return void
89 */
90 public function premium_addons_elementor_setup() {
91
92 // load plugin necessary files.
93 $this->load_files();
94 }
95
96 /**
97 * Set transient for admin review notice
98 *
99 * @since 3.1.7
100 * @access public
101 *
102 * @return void
103 */
104 public function handle_activation() {
105
106 $cache_key = 'premium_notice_' . PREMIUM_ADDONS_VERSION;
107
108 $expiration = DAY_IN_SECONDS * 7;
109
110 set_transient( $cache_key, true, $expiration );
111
112 $install_time = get_option( 'pa_install_time' );
113
114 if ( ! $install_time ) {
115
116 $current_time = gmdate( 'j F, Y', time() );
117
118 update_option( 'pa_install_time', $current_time );
119
120 $api_url = 'https://feedbackpa.leap13.com/wp-json/install/v2/add';
121
122 $response = wp_safe_remote_request(
123 $api_url,
124 array(
125 'headers' => array(
126 'Content-Type' => 'application/json',
127 ),
128 'body' => wp_json_encode(
129 array(
130 'time' => $current_time,
131 )
132 ),
133 'timeout' => 20,
134 'method' => 'POST',
135 'httpversion' => '1.1',
136 )
137 );
138
139 set_transient( 'pa_activation_redirect', true, 30 );
140
141 }
142 }
143
144
145 /**
146 * Require initial necessary files
147 *
148 * @since 2.6.8
149 * @access public
150 *
151 * @return void
152 */
153 public function load_files() {
154
155 \PremiumAddons\Admin\Includes\Admin_Helper::get_instance();
156
157 $check_dynamic_assets = \PremiumAddons\Admin\Includes\Admin_Helper::check_element_by_key( 'premium-assets-generator' );
158
159 if ( $check_dynamic_assets ) {
160 \PremiumAddons\Includes\Assets_Manager::get_instance();
161 }
162 }
163
164 /**
165 * Load plugin translated strings using text domain
166 *
167 * @since 2.6.8
168 * @access public
169 *
170 * @return void
171 */
172 public function i18n() {
173
174 load_plugin_textdomain( 'premium-addons-for-elementor' );
175 }
176
177 /**
178 * Elementor Init
179 *
180 * Initialize plugin after Elementor is run.
181 *
182 * @since 2.6.8
183 * @access public
184 *
185 * @return void
186 */
187 public function elementor_init() {
188
189 require_once PREMIUM_ADDONS_PATH . 'includes/class-premium-template-tags.php';
190
191 // Outdated WPML compatibility.
192 // Compatibility\Premium_Addons_Wpml::get_instance();
193
194 Addons_Integration::get_instance();
195 }
196
197 /**
198 * Register Widgets Category
199 *
200 * Register a new category for Premium Addons widgets
201 *
202 * @since 4.0.0
203 * @access public
204 *
205 * @param object $elements_manager elements manager.
206 */
207 public function register_widgets_category( $elements_manager ) {
208
209 $elements_manager->add_category(
210 'premium-elements',
211 array(
212 'title' => Helper_Functions::get_category(),
213 ),
214 1
215 );
216 }
217
218 /**
219 * Init
220 *
221 * @since 3.4.0
222 * @access public
223 *
224 * @return void
225 */
226 public function init() {
227
228 if ( is_user_logged_in() && \PremiumAddons\Admin\Includes\Admin_Helper::check_premium_templates() ) {
229 require_once PREMIUM_ADDONS_PATH . 'includes/templates/templates.php';
230 }
231 }
232
233
234 /**
235 * Creates and returns an instance of the class
236 *
237 * @since 2.6.8
238 * @access public
239 *
240 * @return object
241 */
242 public static function get_instance() {
243
244 if ( ! isset( self::$instance ) ) {
245
246 self::$instance = new self();
247
248 }
249
250 return self::$instance;
251 }
252 }
253 }
254
255 if ( ! function_exists( 'pa_core' ) ) {
256
257 /**
258 * Returns an instance of the plugin class.
259 *
260 * @since 1.0.0
261 * @return object
262 */
263 function pa_core() {
264 return PA_Core::get_instance();
265 }
266 }
267
268 pa_core();
269