* https://github.com/umbraco/Umbraco-CMS/issues/11366
Fallback to try login using super legacy HMACSHA1 even when the algorithm is stated as being HMACSHA256. The issue is that v8 saves HMACSHA256 on the user, but when configured to use legacy encoding it actually uses HMACSHA1
* Support migration of members with:
UseLegacyEncoding+Clear
UseLegacyEncoding+Encrypted (Requires machine key)
UseLegacyEncoding+Hashed
* Fixes unit tests
* Avoid exceptions + unit tests
* Save unknown algorithm if we dont know it, instead of persisting a wrong algorithm.
* Added setting to enable clear text password rehashes.
* Removed support for migration of clear text passwords
* Fixed unit test
* cherry-pick 13a51d32 (V8 History cleanup import/export)
Support import/export for doc type history cleanup policy (#11660)
* Support import/export for doc type history cleanup policy
* Support unset/null history cleanup value
* Resolve issue when api endpoints called without cleanup policy.
noop isn't good enough as map fails for response.
* null conditional vs null coalesce assignment
* Don't overwrite existing policy if omitted in import XML
* Update history cleanup warning and translations
* Change history cleanup alert to infomational styling
* Remove margin around history cleanup config
Co-authored-by: Ronald Barendse <ronald@barend.se>
# Conflicts:
# src/Umbraco.Core/Models/IContentType.cs
# src/Umbraco.Core/Packaging/PackageDataInstallation.cs
# src/Umbraco.Infrastructure/Persistence/Repositories/Implement/ContentTypeRepository.cs
# src/Umbraco.Infrastructure/Services/Implement/EntityXmlSerializer.cs
# src/Umbraco.Tests/Packaging/PackageDataInstallationTests.cs
# src/Umbraco.Tests/Services/Importing/ImportResources.Designer.cs
# src/Umbraco.Tests/Umbraco.Tests.csproj
# src/Umbraco.Web.UI/umbraco/config/lang/en.xml
# src/Umbraco.Web.UI/umbraco/config/lang/en_us.xml
# src/Umbraco.Web/Models/Mapping/ContentTypeMapDefinition.cs
# tests/Umbraco.Tests.Integration/Umbraco.Infrastructure/Services/Importing/ImportResources.resx
# tests/Umbraco.Tests.UnitTests/Umbraco.Core/Services/Importing/SingleDocType-WithCleanupPolicy.xml
* Remove namespace aliases
* Update IContentTypeWithHistoryCleanup documentation
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Update Smidge
* Add SmidgeRequestHelper to override the compression order
By default Smidge will always try and use Brotli (br), this compression is good in the the sense that it compresses the file quite a bit, but sadly it's super super slow, like 10 seconds for backoffice js slow.
* Remove unnecessary new keyword
Co-authored-by: nikolajlauridsen <nel@umbraco.dk>
* Update Smidge
* Add SmidgeRequestHelper to override the compression order
By default Smidge will always try and use Brotli (br), this compression is good in the the sense that it compresses the file quite a bit, but sadly it's super super slow, like 10 seconds for backoffice js slow.
* Remove unnecessary new keyword
Co-authored-by: nikolajlauridsen <nel@umbraco.dk>
* Rename AddOEmbedProvider to AddEmbedProvider
* Obsolete OEmbedProviders()
Obsolete OEmbedProviders() and proxy it to a new EmbedProviders()
* Rename EmbedProviderBase to OEmbedProviderBase
Rename EmbedProviderBase to OEmbedProviderBase
Add an obsoleted class EmbedProviderBase
Add todo's to all implementations
* remove unintentionally comment
Rem: automatic tests failures not linked to this PR.
* Create UmbracoBuilder.ContentApps.cs
Add an extension method to register content apps to make it possible to register content apps in the startup.cs class.
* Create UmbracoBuilder.CollectionsBuilders
* White space
* Rename OEmbedProvider to EmbedProvider
* Rename EmbedProvider to OEmbedProvider
* Added EntityController.GetUrlsByIds support for int & guid + update MNTP
Fixes issue with MNTP (for 8.18) in a partial view macro - GH #11631
Renamed GetUrlsByUdis to match, don't do this in v9 as it would be
breaking there, instead mark it obsolete.
TODO: v9 ensure integration test coverage, more painful here as no
WebApplicationFactory.
* Added partial test coverage for GetUrlsByIds.
This doesn't actually work in the backoffice because of GH #11448
So lets fix that next.
* Failing test demonstrating #11448
* Fix for #11448 getByIds doesn't work as expected.
ParameterSwapControllerActionSelectorAttribute - cached body survived between requests.
* Expand on sync vs async comment for future confused souls.
* Might aswell cache parsed json vs string for performance
* Make ParameterSwapControllerActionSelector remarks more accurate.
* Share deserialized request body between action constraint and model binder
* Be more defensive with RequestBodyAsJObject HttpContext item
Only store if deserialize success.
Don't assume key being present means can cast as JObject.
* Nest constant a little deeper.
* Final defensive tweak
* Apply pickDate-config setting to hide calendar in datepicker
A time-only picker is only possible if the format is configured like "hh:mm:ss". By using the pickDate config it is possible to determine whether the calendar should be shown or not, instead of depending on a certain time format.
* Changed timeformat to accept both hh:mm:ss and hh:mm
Edited the regex to math times with and without seconds. The calendar should not be shown anymore if the timeformat is (H)H:mm:ss or (H)H:mm.
* Removed unused config property pickDate
config.pickDate is never used and can be removed.
* remove pickDate config from datepickers config
* Support import/export for doc type history cleanup policy
* Support unset/null history cleanup value
* Resolve issue when api endpoints called without cleanup policy.
noop isn't good enough as map fails for response.
* null conditional vs null coalesce assignment
* Don't overwrite existing policy if omitted in import XML
* Update history cleanup warning and translations
* Change history cleanup alert to infomational styling
* Remove margin around history cleanup config
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Call onInit directly and add a timeout of 500ms
* Don't include hidden input types in the selector
* Ensure that the "next" focusable element is selected in case the first element is either the sub-nav or the ellipsis type
* Make sure tab is not selected first
* Changes to GetReducedEventList (#11444)
* Instead of only using first event, we combine events of same type into a single event with multiple arguments
* Added generic method to DRY up grouping logic.
* Renamed method to better reflect new functionality.
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Merge pull request #11360 from umbraco/v8/bugfix/11057-mandatory-image-not-validating-after-first-time-failure
Fixes 11057: Mandatory Image not validating after first time failure
(cherry picked from commit 5cc70d2160)
* Additional optional sanitization of scripting in TinyMCE (#10653)
(cherry picked from commit f68dba7bcb)
* Bump version to 8.17.1
* Hide localization key while loading
* ContentVersion cleanup backoffice UI (#11637)
* init rollback ui prototype
* add busy state to button, deselect version, add pagination status
* add localisation
* style current version
* disable rollback button when nothing is selected
* stop click event
* Endpoints for paginated content versions.
Light on tests, tight on time.
* Endpoints to "pin" content versions
* camel case json output.
Not sure why json formatter not set for controller, bit risky to add it now
* wire up paging
* wire up pin/unpin
* rename getPagedRollbackVersions to getPagedContentVersions
* prevent selection of current version and current draft
* add current draft and current version to UI
* remove pointer if the row is not selectable
* Improve warning for globally disabled cleanup feature.
* Fix current loses prevent cleanup state on publish.
* Added umbracoLog audit entries for "pin" / "unpin"
* Match v9 defaults for keepVersions settings
* Fix - losing preventCleanup on save current with content changes
* update pin/unpin button labels
* fix pagination bug
* add missing "
* always send culture when a doc type can vary
Co-authored-by: Mads Rasmussen <madsr@hey.com>
* Bugfix - DocumentVersionRepository.Get should not join culture variation
* Bugfix - Missing write lock
* Bugfix - Policy returns items to delete not items to keep.
Switch to inverse behavior.
Co-authored-by: Andy Butland <abutland73@gmail.com>
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
Co-authored-by: Niels Lyngsø <nsl@umbraco.dk>
Co-authored-by: Sebastiaan Janssen <sebastiaan@umbraco.com>
Co-authored-by: Ronald Barendse <ronald@barend.se>
Co-authored-by: Paul Johnson <pmj@umbraco.com>
Co-authored-by: Mads Rasmussen <madsr@hey.com>
* Add remove all property action
* Disable action if no current ids or new ids
* Use vm
* resolve conflict
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* Add conditional step that navigates users to the content section
* tweaked the text in the sections step as it refers to being in the content section, which may not always be the case (hence this PR)
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* Fix typo retrive to be retrieve throughout project.
* * Retain uppercase in descriptions.
* Add new directive fixing typo.
* Revert existing directive and template to previous to prevent breaking change.
* * Swap directives.
* * Revert.
* obsoletes public methods with typos. probably should find all refs and update those too
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* fixes#9894 . Truncate block editor model title to 100 chars.
* update to move max into controller logic
* null check name, just in case...
Co-authored-by: Mario Lopez <mario@monkii.com>
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* Ensure there is space enough to render thumbnail size label
* Simplify crop size label
* Add original gray color for min/max icons and adjust margin to compensate for slider handle
* Fixes the treepicker for granular permissions to use a select callback instead of submit with the full selection
* Introduced UserGroup2NodeDto table, to allow users to save empty arrays of permissions
* Cleanup
* Fixed null issue in audit logging
* Fixed migration
* Fixed GetDeleteClauses
* Fixes for SqlCE, do not run multiple comments on one sql request
* Align behavior between content>permissions and usergroups>granularPpermissions
- It is now possible to save default values in content>permissions like in usergroups>granularPpermissions
- It is now possible to differentiate between we save an empty collection and we remove the granular permissions in content>permissions
* Fix comments
Co-authored-by: Andy Butland <abutland73@gmail.com>
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Adds support for simple markdown in property descriptions, and extended descriptions
* removes max-width for property descriptions (doesn't make sense to limit these IMO)
* ContentVersion cleanup backoffice UI (#11637)
* init rollback ui prototype
* add busy state to button, deselect version, add pagination status
* add localisation
* style current version
* disable rollback button when nothing is selected
* stop click event
* Endpoints for paginated content versions.
Light on tests, tight on time.
* Endpoints to "pin" content versions
* camel case json output.
Not sure why json formatter not set for controller, bit risky to add it now
* wire up paging
* wire up pin/unpin
* rename getPagedRollbackVersions to getPagedContentVersions
* prevent selection of current version and current draft
* add current draft and current version to UI
* remove pointer if the row is not selectable
* Improve warning for globally disabled cleanup feature.
* Fix current loses prevent cleanup state on publish.
* Added umbracoLog audit entries for "pin" / "unpin"
* Match v9 defaults for keepVersions settings
* Fix - losing preventCleanup on save current with content changes
* update pin/unpin button labels
* fix pagination bug
* add missing "
* always send culture when a doc type can vary
Co-authored-by: Mads Rasmussen <madsr@hey.com>
# Conflicts:
# src/Umbraco.Core/ContentEditing/ContentVersionMetaViewModel.cs
# src/Umbraco.Core/Models/HistoricContentVersionMeta.cs
# src/Umbraco.Infrastructure/Services/Implement/ContentService.cs
# src/Umbraco.Tests/Persistence/Repositories/DocumentVersionRepository_Tests_Integration.cs
# src/Umbraco.Tests/Services/ContentVersionCleanupService_Tests_UnitTests.cs
# src/Umbraco.Web.BackOffice/Controllers/ContentController.cs
# src/Umbraco.Web.UI.Client/src/common/resources/content.resource.js
# src/Umbraco.Web.UI/config/umbracoSettings.Release.config
# src/Umbraco.Web.UI/umbraco/config/lang/en.xml
# src/Umbraco.Web.UI/umbraco/config/lang/en_us.xml
# src/Umbraco.Web/Umbraco.Web.csproj
* Added tests
* Misc - missed translation update
* Bugfix - DocumentVersionRepository.Get should not join culture variation
* Bugfix - Missing write lock
* Removed unnecessary view model
* Misc - kill some warnings
* Misc - Kill some more warnings
* Fixed cypress rollback test
* Bugfix - Policy returns items to delete not items to keep.
Switch to inverse behavior.
# Conflicts:
# src/Umbraco.Tests/Services/DefaultContentVersionCleanupPolicy_Tests_UnitTests.cs
Co-authored-by: Paul Johnson <pmj@umbraco.com>