PluginProbe
weForms – Easy Drag & Drop Contact Form Builder For WordPress / 1.2.4
weForms – Easy Drag & Drop Contact Form Builder For WordPress v1.2.4
1.6.7 1.6.8 1.6.9 1.6.12 1.6.13 1.6.14 1.6.15 1.6.16 1.6.17 1.6.18 1.6.19 1.6.2 1.6.20 1.6.21 1.6.22 1.6.23 1.6.24 1.6.25 1.6.26 1.6.27 1.6.28 1.6.3 1.6.4 1.6.5 1.6.6 All 74 releases
← All changes | weforms.php +72 -85 1.6.201.2.4 View file →
@@ -1,12 +1,12 @@
1 1 <?php
2 2 /**
3 3 * Plugin Name: weForms
4 4 * Description: The best contact form plugin for WordPress
5 - * Plugin URI: https://weformspro.com/
6 - * Author: weForms
7 - * Author URI: https://weformspro.com/
8 - * Version: 1.6.20
5 + * Plugin URI: https://wedevs.com/weforms/
6 + * Author: weDevs
7 + * Author URI: https://wedevs.com/
8 + * Version: 1.2.4
9 9 * License: GPL2 or later
10 10 * License URI: https://www.gnu.org/licenses/gpl-2.0.html
11 11 * Text Domain: weforms
12 12 * Domain Path: /languages
@@ -12,9 +12,9 @@
12 12 * Domain Path: /languages
13 13 */
14 14
15 15 /**
16 - * Copyright (c) 2020 weForms LLC (email: support@weformspro.com). All rights reserved.
16 + * Copyright (c) 2017 weDevs LLC (email: info@wedevs.com). All rights reserved.
17 17 *
18 18 * Released under the GPL license
19 19 * http://www.opensource.org/licenses/gpl-license.php
20 20 *
@@ -38,9 +38,9 @@
38 38 * **********************************************************************
39 39 */
40 40
41 41 // don't call the file directly
42 -if ( !defined( 'ABSPATH' ) ) {
42 +if ( ! defined( 'ABSPATH' ) ) {
43 43 exit;
44 44 }
45 45
46 46 /**
@@ -54,9 +54,9 @@
54 54 * Plugin version
55 55 *
56 56 * @var string
57 57 */
58 - public $version = '1.6.20';
58 + public $version = '1.2.4';
59 59
60 60 /**
61 61 * Form field value seperator
62 62 *
@@ -61,9 +61,9 @@
61 61 * Form field value seperator
62 62 *
63 63 * @var string
64 64 */
65 - public static $field_separator = '| ';
65 + static $field_separator = '| ';
66 66
67 67 /**
68 68 * Holds various class instances
69 69 *
@@ -68,17 +68,19 @@
68 68 * Holds various class instances
69 69 *
70 70 * @var array
71 71 */
72 - private $container = [];
72 + private $container = array();
73 73
74 +
74 75 /**
75 76 * Minimum PHP version required
76 77 *
77 78 * @var string
78 79 */
79 - private $min_php = '5.6.0';
80 + private $min_php = '5.4.0';
80 81
82 +
81 83 /**
82 84 * Constructor for the WeForms class
83 85 *
84 86 * Sets up all the appropriate hooks and actions
@@ -84,22 +86,22 @@
84 86 * Sets up all the appropriate hooks and actions
85 87 * within our plugin.
86 88 */
87 89 public function __construct() {
90 +
88 91 $this->define_constants();
89 92
90 - if ( !$this->is_supported_php() ) {
91 - register_activation_hook( __FILE__, [ $this, 'auto_deactivate' ] );
92 - add_action( 'admin_notices', [ $this, 'php_version_notice' ] );
93 -
93 + if ( ! $this->is_supported_php() ) {
94 + register_activation_hook( __FILE__, array( $this, 'auto_deactivate' ) );
95 + add_action( 'admin_notices', array( $this, 'php_version_notice' ) );
94 96 return;
95 97 }
96 98
97 - register_activation_hook( __FILE__, [ $this, 'activate' ] );
98 - register_deactivation_hook( __FILE__, [ $this, 'deactivate' ] );
99 + register_activation_hook( __FILE__, array( $this, 'activate' ) );
100 + register_deactivation_hook( __FILE__, array( $this, 'deactivate' ) );
99 101
100 - add_action( 'admin_init', [ $this, 'plugin_upgrades' ] );
101 - add_action( 'plugins_loaded', [ $this, 'init_plugin' ] );
102 + add_action( 'admin_init', array( $this, 'plugin_upgrades' ) );
103 + add_action( 'plugins_loaded', array( $this, 'init_plugin' ) );
102 104 }
103 105
104 106 /**
105 107 * Magic getter to bypass referencing plugin.
@@ -135,10 +137,9 @@
135 137 */
136 138 public static function init() {
137 139 static $instance = false;
138 140
139 - if ( !$instance ) {
140 - self::log();
141 + if ( ! $instance ) {
141 142 $instance = new WeForms();
142 143 }
143 144
144 145 return $instance;
@@ -151,9 +152,9 @@
151 152 */
152 153 private function define_constants() {
153 154 define( 'WEFORMS_VERSION', $this->version );
154 155 define( 'WEFORMS_FILE', __FILE__ );
155 - define( 'WEFORMS_ROOT', __DIR__ );
156 + define( 'WEFORMS_ROOT', dirname( __FILE__ ) );
156 157 define( 'WEFORMS_INCLUDES', WEFORMS_ROOT . '/includes' );
157 158 define( 'WEFORMS_ROOT_URI', plugins_url( '', __FILE__ ) );
158 159 define( 'WEFORMS_ASSET_URI', WEFORMS_ROOT_URI . '/assets' );
159 160 }
@@ -163,8 +164,9 @@
163 164 *
164 165 * @return void
165 166 */
166 167 public function init_plugin() {
168 +
167 169 $this->includes();
168 170 $this->init_hooks();
169 171
170 172 do_action( 'weforms_loaded' );
@@ -181,17 +183,17 @@
181 183 require_once WEFORMS_INCLUDES . '/class-field-manager.php';
182 184 require_once WEFORMS_INCLUDES . '/class-form-manager.php';
183 185 require_once WEFORMS_INCLUDES . '/class-template-manager.php';
184 186
185 - if ( !array_key_exists( 'fields', $this->container ) ) {
187 + if ( ! array_key_exists( 'fields', $this->container ) ) {
186 188 $this->container['fields'] = new WeForms_Field_Manager();
187 189 }
188 190
189 - if ( !array_key_exists( 'form', $this->container ) ) {
191 + if ( ! array_key_exists( 'form', $this->container ) ) {
190 192 $this->container['form'] = new WeForms_Form_Manager();
191 193 }
192 194
193 - if ( !array_key_exists( 'templates', $this->container ) ) {
195 + if ( ! array_key_exists( 'templates', $this->container ) ) {
194 196 $this->container['templates'] = new WeForms_Template_Manager();
195 197 }
196 198
197 199 $installer = new WeForms_Installer();
@@ -203,8 +205,9 @@
203 205 *
204 206 * Nothing being called here yet.
205 207 */
206 208 public function deactivate() {
209 +
207 210 }
208 211
209 212 /**
210 213 * Include the required classes
@@ -211,8 +214,9 @@
211 214 *
212 215 * @return void
213 216 */
214 217 public function includes() {
218 +
215 219 require_once WEFORMS_INCLUDES . '/compat/class-abstract-wpuf-integration.php';
216 220
217 221 if ( $this->is_request( 'admin' ) ) {
218 222 // compatibility
@@ -222,15 +226,13 @@
222 226 require_once WEFORMS_INCLUDES . '/admin/class-admin-welcome.php';
223 227 require_once WEFORMS_INCLUDES . '/class-importer-manager.php';
224 228
225 229 require_once WEFORMS_INCLUDES . '/admin/class-pro-upgrades.php';
226 - require_once WEFORMS_INCLUDES . '/admin/class-promotion.php';
227 - require_once WEFORMS_INCLUDES . '/admin/class-shortcode-button.php';
228 - require_once WEFORMS_INCLUDES . '/admin/class-privacy.php';
230 +
229 231 } else {
230 232
231 233 // add reCaptcha library if not found
232 - if ( !function_exists( 'recaptcha_get_html' ) ) {
234 + if ( ! function_exists( 'recaptcha_get_html' ) ) {
233 235 require_once WEFORMS_INCLUDES . '/library/reCaptcha/recaptchalib.php';
234 236 require_once WEFORMS_INCLUDES . '/library/reCaptcha/recaptchalib_noCaptcha.php';
235 237 }
236 238 }
@@ -237,12 +239,11 @@
237 239
238 240 if ( $this->is_request( 'frontend' ) || $this->is_request( 'ajax' ) ) {
239 241 require_once WEFORMS_INCLUDES . '/class-frontend-form.php';
240 242 }
241 - require_once WEFORMS_INCLUDES . '/api/class-weforms-api-rest-controller.php';
242 - require_once WEFORMS_INCLUDES . '/class-weforms-api.php';
243 +
244 + require_once WEFORMS_INCLUDES . '/admin/class-wedevs-insights.php';
243 245 require_once WEFORMS_INCLUDES . '/class-scripts-styles.php';
244 - require_once WEFORMS_INCLUDES . '/admin/class-gutenblock.php';
245 246 require_once WEFORMS_INCLUDES . '/class-emailer.php';
246 247 require_once WEFORMS_INCLUDES . '/class-field-manager.php';
247 248 require_once WEFORMS_INCLUDES . '/class-form-manager.php';
248 249 require_once WEFORMS_INCLUDES . '/class-form-entry-manager.php';
@@ -247,9 +248,8 @@
247 248 require_once WEFORMS_INCLUDES . '/class-form-manager.php';
248 249 require_once WEFORMS_INCLUDES . '/class-form-entry-manager.php';
249 250 require_once WEFORMS_INCLUDES . '/class-form-entry.php';
250 251 require_once WEFORMS_INCLUDES . '/class-form.php';
251 - require_once WEFORMS_INCLUDES . '/class-form-widget.php';
252 252
253 253 require_once WEFORMS_INCLUDES . '/integrations/class-abstract-integration.php';
254 254 require_once WEFORMS_INCLUDES . '/class-integration-manager.php';
255 255
@@ -256,9 +256,8 @@
256 256 require_once WEFORMS_INCLUDES . '/class-ajax.php';
257 257 require_once WEFORMS_INCLUDES . '/class-ajax-upload.php';
258 258 require_once WEFORMS_INCLUDES . '/class-notification.php';
259 259 require_once WEFORMS_INCLUDES . '/class-form-preview.php';
260 - require_once WEFORMS_INCLUDES . '/class-dokan-integration.php';
261 260 require_once WEFORMS_INCLUDES . '/functions.php';
262 261 }
263 262
264 263 /**
@@ -267,10 +266,11 @@
267 266 * @since 1.1.2
268 267 *
269 268 * @return void
270 269 */
271 - public function plugin_upgrades() {
272 - if ( !current_user_can( 'manage_options' ) ) {
270 + function plugin_upgrades() {
271 +
272 + if ( ! current_user_can( 'manage_options' ) ) {
273 273 return;
274 274 }
275 275
276 276 require_once WEFORMS_INCLUDES . '/class-upgrades.php';
@@ -289,15 +289,15 @@
289 289 */
290 290 public function init_hooks() {
291 291
292 292 // Localize our plugin
293 - add_action( 'init', [ $this, 'localization_setup' ] );
293 + add_action( 'init', array( $this, 'localization_setup' ) );
294 294
295 295 // initialize the classes
296 - add_action( 'init', [ $this, 'init_classes' ] );
297 - add_action( 'init', [ $this, 'wpdb_table_shortcuts' ], 0 );
296 + add_action( 'init', array( $this, 'init_classes' ) );
297 + add_action( 'init', array( $this, 'wpdb_table_shortcuts' ), 0 );
298 298
299 - add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), [ $this, 'plugin_action_links' ] );
299 + add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'plugin_action_links' ) );
300 300 }
301 301
302 302 /**
303 303 * Set WPDB table shortcut names
@@ -325,8 +325,9 @@
325 325 *
326 326 * @return void
327 327 */
328 328 public function init_classes() {
329 +
329 330 if ( $this->is_request( 'admin' ) ) {
330 331 $this->container['admin'] = new WeForms_Admin();
331 332 // $this->container['welcome'] = new WeForms_Admin_Welcome();
332 333 $this->container['templates'] = new WeForms_Template_Manager();
@@ -331,10 +332,8 @@
331 332 // $this->container['welcome'] = new WeForms_Admin_Welcome();
332 333 $this->container['templates'] = new WeForms_Template_Manager();
333 334 $this->container['pro_upgrades'] = new WeForms_Pro_Upgrades();
334 335 $this->container['importer'] = new WeForms_Importer_Manager();
335 - $this->container['promo_offer'] = new WeForms_Admin_Promotion();
336 - $this->container['privacy'] = new WeForms_Privacy();
337 336 }
338 337
339 338 if ( $this->is_request( 'frontend' ) || $this->is_request( 'ajax' ) ) {
340 339 $this->container['frontend'] = new WeForms_Frontend_Form();
@@ -339,16 +338,16 @@
339 338 if ( $this->is_request( 'frontend' ) || $this->is_request( 'ajax' ) ) {
340 339 $this->container['frontend'] = new WeForms_Frontend_Form();
341 340 }
342 341
343 - $this->container['emailer'] = new WeForms_Emailer();
344 - $this->container['form'] = new WeForms_Form_Manager();
345 - $this->container['fields'] = new WeForms_Field_Manager();
346 - $this->container['integrations'] = new WeForms_Integration_Manager();
347 - $this->container['preview'] = new WeForms_Form_Preview();
348 - $this->container['scripts'] = new WeForms_Scripts_Styles();
349 - $this->container['block'] = new weForms_FormBlock();
350 - $this->container['dokan_integration'] = new weForms_Dokan_Integration();
342 + $this->container['insights'] = new WeDevs_Insights( 'weforms', 'weForms', __FILE__ );
343 + $this->container['emailer'] = new WeForms_Emailer();
344 + $this->container['form'] = new WeForms_Form_Manager();
345 + $this->container['fields'] = new WeForms_Field_Manager();
346 + $this->container['integrations'] = new WeForms_Integration_Manager();
347 + $this->container['preview'] = new WeForms_Form_Preview();
348 + $this->container['scripts'] = new WeForms_Scripts_Styles();
349 +
351 350 // instantiate the integrations
352 351 $this->integrations->get_integrations();
353 352
354 353 if ( $this->is_request( 'ajax' ) ) {
@@ -354,9 +353,8 @@
354 353 if ( $this->is_request( 'ajax' ) ) {
355 354 $this->container['ajax'] = new WeForms_Ajax();
356 355 $this->container['ajax_upload'] = new WeForms_Ajax_Upload();
357 356 }
358 - $this->container['weforms_api'] = new WeForms_Api();
359 357 }
360 358
361 359 /**
362 360 * The main logging function
@@ -361,22 +359,18 @@
361 359 /**
362 360 * The main logging function
363 361 *
364 362 * @uses error_log
365 - *
366 363 * @param string $type type of the error. e.g: debug, error, info
367 364 * @param string $msg
368 365 */
369 366 public static function log( $type = '', $msg = '' ) {
370 367
371 - if(file_exists(WP_CONTENT_DIR . '/weforms.log')){
372 - unlink(WP_CONTENT_DIR . '/weforms.log');
373 - }
374 - return;
375 368 // default we are turning the debug mood on, but can be turned off
376 - if ( defined( 'WEFORMS_DEBUG_LOG' ) && false === WEFORMS_DEBUG_LOG ) {
377 - return;
369 + if ( defined( 'WEFORMS_DEBUG_LOG' ) && false === WEFORMS_DEBUG_LOG ) {
370 + return;
378 371 }
372 +
379 373 $msg = sprintf( "[%s][%s] %s\n", date( 'd.m.Y h:i:s' ), $type, $msg );
380 374 @error_log( $msg, 3, weforms_log_file_path() );
381 375 }
382 376
@@ -382,14 +376,15 @@
382 376
383 377 /**
384 378 * Plugin action links
385 379 *
386 - * @param array $links
380 + * @param array $links
387 381 *
388 382 * @return array
389 383 */
390 - public function plugin_action_links( $links ) {
391 - $links[] = '<a href="https://weformspro.com/?utm_source=weforms-action-link&utm_medium=textlink&utm_campaign=plugin-docs-link" target="_blank">' . __( 'Docs', 'weforms' ) . '</a>';
384 + function plugin_action_links( $links ) {
385 +
386 + $links[] = '<a href="https://wedevs.com/docs/weforms/?utm_source=weforms-action-link&utm_medium=textlink&utm_campaign=plugin-docs-link" target="_blank">' . __( 'Docs', 'weforms' ) . '</a>';
392 387 $links[] = '<a href="' . admin_url( 'admin.php?page=weforms' ) . '">' . __( 'Settings', 'weforms' ) . '</a>';
393 388
394 389 return $links;
395 390 }
@@ -399,11 +394,12 @@
399 394 *
400 395 * @return bool
401 396 */
402 397 public function is_supported_php( $min_php = null ) {
398 +
403 399 $min_php = $min_php ? $min_php : $this->min_php;
404 400
405 - if ( version_compare( PHP_VERSION, $min_php, '<=' ) ) {
401 + if ( version_compare( PHP_VERSION, $min_php , '<=' ) ) {
406 402 return false;
407 403 }
408 404
409 405 return true;
@@ -413,17 +409,19 @@
413 409 * Show notice about PHP version
414 410 *
415 411 * @return void
416 412 */
417 - public function php_version_notice() {
418 - if ( $this->is_supported_php() || !current_user_can( 'manage_options' ) ) {
413 + function php_version_notice() {
414 +
415 + if ( $this->is_supported_php() || ! current_user_can( 'manage_options' ) ) {
419 416 return;
420 417 }
421 418
422 419 $error = __( 'Your installed PHP Version is: ', 'weforms' ) . PHP_VERSION . '. ';
423 - $error .= __( 'The <strong>weForms</strong> plugin requires PHP version <strong>', 'weforms' ) . $this->min_php . __( '</strong> or greater.', 'weforms' ); ?>
420 + $error .= __( 'The <strong>weForms</strong> plugin requires PHP version <strong>', 'weforms' ) . $this->min_php . __( '</strong> or greater.', 'weforms' );
421 + ?>
424 422 <div class="error">
425 - <p><?php printf( wp_kses_post ( $error ) ); ?></p>
423 + <p><?php printf( $error ); ?></p>
426 424 </div>
427 425 <?php
428 426 }
429 427
@@ -431,9 +429,9 @@
431 429 * Bail out if the php version is lower than
432 430 *
433 431 * @return void
434 432 */
435 - public function auto_deactivate() {
433 + function auto_deactivate() {
436 434 if ( $this->is_supported_php() ) {
437 435 return;
438 436 }
439 437
@@ -444,9 +442,9 @@
444 442 $error .= __( '<p>The <strong>weforms</strong> plugin requires PHP version <strong>', 'weforms' ) . $this->min_php . __( '</strong> or greater', 'weforms' );
445 443 $error .= __( '<p>The version of your PHP is ', 'weforms' ) . '<a href="http://php.net/supported-versions.php" target="_blank"><strong>' . __( 'unsupported and old', 'weforms' ) . '</strong></a>.';
446 444 $error .= __( 'You should update your PHP software or contact your host regarding this matter.</p>', 'weforms' );
447 445
448 - wp_die( wp_kses_post( $error ), esc_html_e( 'Plugin Activation Error', 'weforms' ), [ 'back_link' => true ] );
446 + wp_die( $error, __( 'Plugin Activation Error', 'weforms' ), array( 'back_link' => true ) );
449 447 }
450 448
451 449 /**
452 450 * What type of request is this?
@@ -452,44 +450,33 @@
452 450 * What type of request is this?
453 451 *
454 452 * @since 1.2.3
455 453 *
456 - * @param string $type admin, ajax, cron, api or frontend
454 + * @param string $type admin, ajax, cron, api or frontend.
457 455 *
458 456 * @return bool
459 457 */
460 458 private function is_request( $type ) {
459 +
461 460 switch ( $type ) {
462 - case 'admin':
461 + case 'admin' :
463 462 return is_admin();
464 463
465 - case 'ajax':
464 + case 'ajax' :
466 465 return defined( 'DOING_AJAX' );
467 466
468 - case 'cron':
467 + case 'cron' :
469 468 return defined( 'DOING_CRON' );
470 469
471 470 case 'api':
472 471 return defined( 'REST_REQUEST' );
473 472
474 - case 'frontend':
475 - return ( !is_admin() || defined( 'DOING_AJAX' ) ) && !defined( 'DOING_CRON' );
473 + case 'frontend' :
474 + return ( ! is_admin() || defined( 'DOING_AJAX' ) ) && ! defined( 'DOING_CRON' );
476 475 }
477 476 }
478 477
479 - /**
480 - * Init appsero tracker
481 - */
482 - private function init_appsero() {
483 - if ( ! class_exists( 'Appsero\Client' ) ) {
484 - require_once WEFORMS_INCLUDES . '/library/appsero/Client.php';
485 - }
486 478
487 - $client = new Appsero\Client( '213fd70e-0bf3-4710-a35e-934b5a376e13', 'weForms', __FILE__ );
488 -
489 - // Active insights
490 - $client->insights()->init();
491 - }
492 479 } // WeForms
493 480
494 481 /**
495 482 * Initialize the plugin