* Allow only unpublish in schedule publish overlay if user has permission
* Adjust logic to newer JS syntax
* Fix update configuration
* Delete updated property names
* Style unpublish date as disabled
* Fix css selector for new button element
* Make buttons and datepickers more consistent in invariant and variant versions of schedule overlay
* Fill half width like in invariant version of schedule overlay
* Use native includes instead
* return early from getPermissionsForContent
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* set isInfoTab to true if active tab is info tab
* replace underscore functions with good old boring javascript
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* add a gap between icon and label of media menu
* replace inline style with class
* icon alignment
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* Allow action links to wrap
Preventing wrapping means that buttons can overflow their container.
* slightly wider context menu to reduce runty labels
Co-authored-by: Nathan Woulfe <nathan@nathanw.com.au>
* Added dictionary import/export
* Added umb tree to dictionary import & level for displaying preview dictionary import
* Indented dictionaries for import, added new text for choosing where to import dictionary items
* Removed console.log for dictionary/import.controller.js
Co-authored-by: Michael <michael@crossingpaths.be>
* Fixed issues with basic auth middleware to support Umbraco Cloud usecase
* Fix redirects to return url, now allows website urls
* Strip potential domain part of returnPath
* Fix default value in appsettings schema
* Reintroduce check of basic auth enabled.
* Fix wrong negation introduced in #12349
* Fixed issues with redirects
* Also check external login cookie, while authenticating backoffice
* added option to disable automatic expand of single nc item
* remove max item conditional
remove max item 1 conditional to set current node
* changed description of slider property
removed description of first item conditional
* Update NestedContentConfiguration.cs
change copy to more accurately describe the feature
Co-authored-by: Wilmar <wilmar.de.hoogd@thevalley.nl>
* Add slider to user view
* fix typo 'constentLevels'
* Add TelemetryLevel to UserModel
* Extend NewInstallStep to include descriptions of each TelemetryLevel
* Add nouislider as dependency for installer view
* Add telemetry levels
Add raw nouislider to select a telemetry level + set chosen level onChange to the user model + show detailed description of each level as a tooltip
* Copy over basic styling of nouislider
* Save consent level in installer
* Fix detailed key to not contain <br>
* Fix MetricsConsentService to log correctly when we set analyticsLevel in installer
* Fix breaking change and obsolete messages
* reinstate saved value of the subscription field if you traverse the steps
* calculate the initial slider level based on the saved value of the model
Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
commit e0aa430d4c
Author: Paul Johnson <pmj@umbraco.com>
Date: Thu May 19 10:00:57 2022 +0100
Fix typo in pipeline yaml
commit 2ec450f2d6
Author: Paul Johnson <pmj@umbraco.com>
Date: Thu May 19 09:14:47 2022 +0100
Fix yaml conditions
commit c2d548039a
Author: Paul Johnson <pmj@umbraco.com>
Date: Thu May 19 09:02:50 2022 +0100
Azure pipeline refactor (#12428)
* Skip symbols for Umbraco.Templates
* Resolve some test issues
+ Fixed whitespace dependant tests to pass regardless of build OS vs
run OS.
+ Snap dictionary tests were failing when Configuration was release
+ Removed hardcoded baseUrl from one of the acceptance tests
* Move docfx setup to ./build and fix
* Update UI docs title
* Added dockerfile that can be used when running the acceptance tests.
* Take explicit dependency on System.Security.Cryptography.Pkcs
* Refactor ci/cd pipeline
commit ee8359af75
Author: Mole <nikolajlauridsen@protonmail.ch>
Date: Thu May 19 09:57:21 2022 +0200
V10: Reintroduce appsettings-schema.json (#12416)
* Reintroduce language files tests (#12367)
* Reintroducing language files tests
* Fix casing
* Update tests/Umbraco.Tests.UnitTests/Umbraco.Core/EmbeddedResources/LanguageXmlTests.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Change Umbraco.Cms and Umbraco.Templates nuspecs to csproj
* Remove Umbraco.Templates from VerifyNuGet step
* Remove duplicate and unnecessary properties
* Generate json schema on build
* Add targets file
* Gitignore auto generated appsettings schema
* Fix build not copying file
* Use the new path in appsettings
* Update copy message
* Build json schema as release
* Update json schema options
Otherwise just running the project will put the file in the wrong place
* Generate schema if it doesn't exist in Web.Ui
* Update json schema options
Otherwise just running the project will put the file in the wrong place
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
Co-authored-by: Ronald Barendse <ronald@barend.se>
commit dd617ede80
Author: Ronald Barendse <ronald@barend.se>
Date: Thu May 19 09:51:11 2022 +0200
v10: Change Umbraco.Cms and Umbraco.Templates nuspecs to csproj (#12413)
* Reintroduce language files tests (#12367)
* Reintroducing language files tests
* Fix casing
* Update tests/Umbraco.Tests.UnitTests/Umbraco.Core/EmbeddedResources/LanguageXmlTests.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
* Change Umbraco.Cms and Umbraco.Templates nuspecs to csproj
* Remove Umbraco.Templates from VerifyNuGet step
* Remove duplicate and unnecessary properties
Co-authored-by: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
commit b83216876f
Author: Ronald Barendse <ronald@barend.se>
Date: Thu May 19 08:36:04 2022 +0200
v10: Project template database/connection string improvements (#12407)
* Add new connection-string-provider-name parameter
* Use template value forms to correctly encode JSON values
* Add new development-database-type parameter
* Update package template and fix App_Plugins directory rename
* Remove conflicting short parameter name
* Lowercase framework parameter to align with MS templates
* Cleanup default template settings
* Write unattended install parameters when either connection string or development database is set
* Include RootNamespace in UmbracoPackage template
* Update Umbraco specific gitignore rules
* Revert "Lowercase framework parameter to align with MS templates"
This reverts commit 22de389272a7e119df569ec2e54190265f6d0ae0.
* Add exclude-gitignore parameter
* Update template schemas
* Add minimal-gitignore parameter
commit e40049dcf1
Author: Mole <nikolajlauridsen@protonmail.ch>
Date: Wed May 18 15:22:51 2022 +0200
Fix domain for invariant content nodes (#12405)
Co-authored-by: Elitsa Marinovska <elm@umbraco.dk>
commit a3692b887a
Author: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
Date: Mon May 9 11:42:10 2022 +0200
Use SnippetCollection to when working with snippets (#12355)
* Introducing a new Snippet type
* Adding a SnippetCollection and SnippetCollectionBuilder
* Using snippetCollection to get the snippets instead of fileService
* Fixed fetching the correct content
* Make ISnippet non-discoverable
* Split the SnippetCollection into PartialViewSnippetCollection and PartialViewMacroSnippetCollection
* Update CodeFileController to use the 2 snippet collections
* Display the names with Empty.cshtml on top
* Remove merging embedded snippets with custom snippets from ~\Umbraco.Web.UI\umbraco\PartialViewMacros\Templates folder for the Partial View Collection
* Fix naming
* Fix another naming
* Cleanup + Use base items
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
(cherry picked from commit 9326cc5fc6)
commit 4f48a4937b
Author: patrickdemooij9 <patrickdemooij98@hotmail.com>
Date: Fri Oct 8 11:18:00 2021 +0200
Cherry picked from 4c08b44684
commit 4fdbfee597
Author: Bjarne Fyrstenborg <bjarne_fyrstenborg@hotmail.com>
Date: Wed May 11 00:51:37 2022 +0200
Show nicer overlay when clicking block card for deleted element type (#12140)
* Show nicer overlay when clicking block card for deleted element type
* Cleanup
* Remove stop-scrolling container
* Use flex-start instead on start
* Remove legacy flexbox fallback
* Remove unnecessary hack
* Use standard gap property instead
* Localization of message
* Fix translation
* End sentence with a dot
(cherry picked from commit ebb1dc21a9)
commit 3856bf8288
Author: Henk Jan Pluim <henkjan.pluim@greenchoice.nl>
Date: Mon Apr 25 10:02:06 2022 +0200
#fix 12254 return emptyresult
(cherry picked from commit 7993d19c1b)
commit 7087c3d9f6
Author: Ronald Barendse <ronald@barend.se>
Date: Tue May 17 12:59:01 2022 +0200
v10: Use ForceCreateDatabase during unattended install and extend GetUmbracoConnectionString extension methods (#12397)
* Add extension methods to get the Umbraco connection string/provider name from configuration
* Added tests for configuration extension methods.
* Fix issue with InstallMissingDatabase and ForceCreateDatabase
* Fix comments
* Revert casing change in GenerateConnectionString
* Re-add AddOptions (without config binding) to fix test
* Update src/Umbraco.Core/Configuration/Models/ConnectionStrings.cs
Co-authored-by: Ronald Barendse <ronald@barend.se>
* Update src/Umbraco.Core/Configuration/Models/ConnectionStrings.cs
* Update src/Umbraco.Infrastructure/Runtime/RuntimeState.cs
* Whitespace and documentation updates
* Add DatabaseProviderMetadataExtensions
* Filter before ordering
* Replace DataDirectory placeholder when setting connection string
Co-authored-by: Andy Butland <abutland73@gmail.com>
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
(cherry picked from commit 8e6e262c7f)
commit e90bf26577
Author: Ronald Barendse <ronald@barend.se>
Date: Tue May 17 07:33:54 2022 +0200
v10: Support System.Data.SqlClient provider name (#12408)
* Add support for System.Data.SqlClient provider name
* Only update connection string when required
(cherry picked from commit e82bcb1b76)
commit fd0637c96d
Author: Elitsa Marinovska <21998037+elit0451@users.noreply.github.com>
Date: Mon May 16 14:23:59 2022 +0200
Reintroduce language files tests (#12367)
* Reintroducing language files tests
* Fix casing
* Update tests/Umbraco.Tests.UnitTests/Umbraco.Core/EmbeddedResources/LanguageXmlTests.cs
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
(cherry picked from commit 2ed71a64ec)
* Support SVG icon in umb-property-actions
* Update icons for existing property actions
* Make backwards compatible
* Update existing property actions to not use legacy icons as we now specify full icon name, but we need this for backward compatibility
* Change from named function to local function
* Add property actions to multi url picker
* Inject overlayService and set isDisabled in watch
* Add function to clear
* Updated the installer screen, and the no NoNodes.cshtml with link to the new learning base for Umbraco
* Added ref to the link
Co-authored-by: Dennis Aaen <dennis@umbraco.com>
* Support custom SVG icon in menu item with legacy support
* Update menu icons
* Update action icons
* Adjust icons in menu actions with legacy fallback
* Don't use legacy icon
* Update comments
* Show nicer overlay when clicking block card for deleted element type
* Cleanup
* Remove stop-scrolling container
* Use flex-start instead on start
* Remove legacy flexbox fallback
* Remove unnecessary hack
* Use standard gap property instead
* Localization of message
* Fix translation
* End sentence with a dot
* 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
* 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>
* Upgraded MailKit
* Upgraded Microsoft.* packages
* Upgrades various nuget packages to latest version
* Upgrades various nuget packages related to test
* update package-lock.json to new npm format
* bump all angular dependencies to latest 1.8.3
* bump jquery to 3.6.0
* remove dubious 'npm' dependency and set engines versions to avoid warnings
* bump signalr dependency from v3 to v6
* bump 'underscore' from 1.12.1 to 1.13.1
* bump 'diff' from 3.5.0 to 5.0.0
* bump 'clipboard' from 2.0.4 to 2.0.10
* bump 'flatpickr' from 4.6.9 to 4.6.13
* bump 'moment' from 2.22.2 to 2.29.3
* bump 'spectrum-colorpicker2' from 2.0.8 to 2.0.9
* bump 'underscore' from 1.13.1 to 1.13.2
* update 'less' 'autoprefixer' 'cssnano' and accompanying gulp tasks to latest
* bump all gulp dependencies
except gulp-imagemin since we do not yet support esmodules in the backoffice client
* remove 'fs' since the package is marked as malicious and do not seem to be used
* update AcceptanceTests lockfile to latest npm + dependency updates
* bump '@babel/core' from 7.17.5 to 7.17.9
* bump karma dependencies to latest
* bump 'animejs' from 2.2.0 to 3.2.1
* bump 'jasmine-core' from 3.5.0 to 4.1.0
* remove deduped 'caniuse-lite'
* bump wicg-inert from ^3.0.2 to 3.1.1
* bump 'nouislider' from 15.5.0 to 15.5.1
* add slight delay for confirmation overlay
* ignore postinstall task for acceptance tests since env file is generated manually
* upgrade cypress to 9.5.4
* add wait step to content.ts tests
* Revert "ignore postinstall task for acceptance tests since env file is generated manually"
This reverts commit 61acebfda2502499480f31d8450c889d4c5c6f11.
* increate wait amount of content rollback tests
* Revert "upgrade cypress to 9.5.4"
This reverts commit 2febf139a41938ae005754abd958fdec1f598991.
* Revert "update AcceptanceTests lockfile to latest npm + dependency updates"
This reverts commit b45d20b3cdcae6b17d4024c7085c5e6a3e3e2a83.
* update lockfile version
* update umbraco-cypress-testhelpers to latest
Co-authored-by: Bjarke Berg <mail@bergmania.dk>
* use localize keys instead of hard coded text
* Update text
* Remove duplicate -
* Add italics to bottom text
Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
* add support for UserService to change password
* for 'users' section use UserService to change password
* user infinite editor should now use the changepassword dialog as seen in the 'users' section
* add some autocomplete and name changes to change-password form to support autofill and password managers
* Revert "for 'users' section use UserService to change password"
This reverts commit 68c5972777baa4a60cc8cfc88b2572f1f47ece64.
* Revert "add support for UserService to change password"
This reverts commit a64b756ad31dfede91ba49f720afa7d073d9a7e8.
* use the currentUserResource to change password
* only return true on success since notifications are handled in the resource
* 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>
* Add initial classes
* Add TelemetryProviders
* Add new NodeCountService.cs and NodeTelemetryProvider
* Add data contract attribute to UsageInformation
Otherwise it wont serialize correctly
* Implement more providers
* Fix builders and propertyEditorTelemetry
* Add MediaTelemetryProvider
* Add MediaTelemetryProvider
* Fix doubling of media telemetry
* Move contentCount from NodeCountTelemetryProvider and move to ContentTelemetryProvider
* Revert ContentTelemetryProvider changes
* Add detailed information to TelemetryService
* Add integration tests
* Add more tests and todos for tests
* Fix stylecop warnings
* Use yield return instead of instantiating local list
* Implement Macro test
* Inject interface instead of implementation in TelemetryService
* Fix TelemetryServiceTests.cs
* Implement media tests
* Implement propertyTypeTests
* Implement constants instead of hardcoded strings
* Add SystemInformationTelemetryProvider
* Use SystemInformationTableDataProvider in UserDataService
* Implement more properties
* Add UsageInformation
* Replace UserDataService with SystemInformationTelemetryProvider
* Undo changes to UserDataService and obsolete it
* Remove ISystemInformationTableDataProvider
* Register SystemInformationTelemetryProvider as telemetry provider
* Use constants for telemetry names
* Make UserDataServiceTests test SystemInformationTelemetryProvider instead
* Update UserDataServiceTests to cover new data
* Add unit tests
* Add integration test testing expected data is returned
* Implement Analytics dashboard
* Improve assertion message
* Add text and styling to analyticspage
* Rename consent to analytic
* implement save button for consent level
* Implement save button
* Fix system information test
* Add TelemetryResource
* Move telemetry providers to infrastructure
* Add database provider to system information
* Set startvalue for slider
* Fix unit tests
* Implement MetricsConsentService using KeyValueService
* Return void hen setting the telemetry level
* fix startposition when not reloading
* Add a couple tests
* Update src/Umbraco.Core/Services/MetricsConsentService.cs
* Rename ConsentLevel.cs
* Use direct Enum instead of parsing
* rename consent resource
* add lazy database
* refactor slider
* Implement ng-if and propers pips
* Make classes internal
* Fix slider not loading when navigating to tab
* Add telemetry level check to TelemetryService.cs
* Add Consent for analytics text
* Fix build errors for unit tests
* Fix TelemetryServiceTests
* revert package-lock.json
* Fix integration test
* Update slider
* Update TelemetryService.cs
* Apply suggestions from code review
Co-authored-by: Mole <nikolajlauridsen@protonmail.ch>
Co-authored-by: Nikolaj Geisle <niko737@edu.ucl.dk>
Co-authored-by: nikolajlauridsen <nikolajlauridsen@protonmail.ch>
* Added functionality to enable 2FA for users..
* Do not use the obsolete ctor in tests
* cleanup
* Cleanup
* Convert User view from overlay to infinite editor
* Add support for having additional editors on top of the user (2fa) which overlay does not support
* Add controllerAs syntax in the template
* Remove unused dependencies
* Adjustments to 2fa login view
* organize elements
* add translations
* add a11y helpers
* add autocompletion = one-time-code
* change to controllerAs syntax
* add callback to cancel 2fa and fix error where submit button was not reset when all other validations were
* add a cancel/go back button to the 2fa view
* replace header with something less obstrusive
* move logout button to the footer in the new editor view
* change 'edit profile' to an umb-box and move ng-if for password fields out to reduce amount of checks
* Add umb-box to external login provider section
* add umb-box to user history section
* bug: fix bug where notificationsService would not allow new notifications if removeAll had been called
* add styling and a11y to configureTwoFactor view
- also ensure that the view reloads when changes happen in the custom user view to enable 2fa
- ensure that view updates when disabling 2fa
- add extra button to show options (disable) for each 2fa provider
* add notification when 2fa is disabled
* add data-element to support the intro tour
also changed a minor selector in the cypress test
* correct usage of umb-box with umb-box-content
* do not use the .form class twice to prevent double box-shadow
* make tranlastion for 2fa placeholder shorter
* ensure that field with 2fa provider is always visible when more than 1 provider
* move error state of 2fa field to token field
* update translation of multiple 2fa providers
* move CTA buttons to right side to follow general UI practices
* rename options to disable
* add disabled state
* add helper folders to gitignore so you can work with plugins and custom code without committing it accidentally
* move the disable functionality to its own infinite editor view
* use properties from umb-control-group correctly
* add 'track by' to repeater
* make use of umb-control-group
* remove unused functions
* clean up translations
* add Danish translations
* copy translations to english
* Only return enabled 2fa providers as expected
Co-authored-by: Jacob Overgaard <752371+iOvergaard@users.noreply.github.com>
* Added "move" action for dictionaries
* Replaced DictionaryMove with MoveOrCopy for PostMove
* Removed int parse for dictionary postmove id & parentId, changed paramtype for move in dictionary.resource
* Added localizedText for new dictionary validationProblems & adjusted nullcheck for move.ParentId
* Fixed logic for move dictionary parent
* Corrected the base URL to use when retrieving and setting public access details.
* Fixed original issue from a merge conflict.. Now using the correct v9+ resource
Co-authored-by: Bjarke Berg <mail@bergmania.dk>