Commit Graph

55 Commits

Author SHA1 Message Date
Dylan Wagstaff
c0a30f1b6a
FIX unrequire fields when they become dataless (#1016)
* FIX unrequire fields when they become dataless

When fields that collect input data are changed in configuration via the
CMS to become fields that no longer collect input data (e.g. TextField
-> HTML Block), submitting the resulting form results in a fatal error,
server 500 response, etc. due to trying to check if a field without data
(ever) has data in it.

To circumvent this we can set the required state to false if the field
is being converted to one that does not collect data (which FormField
API conveniently provides a check for).

* Move parent::onBeforeWrite() to top of function

Co-authored-by: Steve Boyd <emteknetnz@gmail.com>
2021-01-17 15:55:47 +13:00
Steve Boyd
81fcd669a2 FIX Show custom validation message for checkbox and radio groups 2020-07-21 17:30:55 +12:00
Steve Boyd
59cd87d842 FIX Trim recipient email addresses before write 2020-07-14 16:41:36 +12:00
Andre Kiste
3b40be3b8f
NEW Add folder confirmation modal when adding a new EditableFileField to a userform. (#972) 2020-06-10 16:59:01 +12:00
Steve Boyd
e54a825ea3 Merge branch '5.5' into 5 2020-05-27 13:41:51 +12:00
Maxime Rainville
39ee08cff9 Remove bool explicit type definition to please PHP 5.6 2020-01-13 12:25:47 +13:00
Maxime Rainville
d280c54860 Patch and reorganise some test 2020-01-13 12:15:34 +13:00
Maxime Rainville
793f437289 API Mark EditableFormField::EffectiveDisplayRules() for deprecation 2020-01-13 12:12:14 +13:00
Maxime Rainville
a0cedaeb38 Move conditionalFieldEnabled to EditableFormField as isDisplayed 2020-01-10 17:36:04 +13:00
Jess Champion
25bfc9eaf5 Required fields can have display rules. Hidden required fields are dynamically excluded from server and client side validation. 2020-01-10 10:41:59 +13:00
Robbie Averill
483fbc8499 FIX Preview email link now handles cases where it's loaded in the browser, requested via AJAX and used in a trait or a page context 2019-05-17 15:51:11 +12:00
Garion Herman
2f0aea847a Add presence validation for EmailRecipient recipient, add error handling 2019-05-03 16:46:32 +12:00
Robbie Averill
a4cd982637 Merge branch '5.3' 2019-03-26 14:46:22 +13:00
Robbie Averill
bf142eb6ef FIX Display rules for page breaks/editable form steps now works again
This was previously broken in a regression from https://github.com/silverstripe/silverstripe-userforms/pull/575
where the fields themselves could still be toggled, but the jQuery event dispatches for the form steps
were removed. This pull request re-introduces those jQuery event triggers when hiding and showing
editable form fields via display rules.
2019-03-25 15:09:38 +13:00
Michael Nowina-Krowicki
55ea24232b Test for EmailRecipient Subject with MergeField 2019-01-28 14:58:55 +10:30
Robbie Averill
1ad1019e0a
Merge pull request #852 from LukeAmos/issue/814
FIX Fixes #814 Renamed 'SubmittedFormEmailHtml' to 'SubmittedFormEmail'
2019-01-16 22:55:50 +01:00
Luke Amos
1efeeca6db FIX Fixes #814 Renamed 'SubmittedFormEmailHtml' to 'SubmittedFormEmail'
following peer feedback.  Updated respective code and unit test
2019-01-17 10:30:05 +13:00
Robbie Averill
f235c8642c Add unit tests for EditableNumericField::validate() 2019-01-16 21:59:02 +01:00
Luke Amos
2cb649abbb FIX #Fixes silverstripe#814 Fixing automated test for code. 2019-01-16 14:14:19 +13:00
Robbie Averill
9812d43a3f Disable transactions in UserDefinedFormTest to prevent fixture leaks 2018-06-20 17:08:20 +12:00
Robbie Averill
eddfa10cd3 Remove cache from get_one_by_stage calls in tests 2018-06-19 16:14:36 +12:00
Robbie Averill
398c65c540 Re-enable test for removing custom rules from live stage when forms are published with deletions 2018-06-19 16:04:43 +12:00
Chen Shenghan
8870833318 NEW empty default value for Country Dropdown 2018-05-01 16:07:03 +12:00
Chen Shenghan
4d89705fe6 NEW default value for Country Dropdown 2018-04-30 22:20:28 +12:00
Robbie Averill
8ae3e4a041
Adjust assertion to handle environmental influence, e.g. CWP default records 2018-03-27 10:34:42 +01:00
Robbie Averill
3e71cf7840
Add tests for duplicating multiple option fields, which should duplicate the options too 2018-03-27 10:34:41 +01:00
Robbie Averill
68a0723749 Remove incorrect @covers annotation 2018-03-26 10:46:17 +13:00
Robbie Averill
5cce5f5a17 FIX Allow editable form fields to have nullable titles rather than fallback to Name 2018-03-23 16:25:06 +13:00
Robbie Averill
d13bf1e0bc Add tests to ensure that editable form fields allow nullable titles 2018-03-23 16:18:32 +13:00
Robbie Averill
d19914044a FIX getFormParent does not automatically look up arbitrary test stubs, remove theme dependency 2018-03-19 16:00:57 +13:00
Dylan Wagstaff
48bf46215e FIX stop form items double duplicating (#728)
When calling `duplicate` on a form, a form field, or suchlike, the results
would be that all related items to the thing being duplicated (such as
fields for a form, or options to an editabledropdown) would be duplicated
_twice_; ie. where a form had two fields, it's new duplicate would have
four (each one occurring twice). We have stopped this in a backwards
compatible way - that is the bug was introduced with core 4.1, and this
change leaves the userforms module compatible with 4.0.
2018-03-05 14:31:33 +13:00
Andrew Aitken-Fincham
e2066a55b3 missing 'not', add alert-warning for unsaved form 2018-02-20 14:44:31 +00:00
Andrew Aitken-Fincham
0f6efea12a add proper fallbacks to cover tests 2018-02-14 11:30:35 +00:00
Robbie Averill
5695c9585a FIX Email templates for for submissions display correctly in preview 2018-01-24 15:17:03 +13:00
Robbie Averill
262510a450 FIX Cast template values as array, include list in CMS fields for recipients 2017-12-04 23:45:52 +13:00
Robbie Averill
ccf8f86bf8 FIX Update getIcon resource resolution methods 2017-11-03 11:12:55 +13:00
Will Rossiter
658b4dc02a Reduce code duplication, share test fixtures 2017-10-16 10:13:01 +13:00
Will Rossiter
cf6c1b44ba Controller should be under control namespace for consistency 2017-10-10 08:48:16 +13:00
Robbie Averill
6836174a65 API Remove deprecated migrateSettings() and secure assets integration code 2017-09-21 09:40:04 +12:00
Robbie Averill
faf04bff43 FIX Tests for email templates and whether they exist or not 2017-08-24 15:29:27 +12:00
Robbie Averill
12aad64972 FIX Update namespacing and include paths in new multiple option field tests 2017-08-22 16:40:18 +12:00
Robbie Averill
b4f0850b88 Make test fixtures more readable, update memory limit in Travis runs 2017-08-22 16:40:17 +12:00
Robbie Averill
1bd0b0c138 FIX Update EmailRecipient to look in root directory for templates, optionally, fix other tests 2017-08-22 16:40:17 +12:00
Robbie Averill
8fbe63e34a FIX Remove old upgrade maps, comment failing test (see todo), change publish strategy in UDF test 2017-08-22 16:40:17 +12:00
Robbie Averill
5c9417da21 API Implement cascading deletes API for model relations 2017-08-22 16:40:17 +12:00
Robbie Averill
98f69f344f FIX Use correct class names in EditableCustomRuleTest fixtures 2017-08-22 16:40:17 +12:00
Robbie Averill
59827e2011 API Remove UserFormRecipientEmail and use core Email class. Minor test fixes. 2017-08-22 16:40:16 +12:00
Robbie Averill
cdb2259307 FIX Validation related errors in unit tests and EmailRecipient 2017-08-22 16:40:16 +12:00
Robbie Averill
5af348894a FIX Update core API changes, implement last of namespacing in test classes, PSR-4 autoloader 2017-08-22 16:40:16 +12:00
Robbie Averill
32586b6363 Run PSR-2 linting 2017-08-22 16:40:16 +12:00