Calculated Fields Form - Version 1.1.91

Version Description

  • Modifies the date/time control to allow defining custom error messages.
  • Fixes an issue in the Date/Time DS field when it receives dates in text format (Developer and Platinum versions)
Download this release

Release Info

Developer codepeople
Plugin Icon 128x128 Calculated Fields Form
Version 1.1.91
Comparing to
See all releases

Code changes from version 1.1.90 to 1.1.91

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: 6.0
7
- Stable tag: 1.1.90
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -965,6 +965,11 @@ A: Please, follow the steps below:
965
 
966
  == Changelog ==
967
 
 
 
 
 
 
968
  = 1.1.90 =
969
 
970
  * Improves the form creation making the controls draggable.
@@ -1020,12 +1025,4 @@ A: Please, follow the steps below:
1020
  * Modifies the validation of the Upload File fields to prevent showing the error message when the select file dialog is opened.
1021
  * Modifies the CAPTCHA module to fix an issue when the website uses a CDN server (Professional, Developer, and Platinum versions).
1022
  * Modifies the import forms module to display possible solutions to the errors detected (Professional, Developer, and Platinum versions).
1023
- * Modifies the PDF Generator add-on to include the PDF files on the submissions list (Platinum version).
1024
-
1025
- = 1.1.81 =
1026
-
1027
- * Modifies the date/time control.
1028
- * Modifies the DATETIMESUM operation to allow ignoring weekends.
1029
- * Modifies the getField operation.
1030
- * Fixes a conflict with WP Rocket.
1031
- * Modifies the Submissions data-source to allow loading paid submissions only (Developer and Platinum versions).
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: 6.0
7
+ Stable tag: 1.1.91
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.91 =
969
+
970
+ * Modifies the date/time control to allow defining custom error messages.
971
+ * Fixes an issue in the Date/Time DS field when it receives dates in text format (Developer and Platinum versions)
972
+
973
  = 1.1.90 =
974
 
975
  * Improves the form creation making the controls draggable.
1025
  * Modifies the validation of the Upload File fields to prevent showing the error message when the select file dialog is opened.
1026
  * Modifies the CAPTCHA module to fix an issue when the website uses a CDN server (Professional, Developer, and Platinum versions).
1027
  * Modifies the import forms module to display possible solutions to the errors detected (Professional, Developer, and Platinum versions).
1028
+ * Modifies the PDF Generator add-on to include the PDF files on the submissions list (Platinum version).
 
 
 
 
 
 
 
 
changelog.txt CHANGED
@@ -1,5 +1,10 @@
1
  == Changelog ==
2
 
 
 
 
 
 
3
  = 1.1.90 =
4
 
5
  * Improves the form creation making the controls draggable.
1
  == Changelog ==
2
 
3
+ = 1.1.91 =
4
+
5
+ * Modifies the date/time control to allow defining custom error messages.
6
+ * Fixes an issue in the Date/Time DS field when it receives dates in text format (Developer and Platinum versions)
7
+
8
  = 1.1.90 =
9
 
10
  * Improves the form creation making the controls draggable.
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.90
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.90' );
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.91
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.91' );
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 ) );
js/fbuilder-pro-public.jquery.js CHANGED
@@ -1,4 +1,4 @@
1
- $.fbuilder['version'] = '1.1.90';
2
  $.fbuilder['controls'] = $.fbuilder['controls'] || {};
3
  $.fbuilder['forms'] = $.fbuilder['forms'] || {};
4
 
@@ -292,6 +292,8 @@
292
  opt.messages.min = $.validator.format(opt.messages.min);
293
  opt.messages.maxlength = $.validator.format(opt.messages.maxlength);
294
  opt.messages.minlength = $.validator.format(opt.messages.minlength);
 
 
295
 
296
  $.extend($.validator.messages, opt.messages);
297
 
1
+ $.fbuilder['version'] = '1.1.91';
2
  $.fbuilder['controls'] = $.fbuilder['controls'] || {};
3
  $.fbuilder['forms'] = $.fbuilder['forms'] || {};
4
 
292
  opt.messages.min = $.validator.format(opt.messages.min);
293
  opt.messages.maxlength = $.validator.format(opt.messages.maxlength);
294
  opt.messages.minlength = $.validator.format(opt.messages.minlength);
295
+ opt.messages.dateyyyymmdd = opt.messages.datemmddyyyy;
296
+ opt.messages.dateyyyyddmm = opt.messages.dateddmmyyyy;
297
 
298
  $.extend($.validator.messages, opt.messages);
299
 
js/fields-admin/04_fbuilder.fdate.js CHANGED
@@ -51,6 +51,8 @@
51
  formats:['mm/dd/yyyy','dd/mm/yyyy','yyyy/mm/dd','yyyy/dd/mm'],
52
  separators: ['/','-','.'],
53
 
 
 
54
  display:function()
55
  {
56
  var me = this,
@@ -68,6 +70,7 @@
68
  {s:"#sMinDate",e:"change keyup", l:"minDate", x:1},
69
  {s:"#sMaxDate",e:"change keyup", l:"maxDate", x:1},
70
  {s:"#sInvalidDates",e:"change keyup", l:"invalidDates", x:1},
 
71
  {s:"#sDefaultDate",e:"change keyup", l:"defaultDate", x:1},
72
  {s:"#sShowDropdown",e:"click", l:"showDropdown", f:function(el){
73
  var v = el.is(':checked');
@@ -129,6 +132,8 @@
129
 
130
  '<label>Invalid Dates [<a class="helpfbuilder" text="To define some dates as invalid, enter the dates with the format: mm/dd/yyyy separated by comma; for example: 12/31/2014,02/20/2014 or by hyphen for intervals; for example: 12/20/2014-12/28/2014 ">help?</a>]</label><input type="text" class="large" name="sInvalidDates" id="sInvalidDates" value="'+cff_esc_attr(this.invalidDates)+'" />'+
131
 
 
 
132
  '<label><input type="checkbox" name="sShowDropdown" id="sShowDropdown" '+((this.showDropdown)?"checked":"")+'/> Show Dropdown Year and Month</label><div id="divdropdownRange" style="display:'+((this.showDropdown)?"":"none")+'">Year Range [<a class="helpfbuilder" text="The range of years displayed in the year drop-down: either relative to today\'s year (&quot;-nn:+nn&quot;), absolute (&quot;nnnn:nnnn&quot;), or combinations of these formats (&quot;nnnn:-nn&quot;)">help?</a>]: <input type="text" name="sDropdownRange" id="sDropdownRange" value="'+cff_esc_attr(this.dropdownRange)+'"/></div>'+
133
 
134
  '<div class="working_dates"><label>Selectable dates </label><input name="sWD0" id="sWD0" value="0" type="checkbox" '+((this.working_dates[0])?"checked":"")+'/>Su<input name="sWD1" id="sWD1" value="1" type="checkbox" '+((this.working_dates[1])?"checked":"")+'/>Mo<input name="sWD2" id="sWD2" value="2" type="checkbox" '+((this.working_dates[2])?"checked":"")+'/>Tu<input name="sWD3" id="sWD3" value="3" type="checkbox" '+((this.working_dates[3])?"checked":"")+'/>We<input name="sWD4" id="sWD4" value="4" type="checkbox" '+((this.working_dates[4])?"checked":"")+'/>Th<input name="sWD5" id="sWD5" value="5" type="checkbox" '+((this.working_dates[5])?"checked":"")+'/>Fr<input name="sWD6" id="sWD6" value="6" type="checkbox" '+((this.working_dates[6])?"checked":"")+'/>Sa</div>'+
51
  formats:['mm/dd/yyyy','dd/mm/yyyy','yyyy/mm/dd','yyyy/dd/mm'],
52
  separators: ['/','-','.'],
53
 
54
+ errorMssg:'',
55
+
56
  display:function()
57
  {
58
  var me = this,
70
  {s:"#sMinDate",e:"change keyup", l:"minDate", x:1},
71
  {s:"#sMaxDate",e:"change keyup", l:"maxDate", x:1},
72
  {s:"#sInvalidDates",e:"change keyup", l:"invalidDates", x:1},
73
+ {s:"#sErrorMssg",e:"change keyup", l:"errorMssg", x:1},
74
  {s:"#sDefaultDate",e:"change keyup", l:"defaultDate", x:1},
75
  {s:"#sShowDropdown",e:"click", l:"showDropdown", f:function(el){
76
  var v = el.is(':checked');
132
 
133
  '<label>Invalid Dates [<a class="helpfbuilder" text="To define some dates as invalid, enter the dates with the format: mm/dd/yyyy separated by comma; for example: 12/31/2014,02/20/2014 or by hyphen for intervals; for example: 12/20/2014-12/28/2014 ">help?</a>]</label><input type="text" class="large" name="sInvalidDates" id="sInvalidDates" value="'+cff_esc_attr(this.invalidDates)+'" />'+
134
 
135
+ '<label>Invalid Dates Error Message</label><input type="text" class="large" name="sErrorMssg" id="sErrorMssg" value="'+cff_esc_attr(this.errorMssg)+'" />'+
136
+
137
  '<label><input type="checkbox" name="sShowDropdown" id="sShowDropdown" '+((this.showDropdown)?"checked":"")+'/> Show Dropdown Year and Month</label><div id="divdropdownRange" style="display:'+((this.showDropdown)?"":"none")+'">Year Range [<a class="helpfbuilder" text="The range of years displayed in the year drop-down: either relative to today\'s year (&quot;-nn:+nn&quot;), absolute (&quot;nnnn:nnnn&quot;), or combinations of these formats (&quot;nnnn:-nn&quot;)">help?</a>]: <input type="text" name="sDropdownRange" id="sDropdownRange" value="'+cff_esc_attr(this.dropdownRange)+'"/></div>'+
138
 
139
  '<div class="working_dates"><label>Selectable dates </label><input name="sWD0" id="sWD0" value="0" type="checkbox" '+((this.working_dates[0])?"checked":"")+'/>Su<input name="sWD1" id="sWD1" value="1" type="checkbox" '+((this.working_dates[1])?"checked":"")+'/>Mo<input name="sWD2" id="sWD2" value="2" type="checkbox" '+((this.working_dates[2])?"checked":"")+'/>Tu<input name="sWD3" id="sWD3" value="3" type="checkbox" '+((this.working_dates[3])?"checked":"")+'/>We<input name="sWD4" id="sWD4" value="4" type="checkbox" '+((this.working_dates[4])?"checked":"")+'/>Th<input name="sWD5" id="sWD5" value="5" type="checkbox" '+((this.working_dates[5])?"checked":"")+'/>Fr<input name="sWD6" id="sWD6" value="6" type="checkbox" '+((this.working_dates[6])?"checked":"")+'/>Sa</div>'+
js/fields-public/04_fbuilder.fdate.js CHANGED
@@ -41,6 +41,9 @@
41
  ariaMinuteLabel: 'minutes',
42
  ariaAMPMLabel: 'am or pm',
43
 
 
 
 
44
  _get_regexp : function()
45
  {
46
  var me = this,
@@ -335,7 +338,7 @@
335
  else{ date_tag_type = 'hidden'; disabled='disabled';}
336
  if(me.showTimepicker) format_label.push('HH:mm');
337
  this.predefined = this._getAttr('predefined');
338
- return '<div class="fields '+cff_esc_attr(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="'+cff_esc_attr(me.predefined)+'"/><input aria-label="'+cff_esc_attr(me.title)+'" id="'+n+'_date" name="'+n+'_date" class="'+date_tag_class+' date-component" type="'+date_tag_type+'" '+attr+'="'+cff_esc_attr(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>';
339
  },
340
  after_show:function()
341
  {
41
  ariaMinuteLabel: 'minutes',
42
  ariaAMPMLabel: 'am or pm',
43
 
44
+ // Error message
45
+ errorMssg:'',
46
+
47
  _get_regexp : function()
48
  {
49
  var me = this,
338
  else{ date_tag_type = 'hidden'; disabled='disabled';}
339
  if(me.showTimepicker) format_label.push('HH:mm');
340
  this.predefined = this._getAttr('predefined');
341
+ return '<div class="fields '+cff_esc_attr(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="'+cff_esc_attr(me.predefined)+'"/><input aria-label="'+cff_esc_attr(me.title)+'" id="'+n+'_date" name="'+n+'_date" class="'+date_tag_class+' date-component" type="'+date_tag_type+'" '+attr+'="'+cff_esc_attr(me.predefined)+'" '+disabled+(me.disableKeyboardOnMobile ? ' inputmode="none"' : '')+(me.errorMssg != '' ? ' data-msg="'+cff_esc_attr(me.errorMssg)+'"' : '')+' />'+((me.showTimepicker) ? ' '+me.get_hours()+me.get_minutes()+' '+me.get_ampm() : '')+'<span class="uh">'+me.userhelp+'</span></div><div class="clearer"></div></div>';
342
  },
343
  after_show:function()
344
  {