Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mandatory field validation failing for nested blocklists #17852

Open
GwylRichards-CTI opened this issue Dec 20, 2024 · 2 comments
Open

Mandatory field validation failing for nested blocklists #17852

GwylRichards-CTI opened this issue Dec 20, 2024 · 2 comments

Comments

@GwylRichards-CTI
Copy link

Which Umbraco version are you using? (Please write the exact version, example: 10.1.0)

13.5.2

Bug summary

Blocklist fields marked as mandatory can be left empty and the page can still be saved and published with no validation errors

Specifics

This occurs in 2 places on our site, both are separate blocklists.

The issue occurs within a block inserted into a page's blocklist. If that block's Document Type contains a field using a separate blocklist, marking that field as mandatory has no effect.

As with other (i.e. unnested) blocklists, if no blocks are entered into the field which is marked mandatory, validation would fail and the page couldn't be published. This doesn't happen with blocklists used in doctypes within blocklists.

Steps to reproduce

Screenshot 2024-12-20 at 12 04 29 The above screenshot passes validation like that and can be saved and published.

To recreate the above:

  1. Create a blocklist - data type x
  2. Create a page that contains a field using data type x
  3. Create a second blocklist - data type y
  4. Add data type y to a doctype selectable by document type x as a block
  5. Make data type y mandatory within data type x
  6. See that making data type y mandatory has no effect on validation

Expected result / actual result

The empty blocklist, data type y as mentioned above, should fail validation if no blocks are selected and the page should not be allowed to be published.

Currently, this doesn't happen and the page can be published with data type y empty while marked mandatory.

Copy link

Hi there @GwylRichards-CTI!

Firstly, a big thank you for raising this issue. Every piece of feedback we receive helps us to make Umbraco better.

We really appreciate your patience while we wait for our team to have a look at this but we wanted to let you know that we see this and share with you the plan for what comes next.

  • We'll assess whether this issue relates to something that has already been fixed in a later version of the release that it has been raised for.
  • If it's a bug, is it related to a release that we are actively supporting or is it related to a release that's in the end-of-life or security-only phase?
  • We'll replicate the issue to ensure that the problem is as described.
  • We'll decide whether the behavior is an issue or if the behavior is intended.

We wish we could work with everyone directly and assess your issue immediately but we're in the fortunate position of having lots of contributions to work with and only a few humans who are able to do it. We are making progress though and in the meantime, we will keep you in the loop and let you know when we have any questions.

Thanks, from your friendly Umbraco GitHub bot 🤖 🙂

@NguyenThuyLan
Copy link
Contributor

NguyenThuyLan commented Dec 26, 2024

Thank you @GwylRichards-CTI for reporting this issue. I was able to reproduce it on v13.6.0-rc.
Summary steps to reproduce:

  1. Create an element type name stringElement that includes a text box.
  2. Create an element type named blockElement that includes a Block List property, set Available Blocks as stringElement and set mandatory for this Block List property.
  3. Create a document type that includes blockElement.
  4. Create a new content from the document type (step2)
  5. Add new blockElement to the block list in the content page, (don't add new stringElement inside nested blockElement)
  6. Click Save and Publish

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants