* feat: uses the app-logo component to show the large logo
* feat: rename and publish CSS variables to modify the logo
* feat: sets size of logo to 55px to match login screen
* feat: adds css variables to customize the dimensions of the login logo
* fix: uses `ifDefined` in case logo is not defined
* fix: uses the intrinsic logo path from `when()`
* Fixed up import types
* uses the intrinsic alternative logo path from `when()`
* feat: changes logo based on theme
* feat: forces dark theme on the header logo
* feat: adds blue logomark
* feat: adds logo-alternative path to the backend
* chore: minify logos
* feat: optimises logo sizes
---------
Co-authored-by: leekelleher <leekelleher@gmail.com>
* init
* Aligned default values on security settings.
* Added validator for security settings.
* Provide default implementation for get members by email.
* Refactored constructor of MemberController.
* Validate on unique member email only when configured to do so.
* Further code tidy and use of DI in constructor.
* Used new constructor in tests.
* Add unit test for modified behaviour.
* Removed validator for security settings (it's not necessary, I got confused with users and members).
* Spelling.
---------
Co-authored-by: Andy Butland <abutland73@gmail.com>
* Add TimedScope
* Use TimedScope in login endpoint
* Use seperate default duration and only calculate average of actual successful responses
* Only return detailed error responses if credentials are valid
* Cancel timed scope when credentials are valid
* Add UserDefaultFailedLoginDuration and UserMinimumFailedLoginDuration settings
* Add notification handler
* Add IsContentPublished that bypasses caching
* Add clarifying comment
* Refactor, to never hit the db
* Remove old comment
* Don't add warnings if disabled
* Dedicated configuration option to suppress unroutable content warnings
---------
Co-authored-by: kjac <kja@umbraco.dk>
* Created explicit endpoints returning the login image instead of leaking the configuration. Thereby some hardcoded values have been changed, but the url will now be the same every time.
* Remove magic concatenation for action lookup
* remove unused backoffice asset (login.jpg)
* remove unused umbraco logo assets
* add manifest handlers
* add mock handlers for the `security/back-office/graphics` endpoints to the backoffice
* add mock handlers for the `security/back-office/graphics` endpoints to the login screen
* chore: update msw service worker
* feat: make static assets available for consumption without copying them from the login project
* update consts with new location for static assets
* feat: prefix login assets with `login-`
* remove unused asset `logo.png`
* feat: introduce a `/back-office/graphics/logo` endpoint to serve the logo "mark" used throughout all applications
* feat: use the alternative logo for disabled javascript warning
* feat: use the umbraco logo on the NoNodes.cshtml page
* Do not expose the new readme in the package
* feat: add logo.svg
* feat: add `umb-app-logo` element to display the backoffice logo including server url and appropriate tags
* feat: use the new `umb-app-logo` element relevant places and make sure to add the serverUrl in front of other graphics
* feat: move logic to connectedCallback to prevent error from non-existing element
* revert usage of HideBackOfficeLogo
* feat: add alt text to logos
* feat: add obsolete message and a hint to use BackOfficeLogo insted
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Revert #14234
* Make the boot failure message more descriptive when unable to connect to DB
* Update src/Umbraco.Infrastructure/Runtime/RuntimeState.cs
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Revert changes
* Obsolete InstallMissingDatabase from V16
---------
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Replace obsolete UserGroup Alias consts to key equivalent in tests
* Update use of usergroup alias consts to key equivalent in IsSystemgroup extension method
* Obsolete (internally) unused helper function which purpose doesn't even seem true
* Prepped EmbedProviders for proper removal of non async methods and unneeded proxy methods
* Remove obsoleted UmbracoPath and updated internal references
* Corrected mistake and updated unittets
* Update usergroup tests that use aliases for "system" groups
* Replace more uses of globalsettings.UmbracoPath
* Remove GetDateType by key non async
* Cleanup some usages of hostingEnvironment.MapPathContentRoot
* More easy obsoletion cleanup
* Small Typeload cleanup
* More obsolete removal
* Deploy obsoletion cleanup
* Remove obsolete methods from OEmbedProviderBase.cs
---------
Co-authored-by: Zeegaan <skrivdetud@gmail.com>
* Move DocumentCacheService
* Add clear all documentws from memory cache
* Fix RedirectTracker
* Implement refresh node/branch/all/delete
* Only update databasecache in RefreshContentAsync
* Fix tests
* Skip blueprints in cache
* Clear caches when contenttype is updated
* Clear cache on data type update
* Refresh media
* Only update memory cache from refreshers
* Fix imports
* Add named options
* Use cache entry settings in media
* Obsolete nucache settings
---------
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* First stab
* Delivery API client credentials + a little refactor to ensure unique client IDs
* Introduce user type
* Support user type in the Management API
* Clean up TODOs
* Update API user last login date when issuing a token
* Better error reporting for mismatched user types
* Do not allow password change or reset for API users
* Update OpenApi.json
* Revert change
* Remove obsolete comment
* Make applicable classes abstract or sealed
* Review changes
* Add endpoint for retrieving all user client IDs
* Update to dotnet 9 and update nuget packages
* Update umbraco code version
* Update Directory.Build.props
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
* Include preview version in pipeline
* update template projects
* update global json with specific version
* Update version.json to v15
* Rename TrimStart and TrimEnd to string specific
* Rename to Exact
* Update global.json
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Remove includePreviewVersion
* Rename to trim exact
---------
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Adds `preview.js`
to replace the legacy `umbraco.websitepreview.min.js` script.
Updates the content's `Id` with `Key`.
* allow any protected route to render the backoffice
* optimise component so it doesn't need to observe its attributes and use the popover API to show it on top of the content
* handle case where the culture could be set to "invariant" - we just want to set the "lang" attribute to the default ui language
* convert 'end preview' into an api request and reset the style of the button
* minimize function
* move static text into constants
---------
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Sends GUID instead of the numeric ID for SignalR Preview Hub
* Add possibility to set cookies as HttpOnly
* Set UMB_PREVIEW cookie as HttpOnly
* fixup! Add possibility to set cookies as HttpOnly
* Refactor ContentFinderByIdPath to more readable
* Create ContentFinderByKeyPath reusing logic from ContentFinderByIdPath
* Add a comment to DisableFindContentByIdPath setting
* Append new content finder
* Change ordering of content finders registrations
* Refactor with a base class
* Update/refactor and add tests regarding ContentFindersByIdentifier
* Fix comment
* Avoiding breaking change
* Make usages use non-obsolete implementation
* Fixed todo in config instead of use the one old legacy name even more. Also obsoleted the ContentFinderByIdPath
* add `preview` as an allowed backoffice client route
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* set the default for `AuthorizeCallbackPathName` to "/umbraco/oauth_complete" to allow the server to redirect the user back to a route where we don't load the entire backoffice.
* remove redundant method
* add option to SecuritySettings.cs to allow the developer to set an authorized logout callback path in line with the login callback path
* allow clients using the "Umbraco back-office access" descriptor to return back to either the login path or the logout path
* Added mostly working linking methods to the backoffice controller
Cleanup still required
* Added proposed default error handling extionsion methods
* Cleanup, clarification and PR feedback
* More cleanup
* Transformed the OAuthOptionsExtensions into a helper class
this allows for proper DI for the dependencies
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
* update the login image to the v14 variant
* switch out the default value of the "alternative" logo to the dark version since it fits better in this version
* Use require modifier instead of setting null-suppressed default values
* Only remove read-only properties when IgnoreReadOnlyProperties is set
* Obsolete UmbracoPath property and remove work-around for obsolete setter
* Added UserData and migrated tours data into it
* Remove tourdata from user
* Removed tour definition/manipulation classes
Fixed a userData error typo
* Removed toursettings
* Update openapi spec
* V13: Align database schemas of migrated and new database (#15934)
* Drop default constraint umbracoCacheInstruction table
* Align umbracoContentVersion table
* Update indexes on external login table
* Align node table
* Make relation type index unique
* Remove user-group default constraint
* Re-order methods
* Make webhook url not nullable
* Cleanup
* Cleanup
* Update OpenApi.json
* Update src/Umbraco.Cms.Api.Management/Controllers/UserData/UserDataControllerBase.cs
* Remove tour settings from schema
* Add cancelation tokens
* Dont inject, but take as parameter
* Remove some from injection
* Update schema
---------
Co-authored-by: Sven Geusens <sge@umbraco.dk>
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
Co-authored-by: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com>
Co-authored-by: Zeegaan <skrivdetud@gmail.com>
* Obsoletions related to Delivery API
* Fix TypeLoader and TypeFinder tests
* Remove obsolete and default implementations of IFileSource and IFileTypeCollection
* More Delivery API related obsoletions
* VariationContextAccessor related
* ValueFactories obsoletion and fix references
* ValueSetBuilders obsoletions
* ValueConverters obsoletions
* Other obsolete ctors and methods
* Forgotten VariationContextAccessor obsoletion
* More obsoletions
* XPath related obsoletions
* Revert XmlHelper changes
* Delete RenamedRootNavigator and its tests
* Fix test
* XmlHelper obsoletion
* Return null instead of GetXPathValue
* Obsolete entire class instead
* Remove XPath obsoletions from IPublishedCache
* Remove XPath-related if-block that is no longer needed
* Change obsolete msg for classes needed for NuCache
* Moving classes to NuCache and making them internal
* Remove more XPath-related obsoletions
* Remove NavigableNavigator and its tests
* Cleanup
* Remove Xpath references from tests
* Revert interface deletion in MediaCache
* Using XOR operation
Co-authored-by: Nuklon <Nuklon@users.noreply.github.com>
---------
Co-authored-by: Nuklon <Nuklon@users.noreply.github.com>
* Adding configuration options for segment settings
* Add "useSegments" to the document type configuration endpoint
* Adding additional configuration for creation of non-existing segments
* Move magical route to management api
* Move auth around
* Remove "New" cookies, as they are no longer needed
* Move all installer related
* Remove BackOfficeServerVariables.cs and trees
* Move webhooks to management api
* Remove remainting controllers
* Remove last services
* Move preview to management api
* Remove mroe extensions
* Remove tours
* Remove old Auth handlers
* Remove server variables entirely
* Remove old backoffice controller
* Remove controllers namespace entirely
* Move rest of preview
* move last services
* Move language file extension
* Remove old backoffice entirely (Backoffice and Web.UI projects)
* Clean up unused security classes
* Fix up installer route
* Remove obsolete tests
* Fix up DI in integration test
* Add missing property mapping
* Move core mapping into core
* Add composers to integration test
* remove identity
* Fix up DI
* Outcomment failing test :)
* Fix up remaining test
* Update mapper
* Remove the actual project files
* Remove backoffice cs proj
* Remove old backoffice from yml
* Run belissima before login
* Remove caching
* Refactor file paths
* Remove belle from static assets
* Dont refer to old project in templates
* update gitignore
* Add missing files
* Remove install view as its no longer used
* Fix up failing test
* Remove outcommented code
* Update submodule to latest
* fix build
---------
Co-authored-by: Bjarke Berg <mail@bergmania.dk>