PluginProbe
weForms – Easy Drag & Drop Contact Form Builder For WordPress / 1.2.2
weForms – Easy Drag & Drop Contact Form Builder For WordPress v1.2.2
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 +69 -121 1.6.201.2.2 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.2
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.2';
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( 'plugins_loaded', 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,11 +214,12 @@
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 - if ( $this->is_request( 'admin' ) ) {
221 + if ( is_admin() ) {
218 222 // compatibility
219 223 require_once WEFORMS_INCLUDES . '/class-template-manager.php';
220 224
221 225 require_once WEFORMS_INCLUDES . '/admin/class-admin.php';
@@ -222,27 +226,22 @@
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
233 + require_once WEFORMS_INCLUDES . '/class-frontend-form.php';
234 +
231 235 // add reCaptcha library if not found
232 - if ( !function_exists( 'recaptcha_get_html' ) ) {
236 + if ( ! function_exists( 'recaptcha_get_html' ) ) {
233 237 require_once WEFORMS_INCLUDES . '/library/reCaptcha/recaptchalib.php';
234 238 require_once WEFORMS_INCLUDES . '/library/reCaptcha/recaptchalib_noCaptcha.php';
235 239 }
236 240 }
237 241
238 - if ( $this->is_request( 'frontend' ) || $this->is_request( 'ajax' ) ) {
239 - require_once WEFORMS_INCLUDES . '/class-frontend-form.php';
240 - }
241 - require_once WEFORMS_INCLUDES . '/api/class-weforms-api-rest-controller.php';
242 - require_once WEFORMS_INCLUDES . '/class-weforms-api.php';
242 + require_once WEFORMS_INCLUDES . '/admin/class-wedevs-insights.php';
243 243 require_once WEFORMS_INCLUDES . '/class-scripts-styles.php';
244 - require_once WEFORMS_INCLUDES . '/admin/class-gutenblock.php';
245 244 require_once WEFORMS_INCLUDES . '/class-emailer.php';
246 245 require_once WEFORMS_INCLUDES . '/class-field-manager.php';
247 246 require_once WEFORMS_INCLUDES . '/class-form-manager.php';
248 247 require_once WEFORMS_INCLUDES . '/class-form-entry-manager.php';
@@ -247,9 +246,8 @@
247 246 require_once WEFORMS_INCLUDES . '/class-form-manager.php';
248 247 require_once WEFORMS_INCLUDES . '/class-form-entry-manager.php';
249 248 require_once WEFORMS_INCLUDES . '/class-form-entry.php';
250 249 require_once WEFORMS_INCLUDES . '/class-form.php';
251 - require_once WEFORMS_INCLUDES . '/class-form-widget.php';
252 250
253 251 require_once WEFORMS_INCLUDES . '/integrations/class-abstract-integration.php';
254 252 require_once WEFORMS_INCLUDES . '/class-integration-manager.php';
255 253
@@ -256,9 +254,8 @@
256 254 require_once WEFORMS_INCLUDES . '/class-ajax.php';
257 255 require_once WEFORMS_INCLUDES . '/class-ajax-upload.php';
258 256 require_once WEFORMS_INCLUDES . '/class-notification.php';
259 257 require_once WEFORMS_INCLUDES . '/class-form-preview.php';
260 - require_once WEFORMS_INCLUDES . '/class-dokan-integration.php';
261 258 require_once WEFORMS_INCLUDES . '/functions.php';
262 259 }
263 260
264 261 /**
@@ -267,10 +264,11 @@
267 264 * @since 1.1.2
268 265 *
269 266 * @return void
270 267 */
271 - public function plugin_upgrades() {
272 - if ( !current_user_can( 'manage_options' ) ) {
268 + function plugin_upgrades() {
269 +
270 + if ( ! is_admin() && ! current_user_can( 'manage_options' ) ) {
273 271 return;
274 272 }
275 273
276 274 require_once WEFORMS_INCLUDES . '/class-upgrades.php';
@@ -289,15 +287,15 @@
289 287 */
290 288 public function init_hooks() {
291 289
292 290 // Localize our plugin
293 - add_action( 'init', [ $this, 'localization_setup' ] );
291 + add_action( 'init', array( $this, 'localization_setup' ) );
294 292
295 293 // initialize the classes
296 - add_action( 'init', [ $this, 'init_classes' ] );
297 - add_action( 'init', [ $this, 'wpdb_table_shortcuts' ], 0 );
294 + add_action( 'init', array( $this, 'init_classes' ) );
295 + add_action( 'init', array( $this, 'wpdb_table_shortcuts' ), 0 );
298 296
299 - add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), [ $this, 'plugin_action_links' ] );
297 + add_filter( 'plugin_action_links_' . plugin_basename( __FILE__ ), array( $this, 'plugin_action_links' ) );
300 298 }
301 299
302 300 /**
303 301 * Set WPDB table shortcut names
@@ -325,38 +323,34 @@
325 323 *
326 324 * @return void
327 325 */
328 326 public function init_classes() {
329 - if ( $this->is_request( 'admin' ) ) {
327 +
328 + if ( is_admin() ) {
330 329 $this->container['admin'] = new WeForms_Admin();
331 330 // $this->container['welcome'] = new WeForms_Admin_Welcome();
332 331 $this->container['templates'] = new WeForms_Template_Manager();
333 332 $this->container['pro_upgrades'] = new WeForms_Pro_Upgrades();
334 333 $this->container['importer'] = new WeForms_Importer_Manager();
335 - $this->container['promo_offer'] = new WeForms_Admin_Promotion();
336 - $this->container['privacy'] = new WeForms_Privacy();
334 + } else {
335 + $this->container['frontend'] = new WeForms_Frontend_Form();
337 336 }
338 337
339 - if ( $this->is_request( 'frontend' ) || $this->is_request( 'ajax' ) ) {
340 - $this->container['frontend'] = new WeForms_Frontend_Form();
341 - }
338 + $this->container['insights'] = new WeDevs_Insights( 'weforms', 'weForms', __FILE__ );
339 + $this->container['emailer'] = new WeForms_Emailer();
340 + $this->container['form'] = new WeForms_Form_Manager();
341 + $this->container['fields'] = new WeForms_Field_Manager();
342 + $this->container['integrations'] = new WeForms_Integration_Manager();
343 + $this->container['preview'] = new WeForms_Form_Preview();
344 + $this->container['scripts'] = new WeForms_Scripts_Styles();
342 345
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();
351 346 // instantiate the integrations
352 347 $this->integrations->get_integrations();
353 348
354 - if ( $this->is_request( 'ajax' ) ) {
349 + if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
355 350 $this->container['ajax'] = new WeForms_Ajax();
356 351 $this->container['ajax_upload'] = new WeForms_Ajax_Upload();
357 352 }
358 - $this->container['weforms_api'] = new WeForms_Api();
359 353 }
360 354
361 355 /**
362 356 * The main logging function
@@ -361,35 +355,26 @@
361 355 /**
362 356 * The main logging function
363 357 *
364 358 * @uses error_log
365 - *
366 359 * @param string $type type of the error. e.g: debug, error, info
367 360 * @param string $msg
368 361 */
369 362 public static function log( $type = '', $msg = '' ) {
370 -
371 - if(file_exists(WP_CONTENT_DIR . '/weforms.log')){
372 - unlink(WP_CONTENT_DIR . '/weforms.log');
373 - }
374 - return;
375 - // 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;
378 - }
379 363 $msg = sprintf( "[%s][%s] %s\n", date( 'd.m.Y h:i:s' ), $type, $msg );
380 - @error_log( $msg, 3, weforms_log_file_path() );
364 + @error_log( $msg, 3, WP_CONTENT_DIR . '/weforms_log.txt' );
381 365 }
382 366
383 367 /**
384 368 * Plugin action links
385 369 *
386 - * @param array $links
370 + * @param array $links
387 371 *
388 372 * @return array
389 373 */
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>';
374 + function plugin_action_links( $links ) {
375 +
376 + $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 377 $links[] = '<a href="' . admin_url( 'admin.php?page=weforms' ) . '">' . __( 'Settings', 'weforms' ) . '</a>';
393 378
394 379 return $links;
395 380 }
@@ -399,11 +384,12 @@
399 384 *
400 385 * @return bool
401 386 */
402 387 public function is_supported_php( $min_php = null ) {
388 +
403 389 $min_php = $min_php ? $min_php : $this->min_php;
404 390
405 - if ( version_compare( PHP_VERSION, $min_php, '<=' ) ) {
391 + if ( version_compare( PHP_VERSION, $min_php , '<=' ) ) {
406 392 return false;
407 393 }
408 394
409 395 return true;
@@ -413,17 +399,19 @@
413 399 * Show notice about PHP version
414 400 *
415 401 * @return void
416 402 */
417 - public function php_version_notice() {
418 - if ( $this->is_supported_php() || !current_user_can( 'manage_options' ) ) {
403 + function php_version_notice() {
404 +
405 + if ( $this->is_supported_php() || ! current_user_can( 'manage_options' ) ) {
419 406 return;
420 407 }
421 408
422 - $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' ); ?>
409 + $error = __( 'Your installed PHP Version is: ', 'erp' ) . PHP_VERSION . '. ';
410 + $error .= __( 'The <strong>weForms</strong> plugin requires PHP version <strong>', 'weforms' ) . $this->min_php . __( '</strong> or greater.', 'weforms' );
411 + ?>
424 412 <div class="error">
425 - <p><?php printf( wp_kses_post ( $error ) ); ?></p>
413 + <p><?php printf( $error ); ?></p>
426 414 </div>
427 415 <?php
428 416 }
429 417
@@ -431,9 +419,9 @@
431 419 * Bail out if the php version is lower than
432 420 *
433 421 * @return void
434 422 */
435 - public function auto_deactivate() {
423 + function auto_deactivate() {
436 424 if ( $this->is_supported_php() ) {
437 425 return;
438 426 }
439 427
@@ -444,52 +432,12 @@
444 432 $error .= __( '<p>The <strong>weforms</strong> plugin requires PHP version <strong>', 'weforms' ) . $this->min_php . __( '</strong> or greater', 'weforms' );
445 433 $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 434 $error .= __( 'You should update your PHP software or contact your host regarding this matter.</p>', 'weforms' );
447 435
448 - wp_die( wp_kses_post( $error ), esc_html_e( 'Plugin Activation Error', 'weforms' ), [ 'back_link' => true ] );
436 + wp_die( $error, __( 'Plugin Activation Error', 'weforms' ), array( 'back_link' => true ) );
449 437 }
450 438
451 - /**
452 - * What type of request is this?
453 - *
454 - * @since 1.2.3
455 - *
456 - * @param string $type admin, ajax, cron, api or frontend
457 - *
458 - * @return bool
459 - */
460 - private function is_request( $type ) {
461 - switch ( $type ) {
462 - case 'admin':
463 - return is_admin();
464 439
465 - case 'ajax':
466 - return defined( 'DOING_AJAX' );
467 -
468 - case 'cron':
469 - return defined( 'DOING_CRON' );
470 -
471 - case 'api':
472 - return defined( 'REST_REQUEST' );
473 -
474 - case 'frontend':
475 - return ( !is_admin() || defined( 'DOING_AJAX' ) ) && !defined( 'DOING_CRON' );
476 - }
477 - }
478 -
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 -
487 - $client = new Appsero\Client( '213fd70e-0bf3-4710-a35e-934b5a376e13', 'weForms', __FILE__ );
488 -
489 - // Active insights
490 - $client->insights()->init();
491 - }
492 440 } // WeForms
493 441
494 442 /**
495 443 * Initialize the plugin