Stephan
3121ea6111
Merge branch 'dev-v7.6' into temp-u4-9462
2017-03-15 13:48:27 +01:00
Shannon
df04100ff6
Merge remote-tracking branch 'refs/remotes/origin/dev-v7' into dev-v7.6
...
# Conflicts:
# build/UmbracoVersion.txt
# src/SolutionInfo.cs
# src/Umbraco.Core/Configuration/UmbracoVersion.cs
# src/Umbraco.Core/Persistence/Querying/ExpressionVisitorBase.cs
# src/Umbraco.Core/Persistence/Querying/SqlExpressionExtensions.cs
# src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
# src/Umbraco.Core/Persistence/Repositories/EntityRepository.cs
# src/Umbraco.Core/Persistence/Repositories/MediaRepository.cs
# src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
# src/Umbraco.Core/Persistence/Repositories/VersionableRepositoryBase.cs
# src/Umbraco.Core/Services/ContentService.cs
# src/Umbraco.Core/Services/MediaService.cs
# src/Umbraco.Core/Umbraco.Core.csproj
# src/Umbraco.Tests/Persistence/DatabaseContextTests.cs
# src/Umbraco.Tests/Umbraco.Tests.csproj
# src/Umbraco.Web.UI.Client/src/less/tree.less
# src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
# src/Umbraco.Web/Editors/EntityController.cs
# src/Umbraco.Web/Editors/MediaController.cs
2017-03-10 10:40:28 +01:00
Stephan
6439e2fdd0
Merge dev-v7.6 into temp-u4-9462
2017-03-09 15:29:26 +01:00
Emil Wangaa
0f535f233e
ContentService.GetPagedChildren should also only get children
2017-03-03 14:15:04 +01:00
Shannon
6c271e7af9
Fixes issue with U4-9456 when we use the withCache flag we do not add that to the defs collection so an error would occur if one was resolved from cache.
2017-03-02 16:54:25 +01:00
Stephan
4d24e7bef8
U4-9462 - more units of work cleanup
2017-02-21 13:19:58 +01:00
Stephan
08c8b84a10
U4-9462 - cleanup units of work, code, fixmes
2017-02-21 13:19:58 +01:00
Stephan
507d7dd4f0
Scope - forgot to complete some scopes
2017-02-14 11:11:40 +01:00
Stephan
67fc8b6215
Scope - fix media files deletion
2017-02-11 09:55:32 +01:00
Shannon
b7578e2b98
fixes tests
2017-02-09 12:07:16 +11:00
Shannon
97e8973cbd
Ensures that the RelateOnTrashHandler doesn't attempt to create a relationship for an item that doesn't exist
2017-02-09 11:40:13 +11:00
Shannon
2dc45c3b9f
Tons of code duplication removed, streamlines the content, media and member repositories to use the same paged methods and filtering mechanism (much bettter), adds some tests, creates a marker interface for IContentServiceBase so we can use extension methods for now to de-duplicate some of the code between media and content services
2017-02-09 10:34:40 +11:00
Shannon
4feb876463
Fixes issues of deleting a content item and the trashing events raised for content/media that is going to be deleted anyways, adds tests to support. Fixes MediaService to not delete the xml directly and instead rely on it's repository to do that (which is the correct way), streamlines both content/media service logic to be the same (need to start sharing code!)
2017-02-09 01:47:04 +11:00
Shannon
fb02a5b06d
Fixes issue of removing content types in bulk (like when removing a package) and having the trashed event being raised for what will end up being a deleted node, Fixes a bug with the (very silly) extension methods for content types, removes singleton accessors from these (very silly) extension methods - which actually never worked for media types!
2017-02-08 21:59:16 +11:00
Shannon
e58d9a9535
Fixing tests, fixes PublishingStrategy to hvae the scope provider passed in
2017-02-07 14:40:45 +11:00
Shannon
3fa7c4d7ef
Removes POC class, fixes content service trash/move events so there's not ambiguous
2017-02-07 14:08:55 +11:00
Shannon
8ae700eedf
code formatting and merge fixing
2017-02-03 12:23:32 +11:00
Shannon
411bbcc192
Merge branch 'refs/heads/dev-v7.6' into temp-u4-9322
...
# Conflicts:
# build/UmbracoVersion.txt
# src/SolutionInfo.cs
# src/Umbraco.Core/Configuration/UmbracoVersion.cs
# src/Umbraco.Core/Services/ContentService.cs
# src/Umbraco.Core/Services/ContentTypeService.cs
# src/Umbraco.Core/Services/DataTypeService.cs
# src/Umbraco.Core/Services/MacroService.cs
# src/Umbraco.Core/Services/MediaService.cs
# src/Umbraco.Core/Services/MemberService.cs
# src/Umbraco.Core/Services/MemberTypeService.cs
# src/Umbraco.Core/Services/UserService.cs
# src/Umbraco.Web/Umbraco.Web.csproj
2017-02-03 12:14:38 +11:00
Stephan
6dc34e1167
U4-9322 - cleanup EventExtensions
2017-01-31 10:37:37 +01:00
Stephan
798105998e
U4-9322 - begin refactoring and fixing events
2017-01-27 18:17:21 +01:00
Stephan
f4994a5133
Merge temp-u4-9322 (Shan Events) into temp-u4-9322a (Steph) - builds
2017-01-27 11:42:54 +01:00
Stephan
6bbfb65100
Merge temp-u4-9322 (Shan Events) into temp-u4-9322a (Steph)
2017-01-26 18:30:00 +01:00
Stephan
4fc3398e49
U4-9322 - refactor UnitOfWork pattern
2017-01-25 13:34:41 +01:00
Shannon
c5033710ca
Updates all ambigous event raising when the event finder cannot determine the name based on the args, all tests pass apart from 3 now
2017-01-25 18:44:29 +11:00
Shannon
ac54affa57
Refactor IPublishingStrategy, create IPublishingStrategy2 as a work around, adds EventMessages to IScopeUnitOfWork, ensures all events raised with IPublishingStrategy are done with uow
2017-01-25 16:49:44 +11:00
Shannon
f7d7a43720
Fixes BulkInsertRecords to not require a trans , removes inner trans from PermissionRepository, fixes up events in PermissionRepository and MemberGroupRepository, fixes up uow in UserService
2017-01-25 15:15:28 +11:00
Shannon
44fc8be49e
Changes back to "path" default sorting but updates the UmbracoContentIndexer to ensure it's sorted by umbracoNode.id
2017-01-24 00:35:17 +11:00
Shannon
55eb996c19
Adds a couple needed hack methods, updates ContentService to have the proper event emmitting without any nested uow's and ensuring that readonly uow's are committed.
2017-01-23 22:16:27 +11:00
Shannon
ac4de99f30
Initial commit of changing all IsRaisedEventCancelled to use the event manager and inside of a uow
2017-01-23 20:48:51 +11:00
Shannon
2a4e73c650
Reduced allocations for the Media/Content/Property Factories since we don't need to create new objects every time we want to map values.
...
Changes default sort order for paging from Path to umbracoNode.id since we have no index on Path and it doesn't make a lot of sense.
Fixes obsolete warnings for various Sql usages.
Reduces the amount of DeepClone calls required when looking up a content type for a content item, even though these are cached they are still deep cloned out of the cache.
Fixes the main issue of having nearly 100,000 rows of unsorted property data and then having to query those rows for every document being built, the re-iteration of these rows causes a lot of overhead and is unecessary, instead we ensure the property data set and the document data set is sorted by node id, then use a stored index to continue looking up the property data for the next content item found.
2017-01-23 00:40:24 +11:00
Shannon
9965aa461a
Updates ContentService to raise events all with the EventManager
2017-01-19 17:18:06 +11:00
Shannon
994f91e496
Creates IScopeUnitOfWork and IScopeUnitOfWorkProvider as internal along with ScopeRepositoryService which all services inherit from, this is maintaining backwards compat too
2017-01-19 15:37:17 +11:00
Shannon
db414e8045
Fixes issue with implicitly non-published items getting into the index, fixes issue with sql syntax columns (i.e for mysql) for queries that query the cmsContentXml table
2017-01-19 12:51:56 +11:00
Shannon
24c7dee5d0
U4-9395 When rebuilding content indexes that don't support unpublished content and member indexes, use the cmsContentXml table as the data source
2017-01-17 17:57:49 +11:00
Claus
7d4a9998ca
U4-9377 It is possible to create/save entities with a blank names by using the services directly
...
ensuring that when trying to save an entity with an empty name, directly through a service, an exception will be thrown.
2017-01-13 11:45:49 +01:00
Shannon
8be0f68390
Adds logic to validate an entity's path when it is used to GetDescendants, adds logic to fix an entity's path when it's state is going to be persisted when GetDescendants is used (i.e. MoveToRecycleBin), added this logic to Media too, adds unit tests to support
2017-01-05 10:29:03 +11:00
Shannon
b413b7b5af
Lazily creates the static queries instead of eagerly, this fixes an issue of if these services are accessed before Umbraco has booted
2016-12-08 12:48:44 +11:00
Shannon
3f609fdf90
Moves a few queries to re-used query instances
2016-10-27 18:03:13 +02:00
Shannon
2cd6427958
Fixes more issues with notifications which weren't sending properly do to a i++ instead of a ++1, have refactored that to read better. Also fixes up performance issues since we were returning every single fully resolved IContent for all versions when all we need is the top 2 version ids, have added methods to do that plus a unit test. Have tested the emails and the diffs and they all work.
2016-10-05 18:30:03 +02:00
Shannon
876f61ac27
U4-8788 ContentService.GetByIds() returns items in different order
...
U4-8937 ContentController.PostSort is not honouring the passed sorted ids.
2016-10-05 11:20:48 +02:00
Shannon
42666403a6
Fixes regression issue with building the xml cache file, moves the logic to query and build the xml document for the cache to the repository level.
2016-08-05 17:41:00 +02:00
Shannon
628ce5ea1f
Backports some changes from v8 so that we can perform a nice strongly typed query with paging - this is then used for the content indexer to index content via the db for published content instead of the xml cache system. This was already done in v8 but have no backported the logic and fixed up the unit tests. When merging with v8 we will most likely just keep all v8 stuff and discard these changes, but we'll need to compare just in case. All tests pass and re-indexing is working as expected. Also updated the paging count from 1000 to 5000 for reindexing.
2016-05-26 15:30:40 +02:00
Shannon
e2954fbf39
refactors interface methods so they are not breaking existing signatures and not overlapping based on optional parameters
2016-04-06 13:23:39 +02:00
Shannon
c20984dca7
Merge branch 'dev-v7' of https://github.com/aadfPT/Umbraco-CMS into aadfPT-dev-v7
...
Conflicts:
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/MediaRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/VersionableRepositoryBase.cs
src/Umbraco.Core/Services/ContentService.cs
src/Umbraco.Core/Services/IContentService.cs
src/Umbraco.Core/Services/IMediaService.cs
src/Umbraco.Core/Services/IMemberService.cs
src/Umbraco.Core/Services/MediaService.cs
src/Umbraco.Core/Services/MemberService.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs
src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs
src/Umbraco.Web.UI.Client/src/common/resources/content.resource.js
src/Umbraco.Web.UI.Client/src/common/resources/media.resource.js
src/Umbraco.Web.UI.Client/src/common/resources/member.resource.js
src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/layouts/list/list.listviewlayout.controller.js
src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.controller.js
src/Umbraco.Web/Editors/ContentController.cs
src/Umbraco.Web/Editors/MediaController.cs
src/Umbraco.Web/Editors/MemberController.cs
src/Umbraco.Web/WebApi/Filters/DisableBrowserCacheAttribute.cs
src/UmbracoExamine/UmbracoMemberIndexer.cs
2016-04-05 16:20:39 +02:00
Shannon
80d7443bd3
fix build
2016-04-05 16:00:49 +02:00
Shannon
ef3f15ec9b
Merge branch 'u4-6003b' of https://github.com/AndyButland/Umbraco-CMS into AndyButland-u4-6003b
...
Conflicts:
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IMediaRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/MediaRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Services/ContentService.cs
src/Umbraco.Core/Services/IContentService.cs
src/Umbraco.Core/Services/IMediaService.cs
src/Umbraco.Core/Services/IMemberService.cs
src/Umbraco.Core/Services/MediaService.cs
src/Umbraco.Core/Services/MemberService.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MediaRepositoryTest.cs
src/Umbraco.Tests/UmbracoExamine/IndexInitializer.cs
src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.controller.js
src/Umbraco.Web.UI.Client/src/views/propertyeditors/listview/listview.html
src/Umbraco.Web/Editors/MemberController.cs
src/UmbracoExamine/UmbracoMemberIndexer.cs
2016-04-05 15:31:33 +02:00
André Ferreira
bd2a40d214
U4-6003 List View - Order By Custom Property Fix
...
Original work done on https://github.com/umbraco/Umbraco-CMS/pull/711 but ported to the latest version
Content below for reference
With the current implementation of the list view you can only sort by system columns (Name, SortOrder etc.) and not custom columns you have added to your document types. This PR allows that.
The crux of it is a sub-query added to the ORDER BY clause when we are ordering by a custom field. This looks up the field's value from the most recent content version.
Provided here and not in the previous pull request is:
MySQL support
Have done some performance testing. On a local laptop with 1000 nodes in a list view, it's sorting in around 220-250ms. It's a little slower that sorting on native properties like node name, but still perfectly usable - there's no significant delay you see in use.
Please note also:
GetPagedResultsByQuery() in VersionableRepositoryBase was previously doing an ORDER BY in SQL and then repeating this via LINQ to Objects. I couldn't see that this second ordering was necessary so removed it, but wanted to flag here in case I've missed something around why this was necessary.
The PR also includes small amends to fix or hide sorting on a couple of the default columns for the member amd media list views.
2016-04-01 11:28:51 +01:00
Shannon
e423864781
Merge remote-tracking branch 'origin/master-v7' into dev-v7
...
Conflicts:
build/UmbracoVersion.txt
src/SolutionInfo.cs
src/Umbraco.Core/Cache/FullDataSetRepositoryCachePolicy.cs
src/Umbraco.Core/Cache/FullDataSetRepositoryCachePolicyFactory.cs
src/Umbraco.Core/Configuration/UmbracoVersion.cs
src/Umbraco.Core/Persistence/Repositories/ContentTypeBaseRepository.cs
src/Umbraco.Core/Persistence/Repositories/ContentTypeRepository.cs
src/Umbraco.Core/Persistence/Repositories/DomainRepository.cs
src/Umbraco.Core/Persistence/Repositories/LanguageRepository.cs
src/Umbraco.Core/Persistence/Repositories/MediaTypeRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberTypeRepository.cs
src/Umbraco.Core/Persistence/Repositories/PublicAccessRepository.cs
src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs
src/Umbraco.Core/Umbraco.Core.csproj
src/Umbraco.Tests/Cache/FullDataSetCachePolicyTests.cs
src/Umbraco.Web.UI.Client/src/common/directives/components/grid/grid.rte.directive.js
src/Umbraco.Web.UI.Client/src/less/hacks.less
src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
src/Umbraco.Web/WebBootManager.cs
2016-02-03 12:30:11 +01:00
Shannon
a6093f41bd
Fixes installer login for user and adds notes
2016-01-28 18:02:22 +01:00
Shannon
dbb7e3825d
Fixes events for containers
2016-01-27 15:22:58 +01:00