Shannon
e3acdbe85b
Fixes up dictionary and language repositories to have underlying simple get repositories since they support getting by id, unique id and string variations but we want to have native repository enabled caching for these items so these get methods now use private repositories based on these keys. Adds more tests, removes N+1 queries for languages and dictionary items. Removes RuntimeCacheProvider, we only want one type of cache, this simplifies things a lot.
2015-01-13 13:25:36 +11:00
Shannon
5bef3593dd
More dependency cleanup, less singleton usages, better testing implementations
2015-01-09 15:27:47 +11:00
Shannon
defc9d3bc2
Updated all repo's to have their correct ctor's with their correct dependencies. Updated them all to accept ILogger updated all other dependencies with the same without breaking anything since all is internal, or obsoleted other public methods. Updates lots of the tests with mock instances instead, now more tests have less singleton dependencies, easier to test, much clearer and more IoC driven. Updated unit tests to supply the ILogger for required objects, tests should run faster now since most things are just mocked.
2015-01-09 10:51:15 +11:00
Shannon
44a39e7ca6
Fixes: U4-5055 Umbraco update fails with large set of media content due to timeout in RebuildXmlStructures. Adds RebuildXmlStructures to content, media, member services as public APIs (though people won't really use them), the underlying repositories now rebuild these structures using a single transactions but queried by pages of 5000 which should reduce memory overhead if there's a ton of media, etc... Added tests for this too. Added CountPublished to ContentService too.
2014-10-23 18:31:08 +10:00
Shannon
102b97fa82
streamline repo's get by paged results to have a zero based index for page index/number. Refactors member repo to use the same queries as content/media (U4-5469) this should save a lot of perf
2014-09-16 23:21:27 +10:00
Shannon
d3bfb5e94d
Updates the versionable repo (content, members, media) to far more efficiently load in property and pre-value data, in fact the performance tests have show that this improves performance even more! The real underlying reason for these changes is so that we don't end up with a giant SQL 'IN' clause for these queries, and that these queries are far faster than IN clause queries.
2014-09-11 16:04:16 +10:00
Shannon
202f582661
Renames TagsRepository to TagRepository, Fixes n+1 queries on entity repository, fixes n+1 queries on tag repository, updates umbraco member types to specify an entity type for IMember and IMemberType so the entity repository can use it.
2014-09-01 18:06:24 +10:00
AndyButland
ca2dd3eb47
Fixed issue with list view filter; further unit tests for list view paging
2014-08-14 08:42:36 +02:00
AndyButland
8ea5b6fb46
Unit tests for content repository paged queries; amends to fix ordering issues
2014-08-14 00:16:37 +02:00
Shannon
2d6d95a63e
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
...
Conflicts:
src/Umbraco.Tests/Persistence/Auditing/AuditTests.cs
src/Umbraco.Tests/Persistence/PetaPocoExtensionsTest.cs
src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserTypeRepositoryTest.cs
src/Umbraco.Tests/PublishedContent/DynamicDocumentTestsBase.cs
src/Umbraco.Tests/PublishedContent/PublishedContentExtensionTests.cs
src/Umbraco.Tests/Routing/NiceUrlsProviderWithDomainsTests.cs
src/Umbraco.Tests/Services/LocalizationServiceTests.cs
src/Umbraco.Tests/Services/PackagingServiceTests.cs
src/Umbraco.Tests/Services/PerformanceTests.cs
src/Umbraco.Tests/TestHelpers/BaseDatabaseFactoryTest.cs
src/Umbraco.Tests/Umbraco.Tests.csproj
2014-03-17 19:44:34 +11:00
Shannon
d19d1b3a18
Changes database behavior in integration tests to be opt-in, removes the db behavior to have a new schema per fixture, now we only deal in new files + schema per fixture/tests as it was taking longer to uninstall the db tables than just delete the file.
2014-03-17 19:38:29 +11:00
Shannon
894a649574
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
2014-03-11 15:02:48 +11:00
Shannon
48bbf1ecb2
Fixes unit tests
2014-03-11 15:02:23 +11:00
Shannon
3c3f2d7c8d
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
...
Conflicts:
src/Umbraco.Core/Constants-Conventions.cs
src/Umbraco.Core/DateTimeExtensions.cs
src/Umbraco.Core/Models/PropertyType.cs
src/Umbraco.Core/Persistence/Factories/MemberTypeReadOnlyFactory.cs
src/Umbraco.Core/Persistence/Factories/PropertyGroupFactory.cs
src/Umbraco.Core/Persistence/Repositories/ContentTypeBaseRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IUserRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberTypeRepository.cs
src/Umbraco.Core/Persistence/Repositories/PermissionRepository.cs
src/Umbraco.Tests/App.config
src/Umbraco.Tests/Persistence/Repositories/MemberTypeRepositoryTest.cs
src/Umbraco.Tests/UmbracoExamine/ExamineBaseTest.cs
src/Umbraco.Tests/packages.config
src/Umbraco.Web.UI/packages.config
src/Umbraco.Web/Umbraco.Web.csproj
src/Umbraco.Web/app.config
src/Umbraco.Web/umbraco.presentation/umbraco/developer/Xslt/xsltInsertValueOf.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/umbracoField.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/members/EditMember.aspx.cs
src/umbraco.MacroEngines/App.Config
src/umbraco.providers/members/UmbracoMembershipProvider.cs
2014-02-21 16:32:53 +11:00
Shannon
750f7a6b33
Updates some method names to be less confusing regarding permissions
2014-02-21 15:55:56 +11:00
Shannon
a1603c3cbd
Merge remote-tracking branch 'origin/6.2.0' into 7.1.0
...
Conflicts:
src/Umbraco.Core/Models/Membership/EntityPermission.cs
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/PermissionRepository.cs
src/Umbraco.Core/PluginManager.cs
src/Umbraco.Web.UI/config/trees.config
src/Umbraco.Web/Search/ExamineEvents.cs
src/Umbraco.Web/umbraco.presentation/umbraco/Trees/TreeDefinitionCollection.cs
2014-02-17 15:56:48 +11:00
Shannon
61766287bc
Cleans up some more of the old 'object' User Id references.
2014-02-17 15:26:38 +11:00
Shannon
d36cd035e9
Fixes merge issues
2014-02-13 16:46:52 +11: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
Shannon
690d08aa8c
Completes wrapping the new IUserService from the legacy User object. Ensures User cache is handled correctly and distributed cache is updated for Users.
2014-01-28 10:46:59 +11:00
Shannon
297d54ec98
Merge remote-tracking branch 'origin/6.2.0' into 7.0.2
...
Conflicts:
src/Umbraco.Core/Umbraco.Core.csproj
src/Umbraco.Tests/Umbraco.Tests.csproj
src/umbraco.cms/businesslogic/CMSNode.cs
2014-01-10 17:05:23 +11:00
Shannon
531306a091
Created notifications repository and service with unit tests, then need to start integrating that so notifications are properly sent.
2014-01-10 17:03:00 +11:00
Shannon
6b760dcfe8
Merge remote-tracking branch 'origin/6.2.0' into 7.0.2
...
Conflicts:
src/Umbraco.Core/Models/Membership/EntityPermission.cs
src/Umbraco.Core/Persistence/Factories/UserFactory.cs
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IUserRepository.cs
src/Umbraco.Core/Persistence/Repositories/PermissionRepository.cs
src/Umbraco.Core/Services/ContentService.cs
src/Umbraco.Core/Umbraco.Core.csproj
src/Umbraco.Tests/Services/UserServiceTests.cs
2014-01-08 15:47:53 +11:00
Shannon
5ded732188
fixing some merge issues
2014-01-08 15:43:58 +11:00
Shannon
9467a67661
Backports the permissions repo updates, permissions on user/content repo updates and default permissions for users
2014-01-08 15:42:49 +11:00
Shannon
d6a83d9887
Merge remote-tracking branch 'origin/6.2.0' into 7.0.2
...
Conflicts:
src/Umbraco.Core/Models/IMember.cs
src/Umbraco.Core/Models/Member.cs
src/Umbraco.Core/Models/Membership/IUser.cs
src/Umbraco.Core/Models/Membership/MembershipExtensions.cs
src/Umbraco.Core/Models/Membership/UmbracoMembershipMember.cs
src/Umbraco.Core/Models/Membership/User.cs
src/Umbraco.Core/Models/Membership/UserProfile.cs
src/Umbraco.Core/Persistence/Factories/MemberReadOnlyFactory.cs
src/Umbraco.Core/Persistence/Factories/UserFactory.cs
src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IUserRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/PermissionRepository.cs
src/Umbraco.Core/Persistence/Repositories/UserRepository.cs
src/Umbraco.Core/Services/IMembershipUserService.cs
src/Umbraco.Core/Services/MemberService.cs
src/Umbraco.Core/Services/UserService.cs
src/Umbraco.Tests/Persistence/Querying/PetaPocoSqlTests.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserTypeRepositoryTest.cs
src/Umbraco.Tests/Services/ContentServiceTests.cs
src/Umbraco.Tests/Services/UserServiceTests.cs
src/Umbraco.Tests/TestHelpers/Entities/MockedUser.cs
src/Umbraco.Tests/TestHelpers/Entities/MockedUserType.cs
src/Umbraco.Web.UI/umbraco/controls/PasswordChanger.ascx.cs
src/Umbraco.Web.UI/umbraco/dashboard/ChangePassword.ascx
src/Umbraco.Web/Umbraco.Web.csproj
src/Umbraco.Web/umbraco.presentation/umbraco/create/userTasks.cs
src/Umbraco.Web/umbraco.presentation/umbraco/dashboard/ChangePassword.ascx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/members/EditMember.aspx.cs
src/Umbraco.Web/umbraco.presentation/umbraco/users/EditUser.aspx.cs
src/umbraco.businesslogic/User.cs
src/umbraco.providers/members/UmbracoMembershipProvider.cs
2014-01-08 14:32:38 +11:00
Shannon
85c85cd1eb
Simplifies and streamlines the models used between IMember and IUser along with the services used for both of these entities.
...
Updates the model used to store and retreive permissions, instead of a single string it is an Enumerable<string> which gives us some flexibility in the future and since this was not public (yet) it's the perfect time to do this.
Removes the base Profile classes from User since these are not required, since we cannot share base classes between Member and User, these weren't necessary.
2014-01-06 11:04:26 +11:00
Shannon
2ce952bdbb
backports data type service updates and fixes unit tests with correct seeding value.
2013-12-16 17:17:23 +11:00
Shannon
d3b8ac31c7
Fixes up a bunch of failing tests with hard coded ids. Still need to fix a few more
2013-11-19 15:36:30 +11:00
Shannon
7425e070d2
Got the SetTags and RemoveTags methods in place and working.
2013-10-04 17:13:57 +10:00
Shannon
81365cec25
Merge remote-tracking branch 'origin/6.2.0' into 7.0.0
...
Conflicts:
src/Umbraco.Core/Persistence/RepositoryFactory.cs
src/Umbraco.Tests/Models/DataValueSetterTests.cs
src/Umbraco.Tests/Persistence/Repositories/ContentRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserRepositoryTest.cs
src/Umbraco.Tests/Persistence/Repositories/UserTypeRepositoryTest.cs
src/Umbraco.Tests/TestHelpers/FakeHttpContextFactory.cs
src/Umbraco.Tests/Umbraco.Tests.csproj
src/Umbraco.Tests/packages.config
2013-09-18 12:59:46 +10:00
Shannon
b17db9f143
Fixed last failing unit test with repo's
2013-09-18 12:42:18 +10:00
Shannon
8fe7c0da9e
Changed all repository tests to ensure they are not testing with cache enabled... now to fix the problems :(
2013-09-18 11:40:40 +10:00
Shannon
5036df4174
Fixes permissions issue with default permissions and ensures default permissions come from the user type instead of the unused db column in the umbracoUser table. Fixes up the FilterAllowedOutgoingContentAttributeTests attribute with the new permissions changes. Fixes: U4-2771 Content sort dialog, ysod on loading children
2013-09-10 13:38:45 +10:00
Shannon
e962e86c3c
Merge remote-tracking branch 'origin/6.2.0' into 7.0.0
...
Conflicts:
src/Umbraco.Core/Models/Rdbms/MemberReadOnlyDto.cs
src/Umbraco.Core/Models/Rdbms/PropertyDataReadOnlyDto.cs
src/Umbraco.Core/Persistence/Querying/BaseExpressionHelper.cs
src/Umbraco.Core/Persistence/Repositories/Interfaces/IMemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberRepository.cs
src/Umbraco.Core/Persistence/Repositories/MemberTypeRepository.cs
src/Umbraco.Core/StringExtensions.cs
src/Umbraco.Core/Umbraco.Core.csproj
src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
src/Umbraco.Tests/Umbraco.Tests.csproj
src/Umbraco.Web.UI/umbraco/dialogs/ChangeDocType.aspx.cs
src/Umbraco.Web/Umbraco.Web.csproj
2013-09-10 11:49:05 +10:00
Morten Christensen
0c05836537
Fixes U4-2791 Error creating node containing @ v6.1.4.
...
Adding unit test which covers both U4-2791 and U4-2607
2013-09-05 10:44:28 +02:00
Shannon
88e9c9c522
Fixes up tests for content permissions repository with permissions repo change.
2013-08-09 15:58:49 +10:00
Shannon
b91d0bb117
Updates ContentRepository to bulk insert all parent permissions at once (overload to the AssignEntityPermissions method)
2013-07-09 10:08:31 +10:00
Shannon
b7f6195791
Started adding base PermissionsRepository for sub classes to use for assigning permissions, created a BulkImport extension methods for PetaPoco with tests since we'll be needing that for assigning permissions in a nice way. Wrote unit tests for all sql gen for permissions and assigning permissions. This all starts fixing #U4-2161 but there's still a bit more work to do.
2013-07-08 17:29:26 +10:00
Shannon
a132f609d7
backports changes for -> Finished upgrading the UserRepository and entities to properly support Users' Allowed Sections & streamlines Persistence/Mappers with less code duplication.
2013-07-03 16:40:22 +10:00
Shannon Deminick
50b05d25f5
Added BaseUmbracoApplicationTests and fixed up dispose on the ApplicationContext to ensure the db object is disposed and doesn't
...
reset the PluginManager (as this shouldn't really need to be done). Cleaned up all unit tests so they follow the same structure and
uses this base class where necessary and eliminates a lot of duplicate code.
2013-03-13 18:31:07 +04:00
Shannon Deminick
75d218d2e3
Updated how mappers for persistence work with the MapperFor attribute and have made BaseMapper public but have
...
kept all properties, etc.. internal just so that they can be found so we don't have to register them.
Updates unit test to ensure the plugin manager is init'd properly with the 'false' override. Ensures that the base
db test also initializes the plugin manager properly.
2013-03-13 01:09:29 +04:00
Sebastiaan Janssen
6e0af6827e
Fix weird merge issues
2013-01-31 14:35:18 -01:00
Morten Christensen
b20bb7a5a2
Fixes unit tests using the ContentService.Save method. Because we are using .ToXml in the save method to save preview xml we need to setup the DataTypesResolver in the test setup.
2013-01-30 16:23:33 -01:00
Morten Christensen
ef9b0b6433
Fixes U4-1429 - A name is now required for creating Content and Media.
2013-01-15 10:12:23 -01:00
Morten Christensen
877c38b8bc
Moving RepositoryFactory to constructor to avoid hard dependency on the RepositoryResolver in the services.
2012-12-12 10:47:14 -01:00
Shannon Deminick
feff68ada8
Refactor new Services for thread safety, plus unit tests. Not all services are updated to be correct, only the
...
ContentService, the rest need to be updated as well.
2012-12-11 12:03:36 +05:00
Shannon Deminick
c9f40a74de
Changed all data services to create one repository type in the constructor instead of resolving
...
them in each method since they are only supposed to be using their single unit of work anyways (resolving
will return the same repository anyways, but in some cases it might have been with a different UOW)
Removed SetUnitOfWork method on IRepository as this is not needed.
Removed the old implementation of RepositoryResolver and replaces it with the RepositoryInstanceResolver (but
maintained the name of RepositoryResolver)
2012-12-10 02:58:23 +05:00
Shannon Deminick
f55d639514
Simplifies the ResolveByType so that it only requires the one interface, this is done by adding a new non-generic
...
IRepository interface.
2012-12-09 09:21:26 +05:00
Morten Christensen
e07fc8c2ba
Adding language column to cmsContentVersion
2012-11-26 09:02:49 -01:00