craftcms / craftcms/cms

[4.x]: not all validation errors shown in slideouts; no error indication across tabs

Open
#12,290 3 comments 1 reaction 1 assignee View on GitHub

@i-just is already working on this.

Since Nov 10, 2022.

bug craft4
Dominant language
PHP
Stars
3.6k
Forks
705
Avg merge
1d 5h
Merged PRs (30d)
134

Description

What happened?
Description

When editing content in a slideout, if there are validation errors, not all of them are shown under their respective fields and if there are multiple tabs in the element you're editing, tabs with fields containing errors don't have the usual error indication.

Errors are not shown at all for fields inside a matrix block.
Tabs are not indicated as having fields with errors.

Steps to reproduce
  1. Create e.g. entry with a required "entries" or "categories" field (element 1).
  2. Create entry or category with at least 2 tabs and some fields in each of them. One of those fields should be a matrix field with at least one block type and in the block type there should be at least one required field. All fields for this element should be required (element 2).
  3. Edit element 1 and add to it element 2 via the relations field. Double click on the selected entry/category to open the slideout. Make sure all required fields are empty and attempt to save.
Expected behavior

All errors are displayed under their respective fields.
Tabs have indication of having errors in them.

Actual behavior

There's no indication of which tabs contain errors.
For the matrix field, if it's required and no blocks are added, the error will show, but if you add a block with a required field and leave that field empty, error won't show for it - your element won't save but there's no indication why.

Craft CMS version

4.3.1

PHP version

8.1

Operating system and version

No response

Database type and version

No response

Image driver and version

No response

Installed plugins and versions

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.