Shannon
33ca761441
Updated all to use the ref parameter, tests are passing - now to see if they run any faster :)
2016-06-21 20:43:02 +02:00
Shannon
b5411a5402
Initial commit of refactor of better/more efficient in terms of mem and performance properpty selectors for our models, this also yields a much cleaner syntax. I have discovered one issue now which is that the PropertyChanged event now fires before the property value is actually set, this is why the lambda syntax existed before. Instead we can use a ref property for the SetPropertyValueAndDetectChanges methods which will work much nicer - and also potentially have less allocations.
2016-06-21 18:11:03 +02:00
Shannon
f54cde050a
WIP - updated repositories to better support creating/deleting entity containers in a transaction, this is done by a child repository and a new EntityContainer type. Updated the controller to use this logic.
2015-11-12 18:59:39 +01:00
Shannon
8905878a87
Adds some methods to TracksChangesEntityBase to enable/disable change tracking and to reset the change tracking dictionaries, this is then used for DeepCloning so that change tracking is turned off for the cloning process.
2015-03-03 18:33:04 +11:00
Shannon
389724cba5
Re-fixes: U4-4211 User without media section permission will be logged out immediately when accessing a document type using a media picker datatype (u7.0.3)
2014-05-09 14:06:15 +10:00
Sebastiaan Janssen
59cb1ad31e
Revert "Fixes: U4-4211 User without media section permission will be logged out immediately when accessing a document type using a media picker datatype (u7.0.3) - this is done by using the entityResource in the mediaPicker but to do this we need to return a cut down version of the media properties in the additionalData which is tricky because the cropper stores json which is ntext and the existing sql didn't cater for this. This also cleans up the entity service and we no longer have this internal collection of properties, everything is just added to additionalData, then had to add mediaHelper method to deal with getting urls from a media 'entity' not just a media object."
...
This reverts commit c38c2ede11 .
2014-05-08 16:08:16 +02:00
Shannon
c38c2ede11
Fixes: U4-4211 User without media section permission will be logged out immediately when accessing a document type using a media picker datatype (u7.0.3) - this is done by using the entityResource in the mediaPicker but to do this we need to return a cut down version of the media properties in the additionalData which is tricky because the cropper stores json which is ntext and the existing sql didn't cater for this. This also cleans up the entity service and we no longer have this internal collection of properties, everything is just added to additionalData, then had to add mediaHelper method to deal with getting urls from a media 'entity' not just a media object.
2014-05-07 23:55:20 +10:00
Shannon
8c303893d2
updates deep clone to have the false flag for resetting properties (we don't want to remember them when cloning)
2014-04-17 18:46:37 +10:00
Shannon
7d556a0318
Merge remote-tracking branch 'origin/6.2.0' into 7.1.2
...
Conflicts:
src/Umbraco.Core/Cache/CacheProviderExtensions.cs
src/Umbraco.Core/Cache/DictionaryCacheProviderBase.cs
src/Umbraco.Core/Cache/ICacheProvider.cs
src/Umbraco.Core/Cache/ObjectCacheRuntimeCacheProvider.cs
src/Umbraco.Core/Models/Member.cs
src/Umbraco.Core/Models/PreValue.cs
src/Umbraco.Core/Models/PropertyType.cs
src/Umbraco.Core/Services/DataTypeService.cs
src/Umbraco.Tests/Models/Collections/PropertyCollectionTests.cs
src/Umbraco.Tests/Umbraco.Tests.csproj
src/Umbraco.Web/Models/PublishedProperty.cs
src/Umbraco.Web/umbraco.presentation/umbraco/webservices/MediaUploader.ashx.cs
2014-04-17 18:10:42 +10:00
Shannon
998f031877
Merge branch '6.2.0' into 6.2-cachefixing
2014-04-16 14:01:38 +10:00
Shannon
1f2e46a195
Simplifies much of the deep cloning with the DeepCloneHelper and adds tests
2014-04-16 13:39:42 +10:00
Shannon
0e4e12d0ba
More code and tests written for deep cloning.
2014-04-15 19:12:42 +10:00
Shannon
9a9237e78e
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
...
Conflicts:
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Services/IMembershipUserService.cs
src/Umbraco.Tests/PublishedContent/PublishedContentTestElements.cs
src/Umbraco.Web.UI/config/trees.config
src/Umbraco.Web.UI/config/umbracoSettings.config
src/Umbraco.Web.UI/umbraco/controls/ContentTypeControlNew.ascx
src/Umbraco.Web.UI/umbraco/developer/DataTypes/editDatatype.aspx
src/Umbraco.Web.UI/umbraco/plugins/uGoLive/Dashboard.ascx
src/Umbraco.Web/Mvc/UmbracoViewPageOfTModel.cs
src/Umbraco.Web/Search/ExamineEvents.cs
src/Umbraco.Web/Umbraco.Web.csproj
src/Umbraco.Web/umbraco.presentation/content.cs
src/Umbraco.Web/umbraco.presentation/umbraco/cache/LegacyClasses.cs
2014-03-06 20:22:32 +11:00
Stephan
2f953c3819
Fix a38e0dc - use UInt64 instead of int
2014-03-05 15:46:28 +01:00
Shannon
c4acbf0dbc
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
...
Conflicts:
src/Umbraco.Core/Configuration/ClientDependencyConfiguration.cs
src/Umbraco.Core/Constants-Conventions.cs
src/Umbraco.Core/Models/Member.cs
src/Umbraco.Core/Models/Membership/IUser.cs
src/Umbraco.Core/Models/Template.cs
src/Umbraco.Core/Persistence/Factories/MemberReadOnlyFactory.cs
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IUserRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberGroupRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/PermissionRepository.cs
src/Umbraco.Core/Persistence/RepositoryFactory.cs
src/Umbraco.Core/Services/ContentService.cs
src/Umbraco.Core/Services/IMemberTypeService.cs
src/Umbraco.Core/Services/IMembershipUserService.cs
src/Umbraco.Core/Services/IUserService.cs
src/Umbraco.Core/Services/MemberService.cs
src/Umbraco.Core/Services/MemberTypeService.cs
src/Umbraco.Core/Services/ServiceContext.cs
src/Umbraco.Core/Services/UserService.cs
src/Umbraco.Core/Umbraco.Core.csproj
src/Umbraco.Tests/MockTests.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs
src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/EditProfile.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/Login.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/LoginStatus.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViewMacros/Templates/RegisterMember.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/Breadcrumb.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/EditProfile.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListAncestorsFromCurrentPage.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesFromCurrentPage.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesOrderedByDate.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesOrderedByName.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListChildPagesWithDoctype.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/ListDescendantsFromCurrentPage.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/Login.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/LoginStatus.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/MultinodeTree-picker.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/Navigation.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/RegisterMember.cshtml
src/Umbraco.Web.UI/Umbraco/PartialViews/Templates/SiteMap.cshtml
src/Umbraco.Web.UI/Umbraco/create/PartialView.ascx.cs
src/Umbraco.Web.UI/config/umbracoSettings.config
src/Umbraco.Web/Cache/CacheRefresherEventHandler.cs
src/Umbraco.Web/Controllers/UmbLoginController.cs
src/Umbraco.Web/Controllers/UmbLoginStatusController.cs
src/Umbraco.Web/Controllers/UmbProfileController.cs
src/Umbraco.Web/Controllers/UmbRegisterController.cs
src/Umbraco.Web/Models/LoginModel.cs
src/Umbraco.Web/Models/LoginStatusModel.cs
src/Umbraco.Web/Models/ProfileModel.cs
src/Umbraco.Web/Models/RegisterModel.cs
src/Umbraco.Web/Models/UmbracoProperty.cs
src/Umbraco.Web/Mvc/UmbracoViewPageOfTModel.cs
src/Umbraco.Web/PublishedCache/XmlPublishedCache/PublishedMediaCache.cs
src/Umbraco.Web/Security/WebSecurity.cs
src/Umbraco.Web/Umbraco.Web.csproj
src/Umbraco.Web/UmbracoModule.cs
src/Umbraco.Web/WebApi/UmbracoApiController.cs
src/Umbraco.Web/umbraco.presentation/library.cs
src/Umbraco.Web/umbraco.presentation/umbraco/controls/ContentTypeControlNew.ascx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/create/PartialViewMacrosTasks.cs
src/Umbraco.Web/umbraco.presentation/umbraco/create/PartialViewTasks.cs
src/Umbraco.Web/umbraco.presentation/umbraco/editContent.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/login.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/members/EditMember.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/users/EditUser.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbracobase/baseLibrary.cs
src/Umbraco.Web/umbraco.presentation/umbracobase/restExtension.cs
src/umbraco.businesslogic/User.cs
src/umbraco.providers/UsersMembershipProvider.cs
src/umbraco.providers/members/UmbracoMembershipProvider.cs
2014-02-13 16:22:51 +11:00
Morten Christensen
a38e0dcf86
Adding integer overload for UmbracoEntity so it can be used with a dynamic object containing either a boolean or integer retrieved from the database to initialize the UmbracoEntity object.
2014-02-12 12:47:47 +01:00
Shannon
09b7186713
Completes: U4-2963 Updated EntityService / IUmbracoEntity to have a dictionary to fill additional data - fixes merge issues and explicitly implements interface for entities that are not UmbracoEntity and hides other implementations from intellisense.
2013-10-09 13:32:58 +11:00
Shannon
9c96b247be
Completes: U4-2963 Updated EntityService / IUmbracoEntity to have a dictionary to fill additional data
2013-10-01 19:37:51 +10:00
Shannon
45dabd6293
Lots of work on U4-2722 Change Property Editors over to use unique alias instead of GUID
...
it compiles but i haven't had time to test anything yet, will start all unit testing/fixing tomorrow, just needed to save this work somewhere.
2013-09-05 18:38:54 +10:00
Morten Christensen
242443d861
Fixes the EntityRepository for Content and Media, so trees load correctly.
...
Fixes U4-2306
Fixes loading of MNTP.
FolderBrowser is now able to show multiple images on a single media item.
FolderBrowser only shows images and not containers.
2013-06-01 20:40:51 -02:00
Morten Christensen
b19621c07b
Improving tree performance for Content and Media trees using the new EntityService and the thin IUmbracoEntity object.
...
Updating a few internal overloads as well as adding new ones to ensure backwards compatibility for events used by the tree.
Fixing issue with the Published/Unpublished/Saved/Pending Changes states shown in the content tree.
2013-05-22 11:06:21 -02:00
Morten Christensen
640be73a66
A few refactoring bits for the FolderBrowserService.
2013-04-03 07:03:57 -02:00
Morten Christensen
a4c9c3bfd9
Updating EntityService and repository to add content and media specific properties to the UmbracoEntity for performance enhancements.
...
Adding sample implementation in the BaseMediaTree but keeping it commented out as it won't work with the legacy events.
And a bit of code cleanup
2013-04-03 05:25:26 -02:00
Morten Christensen
3f7a93e0c9
Adding test fixture for the EntityService.
...
Refactoring sql query used in the EntityRepository.
Correcting a few issues with the UmbracoObjectTypes extensions.
2013-03-30 09:52:37 -01:00
Shannon Deminick
7ea87638f7
Updates all Entity models to use SetPropertyValueAndDetectChanges for setting all simple properties so that
...
tracking changes works the way it is supposed to. Creates a TracksChangesEntityBase class for any other entity
that wants to implement IRememberBeingDirty (now Entity inherits from this). Upgraded a bunch of other entities that
were not tracking changes properly.
2013-03-21 00:05:56 +06:00
Morten Christensen
381157ac5d
Initial implementation of the EntityRepository and Service, which will be used to retrieve a basic object with a minimum set of propreties for the models that have their base in the umbracoNode table.
...
The intention is to use this for loading trees in the backoffice for faster loading.
2013-03-17 16:25:21 -01:00