This repository was archived by the owner on Jan 15, 2024. It is now read-only.
forked from wp-premium/gravityforms
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathchange_log.txt
More file actions
3052 lines (2685 loc) · 211 KB
/
change_log.txt
File metadata and controls
3052 lines (2685 loc) · 211 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.9
- Fixed notice message
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.8
- Updated notification's From Name and Subject to use the Text version of merge tags
- Updated notification's From Name so that it is sanitized before being used
- Fixed notice message
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.7
- Added "Processing" as an option for payment status when adding conditional logic rules
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.6
- Updated merge tag list to exclude credit card field options, except the credit card number (last 4 digits) and credit card type for Confirmations and Notifications
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.5
- Fixed issue with {ip} merge tag replacing "wrong" IP when resending notifications
- AF: Updated feed field mapping to include credit card number (last 4 digits) and credit card type as choices
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.4
- Added hook to allow users to disable script tag stripping
- AF: Updated feed field mapping to exclude credit card fields as choices
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.3
- Fixed issue with the id attribute for the address field city label.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.2
- Added support for mysql encryption.
- Fixed issue when updating entry with conditional logic fields via the gform_entry_id_pre_save_lead.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19.1
- Fixed issue with conditional logic and the gf_inline class.
- Fixed an issue with the entry list filter, results page filters, export conditional logic where number field values would be treated as strings by the entry search query.
- AF: Fixed an issue with the URL for the add-on settings tab.
- API: Fixed an issue with GFAPI::update_entry() where empty values are ignored when specifying a different entry ID to the ID in the entry array.
- API: Fixed an issue with GFAPI:get_entries() where number field values would be treated as strings.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.19
- Fixed Notices
- Fixed issue where entry exports were saved with a .txt extension in Safari
- Fixed issue when exporting custom post fields of type "checkbox".
- AF: Fixed issue where feed saved successfully message still displayed when fields failed validation.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.18
- Added filters on entry detail to support editing payment related data in the payment info box.
- Added the parameter name as a third parameter to the "gform_field_value" filter.
- Added "gform_entry_detail_grid_display_empty_fields" filter to allow displaying empty fields even if option is not checked (i.e. print view).
add_filter( 'gform_entry_detail_grid_display_empty_fields', '__return_true' );
- Added filter to get_form_meta() to allow forms to be filtered globally.
- Updated localization of certain strings.
- Updated POT file.
- Updated the order of marking an entry as spam so that it is done before the gform_entry_created and gform_entry_post_save hooks.
- Fixed issue with PayPal fulfillment not going through when entry was marked as Paid in the entry detail page.
- Fixed issue with trial period amount (fixed amount entered on subscription feed) for currencies other than Dollar.
- Fixed issue with Chrome on Android for drop downs with conditional logic.
- Fixed an issue with the field filters on the entry list, export entries and results pages where product fields couldn't be filtered.
- Fixed issue with complex fields not being properly loaded into array.
- Fixed issue where List fields in notifications sometimes displayed incorrectly due to max line size being exceeded.
- Fixed issue with quantity fields not defaulting to correct value after being hidden by conditional logic.
- Fixed an issue with the single file upload field where validation fails if the max file size is set higher than 2047MB.
- AF: Added check to framework to prevent sending spam entries to non-payment feeds. This will take effect in feeds as they are migrated to the Add-On Framework.
- AF: Fixed issue with feeds not getting executed when configured for delayed payment and the payment amount ends up being $0.00.
- AF: Fixed issue with feed addons not preserving current feed when a new feed was getting created.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.17
- Added form specific version of 'gform_entry_is_spam' filter.
- Added "gform_entry_is_spam" filter.
add_filter( 'gform_entry_is_spam', 'it_is_all_spam', 10, 3 );
function it_is_all_spam( $is_spam, $form, $entry ) {
return true;
}
- Updated entry list and detail pages to display spam features if gform_entry_is_spam hook is used when Akismet integration is disabled.
- Updated is_duplicate check to work for "long" values as well.
- Added 'gform_disable_view_counter' filter to disable counting of form views. Both globally and by form id. Views column remains displayed on the Forms page.
add_filter( 'gform_disable_view_counter', '__return_true' );
add_filter( 'gform_disable_view_counter_12', '__return_false' );
- Fixed XSS vulnerability.
- Fixed a notice on the WordPress updates page.
- Fixed issue with Add-On manager displaying error when installing Add-Ons.
- Fixed notice when $form['pagination']['display_progressbar_on_confirmation'] was not set.
- Fixed issue with entry list page payment status drop down containing "Approved" instead of "Paid".
- Fixed issue where setting an input-based field value to empty would fail to save.
- AF: Added get_feeds_by_slug function.
- AF: Added is_delayed function to check whether a feed is delayed processing with PayPal Standard.
- AF: Updated maybe_process_feed function to handle processing when add-on is set as delayed in PayPal Standard feed setup.
- AF: Updated logging statements to be clearer.
- AF: Removed unused function get_feed_by_entry.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.16
- Fixed some strings that weren't localized and added localization context to others
- Fixed issue with datepicker to prevent user being returned to start of form when tabbing after selecting a date.
- Fixed a notice on the WordPress updates page
- Fixed a security issue with the file upload field for some server configurations
- Fixed an issue with the file upload file not matching uppercase extensions
- Updated POT file
-------------------------------------------------------------------------------------------------------------------
Version 1.8.15
- Fixed an issue with the multi-file upload field while uploading multiple files all selected at the same time in the file dialog. If one of the uploads fails due to an HTTP error then the next file in the list will appear as 100% complete but it will be removed from the form submission.
- AF: Fixed issue with checkboxes no retaining their values
-------------------------------------------------------------------------------------------------------------------
Version 1.8.14
- Fixed a potential security vulnerability for some servers which could allow code to be parsed via the file upload field.
- Fixed a security issue to prevent code injection
- Fixed an issue with the file upload field that allows malicious form submissions to bypass the validation for the maximum file size setting.
- AF: Fixed issue with simple conditional logic
- AF: Fixed issue with checkbox fields not supporting custom 'onclick' attributes to be added.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.13
- Added additional check plus user feedback for failed multi-file uploads.
- Fixed a potential security vulnerability for some server configurations which could allow code to be executed via the file upload field.
- Fixed issue with form export/import setting inactive notifications to active.
- Fixed issue with resend notification not accepting a list of emails.
- Fixed another issue with field label for Name and Address fields.
- Fixed issue with field label for Name and Address fields.
- Fixed issue causing checkboxes checked by default to be rendered unchecked in certain situations.
- AF: Fixed another issue with simple_condition() function/feature creating javascript errors.
- AF: Fixed get_field_map_fields function to no longer include the text "field_map" in the mapped fields prefix.
- AF: Fixed issue with payments less than $1.00 not being processed.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.12
- Added PHP version of the "gform_calculation_result" filter.
add_filter( 'gform_calculation_result', 'my_calc_result', 10, 5 );
function my_calc_result( $result, $formula, $field, $form, $entry ) {
// modify result as needed
return $result;
}
- Updated chosen js, styles and images to latest version.
- Fixed issue with multiple file upload merge tag not including a line break when in html format.
- Fixed issue with List field markup; more <td> than <col>.
- Fixed markup validation issue with List Field where label for attribute did not match a valid input.
- AF: Fixed issue with simple_condition() function/feature creating javascript errors.
- AF: Added a check in the maybe_process_callback function to see if the callback has been aborted to prevent processing for the Payment Add-On.
- API: Added GFAPI::get_forms() method.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.11
- Fixed issue where <col> tags were closed incorrectly generating invalid HTML markup.
- Fixed issue with notifications not being sent when configured with multiple email addresses.
- Fixed issue with legacy notifications getting marked as inactive after being edited.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.10
- Added gform_enable_shortcode_notification_message hook to allow for disabling shortcode processing of notification messages.
- Added $field_values as a third paramater for the gform_pre_render filter.
- Added new hook: 'gform_send_email_failed'; allows interception when a call to GFCommon::send_email() fails.
add_action( 'gform_send_email_failed', 'my_send_email_failed_func', 10, 2 );
function my_send_email_failed_func( $error, $email ) {
// do what you want with the $error and $email data.
}
- Added new JS filter: 'gform_calculation_formula' to allow modifying formula before it is processed by GF on frontend.
gform.addFilter( 'gform_calculation_formula', function( formula, formulaField, formId, calcObj ) {
// custom code here
return formula;
} );
- Added $rule and $form parameters to the gform_is_value_match filter.
- Added GFCommon::esc_like() method to fix deprecation notice in WP 4.0 while maintining backwards compatibility with previous WP versions.
- Added condition to not include "gform_chosen" if "chosen" is already enqueued.
- Updated gf_reset_to_default() to not select disabled options in drop downs when reseting default value.
- Updated GCommon::is_valid_url() to use filter_var( $url, FILTER_VALIDATE_URL ).
- Updated GCommon::is_valid_email() to use filter_var( $email, FILTER_VALIDATE_EMAIL ).
- Updated entry details payment information markup.
- Updated complete_payment function to update the entry's payment_amount, transaction_id, and payment_date for the Payment Add-On.
- Updated process for enqueuing chosen script to check if "chosen" is a registered handle and if so to include it instead of "gform_chosen".
- Updated french translation.
- Updated product calculation field to allow the label to be changed dynamically like the single product field.
- Updated delete_leads_by_form function to include deleting data from the lead meta table.
- API: Updated GFAPI::get_entries() to include field choice texts in addition to values when performing a global search.
- Fixed fatal error triggered on some servers.
- Fixed Notice message.
- Fixed an issue with multi-page, ajax-enabled forms with images as buttons where multiple spinners were displayed during form submission.
- Fixed issue with multi file upload merge tag.
- Fixed issue with confirmation type "Page" when permalink contains a query string.
- Fixed bug with default values for conditional logic where any choice with a 'price' attr set (even if it wasn't a pricing field) was incorrectly treated as a pricing value.
- Fixed a issue with GFCommon::esc_like() causing a fatal error on WordPress < 4.0.
- Fixed an issue with checkbox, radio button and drop-down fields which caused data to be saved incorrectly if a pipe ("|") was used in a choice value.
- Fixed the validation of the website field to accept commas in the path.
- Fixed notices thrown in WP 4.0 on pages using/extending WP_List_Table.
- Fixed an issue affecting the search function on the entry list and the conditional logic on the entry export page where field choice values would be taken into account but not their corresponding texts/labels while performing a global search based on any form field. This affects all radio, checkbox and drop-down fields plus derivative fields in add-ons i.e. Poll, Survey and Quiz fields.
- Fixed a bug with conditional logic animation in Firefox.
- Fixed "Index too large" error for payment addons.
- Fixed issue with inactive notifications getting changed back to active when notification is edited.
- Fixed issue where admin label was not used for fields in the inactive column on the "Select Columns" ui.
- Fixed issue where is_section_empty() returned true even if section contained a product field and 'gform_display_product_summary' filter returned false.
- Fixed issue where <br> tags were being displayed on notifications even when the message type was set to "text".
- Fixed notice thrown in update_confirmation function when isDefault not set.
- Fixed warnings thrown in get_version_info when the response is not an array.
- AF: Fixed issue with sales page where payment method drop down displayed blank values.
- AF: Fixed issue when creating subscriptions upon first subscription payment.
- AF: Fixed issue with payment going to gateway when the amount was negative.
- AF: Updated payment Add-On so that redirect_url() is called earlier in the page life-cycle.
- AF: Fixed issue with results page displaying an error message for the Stripe Add-On.
- AF: Added support for checkbox item callback to allow an individual checkbox item to be customized.
- AF: Fixed issue that caused a $0.00 total when selecting the same product field for the subscription payment and trial payment.
- AF: Fixed issue with plugin settings page displaying slug instead of Title.
- AF: Fixed issue with payment add-on sending requests to payment gateways even when payment was $0.00.
- AF: Updated process_capture function to set is_fulfilled to true so complete_payment function uses the entry value for Payment Add-On.
- AF: Updated maybe_process_feed function to handle delayed payments for the Payment Add-On.
- AF: Added support for formatting inputs as currency.
- AF: Fixed notice thrown in the process_callback_action function when logging for the Payment Add-On.
- AF: Updated maybe_process_feeds function to not process feeds set as inactive.
- AF: Added register and init_addons() function to allow for aid in initializing addons and support overriding them.
- AF: Updated process_capture function in the Payment Add-on to call complete_payment.
- AF: Updated Payment AF validation to only validate if the validation result is valid.
- AF: Fixed misspelling on database key in create table for ...gf_addon_payment_transaction for the Payment Add-On.
- AF: Updated confirmation function to set the transaction type on the entry for payment gateways that redirect to a url for the Payment Add-On.
- AF: Added code to update the payment_gateway meta for the entry when the gateway is a URL redirect for the Payment Add-On.
- AF: Fixed notices thrown in the complete_payment function in the Payment Add-On.
- AF: Updated priority of Payment AF validation from 10 to 20 to ensure all validation has passed before payment validation occurs (resolves issue where validation could sometimes fail AFTER a subscription was created).
- AF: Fixed issue where "name" attribute was output twice.
- AF: Updated 'name' property of plugin settings tabs to use slug rather than short title.
- AF: Fixed issue where feed status was not saved.
- AF: Added a post_callback function to the Payment Add-On.
- AF: Added tooltips to the Payment Add-On.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.9
- Added "password" to the list of fields which allow HTML input.
- Added 'gform_field_container' filter to allow modifying the field container markup.
add_action( 'gform_field_container', 'my_field_container', 10, 6 );
function my_field_container( $field_container, $field, $form, $class_attr, $style, $field_content ) {
return '<li style="border: 1px solid #f00;">{FIELD_CONTENT}</li>';
}
- Updated entry detail screen so that the payment details heading is defaulted to "Payment Details".
- Updated Akismet integration to use Akismet::http_post instead of the deprecated function akismet_http_post when the Akismet version is 3.0 and greater.
- Updated Spanish translation to properly escape a string causing issues when resending notifications.
- Added 'gform_encrypt_password' hook to allow basic encryption of password field values when saved to database
add_filter( 'gform_encrypt_password', '__return_true' );
- Fixed issue with Payment Add-On where payment information wasn't available to hooks via the $entry object.
- Fixed issue causing payment details to show up twice for older payment addons.
- Fixed issue with conditional logic when greater than and less were used on checkboxes.
- Fixed error being incorrectly returned for GFAPI::update_form() method.
- Fixed notices thrown when the is_valid_key element does not exist in the version information array.
- Fixed issue with currency validation on certain currencies.
- Fixed issue with conditional logic reset logic triggering change event even when value did not change.
- Fixed issue with conditional logic javascript when working with empty child elements.
- Fixed issue with quantity of Quantity fields allowing negative values to be entered.
- AF: Updated gform_entry_post_save hook so it is called as a filter, not an action.
- AF: Fixed issue with the results page where values of fields with multiple inputs (e.g. Name and Address) would not be displayed correctly.
- AF: Added support for additional payment options to the Payment Add-On.
- AF: Fixed notices.
- AF: Fixed issue causing feed condition to display warnings in certain conditions.
- AF: Added extra parameter to has_feed() call to support checking if there is a feed that meets conditional logic.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.8
- Added support for Proxy to resolve issues with sites on blacklisted IPs not being able to access the Gravity Help API.
- Added ability to place the payment details in a separate box on the entry detail page.
- Added Bulgarian translation file.
- Added 'gform_display_product_summary' hook to allow suppressing pricing summary on {all_fields} merge tag and displaying pricing fields inline with other form fields.
add_filter( 'gform_display_product_summary', '__return_false' );
- Added 'gform_export_form' hook to allow modification of the form meta before export.
add_filter( 'gform_export_form', 'modify_form_for_export' );
function modify_form_for_export( $form ) {
$form['exported'] = true;
return $form;
}
- Added 'gform_export_options' hook to allow adding custom export options.
add_filter( 'gform_export_options', 'my_export_options', 10, 2 );
function my_export_options( $options, $forms ) {
$options["forms/form/myCustomProperty/id"] = array( 'is_attribute' => true );
return $options;
}
- Added 'gform_form_update_meta' hook to allow modifying form meta before it is saved to the database.
add_filter( 'gform_form_update_meta', 'my_import_form', 10, 3 );
function my_import_form( $meta, $form_id, $meta_name ) {
$is_import_page = GFForms::get_page() == 'import_form';
$is_updating_display_meta = $meta_name == 'display_meta';
if( ! $is_import_page || ! $is_updating_display_meta )
return $meta;
$form = $meta;
$form['isImported'] = true;
return $form;
}
- Added gform_entry_pre_update filter to allow entry to be changed prior to being saved.
$entry = apply_filters("gform_entry_pre_update", $entry, $original_entry);
- Added gform_post_update_entry hook to allow actions to be taken when entry is updated
do_action("gform_post_update_entry", $entry, $original_entry);
- Added gform_post_payment_transaction hook to allow actions to be taken after a payment transaction is created.
do_action("gform_post_payment_transaction", $txn_id, $entry_id, $transaction_type, $transaction_id, $amount, $is_recurring);
- Added gform_action_pre_payment_callback filter to allow callback action and parameters to be changed before a payment callback is executed.
$action = do_action("gform_action_pre_payment_callback", $action, $entry);
- Added gform_post_payment_callback hook to allow actions to be taken after a payment callback is processed.
do_action("gform_post_payment_callback", $entry, $action, $result);
- Added gform_post_payment_completed hook to allow actions to be taken when a payment is completed.
do_action("gform_post_payment_completed", $entry, $action);
- Added gform_post_payment_refunded hook to allow actions to be taken after a payment refund is processed.
do_action("gform_post_payment_refunded", $entry, $action);
- Added gform_post_subscription_started hook to allow actions to be taken after a subscription has been created.
do_action("gform_post_subscription_started", $entry, $subscription);
- Updated the multi-file upload field to support Plupload 2.x in WordPress 3.9.
- Updated the Locking API to use a Heartbeat interval of 30 seconds as standard and 5 seconds while waiting for the response to a control request. The lock timeout is now 150 seconds - equivalent to Posts and Pages.
- Updated links to sign up page for reCAPTCHA.
- Fixed security vulnerability.
- Fixed issue with feed addon not refreshing list page when a feed is deleted.
- Fixed issue introduced in 1.8.7.14 with the multi-file upload field not properly displaying an error message in case of a failed upload.
- Fixed issue with multi-file upload field not allowing files with special accent characters from being uploaded.
- Fixed issue where legacy notification data was not cleaned up when editing existing notifications.
- Fixed issue with quantity of single product fields allowing negative values to be entered.
- Fixed issue with number field validation.
- Fixed issue with Addon Browser not recognizing valid licenses.
- Fixed notice in GFFormDisplay::get_chosen_init_script() where $input_type was not defined.
- Fixed issue where selecting option from bulk choice menu scrolled page to top.
- Fixed issue with chosen script throwing javascript errors on certain situations.
- Fixed issue with multi-file upload field throwing javascript errors when the number of files uploaded reached the max files setting.
- AF: Added more logging statements to the Payment Add-On.
- AF: Added the function is_callback_valid which can be overwritten for use by Payment plugins for the Payment Add-On.
- AF: Added entry and action objects to be passed as parameters for custom events for the Payment Add-On.
- AF: Updated logging to go to the plugins log instead of Gravity Forms' log for the Payment Add-on.
- AF: Updated to remove caching the feed in the Payment Add-On.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.7
- Added Text Domain and Domain Path to plugin header so the description may be translated
- Updated product calculation to improve performance
- Updated width of form title column so form actions do not wrap.
- Updated two notice statements to alleviate confusion
- Updated German translation file with user-provided update
- Updated a few strings so they can be translated
- Updated POT file
- Updated GFFormsModel::save_lead() method to support saving leads on non-admin views
- Updated GFFormDisplay::has_conditional_logic from private to public
- Fixed an issue with the validation of the number field when set to currency format and the Gravity Forms currency setting is set to a decimal comma formatted currency
- Fixed incorrect domain for translations in a few instances
- Fixed security vulnerabilities
- Fixed issue with nested conditional logic on checkboxes.
- Fixed issue where conditional logic setting was showing up for Hidden products
- Fixed issue where GF Results was being initialized on all admin pages
- Fixed issue with the {pricing_fields} merge tag markup.
- API: Updated the Web API authentication to accept both url-encoded and unencoded signatures to handle different client behavior
- API: Updated some mysql_*() calls to support WordPress 3.9 under PHP 5.5 or higher
- AF: Added support for top level "app" menus
- AF: Added support for top level "app settings"
- AF: Added support for app tab UIs
- AF: Fixed an issue with the form settings menu where the menu item for the add-on was appearing in the menu even when the current user did not have adequate permissions
- AF: Fixed filter for app settings menu
-------------------------------------------------------------------------------------------------------------------
Version 1.8.6
- Added logging to help troubleshooting form submissions.
- Added hook to allow multi-file upload settings/behavior to be changed.
- Added "French Polynesia" to countries list.
- Added 'gravityforms_delete_forms' and 'gravityforms_delete_entries' permission checks to form list.
- Added new filter "gform_email_background_color_label" to change the background color for the field label in the html email.
add_filter("gform_email_background_color_label", "set_email_label_color", 10, 3);
function set_email_label_color($color, $field, $lead){
return "#CC99FF";
}
- Added new filter "gform_email_background_color_data" to change the background color for the field data in the html email.
add_filter("gform_email_background_color_data", "set_email_data_color", 10, 3);
function set_email_data_color($color, $field, $lead){
return "#CCCCFF";
}
- Added gform_form_notification_page filter.
- Added 'gravityforms_delete_entries' permission checks to entry list and entry detail pages.
- Added $input_id as fifth parameter to the "gform_save_field_value" function; better allows overriding values for a specific input ID.
- Added support for state code via gform_us_states and gform_address_types hook.
- Added gform_form_export_page hook.
- Added gform_payment_details hook under gform_entry_info in preparation for a new Payment Details box on the entry page.
- Added support for country codes in country drop down.
- Added support for note type.
- Added support for changing note avatar.
- Added gform_delete_entries to get fired when entries are being deleted in bulk.
- Fixed security vulnerability which allowed malicious form submissions to bypass validation of certain fields
- Fixed PHP warning on entry list when the created_by field contains the ID of a user that no longer exists
- Fixed issue with conditional logic when configured to start with "0".
- Fixed minor PHP warning for recently imported multi-step forms.
- Fixed issue where editing credit card fields with HTML5 ouptut enabled generated a browser validation error.
- Fixed security vulnerability which allowed malicious form submissions to bypass validation of certain fields.
- Fixed issue with entry detail pagination not working correctly on certain types of searches.
- Fixed issue with with the multi-file upload field generating a JavaScript error on multi-page, ajax-enabled forms with conditional logic.
- Fixed issue with multi file upload throwing AJAX errors when uploading a file with a single quote on certain webservers.
- Added GFs instance of the gfMergeTagsObj to the global scope to allow 3rd party devs to more easily work with merge tags.
- Fixed issue in the Italian translation file where a string was breaking javascript on the entry detail page.
- Fixed issue with entry export not decoding the value of multi file upload fields.
- Fixed issue with the {pricing_fields} merge tag markup.
- Fixed escaping issue on input mask.
- Fixed issue with the new form modal on IE8.
- Fixed issue with datepicker css being rendered to the page even when no datepicker field is in the form.
- Fixed issue with country not being selected properly when code was provided via hook.
- Fixed styling issue with entry actions on entry detail page.
- Fixed issue where styles/scripts were being output before doctype when including a form in a confirmation.
- Fixed issue with number field validation when set to decimal comma.
- Fixed issue with select columns page not loading in SSL when appropriate.
- Fixed security vulnerability when validating product state.
- Fixed an issue with the entry list where trashed entries appear in the list of active entries when sorting by a field value.
- Fixed an issue with conditional logic when product drop down is used as a target.
- Removed permissions check from low level GFFormsModel::delete_lead() - moved to page level.
- Removed the value and size attributes from the input tag for the "file" type since they are not supported and cause html validation errors.
- Removed permission checks from GFFormsModel::delete_form() and GFFormsModel::delete_leads_by_form() - moved to page level.
- AF: Set trial amount to user entered value when trial option set to "Enter amount" for the Payment Add-On.
- AF: Added GFAPI::current_user_can_any() so developers can check permissions before calling any of the other API functions.
- AF: Added some logging for the Payment Add-On.
- AF: Added discounts to the order data for the Payment Add-On.
- AF: Added product options as a separate array to the line items array for the Payment Add-On.
- AF: Added is_shipping indicator to line items to distinguish between shipping field and regular product field for the Payment Add-On
- AF: Added name property to settings_setup_fee and settings_trial for the Payment Add-On.
- AF: Added integration with the Logging Add-On - all add-ons now appear automatically on the settings page.
- AF: Fixed issue with validation failure icon not being displayed for all field types.
- AF: Fixed issue with checkbox validation.
- API: Fixed an issue with GFAPI::add_entry() where the status was being ignored.
- API: Fixed an issue with GFAPI:get_entries() where the status was being ignored when sorting by a field value.
- API: Fixed issue with Web API GET entries ignoring is_numeric.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.5
- Added $field and $value parameters to 'gform_duplicate_message' filter.
- Added new hook: "gform_after_update_form_meta", fires any time form meta is updated.
- Updated shortcode_atts() call in GFForms::parse_shortcode() method to pass 'gravityforms' as the third parameter so 3rd party developers can add/filter shortcode attributes.
- Fixed Notice when adding a post category field to the form.
- Fixed issue with email notification format when using the {pricing_fields} merge tag.
- Fixed issue with conditional logic when the current number locale is set to decimal comma.
- Fixed issue with export where it was returning results inconsistent with entry list for checkbox items that have been re-ordered.
- Fixed issue where custom field types which posted values as arrays were set to null when filtering for HTML.
- Fixed issue with number format and conditional logic when number was configured with the comma as the decimal separator.
- AF: Added is_object_locked().
- AF: Added payment_callback table to track callbacks and prevent duplicate execution of them.
- AF: Added Donation as a dependency value for transaction type for the Payment Add-On.
- AF: Added function to set the onchange event for enabling a trial for the Payment Add-On.
- AF: Added support for a transaction id to be added to the transaction table for subscription recurring payments.
- AF: Added support for a subscription to be retrieved by a transaction id.
- AF: Added new styles for add-on results.
- AF: Updated payment amount to have a default value of form_total for the Payment Add-On.
- AF: Updated the logic for showing/hiding trial fields for the Payment Add-On.
- AF: Updated radio button setting markup so that it is consistent with WordPress'.
- AF: Updated settings label code; moved it to its own function.
- AF: Updated is_json() method to accept "[" as a valid first character of a JSON string.
- AF: Updated build_choices() method to 'public' from 'protected'.
- AF: Fixed notices in the Payment Add-On.
- API: Fixed an issue with get_entries() where incorrect entries were being returned when searching across all forms using an entry meta key that is not currently active for any of the forms.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.4.1
- Fixed issue with tooltips not working on Add On pages. Included font-awesome.css to Add On pages to fix the issue.
- Fixed issue where old inputs were not removed when adding new choices via bulk add functionality for Post Custom Fields with a "checkbox" field type
- Fixed an issue with entry export which may result in an empty export file for forms with a large number of entries
- AF: Added logging statements
- AF: Fixed issue with field map validation on fields that are hidden by dependency
- API: Added some logging statements
- API: Updated GFWebAPI::handle_page_request() to check the $HTTP_RAW_POST_DATA global variable before attempting to read the contents of the request body.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.4
- Added "gform_footer_init_scripts_filter" hook to support filtering the footer init scripts string
- Added support for custom wp-includes directory
- Updated setup to run only in admin for single site installations and always on multisite
- Updated Google Font includes to be protocol-less
- Updated conditional logic to handle the "Other" choice for radio buttons
- Updated INACTIVE trim values setup script to ACTIVE. All leading and trailing spaces are now stripped from all previous entry values, field labels, choice texts, choice values, input labels and conditional logic rule values for fields, notifications and confirmations.
- Updated the form editor, form importer, notification editor and confirmation editor to trim leading and trailing spaces from all labels, choices values and conditional logic values on save/import
- Updated GFFormDisplay::print_form_scripts() to print all scripts at once rather than printing individually
- Updated GFFormsModel::update_lead_property() to return the result of the $wpdb->update() call
- Updated Credit Card field's Security Code input to use "type='text'" and "pattern='[0-9]*' when in HTML5 mode (rather than "type='number'")
- Updated location of gform_form_actions hook so that actions can be filtered when in the trash page
- Updated the entry search criteria to support times in the start_date and end_date
- Updated GFFormsModel::get_form to optionally allow returning a trashed form
- Fixed issue with number field not properly formatting numbers on the entry edit page and on the individual field merge tag
- Fixed issue with export start and end dates
- Fixed issue with entry list trash view where entry row remains in the list after deleting when a fileupload field in the entry is empty
- Fixed issue with deleting entries on multisite installs where files uploaded using the fileupload field aren't deleted if the site ms_files_rewriting option is not set. This issue affects all new multisite installations of WordPress created after the release of WordPres 3.5.
- Fixed issue with number field configured with the 9.999,99 format displaying browser validation errors when HTML5 is enabled.
- Fixed issue with list field export where "Array" was being displayed under certain conditions.
- Fixed warning thrown in rewrite_rules function when using array_merge with a parameter that wasn't an array
- Fixed issue with dates used when exporting entries
- Fixed number field validation when currency format is specified.
- Fixed issue with how spaces in post image file names were being replaced.
- Fixed notices when Post Image field with enabled Title, Description, and/or Caption were submitted without values
- Fixed styling issue with checkboxes on entry notes
- Fixed number field input type
- Fixed JS error on form editor when user refreshes the page with the scrollbar lower than the top of the page
- Fixed left margin of conditional logic instructions when label position is set to left-aligned.
- API: Added support for PUT entries/{entry ID}/properties so entry properties (is_read, is_starred etc) can be updated individually
- API: Added GFAPI::update_form_property() and GFAPI::update_forms_property() so form properties from the main forms table (is_trash, is_active etc) can be updated individually
- API: Added support for PUT forms/{form ID}/properties
- API: Added GFAPI::update_entry_property() to update a single property of an entry
- API: Updated the QR Code to include the site title
- API: Updated GFAPI::add_entry() to return an error if the entry object is not an array
- API: Fixed authentication for multisite installations
- API: Fixed loading of scripts on the API settings page when using SSL
- API: Fixed GFAPI::update_entry() to update the entry status
- AF: Added support for "dynamic_field_map" field setting
- AF: Added icon support to form editor top toolbar
- AF: Added support for displaying an icon next to the form settings page title
- AF: Added support for displaying an icon next to the plugin settings page title
- AF: Added support for configuring a form settings page title (using first section as default)
- AF: Added support for configuring the "No items" message as well as forcing any message to be displayed in the feed list
- AF: Added support for "requires credit card" setting in the Payment Add-On to be used by payment gateways that require a credit card field on the form
- AF: Added replace_field() method to replace a field by name in a given $settings array
- AF: Added get_field() method to retrieve a field by name in a given $settings array
- AF: Updated get_feed() method to return false if no feed is found instead of a non-empty array
- AF: Updated get_payment_choices() from private to public
- AF: Updated the feed add-on feed_condition field to trim values before saving
- AF: Updated payment add-on to better handle different payment actions
- AF: Updated payment add-on get_webhook_url() to use simpler callback parameter
- AF: Updated default icon for the Results menu
- AF: Updated Payment Add-On default settings so that it is easier to add feed settings under the "Other" section
- AF: Updated field_map settings field type so that it is available from GFAddon instead of GFFeedAddOn
- AF: Fixed issue with subscription cancellation
- AF: Fixed results calculation loop to allow add-ons to add custom data to the field_data element. Fixes an issue with the Quiz Add-On correct/incorrect numbers for > 150 entries.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.3
- Added new filter "gform_post_category_choices" to alter post category choices sort order. Both globally and form id + field id specific.
add_filter("gform_post_category_choices", "set_sort", 10, 3);
function set_sort($choices, $field, $form_id){
//usort calls a custom sort function you create
usort($choices, "sort_numerically");
return $choices;
}
function sort_numerically($a, $b){
return floatval($a["text"]) > floatval($b["text"]);
}
OR
add_filter("gform_post_category_choices_390_1", "set_sort", 10, 3);
function set_sort($choices, $field, $form_id){
//usort calls a custom sort function you create
usort($choices, "sort_numerically");
return $choices;
}
function sort_numerically($a, $b){
return floatval($a["text"]) > floatval($b["text"]);
}
- Added INACTIVE setup script to trim leading and trailing spaces from all entry values, field labels, choice texts, choice values and input labels. Uncomment line 503 to test.
- Updated GFFormDetail::add_field() to json_encode the field markup before sending it back to the form editor
- Updated GFCommon::calculate() to replace multiple spaces and new lines with a single space
- Updated the fileupload field to use the https protocol in links to file downloads when the entry detail and entry edit pages are using SSL
- Fixed issue with "No duplicates" option displaying on multi-select fields
- Fixed an issue with conditional logic failing and some fields not retaining values after validation and changing page with field choices having leading or trailing spaces.
- Fixed missing delete icon on the entry edit page.
- Fixed a PHP warning on form submission with unsaved imported forms with post fields.
- Fixed inconsistent permission allowing users to import forms without edit form permission.
- Fixed issue where empty fileupload fields were being displayed in the entry detail, entry print page and {all_fields] merge tag.
- Fixed intermittent fatal error calling get_plugins().
- Fixed missing gform_pre_enqueue_scripts hook causing conflict with Picatcha.
- Fixed the gform_filters_get_users filter.
- Fixed missing ';' on gformInitCurrencyFormatFields() init script.
- API: Updated GFWebAPI::end() to public static so it can be used by add-ons.
- API: Added gform_webapi_$METHOD_$COLLECTION and gform_webapi_$METHOD_$COLLECTION1_$COLLECTION2 actions.
- API: Removed gform_webapi_$METHOD_$COLLECTION and gform_webapi_$METHOD_$COLLECTION_$COLLECTION2 filters.
-------------------------------------------------------------------------------------------------------------------
Version 1.8.1
- Added the gform_webapi_get_users_settings_page filter to allow the user list to be filtered on the API settings page.
- Added the gform_filters_get_users filter to allow the user list to be filtered in the field filters.
- Added logging statements for single file upload fields on single page forms and last page of multi-page forms.
- Fixed issue with gform_display_add_form_button filter.
- Fixed issue with state validation failing on product names with leading or trailing spaces.
- Fixed notices thrown in the clean_up_files function.
- Fixed an issue on the settings where a valid license key appears incorrectly as invalid for up to 24 hours after updating to version 1.8.
- Fixed an issue on the confirmation edit page when a conditional logic rule value contains an apostrophe.
- Fixed an issue with the multi-file upload field when used on more than one page of a multi-page form and when the max number of files is set.
- Fixed JavaScript error when form contains a currency format number field but no calculation.
- Fixed the missing edit columns icon on the entry list.
- Fixed undefined index notice isRequired in GFFormDisplay::get_field_content().
- Fixed the localization of the select files button in the multi-file upload field.
- Removed the gform_webapi_max_accounts_settings_page filter.
- Removed the gform_filters_max_user_accounts filter.
-------------------------------------------------------------------------------------------------------------------
Version 1.8
- Added API to allow developers to easily perform operations such as read/update/delete/create forms and entries
- Added Web API to allow developers to perform operations such as read/update/delete/create forms and entries from a remote web site
- Added filter to export to allow entries to be changed before exporting them
- Added support for mu-plugins deployment
- Added JS filter: "gform_calculation_result" to allow modifying the calculated result
- Added JS filter: "gform_calculation_format_result" to allow user to override default formatting to calculated result
- Added fontawesome webfonts and icon support for form admin
- Added trash for forms
- Added sorting to form list
- Added form locking
- Added entry locking
- Added form settings locking
- Added plugin settings locking
- Added locking to the Add-On Framework
- Added Romanian and Georgian translation files
- Added Kosovo (KV) to the country list
- Added Cayman Islands to country list
- Added Active/Inactive functionality to Notifications
- Added Active/Inactive functionality to Confirmations
- Added Duplicate functionality to Notifications
- Added Duplicate functionality to Confirmations (not for the default confirmation)
- Added enhanced entry search
- Added enhanced filters to entry export
- Added Query String setting to Page Confirmation
- Added hierarchy to the Post Category field UI when the "Select Categories" setting is active.
- Added "Form Pending Message" option to Schedule Form restrictions in Form Settings
- Added gform_process_form hook
- Added Multi-file upload support to the File Upload field
- Added max file size setting to single file upload field
- Added two filters to next page button. ("gform_next_button", and "gform_next_button_FORMID"). The first is a filter that applies to all forms. The second applies to a specific form.
- Added two filters to previous page button. ("gform_previous_button", and "gform_previous_button_FORMID"). The first is a filter that applies to all forms. The second applies to a specific form.
- Added new style JS filter for the original Javascript filter gform_product_total() so that multiple filters can be applied to it
- Added new notification hook (gform_email_fields_notification_admin) to allow list of email fields to be filtered
- Added support for any/all mode for field filters in the search queries and API
- Added clean up of temp files removed from form submissions
- Added clean up of files older than 48 hours from abandoned submissions
- Added gform_form_trash_link filter to replace the deprecated gform_form_delete_link filter
- Added a "validate formula" button to the calculation formula setting in the form editor
- Added the "instructions" and "checkbox_label" properties of the feed_condition field in GFFeedAddOn
- Added gformGetProductQuantity() JS function for getting current quantity of an item; extracted from gformCalculateProductPrice()
- Added GFFormDisplay::is_last_page() method as an easier method for determining if the last page of the form is being submitted
- Added support for GF_DEBUG constant on AJAX iframe to more easily allow viewing the contents of the iframe when debugging AJAX forms
- Added GFFormsModel::get_form_ids()
- Added multifile support to the 'post custom field' field (file upload field type)
- Added Entry ID, Entry Date, Starred, IP Address, Source URL, Payment Status, Payment Date, Payment Amount, Transaction ID and User to the list of available fields in the entry list search, export conditional logic and Add-On Framework results page filter.
- Added sorting by active/inactive in form list
- Added form-specific version of "gform_register_init_scripts" hook
- Added JS filter: "gform_spinner_url" to allow modifying the spinner URL with the new gformInitSpinner() function
- Added logging statements to GFFormsModel::create_post()
- Added logging statements to GFAsyncUpload::upload()
- Updated GFFormDisplay::register_form_init_scripts() function to include 'is_ajax' parameter
- Updated 'gform_register_init_scripts' action to pass 'is_ajax' parameter
- Updated gravityforms_addon_browser capability to be gravityforms_view_addons since that is the one actually in use
- Updated GFFormsModel::get_entry_meta() to support an array of form IDs and all form IDs (zero)
- Updated how GFFormsModel::prepare_value() handled credit card fields, allowing default formatting to be overwritten for the last credit card number
- Updated icons to use webfont where possible
- Updated CSS file removing IE 7 hacks and removed inline style blocks
- Updated the formatting for the Danish Krone
- Updated the styles of the form list and entry list to emphasise alternate rows
- Updated the credit card field HTML5 markup to use an HTML text input with a pattern instead of a number input
- Updated upgrade process so that it gets aborted if database user doesn't have the proper permission to change or create tables
- Updated product labels to allow html formatting in the notifications and entry detail page instead of showing the html tags
- Updated {form_title} merge tag so that it is not available as a choice for field default values (since it is not supported there).
- Updated gravity_form() function call to take "echo" parameter.
- Updated page break fields in admin - replaced imagery with translatable text strings
- Updated admin.css for new icon and page break markup and styles
- Updated the merge tags cursor to pointer (hand)
- Updated GFFormsModel::build_lead_array() to include long values by default. GFFormsModel::search_leads() and GFFormsModel::get_leads() now include long values in entry objects.
- Updated date range tooltip on export entries page
- Updated bulk form actions text
- Updated the hierarchy indicator in the Post Category field from spaces to continuous lines
- Updated the results page to display as a view of the gf_entries page so the gravityforms_view_entries capability is required instead of gravityforms_edit_forms (in addition to the gravityforms_{add-on}_results capability)
- Updated the results page filter box from sticky (always visible) and fixed height to static and fluid height
- Updated form submission process to trim leading and trailing spaces before validation and before saving. Added the gform_trim_input_value filter so it's possible to override this behaviour by field and by form.
- Updated calculation formula so that it is now trimmed in the form editor
- Updated single product field. Removed Admin Label setting
- Updated conditional logic for fields with choices to display dropdown values for "is" and "is not" operators and a textbox values for other operators
- Updated automatic license key population so that it is remotely validated on first install and version change
- Updated the behaviour of the number field to add a leading zero if missing before decimal/comma (ie .5 or ,5 is now validated and stored as 0.5 or 0,5)
- Updated resend notification UI so that it displays an appropriate message when no notifications are configured
- Updated tooltip function to optimize performance for WPML users
- Updated 'gform_is_value_match' filter to optionally pass rule object being validated
- Updated the location where the load_plugin_textdomain function is loaded so translations by third-party apps are loaded
- Updated code to use functions mb_substr and mb_strlen to truncate large text values before inserting them in the DB to accommodate for Chinese characters and other multi-byte characters
- Updated admin styles to comment out button styles conflicting with WP default button styles
- Updated remote license key validation procedure so that it consolidates all add-ons and gravity forms into one request/response to save requests to the Gravity Help server.
- Updated form meta format to JSON
- Updated the "Delete Form" link in the form editor to "Move to trash".
- Updated the product quantity input type to "number" when HTML5 is enabled in settings
- Updated the credit card number input type to "number" when HTML5 is enabled in settings
- Updated the credit card security code input type to "number" when HTML5 is enabled in settings
- Updated references to gforms_gravityforms script handle to gform_gravityforms for consistency
- Updated spanish translation file
- Updated min required WP version to 3.4 (necessitated by use of wp_is_mobile() function)
- Updated domain in add-on include files to use gravityforms for translations
- Updated hungarian translation file
- Updated the button text "Cancel" on the Bulk Add / Predefined Choices so it may be translated into other languages
- Updated {ip} merge tag to use GFFormsModel::get_ip() method
- Updated GFFormsModel::get_ip() method to try for $_SERVER['HTTP_CLIENT_IP'] first
- Updated form settings to use "label" instead of "name" when getting tab label
- Updated jQuery calls so that the deprecated jQuery.live() method isn't used
- Updated POT file
- Updated the Web API to respond always with a 200 HTTP status along with a JSON object containing the status code and response
- Updated gformInitSpinner() to be generic and moved to gravityforms.js
- Updated enqueue and print script functions to enqueue gravityforms.js when AJAX is enabled
- Updated confirmation and notification titles to link to edit view for that item
- Updated the help page: removed references to the forum
- Updated the field filters on the export entries page and results page to include greater than and less than operators by default
- Fixed search criteria operators for likert fields
- Fixed issue where datepicker was displaying below WP content
- Fixed issue with ReCAPTCHA field throwing Javascript error
- Fixed tabindex for AJAX enabled forms after validation
- Fixed validation of standard phone field when value is zero
- Fixed issue where no formatting was being applied to calculated results
- Fixed issue where [gravityforms] shortcode (plural) was not detected and scripts were not loading correctly
- Fixed bulk actions at the bottom of the form list to reflect recent changes
- Fixed strings that weren't properly localized
- Fixed an issue where the confirmation message would not be displayed below the progress bar on AJAX enabled forms.
- Fixed an issue with GFCache which can result in long keys getting cut off. Keys are now hashed.
- Fixed misspelling
- Fixed issue with weekly form scheduling
- Fixed conflict on add-on page causing an error when installing new plugins
- Fixed conditional logic conflict
- Fixed issue with pricing formatting on AJAX forms
- Fixed issue with entry list page where more entries were being used than the ones selected when applying actions
- Fixed issue with notification causing form to be "blank" in the editor under certain conditions
- Fixed issue with multisite database upgrade
- Fixed issue when creating a form using special characters
- Fixed dynamic population of admin only multi-selects
- Fixed dynamic population of admin only list fields
- Fixed issues with switched parameters on get_parameter_value() call causing issues with pre-populating certain field types.
- Fixed issue with credit card field markup
- Fixed issue where zero amount totals were not being saved to carry over in Total merge tags
- Fixed issue with legacy notifications causing emails to be sent using field id instead of email address
- Fixed issue when adding multiple total fields to a form causing the total field entry data and total field merge tag to not save the correct value
- Fixed issue with calculations where formula choked when calculating single-input products when currency number format was 'decimal_comma'
- Fixed issue with merge tags entered in the front end being executed when the field is added to notifications
- Fixed an issue with single file upload where the entry wouldn't fail validation if the file exceeded the upload_max_filesize PHP init setting
- Fixed an issue the results page where single row likert fields display multiple rows with a form that's been imported
- Fixed an issue the results page when the error message doesn't display after a database timeout
- Fixed notice thrown in multi-site logging for $is_setup_completed variable
- Fixed encoding issue on Form Settings causing double quotes on form title to get dropped
- Fixed invalid license key message
- Fixed issue with database upgrade on multi-sites
- Fixed issue where form admin fields menu doesn't remain on screen when scrolling and in no conflict mode
- Fixed the merge tags UI and the select columns UI on the entry list to display only Card Type and Card Number for the credit card field
- Fixed the calculation formula so that it accepts line breaks
- Fixed the add-on feed page feed condition setting
- Fixed issue when truncating text with special characters
- Fixed issue with date formatting
- Fixed text "Insert Form" so that it is localized
- Fixed the gform_save_field_value filter
- Fixed issue where some calculations resulted in "Infinity" being output to calculated field
- Fixed the gform_previous_button filter on the last page. Removed from first page.
- Fixed issue where using decimal values from drop downs (and other fields) resulted in ignored decimals
- Fixed issue on export entries page allowing exports to be perform without a selected field
- Fixed typo on the export forms tab
- Fixed typo in the tooltip for the allowed file extensions setting in the fileupload field
- Fixed issue with the hidden field type in the form editor where the merge tags UI for the default value wasn't displaying correctly
- Fixed issue with date field not resetting to default value correctly when hidden by conditional logic
- Fixed issue where number of updates available was being displayed when user didn't have permissions to update the plugin
- Fixed issue with for in loops causing strange behavior under certain conditions.
- Fixed issue on form notifications page where WP footer was overlapping notifications list
- Fixed issue when adding fields in the form editor. Users are now prevented from adding a field while another field is in the process of being added
- Fixed captcha math input id
- Deprecated the gform_form_delete_link filter
- Deprecated the gform_calculation_result function
- API: Added further details to some error messages
- API: Updated Web API slug from gfwebapi to gravityformsapi
- API: Updated the API Functions to remove the capability checks
- AF: Added Payment Add-On base class to help and provide consistency when creating payment processors.
- AF: Added caching for feed addon's get_feeds() method
- AF: Added support for 'validation_callback' and 'dependency' properties for Field Map child fields
- AF: Added support for storing previous settings when saving new settings
- AF: Added support for plugin_settings_title() overridable function
- AF: Added "feedName" as default column and field setting for payment add-on
- AF: Added add_field_before() and add_field_after() functions to facilitate adding new fields to existing field groups
- AF: Added support for 'style', 'class', and 'id' properties to $sections
- AF: Added feed_settings_title() method to Feed Add-on rather; used as title of feed detail page
- AF: Renamed has_feed_for_this_addon() method to has_feed()
- AF: Updated rgempty() function to support passing just an array for empty() validation
- AF: Updated setting_dependency_met() method to handle when false value is passed as $dependency
- AF: Updated setting validation to not validate settings where dependency is not met
- AF: Updated all calls to $_short_title to use get_short_title()
- AF: Updated scripts and styles so that they are registered and can be used as dependencies
- AF: Removed some inline styles and added to admin.css
- AF: Updated section title markup to use <h4> and match styles of GF Form Settings
- AF: Updated get_setting() function to support a $settings parameter
- AF: Updated Payment Add-on fields to be grouped by their dependencies (based on transaction type)
- AF: Updated feed_callback icon to use font
- AF: Updated error icon to use fontawesome
-------------------------------------------------------------------------------------------------------------------
Version 1.8.beta4.1
- Added 'currency' to the options for number format in the number field.
- Updated logging so that number of Web API calls are recorded.
- Updated GFFormsModel::get_prepared_input_value(), used by GFFormsModel::create_lead() to handle multi-file fileupload fields correctly.
- Updated gravity_form() function call to take "echo" parameter.
- Updated {form_title} merge tag so that it is not available as a choice for field default values (since it is not supported there).
- Updated POT file
- Updated product labels to allow html formatting in the notifications and entry detail page instead of showing the html tags
- Fixed a parser error generated in the form list for certain systems.
- Fixed issue with {form_title} merge tag displaying for the default value of fields where it is not currently supported.
- Fixed default value merge tag list for hidden fields
- Fixed the WordPress logo not appearing on the preview and print pages
- API: Fixed the Web API paging offset for GET entries.
- AF: Updated Payment Add-On to reflect future change in subscription flow
-------------------------------------------------------------------------------------------------------------------
Version 1.8.beta4
- Updated upgrade process so that it gets aborted if database user doesn't have the proper permission to change or create tables
- Updated FontAwesome Webfont library to 4.0.3
- Updated GFFormsModel::create_lead() method to correctly populate multiple total fields
- Updated the credit card field HTML5 markup to use an HTML text input with a pattern instead of a number input
- Updated the styles of the form list and entry list to emphasise alternate rows
- Updated icons to use webfont where possible
- Updated CSS file removing IE 7 hacks and removed inline style blocks
- Updated the formatting for the Danish Krone
- Updated the text "Enable access to the API" so it can be translated
- Replaced icon images
- Replaced image-based icons with webfont icons where possible
- Removed IE7 CSS hacks from CSS files
- Removed several deprecated icon images
- Removed several inline style blocks and took care of some general code cleanup
- Fixed issue with license validation when upgrading from 1.7 to 1.8
- Fixed duplicate IDs for the credit card field
- Fixed various whitespace issues
- AF: Added Payment Add-On to help and provide consistency when creating payment processors.
- AF: Added remove_field() method for simplify removing a setting from any GFAddon settings array
- API: Fixed issue with add_entry() and update_entry() for payment entries where some values would be inserted without quotes generating errors.
- API: Fixed add_entry() and update_entry() for payment entries
-------------------------------------------------------------------------------------------------------------------
Version 1.8.beta3
- Added gformGetProductQuantity() JS function for getting current quantity of an item; extracted from gformCalculateProductPrice()
- Added GFFormDisplay::is_last_page() method as an easier method for determining if the last page of the form is being submitted
- Added support for GF_DEBUG constant on AJAX iframe to more easily allow viewing the contents of the iframe when debugging AJAX forms
- Added GFFormsModel::get_form_ids()
- Updated GFFormDisplay::register_form_init_scripts() function to include 'is_ajax' parameter
- Updated 'gform_register_init_scripts' action to pass 'is_ajax' parameter
- Updated gravityforms_addon_browser capability to be gravityforms_view_addons since that is the one actually in use
- Updated GFFormsModel::get_entry_meta() to support an array of form IDs and all form IDs (zero)
- Updated how GFFormsModel::prepare_value() handled credit card fields, allowing default formatting to be overwritten for the last credit card number
- Fixed issue where function setup_site had been changed to setup_database but code not updated; caused fatal error to be thrown
- Fixed entry sorting by entry meta
- Fixed multi-file merge tag output
- AF: Added caching for feed addon's get_feeds() method
- AF: Added support for 'validation_callback' and 'dependency' properties for Field Map child fields
- AF: Added base class for Payment Add-ons.
- AF: Updated payment add-on to only run authorize() method on the last page
- AF: Updated the results of fields without choices to display latest non-empty values instead of all values
- AF: Updated billing cycle strings to be translatable
- API: removed html, page and section fields from update_entry() and add_entry()
-------------------------------------------------------------------------------------------------------------------
Version 1.8.beta2
- Added multifile support to the 'post custom field' field (file upload field type)
- Added Entry ID, Entry Date, Starred, IP Address, Source URL, Payment Status, Payment Date, Payment Amount, Transaction ID and User to the list of available fields in the entry list search, export conditional logic and Add-On Framework results page filter.
- Added sorting by active/inactive in form list
- Added form-specific version of "gform_register_init_scripts" hook
- Added JS filter: "gform_spinner_url" to allow modifying the spinner URL with the new gformInitSpinner() function
- Added logging statements to GFFormsModel::create_post()
- Added logging statements to GFAsyncUpload::upload()
- Updated the Web API to respond always with a 200 HTTP status along with a JSON object containing the status code and response
- Updated gformInitSpinner() to be generic and moved to gravityforms.js
- Updated enqueue and print script functions to enqueue gravityforms.js when AJAX is enabled
- Updated confirmation and notification titles to link to edit view for that item
- Updated the help page: removed references to the forum
- Updated the field filters on the export entries page and results page to include greater than and less than operators by default
- Moved the QR Code library to the includes folder so it can be reused more easily
- Fixed element IDs for the date field
- Fixed search criteria operators for likert fields
- Fixed an issue with the field filter drop down which could result in duplicate inputs
- Fixed issue with the field filters where the mode is added more than once
- Fixed issue where datepicker was displaying below WP content
- Fixed issue where notification edit page was "busting out" of the WP wrapper
- Fixed the styles for the active/inactive column of the notification list and confirmation list
- Fixed the styles for the field header in the form editor in Chrome.
- Fixed an issue with sorting entries from the API
- Fixed issue with ReCAPTCHA field throwing Javascript error
- Fixed an issue with multi-file uploader opening multiple file dialogs
- Fixed issue with calculation formatting
- Fixed an issue with the multi-file uploader in IE8
- Fixed an issue with the multi-file uploader for forms with conditional logic in IE
- Fixed tabindex for AJAX enabled forms after validation
- Fixed validation of standard phone field when value is zero
- Fixed issue where no formatting was being applied to calculated results
- Fixed issue where [gravityforms] shortcode (plural) was not detected and scripts were not loading correctly
- Fixed bulk actions at the bottom of the form list to reflect recent changes
- AF: Added support for storing previous settings when saving new settings
- AF: Added support for plugin_settings_title() overridable function
- AF: Added "feedName" as default column and field setting for payment add-on
- AF: Added add_field_before() and add_field_after() functions to facilitate adding new fields to existing field groups
- AF: Added support for 'style', 'class', and 'id' properties to $sections
- AF: Added feed_settings_title() method to Feed Add-on rather; used as title of feed detail page
- AF: Renamed has_feed_for_this_addon() method to has_feed()
- AF: Updated rgempty() function to support passing just an array for empty() validation
- AF: Updated setting_dependency_met() method to handle when false value is passed as $dependency
- AF: Updated setting validation to not validate settings where dependency is not met
- AF: Updated all calls to $_short_title to use get_short_title()
- AF: all scripts and styles are now always registered so they can be used as dependencies
- AF: Removed some inline styles and added to admin.css
- AF: Updated section title markup to use <h4> and match styles of GF Form Settings
- AF: Updated get_setting() function to support a $settings parameter
- AF: Updated Payment Add-on fields to be grouped by their dependencies (based on transaction type)
- AF: Updated feed_callback icon to use font
- AF: Updated error icon to use fontawesome
- AF: fixed results filter mode initialization
- API: added further details to some error messages
- API: Updated Web API slug from gfwebapi to gravityformsapi
- API: Updated the API Functions to remove the capability checks
-------------------------------------------------------------------------------------------------------------------
Version 1.8.beta1
- Added API to allow developers to easily perform operations such as read/update/delete/create forms and entries
- Added Web API to allow developers to perform operations such as read/update/delete/create forms and entries from a remote web site
- Added filter to export to allow entries to be changed before exporting them
- Added support for mu-plugins deployment
- Added JS filter: "gform_calculation_result" to allow modifying the calculated result
- Added JS filter: "gform_calculation_format_result" to allow user to override default formatting to calculated result
- Added fontawesome webfonts and icon support for form admin
- Added trash for forms
- Added sorting to form list
- Added form locking
- Added entry locking
- Added form settings locking
- Added plugin settings locking
- Added locking to the Add-On Framework
- Added Romanian and Georgian translation files
- Added Kosovo (KV) to the country list
- Added Cayman Islands to country list