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

#8640: Fixing consistency between different Enumeration Field flavors' data storage #8789

Merged
merged 5 commits into from
Apr 19, 2024

Conversation

BenedekFarkas
Copy link
Member

@BenedekFarkas BenedekFarkas commented Apr 18, 2024

Fixes #8640

Initial logic taken from #8460 (comment).
This PR supersedes #8298 and targets 1.10.x instead, because the changes are backwards-compatible.

Tested with a custom content type that has each of the Enumeration Field flavors and saved the same values before/after the change:

Before without anything selected (dropdown defaults to first item)

<EnumerationCheckbox>;;</EnumerationCheckbox>
<EnumerationDropdown>qwer</EnumerationDropdown>
<EnumerationListbox>;;</EnumerationListbox>

After without anything selected (dropdown defaults to first item)

<EnumerationCheckbox></EnumerationCheckbox>
<EnumerationDropdown>;qwer;</EnumerationDropdown>
<EnumerationListbox></EnumerationListbox>

Before with some values selected

<EnumerationCheckbox>;;qwer;asdf;</EnumerationCheckbox>
<EnumerationDropdown>asdf</EnumerationDropdown>
<EnumerationListbox>;;qwer;asdf;</EnumerationListbox>
<EnumerationRadio>yxcv</EnumerationRadio>

After with some values selected

<EnumerationCheckbox>;qwer;asdf;</EnumerationCheckbox>
<EnumerationDropdown>;asdf;</EnumerationDropdown>
<EnumerationListbox>;qwer;asdf;</EnumerationListbox>
<EnumerationRadio>;yxcv;</EnumerationRadio>

Also fixed the issues in 5e48b76 Sébastien pointed out in #8298 (comment).

@BenedekFarkas BenedekFarkas self-assigned this Apr 18, 2024
@BenedekFarkas BenedekFarkas changed the title 8640: Fixing consistency between different Enumeration Field fields' data storage 8640: Fixing consistency between different Enumeration Field flavors' data storage Apr 18, 2024
@BenedekFarkas BenedekFarkas linked an issue Apr 18, 2024 that may be closed by this pull request
@BenedekFarkas BenedekFarkas changed the title 8640: Fixing consistency between different Enumeration Field flavors' data storage #8640: Fixing consistency between different Enumeration Field flavors' data storage Apr 18, 2024
@BenedekFarkas BenedekFarkas merged commit fdbb06b into 1.10.x Apr 19, 2024
3 checks passed
BenedekFarkas added a commit that referenced this pull request Apr 19, 2024
* 6748: Stricter file and folder name validation (#6792)

* Media Library: More strict file and folder name validation, fixes #6748

* Resetting MediaLibraryService changes to 1.10.x

* Code styling in FileSystemStorageProvider

* Adding string file and folder name validation to FileSystemStorageProvider, so that MediaLibrary components don't need to do it separately

* Applying the same file and folder name validation to AzureFileSystem too

* Code styling and fixes in AzureFileSystem, MediaLibrary and IStorageProvider

* Simplifying invalid character detection

* Code styling

* Adding InvalidNameCharacterException to be able to handle invalid characters precisely at various user-facing components

* Updating MediaLibrary not to log an error when a file can't be uploaded due to invalid characters

---------

Co-authored-by: Lombiq <github@lombiq.com>

* #6793: Adding a content-independent culture selector shape for the front-end (#8784)

* Adds a new CultureSelector shape for front-end

* fixed query string culture change

* Moving NameValueCollectionExtensions from Orchard.DynamicForms and Orchard.Localization to Orchard.Framework

* Code styling

* Simplifying UserCultureSelectorController and removing the addition of the culture to the query string

* EOF empty lines and code styling

* Fixing that the main Orchard.Localization should depend on Orchard.Autoroute

* Code styling in LocalizationService

* Updating LocalizationService to not have to use IEnumerable.Single

* Matching culture name matching in LocalizationService culture- and casing-invariant

---------

Co-authored-by: Sergio Navarro <jersio@hotmail.com>
Co-authored-by: psp589 <pablosanchez589@gmail.com>

* #8640: Fixing consistency between different Enumeration Field flavors' data storage (#8789)

* Reworking EnumerationField's logic to store/retrieve its (selected) values

* Fixing exception when creating new item with CheckboxList flavor, adding more nullchecks and compactness

* Code styling in EnumerationFieldDriver

* Code styling in EnumerationField editor template

* Fixing that EnumerationFieldDriver and the EnumerationField editor template should read SelectedValues instead of Values directly

---------

Co-authored-by: Matteo Piovanelli <MatteoPiovanelli-Laser@users.noreply.github.com>

* Fixing merge

---------

Co-authored-by: Lombiq <github@lombiq.com>
Co-authored-by: Sergio Navarro <jersio@hotmail.com>
Co-authored-by: psp589 <pablosanchez589@gmail.com>
Co-authored-by: Matteo Piovanelli <MatteoPiovanelli-Laser@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Inconsistent use of EnumerationField
3 participants