* 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>
* 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>
* Getting new netcore PublicAccessChecker in place
* Adds full test coverage for PublicAccessChecker
* remove PublicAccessComposer
* adjust namespaces, ensure RoleManager works, separate public access controller, reduce content controller
* Implements the required methods on IMemberManager, removes old migrated code
* Updates routing to be able to re-route, Fixes middleware ordering ensuring endpoints are last, refactors pipeline options, adds public access middleware, ensures public access follows all hops
* adds note
* adds note
* Cleans up ext methods, ensures that members identity is added on both front-end and back ends. updates how UmbracoApplicationBuilder works in that it explicitly starts endpoints at the time of calling.
* Changes name to IUmbracoEndpointBuilder
* adds note
* Fixing tests, fixing error describers so there's 2x one for back office, one for members, fixes TryConvertTo, fixes login redirect
* fixing build
* Updates user manager to correctly validate password hashing and injects the IBackOfficeUserPasswordChecker
* Merges PR
* Fixes up build and notes
* Implements security stamp and email confirmed for members, cleans up a bunch of repo/service level member groups stuff, shares user store code between members and users and fixes the user identity object so we arent' tracking both groups and roles.
* Security stamp for members is now working
* Fixes keepalive, fixes PublicAccessMiddleware to not throw, updates startup code to be more clear and removes magic that registers middleware.
* adds note
* removes unused filter, fixes build
* fixes WebPath and tests
* Looks up entities in one query
* remove usings
* Fix test, remove stylesheet
* Set status code before we write to response to avoid error
* Ensures that users and members are validated when logging in. Shares more code between users and members.
* merge changes
* oops
* Reducing and removing published member cache
* Fixes RepositoryCacheKeys to ensure the keys are normalized
* oops didn't mean to commit this
* Fix casing issues with caching, stop boxing value types for all cache operations, stop re-creating string keys in DefaultRepositoryCachePolicy
* oops didn't mean to comit this
* bah, far out this keeps getting recommitted. sorry
* cannot inject IPublishedMemberCache and cannot have IPublishedMember
* splits out files, fixes build
* fix tests
* removes membership provider classes
* removes membership provider classes
* updates the identity map definition
* reverts commented out lines
* reverts commented out lines
* Implements members Password config in db, fixes members cookie auth to not interfere with the back office cookie auth, fixes Startup sequence, fixes startup pipeline
* commits change to Startup
* Rename migration from `MemberTableColumns2` to `AddPasswordConfigToMemberTable`
* Fix test
* Fix tests, but adding default passwordConfig to members
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Getting new netcore PublicAccessChecker in place
* Adds full test coverage for PublicAccessChecker
* remove PublicAccessComposer
* adjust namespaces, ensure RoleManager works, separate public access controller, reduce content controller
* Implements the required methods on IMemberManager, removes old migrated code
* Updates routing to be able to re-route, Fixes middleware ordering ensuring endpoints are last, refactors pipeline options, adds public access middleware, ensures public access follows all hops
* adds note
* adds note
* Cleans up ext methods, ensures that members identity is added on both front-end and back ends. updates how UmbracoApplicationBuilder works in that it explicitly starts endpoints at the time of calling.
* Changes name to IUmbracoEndpointBuilder
* adds note
* Fixing tests, fixing error describers so there's 2x one for back office, one for members, fixes TryConvertTo, fixes login redirect
* fixing build
* Updates user manager to correctly validate password hashing and injects the IBackOfficeUserPasswordChecker
* Merges PR
* Fixes up build and notes
* Implements security stamp and email confirmed for members, cleans up a bunch of repo/service level member groups stuff, shares user store code between members and users and fixes the user identity object so we arent' tracking both groups and roles.
* Security stamp for members is now working
* Fixes keepalive, fixes PublicAccessMiddleware to not throw, updates startup code to be more clear and removes magic that registers middleware.
* adds note
* removes unused filter, fixes build
* fixes WebPath and tests
* Looks up entities in one query
* remove usings
* Fix test, remove stylesheet
* Set status code before we write to response to avoid error
* Ensures that users and members are validated when logging in. Shares more code between users and members.
* merge changes
* oops
* Fixes RepositoryCacheKeys to ensure the keys are normalized
* oops didn't mean to commit this
* Fix casing issues with caching, stop boxing value types for all cache operations, stop re-creating string keys in DefaultRepositoryCachePolicy
* oops didn't mean to comit this
* bah, far out this keeps getting recommitted. sorry
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* Updated the code docs to work with new assemblies and namespaces+added conditional build to default pipeline
* updated script that generate docs to use .NET 5
* Increased timeout of docs generation + changed to 5.x instead of 5.0.x
Fixed wrong namespace, that would be we not have docs for it.
* Fixed names in toc, so they are not that long and changed ordering
* try custom hack https://github.com/dotnet/docfx/issues/1254#issuecomment-294080535
* revert nonworking hack - Divide prep steps into two.
* Changed ordering
* Try to generate docs without the build.ps1 script
* Try to generate docs without the build.ps1 script
* Try to generate docs without the build.ps1 script
* Try to remove the examine one, to test if that is the reason it fails on azure pipeline
* Try to remove the sqlce one, to test if that is the reason it fails on azure pipeline
* Reintroduce Examine and SqlCE docs, as these was not the reason it will not work on azure pipeline.
* Test if azure wanna build the docs without explicit version
* Fixed two malformed xml docs
* hardcode version of docfx, to hopefully let it pass on azure pipeline
* hardcode version of docfx, to hopefully let it pass on azure pipeline
* Restructure azure pipeline yaml to have stages as areas instead of OS
* Restructure azure pipeline yaml to have stages as areas instead of OS
* yml restructure
* yml restructure
* yml restructure
* Not hardcoding docfx as the old versions also fail on azure
* Fixed Badly formed XML comments
* moved condition from job to stage
* split build and metadata
* indentation
* removed wrong char
* Try to add more loging on azure pipeline
* include less
* include less projects
* add one more project
* More azure pipeline test
* indentation
* All except infrastructure
* publish tasks
* Fix link on logo
* Extensions also included
* Less links
* re-introduced infrastructure to the list of projects for generate docfx for.
* Add filter
* Remove single warning for xmldocs
* more logging?
* skip some things from the metadata
* test using other image
* Test if exclude filter works
* Test with more explict filters, allowing some docs from Infrastructure
* binary search for the file that is the issue
* binary search for the file that is the issue
* binary search for the file that is the issue
* Exclude more folders
* Exclude more folders and files
* Only exclude files in root of namespace?
* more filter trials
* more filter trials
* add 2 nested folders
* all cs files?
* Remove test projects
* Toc
* Update build/azure-pipelines.yml
* move display name element
* Update build/azure-pipelines.yml
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Only allow not-admins to assign groups they have themselves
* Only admins is allowed to change password of other admins
* Fixed issue with deep clone of UserGroup. The Allowed sections was not cloned. This resulted in the allowed sections of the object stored in cache was updated, everytime we changed the allowed sections on an object cloned from the cache. Even if we did not save it.
* Only Admins are allowed to add sections to a user group, that they don't have access to themselves
* Align backend code with UI. User managers that is are not admin, can only assign the same groups new users, that they have themselves.
* Make existingGroupAliases and empty array when creating a new user
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Rename Umbraco.Core namespace to Umbraco.Cms.Core
* Move extension methods in core project to Umbraco.Extensions
* Move extension methods in core project to Umbraco.Extensions
* Rename Umbraco.Examine namespace to Umbraco.Cms.Examine
* Move examine extensions to Umbraco.Extensions namespace
* Reflect changed namespaces in Builder and fix unit tests
* Adjust namespace in Umbraco.ModelsBuilder.Embedded
* Adjust namespace in Umbraco.Persistence.SqlCe
* Adjust namespace in Umbraco.PublishedCache.NuCache
* Align namespaces in Umbraco.Web.BackOffice
* Align namespaces in Umbraco.Web.Common
* Ensure that SqlCeSupport is still enabled after changing the namespace
* Align namespaces in Umbraco.Web.Website
* Align namespaces in Umbraco.Web.UI.NetCore
* Align namespaces in Umbraco.Tests.Common
* Align namespaces in Umbraco.Tests.UnitTests
* Align namespaces in Umbraco.Tests.Integration
* Fix errors caused by changed namespaces
* Fix integration tests
* Undo the Umbraco.Examine.Lucene namespace change
This breaks integration tests on linux, since the namespace wont exists there because it's only used on windows.
* Fix merge
* Fix Merge