Version Description
- Includes the operations SHOWFIELD, HIDEFIELD to show/hide fields without disabling them.
- Includes new attributes in the date/time field to allow disabling the keyboard on mobiles and configure Monday as the first weekday.
- Modifies the styles on datepickers.
- Implements additional validations in the Captcha generator.
- Includes new filters to modify the headers row and body rows in the Export CSV module (Professional, Developer, and Platinum versions).
Download this release
Release Info
Developer | codepeople |
Plugin | Calculated Fields Form |
Version | 1.1.76 |
Comparing to | |
See all releases |
Code changes from version 1.1.75 to 1.1.76
- README.txt +10 -15
- captcha/captcha.php +15 -12
- changelog.txt +9 -12
- cp_calculatedfieldsf_free.php +2 -2
- css/stylepublic.css +2 -2
- js/fbuilder-pro-public.jquery.js +1 -1
- js/fields-admin/04_fbuilder.fdate.js +9 -1
- js/fields-admin/28_fbuilder.fcontainer.js +1 -1
- js/fields-public/04_fbuilder.fdate.js +4 -1
- js/modules/05_managing_fields/admin/module_admin.js +10 -0
- js/modules/05_managing_fields/public/05_managing_fields.js +23 -1
README.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://cff.dwbooster.com
|
|
4 |
Tags: form,quote form,contact form,form builder,calculator,calculated,quote calculator,forms,form editor,advanced forms,payment calculator,payment,recurring payment,quote,fields,calculated field,price calculator,email,form design,paypal,equation editor,formula,equation,quote calculator,post,posts,plugin,widget,admin,sidebar,images,image,page,shortcode,products form,woocommerce,addons,layout,session,post,cookie,get,webhook,Dropbox,pdf,language
|
5 |
Requires at least: 3.0.5
|
6 |
Tested up to: 5.9
|
7 |
-
Stable tag: 1.1.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -965,6 +965,14 @@ A: Please, follow the steps below:
|
|
965 |
|
966 |
== Changelog ==
|
967 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
968 |
= 1.1.75 =
|
969 |
|
970 |
* Modifies functions deprecated by the latest Elementor update.
|
@@ -1017,17 +1025,4 @@ A: Please, follow the steps below:
|
|
1017 |
|
1018 |
= 1.1.66 =
|
1019 |
|
1020 |
-
* Fixes an issue in the new animation feature.
|
1021 |
-
|
1022 |
-
= 1.1.65 =
|
1023 |
-
|
1024 |
-
* Implements a new option in the form settings tab to activate animations in the page breaks (for multipage forms) and dependencies.
|
1025 |
-
* Makes a minor correction in template 14.
|
1026 |
-
* Assigns autocomplete attribute with new-password to the password controls.
|
1027 |
-
|
1028 |
-
= 1.1.64 =
|
1029 |
-
|
1030 |
-
* Modifies the NTHROOT operation and implements the PRINTFORM operation for printing the form area.
|
1031 |
-
* Fixes a minor issue to allow entering negative values as the sliders' default values.
|
1032 |
-
* Fixes a minor issue in the DataTable DS fields on small screens.
|
1033 |
-
* Modifies the tags submissiondate_mmddyyyy, submissiondate_ddmmyyyy, currentdate_mmddyyyy, and currentdate_ddmmyyyy to display date only, and include the submissiontime and currenttime tags to include the corresponding time components (Professional, Developer, and Platinum versions of the plugin).
|
4 |
Tags: form,quote form,contact form,form builder,calculator,calculated,quote calculator,forms,form editor,advanced forms,payment calculator,payment,recurring payment,quote,fields,calculated field,price calculator,email,form design,paypal,equation editor,formula,equation,quote calculator,post,posts,plugin,widget,admin,sidebar,images,image,page,shortcode,products form,woocommerce,addons,layout,session,post,cookie,get,webhook,Dropbox,pdf,language
|
5 |
Requires at least: 3.0.5
|
6 |
Tested up to: 5.9
|
7 |
+
Stable tag: 1.1.76
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
965 |
|
966 |
== Changelog ==
|
967 |
|
968 |
+
= 1.1.76 =
|
969 |
+
|
970 |
+
* Includes the operations SHOWFIELD, HIDEFIELD to show/hide fields without disabling them.
|
971 |
+
* Includes new attributes in the date/time field to allow disabling the keyboard on mobiles and configure Monday as the first weekday.
|
972 |
+
* Modifies the styles on datepickers.
|
973 |
+
* Implements additional validations in the Captcha generator.
|
974 |
+
* Includes new filters to modify the headers row and body rows in the Export CSV module (Professional, Developer, and Platinum versions).
|
975 |
+
|
976 |
= 1.1.75 =
|
977 |
|
978 |
* Modifies functions deprecated by the latest Elementor update.
|
1025 |
|
1026 |
= 1.1.66 =
|
1027 |
|
1028 |
+
* Fixes an issue in the new animation feature.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
captcha/captcha.php
CHANGED
@@ -142,18 +142,21 @@ for ($i=0;$i<$noise;$i++)
|
|
142 |
imageline ( $image, $x1, $y1, mt_rand($x1-$noiselength,$x1+$noiselength), mt_rand($y1-$noiselength,$y1+$noiselength), $color);
|
143 |
}
|
144 |
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
|
|
|
|
|
|
157 |
}
|
158 |
|
159 |
$font = dirname( __FILE__ ) . "/" . $selected_font; // font
|
142 |
imageline ( $image, $x1, $y1, mt_rand($x1-$noiselength,$x1+$noiselength), mt_rand($y1-$noiselength,$y1+$noiselength), $color);
|
143 |
}
|
144 |
|
145 |
+
$selected_font = "font-1.ttf";
|
146 |
+
if(isset($_GET["font"]))
|
147 |
+
{
|
148 |
+
switch ($_GET["font"])
|
149 |
+
{
|
150 |
+
case "font-2.ttf":
|
151 |
+
$selected_font = "font-2.ttf";
|
152 |
+
break;
|
153 |
+
case "font-3.ttf":
|
154 |
+
$selected_font = "font-3.ttf";
|
155 |
+
break;
|
156 |
+
case "font-4.ttf":
|
157 |
+
$selected_font = "font-4.ttf";
|
158 |
+
break;
|
159 |
+
}
|
160 |
}
|
161 |
|
162 |
$font = dirname( __FILE__ ) . "/" . $selected_font; // font
|
changelog.txt
CHANGED
@@ -1,5 +1,13 @@
|
|
1 |
== Changelog ==
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
= 1.1.75 =
|
4 |
|
5 |
* Modifies functions deprecated by the latest Elementor update.
|
@@ -515,15 +523,4 @@
|
|
515 |
= 1.0.448 =
|
516 |
|
517 |
* Modifies the HTML Content fields.
|
518 |
-
* Improves the plugin's performance.
|
519 |
-
|
520 |
-
= 1.0.447 =
|
521 |
-
|
522 |
-
* Improves the plugin's performance.
|
523 |
-
* Includes two new operations in the Managing Fields operations: EVALEQUATIONS and EVALEQUATION.
|
524 |
-
* Fixes an issue in the PRESENTVALUE operation (Developer and Platinum versions of the plugin).
|
525 |
-
|
526 |
-
= 1.0.446 =
|
527 |
-
|
528 |
-
* Fixes a conflict with third party plugins that overwrite the POW operation in the plugin.
|
529 |
-
* Modifies the WooCommerce add-on to allow its use with WooCommerce Booking and similar plugins (Developer and Platinum versions of the plugin).
|
1 |
== Changelog ==
|
2 |
|
3 |
+
= 1.1.76 =
|
4 |
+
|
5 |
+
* Includes the operations SHOWFIELD, HIDEFIELD to show/hide fields without disabling them.
|
6 |
+
* Includes new attributes in the date/time field to allow disabling the keyboard on mobiles and configure Monday as the first weekday.
|
7 |
+
* Modifies the styles on datepickers.
|
8 |
+
* Implements additional validations in the Captcha generator.
|
9 |
+
* Includes new filters to modify the headers row and body rows in the Export CSV module (Professional, Developer, and Platinum versions).
|
10 |
+
|
11 |
= 1.1.75 =
|
12 |
|
13 |
* Modifies functions deprecated by the latest Elementor update.
|
523 |
= 1.0.448 =
|
524 |
|
525 |
* Modifies the HTML Content fields.
|
526 |
+
* Improves the plugin's performance.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cp_calculatedfieldsf_free.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: Calculated Fields Form
|
4 |
Plugin URI: https://cff.dwbooster.com
|
5 |
Description: Create forms with field values calculated based in other form field values.
|
6 |
-
Version: 1.1.
|
7 |
Text Domain: calculated-fields-form
|
8 |
Author: CodePeople
|
9 |
Author URI: https://cff.dwbooster.com
|
@@ -16,7 +16,7 @@ if(!defined('WP_DEBUG') || true != WP_DEBUG)
|
|
16 |
}
|
17 |
|
18 |
// Defining main constants
|
19 |
-
define('CP_CALCULATEDFIELDSF_VERSION', '1.1.
|
20 |
define('CP_CALCULATEDFIELDSF_MAIN_FILE_PATH', __FILE__ );
|
21 |
define('CP_CALCULATEDFIELDSF_BASE_PATH', dirname( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
22 |
define('CP_CALCULATEDFIELDSF_BASE_NAME', plugin_basename( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
3 |
Plugin Name: Calculated Fields Form
|
4 |
Plugin URI: https://cff.dwbooster.com
|
5 |
Description: Create forms with field values calculated based in other form field values.
|
6 |
+
Version: 1.1.76
|
7 |
Text Domain: calculated-fields-form
|
8 |
Author: CodePeople
|
9 |
Author URI: https://cff.dwbooster.com
|
16 |
}
|
17 |
|
18 |
// Defining main constants
|
19 |
+
define('CP_CALCULATEDFIELDSF_VERSION', '1.1.76' );
|
20 |
define('CP_CALCULATEDFIELDSF_MAIN_FILE_PATH', __FILE__ );
|
21 |
define('CP_CALCULATEDFIELDSF_BASE_PATH', dirname( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
22 |
define('CP_CALCULATEDFIELDSF_BASE_NAME', plugin_basename( CP_CALCULATEDFIELDSF_MAIN_FILE_PATH ) );
|
css/stylepublic.css
CHANGED
@@ -369,7 +369,7 @@
|
|
369 |
#fbuilder div.cpefb_error{background: #dc3545 !important;color:white !important;padding:5px 10px;border-radius:5px;margin-top:15px;z-index:1000;font-size:12px;font-style:normal;text-shadow:none;}
|
370 |
#fbuilder div.cpefb_error:after{width: 0;height: 0;border-left: 10px solid transparent;border-right: 10px solid transparent;border-bottom: 10px solid #dc3545 !important;content:"";position:absolute;top:-8px;left:10px;z-index:1000;}
|
371 |
|
372 |
-
.ui-datepicker{ z-index:9999 !important;width:
|
373 |
.ui-datepicker *{font-size:14px !important;}
|
374 |
|
375 |
#fbuilder .cff-file-field input[type="file"]{max-width: calc( 100% - 30px);}
|
@@ -431,7 +431,7 @@
|
|
431 |
#fbuilder .cff-radiobutton-field .dfield{display:flex;flex-wrap: wrap;width:100%;}
|
432 |
#fbuilder .cff-checkbox-field .dfield label,
|
433 |
#fbuilder .cff-radiobutton-field .dfield label{display:table;}
|
434 |
-
#fbuilder .cff-switch-container input{display:none;}
|
435 |
#fbuilder .cff-switch-container .dfield label>span:not(.cff-switch){display:table-cell;vertical-align:top;width:100%;min-height: 22px;line-height: 22px;padding-left:5px;}
|
436 |
#fbuilder .cff-switch{position: relative;display: inline-block;width: 40px;height: 22px;background:#ccc;border-radius:50px;cursor:pointer;}
|
437 |
#fbuilder .cff-switch:before{content: " ";position:absolute;background:white;border-radius:50px;height:18px;width:18px;top:2px;left:2px;}
|
369 |
#fbuilder div.cpefb_error{background: #dc3545 !important;color:white !important;padding:5px 10px;border-radius:5px;margin-top:15px;z-index:1000;font-size:12px;font-style:normal;text-shadow:none;}
|
370 |
#fbuilder div.cpefb_error:after{width: 0;height: 0;border-left: 10px solid transparent;border-right: 10px solid transparent;border-bottom: 10px solid #dc3545 !important;content:"";position:absolute;top:-8px;left:10px;z-index:1000;}
|
371 |
|
372 |
+
.ui-datepicker{ z-index:9999 !important;min-width:280px;max-width:320px;}
|
373 |
.ui-datepicker *{font-size:14px !important;}
|
374 |
|
375 |
#fbuilder .cff-file-field input[type="file"]{max-width: calc( 100% - 30px);}
|
431 |
#fbuilder .cff-radiobutton-field .dfield{display:flex;flex-wrap: wrap;width:100%;}
|
432 |
#fbuilder .cff-checkbox-field .dfield label,
|
433 |
#fbuilder .cff-radiobutton-field .dfield label{display:table;}
|
434 |
+
#fbuilder .cff-switch-container input{display:none !important;}
|
435 |
#fbuilder .cff-switch-container .dfield label>span:not(.cff-switch){display:table-cell;vertical-align:top;width:100%;min-height: 22px;line-height: 22px;padding-left:5px;}
|
436 |
#fbuilder .cff-switch{position: relative;display: inline-block;width: 40px;height: 22px;background:#ccc;border-radius:50px;cursor:pointer;}
|
437 |
#fbuilder .cff-switch:before{content: " ";position:absolute;background:white;border-radius:50px;height:18px;width:18px;top:2px;left:2px;}
|
js/fbuilder-pro-public.jquery.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
$.fbuilder['version'] = '1.1.
|
2 |
$.fbuilder['controls'] = $.fbuilder['controls'] || {};
|
3 |
$.fbuilder['forms'] = $.fbuilder['forms'] || {};
|
4 |
|
1 |
+
$.fbuilder['version'] = '1.1.76';
|
2 |
$.fbuilder['controls'] = $.fbuilder['controls'] || {};
|
3 |
$.fbuilder['forms'] = $.fbuilder['forms'] || {};
|
4 |
|
js/fields-admin/04_fbuilder.fdate.js
CHANGED
@@ -18,6 +18,7 @@
|
|
18 |
required:false,
|
19 |
exclude:false,
|
20 |
readonly:false,
|
|
|
21 |
dformat:"mm/dd/yyyy",
|
22 |
dseparator:"/",
|
23 |
tformat:"24",
|
@@ -27,6 +28,7 @@
|
|
27 |
minDate:"",
|
28 |
maxDate:"",
|
29 |
invalidDates:"",
|
|
|
30 |
minHour:0,
|
31 |
maxHour:23,
|
32 |
minMinute:0,
|
@@ -80,6 +82,8 @@
|
|
80 |
}
|
81 |
},
|
82 |
{s:"#sShowDatepicker",e:"click", l:"showDatepicker", f:function(el){return el.is(':checked');}},
|
|
|
|
|
83 |
{s:"#sAriaAMPMLabel",e:"change keyup", l:"ariaAMPMLabel"},
|
84 |
{s:"#sAriaHourLabel",e:"change keyup", l:"ariaHourLabel"},
|
85 |
{s:"#sAriaMinuteLabel",e:"change keyup", l:"ariaMinuteLabel"},
|
@@ -113,7 +117,11 @@
|
|
113 |
},
|
114 |
showSpecialDataInstance: function()
|
115 |
{
|
116 |
-
return '<label
|
|
|
|
|
|
|
|
|
117 |
|
118 |
'<label>Min date [<a class="helpfbuilder" text="You can put one of the following type of values into this field:\n\nEmpty: No min Date.\n\nDate: A Fixed date with the same date format indicated in the "Date Format" drop-down field.\n\nField Name: the name of another date field, Ex: fieldname1\n\nNumber: A number of days from today. For example 2 represents two days from today and -1 represents yesterday.\n\nString: A smart text indicating a relative date. Relative dates must contain value (number) and period pairs; valid periods are "y" for years, "m" for months, "w" for weeks, and "d" for days. For example, "+1m +7d" represents one month and seven days from today.">help?</a>]</label><input type="text" class="large" name="sMinDate" id="sMinDate" value="'+$.fbuilder.htmlEncode(this.minDate)+'" />'+
|
119 |
|
18 |
required:false,
|
19 |
exclude:false,
|
20 |
readonly:false,
|
21 |
+
disableKeyboardOnMobile:false,
|
22 |
dformat:"mm/dd/yyyy",
|
23 |
dseparator:"/",
|
24 |
tformat:"24",
|
28 |
minDate:"",
|
29 |
maxDate:"",
|
30 |
invalidDates:"",
|
31 |
+
mondayFirstDay:false,
|
32 |
minHour:0,
|
33 |
maxHour:23,
|
34 |
minMinute:0,
|
82 |
}
|
83 |
},
|
84 |
{s:"#sShowDatepicker",e:"click", l:"showDatepicker", f:function(el){return el.is(':checked');}},
|
85 |
+
{s:"#sDisableKeyboardOnMobile",e:"click", l:"disableKeyboardOnMobile", f:function(el){return el.is(':checked');}},
|
86 |
+
{s:"#sMondayFirstDay",e:"click", l:"mondayFirstDay", f:function(el){return el.is(':checked');}},
|
87 |
{s:"#sAriaAMPMLabel",e:"change keyup", l:"ariaAMPMLabel"},
|
88 |
{s:"#sAriaHourLabel",e:"change keyup", l:"ariaHourLabel"},
|
89 |
{s:"#sAriaMinuteLabel",e:"change keyup", l:"ariaMinuteLabel"},
|
117 |
},
|
118 |
showSpecialDataInstance: function()
|
119 |
{
|
120 |
+
return '<label><input type="checkbox" name="sDisableKeyboardOnMobile" id="sDisableKeyboardOnMobile" '+( ( this.disableKeyboardOnMobile ) ? 'CHECKED' : '' )+' > Disable keboard on mobiles</label>'+
|
121 |
+
|
122 |
+
'<label><input type="checkbox" name="sMondayFirstDay" id="sMondayFirstDay" '+( ( this.mondayFirstDay ) ? 'CHECKED' : '' )+' > Make Monday the first day of the week</label>'+
|
123 |
+
|
124 |
+
'<label>Default date [<a class="helpfbuilder" text="You can put one of the following type of values into this field:\n\nEmpty: Leave empty for current date.\n\nDate: A Fixed date with the same date format indicated in the "Date Format" drop-down field.\n\nNumber: A number of days from today. For example 2 represents two days from today and -1 represents yesterday.\n\nString: A smart text indicating a relative date. Relative dates must contain value (number) and period pairs; valid periods are "y" for years, "m" for months, "w" for weeks, and "d" for days. For example, "+1m +7d" represents one month and seven days from today.">help?</a>]</label><input type="text" class="large" name="sDefaultDate" id="sDefaultDate" value="'+$.fbuilder.htmlEncode(this.defaultDate)+'" />'+
|
125 |
|
126 |
'<label>Min date [<a class="helpfbuilder" text="You can put one of the following type of values into this field:\n\nEmpty: No min Date.\n\nDate: A Fixed date with the same date format indicated in the "Date Format" drop-down field.\n\nField Name: the name of another date field, Ex: fieldname1\n\nNumber: A number of days from today. For example 2 represents two days from today and -1 represents yesterday.\n\nString: A smart text indicating a relative date. Relative dates must contain value (number) and period pairs; valid periods are "y" for years, "m" for months, "w" for weeks, and "d" for days. For example, "+1m +7d" represents one month and seven days from today.">help?</a>]</label><input type="text" class="large" name="sMinDate" id="sMinDate" value="'+$.fbuilder.htmlEncode(this.minDate)+'" />'+
|
127 |
|
js/fields-admin/28_fbuilder.fcontainer.js
CHANGED
@@ -24,7 +24,7 @@
|
|
24 |
{
|
25 |
cStr += '<option value="'+columns[ i ]+'" '+( ( this.columns == columns[ i ] ) ? 'SELECTED' : '' )+'>'+columns[ i ]+' column'+( ( i ) ? 's' : '' )+'</option>';
|
26 |
}
|
27 |
-
return '<div><label>Columns</label><select name="sColumns" id="sColumns">' + cStr + '</select><div class="clearer"><span class="uh">Shown in columns the fields into the container.</span></div></div>'+
|
28 |
'<div><label><input name="sRearrange" id="sRearrange" type="checkbox" '+((this.rearrange) ? 'CHECKED' : '')+'> Rearrange</label> <span class="uh">Rearrange the fields in the container.</span></div>';
|
29 |
},
|
30 |
remove : function()
|
24 |
{
|
25 |
cStr += '<option value="'+columns[ i ]+'" '+( ( this.columns == columns[ i ] ) ? 'SELECTED' : '' )+'>'+columns[ i ]+' column'+( ( i ) ? 's' : '' )+'</option>';
|
26 |
}
|
27 |
+
return '<div><label>Columns</label><select name="sColumns" id="sColumns">' + cStr + '</select> <input type="button" class="eq_btn button-secondary" onclick="window.open(\'https://cff.dwbooster.com/documentation#container-fields\');" value="?" title="Tutorial"><div class="clearer"><span class="uh">Shown in columns the fields into the container.</span></div></div>'+
|
28 |
'<div><label><input name="sRearrange" id="sRearrange" type="checkbox" '+((this.rearrange) ? 'CHECKED' : '')+'> Rearrange</label> <span class="uh">Rearrange the fields in the container.</span></div>';
|
29 |
},
|
30 |
remove : function()
|
js/fields-public/04_fbuilder.fdate.js
CHANGED
@@ -10,6 +10,7 @@
|
|
10 |
size:"medium",
|
11 |
required:false,
|
12 |
readonly:false,
|
|
|
13 |
|
14 |
// Date component
|
15 |
showDatepicker: true,
|
@@ -18,6 +19,7 @@
|
|
18 |
showDropdown:false,
|
19 |
dropdownRange:"-10:+10",
|
20 |
invalidDates:"",
|
|
|
21 |
working_dates:[true,true,true,true,true,true,true],
|
22 |
minDate:"",
|
23 |
maxDate:"",
|
@@ -262,6 +264,7 @@
|
|
262 |
dateFormat: me.dformat.replace(/yyyy/g,"yy"),
|
263 |
minDate: me._getAttr('minDate'),
|
264 |
maxDate: me._getAttr('maxDate'),
|
|
|
265 |
disabled: me.readonly
|
266 |
},
|
267 |
dp = $( "#"+me.name+"_date" ),
|
@@ -330,7 +333,7 @@
|
|
330 |
else{ date_tag_type = 'hidden'; disabled='disabled';}
|
331 |
if( me.showTimepicker ) format_label.push('HH:mm');
|
332 |
this.predefined = this._getAttr('predefined');
|
333 |
-
return '<div class="fields '+me.csslayout+' '+n+' cff-date-field" id="field'+me.form_identifier+'-'+me.index+'"><label for="'+n+'_date">'+me.title+''+((me.required)?"<span class='r'>*</span>":"")+( (format_label.length) ? ' <span class="dformat">('+format_label.join(' ')+')</span>' : '' )+'</label><div class="dfield"><input id="'+n+'" name="'+n+'" type="hidden" value="'+$.fbuilder.htmlEncode(me.predefined)+'"/><input aria-label="'+$.fbuilder.htmlEncode(me.title)+'" id="'+n+'_date" name="'+n+'_date" class="'+date_tag_class+' date-component" type="'+date_tag_type+'" '+attr+'="'+$.fbuilder.htmlEncode(me.predefined)+'" '+disabled+' />'+( ( me.showTimepicker ) ? ' '+me.get_hours()+me.get_minutes()+' '+me.get_ampm() : '' )+'<span class="uh">'+me.userhelp+'</span></div><div class="clearer"></div></div>';
|
334 |
},
|
335 |
after_show:function()
|
336 |
{
|
10 |
size:"medium",
|
11 |
required:false,
|
12 |
readonly:false,
|
13 |
+
disableKeyboardOnMobile:false,
|
14 |
|
15 |
// Date component
|
16 |
showDatepicker: true,
|
19 |
showDropdown:false,
|
20 |
dropdownRange:"-10:+10",
|
21 |
invalidDates:"",
|
22 |
+
mondayFirstDay:false,
|
23 |
working_dates:[true,true,true,true,true,true,true],
|
24 |
minDate:"",
|
25 |
maxDate:"",
|
264 |
dateFormat: me.dformat.replace(/yyyy/g,"yy"),
|
265 |
minDate: me._getAttr('minDate'),
|
266 |
maxDate: me._getAttr('maxDate'),
|
267 |
+
firstDay: (me.mondayFirstDay ? 1 : 0),
|
268 |
disabled: me.readonly
|
269 |
},
|
270 |
dp = $( "#"+me.name+"_date" ),
|
333 |
else{ date_tag_type = 'hidden'; disabled='disabled';}
|
334 |
if( me.showTimepicker ) format_label.push('HH:mm');
|
335 |
this.predefined = this._getAttr('predefined');
|
336 |
+
return '<div class="fields '+me.csslayout+' '+n+' cff-date-field" id="field'+me.form_identifier+'-'+me.index+'"><label for="'+n+'_date">'+me.title+''+((me.required)?"<span class='r'>*</span>":"")+( (format_label.length) ? ' <span class="dformat">('+format_label.join(' ')+')</span>' : '' )+'</label><div class="dfield"><input id="'+n+'" name="'+n+'" type="hidden" value="'+$.fbuilder.htmlEncode(me.predefined)+'"/><input aria-label="'+$.fbuilder.htmlEncode(me.title)+'" id="'+n+'_date" name="'+n+'_date" class="'+date_tag_class+' date-component" type="'+date_tag_type+'" '+attr+'="'+$.fbuilder.htmlEncode(me.predefined)+'" '+disabled+(me.disableKeyboardOnMobile ? ' inputmode="none"' : '')+' />'+( ( me.showTimepicker ) ? ' '+me.get_hours()+me.get_minutes()+' '+me.get_ampm() : '' )+'<span class="uh">'+me.userhelp+'</span></div><div class="clearer"></div></div>';
|
337 |
},
|
338 |
after_show:function()
|
339 |
{
|
js/modules/05_managing_fields/admin/module_admin.js
CHANGED
@@ -28,6 +28,16 @@ fbuilderjQuery[ 'fbuilder' ][ 'modules' ][ 'processing' ] = {
|
|
28 |
"code" : "ACTIVATEFIELD(",
|
29 |
"tip" : "<p>Activates a field explicitly, similar to dependencies. <strong>ACTIVATEFIELD( # or fieldname#, form or form selector )</strong></p><p>Activates the field for the equations and submission. The first parameter is required, it would be the numeric part of the field name or the field name. The second parameter would be a form object, or a selector with the form reference. If the second parameter is not passed, the plugin will apply the activates action to the field in the first form of the page. For example: ACTIVATEFIELD(1); or ACTIVATEFIELD("fieldname1");</p>"
|
30 |
},
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
31 |
{
|
32 |
"value" : "DISABLEEQUATIONS",
|
33 |
"code" : "DISABLEEQUATIONS(",
|
28 |
"code" : "ACTIVATEFIELD(",
|
29 |
"tip" : "<p>Activates a field explicitly, similar to dependencies. <strong>ACTIVATEFIELD( # or fieldname#, form or form selector )</strong></p><p>Activates the field for the equations and submission. The first parameter is required, it would be the numeric part of the field name or the field name. The second parameter would be a form object, or a selector with the form reference. If the second parameter is not passed, the plugin will apply the activates action to the field in the first form of the page. For example: ACTIVATEFIELD(1); or ACTIVATEFIELD("fieldname1");</p>"
|
30 |
},
|
31 |
+
{
|
32 |
+
"value" : "HIDEFIELD",
|
33 |
+
"code" : "HIDEFIELD(",
|
34 |
+
"tip" : "<p>Hide a field explicitly. Unlike IGNOREFIELD, this operation hides the field but does not deactivate it. The hidden fields participate in the equations and are submitted to the server. <strong>HIDEFIELD( # or fieldname#, form or form selector )</strong></p><p>The first parameter is required. It is the numeric part of the field name or the field name. The second parameter would be a form object or a selector with the form reference. If the second parameter is not passed, the plugin will hide the field in the first form on the page. For example: HIDEFIELD(1); or HIDEFIELD("fieldname1");</p>"
|
35 |
+
},
|
36 |
+
{
|
37 |
+
"value" : "SHOWFIELD",
|
38 |
+
"code" : "SHOWFIELD(",
|
39 |
+
"tip" : "<p>Show a field explicitly. If the field was hidden by a dependency or by the IGNOREFIELD operation, it must be displayed by the ACTIVATEFIELD operation. <strong>SHOWFIELD( # or fieldname#, form or form selector )</strong></p><p>The first parameter is required. It is the numeric part of the field name or the field name. The second parameter would be a form object or a selector with the form reference. If the second parameter is not passed, the plugin will display the field in the first form on the page. For example: SHOWFIELD(1); or SHOWFIELD("fieldname1");</p>"
|
40 |
+
},
|
41 |
{
|
42 |
"value" : "DISABLEEQUATIONS",
|
43 |
"code" : "DISABLEEQUATIONS(",
|
js/modules/05_managing_fields/public/05_managing_fields.js
CHANGED
@@ -42,7 +42,7 @@
|
|
42 |
j = f.jQueryRef();
|
43 |
if(j.find('[id*="'+f.name+'"]').hasClass('ignore'))
|
44 |
{
|
45 |
-
|
46 |
if(f.name in $.fbuilder.forms[o].toHide) delete $.fbuilder.forms[o].toHide[f.name];
|
47 |
if(!(f.name in $.fbuilder.forms[o].toShow)) $.fbuilder.forms[o].toShow[f.name] = {'ref': {}};
|
48 |
j.find('[id*="'+f.name+'"]').removeClass('ignore').change();
|
@@ -68,6 +68,28 @@
|
|
68 |
}
|
69 |
};
|
70 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
71 |
lib.disableequations = lib.DISABLEEQUATIONS = function(f)
|
72 |
{
|
73 |
jQuery(f || '[id*="cp_calculatedfieldsf_pform_"]').attr('data-evalequations',0);
|
42 |
j = f.jQueryRef();
|
43 |
if(j.find('[id*="'+f.name+'"]').hasClass('ignore'))
|
44 |
{
|
45 |
+
j.add(j.find('.fields')).show();
|
46 |
if(f.name in $.fbuilder.forms[o].toHide) delete $.fbuilder.forms[o].toHide[f.name];
|
47 |
if(!(f.name in $.fbuilder.forms[o].toShow)) $.fbuilder.forms[o].toShow[f.name] = {'ref': {}};
|
48 |
j.find('[id*="'+f.name+'"]').removeClass('ignore').change();
|
68 |
}
|
69 |
};
|
70 |
|
71 |
+
lib.showfield = lib.SHOWFIELD = function( _field, _form )
|
72 |
+
{
|
73 |
+
var o = _getForm(_form), f = _getField(_field, _form), j;
|
74 |
+
if(f)
|
75 |
+
{
|
76 |
+
j = f.jQueryRef();
|
77 |
+
if(!j.find('[id*="'+f.name+'"]').hasClass('ignore'))
|
78 |
+
j.removeClass('hide-strong').show();
|
79 |
+
}
|
80 |
+
};
|
81 |
+
|
82 |
+
lib.hidefield = lib.HIDEFIELD = function( _field, _form )
|
83 |
+
{
|
84 |
+
var o = _getForm(_form), f = _getField(_field, _form);
|
85 |
+
if(f)
|
86 |
+
{
|
87 |
+
j = f.jQueryRef();
|
88 |
+
if(!j.find('[id*="'+f.name+'"]').hasClass('ignore'))
|
89 |
+
f.jQueryRef().addClass('hide-strong');
|
90 |
+
}
|
91 |
+
};
|
92 |
+
|
93 |
lib.disableequations = lib.DISABLEEQUATIONS = function(f)
|
94 |
{
|
95 |
jQuery(f || '[id*="cp_calculatedfieldsf_pform_"]').attr('data-evalequations',0);
|