Version Description
- Improved: GDPR compliance options.
- Fixed: Error on form front end when Privacy Policy checkbox is enabled.
- Fixed: Bug on Actions after submission when Redirect to URL option is empty.
- Fixed: Notice on form submit.
- Fixed: Minor issues on Themes.
Download this release
Release Info
| Developer | webdorado |
| Plugin | |
| Version | 1.12.38 |
| Comparing to | |
| See all releases | |
Code changes from version 1.12.37 to 1.12.38
- admin/controllers/Themes_fm.php +1 -2
- admin/controllers/Uninstall_fm.php +31 -1
- admin/models/Manage_fm.php +16 -1
- admin/views/Manage_fm.php +1 -0
- admin/views/Uninstall_fm.php +92 -121
- contact-form-maker.php +3 -3
- css/form_maker_frontend.css +1 -0
- css/form_maker_tables.css +32 -0
- framework/WDW_FM_Library.php +18 -1
- frontend/models/form_maker.php +96 -86
- frontend/views/form_maker.php +2 -1
- js/add_field.js +27 -4
- js/formmaker_div.js +2 -1
- readme.txt +8 -1
admin/controllers/Themes_fm.php
CHANGED
|
@@ -1218,9 +1218,8 @@ class FMControllerThemes_fmc extends CFMAdminController {
|
|
| 1218 |
'name' => 'SCCPMargin',
|
| 1219 |
'type' => 'text',
|
| 1220 |
'class' => '',
|
| 1221 |
-
'placeholder' => __('e.g.', WDFMInstance(self::PLUGIN)->prefix) .' 5px 10px or 5% 10%',
|
| 1222 |
'value' => isset($param_values->SCCPMargin) ? $param_values->SCCPMargin : '',
|
| 1223 |
-
'after' => '',
|
| 1224 |
),
|
| 1225 |
array(
|
| 1226 |
'label' => __('Border Radius', WDFMInstance(self::PLUGIN)->prefix),
|
| 1218 |
'name' => 'SCCPMargin',
|
| 1219 |
'type' => 'text',
|
| 1220 |
'class' => '',
|
|
|
|
| 1221 |
'value' => isset($param_values->SCCPMargin) ? $param_values->SCCPMargin : '',
|
| 1222 |
+
'after' => 'px',
|
| 1223 |
),
|
| 1224 |
array(
|
| 1225 |
'label' => __('Border Radius', WDFMInstance(self::PLUGIN)->prefix),
|
admin/controllers/Uninstall_fm.php
CHANGED
|
@@ -50,10 +50,37 @@ class FMControllerUninstall_fmc extends CFMAdminController {
|
|
| 50 |
public function display() {
|
| 51 |
$params = array();
|
| 52 |
$params['addons'] = $this->addons;
|
|
|
|
|
|
|
|
|
|
| 53 |
$this->view->display($params);
|
| 54 |
}
|
| 55 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 56 |
public function uninstall() {
|
|
|
|
| 57 |
$this->model->delete_db_tables();
|
| 58 |
global $wpdb;
|
| 59 |
$params = array();
|
|
@@ -61,6 +88,9 @@ class FMControllerUninstall_fmc extends CFMAdminController {
|
|
| 61 |
$params['addons'] = $this->addons;
|
| 62 |
// Deactivate all addons
|
| 63 |
WDW_FM_Library(self::PLUGIN)->deactivate_all_addons();
|
| 64 |
-
$
|
|
|
|
|
|
|
|
|
|
| 65 |
}
|
| 66 |
}
|
| 50 |
public function display() {
|
| 51 |
$params = array();
|
| 52 |
$params['addons'] = $this->addons;
|
| 53 |
+
$params['page_title'] = sprintf(__('Uninstall %s', WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename);
|
| 54 |
+
$params['tables'] = $this->get_tables();
|
| 55 |
+
|
| 56 |
$this->view->display($params);
|
| 57 |
}
|
| 58 |
|
| 59 |
+
/**
|
| 60 |
+
* Return DB tables names.
|
| 61 |
+
*
|
| 62 |
+
* @return array
|
| 63 |
+
*/
|
| 64 |
+
private function get_tables() {
|
| 65 |
+
global $wpdb;
|
| 66 |
+
$tables = array(
|
| 67 |
+
$wpdb->prefix . 'formmaker',
|
| 68 |
+
$wpdb->prefix . 'formmaker_backup',
|
| 69 |
+
$wpdb->prefix . 'formmaker_blocked',
|
| 70 |
+
$wpdb->prefix . 'formmaker_groups',
|
| 71 |
+
$wpdb->prefix . 'formmaker_submits',
|
| 72 |
+
$wpdb->prefix . 'formmaker_views',
|
| 73 |
+
$wpdb->prefix . 'formmaker_themes',
|
| 74 |
+
$wpdb->prefix . 'formmaker_sessions',
|
| 75 |
+
$wpdb->prefix . 'formmaker_query',
|
| 76 |
+
$wpdb->prefix . 'formmaker_display_options',
|
| 77 |
+
);
|
| 78 |
+
|
| 79 |
+
return $tables;
|
| 80 |
+
}
|
| 81 |
+
|
| 82 |
public function uninstall() {
|
| 83 |
+
$params['tables'] = $this->get_tables();
|
| 84 |
$this->model->delete_db_tables();
|
| 85 |
global $wpdb;
|
| 86 |
$params = array();
|
| 88 |
$params['addons'] = $this->addons;
|
| 89 |
// Deactivate all addons
|
| 90 |
WDW_FM_Library(self::PLUGIN)->deactivate_all_addons();
|
| 91 |
+
$params['page_title'] = sprintf(__('Uninstall %s', WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename);
|
| 92 |
+
$params['deactivate'] = TRUE;
|
| 93 |
+
|
| 94 |
+
$this->view->display($params);
|
| 95 |
}
|
| 96 |
}
|
admin/models/Manage_fm.php
CHANGED
|
@@ -3164,6 +3164,20 @@ class FMModelManage_fmc extends CFMAdminModel {
|
|
| 3164 |
'w_class',
|
| 3165 |
);
|
| 3166 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3167 |
foreach ( $params_names as $params_name ) {
|
| 3168 |
$temp = explode('*:*' . $params_name . '*:*', $temp);
|
| 3169 |
$param[$params_name] = $temp[0];
|
|
@@ -3178,9 +3192,10 @@ class FMModelManage_fmc extends CFMAdminModel {
|
|
| 3178 |
}
|
| 3179 |
$param['w_field_label_pos'] = ($param['w_field_label_pos'] == "left" ? "table-cell" : "block");
|
| 3180 |
$param['w_hide_label'] = (isset($param['w_hide_label']) ? $param['w_hide_label'] : "no");
|
|
|
|
| 3181 |
$display_label = $param['w_hide_label'] == "no" ? $param['w_field_label_pos'] : "none";
|
| 3182 |
$required_sym = ($param['w_required'] == "yes" ? " *" : "");
|
| 3183 |
-
$rep = '<div id="wdform_field' . $id . '" type="type_slider" class="wdform_field" style="display: table-cell;">' . $arrows . '<div align="left" id="' . $id . '_label_sectionform_id_temp" class="' . $param['w_class'] . '" style="display: ' . $display_label . '; vertical-align: top; width: ' . $param['w_field_label_size'] . 'px;"><span id="' . $id . '_element_labelform_id_temp" class="label">' . $label . '</span><span id="' . $id . '_required_elementform_id_temp" class="required">' . $required_sym . '</span></div><div align="left" id="' . $id . '_element_sectionform_id_temp" class="' . $param['w_class'] . '" style="display: ' . $param['w_field_label_pos'] . ';"><input type="hidden" value="type_slider" name="' . $id . '_typeform_id_temp" id="' . $id . '_typeform_id_temp"><input type="hidden" value="' . $param['w_required'] . '" name="' . $id . '_requiredform_id_temp" id="' . $id . '_requiredform_id_temp"><input type="hidden" value="' . $param['w_hide_label'] . '" name="' . $id . '_hide_labelform_id_temp" id="' . $id . '_hide_labelform_id_temp"/><input type="hidden" value="' . $param['w_field_width'] . '" name="' . $id . '_slider_widthform_id_temp" id="' . $id . '_slider_widthform_id_temp"><input type="hidden" value="' . $param['w_field_min_value'] . '" id="' . $id . '_slider_min_valueform_id_temp" name="' . $id . '_slider_min_valueform_id_temp"><input type="hidden" value="' . $param['w_field_max_value'] . '" id="' . $id . '_slider_max_valueform_id_temp" name="' . $id . '_slider_max_valueform_id_temp"><input type="hidden" value="' . $param['w_field_value'] . '" id="' . $id . '_slider_valueform_id_temp" name="' . $id . '_slider_valueform_id_temp"><div id="' . $id . '_slider_tableform_id_temp"><div><div id="' . $id . '_slider_td1form_id_temp"><div name="' . $id . '_elementform_id_temp" id="' . $id . '_elementform_id_temp" style="width: ' . $param['w_field_width'] . 'px;" ' . $param['attributes'] . '"></div></div></div><div><div align="left" id="' . $id . '_slider_td2form_id_temp" style="display: inline-table; width: 33.3%; text-align: left;"><span id="' . $id . '_element_minform_id_temp" class="label">' . $param['w_field_min_value'] . '</span></div><div align="right" id="' . $id . '_slider_td3form_id_temp" style="display: inline-table; width: 33.3%; text-align: center;"><span id="' . $id . '_element_valueform_id_temp" class="label">' . $param['w_field_value'] . '</span></div><div align="right" id="' . $id . '_slider_td4form_id_temp" style="display: inline-table; width: 33.3%; text-align: right;"><span id="' . $id . '_element_maxform_id_temp" class="label">' . $param['w_field_max_value'] . '</span></div></div></div></div></div>';
|
| 3184 |
break;
|
| 3185 |
}
|
| 3186 |
case 'type_range': {
|
| 3164 |
'w_class',
|
| 3165 |
);
|
| 3166 |
}
|
| 3167 |
+
if ( strpos($temp, 'w_field_step') > -1 ) {
|
| 3168 |
+
$params_names = array(
|
| 3169 |
+
'w_field_label_size',
|
| 3170 |
+
'w_field_label_pos',
|
| 3171 |
+
'w_hide_label',
|
| 3172 |
+
'w_field_width',
|
| 3173 |
+
'w_field_min_value',
|
| 3174 |
+
'w_field_max_value',
|
| 3175 |
+
'w_field_step',
|
| 3176 |
+
'w_field_value',
|
| 3177 |
+
'w_required',
|
| 3178 |
+
'w_class',
|
| 3179 |
+
);
|
| 3180 |
+
}
|
| 3181 |
foreach ( $params_names as $params_name ) {
|
| 3182 |
$temp = explode('*:*' . $params_name . '*:*', $temp);
|
| 3183 |
$param[$params_name] = $temp[0];
|
| 3192 |
}
|
| 3193 |
$param['w_field_label_pos'] = ($param['w_field_label_pos'] == "left" ? "table-cell" : "block");
|
| 3194 |
$param['w_hide_label'] = (isset($param['w_hide_label']) ? $param['w_hide_label'] : "no");
|
| 3195 |
+
$param['w_field_step'] = (isset($param['w_field_step']) ? $param['w_field_step'] : 1);
|
| 3196 |
$display_label = $param['w_hide_label'] == "no" ? $param['w_field_label_pos'] : "none";
|
| 3197 |
$required_sym = ($param['w_required'] == "yes" ? " *" : "");
|
| 3198 |
+
$rep = '<div id="wdform_field' . $id . '" type="type_slider" class="wdform_field" style="display: table-cell;">' . $arrows . '<div align="left" id="' . $id . '_label_sectionform_id_temp" class="' . $param['w_class'] . '" style="display: ' . $display_label . '; vertical-align: top; width: ' . $param['w_field_label_size'] . 'px;"><span id="' . $id . '_element_labelform_id_temp" class="label">' . $label . '</span><span id="' . $id . '_required_elementform_id_temp" class="required">' . $required_sym . '</span></div><div align="left" id="' . $id . '_element_sectionform_id_temp" class="' . $param['w_class'] . '" style="display: ' . $param['w_field_label_pos'] . ';"><input type="hidden" value="type_slider" name="' . $id . '_typeform_id_temp" id="' . $id . '_typeform_id_temp"><input type="hidden" value="' . $param['w_required'] . '" name="' . $id . '_requiredform_id_temp" id="' . $id . '_requiredform_id_temp"><input type="hidden" value="' . $param['w_hide_label'] . '" name="' . $id . '_hide_labelform_id_temp" id="' . $id . '_hide_labelform_id_temp"/><input type="hidden" value="' . $param['w_field_width'] . '" name="' . $id . '_slider_widthform_id_temp" id="' . $id . '_slider_widthform_id_temp"><input type="hidden" value="' . $param['w_field_min_value'] . '" id="' . $id . '_slider_min_valueform_id_temp" name="' . $id . '_slider_min_valueform_id_temp"><input type="hidden" value="' . $param['w_field_max_value'] . '" id="' . $id . '_slider_max_valueform_id_temp" name="' . $id . '_slider_max_valueform_id_temp"><input type="hidden" value="' . $param['w_field_step'] . '" id="' . $id . '_slider_stepform_id_temp" name="' . $id . '_slider_stepform_id_temp" /><input type="hidden" value="' . $param['w_field_value'] . '" id="' . $id . '_slider_valueform_id_temp" name="' . $id . '_slider_valueform_id_temp"><div id="' . $id . '_slider_tableform_id_temp"><div><div id="' . $id . '_slider_td1form_id_temp"><div name="' . $id . '_elementform_id_temp" id="' . $id . '_elementform_id_temp" style="width: ' . $param['w_field_width'] . 'px;" ' . $param['attributes'] . '"></div></div></div><div><div align="left" id="' . $id . '_slider_td2form_id_temp" style="display: inline-table; width: 33.3%; text-align: left;"><span id="' . $id . '_element_minform_id_temp" class="label">' . $param['w_field_min_value'] . '</span></div><div align="right" id="' . $id . '_slider_td3form_id_temp" style="display: inline-table; width: 33.3%; text-align: center;"><span id="' . $id . '_element_valueform_id_temp" class="label">' . $param['w_field_value'] . '</span></div><div align="right" id="' . $id . '_slider_td4form_id_temp" style="display: inline-table; width: 33.3%; text-align: right;"><span id="' . $id . '_element_maxform_id_temp" class="label">' . $param['w_field_max_value'] . '</span></div></div></div></div></div>';
|
| 3199 |
break;
|
| 3200 |
}
|
| 3201 |
case 'type_range': {
|
admin/views/Manage_fm.php
CHANGED
|
@@ -1871,6 +1871,7 @@ class FMViewManage_fmc extends FMAdminView_fmc {
|
|
| 1871 |
<label class="wd-label" for="fm_go-gdpr_checkbox_text"><?php _e('GDPR compliance text.', WDFMInstance(self::PLUGIN)->prefix); ?></label>
|
| 1872 |
<input type="text" id="fm_go-gdpr_checkbox_text" name="gdpr_checkbox_text" value="<?php echo $row->gdpr_checkbox_text; ?>">
|
| 1873 |
<p class="description"><?php _e('This text will be used for GDPR compliance checkbox. Place {{privacy_policy}} placeholder to place "Privacy Policy page" link.', WDFMInstance(self::PLUGIN)->prefix); ?></p>
|
|
|
|
| 1874 |
</div>
|
| 1875 |
<div class="wd-group">
|
| 1876 |
<label class="wd-label"><?php _e('Save User IP Address to Database', WDFMInstance(self::PLUGIN)->prefix); ?></label>
|
| 1871 |
<label class="wd-label" for="fm_go-gdpr_checkbox_text"><?php _e('GDPR compliance text.', WDFMInstance(self::PLUGIN)->prefix); ?></label>
|
| 1872 |
<input type="text" id="fm_go-gdpr_checkbox_text" name="gdpr_checkbox_text" value="<?php echo $row->gdpr_checkbox_text; ?>">
|
| 1873 |
<p class="description"><?php _e('This text will be used for GDPR compliance checkbox. Place {{privacy_policy}} placeholder to place "Privacy Policy page" link.', WDFMInstance(self::PLUGIN)->prefix); ?></p>
|
| 1874 |
+
<p class="description"><?php echo sprintf(__('You can manage your privacy settings %s.', WDFMInstance(self::PLUGIN)->prefix), '<a href="' . admin_url('privacy.php') . '" target="_blank">' . __('here', WDFMInstance(self::PLUGIN)->prefix)) . '</a>'; ?></p>
|
| 1875 |
</div>
|
| 1876 |
<div class="wd-group">
|
| 1877 |
<label class="wd-label"><?php _e('Save User IP Address to Database', WDFMInstance(self::PLUGIN)->prefix); ?></label>
|
admin/views/Uninstall_fm.php
CHANGED
|
@@ -16,143 +16,114 @@ class FMViewUninstall_fmc extends FMAdminView_fmc {
|
|
| 16 |
/**
|
| 17 |
* Display page.
|
| 18 |
*
|
| 19 |
-
* @param
|
| 20 |
*/
|
| 21 |
-
public function display(
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
<div class="fm-logo-title"><?php _e('Uninstall', WDFMInstance(self::PLUGIN)->prefix); ?> <?php echo WDFMInstance(self::PLUGIN)->nicename; ?></div>
|
| 33 |
-
</div>
|
| 34 |
-
<br />
|
| 35 |
-
<div class="goodbye-text">
|
| 36 |
-
<?php echo sprintf( __('Before uninstalling %s, please contact %s. We\'ll do our best to assist you with any issue. We value every user and what\'s right for our users in everything we do.', WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename, '<a href="https://web-dorado.com/support/contact-us.html" target="_blank">' . __('Web-Dorado Customer Care', WDFMInstance(self::PLUGIN)->prefix) . '</a>'); ?>
|
| 37 |
-
<br>
|
| 38 |
-
<?php echo sprintf( __('However, if you have made a decision to uninstall %s in any case, please take a minute to contact %s and let us know what you\'d like to see improved in the plugin. Thank you!', WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename, '<a href="https://web-dorado.com/support/contact-us.html" target="_blank">' . __('our team', WDFMInstance(self::PLUGIN)->prefix) . '</a>'); ?>
|
| 39 |
-
</div>
|
| 40 |
-
<div class="goodbye-text" style="color: red;">
|
| 41 |
-
<?php echo sprintf( __('Note, that uninstalling %s will remove all forms, submissions and other data on the plugin.', WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename); ?>
|
| 42 |
-
<br>
|
| 43 |
-
<?php _e('Please make sure you don\'t have any important information before you proceed.', WDFMInstance(self::PLUGIN)->prefix); ?>
|
| 44 |
-
</div>
|
| 45 |
-
<p><?php echo sprintf( __('Deactivating %s plugin does not remove any data that may have been created, such as the Forms and the Submissions. To completely remove this plugin, you can uninstall it here.', WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename); ?></p>
|
| 46 |
-
<p style="color: red;">
|
| 47 |
-
<strong><?php _e('WARNING:', WDFMInstance(self::PLUGIN)->prefix); ?></strong>
|
| 48 |
-
<?php _e('Once uninstalled, this cannot be undone. You should use a Database Backup plugin of WordPress to back up all the data first.', WDFMInstance(self::PLUGIN)->prefix); ?>
|
| 49 |
-
</p>
|
| 50 |
-
<p style="color: red">
|
| 51 |
-
<strong><?php _e('The following WordPress Options/Tables will be DELETED:', WDFMInstance(self::PLUGIN)->prefix); ?></strong>
|
| 52 |
-
</p>
|
| 53 |
-
<table class="widefat">
|
| 54 |
-
<thead>
|
| 55 |
-
<tr>
|
| 56 |
-
<th><?php _e('Database Tables', WDFMInstance(self::PLUGIN)->prefix); ?></th>
|
| 57 |
-
</tr>
|
| 58 |
-
</thead>
|
| 59 |
-
<tr>
|
| 60 |
-
<td valign="top">
|
| 61 |
-
<ol>
|
| 62 |
-
<li><?php echo $prefix; ?>formmaker</li>
|
| 63 |
-
<li><?php echo $prefix; ?>formmaker_backup</li>
|
| 64 |
-
<li><?php echo $prefix; ?>formmaker_blocked</li>
|
| 65 |
-
<li><?php echo $prefix; ?>formmaker_groups</li>
|
| 66 |
-
<li><?php echo $prefix; ?>formmaker_submits</li>
|
| 67 |
-
<li><?php echo $prefix; ?>formmaker_views</li>
|
| 68 |
-
<li><?php echo $prefix; ?>formmaker_themes</li>
|
| 69 |
-
<li><?php echo $prefix; ?>formmaker_sessions</li>
|
| 70 |
-
<li><?php echo $prefix; ?>formmaker_query</li>
|
| 71 |
-
<li><?php echo $prefix; ?>formmaker_display_options</li>
|
| 72 |
-
<?php
|
| 73 |
-
foreach ( $addons as $addon => $addon_name ) {
|
| 74 |
-
if ( defined($addon) && is_plugin_active(constant($addon)) ) {
|
| 75 |
-
if ( is_array($addon_name) ) {
|
| 76 |
-
foreach ( $addon_name as $ad_name ) {
|
| 77 |
-
echo '<li>' . $prefix . 'formmaker_' . $ad_name . '</li>';
|
| 78 |
-
}
|
| 79 |
-
}
|
| 80 |
-
else {
|
| 81 |
-
echo '<li>' . $prefix . 'formmaker_' . $addon_name . '</li>';
|
| 82 |
-
}
|
| 83 |
-
}
|
| 84 |
-
}
|
| 85 |
-
?>
|
| 86 |
-
</ol>
|
| 87 |
-
</td>
|
| 88 |
-
</tr>
|
| 89 |
-
</table>
|
| 90 |
-
<p style="text-align: center;">
|
| 91 |
-
Do you really want to uninstall <?php echo WDFMInstance(self::PLUGIN)->nicename; ?>?
|
| 92 |
-
</p>
|
| 93 |
-
<p style="text-align: center;">
|
| 94 |
-
<input type="checkbox" name="Form Maker" id="check_yes" value="yes" /> <label for="check_yes">Yes</label>
|
| 95 |
-
</p>
|
| 96 |
-
<p style="text-align: center;">
|
| 97 |
-
<input type="submit" value="UNINSTALL" class="button-primary fm-uninstall-btn" onclick="if (check_yes.checked) { if (confirm('Are you sure you wish to uninstall <?php echo WDFMInstance(self::PLUGIN)->nicename; ?> from your website?\nAll forms, submissions and other data in the plugin will be removed.')) { fm_set_input_value('task', 'uninstall'); } else { return false; } } else { return false; }" />
|
| 98 |
-
</p>
|
| 99 |
-
</div>
|
| 100 |
-
<input id="task" name="task" type="hidden" value="" />
|
| 101 |
-
</form>
|
| 102 |
-
<?php
|
| 103 |
}
|
| 104 |
|
| 105 |
/**
|
| 106 |
-
*
|
| 107 |
*
|
| 108 |
-
* @param
|
| 109 |
*/
|
| 110 |
-
public function
|
| 111 |
-
$prefix = $params['prefix'];
|
| 112 |
-
$addons = $params['addons']; //array
|
| 113 |
$deactivate_url = add_query_arg(array(
|
| 114 |
'action' => 'deactivate',
|
| 115 |
'plugin' => WDFMInstance(self::PLUGIN)->main_file,
|
| 116 |
), admin_url('plugins.php'));
|
| 117 |
$deactivate_url = wp_nonce_url($deactivate_url, 'deactivate-plugin_' . WDFMInstance(self::PLUGIN)->main_file);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 118 |
?>
|
| 119 |
-
<div
|
| 120 |
-
<p>The following Database Tables successfully deleted:</p>
|
| 121 |
-
<p><?php echo $prefix; ?>formmaker,</p>
|
| 122 |
-
<p><?php echo $prefix; ?>formmaker_backup,</p>
|
| 123 |
-
<p><?php echo $prefix; ?>formmaker_blocked,</p>
|
| 124 |
-
<p><?php echo $prefix; ?>formmaker_sessions,</p>
|
| 125 |
-
<p><?php echo $prefix; ?>formmaker_groups,</p>
|
| 126 |
-
<p><?php echo $prefix; ?>formmaker_submits,</p>
|
| 127 |
-
<p><?php echo $prefix; ?>formmaker_themes,</p>
|
| 128 |
-
<p><?php echo $prefix; ?>formmaker_views,</p>
|
| 129 |
-
<p><?php echo $prefix; ?>formmaker_query,</p>
|
| 130 |
-
<p><?php echo $prefix; ?>formmaker_display_options.</p>
|
| 131 |
<?php
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 138 |
}
|
| 139 |
-
|
| 140 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 141 |
}
|
| 142 |
-
|
| 143 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 144 |
?>
|
| 145 |
-
</
|
| 146 |
-
<div class="wrap">
|
| 147 |
-
<h2><?php _e('Uninstall', WDFMInstance(self::PLUGIN)->prefix); ?> <?php echo WDFMInstance(self::PLUGIN)->nicename; ?></h2>
|
| 148 |
-
<p>
|
| 149 |
-
<strong>
|
| 150 |
-
<a href="<?php echo $deactivate_url; ?>" class="fm_deactivate_link" data-uninstall="1"><?php _e('Click Here', WDFMInstance(self::PLUGIN)->prefix); ?></a>
|
| 151 |
-
<?php _e('To Finish the Uninstallation and Form Maker will be Deactivated Automatically.', WDFMInstance(self::PLUGIN)->prefix); ?></a>
|
| 152 |
-
</strong>
|
| 153 |
-
</p>
|
| 154 |
-
<input id="task" name="task" type="hidden" value="" />
|
| 155 |
-
</div>
|
| 156 |
<?php
|
| 157 |
}
|
| 158 |
}
|
| 16 |
/**
|
| 17 |
* Display page.
|
| 18 |
*
|
| 19 |
+
* @param $params
|
| 20 |
*/
|
| 21 |
+
public function display($params = array()) {
|
| 22 |
+
ob_start();
|
| 23 |
+
echo $this->body($params);
|
| 24 |
+
// Pass the content to form.
|
| 25 |
+
$form_attr = array(
|
| 26 |
+
'id' => WDFMInstance(self::PLUGIN)->prefix . '_uninstall',
|
| 27 |
+
'name' => WDFMInstance(self::PLUGIN)->prefix . '_uninstall',
|
| 28 |
+
'class' => WDFMInstance(self::PLUGIN)->prefix . '_uninstall wd-form',
|
| 29 |
+
'action' => add_query_arg(array( 'page' => 'uninstall' . WDFMInstance(self::PLUGIN)->menu_postfix ), 'admin.php'),
|
| 30 |
+
);
|
| 31 |
+
echo $this->form(ob_get_clean(), $form_attr);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
}
|
| 33 |
|
| 34 |
/**
|
| 35 |
+
* Generate page body.
|
| 36 |
*
|
| 37 |
+
* @param $params
|
| 38 |
*/
|
| 39 |
+
public function body( $params = array() ) {
|
|
|
|
|
|
|
| 40 |
$deactivate_url = add_query_arg(array(
|
| 41 |
'action' => 'deactivate',
|
| 42 |
'plugin' => WDFMInstance(self::PLUGIN)->main_file,
|
| 43 |
), admin_url('plugins.php'));
|
| 44 |
$deactivate_url = wp_nonce_url($deactivate_url, 'deactivate-plugin_' . WDFMInstance(self::PLUGIN)->main_file);
|
| 45 |
+
echo $this->title(array(
|
| 46 |
+
'title' => $params['page_title'],
|
| 47 |
+
'title_class' => 'wd-header',
|
| 48 |
+
'add_new_button' => FALSE,
|
| 49 |
+
));
|
| 50 |
+
|
| 51 |
+
if ( isset($params['deactivate']) && $params['deactivate'] == TRUE ) {
|
| 52 |
+
?>
|
| 53 |
+
<p><strong><?php echo sprintf(__("%s to Finish the Uninstallation and %s will be Deactivated Automatically.", WDFMInstance(self::PLUGIN)->prefix), '<a href="' . $deactivate_url . '" class="bwg_deactivate_link" data-uninstall="1">' . __("Click Here", WDFMInstance(self::PLUGIN)->prefix) . '</a>', WDFMInstance(self::PLUGIN)->nicename); ?></strong></p>
|
| 54 |
+
<?php
|
| 55 |
+
|
| 56 |
+
return;
|
| 57 |
+
}
|
| 58 |
+
|
| 59 |
?>
|
| 60 |
+
<div class="goodbye-text">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 61 |
<?php
|
| 62 |
+
$support_team = '<a href="https://web-dorado.com/support/contact-us.html" target="_blank">' . __('support team', WDFMInstance(self::PLUGIN)->prefix) . '</a>';
|
| 63 |
+
$contact_us = '<a href="https://web-dorado.com/support/contact-us.html" target="_blank">' . __('Contact us', WDFMInstance(self::PLUGIN)->prefix) . '</a>';
|
| 64 |
+
echo sprintf(__("Before uninstalling the plugin, please Contact our %s. We'll do our best to help you out with your issue. We value each and every user and value what's right for our users in everything we do.<br />
|
| 65 |
+
However, if anyway you have made a decision to uninstall the plugin, please take a minute to %s and tell what you didn't like for our plugins further improvement and development. Thank you !!!", WDFMInstance(self::PLUGIN)->prefix), $support_team, $contact_us); ?>
|
| 66 |
+
</div>
|
| 67 |
+
<p>
|
| 68 |
+
<?php echo sprintf(__("Deactivating %s plugin does not remove any data that may have been created. To completely remove this plugin, you can uninstall it here.", WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename); ?>
|
| 69 |
+
</p>
|
| 70 |
+
<p class="wd-red">
|
| 71 |
+
<strong><?php _e("WARNING:", WDFMInstance(self::PLUGIN)->prefix); ?></strong>
|
| 72 |
+
<?php _e("Once uninstalled, this can't be undone. You should use a Database Backup plugin of WordPress to back up all the data first.", WDFMInstance(self::PLUGIN)->prefix); ?>
|
| 73 |
+
</p>
|
| 74 |
+
<p class="wd-red">
|
| 75 |
+
<strong><?php _e("The following Database Tables will be deleted:", WDFMInstance(self::PLUGIN)->prefix); ?></strong>
|
| 76 |
+
</p>
|
| 77 |
+
<table class="widefat">
|
| 78 |
+
<thead>
|
| 79 |
+
<tr>
|
| 80 |
+
<th><?php _e("Database Tables", WDFMInstance(self::PLUGIN)->prefix); ?></th>
|
| 81 |
+
</tr>
|
| 82 |
+
</thead>
|
| 83 |
+
<tr>
|
| 84 |
+
<td>
|
| 85 |
+
<?php
|
| 86 |
+
foreach ( $params['tables'] as $table ) {
|
| 87 |
+
?>
|
| 88 |
+
<p><?php echo $table; ?></p>
|
| 89 |
+
<?php
|
| 90 |
}
|
| 91 |
+
foreach ( $params['addons'] as $addon => $addon_name ) {
|
| 92 |
+
if ( defined($addon) && is_plugin_active(constant($addon)) ) {
|
| 93 |
+
if ( is_array($addon_name) ) {
|
| 94 |
+
foreach ( $addon_name as $ad_name ) {
|
| 95 |
+
echo '<p>' . WDFMInstance(self::PLUGIN)->prefix . 'formmaker_' . $ad_name . '</p>';
|
| 96 |
+
}
|
| 97 |
+
}
|
| 98 |
+
else {
|
| 99 |
+
echo '<p>' . WDFMInstance(self::PLUGIN)->prefix . 'formmaker_' . $addon_name . '</p>';
|
| 100 |
+
}
|
| 101 |
+
}
|
| 102 |
}
|
| 103 |
+
?>
|
| 104 |
+
</td>
|
| 105 |
+
</tr>
|
| 106 |
+
</table>
|
| 107 |
+
<p class="wd-text-center">
|
| 108 |
+
<?php echo sprintf(__("Do you really want to uninstall %s?", WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename); ?>
|
| 109 |
+
</p>
|
| 110 |
+
<p class="wd-text-center">
|
| 111 |
+
<input type="checkbox" name="Form Maker" id="check_yes" value="yes" />
|
| 112 |
+
<label for="check_yes"><?php _e("Yes", WDFMInstance(self::PLUGIN)->prefix); ?></label>
|
| 113 |
+
</p>
|
| 114 |
+
<p class="wd-text-center">
|
| 115 |
+
<?php
|
| 116 |
+
$buttons = array(
|
| 117 |
+
'save' => array(
|
| 118 |
+
'title' => __('UNINSTALL', WDFMInstance(self::PLUGIN)->prefix),
|
| 119 |
+
'value' => 'uninstall',
|
| 120 |
+
'onclick' => 'if (check_yes.checked && confirm(\'' . addslashes(sprintf(__("You are About to Uninstall %s from WordPress. This Action Is Not Reversible.", WDFMInstance(self::PLUGIN)->prefix), WDFMInstance(self::PLUGIN)->nicename)) . '\')) { fm_set_input_value(\'task\', \'uninstall\'); } else {return false;}',
|
| 121 |
+
'class' => 'button-primary',
|
| 122 |
+
),
|
| 123 |
+
);
|
| 124 |
+
echo $this->buttons($buttons, TRUE);
|
| 125 |
?>
|
| 126 |
+
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 127 |
<?php
|
| 128 |
}
|
| 129 |
}
|
contact-form-maker.php
CHANGED
|
@@ -3,7 +3,7 @@
|
|
| 3 |
* Plugin Name: Contact Form Maker
|
| 4 |
* Plugin URI: https://web-dorado.com/products/form-maker-wordpress.html
|
| 5 |
* Description: WordPress Contact Form Maker is a simple contact form builder, which allows the user with almost no knowledge of programming to create and edit different type of contact 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
|
|
@@ -95,8 +95,8 @@ final class WDCFM {
|
|
| 95 |
$this->plugin_url = plugins_url(plugin_basename(dirname(__FILE__)));
|
| 96 |
$this->front_urls = $this->get_front_urls();
|
| 97 |
$this->main_file = plugin_basename(__FILE__);
|
| 98 |
-
$this->plugin_version = '1.12.
|
| 99 |
-
$this->db_version = '2.12.
|
| 100 |
$this->menu_postfix = ($this->is_free == 2 ? '_fmc' : '_fm');
|
| 101 |
$this->plugin_postfix = ($this->is_free == 2 ? '_fmc' : '');
|
| 102 |
$this->menu_slug = 'manage' . $this->menu_postfix;
|
| 3 |
* Plugin Name: Contact Form Maker
|
| 4 |
* Plugin URI: https://web-dorado.com/products/form-maker-wordpress.html
|
| 5 |
* Description: WordPress Contact Form Maker is a simple contact form builder, which allows the user with almost no knowledge of programming to create and edit different type of contact forms.
|
| 6 |
+
* Version: 1.12.38
|
| 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
|
| 95 |
$this->plugin_url = plugins_url(plugin_basename(dirname(__FILE__)));
|
| 96 |
$this->front_urls = $this->get_front_urls();
|
| 97 |
$this->main_file = plugin_basename(__FILE__);
|
| 98 |
+
$this->plugin_version = '1.12.38';
|
| 99 |
+
$this->db_version = '2.12.38';
|
| 100 |
$this->menu_postfix = ($this->is_free == 2 ? '_fmc' : '_fm');
|
| 101 |
$this->plugin_postfix = ($this->is_free == 2 ? '_fmc' : '');
|
| 102 |
$this->menu_slug = 'manage' . $this->menu_postfix;
|
css/form_maker_frontend.css
CHANGED
|
@@ -1037,4 +1037,5 @@ div[type="type_slider"] .label {
|
|
| 1037 |
}
|
| 1038 |
.fm-form-container .fm-form .fm-gdpr-checkbox {
|
| 1039 |
display: initial !important;
|
|
|
|
| 1040 |
}
|
| 1037 |
}
|
| 1038 |
.fm-form-container .fm-form .fm-gdpr-checkbox {
|
| 1039 |
display: initial !important;
|
| 1040 |
+
margin-right: 5px;
|
| 1041 |
}
|
css/form_maker_tables.css
CHANGED
|
@@ -4337,4 +4337,36 @@ li.pp_selected > span {
|
|
| 4337 |
.tooltip-arrow.top:after {
|
| 4338 |
bottom: -20px;
|
| 4339 |
top: auto;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 4340 |
}
|
| 4337 |
.tooltip-arrow.top:after {
|
| 4338 |
bottom: -20px;
|
| 4339 |
top: auto;
|
| 4340 |
+
}
|
| 4341 |
+
|
| 4342 |
+
.wd-red {
|
| 4343 |
+
color: red;
|
| 4344 |
+
}
|
| 4345 |
+
|
| 4346 |
+
.wd-yellow {
|
| 4347 |
+
color: #FCCD47;
|
| 4348 |
+
}
|
| 4349 |
+
|
| 4350 |
+
.wd-grey {
|
| 4351 |
+
color: #9B9B9B;
|
| 4352 |
+
}
|
| 4353 |
+
|
| 4354 |
+
.goodbye-text {
|
| 4355 |
+
font-size: 16px;
|
| 4356 |
+
font-weight: bold;
|
| 4357 |
+
background: #fff;
|
| 4358 |
+
padding: 15px;
|
| 4359 |
+
line-height: 22px;
|
| 4360 |
+
}
|
| 4361 |
+
|
| 4362 |
+
.goodbye-text a {
|
| 4363 |
+
font-size: 15px;
|
| 4364 |
+
}
|
| 4365 |
+
|
| 4366 |
+
.wd-vertical-middle {
|
| 4367 |
+
vertical-align: middle !important;
|
| 4368 |
+
}
|
| 4369 |
+
|
| 4370 |
+
.wd-text-center {
|
| 4371 |
+
text-align: center;
|
| 4372 |
}
|
framework/WDW_FM_Library.php
CHANGED
|
@@ -3688,6 +3688,20 @@ class WDW_FMC_Library {
|
|
| 3688 |
'w_class',
|
| 3689 |
);
|
| 3690 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3691 |
foreach ( $params_names as $params_name ) {
|
| 3692 |
$temp = explode('*:*' . $params_name . '*:*', $temp);
|
| 3693 |
$param[$params_name] = $temp[0];
|
|
@@ -3697,6 +3711,7 @@ class WDW_FMC_Library {
|
|
| 3697 |
$onload_js .= '
|
| 3698 |
jQuery("#wdform_' . $id1 . '_element' . $form_id . '")[0].slide = null;
|
| 3699 |
jQuery("#wdform_' . $id1 . '_element' . $form_id . '").slider({
|
|
|
|
| 3700 |
range: "min",
|
| 3701 |
value: eval(' . $param['w_field_value'] . '),
|
| 3702 |
min: eval(' . $param['w_field_min_value'] . '),
|
|
@@ -5255,14 +5270,16 @@ class WDW_FMC_Library {
|
|
| 5255 |
*/
|
| 5256 |
public static function get_privacy_policy_url() {
|
| 5257 |
$permalink = '';
|
|
|
|
| 5258 |
$post_id = get_option( 'wp_page_for_privacy_policy' );
|
| 5259 |
if ( $post_id ) {
|
| 5260 |
$post = get_post( $post_id, OBJECT );
|
| 5261 |
if ( $post->post_status == 'publish' ) {
|
| 5262 |
$permalink = get_permalink( $post_id );
|
|
|
|
| 5263 |
}
|
| 5264 |
}
|
| 5265 |
-
return $permalink;
|
| 5266 |
}
|
| 5267 |
|
| 5268 |
public static function unique_number() {
|
| 3688 |
'w_class',
|
| 3689 |
);
|
| 3690 |
}
|
| 3691 |
+
if ( strpos($temp, 'w_field_step') > -1 ) {
|
| 3692 |
+
$params_names = array(
|
| 3693 |
+
'w_field_label_size',
|
| 3694 |
+
'w_field_label_pos',
|
| 3695 |
+
'w_hide_label',
|
| 3696 |
+
'w_field_width',
|
| 3697 |
+
'w_field_min_value',
|
| 3698 |
+
'w_field_max_value',
|
| 3699 |
+
'w_field_step',
|
| 3700 |
+
'w_field_value',
|
| 3701 |
+
'w_required',
|
| 3702 |
+
'w_class',
|
| 3703 |
+
);
|
| 3704 |
+
}
|
| 3705 |
foreach ( $params_names as $params_name ) {
|
| 3706 |
$temp = explode('*:*' . $params_name . '*:*', $temp);
|
| 3707 |
$param[$params_name] = $temp[0];
|
| 3711 |
$onload_js .= '
|
| 3712 |
jQuery("#wdform_' . $id1 . '_element' . $form_id . '")[0].slide = null;
|
| 3713 |
jQuery("#wdform_' . $id1 . '_element' . $form_id . '").slider({
|
| 3714 |
+
step: parseInt(' . $param['w_field_step'] . '),
|
| 3715 |
range: "min",
|
| 3716 |
value: eval(' . $param['w_field_value'] . '),
|
| 3717 |
min: eval(' . $param['w_field_min_value'] . '),
|
| 5270 |
*/
|
| 5271 |
public static function get_privacy_policy_url() {
|
| 5272 |
$permalink = '';
|
| 5273 |
+
$title = __('Privacy Policy', WDFMInstance(self::PLUGIN)->prefix);
|
| 5274 |
$post_id = get_option( 'wp_page_for_privacy_policy' );
|
| 5275 |
if ( $post_id ) {
|
| 5276 |
$post = get_post( $post_id, OBJECT );
|
| 5277 |
if ( $post->post_status == 'publish' ) {
|
| 5278 |
$permalink = get_permalink( $post_id );
|
| 5279 |
+
$title = $post->post_title;
|
| 5280 |
}
|
| 5281 |
}
|
| 5282 |
+
return array('url' => $permalink, 'title' => $title);
|
| 5283 |
}
|
| 5284 |
|
| 5285 |
public static function unique_number() {
|
frontend/models/form_maker.php
CHANGED
|
@@ -351,14 +351,13 @@ class FMModelForm_maker_fmc {
|
|
| 351 |
(!empty( $form_theme[ 'GPFontSize' ] ) ? 'font-size:' . $form_theme[ 'GPFontSize' ] . 'px;' : '') .
|
| 352 |
(!empty( $form_theme[ 'GPColor' ] ) ? 'color:' . $form_theme[ 'GPColor' ] . ';' : '') .
|
| 353 |
'}';
|
| 354 |
-
if ( !empty( $form_theme[ 'GPAlign' ] )
|
| 355 |
-
$
|
| 356 |
-
'margin:0 auto;'
|
| 357 |
-
|
| 358 |
-
|
| 359 |
-
|
| 360 |
-
|
| 361 |
-
'}';
|
| 362 |
}
|
| 363 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .wdform_section {' .
|
| 364 |
(!empty( $form_theme[ 'SEPMargin' ] ) ? 'margin:' . $form_theme[ 'SEPMargin' ] . ';' : '') .
|
|
@@ -603,9 +602,9 @@ class FMModelForm_maker_fmc {
|
|
| 603 |
(!empty( $form_theme[ 'GPBGColor' ] ) ? 'background:' . $form_theme[ 'GPBGColor' ] . ';' : '') .
|
| 604 |
(!empty( $form_theme[ 'GPFontFamily' ] ) ? 'font-family:' . $form_theme[ 'GPFontFamily' ] . ';' : '') .
|
| 605 |
'}';
|
| 606 |
-
|
| 607 |
-
|
| 608 |
-
|
| 609 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form input[type="text"],
|
| 610 |
.fm-form-container.fm-theme' . $theme_id . ' .fm-form .ui-corner-all,
|
| 611 |
.fm-form-container.fm-theme' . $theme_id . ' .fm-form input[type="number"],
|
|
@@ -799,9 +798,12 @@ class FMModelForm_maker_fmc {
|
|
| 799 |
(!empty( $form_theme[ 'SPBoxShadow' ] ) ? 'box-shadow:' . $form_theme[ 'SPBoxShadow' ] . ' !important;' : '') .
|
| 800 |
((isset( $form_theme[ 'SPBorderRadius' ] ) && $form_theme[ 'SPBorderRadius' ] !== '') ? 'border-radius:' . $form_theme[ 'SPBorderRadius' ] . 'px !important;' : '') .
|
| 801 |
'}';
|
|
|
|
|
|
|
|
|
|
| 802 |
if ( !empty( $borders[ 'SP' ] ) ) {
|
| 803 |
foreach ( $borders[ 'SP' ] as $border ) {
|
| 804 |
-
if ( !empty( $form_theme[ 'SPBorderType' ] ) && ($form_theme[ 'SPBorderType' ] == 'inherit' || $form_theme[ 'SPBorderType' ] == 'initial') ) {
|
| 805 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-submit {' .
|
| 806 |
'border-' . $border . '-style:' . $form_theme[ 'SPBorderType' ] . ' !important;' .
|
| 807 |
'}';
|
|
@@ -849,17 +851,22 @@ class FMModelForm_maker_fmc {
|
|
| 849 |
((isset( $form_theme[ 'BPBorderRadius' ] ) && $form_theme[ 'BPBorderRadius' ] !== '') ? 'border-radius:' . $form_theme[ 'BPBorderRadius' ] . 'px;' : '') .
|
| 850 |
(!empty( $form_theme[ 'BPBoxShadow' ] ) ? 'box-shadow:' . $form_theme[ 'BPBoxShadow' ] . ' !important;' : '') .
|
| 851 |
'}';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 852 |
if ( !empty( $borders[ 'BP' ] ) ) {
|
| 853 |
foreach ( $borders[ 'BP' ] as $border ) {
|
| 854 |
-
if ( !empty( $form_theme[ 'BPBorderType' ] ) && ($form_theme[ 'BPBorderType' ] == 'inherit' || $form_theme[ 'BPBorderType' ] == 'initial') ) {
|
| 855 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-reset,
|
| 856 |
-
.fm-form-container.fm-theme' . $theme_id . ' .fm-form button {' .
|
| 857 |
'border-' . $border . '-style:' . $form_theme[ 'BPBorderType' ] . ' !important;' .
|
| 858 |
'}';
|
| 859 |
break;
|
| 860 |
} else {
|
| 861 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-reset,
|
| 862 |
-
.fm-form-container.fm-theme' . $theme_id . ' .fm-form button {' .
|
| 863 |
((isset( $form_theme[ 'BPBorderWidth' ] ) && $form_theme[ 'BPBorderWidth' ] !== '') ? 'border-' . $border . ':' . $form_theme[ 'BPBorderWidth' ] . 'px !important;' : '') .
|
| 864 |
(!empty( $form_theme[ 'BPBorderType' ] ) ? 'border-' . $border . '-style:' . $form_theme[ 'BPBorderType' ] . ' !important;' : '') .
|
| 865 |
(!empty( $form_theme[ 'BPBorderColor' ] ) ? 'border-' . $border . '-color:' . $form_theme[ 'BPBorderColor' ] . ' !important;' : '') .
|
|
@@ -996,11 +1003,13 @@ class FMModelForm_maker_fmc {
|
|
| 996 |
.fm-form-container.fm-theme' . $theme_id . ' .fm-form input[type="checkbox"] {' .
|
| 997 |
(!empty( $form_theme[ 'MCCPBackground' ] ) || !empty( $form_theme[ 'MCCPBGColor' ] ) ? 'display: none;' : '') .
|
| 998 |
'}';
|
| 999 |
-
|
|
|
|
|
|
|
| 1000 |
}
|
| 1001 |
-
if ( !empty( $form_theme[ 'CUPCSS' ] )
|
| 1002 |
-
$pattern = '/\/\/(.+)(\r\n|\r|\n)/';
|
| 1003 |
$form_theme_css = $form_theme[ 'CUPCSS' ];
|
|
|
|
| 1004 |
if ( strpos( $form_theme_css, ':checked + label' ) !== FALSE ) {
|
| 1005 |
$form_theme_css .= '
|
| 1006 |
.checkbox-div label span {
|
|
@@ -3220,47 +3229,47 @@ class FMModelForm_maker_fmc {
|
|
| 3220 |
array_push( $attachment_user, $pdf_data['pdf_url'] );
|
| 3221 |
}
|
| 3222 |
|
| 3223 |
-
if ( $row->sendemail ) {
|
| 3224 |
-
|
| 3225 |
-
|
| 3226 |
-
|
| 3227 |
-
|
| 3228 |
-
|
| 3229 |
-
|
| 3230 |
-
|
| 3231 |
-
|
| 3232 |
-
|
| 3233 |
-
|
| 3234 |
-
|
| 3235 |
-
|
| 3236 |
-
|
| 3237 |
-
|
| 3238 |
-
|
| 3239 |
-
|
| 3240 |
-
|
| 3241 |
-
|
| 3242 |
-
|
| 3243 |
-
|
| 3244 |
-
|
| 3245 |
-
), get_post_permalink( $mail_verification_post_id ) ) . ">" . add_query_arg( array(
|
| 3246 |
-
'gid' => $_SESSION[ 'gid' ],
|
| 3247 |
-
'h' => $_SESSION[ 'hash' ][ $index ] . '@' . $send_to,
|
| 3248 |
-
), get_post_permalink( $mail_verification_post_id ) ) . "</a><br/>" : add_query_arg( array(
|
| 3249 |
'gid' => $_SESSION[ 'gid' ],
|
| 3250 |
'h' => $_SESSION[ 'hash' ][ $index ] . '@' . $send_to,
|
| 3251 |
-
), get_post_permalink( $mail_verification_post_id ) )
|
| 3252 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3253 |
}
|
| 3254 |
-
|
| 3255 |
-
|
| 3256 |
-
|
| 3257 |
-
|
| 3258 |
-
|
| 3259 |
-
$attachment_user = iterator_to_array( $remove_parrent_array_user, FALSE );
|
| 3260 |
-
} else {
|
| 3261 |
-
$attachment_user = array();
|
| 3262 |
-
}
|
| 3263 |
-
WDW_FM_Library(self::PLUGIN)->mail( $recipient, $subject, $body, $header_arr, $attachment_user );
|
| 3264 |
}
|
| 3265 |
}
|
| 3266 |
}
|
|
@@ -3268,7 +3277,7 @@ class FMModelForm_maker_fmc {
|
|
| 3268 |
}
|
| 3269 |
|
| 3270 |
// Admin part.
|
| 3271 |
-
if ( $row->sendemail ) {
|
| 3272 |
$recipient = $row->mail ? $row->mail : '';
|
| 3273 |
$subject = !empty( $row->mail_subject ) ? $row->mail_subject : $row->title;
|
| 3274 |
|
|
@@ -3371,7 +3380,9 @@ class FMModelForm_maker_fmc {
|
|
| 3371 |
// Replace pdf link in email body.
|
| 3372 |
$admin_body = str_replace( '{PDF(link)}', site_url($pdf_data['pdf_url']), $admin_body );
|
| 3373 |
|
| 3374 |
-
|
|
|
|
|
|
|
| 3375 |
}
|
| 3376 |
$_SESSION[ 'error_or_no' . $id ] = 0;
|
| 3377 |
$msg = addslashes( __( 'Your form was successfully submitted.', WDFMInstance(self::PLUGIN)->prefix ) );
|
|
@@ -3381,38 +3392,37 @@ class FMModelForm_maker_fmc {
|
|
| 3381 |
if ( $send !== TRUE ) {
|
| 3382 |
$_SESSION[ 'error_or_no' . $id ] = 1;
|
| 3383 |
$msg = addslashes( __( 'Error, email was not sent.', WDFMInstance(self::PLUGIN)->prefix ) );
|
| 3384 |
-
}
|
|
|
|
| 3385 |
$_SESSION[ 'error_or_no' . $id ] = 0;
|
| 3386 |
-
$msg = addslashes( __( 'Your form was successfully submitted.', WDFMInstance(self::PLUGIN)->prefix ) );
|
| 3387 |
}
|
| 3388 |
}
|
| 3389 |
}
|
| 3390 |
}
|
| 3391 |
|
| 3392 |
-
// Add-on conditional email
|
| 3393 |
-
if ( WDFMInstance(self::PLUGIN)->is_free != 2 ) {
|
| 3394 |
-
|
| 3395 |
-
|
| 3396 |
-
|
| 3397 |
-
|
| 3398 |
-
|
| 3399 |
-
|
| 3400 |
-
|
| 3401 |
-
|
| 3402 |
-
|
| 3403 |
-
|
| 3404 |
-
|
| 3405 |
-
|
| 3406 |
-
|
| 3407 |
-
|
| 3408 |
-
|
| 3409 |
-
|
| 3410 |
-
|
| 3411 |
-
|
| 3412 |
-
|
| 3413 |
-
|
| 3414 |
-
|
| 3415 |
-
// delete files from uploads (save_upload = 0)
|
| 3416 |
if ( $row->save_uploads == 0 ) {
|
| 3417 |
foreach ( $all_files as &$all_file ) {
|
| 3418 |
if ( file_exists( $all_file[ 'tmp_name' ] ) ) {
|
|
@@ -3425,7 +3435,7 @@ class FMModelForm_maker_fmc {
|
|
| 3425 |
|
| 3426 |
$https = ((isset( $_SERVER[ 'HTTPS' ] ) && $_SERVER[ 'HTTPS' ] == 'on') ? 'https://' : 'http://');
|
| 3427 |
$redirect_url = $https . $_SERVER[ "HTTP_HOST" ] . $_SERVER[ "REQUEST_URI" ];
|
| 3428 |
-
if ( $row->submit_text_type == 4 ) {
|
| 3429 |
// Action after submission: URL.
|
| 3430 |
$redirect_url = $row->url;
|
| 3431 |
}
|
|
@@ -3434,7 +3444,7 @@ class FMModelForm_maker_fmc {
|
|
| 3434 |
$redirect_url = $row->article_id;
|
| 3435 |
}
|
| 3436 |
|
| 3437 |
-
if ( $row->submit_text_type != 4 ) {
|
| 3438 |
// This ensures that no message is enqueued by an add-on.
|
| 3439 |
if ( !$_SESSION[ 'massage_after_submit' . $id ] ) {
|
| 3440 |
$_SESSION[ 'massage_after_submit' . $id ] = $msg;
|
| 351 |
(!empty( $form_theme[ 'GPFontSize' ] ) ? 'font-size:' . $form_theme[ 'GPFontSize' ] . 'px;' : '') .
|
| 352 |
(!empty( $form_theme[ 'GPColor' ] ) ? 'color:' . $form_theme[ 'GPColor' ] . ';' : '') .
|
| 353 |
'}';
|
| 354 |
+
if ( !empty( $form_theme[ 'GPAlign' ] ) ) {
|
| 355 |
+
if ( $form_theme[ 'GPAlign' ] == 'center' ) {
|
| 356 |
+
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' { margin: 0 auto; }';
|
| 357 |
+
}
|
| 358 |
+
else {
|
| 359 |
+
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' { float: ' . $form_theme['GPAlign'] . '; }';
|
| 360 |
+
}
|
|
|
|
| 361 |
}
|
| 362 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .wdform_section {' .
|
| 363 |
(!empty( $form_theme[ 'SEPMargin' ] ) ? 'margin:' . $form_theme[ 'SEPMargin' ] . ';' : '') .
|
| 602 |
(!empty( $form_theme[ 'GPBGColor' ] ) ? 'background:' . $form_theme[ 'GPBGColor' ] . ';' : '') .
|
| 603 |
(!empty( $form_theme[ 'GPFontFamily' ] ) ? 'font-family:' . $form_theme[ 'GPFontFamily' ] . ';' : '') .
|
| 604 |
'}';
|
| 605 |
+
if ( !empty( $form_theme[ 'SEPBGColor' ] ) ) {
|
| 606 |
+
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .wdform_section { background:' . $form_theme['SEPBGColor'] . '; }';
|
| 607 |
+
}
|
| 608 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form input[type="text"],
|
| 609 |
.fm-form-container.fm-theme' . $theme_id . ' .fm-form .ui-corner-all,
|
| 610 |
.fm-form-container.fm-theme' . $theme_id . ' .fm-form input[type="number"],
|
| 798 |
(!empty( $form_theme[ 'SPBoxShadow' ] ) ? 'box-shadow:' . $form_theme[ 'SPBoxShadow' ] . ' !important;' : '') .
|
| 799 |
((isset( $form_theme[ 'SPBorderRadius' ] ) && $form_theme[ 'SPBorderRadius' ] !== '') ? 'border-radius:' . $form_theme[ 'SPBorderRadius' ] . 'px !important;' : '') .
|
| 800 |
'}';
|
| 801 |
+
if ( !empty( $form_theme[ 'SPBorderType' ] ) && ($form_theme[ 'SPBorderType' ] == 'none' || $form_theme[ 'SPBorderType' ] == 'inherit' || $form_theme[ 'SPBorderType' ] == 'initial') ) {
|
| 802 |
+
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-submit {' . 'border: ' . $form_theme['SPBorderType'] . '}';
|
| 803 |
+
}
|
| 804 |
if ( !empty( $borders[ 'SP' ] ) ) {
|
| 805 |
foreach ( $borders[ 'SP' ] as $border ) {
|
| 806 |
+
if ( !empty( $form_theme[ 'SPBorderType' ] ) && ($form_theme[ 'SPBorderType' ] == 'none' || $form_theme[ 'SPBorderType' ] == 'inherit' || $form_theme[ 'SPBorderType' ] == 'initial') ) {
|
| 807 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-submit {' .
|
| 808 |
'border-' . $border . '-style:' . $form_theme[ 'SPBorderType' ] . ' !important;' .
|
| 809 |
'}';
|
| 851 |
((isset( $form_theme[ 'BPBorderRadius' ] ) && $form_theme[ 'BPBorderRadius' ] !== '') ? 'border-radius:' . $form_theme[ 'BPBorderRadius' ] . 'px;' : '') .
|
| 852 |
(!empty( $form_theme[ 'BPBoxShadow' ] ) ? 'box-shadow:' . $form_theme[ 'BPBoxShadow' ] . ' !important;' : '') .
|
| 853 |
'}';
|
| 854 |
+
if ( !empty( $form_theme[ 'BPBorderType' ] ) && ($form_theme[ 'BPBorderType' ] == 'none' || $form_theme[ 'BPBorderType' ] == 'inherit' || $form_theme[ 'BPBorderType' ] == 'initial') ) {
|
| 855 |
+
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-reset,
|
| 856 |
+
.fm-form-container.fm-theme' . $theme_id . ' .fm-form button:not(.button-submit) {' .
|
| 857 |
+
'border: ' . $form_theme[ 'BPBorderType' ] . '; }';
|
| 858 |
+
}
|
| 859 |
if ( !empty( $borders[ 'BP' ] ) ) {
|
| 860 |
foreach ( $borders[ 'BP' ] as $border ) {
|
| 861 |
+
if ( !empty( $form_theme[ 'BPBorderType' ] ) && ($form_theme[ 'BPBorderType' ] == 'none' || $form_theme[ 'BPBorderType' ] == 'inherit' || $form_theme[ 'BPBorderType' ] == 'initial') ) {
|
| 862 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-reset,
|
| 863 |
+
.fm-form-container.fm-theme' . $theme_id . ' .fm-form button:not(.button-submit) {' .
|
| 864 |
'border-' . $border . '-style:' . $form_theme[ 'BPBorderType' ] . ' !important;' .
|
| 865 |
'}';
|
| 866 |
break;
|
| 867 |
} else {
|
| 868 |
$css_content .= '.fm-form-container.fm-theme' . $theme_id . ' .fm-form .button-reset,
|
| 869 |
+
.fm-form-container.fm-theme' . $theme_id . ' .fm-form butto:not(.button-submit)n {' .
|
| 870 |
((isset( $form_theme[ 'BPBorderWidth' ] ) && $form_theme[ 'BPBorderWidth' ] !== '') ? 'border-' . $border . ':' . $form_theme[ 'BPBorderWidth' ] . 'px !important;' : '') .
|
| 871 |
(!empty( $form_theme[ 'BPBorderType' ] ) ? 'border-' . $border . '-style:' . $form_theme[ 'BPBorderType' ] . ' !important;' : '') .
|
| 872 |
(!empty( $form_theme[ 'BPBorderColor' ] ) ? 'border-' . $border . '-color:' . $form_theme[ 'BPBorderColor' ] . ' !important;' : '') .
|
| 1003 |
.fm-form-container.fm-theme' . $theme_id . ' .fm-form input[type="checkbox"] {' .
|
| 1004 |
(!empty( $form_theme[ 'MCCPBackground' ] ) || !empty( $form_theme[ 'MCCPBGColor' ] ) ? 'display: none;' : '') .
|
| 1005 |
'}';
|
| 1006 |
+
if ( !empty( $form_theme[ 'CUPCSS' ] ) ) {
|
| 1007 |
+
$css_content .= $form_theme['CUPCSS'];
|
| 1008 |
+
}
|
| 1009 |
}
|
| 1010 |
+
if ( !empty( $form_theme[ 'CUPCSS' ] ) ) {
|
|
|
|
| 1011 |
$form_theme_css = $form_theme[ 'CUPCSS' ];
|
| 1012 |
+
$pattern = '/\/\/(.+)(\r\n|\r|\n)/';
|
| 1013 |
if ( strpos( $form_theme_css, ':checked + label' ) !== FALSE ) {
|
| 1014 |
$form_theme_css .= '
|
| 1015 |
.checkbox-div label span {
|
| 3229 |
array_push( $attachment_user, $pdf_data['pdf_url'] );
|
| 3230 |
}
|
| 3231 |
|
| 3232 |
+
if ( $row->sendemail && $row->send_to || (has_action('fm_set_params_frontend_init') && WDFMInstance(self::PLUGIN)->is_free != 2) ) {
|
| 3233 |
+
$body = $new_script;
|
| 3234 |
+
$send_tos = explode( '**', $row->send_to );
|
| 3235 |
+
$send_copy = isset( $_POST[ "wdform_send_copy_" . $id ] ) ? $_POST[ "wdform_send_copy_" . $id ] : NULL;
|
| 3236 |
+
if ( isset( $send_copy ) ) {
|
| 3237 |
+
$send = TRUE;
|
| 3238 |
+
}
|
| 3239 |
+
else {
|
| 3240 |
+
$mail_verification_post_id = (int)$wpdb->get_var( $wpdb->prepare( 'SELECT mail_verification_post_id FROM ' . $wpdb->prefix . 'formmaker WHERE id="%d"', $id ) );
|
| 3241 |
+
$verification_link = get_post( $mail_verification_post_id );
|
| 3242 |
+
|
| 3243 |
+
// Replace pdf link in email body.
|
| 3244 |
+
$body = str_replace( '{PDF(link)}', site_url($pdf_data['pdf_url']), $body );
|
| 3245 |
+
|
| 3246 |
+
foreach ( $send_tos as $index => $send_to ) {
|
| 3247 |
+
$send_to = str_replace( '*', '', $send_to );
|
| 3248 |
+
if ( $row->mail_verify && $verification_link !== NULL
|
| 3249 |
+
&& (strpos( $new_script, "{verificationlink}" ) > -1 || strpos( $new_script, "%Verification link%" ) > -1) ) {
|
| 3250 |
+
$ver_link = $row->mail_mode_user ? "<a href =" . add_query_arg( array(
|
| 3251 |
+
'gid' => $_SESSION[ 'gid' ],
|
| 3252 |
+
'h' => $_SESSION[ 'hash' ][ $index ] . '@' . $send_to,
|
| 3253 |
+
), get_post_permalink( $mail_verification_post_id ) ) . ">" . add_query_arg( array(
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3254 |
'gid' => $_SESSION[ 'gid' ],
|
| 3255 |
'h' => $_SESSION[ 'hash' ][ $index ] . '@' . $send_to,
|
| 3256 |
+
), get_post_permalink( $mail_verification_post_id ) ) . "</a><br/>" : add_query_arg( array(
|
| 3257 |
+
'gid' => $_SESSION[ 'gid' ],
|
| 3258 |
+
'h' => $_SESSION[ 'hash' ][ $index ] . '@' . $send_to,
|
| 3259 |
+
), get_post_permalink( $mail_verification_post_id ) );
|
| 3260 |
+
$body = str_replace( array( '%Verification link%', '{verificationlink}' ), $ver_link, $new_script );
|
| 3261 |
+
}
|
| 3262 |
+
$recipient = isset( $_POST[ 'wdform_' . str_replace( '*', '', $send_to ) . "_element" . $id ] ) ? $_POST[ 'wdform_' . $send_to . "_element" . $id ] : NULL;
|
| 3263 |
+
if ( $recipient ) {
|
| 3264 |
+
if ( $row->mail_attachment_user ) {
|
| 3265 |
+
$remove_parrent_array_user = new RecursiveIteratorIterator( new RecursiveArrayIterator( $attachment_user ) );
|
| 3266 |
+
$attachment_user = iterator_to_array( $remove_parrent_array_user, FALSE );
|
| 3267 |
}
|
| 3268 |
+
else {
|
| 3269 |
+
$attachment_user = array();
|
| 3270 |
+
}
|
| 3271 |
+
if ( $row->sendemail && $row->send_to ) {
|
| 3272 |
+
WDW_FM_Library(self::PLUGIN)->mail($recipient, $subject, $body, $header_arr, $attachment_user);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 3273 |
}
|
| 3274 |
}
|
| 3275 |
}
|
| 3277 |
}
|
| 3278 |
|
| 3279 |
// Admin part.
|
| 3280 |
+
if ( $row->sendemail || (has_action('fm_set_params_frontend_init') && WDFMInstance(self::PLUGIN)->is_free != 2) ) {
|
| 3281 |
$recipient = $row->mail ? $row->mail : '';
|
| 3282 |
$subject = !empty( $row->mail_subject ) ? $row->mail_subject : $row->title;
|
| 3283 |
|
| 3380 |
// Replace pdf link in email body.
|
| 3381 |
$admin_body = str_replace( '{PDF(link)}', site_url($pdf_data['pdf_url']), $admin_body );
|
| 3382 |
|
| 3383 |
+
if ( $row->sendemail ) {
|
| 3384 |
+
$send = WDW_FM_Library(self::PLUGIN)->mail($recipient, $subject, $admin_body, $header_arr, $attachment);
|
| 3385 |
+
}
|
| 3386 |
}
|
| 3387 |
$_SESSION[ 'error_or_no' . $id ] = 0;
|
| 3388 |
$msg = addslashes( __( 'Your form was successfully submitted.', WDFMInstance(self::PLUGIN)->prefix ) );
|
| 3392 |
if ( $send !== TRUE ) {
|
| 3393 |
$_SESSION[ 'error_or_no' . $id ] = 1;
|
| 3394 |
$msg = addslashes( __( 'Error, email was not sent.', WDFMInstance(self::PLUGIN)->prefix ) );
|
| 3395 |
+
}
|
| 3396 |
+
else {
|
| 3397 |
$_SESSION[ 'error_or_no' . $id ] = 0;
|
|
|
|
| 3398 |
}
|
| 3399 |
}
|
| 3400 |
}
|
| 3401 |
}
|
| 3402 |
|
| 3403 |
+
// Add-on conditional email.
|
| 3404 |
+
if ( has_action('fm_set_params_frontend_init') && WDFMInstance(self::PLUGIN)->is_free != 2 ) {
|
| 3405 |
+
$fm_email_params = $row->sendemail ? array(
|
| 3406 |
+
'admin_body' => $admin_body,
|
| 3407 |
+
'body' => $body,
|
| 3408 |
+
'subject' => $subject,
|
| 3409 |
+
'headers' => $header_arr,
|
| 3410 |
+
'attachment' => $attachment,
|
| 3411 |
+
'attachment_user' => $attachment_user,
|
| 3412 |
+
) : array();
|
| 3413 |
+
/* TODO. Need 'custom_fields_value' key. They work with it old conditional-emails.*/
|
| 3414 |
+
$custom_fields_value = array( $this->custom_fields['ip'], $this->custom_fields['useremail'], $this->custom_fields['username'], $this->custom_fields['subid'], $this->custom_fields['all'] );
|
| 3415 |
+
$params = array(
|
| 3416 |
+
'form_id' => $id,
|
| 3417 |
+
'fm_email_params' => $fm_email_params,
|
| 3418 |
+
'form_currency' => $form_currency,
|
| 3419 |
+
'custom_fields' => $this->custom_fields,
|
| 3420 |
+
'custom_fields_value' => $custom_fields_value
|
| 3421 |
+
);
|
| 3422 |
+
do_action( 'fm_set_params_frontend_init', $params );
|
| 3423 |
+
}
|
| 3424 |
+
|
| 3425 |
+
// Delete files from uploads (save_upload = 0).
|
|
|
|
| 3426 |
if ( $row->save_uploads == 0 ) {
|
| 3427 |
foreach ( $all_files as &$all_file ) {
|
| 3428 |
if ( file_exists( $all_file[ 'tmp_name' ] ) ) {
|
| 3435 |
|
| 3436 |
$https = ((isset( $_SERVER[ 'HTTPS' ] ) && $_SERVER[ 'HTTPS' ] == 'on') ? 'https://' : 'http://');
|
| 3437 |
$redirect_url = $https . $_SERVER[ "HTTP_HOST" ] . $_SERVER[ "REQUEST_URI" ];
|
| 3438 |
+
if ( $row->submit_text_type == 4 && $row->url ) {
|
| 3439 |
// Action after submission: URL.
|
| 3440 |
$redirect_url = $row->url;
|
| 3441 |
}
|
| 3444 |
$redirect_url = $row->article_id;
|
| 3445 |
}
|
| 3446 |
|
| 3447 |
+
if ( $row->submit_text_type != 4 || $row->url == '' ) {
|
| 3448 |
// This ensures that no message is enqueued by an add-on.
|
| 3449 |
if ( !$_SESSION[ 'massage_after_submit' . $id ] ) {
|
| 3450 |
$_SESSION[ 'massage_after_submit' . $id ] = $msg;
|
frontend/views/form_maker.php
CHANGED
|
@@ -1535,7 +1535,8 @@ class FMViewForm_maker_fmc {
|
|
| 1535 |
|
| 1536 |
$rep = '';
|
| 1537 |
if ($row->gdpr_checkbox && $row->gdpr_checkbox_text) {
|
| 1538 |
-
$
|
|
|
|
| 1539 |
$row->gdpr_checkbox_text = str_replace('{{privacy_policy}}', $privacy_policy_link, $row->gdpr_checkbox_text);
|
| 1540 |
$gdpr_checkbox_html = '<label for="fm_privacy_policy' . $form_id . '" class="wdform-label">
|
| 1541 |
<input id="fm_privacy_policy' . $form_id . '" name="fm_privacy_policy' . $form_id . '" class="wd-flex-row fm-gdpr-checkbox" onclick="' . ($disabled_submit ? '' : 'fm_privacy_policy_check(this)') . '" type="checkbox" value="1">'
|
| 1535 |
|
| 1536 |
$rep = '';
|
| 1537 |
if ($row->gdpr_checkbox && $row->gdpr_checkbox_text) {
|
| 1538 |
+
$privacy_policy_page = WDW_FM_Library(self::PLUGIN)->get_privacy_policy_url();
|
| 1539 |
+
$privacy_policy_link = ' <a href="' . $privacy_policy_page['url'] . '" target="_blank">' . $privacy_policy_page['title'] . '</a>';
|
| 1540 |
$row->gdpr_checkbox_text = str_replace('{{privacy_policy}}', $privacy_policy_link, $row->gdpr_checkbox_text);
|
| 1541 |
$gdpr_checkbox_html = '<label for="fm_privacy_policy' . $form_id . '" class="wdform-label">
|
| 1542 |
<input id="fm_privacy_policy' . $form_id . '" name="fm_privacy_policy' . $form_id . '" class="wd-flex-row fm-gdpr-checkbox" onclick="' . ($disabled_submit ? '' : 'fm_privacy_policy_check(this)') . '" type="checkbox" value="1">'
|
js/add_field.js
CHANGED
|
@@ -928,12 +928,13 @@ function edit(id) {
|
|
| 928 |
w_hide_label = document.getElementById(id + "_hide_labelform_id_temp").value;
|
| 929 |
w_field_min_value = document.getElementById(id + "_slider_min_valueform_id_temp").value;
|
| 930 |
w_field_max_value = document.getElementById(id + "_slider_max_valueform_id_temp").value;
|
|
|
|
| 931 |
w_field_width = document.getElementById(id + "_slider_widthform_id_temp").value;
|
| 932 |
w_field_value = document.getElementById(id + "_slider_valueform_id_temp").value;
|
| 933 |
atrs = return_attributes(id + '_elementform_id_temp');
|
| 934 |
w_attr_name = atrs[0];
|
| 935 |
w_attr_value = atrs[1];
|
| 936 |
-
type_slider(id, w_field_label, w_field_label_size, w_field_label_pos, w_hide_label, w_field_width, w_field_min_value, w_field_max_value, w_field_value, w_required, w_class, w_attr_name, w_attr_value);
|
| 937 |
break;
|
| 938 |
}
|
| 939 |
case 'type_range': {
|
|
@@ -2202,7 +2203,6 @@ function close_window() {
|
|
| 2202 |
popup_ready();
|
| 2203 |
/* In Firfox and Safari click action is working during the drag and drop also */
|
| 2204 |
jQuery(".add-new-button").attr("onclick","popup_ready(); Enable(); return false;");
|
| 2205 |
-
|
| 2206 |
}
|
| 2207 |
need_enable = true;
|
| 2208 |
document.getElementById('edit_table').innerHTML = "";
|
|
@@ -12099,6 +12099,18 @@ function change_slider_max_value(a, id, form_id) {
|
|
| 12099 |
}
|
| 12100 |
}
|
| 12101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 12102 |
function create_slider_width(i, w_field_width) {
|
| 12103 |
var label = jQuery('<label class="fm-field-label" for="edit_for_slider_width">Width(px)</label>');
|
| 12104 |
var input = jQuery('<input class="fm-width-100" type="text" id="edit_for_slider_width" onKeyPress="return check_isnum(event)" onKeyUp="change_slider_width(this.value,' + i + ',\'form_id_temp\')" value="' + w_field_width + '" /><p class="description">' + form_maker.leave_empty + '</p>');
|
|
@@ -12114,10 +12126,10 @@ function change_slider_width(a, id, form_id) {
|
|
| 12114 |
function go_to_type_slider(new_id) {
|
| 12115 |
w_attr_name = [];
|
| 12116 |
w_attr_value = [];
|
| 12117 |
-
type_slider(new_id, 'Slider', '', 'top', 'no', '', '0', '100', '0', 'no', '', w_attr_name, w_attr_value);
|
| 12118 |
}
|
| 12119 |
|
| 12120 |
-
function type_slider(i, w_field_label, w_field_label_size, w_field_label_pos, w_hide_label, w_field_width, w_field_min_value, w_field_max_value, w_field_value, w_required, w_class, w_attr_name, w_attr_value) {
|
| 12121 |
jQuery("#element_type").val("type_slider");
|
| 12122 |
delete_last_child();
|
| 12123 |
|
|
@@ -12133,6 +12145,7 @@ function type_slider(i, w_field_label, w_field_label_size, w_field_label_pos, w_
|
|
| 12133 |
edit_main_table.append(create_required(i, w_required));
|
| 12134 |
edit_main_table.append(create_slider_minvalue(i, w_field_min_value));
|
| 12135 |
edit_main_table.append(create_slider_maxvalue(i, w_field_max_value));
|
|
|
|
| 12136 |
edit_main_table.append(create_slider_width(i, w_field_width));
|
| 12137 |
|
| 12138 |
var advanced_options_container = jQuery('<div class="inside"></div>');
|
|
@@ -12171,6 +12184,12 @@ function type_slider(i, w_field_label, w_field_label_size, w_field_label_pos, w_
|
|
| 12171 |
adding_slider_max_value.setAttribute("id", i + "_slider_max_valueform_id_temp");
|
| 12172 |
adding_slider_max_value.setAttribute("name", i + "_slider_max_valueform_id_temp");
|
| 12173 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 12174 |
var adding_slider_value = document.createElement("input");
|
| 12175 |
adding_slider_value.setAttribute("type", "hidden");
|
| 12176 |
adding_slider_value.setAttribute("value", w_field_value);
|
|
@@ -12254,6 +12273,7 @@ function type_slider(i, w_field_label, w_field_label_size, w_field_label_pos, w_
|
|
| 12254 |
div_element.appendChild(adding_slider_width);
|
| 12255 |
div_element.appendChild(adding_slider_min_value);
|
| 12256 |
div_element.appendChild(adding_slider_max_value);
|
|
|
|
| 12257 |
div_element.appendChild(adding_slider_value);
|
| 12258 |
|
| 12259 |
var slider_min = document.createElement('span');
|
|
@@ -12304,6 +12324,7 @@ function type_slider(i, w_field_label, w_field_label_size, w_field_label_pos, w_
|
|
| 12304 |
|
| 12305 |
jQuery(function () {
|
| 12306 |
jQuery("#" + i + "_elementform_id_temp").slider({
|
|
|
|
| 12307 |
range: "min",
|
| 12308 |
value: eval(w_field_value),
|
| 12309 |
min: eval(w_field_min_value),
|
|
@@ -15730,6 +15751,7 @@ function gen_form_fields() {
|
|
| 15730 |
w_hide_label = document.getElementById(id + "_hide_labelform_id_temp").value;
|
| 15731 |
w_field_min_value = document.getElementById(id + "_slider_min_valueform_id_temp").value;
|
| 15732 |
w_field_max_value = document.getElementById(id + "_slider_max_valueform_id_temp").value;
|
|
|
|
| 15733 |
w_field_width = document.getElementById(id + "_slider_widthform_id_temp").value;
|
| 15734 |
w_field_value = document.getElementById(id + "_slider_valueform_id_temp").value;
|
| 15735 |
|
|
@@ -15744,6 +15766,7 @@ function gen_form_fields() {
|
|
| 15744 |
form_fields += w_field_width + "*:*w_field_width*:*";
|
| 15745 |
form_fields += w_field_min_value + "*:*w_field_min_value*:*";
|
| 15746 |
form_fields += w_field_max_value + "*:*w_field_max_value*:*";
|
|
|
|
| 15747 |
form_fields += w_field_value + "*:*w_field_value*:*";
|
| 15748 |
form_fields += w_required + "*:*w_required*:*";
|
| 15749 |
form_fields += w_class + "*:*w_class*:*";
|
| 928 |
w_hide_label = document.getElementById(id + "_hide_labelform_id_temp").value;
|
| 929 |
w_field_min_value = document.getElementById(id + "_slider_min_valueform_id_temp").value;
|
| 930 |
w_field_max_value = document.getElementById(id + "_slider_max_valueform_id_temp").value;
|
| 931 |
+
w_field_step = document.getElementById(id + "_slider_stepform_id_temp") && document.getElementById(id + "_slider_stepform_id_temp").value ? document.getElementById(id + "_slider_stepform_id_temp").value : 1;
|
| 932 |
w_field_width = document.getElementById(id + "_slider_widthform_id_temp").value;
|
| 933 |
w_field_value = document.getElementById(id + "_slider_valueform_id_temp").value;
|
| 934 |
atrs = return_attributes(id + '_elementform_id_temp');
|
| 935 |
w_attr_name = atrs[0];
|
| 936 |
w_attr_value = atrs[1];
|
| 937 |
+
type_slider(id, w_field_label, w_field_label_size, w_field_label_pos, w_hide_label, w_field_width, w_field_min_value, w_field_max_value, w_field_step, w_field_value, w_required, w_class, w_attr_name, w_attr_value);
|
| 938 |
break;
|
| 939 |
}
|
| 940 |
case 'type_range': {
|
| 2203 |
popup_ready();
|
| 2204 |
/* In Firfox and Safari click action is working during the drag and drop also */
|
| 2205 |
jQuery(".add-new-button").attr("onclick","popup_ready(); Enable(); return false;");
|
|
|
|
| 2206 |
}
|
| 2207 |
need_enable = true;
|
| 2208 |
document.getElementById('edit_table').innerHTML = "";
|
| 12099 |
}
|
| 12100 |
}
|
| 12101 |
|
| 12102 |
+
function create_slider_step(i, w_field_slider_step) {
|
| 12103 |
+
var label = jQuery('<label class="fm-field-label" for="edit_for_slider_step">Step</label>');
|
| 12104 |
+
var input = jQuery('<input class="fm-width-100" type="text" id="edit_for_slider_step" onKeyPress="return check_isnum(event)" onChange="change_slider_step(this.value, ' + i + ', \'form_id_temp\')" value="' + w_field_slider_step + '" />');
|
| 12105 |
+
|
| 12106 |
+
return create_option_container(label, input);
|
| 12107 |
+
}
|
| 12108 |
+
|
| 12109 |
+
function change_slider_step(a, id, form_id) {
|
| 12110 |
+
jQuery("#" + id + "_elementform_id_temp").slider({step: eval(a)});
|
| 12111 |
+
document.getElementById(id + "_slider_stepform_id_temp").value = a;
|
| 12112 |
+
}
|
| 12113 |
+
|
| 12114 |
function create_slider_width(i, w_field_width) {
|
| 12115 |
var label = jQuery('<label class="fm-field-label" for="edit_for_slider_width">Width(px)</label>');
|
| 12116 |
var input = jQuery('<input class="fm-width-100" type="text" id="edit_for_slider_width" onKeyPress="return check_isnum(event)" onKeyUp="change_slider_width(this.value,' + i + ',\'form_id_temp\')" value="' + w_field_width + '" /><p class="description">' + form_maker.leave_empty + '</p>');
|
| 12126 |
function go_to_type_slider(new_id) {
|
| 12127 |
w_attr_name = [];
|
| 12128 |
w_attr_value = [];
|
| 12129 |
+
type_slider(new_id, 'Slider', '', 'top', 'no', '', '0', '100', '1', '0', 'no', '', w_attr_name, w_attr_value);
|
| 12130 |
}
|
| 12131 |
|
| 12132 |
+
function type_slider(i, w_field_label, w_field_label_size, w_field_label_pos, w_hide_label, w_field_width, w_field_min_value, w_field_max_value, w_field_step, w_field_value, w_required, w_class, w_attr_name, w_attr_value) {
|
| 12133 |
jQuery("#element_type").val("type_slider");
|
| 12134 |
delete_last_child();
|
| 12135 |
|
| 12145 |
edit_main_table.append(create_required(i, w_required));
|
| 12146 |
edit_main_table.append(create_slider_minvalue(i, w_field_min_value));
|
| 12147 |
edit_main_table.append(create_slider_maxvalue(i, w_field_max_value));
|
| 12148 |
+
edit_main_table.append(create_slider_step(i, w_field_step));
|
| 12149 |
edit_main_table.append(create_slider_width(i, w_field_width));
|
| 12150 |
|
| 12151 |
var advanced_options_container = jQuery('<div class="inside"></div>');
|
| 12184 |
adding_slider_max_value.setAttribute("id", i + "_slider_max_valueform_id_temp");
|
| 12185 |
adding_slider_max_value.setAttribute("name", i + "_slider_max_valueform_id_temp");
|
| 12186 |
|
| 12187 |
+
var adding_slider_step = document.createElement("input");
|
| 12188 |
+
adding_slider_step.setAttribute("type", "hidden");
|
| 12189 |
+
adding_slider_step.setAttribute("value", w_field_step);
|
| 12190 |
+
adding_slider_step.setAttribute("id", i + "_slider_stepform_id_temp");
|
| 12191 |
+
adding_slider_step.setAttribute("name", i + "_slider_stepform_id_temp");
|
| 12192 |
+
|
| 12193 |
var adding_slider_value = document.createElement("input");
|
| 12194 |
adding_slider_value.setAttribute("type", "hidden");
|
| 12195 |
adding_slider_value.setAttribute("value", w_field_value);
|
| 12273 |
div_element.appendChild(adding_slider_width);
|
| 12274 |
div_element.appendChild(adding_slider_min_value);
|
| 12275 |
div_element.appendChild(adding_slider_max_value);
|
| 12276 |
+
div_element.appendChild(adding_slider_step);
|
| 12277 |
div_element.appendChild(adding_slider_value);
|
| 12278 |
|
| 12279 |
var slider_min = document.createElement('span');
|
| 12324 |
|
| 12325 |
jQuery(function () {
|
| 12326 |
jQuery("#" + i + "_elementform_id_temp").slider({
|
| 12327 |
+
step: eval(w_field_step),
|
| 12328 |
range: "min",
|
| 12329 |
value: eval(w_field_value),
|
| 12330 |
min: eval(w_field_min_value),
|
| 15751 |
w_hide_label = document.getElementById(id + "_hide_labelform_id_temp").value;
|
| 15752 |
w_field_min_value = document.getElementById(id + "_slider_min_valueform_id_temp").value;
|
| 15753 |
w_field_max_value = document.getElementById(id + "_slider_max_valueform_id_temp").value;
|
| 15754 |
+
w_field_step = document.getElementById(id + "_slider_stepform_id_temp") && document.getElementById(id + "_slider_stepform_id_temp").value ? document.getElementById(id + "_slider_stepform_id_temp").value : 1;
|
| 15755 |
w_field_width = document.getElementById(id + "_slider_widthform_id_temp").value;
|
| 15756 |
w_field_value = document.getElementById(id + "_slider_valueform_id_temp").value;
|
| 15757 |
|
| 15766 |
form_fields += w_field_width + "*:*w_field_width*:*";
|
| 15767 |
form_fields += w_field_min_value + "*:*w_field_min_value*:*";
|
| 15768 |
form_fields += w_field_max_value + "*:*w_field_max_value*:*";
|
| 15769 |
+
form_fields += w_field_step + "*:*w_field_step*:*";
|
| 15770 |
form_fields += w_field_value + "*:*w_field_value*:*";
|
| 15771 |
form_fields += w_required + "*:*w_required*:*";
|
| 15772 |
form_fields += w_class + "*:*w_class*:*";
|
js/formmaker_div.js
CHANGED
|
@@ -4178,13 +4178,14 @@ function duplicate(id) {
|
|
| 4178 |
w_hide_label=document.getElementById(id+"_hide_labelform_id_temp").value;
|
| 4179 |
w_field_min_value = document.getElementById(id+"_slider_min_valueform_id_temp").value;
|
| 4180 |
w_field_max_value = document.getElementById(id+"_slider_max_valueform_id_temp").value;
|
|
|
|
| 4181 |
w_field_width = document.getElementById(id+"_slider_widthform_id_temp").value;
|
| 4182 |
w_field_value = document.getElementById(id+"_slider_valueform_id_temp").value;
|
| 4183 |
|
| 4184 |
atrs=return_attributes(id+'_elementform_id_temp');
|
| 4185 |
w_attr_name=atrs[0];
|
| 4186 |
w_attr_value=atrs[1];
|
| 4187 |
-
type_slider(gen, w_field_label, w_field_label_size, w_field_label_pos, w_hide_label, w_field_width, w_field_min_value, w_field_max_value, w_field_value, w_required, w_class, w_attr_name, w_attr_value); break;
|
| 4188 |
}
|
| 4189 |
|
| 4190 |
case 'type_range':
|
| 4178 |
w_hide_label=document.getElementById(id+"_hide_labelform_id_temp").value;
|
| 4179 |
w_field_min_value = document.getElementById(id+"_slider_min_valueform_id_temp").value;
|
| 4180 |
w_field_max_value = document.getElementById(id+"_slider_max_valueform_id_temp").value;
|
| 4181 |
+
w_field_step = document.getElementById(id + "_slider_stepform_id_temp") && document.getElementById(id + "_slider_stepform_id_temp").value ? document.getElementById(id + "_slider_stepform_id_temp").value : 1;
|
| 4182 |
w_field_width = document.getElementById(id+"_slider_widthform_id_temp").value;
|
| 4183 |
w_field_value = document.getElementById(id+"_slider_valueform_id_temp").value;
|
| 4184 |
|
| 4185 |
atrs=return_attributes(id+'_elementform_id_temp');
|
| 4186 |
w_attr_name=atrs[0];
|
| 4187 |
w_attr_value=atrs[1];
|
| 4188 |
+
type_slider(gen, w_field_label, w_field_label_size, w_field_label_pos, w_hide_label, w_field_width, w_field_min_value, w_field_max_value, w_field_step, w_field_value, w_required, w_class, w_attr_name, w_attr_value); break;
|
| 4189 |
}
|
| 4190 |
|
| 4191 |
case 'type_range':
|
readme.txt
CHANGED
|
@@ -3,7 +3,7 @@ Contributors: webdorado,10web
|
|
| 3 |
Tags: contact, contact form, email, forms, contact forms, custom form, feedback, form builder, form manager, form maker, forms builder, form builder wordpress
|
| 4 |
Requires at least: 4.6
|
| 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 |
|
|
@@ -79,6 +79,13 @@ After downloading the ZIP file,
|
|
| 79 |
|
| 80 |
== Changelog ==
|
| 81 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 82 |
= 1.12.37 =
|
| 83 |
* Fixed: Compatibility with PHP version 5.3.
|
| 84 |
|
| 3 |
Tags: contact, contact form, email, forms, contact forms, custom form, feedback, form builder, form manager, form maker, forms builder, form builder wordpress
|
| 4 |
Requires at least: 4.6
|
| 5 |
Tested up to: 4.9
|
| 6 |
+
Stable tag: 1.12.38
|
| 7 |
License: GPLv2 or later
|
| 8 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
| 9 |
|
| 79 |
|
| 80 |
== Changelog ==
|
| 81 |
|
| 82 |
+
= 1.12.38 =
|
| 83 |
+
* Improved: GDPR compliance options.
|
| 84 |
+
* Fixed: Error on form front end when Privacy Policy checkbox is enabled.
|
| 85 |
+
* Fixed: Bug on Actions after submission when Redirect to URL option is empty.
|
| 86 |
+
* Fixed: Notice on form submit.
|
| 87 |
+
* Fixed: Minor issues on Themes.
|
| 88 |
+
|
| 89 |
= 1.12.37 =
|
| 90 |
* Fixed: Compatibility with PHP version 5.3.
|
| 91 |
|
