Version Description
Fixed: Vulnerabilities reported by Neven Biruski from DefenseCode (using the tool ThunderScan). Fixed: "The loopback request to your site failed" error.
Download this release
Release Info
Developer | webdorado |
Plugin | Form Maker by WD – user-friendly drag & drop Form Builder plugin |
Version | 1.12.26 |
Comparing to | |
See all releases |
Code changes from version 1.12.25 to 1.12.26
- admin/models/FMSelectDataFromDb.php +13 -13
- admin/models/FMSqlMapping.php +14 -14
- admin/views/FMCaptcha.php +1 -4
- admin/views/FMMathCaptcha.php +1 -3
- admin/views/Pricing_fm.php +1 -1
- admin/views/Themes_fm.php +2 -2
- admin/views/view.php +1 -1
- form-maker.php +6 -9
- framework/WDW_FM_Library.php +10 -1
- frontend/models/form_maker.php +6 -2
- frontend/views/form_maker.php +7 -9
- readme.txt +7 -2
- wd/includes/overview.php +1 -1
admin/models/FMSelectDataFromDb.php
CHANGED
@@ -32,10 +32,10 @@ class FMModelSelect_data_from_db {
|
|
32 |
}
|
33 |
else {
|
34 |
if ( $con_type == 'remote' ) {
|
35 |
-
$username =
|
36 |
-
$password =
|
37 |
-
$database =
|
38 |
-
$host =
|
39 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
40 |
$query = "SHOW TABLES";
|
41 |
$tables = $wpdb_temp->get_col($query);
|
@@ -80,18 +80,18 @@ class FMModelSelect_data_from_db {
|
|
80 |
*/
|
81 |
function get_table_struct() {
|
82 |
global $wpdb;
|
83 |
-
$name =
|
84 |
if ( !$name ) {
|
85 |
return array();
|
86 |
}
|
87 |
-
$con_method =
|
88 |
-
$con_type =
|
89 |
-
$query =
|
90 |
if ( $con_type == 'remote' ) {
|
91 |
-
$username =
|
92 |
-
$password =
|
93 |
-
$database =
|
94 |
-
$host =
|
95 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
96 |
$table_struct = $wpdb_temp->get_results($query);
|
97 |
}
|
@@ -120,7 +120,7 @@ class FMModelSelect_data_from_db {
|
|
120 |
if ( !$name ) {
|
121 |
return array();
|
122 |
}
|
123 |
-
$query =
|
124 |
if ( $con_type == 'remote' ) {
|
125 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
126 |
$table_struct = $wpdb_temp->get_results($query);
|
32 |
}
|
33 |
else {
|
34 |
if ( $con_type == 'remote' ) {
|
35 |
+
$username = WDW_FM_Library::get('username', '');
|
36 |
+
$password = WDW_FM_Library::get('password', '');
|
37 |
+
$database = WDW_FM_Library::get('database', '');
|
38 |
+
$host = WDW_FM_Library::get('host', '');
|
39 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
40 |
$query = "SHOW TABLES";
|
41 |
$tables = $wpdb_temp->get_col($query);
|
80 |
*/
|
81 |
function get_table_struct() {
|
82 |
global $wpdb;
|
83 |
+
$name = WDW_FM_Library::get('name', NULL);
|
84 |
if ( !$name ) {
|
85 |
return array();
|
86 |
}
|
87 |
+
$con_method = WDW_FM_Library::get('con_method', NULL);
|
88 |
+
$con_type = WDW_FM_Library::get('con_type', NULL);
|
89 |
+
$query = 'SHOW COLUMNS FROM `' . $name . '`';
|
90 |
if ( $con_type == 'remote' ) {
|
91 |
+
$username = WDW_FM_Library::get('username', '');
|
92 |
+
$password = WDW_FM_Library::get('password', '');
|
93 |
+
$database = WDW_FM_Library::get('database', '');
|
94 |
+
$host = WDW_FM_Library::get('host', '');
|
95 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
96 |
$table_struct = $wpdb_temp->get_results($query);
|
97 |
}
|
120 |
if ( !$name ) {
|
121 |
return array();
|
122 |
}
|
123 |
+
$query = 'SHOW COLUMNS FROM `' . $name . '`';
|
124 |
if ( $con_type == 'remote' ) {
|
125 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
126 |
$table_struct = $wpdb_temp->get_results($query);
|
admin/models/FMSqlMapping.php
CHANGED
@@ -39,17 +39,17 @@ class FMModelFormMakerSQLMapping {
|
|
39 |
*/
|
40 |
function get_tables() {
|
41 |
global $wpdb;
|
42 |
-
$con_type =
|
43 |
if ( $con_type == 'local' ) {
|
44 |
$query = "SHOW TABLES";
|
45 |
$tables = $wpdb->get_col($query);
|
46 |
}
|
47 |
else {
|
48 |
if ( $con_type == 'remote' ) {
|
49 |
-
$username =
|
50 |
-
$password =
|
51 |
-
$database =
|
52 |
-
$host =
|
53 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
54 |
$query = "SHOW TABLES";
|
55 |
$tables = $wpdb_temp->get_col($query);
|
@@ -78,18 +78,18 @@ class FMModelFormMakerSQLMapping {
|
|
78 |
|
79 |
function get_table_struct() {
|
80 |
global $wpdb;
|
81 |
-
$name =
|
82 |
if ( !$name ) {
|
83 |
return array();
|
84 |
}
|
85 |
-
$con_method =
|
86 |
-
$con_type =
|
87 |
-
$query =
|
88 |
if ( $con_type == 'remote' ) {
|
89 |
-
$username =
|
90 |
-
$password =
|
91 |
-
$database =
|
92 |
-
$host =
|
93 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
94 |
$table_struct = $wpdb_temp->get_results($query);
|
95 |
}
|
@@ -105,7 +105,7 @@ class FMModelFormMakerSQLMapping {
|
|
105 |
if ( !$name ) {
|
106 |
return array();
|
107 |
}
|
108 |
-
$query =
|
109 |
if ( $con_type == 'remote' ) {
|
110 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
111 |
$table_struct = $wpdb_temp->get_results($query);
|
39 |
*/
|
40 |
function get_tables() {
|
41 |
global $wpdb;
|
42 |
+
$con_type = WDW_FM_Library::get('con_type', NULL);
|
43 |
if ( $con_type == 'local' ) {
|
44 |
$query = "SHOW TABLES";
|
45 |
$tables = $wpdb->get_col($query);
|
46 |
}
|
47 |
else {
|
48 |
if ( $con_type == 'remote' ) {
|
49 |
+
$username = WDW_FM_Library::get('username', '');
|
50 |
+
$password = WDW_FM_Library::get('password', '');
|
51 |
+
$database = WDW_FM_Library::get('database', '');
|
52 |
+
$host = WDW_FM_Library::get('host', '');
|
53 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
54 |
$query = "SHOW TABLES";
|
55 |
$tables = $wpdb_temp->get_col($query);
|
78 |
|
79 |
function get_table_struct() {
|
80 |
global $wpdb;
|
81 |
+
$name = WDW_FM_Library::get('name', NULL);
|
82 |
if ( !$name ) {
|
83 |
return array();
|
84 |
}
|
85 |
+
$con_method = WDW_FM_Library::get('con_method', NULL);
|
86 |
+
$con_type = WDW_FM_Library::get('con_type', NULL);
|
87 |
+
$query = 'SHOW COLUMNS FROM `' . $name . '`';
|
88 |
if ( $con_type == 'remote' ) {
|
89 |
+
$username = WDW_FM_Library::get('username', '');
|
90 |
+
$password = WDW_FM_Library::get('password', '');
|
91 |
+
$database = WDW_FM_Library::get('database', '');
|
92 |
+
$host = WDW_FM_Library::get('host', '');
|
93 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
94 |
$table_struct = $wpdb_temp->get_results($query);
|
95 |
}
|
105 |
if ( !$name ) {
|
106 |
return array();
|
107 |
}
|
108 |
+
$query = 'SHOW COLUMNS FROM `' . $name . '`';
|
109 |
if ( $con_type == 'remote' ) {
|
110 |
$wpdb_temp = new wpdb($username, $password, $database, $host);
|
111 |
$table_struct = $wpdb_temp->get_results($query);
|
admin/views/FMCaptcha.php
CHANGED
@@ -38,10 +38,7 @@ class FMViewFormmakerwdcaptcha {
|
|
38 |
|
39 |
$l = rand($cap_length_min, $cap_length_max);
|
40 |
$code = code_generic($l, $cap_digital, $cap_latin_char);
|
41 |
-
|
42 |
-
@session_start();
|
43 |
-
}
|
44 |
-
|
45 |
$_SESSION[$i . '_wd_captcha_code'] = md5($code);
|
46 |
$canvas = imagecreatetruecolor($cap_width, $cap_height);
|
47 |
$c = imagecolorallocate($canvas, rand(150, 255), rand(150, 255), rand(150, 255));
|
38 |
|
39 |
$l = rand($cap_length_min, $cap_length_max);
|
40 |
$code = code_generic($l, $cap_digital, $cap_latin_char);
|
41 |
+
WDW_FM_Library::start_session();
|
|
|
|
|
|
|
42 |
$_SESSION[$i . '_wd_captcha_code'] = md5($code);
|
43 |
$canvas = imagecreatetruecolor($cap_width, $cap_height);
|
44 |
$c = imagecolorallocate($canvas, rand(150, 255), rand(150, 255), rand(150, 255));
|
admin/views/FMMathCaptcha.php
CHANGED
@@ -20,9 +20,7 @@ class FMViewFormmakerwdmathcaptcha {
|
|
20 |
$cap_height = 26;
|
21 |
$cap_quality = 100;
|
22 |
$code = $this->code_generic($operations_count, $operations);
|
23 |
-
|
24 |
-
@session_start();
|
25 |
-
}
|
26 |
$_SESSION[$i . '_wd_arithmetic_captcha_code'] = md5($code[1]);
|
27 |
$canvas = imagecreatetruecolor($cap_width, $cap_height);
|
28 |
$c = imagecolorallocate($canvas, rand(150, 255), rand(150, 255), rand(150, 255));
|
20 |
$cap_height = 26;
|
21 |
$cap_quality = 100;
|
22 |
$code = $this->code_generic($operations_count, $operations);
|
23 |
+
WDW_FM_Library::start_session();
|
|
|
|
|
24 |
$_SESSION[$i . '_wd_arithmetic_captcha_code'] = md5($code[1]);
|
25 |
$canvas = imagecreatetruecolor($cap_width, $cap_height);
|
26 |
$c = imagecolorallocate($canvas, rand(150, 255), rand(150, 255), rand(150, 255));
|
admin/views/Pricing_fm.php
CHANGED
@@ -165,7 +165,7 @@ class FMViewPricing_fm extends FMAdminView {
|
|
165 |
</div>
|
166 |
<div class="fm-prices-more">
|
167 |
<div>
|
168 |
-
<?php _e('Learn more about Form Maker plugin.', WDFM()->prefix); ?> <a href="https://web-dorado.com/
|
169 |
</div>
|
170 |
</div>
|
171 |
</div>
|
165 |
</div>
|
166 |
<div class="fm-prices-more">
|
167 |
<div>
|
168 |
+
<?php _e('Learn more about Form Maker plugin.', WDFM()->prefix); ?> <a href="https://web-dorado.com/files/fromFormMaker.php" target="_blank"><?php _e('Learn More', WDFM()->prefix); ?></a>
|
169 |
</div>
|
170 |
</div>
|
171 |
</div>
|
admin/views/Themes_fm.php
CHANGED
@@ -189,8 +189,8 @@ class FMViewThemes_fm extends FMAdminView {
|
|
189 |
$tabs = $params['tabs'];
|
190 |
$all_params = $params['all_params'];
|
191 |
|
192 |
-
$active_tab =
|
193 |
-
$pagination =
|
194 |
?>
|
195 |
<div ng-app="ThemeParams" class="fm-table">
|
196 |
<div ng-controller="FMTheme">
|
189 |
$tabs = $params['tabs'];
|
190 |
$all_params = $params['all_params'];
|
191 |
|
192 |
+
$active_tab = WDW_FM_Library::get('active_tab', ($row->version == 1 ? 'custom_css' : 'global'));
|
193 |
+
$pagination = WDW_FM_Library::get('pagination', 'none');
|
194 |
?>
|
195 |
<div ng-app="ThemeParams" class="fm-table">
|
196 |
<div ng-controller="FMTheme">
|
admin/views/view.php
CHANGED
@@ -6,7 +6,7 @@ defined('ABSPATH') || die('Access Denied');
|
|
6 |
*/
|
7 |
class FMAdminView {
|
8 |
|
9 |
-
private $premium_link = 'https://web-dorado.com/
|
10 |
|
11 |
/**
|
12 |
* Generate form.
|
6 |
*/
|
7 |
class FMAdminView {
|
8 |
|
9 |
+
private $premium_link = 'https://web-dorado.com/files/fromFormMaker.php';
|
10 |
|
11 |
/**
|
12 |
* Generate form.
|
form-maker.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: Form Maker
|
4 |
* Plugin URI: https://web-dorado.com/products/form-maker-wordpress.html
|
5 |
* Description: This plugin is a modern and advanced tool for easy and fast creating of a WordPress Form. The backend interface is intuitive and user friendly which allows users far from scripting and programming to create WordPress Forms.
|
6 |
-
* Version: 1.12.
|
7 |
* Author: WebDorado Form Builder Team
|
8 |
* Author URI: https://web-dorado.com/wordpress-plugins-bundle.html
|
9 |
* License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
|
@@ -81,9 +81,6 @@ final class WDFM {
|
|
81 |
require_once(wp_normalize_path($this->plugin_dir . '/admin/views/view.php'));
|
82 |
}
|
83 |
$this->add_actions();
|
84 |
-
if (session_id() == '' || (function_exists('session_status') && (session_status() == PHP_SESSION_NONE))) {
|
85 |
-
@session_start();
|
86 |
-
}
|
87 |
}
|
88 |
|
89 |
/**
|
@@ -94,8 +91,8 @@ final class WDFM {
|
|
94 |
$this->plugin_url = plugins_url(plugin_basename(dirname(__FILE__)));
|
95 |
$this->front_urls = $this->get_front_urls();
|
96 |
$this->main_file = plugin_basename(__FILE__);
|
97 |
-
$this->plugin_version = '1.12.
|
98 |
-
$this->db_version = '2.12.
|
99 |
$this->menu_slug = 'manage_fm';
|
100 |
$this->prefix = 'form_maker';
|
101 |
$this->css_prefix = 'fm_';
|
@@ -570,7 +567,7 @@ final class WDFM {
|
|
570 |
"prefix" => "fm" ,
|
571 |
"deactivate_class" => 'fm_deactivate_link',
|
572 |
"email" => $admin_data->data->user_email,
|
573 |
-
"plugin_wd_url" => "https://web-dorado.com/
|
574 |
));
|
575 |
}
|
576 |
wp_register_style('fm-pricing', $this->plugin_url . '/css/pricing.css', array(), $this->plugin_version);
|
@@ -1009,7 +1006,7 @@ final class WDFM {
|
|
1009 |
"titles" => array(
|
1010 |
array(
|
1011 |
"title" => __("Selecting Options from Database", $this->prefix),
|
1012 |
-
"url" => "https://web-dorado.com/wordpress-form-maker/
|
1013 |
),
|
1014 |
)
|
1015 |
),
|
@@ -1035,7 +1032,7 @@ final class WDFM {
|
|
1035 |
),
|
1036 |
),
|
1037 |
"video_youtube_id" => "tN3_c6MhqFk", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
|
1038 |
-
"plugin_wd_url" => "https://web-dorado.com/
|
1039 |
"plugin_wd_demo_link" => "http://wpdemo.web-dorado.com",
|
1040 |
"plugin_wd_addons_link" => "https://web-dorado.com/products/wordpress-form/add-ons.html",
|
1041 |
"after_subscribe" => admin_url('admin.php?page=overview' . $this->menu_postfix), // this can be plagin overview page or set up page
|
3 |
* Plugin Name: Form Maker
|
4 |
* Plugin URI: https://web-dorado.com/products/form-maker-wordpress.html
|
5 |
* Description: This plugin is a modern and advanced tool for easy and fast creating of a WordPress Form. The backend interface is intuitive and user friendly which allows users far from scripting and programming to create WordPress Forms.
|
6 |
+
* Version: 1.12.26
|
7 |
* Author: WebDorado Form Builder Team
|
8 |
* Author URI: https://web-dorado.com/wordpress-plugins-bundle.html
|
9 |
* License: GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
|
81 |
require_once(wp_normalize_path($this->plugin_dir . '/admin/views/view.php'));
|
82 |
}
|
83 |
$this->add_actions();
|
|
|
|
|
|
|
84 |
}
|
85 |
|
86 |
/**
|
91 |
$this->plugin_url = plugins_url(plugin_basename(dirname(__FILE__)));
|
92 |
$this->front_urls = $this->get_front_urls();
|
93 |
$this->main_file = plugin_basename(__FILE__);
|
94 |
+
$this->plugin_version = '1.12.26';
|
95 |
+
$this->db_version = '2.12.26';
|
96 |
$this->menu_slug = 'manage_fm';
|
97 |
$this->prefix = 'form_maker';
|
98 |
$this->css_prefix = 'fm_';
|
567 |
"prefix" => "fm" ,
|
568 |
"deactivate_class" => 'fm_deactivate_link',
|
569 |
"email" => $admin_data->data->user_email,
|
570 |
+
"plugin_wd_url" => "https://web-dorado.com/files/fromFormMaker.php",
|
571 |
));
|
572 |
}
|
573 |
wp_register_style('fm-pricing', $this->plugin_url . '/css/pricing.css', array(), $this->plugin_version);
|
1006 |
"titles" => array(
|
1007 |
array(
|
1008 |
"title" => __("Selecting Options from Database", $this->prefix),
|
1009 |
+
"url" => "https://web-dorado.com/wordpress-form-maker/selecting-options-from-database.html",
|
1010 |
),
|
1011 |
)
|
1012 |
),
|
1032 |
),
|
1033 |
),
|
1034 |
"video_youtube_id" => "tN3_c6MhqFk", // e.g. https://www.youtube.com/watch?v=acaexefeP7o youtube id is the acaexefeP7o
|
1035 |
+
"plugin_wd_url" => "https://web-dorado.com/files/fromFormMaker.php",
|
1036 |
"plugin_wd_demo_link" => "http://wpdemo.web-dorado.com",
|
1037 |
"plugin_wd_addons_link" => "https://web-dorado.com/products/wordpress-form/add-ons.html",
|
1038 |
"after_subscribe" => admin_url('admin.php?page=overview' . $this->menu_postfix), // this can be plagin overview page or set up page
|
framework/WDW_FM_Library.php
CHANGED
@@ -3898,7 +3898,7 @@ class WDW_FM_Library {
|
|
3898 |
$group_id_s = array();
|
3899 |
$form_id = (int) $_REQUEST['form_id'];
|
3900 |
$limitstart = (int) $_REQUEST['limitstart'];
|
3901 |
-
$search_labels =
|
3902 |
$verified_emails = isset($_REQUEST['verified_emails']) ? json_decode(stripslashes($_REQUEST['verified_emails']), TRUE) : array();
|
3903 |
$paypal_info_fields = array(
|
3904 |
'currency',
|
@@ -5067,6 +5067,15 @@ class WDW_FM_Library {
|
|
5067 |
);
|
5068 |
return json_encode($data);
|
5069 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
5070 |
}
|
5071 |
|
5072 |
/*
|
3898 |
$group_id_s = array();
|
3899 |
$form_id = (int) $_REQUEST['form_id'];
|
3900 |
$limitstart = (int) $_REQUEST['limitstart'];
|
3901 |
+
$search_labels = WDW_FM_Library::get('search_labels', '');
|
3902 |
$verified_emails = isset($_REQUEST['verified_emails']) ? json_decode(stripslashes($_REQUEST['verified_emails']), TRUE) : array();
|
3903 |
$paypal_info_fields = array(
|
3904 |
'currency',
|
5067 |
);
|
5068 |
return json_encode($data);
|
5069 |
}
|
5070 |
+
|
5071 |
+
/**
|
5072 |
+
* Session start if not started.
|
5073 |
+
*/
|
5074 |
+
public static function start_session() {
|
5075 |
+
if (session_id() == '' || (function_exists('session_status') && (session_status() == PHP_SESSION_NONE))) {
|
5076 |
+
@session_start();
|
5077 |
+
}
|
5078 |
+
}
|
5079 |
}
|
5080 |
|
5081 |
/*
|
frontend/models/form_maker.php
CHANGED
@@ -1071,6 +1071,7 @@ class FMModelForm_maker {
|
|
1071 |
$id = '';
|
1072 |
}
|
1073 |
if ( isset( $_POST[ "counter" . $id ] ) ) {
|
|
|
1074 |
if ( (isset( $_POST[ "save_or_submit" . $id ] ) && $_POST[ "save_or_submit" . $id ] != 'save') ) {
|
1075 |
if ( isset( $_POST[ "captcha_input" ] ) ) {
|
1076 |
$captcha_input = esc_html( $_POST[ "captcha_input" ] );
|
@@ -1311,7 +1312,7 @@ class FMModelForm_maker {
|
|
1311 |
$label_id = array();
|
1312 |
$label_label = array();
|
1313 |
$label_type = array();
|
1314 |
-
$disabled_fields = explode( ',', (
|
1315 |
$disabled_fields = array_slice( $disabled_fields, 0, count( $disabled_fields ) - 1 );
|
1316 |
$label_all = explode( '#****#', $form->label_order_current );
|
1317 |
$label_all = array_slice( $label_all, 0, count( $label_all ) - 1 );
|
@@ -2268,6 +2269,7 @@ class FMModelForm_maker {
|
|
2268 |
}
|
2269 |
}
|
2270 |
if ( $form->mail_verify ) {
|
|
|
2271 |
unset( $_SESSION[ 'hash' ] );
|
2272 |
unset( $_SESSION[ 'gid' ] );
|
2273 |
$ip = $_SERVER[ 'REMOTE_ADDR' ];
|
@@ -2301,6 +2303,7 @@ class FMModelForm_maker {
|
|
2301 |
}
|
2302 |
}
|
2303 |
if ( $chgnac ) {
|
|
|
2304 |
if ( $form->submit_text_type != 4 ) {
|
2305 |
$_SESSION[ 'massage_after_submit' . $id ] = addslashes( addslashes( __( 'Nothing was submitted.', WDFM()->prefix ) ) );
|
2306 |
}
|
@@ -2467,6 +2470,7 @@ class FMModelForm_maker {
|
|
2467 |
*/
|
2468 |
public function gen_mail( $group_id, $all_files, $id, $str ) {
|
2469 |
global $wpdb;
|
|
|
2470 |
// checking save uploads option
|
2471 |
$upload_dir = wp_upload_dir();
|
2472 |
$save_uploads = $wpdb->get_var( "SELECT save_uploads FROM " . $wpdb->prefix . "formmaker WHERE id=" . $id );
|
@@ -2528,7 +2532,7 @@ class FMModelForm_maker {
|
|
2528 |
array_push( $label_label, $label_order_each[ 0 ] );
|
2529 |
array_push( $label_type, $label_order_each[ 1 ] );
|
2530 |
}
|
2531 |
-
$disabled_fields = explode( ',',
|
2532 |
$disabled_fields = array_slice( $disabled_fields, 0, count( $disabled_fields ) - 1 );
|
2533 |
$list = '<table border="1" cellpadding="3" cellspacing="0" style="width:600px;">';
|
2534 |
$list_text_mode = '';
|
1071 |
$id = '';
|
1072 |
}
|
1073 |
if ( isset( $_POST[ "counter" . $id ] ) ) {
|
1074 |
+
WDW_FM_Library::start_session();
|
1075 |
if ( (isset( $_POST[ "save_or_submit" . $id ] ) && $_POST[ "save_or_submit" . $id ] != 'save') ) {
|
1076 |
if ( isset( $_POST[ "captcha_input" ] ) ) {
|
1077 |
$captcha_input = esc_html( $_POST[ "captcha_input" ] );
|
1312 |
$label_id = array();
|
1313 |
$label_label = array();
|
1314 |
$label_type = array();
|
1315 |
+
$disabled_fields = explode( ',', WDW_FM_Library::get('disabled_fields', ''));
|
1316 |
$disabled_fields = array_slice( $disabled_fields, 0, count( $disabled_fields ) - 1 );
|
1317 |
$label_all = explode( '#****#', $form->label_order_current );
|
1318 |
$label_all = array_slice( $label_all, 0, count( $label_all ) - 1 );
|
2269 |
}
|
2270 |
}
|
2271 |
if ( $form->mail_verify ) {
|
2272 |
+
WDW_FM_Library::start_session();
|
2273 |
unset( $_SESSION[ 'hash' ] );
|
2274 |
unset( $_SESSION[ 'gid' ] );
|
2275 |
$ip = $_SERVER[ 'REMOTE_ADDR' ];
|
2303 |
}
|
2304 |
}
|
2305 |
if ( $chgnac ) {
|
2306 |
+
WDW_FM_Library::start_session();
|
2307 |
if ( $form->submit_text_type != 4 ) {
|
2308 |
$_SESSION[ 'massage_after_submit' . $id ] = addslashes( addslashes( __( 'Nothing was submitted.', WDFM()->prefix ) ) );
|
2309 |
}
|
2470 |
*/
|
2471 |
public function gen_mail( $group_id, $all_files, $id, $str ) {
|
2472 |
global $wpdb;
|
2473 |
+
WDW_FM_Library::start_session();
|
2474 |
// checking save uploads option
|
2475 |
$upload_dir = wp_upload_dir();
|
2476 |
$save_uploads = $wpdb->get_var( "SELECT save_uploads FROM " . $wpdb->prefix . "formmaker WHERE id=" . $id );
|
2532 |
array_push( $label_label, $label_order_each[ 0 ] );
|
2533 |
array_push( $label_type, $label_order_each[ 1 ] );
|
2534 |
}
|
2535 |
+
$disabled_fields = explode( ',', WDW_FM_Library::get('disabled_fields', '') );
|
2536 |
$disabled_fields = array_slice( $disabled_fields, 0, count( $disabled_fields ) - 1 );
|
2537 |
$list = '<table border="1" cellpadding="3" cellspacing="0" style="width:600px;">';
|
2538 |
$list_text_mode = '';
|
frontend/views/form_maker.php
CHANGED
@@ -67,6 +67,7 @@ class FMViewForm_maker {
|
|
67 |
$form_maker_front_end .= '<form name="form' . $form_id . '" action="' . $current_url . '" method="post" id="form' . $form_id . '" class="fm-form form' . $form_id . ' ' . $header_pos . '" enctype="multipart/form-data">';
|
68 |
// Form messages.
|
69 |
$fm_hide_form_after_submit = 0;
|
|
|
70 |
if ( isset($_SESSION['form_submit_type' . $form_id]) ) {
|
71 |
$type_and_id = $_SESSION['form_submit_type' . $form_id];
|
72 |
$type_and_id = explode(',', $type_and_id);
|
@@ -1166,7 +1167,7 @@ class FMViewForm_maker {
|
|
1166 |
|
1167 |
// Generate field.
|
1168 |
$rep = $this->wdform_field($type, $param, $row, $html);
|
1169 |
-
|
1170 |
if ( isset($_SESSION['message_captcha']) && $_SESSION['message_captcha'] != "" ) {
|
1171 |
$rep .= '<div class="fm-not-filled message_captcha">' . $_SESSION['message_captcha'] . '</div>';
|
1172 |
unset($_SESSION['message_captcha']);
|
@@ -1233,7 +1234,7 @@ class FMViewForm_maker {
|
|
1233 |
|
1234 |
// Generate field.
|
1235 |
$rep = $this->wdform_field($type, $param, $row, $html);
|
1236 |
-
|
1237 |
if ( isset($_SESSION['message_captcha']) && $_SESSION['message_captcha'] != "" ) {
|
1238 |
$rep .= '<div class="fm-not-filled message_captcha">' . $_SESSION['message_captcha'] . '</div>';
|
1239 |
unset($_SESSION['message_captcha']);
|
@@ -1292,7 +1293,7 @@ class FMViewForm_maker {
|
|
1292 |
|
1293 |
// Generate field.
|
1294 |
$rep = $this->wdform_field($type, $param, $row, $html);
|
1295 |
-
|
1296 |
if ( isset($_SESSION['message_captcha']) && $_SESSION['message_captcha'] != "" ) {
|
1297 |
$rep .= '<div class="fm-not-filled message_captcha">' . $_SESSION['message_captcha'] . '</div>';
|
1298 |
unset($_SESSION['message_captcha']);
|
@@ -1677,6 +1678,7 @@ class FMViewForm_maker {
|
|
1677 |
$hide_duration = $form->topbar_hide_duration;
|
1678 |
$hide_mobile = wp_is_mobile() && $form->hide_mobile ? FALSE : TRUE;
|
1679 |
if ($display_on_this && $hide_mobile) {
|
|
|
1680 |
if (isset($_SESSION['fm_hide_form_after_submit' . $id]) && $_SESSION['fm_hide_form_after_submit' . $id] == 1) {
|
1681 |
if ($error == 'success') {
|
1682 |
if ($message) {
|
@@ -1730,6 +1732,7 @@ class FMViewForm_maker {
|
|
1730 |
$hide_mobile = wp_is_mobile() && $form->hide_mobile ? FALSE : TRUE;
|
1731 |
$left_right_class = $form->scrollbox_position ? 'float-right' : 'float-left';
|
1732 |
if ($display_on_this && $hide_mobile) {
|
|
|
1733 |
if (isset($_SESSION['fm_hide_form_after_submit' . $id]) && $_SESSION['fm_hide_form_after_submit' . $id] == 1) {
|
1734 |
if ($error == 'success') {
|
1735 |
if ($message) {
|
@@ -1810,6 +1813,7 @@ class FMViewForm_maker {
|
|
1810 |
$hide_mobile_class = wp_is_mobile() ? 'fm_mobile_full' : '';
|
1811 |
|
1812 |
if ($display_on_this && $hide_mobile) {
|
|
|
1813 |
if (isset($_SESSION['fm_hide_form_after_submit' . $id]) && $_SESSION['fm_hide_form_after_submit' . $id] == 1) {
|
1814 |
if ($error == 'success') {
|
1815 |
if ($message) {
|
@@ -2048,8 +2052,6 @@ class FMViewForm_maker {
|
|
2048 |
foreach ( $param['w_choices'] as $key => $choice ) {
|
2049 |
$key1 = $key + $total_queries;
|
2050 |
if ( isset($param['w_choices_params']) && $param['w_choices_params'][$key] ) {
|
2051 |
-
$choices_labels = array();
|
2052 |
-
$choices_values = array();
|
2053 |
$w_choices_params = explode('[where_order_by]', $param['w_choices_params'][$key]);
|
2054 |
$where = (str_replace(array( '[', ']' ), '', $w_choices_params[0]) ? ' WHERE ' . str_replace(array(
|
2055 |
'[',
|
@@ -2208,8 +2210,6 @@ class FMViewForm_maker {
|
|
2208 |
foreach ( $param['w_choices'] as $key => $choice ) {
|
2209 |
$key1 = $key + $total_queries;
|
2210 |
if ( isset($param['w_choices_params']) && $param['w_choices_params'][$key] ) {
|
2211 |
-
$choices_labels = array();
|
2212 |
-
$choices_values = array();
|
2213 |
$w_choices_params = explode('[where_order_by]', $param['w_choices_params'][$key]);
|
2214 |
$where = (str_replace(array( '[', ']' ), '', $w_choices_params[0]) ? ' WHERE ' . str_replace(array('[', ']'), '', $w_choices_params[0]) : '');
|
2215 |
$w_choices_params = explode('[db_info]', $w_choices_params[1]);
|
@@ -2350,8 +2350,6 @@ class FMViewForm_maker {
|
|
2350 |
$html = '<select class="wd-width-100" id="wdform_' . $id1 . '_element' . $form_id . '" name="wdform_' . $id1 . '_element' . $form_id . '" ' . $param['attributes'] . '>';
|
2351 |
foreach ( $param['w_choices'] as $key => $choice ) {
|
2352 |
if ( isset($param['w_choices_params']) && $param['w_choices_params'][$key] ) {
|
2353 |
-
$choices_labels = array();
|
2354 |
-
$choices_values = array();
|
2355 |
$w_choices_params = explode('[where_order_by]', $param['w_choices_params'][$key]);
|
2356 |
$where = (str_replace(array( '[', ']' ), '', $w_choices_params[0]) ? ' WHERE ' . str_replace(array('[', ']'), '', $w_choices_params[0]) : '');
|
2357 |
$w_choices_params = explode('[db_info]', $w_choices_params[1]);
|
67 |
$form_maker_front_end .= '<form name="form' . $form_id . '" action="' . $current_url . '" method="post" id="form' . $form_id . '" class="fm-form form' . $form_id . ' ' . $header_pos . '" enctype="multipart/form-data">';
|
68 |
// Form messages.
|
69 |
$fm_hide_form_after_submit = 0;
|
70 |
+
WDW_FM_Library::start_session();
|
71 |
if ( isset($_SESSION['form_submit_type' . $form_id]) ) {
|
72 |
$type_and_id = $_SESSION['form_submit_type' . $form_id];
|
73 |
$type_and_id = explode(',', $type_and_id);
|
1167 |
|
1168 |
// Generate field.
|
1169 |
$rep = $this->wdform_field($type, $param, $row, $html);
|
1170 |
+
WDW_FM_Library::start_session();
|
1171 |
if ( isset($_SESSION['message_captcha']) && $_SESSION['message_captcha'] != "" ) {
|
1172 |
$rep .= '<div class="fm-not-filled message_captcha">' . $_SESSION['message_captcha'] . '</div>';
|
1173 |
unset($_SESSION['message_captcha']);
|
1234 |
|
1235 |
// Generate field.
|
1236 |
$rep = $this->wdform_field($type, $param, $row, $html);
|
1237 |
+
WDW_FM_Library::start_session();
|
1238 |
if ( isset($_SESSION['message_captcha']) && $_SESSION['message_captcha'] != "" ) {
|
1239 |
$rep .= '<div class="fm-not-filled message_captcha">' . $_SESSION['message_captcha'] . '</div>';
|
1240 |
unset($_SESSION['message_captcha']);
|
1293 |
|
1294 |
// Generate field.
|
1295 |
$rep = $this->wdform_field($type, $param, $row, $html);
|
1296 |
+
WDW_FM_Library::start_session();
|
1297 |
if ( isset($_SESSION['message_captcha']) && $_SESSION['message_captcha'] != "" ) {
|
1298 |
$rep .= '<div class="fm-not-filled message_captcha">' . $_SESSION['message_captcha'] . '</div>';
|
1299 |
unset($_SESSION['message_captcha']);
|
1678 |
$hide_duration = $form->topbar_hide_duration;
|
1679 |
$hide_mobile = wp_is_mobile() && $form->hide_mobile ? FALSE : TRUE;
|
1680 |
if ($display_on_this && $hide_mobile) {
|
1681 |
+
WDW_FM_Library::start_session();
|
1682 |
if (isset($_SESSION['fm_hide_form_after_submit' . $id]) && $_SESSION['fm_hide_form_after_submit' . $id] == 1) {
|
1683 |
if ($error == 'success') {
|
1684 |
if ($message) {
|
1732 |
$hide_mobile = wp_is_mobile() && $form->hide_mobile ? FALSE : TRUE;
|
1733 |
$left_right_class = $form->scrollbox_position ? 'float-right' : 'float-left';
|
1734 |
if ($display_on_this && $hide_mobile) {
|
1735 |
+
WDW_FM_Library::start_session();
|
1736 |
if (isset($_SESSION['fm_hide_form_after_submit' . $id]) && $_SESSION['fm_hide_form_after_submit' . $id] == 1) {
|
1737 |
if ($error == 'success') {
|
1738 |
if ($message) {
|
1813 |
$hide_mobile_class = wp_is_mobile() ? 'fm_mobile_full' : '';
|
1814 |
|
1815 |
if ($display_on_this && $hide_mobile) {
|
1816 |
+
WDW_FM_Library::start_session();
|
1817 |
if (isset($_SESSION['fm_hide_form_after_submit' . $id]) && $_SESSION['fm_hide_form_after_submit' . $id] == 1) {
|
1818 |
if ($error == 'success') {
|
1819 |
if ($message) {
|
2052 |
foreach ( $param['w_choices'] as $key => $choice ) {
|
2053 |
$key1 = $key + $total_queries;
|
2054 |
if ( isset($param['w_choices_params']) && $param['w_choices_params'][$key] ) {
|
|
|
|
|
2055 |
$w_choices_params = explode('[where_order_by]', $param['w_choices_params'][$key]);
|
2056 |
$where = (str_replace(array( '[', ']' ), '', $w_choices_params[0]) ? ' WHERE ' . str_replace(array(
|
2057 |
'[',
|
2210 |
foreach ( $param['w_choices'] as $key => $choice ) {
|
2211 |
$key1 = $key + $total_queries;
|
2212 |
if ( isset($param['w_choices_params']) && $param['w_choices_params'][$key] ) {
|
|
|
|
|
2213 |
$w_choices_params = explode('[where_order_by]', $param['w_choices_params'][$key]);
|
2214 |
$where = (str_replace(array( '[', ']' ), '', $w_choices_params[0]) ? ' WHERE ' . str_replace(array('[', ']'), '', $w_choices_params[0]) : '');
|
2215 |
$w_choices_params = explode('[db_info]', $w_choices_params[1]);
|
2350 |
$html = '<select class="wd-width-100" id="wdform_' . $id1 . '_element' . $form_id . '" name="wdform_' . $id1 . '_element' . $form_id . '" ' . $param['attributes'] . '>';
|
2351 |
foreach ( $param['w_choices'] as $key => $choice ) {
|
2352 |
if ( isset($param['w_choices_params']) && $param['w_choices_params'][$key] ) {
|
|
|
|
|
2353 |
$w_choices_params = explode('[where_order_by]', $param['w_choices_params'][$key]);
|
2354 |
$where = (str_replace(array( '[', ']' ), '', $w_choices_params[0]) ? ' WHERE ' . str_replace(array('[', ']'), '', $w_choices_params[0]) : '');
|
2355 |
$w_choices_params = explode('[db_info]', $w_choices_params[1]);
|
readme.txt
CHANGED
@@ -3,11 +3,11 @@ Contributors: webdorado,10web,wdsupport,formmakersupport
|
|
3 |
Tags: form, form builder, contact form, custom form, feedback, contact, web contact form, captcha, email, form manager, forms, survey
|
4 |
Requires at least: 3.4
|
5 |
Tested up to: 4.9
|
6 |
-
Stable tag: 1.12.
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
10 |
-
Form Maker is a user-friendly form builder plugin that allows to create forms for any purpose, from a simple contact form to a multi page survey
|
11 |
|
12 |
== Description ==
|
13 |
|
@@ -445,6 +445,11 @@ Where **{{field_id}}** is the ID of the field you wish to prefill. Also, **{{par
|
|
445 |
|
446 |
|
447 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
448 |
= 1.12.25 =
|
449 |
* Changed: Updated translations.
|
450 |
* Added: Gutenberg integration.
|
3 |
Tags: form, form builder, contact form, custom form, feedback, contact, web contact form, captcha, email, form manager, forms, survey
|
4 |
Requires at least: 3.4
|
5 |
Tested up to: 4.9
|
6 |
+
Stable tag: 1.12.26
|
7 |
License: GPLv2 or later
|
8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
9 |
|
10 |
+
Form Maker is a user-friendly form builder plugin that allows to create forms for any purpose, from a simple contact form to a multi page survey
|
11 |
|
12 |
== Description ==
|
13 |
|
445 |
|
446 |
|
447 |
== Changelog ==
|
448 |
+
|
449 |
+
= 1.12.26 =
|
450 |
+
Fixed: Vulnerabilities reported by Neven Biruski from DefenseCode (using the tool ThunderScan).
|
451 |
+
Fixed: "The loopback request to your site failed" error.
|
452 |
+
|
453 |
= 1.12.25 =
|
454 |
* Changed: Updated translations.
|
455 |
* Added: Gutenberg integration.
|
wd/includes/overview.php
CHANGED
@@ -86,7 +86,7 @@
|
|
86 |
'title' => 'Form Maker',
|
87 |
'text' => __( 'Wordpress form builder plugin', $wd_options->prefix ),
|
88 |
'content' => __( 'Form Maker is a modern and advanced tool for creating WordPress forms easily and fast.', $wd_options->prefix ),
|
89 |
-
'href' => 'https://web-dorado.com/
|
90 |
),
|
91 |
"photo-gallery" => array(
|
92 |
'title' => 'Photo Gallery',
|
86 |
'title' => 'Form Maker',
|
87 |
'text' => __( 'Wordpress form builder plugin', $wd_options->prefix ),
|
88 |
'content' => __( 'Form Maker is a modern and advanced tool for creating WordPress forms easily and fast.', $wd_options->prefix ),
|
89 |
+
'href' => 'https://web-dorado.com/files/fromFormMaker.php'
|
90 |
),
|
91 |
"photo-gallery" => array(
|
92 |
'title' => 'Photo Gallery',
|