* Grouped ShapeAlteration by feature before sorting them
* removed stopwatches
* Sorting approach can be selected by setting the GroupByFeatures option in HostComponents.config
* Added no term selection option when taxonomy field is not required and is set to be shown as a radio button set (single choice without autocomplete)
* Correctly checked the "no selection" option when SingleTermId == 0.
* If no term with the proper culture is found, SingleTermId is the id of the first valid checked term.
* Correction on firstTermForCulture query if there is no LocalizationPart.
Simplified query to check selected terms.
* Adding "Build Crowdin Translation Packages" workflow
* Adding PR trigger for testing
* Setting default shell to pwsh
* Changing extension from yaml to yml
* Revert "Adding PR trigger for testing" This reverts commit 8d00815cd5.
* Attempting to use the API key secrets directly
* Updating workflow to use andrii-bodnar/crowdin-request-action
* Removing v1 API call steps
* Fixing the underlying commit hash of the 0.0.2 tag
* Removing PR trigger
* Added Role Event Activities and Handlers for workflows.
* Removed and sorted using
* Added user as the Content parameter for worflow triggers when possible (UserAdded and UserRemoved role events).
* Added Username policies
* Added newline at the end of files
# Conflicts:
# src/Orchard.Web/Modules/Orchard.Users/Services/AccountValidationService.cs
* Added check for username length that must be under 255 characters (even if username policies are disabled).
If username isn't modified, policies are not enforced when saving the user inside backoffice.
Default length limits are 1 and 255.
* Added UsernameValidationError.cs
Added a setting to bypass non fatal errors and show them as warning when creating/editing users from the backoffice
Added the relative checkbox in RegistrationSettings.cshtml
Modified the UsernameMeetsPolicies method to use the new class
Modified AdminController (CreatePOST, EditPOST) and AccountController (Register)
* If username is an email check that it matches the specified email
* Added hints to UserRegistrationSettings view
Changed the severity of some custom policies errors
* Removed UsernameValidLengthAttribute.cs, if MinimumUsernameLength and MaximumUsernameLength settings don't make sense these settings are ignored
* bugfix. The admin could change the a username setting an already existing username.
Co-authored-by: Andrea Piovanelli <andrea.piovanelli@laser-group.com>
* Added hint in EditField view
* Added hint to EditTypeViewModel.cshtml to show technical name in list of content types
* fixed typo
* Clarified hint displaying technical name.
Co-authored-by: Andrea Piovanelli <andrea.piovanelli@laser-group.com>
* If there is nothing to import for MediaLibraryPickerField and ContentPickerField, the field doesn't need to be reset.
* Checked the presence of the field inside the import context to avoid resetting the field value even if the field isn't imported.
This applies to ContentPickerField, MediaLibraryPickerField and NumericField.
* Parameter validation for ChangeExpiredPassword action. Centralized check for
password expiration.
* Added ForcePasswordChange flag check to redirect to the correct page when that flag is true.
Co-authored-by: Andrea Piovanelli <andrea.piovanelli@laser-group.com>
* Added null check for last password change date. If that is null, use user date creation to check for password expiration.
* Added nullable date checks in AccountController ChangeExpiredPassword action too.
* Added nullable type to DescribeMemberContext for BooleanField and NumericField.
* Rollback of nullable member value for NumericFieldDriver, which is unnecessary because Editor function doesn't let a null value to be saved.
* Added checks on taxonomyId validity (it needs to be > 0) before executing queries that would return no result.
* Added id check on GetTaxonomy(int id) functions.
* Added id check on GetTerm(int id)
* Removed id check on GetTaxonomy(int) function to avoid changing previous behaviour.
* Returned "Array.Empty" instead of "new List" where an empty list must be returned.
* Added statuses management instead of notifier when catching file not found exception
# Conflicts:
# src/Orchard.Web/Modules/Orchard.MediaLibrary/Controllers/ClientStorageController.cs
* Visual studio automatic code formatting.
* Added permissions allowing management of users belonging to specific roles only
* Added condition to manage superuser
* Fixed the case where an user with no special ManageUserByRole Permission would
end up being able to manage a user with no role, because of the behavior of
Enumerable.All on empty collections.
* Created a new element when session widget has a different container than the widget in the import context (to ensure actual cloning of the elements and not just adding a reference to the old element from the original container).
* Some comment has been rewritten for clarity
* Added password history management to back office user password edit and made it working via IUserEventHandler calls.
* Added "password" parameter to "ChangedPassword" call.