Commit Graph

11299 Commits

Author SHA1 Message Date
Nikolaj Geisle
1810b7a744 Change allowedactions 2022-05-11 13:34:35 +02:00
Nikolaj Geisle
e839e09680 Finish default granular permissions for languages 2022-05-11 12:55:42 +02:00
Nikolaj Geisle
e270f90296 Add granular permission to variants 2022-05-11 12:31:51 +02:00
Nikolaj Geisle
0d16de1b64 Merge remote-tracking branch 'origin/v10/dev' into v10/feature/variant-permissions 2022-05-10 15:34:46 +02:00
Nikolaj Geisle
eda9328f99 Dissallow users to save languages they do not have access to 2022-05-10 14:57:58 +02:00
Mads Rasmussen
08dedf57c5 change help text to limit 2022-05-10 12:45:36 +02:00
Nikolaj Geisle
3bbfc427fc Fix breaking change in mapping 2022-05-10 12:37:52 +02:00
Nikolaj Geisle
52f17cd25f Remove defaulting to return all languages 2022-05-10 12:33:09 +02:00
Nikolaj Geisle
5c2b0121ba Create new table in database for usergroup languages 2022-05-10 11:03:31 +02:00
Bjarke Berg
1e3b806bd8 Merge remote-tracking branch 'origin/v10/10.0' into v10/dev
# Conflicts:
#	src/Umbraco.Core/Deploy/IValueConnector.cs
2022-05-10 09:56:17 +02:00
Andy Butland
5810c2d35b Further NRT updates for Deploy (#12375)
* Nullability modifications to grid cell values and connector.

* Nullable updates to IDataTypeConfigurationConnector.

* Apply suggestions from code review

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
(cherry picked from commit 109d2f191e)
2022-05-10 09:51:01 +02:00
Andy Butland
ea77c9a4fc Further NRT amends (#12363)
* Amended nullability of base Deploy classes.

* Ensured ContentItemDisplay.Variants is non-nullable.

* Set IArtifactSignature.Dependencies to be non-nullable.

* Update template collection retrieval to be non-nullable.

* IMediaService.GetRootMedia to be non-nullable.

* Non-nullable collection for IMemberService.GetMembersByMemberType.

* Non-nullable collection for member role retrieval.

* Non-nullable collection for root dictionary items.

* Non-nullable collection for child dictionary items.

* Applied suggestions from code review

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>

* Remove extra dot

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
(cherry picked from commit 63b77b7743)
2022-05-10 09:50:50 +02:00
Andy Butland
fbdf704567 Further amends to NRT definitions (#12356)
* Ensured all GetContainers methods in IDataTypeService return non-nullable collections.

* Further amends to ensure services return non-nullable collections.

* Aligned nullability of IMediaService.GetMediaFileContentStream(string

* Removed return of nullable streams from IFileService.

* Fixed nullability mismatch.

(cherry picked from commit 735086a747)
2022-05-10 09:50:41 +02:00
Andy Butland
b1ece9b202 NRT amends necessary for Deploy (#12357)
* Allowed null item retrievel in IDeployContext.

* Allowed null item retrievel in IImageSourceParser.

* Allowed null item retrievel in IMacroParser.

* Set null syntax for other Deploy interfaces.

(cherry picked from commit a42ff2c267)
2022-05-10 09:50:35 +02:00
Nikolaj Geisle
a5df4f169b Fix test error 2022-05-09 13:35:23 +02:00
Mads Rasmussen
4ba094ff75 Merge branch 'v10/dev' into v10/feature/variant-permissions 2022-05-09 11:08:04 +02:00
Andy Butland
109d2f191e Further NRT updates for Deploy (#12375)
* Nullability modifications to grid cell values and connector.

* Nullable updates to IDataTypeConfigurationConnector.

* Apply suggestions from code review

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
2022-05-06 18:04:26 +02:00
Andy Butland
63b77b7743 Further NRT amends (#12363)
* Amended nullability of base Deploy classes.

* Ensured ContentItemDisplay.Variants is non-nullable.

* Set IArtifactSignature.Dependencies to be non-nullable.

* Update template collection retrieval to be non-nullable.

* IMediaService.GetRootMedia to be non-nullable.

* Non-nullable collection for IMemberService.GetMembersByMemberType.

* Non-nullable collection for member role retrieval.

* Non-nullable collection for root dictionary items.

* Non-nullable collection for child dictionary items.

* Applied suggestions from code review

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>

* Remove extra dot

Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
2022-05-06 10:13:58 +02:00
Andy Butland
5be156bb22 Ensured container collections retrieved from content type services return empty rather than nullable. (#12360)
* Ensured container collections retrieved from content type services return empty rather than nullable.

* Reverted change to ILocalLinkParser.

* Reverted change to ILocalLinkParser (2).

* Update GetByParentOrChildId in IRelationService to return non-nullable result.

* Added obsoleted constructor due to change in MemberTypeService.

* Updated nullability of Compare method parameters in IServiceConnector.

* Adjusted nullability of method on IValueConnector.

* Removed nullability of ArtifactDeployState.
2022-05-05 12:56:44 +02:00
Andy Butland
735086a747 Further amends to NRT definitions (#12356)
* Ensured all GetContainers methods in IDataTypeService return non-nullable collections.

* Further amends to ensure services return non-nullable collections.

* Aligned nullability of IMediaService.GetMediaFileContentStream(string

* Removed return of nullable streams from IFileService.

* Fixed nullability mismatch.
2022-05-04 19:05:10 +02:00
Andy Butland
a42ff2c267 NRT amends necessary for Deploy (#12357)
* Allowed null item retrievel in IDeployContext.

* Allowed null item retrievel in IImageSourceParser.

* Allowed null item retrievel in IMacroParser.

* Set null syntax for other Deploy interfaces.
2022-05-04 19:01:54 +02:00
Paul Johnson
09b210d5de Hack fix - SQLite deadlock issue for login after session timeout. 2022-05-04 10:13:27 +01:00
Bjarke Berg
6752f4b2c6 Fixed issue with missing auto complete 2022-05-04 10:10:14 +02:00
Bjarke Berg
5636d4baf7 Fixed namespace that was original an incorrect merge from v8 to v9 (#12347) 2022-05-04 08:10:27 +02:00
Bjarke Berg
84c1799049 Merge remote-tracking branch 'origin/v10/contrib' into v10/dev 2022-05-03 21:36:30 +02:00
Chad
0561d4b5a1 Async support for content finders. Improve log performance. (#12340) 2022-05-03 21:29:15 +02:00
Bjarke Berg
daac1a4bac Merge remote-tracking branch 'origin/v10/contrib' into v10/dev
# Conflicts:
#	src/Umbraco.Web.UI.Client/package-lock.json
2022-05-03 21:17:10 +02:00
Chad
9f4ff0a398 async tree search (#12344) 2022-05-03 21:13:27 +02:00
Ronald Barendse
23072a500c v10: Fix Block List settings exception and optimize PVCs (#12342)
* Don't use MapModelType to get model type

* Optimize block list item activation (cache constructors)

* Fix exceptions in NestedContentSingleValueConverter (zero content types or multiple stored items)

* Add IPublishedModelFactory.GetModelType method to remove work-around
2022-05-03 19:23:15 +02:00
Bjarke Berg
957a9b8016 Bugfix: Read snippets from embedded resources.. (#12334)
* update new location of anime.js

* set new location of 'diff' and update to new global Diff vs JsDiff

* Embedded snippets

* Do not copy an empty folder

Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
2022-05-03 13:29:31 +02:00
Bjarke Berg
13f6d4791c Move umbraco views to static assets and make that an RCL + Embedded language files (#12324)
* RCL for static assets to replace the nuspec

* Fix build

* Fix unit tests

* clean up in build.ps1

* Removed test (lang files will be removed later anyway)

* Fixed namespaces.. + Ensure we set web root path if missing (e.g. wwwroot folder do not exist) + Added StaticWebAssetBasePath

* fixed namespace

* cleanup

* Set root variable

* Added static assets

* Experimenting with StaticWebAssetBasePath

* Embedded lang files into Umbraco.Core

* Removed legacy test. New test can be implemented instead

* Fixed tests

* clean up

* Fix merge issue
2022-05-02 19:38:33 +02:00
Ronald Barendse
f00bfc408e v10: Make language name editable (#12243)
* Update language models to get and set manual name

* Save custom language name in controller

* Rewrite AngularJS language edit view and controller

* Cleanup language overview

* Remove icon from language overview

* Make styling of control group the same as properties

* Ensure both ISO code and culture name are set in language model

* Use new language model constructor

* Update tests to use new language constructor

* Update culture name in dictionary package export

* Use language name in dictionary

* Fix language nullability issues

* Cleanup GetAllCultures and added null checks

* Re-add obsolete constructors

* Make language name required and update Cypress test

* Fix routing/saveNewLanguages Cypress test

* Make language name optional (improved backwards compatibility)

Co-authored-by: Ronald Barendse <ronald@panoramastudios.nl>
2022-05-02 15:42:19 +02:00
Andy Butland
46373ebfb0 Allowed IfNullOrWhiteSpace to take null input. (#12328) 2022-05-02 12:21:57 +02:00
Ronald Barendse
09731a9168 v10: Remove LegacyDistinctBy (#12326)
* Obsolete LegacyDistinctBy

* Remove usage of LegacyDistinctBy

* Remove LegacyDistinctBy
2022-05-02 10:57:38 +02:00
Andy Butland
96d33201aa Few more NRT tweaks (#12323)
* Amended GetAll() on IDataTypeService to return an empty collection rather than null.

* Added a ClearSessionValue method to ISessionManager (given you can no longer set a value to null).

* Allow for null values in a StatefulNotification.

* Removed obsoletion of synchronous messages on TreeControllerBase.

* Fixed further CS8620 warnings in core project.

* Further fix to nullable warning.

* Aligned nullablility of retreiving tree nodes and menus, synchronously or asynchronously (such that we no longer can get null values, always empty collection objects).
2022-05-01 08:18:09 +02:00
Nikolaj Geisle
f23b57db65 V10: fix more nullable references (#12321)
* Add Nullable and WarningsAsErrors to Build.props

* Remove Nullable from cs proj, add ImplicitUsings to build.props

* Fix errors in core

* Fix in JsonSchema

* Fix infrastructure

* Add non-ambiguous using

* Fix Web/Lucene

* Fix backoffice

* Fix up new build errors from merge

Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
2022-04-29 15:02:36 +02:00
Bjarke Berg
285c7e75a2 https://github.com/umbraco/Umbraco-CMS/issues/12276 (#12295)
Skip surrogate pairs (e.g. emojis) when making clean stings.
2022-04-29 13:46:19 +02:00
Ronald Barendse
1a82e0854a v10: Update to ImageSharp v2 (#12185)
* Update to ImageSharp 2.1.0 and ImageSharp.Web 2.0.0-alpha.0.23

* Rename CachedNameLength to CacheHashLength and add CacheFolderDepth setting

* Replace PhysicalFileSystemProvider with WebRootImageProvider

* Support EXIF-orientation in image dimention extractor

* Remove virtual methods on FileProviderImageProvider

* Simplify FileInfoImageResolver

* Update to SixLabors.ImageSharp.Web 2.0.0-alpha.0.25 and remove custom providers

* Make CropWebProcessor EXIF orientation-aware

* Improve width/height sanitization

* Also use 'v' as cache buster value

* Add WebP to supported image file types

* Update to SixLabors.ImageSharp.Web 2.0.0-alpha.0.27 and fix test

* Fix rounding error and add test cases

* Update to newest and stable releases

* Move ImageSharpImageUrlGenerator to Umbraco.Web.Common

* Use IConfigureOptions to configure ImageSharp options

* Implement IEquatable on ImageUrlGenerationOptions classes

* Fix empty/null values in image URL generation and corresponding tests

* Use IsSupportedImageFormat extension method

* Remove unneeded reflection
2022-04-29 13:16:24 +02:00
Nikolaj Geisle
cf2b9a0f21 V10: Move core services to core project (#12314)
* Move AuditService to core project

* Move two factor login service to core

* Move ServerRegistrationService to core

* Move BasicAuthService to Core project

* Move IdKeyMap to core project

* Added CacheInstructionService to the infrastructure namespace

* Move DataTypeService to core namespace

* Update CacheInstructionService.cs to use CoreScopeProvider

* Move core editors to core

* Move more Property editors and configuration

* Remove obsoleted constructors in internal classes

* Update PropertyEditors to use new ctors

* Fix propertyEditors to use new ctors

* Use the right property editor constructors

* add DI in the property method

* Update grid to use new ctor

* Fix non-assignment of variable

* Apply suggestions from code review

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>

* Fix suggestions from code review

Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
Co-authored-by: Kevin Jump <kevin@thejumps.co.uk>
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
2022-04-29 11:52:58 +02:00
Jacob Overgaard
32a3fb9f60 Merge remote-tracking branch 'origin/v10/dev' into v10/feature/variant-permissions 2022-04-29 09:27:08 +02:00
Jacob Overgaard
f831af207b add basic structure for languages and allowedLanguages 2022-04-29 09:09:40 +02:00
Andy Butland
b187c89113 Updates to null reference types (#12317)
* Amended IFileSystem OpenFile to return Stream.Null rather than a nullable stream.

* Updated IUmbracoMapper to map enumerables without null elements given non-null inputs.

* Amended EntityRepositoryBase to not return null collections.

* Made IPublishedElement.Properties a non-nullable collection.
2022-04-29 08:19:34 +02:00
Paul Johnson
95aa143db0 v10 make migration from v9 less painful WRT IScope (#12293)
* Restore IEventDispatcher

* Fix breaking changes WRT IScopeProvider and IScope

* Update internal usage.

* Update src/Umbraco.Core/Services/UserService.cs

* Better obsolete message

Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
2022-04-26 10:22:37 +01:00
Sebastiaan Janssen
77ebc22b5b Merge branch 'v9/dev' into v10/dev 2022-04-26 10:35:09 +02:00
Nikolaj Geisle
7483a706ac V9/feature/log telemetry level changing (#12299)
* Add logging to SetConsentLevel

* Obsolete old ctor and change logging to email

* Fixed a few issues with MetricsConsentService logging

* Fixed null check

Co-authored-by: Bjarke Berg <mail@bergmania.dk>
2022-04-26 08:50:50 +02:00
Paul Johnson
551f523079 V10 - Reduce usage of temp AspNetCoreHostingEnvironment (#12270)
* Move MapPathWebRoot & MapPathContentRoot to extension methods.

* Set AspNetCoreHostingEnvironment ApplicationId without service provider.

* Drop some usages of TempHostingEnvironment

* Logging setup cleanup - AppDomainId has no value (it is always "1")

Creating new AppDomains isn't possible in .Net core.
Attempting to do so results in a platform exception.

A dotnet core process has a single AppDomain instance whose Id property
is always the integer 1.

* Setup logging without IHostingEnvironment

* Mark IUmbracoBuilder.BuilderHostingEnvironment obsolete
And remove internal usages.

* Typeloader no longer uses umbraco-types.list

* Added UmbracoHost - setup serilog two-stage init.

* Add ApplicationIdEnricher

* Defensive tweaks for those not using UmbracoHost

* Drop UmbracoHost static class

* Setup runtime logger without host builder extensions.

* Prevent RefreshingRazorViewEngine related explosions

* Filescoped namespaces for new classes.

* Apply suggestions from code review
2022-04-25 16:27:53 +02:00
Nikolaj Geisle
83419a30ea Fix build errors after merging 2022-04-22 12:37:20 +02:00
Nikolaj Geisle
70a75d8c9b Merge remote-tracking branch 'origin/v10/dev' into v10/feature/nullable-reference-types-in-Umbraco.Web.Backoffice
# Conflicts:
#	src/Umbraco.Core/Models/Mapping/MemberTabsAndPropertiesMapper.cs
#	src/Umbraco.Core/Models/Member.cs
#	src/Umbraco.Core/Models/Membership/User.cs
#	src/Umbraco.Core/Services/MemberService.cs
#	src/Umbraco.Infrastructure/Security/BackOfficeUserStore.cs
#	src/Umbraco.Infrastructure/Security/MemberUserStore.cs
2022-04-22 12:32:57 +02:00
Bjarke Berg
379d2e3e4e Dependency updates (#12283)
* Upgraded MailKit

* Upgraded Microsoft.* packages

* Upgrades various nuget packages to latest version

* Upgrades various nuget packages related to test
2022-04-22 09:24:30 +02:00
Mole
7df4f84247 V10: Migrate member properties to columns on the member table (#12205)
* Add new columns to the member table

* Add missing IsApproved column

* Add joins with nested query

* Add query for selecting new column values from existing members

* Update the member data from the same query

* Make escapes work for sqlite

* Use GetFieldNameForUpdate instead of GetFieldName

* Left join on memberDto

* Remove the now unused property types and data

* Don't create member columns as properties anymore

* Store old properties in fields on member

Also switch the dates to nullable since they can be null

* Map columns when mapping from DTO to Member object

* Display columns in the member content app

* Fix null exception when creating new user

* Hide value if user doesn't have access to sensitive data

* Remove hardcoded member properties

* Obsolete old member alias constants

* Map and persist member properties

* Correctly update LastLogin when member logs in

* Map IsApproved and IsLockedOut when saving member in backoffice

* Update the query mappers for members

* Fix member service tracks dirty changes test

* Remove no longer existing property types from member type builder

* Fix null error in UpdateMemberProperties

* Fix builder tests

* Fix SetupMemberTestData in MemberControllerUnitTests

* Let LastLoginDate be null and handle check in controller

There's no reason to default a perfectly nullable property to default(DateTime)

* Add translation key for is approved and use that instead of constant

* Obsolete old label constants

* Fix whitespace post merge

* Fix up test comments

* Apply suggestions from code review

Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>

* Fix member properties always being sensitive

Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
2022-04-21 14:47:27 +02:00