Merge branch 'master-v7' into dev-v8

Conflicts:
	build/UmbracoVersion.txt
	src/Umbraco.Core/Configuration/UmbracoVersion.cs
	src/Umbraco.Core/CoreBootManager.cs
	src/Umbraco.Core/Persistence/Migrations/Upgrades/TargetVersionSeven/UpdateRelatedLinksData.cs
	src/Umbraco.Core/Persistence/Repositories/ContentRepository.cs
	src/Umbraco.Core/Persistence/Repositories/ContentTypeBaseRepository.cs
	src/Umbraco.Core/Persistence/Repositories/ContentTypeRepository.cs
	src/Umbraco.Core/Persistence/Repositories/DataTypeDefinitionRepository.cs
	src/Umbraco.Core/Persistence/Repositories/DictionaryRepository.cs
	src/Umbraco.Core/Persistence/Repositories/DomainRepository.cs
	src/Umbraco.Core/Persistence/Repositories/EntityContainerRepository.cs
	src/Umbraco.Core/Persistence/Repositories/LanguageRepository.cs
	src/Umbraco.Core/Persistence/Repositories/MediaTypeRepository.cs
	src/Umbraco.Core/Persistence/Repositories/MemberGroupRepository.cs
	src/Umbraco.Core/Persistence/Repositories/MemberTypeRepository.cs
	src/Umbraco.Core/Persistence/Repositories/PublicAccessRepository.cs
	src/Umbraco.Core/Persistence/Repositories/RepositoryBase.cs
	src/Umbraco.Core/Persistence/Repositories/TemplateRepository.cs
	src/Umbraco.Core/Persistence/RepositoryFactory.cs
	src/Umbraco.Core/PropertyEditors/PropertyEditorValueConvertersResolver.cs
	src/Umbraco.Core/Services/ContentTypeService.cs
	src/Umbraco.Core/Services/FileService.cs
	src/Umbraco.Core/Services/LocalizationService.cs
	src/Umbraco.Core/Services/MemberTypeService.cs
	src/Umbraco.Core/Services/PackagingService.cs
	src/Umbraco.Core/Services/ServiceContext.cs
	src/Umbraco.Tests/Persistence/Querying/ContentTypeSqlMappingTests.cs
	src/Umbraco.Tests/Persistence/Repositories/ContentTypeRepositoryTest.cs
	src/Umbraco.Tests/Persistence/Repositories/DataTypeDefinitionRepositoryTest.cs
	src/Umbraco.Tests/Persistence/Repositories/DictionaryRepositoryTest.cs
	src/Umbraco.Tests/Persistence/Repositories/MediaTypeRepositoryTest.cs
	src/Umbraco.Tests/Persistence/Repositories/MemberRepositoryTest.cs
	src/Umbraco.Tests/Umbraco.Tests.csproj
	src/Umbraco.Tests/Web/Mvc/UmbracoViewPageTests.cs
	src/Umbraco.Web.UI/Umbraco.Web.UI.csproj
	src/Umbraco.Web.UI/config/ClientDependency.config
	src/Umbraco.Web.UI/packages.config
	src/Umbraco.Web.UI/web.Template.config
	src/Umbraco.Web/Models/Mapping/ContentModelMapper.cs
	src/Umbraco.Web/Models/Mapping/ContentTypeModelMapper.cs
	src/Umbraco.Web/PropertyEditors/ImageCropperPropertyValueEditor.cs
	src/Umbraco.Web/PropertyEditors/ListViewPropertyEditor.cs
	src/Umbraco.Web/Services/ApplicationTreeService.cs
	src/Umbraco.Web/Services/SectionService.cs
	src/Umbraco.Web/Trees/MemberTreeController.cs
	src/Umbraco.Web/UI/Pages/ClientTools.cs
	src/Umbraco.Web/Umbraco.Web.csproj
	src/Umbraco.Web/WebBootManager.cs
	src/Umbraco.Web/umbraco.presentation/macro.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadNodeTypes.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/channels/api.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/create/PartialViewTasksBase.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/exportDocumenttype.aspx.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/dialogs/protectPage.aspx.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/templateControls/ItemRenderer.cs
	src/Umbraco.Web/umbraco.presentation/umbraco/uQuery/MediaExtensions.cs
	src/umbraco.businesslogic/BasePages/ClientTools.cs
	src/umbraco.businesslogic/UmbracoSettings.cs
	src/umbraco.cms/businesslogic/CMSNode.cs
	src/umbraco.cms/businesslogic/Content.cs
	src/umbraco.cms/businesslogic/cache/Cache.cs
	src/umbraco.cms/businesslogic/datatype/DataTypeDefinition.cs
	src/umbraco.cms/businesslogic/propertytype/propertytype.cs
	src/umbraco.cms/businesslogic/web/Document.cs
	src/umbraco.cms/helpers/DeepLink.cs
	src/umbraco.editorControls/tinyMCE3/TinyMCE.cs
This commit is contained in:
Shannon
2016-03-10 19:20:15 +01:00
624 changed files with 18120 additions and 8764 deletions

View File

@@ -2,6 +2,7 @@ using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Web;
using System.Xml;
using System.Xml.Linq;
using Umbraco.Core.Configuration;
@@ -181,6 +182,20 @@ namespace Umbraco.Core.Services
xml.Add(new XAttribute("Definition", dataTypeDefinition.Key));
xml.Add(new XAttribute("DatabaseType", dataTypeDefinition.DatabaseType.ToString()));
var folderNames = string.Empty;
if (dataTypeDefinition.Level != 1)
{
//get url encoded folder names
var folders = dataTypeService.GetContainers(dataTypeDefinition)
.OrderBy(x => x.Level)
.Select(x => HttpUtility.UrlEncode(x.Name));
folderNames = string.Join("/", folders.ToArray());
}
if (string.IsNullOrWhiteSpace(folderNames) == false)
xml.Add(new XAttribute("Folders", folderNames));
return xml;
}
@@ -340,9 +355,10 @@ namespace Umbraco.Core.Services
/// Exports an <see cref="IContentType"/> item to xml as an <see cref="XElement"/>
/// </summary>
/// <param name="dataTypeService"></param>
/// <param name="contentTypeService"></param>
/// <param name="contentType">Content type to export</param>
/// <returns><see cref="XElement"/> containing the xml representation of the IContentType object</returns>
public XElement Serialize(IDataTypeService dataTypeService, IContentType contentType)
public XElement Serialize(IDataTypeService dataTypeService, IContentTypeService contentTypeService, IContentType contentType)
{
var info = new XElement("Info",
new XElement("Name", contentType.Name),
@@ -398,9 +414,11 @@ namespace Umbraco.Core.Services
new XElement("Type", propertyType.PropertyEditorAlias),
new XElement("Definition", definition.Key),
new XElement("Tab", propertyGroup == null ? "" : propertyGroup.Name),
new XElement("SortOrder", propertyType.SortOrder),
new XElement("Mandatory", propertyType.Mandatory.ToString()),
new XElement("Validation", propertyType.ValidationRegExp),
new XElement("Description", new XCData(propertyType.Description)));
propertyType.ValidationRegExp != null ? new XElement("Validation", propertyType.ValidationRegExp) : null,
propertyType.Description != null ? new XElement("Description", new XCData(propertyType.Description)) : null);
genericProperties.Add(genericProperty);
}
@@ -414,11 +432,28 @@ namespace Umbraco.Core.Services
tabs.Add(tab);
}
return new XElement("DocumentType",
info,
structure,
genericProperties,
tabs);
var xml = new XElement("DocumentType",
info,
structure,
genericProperties,
tabs);
var folderNames = string.Empty;
//don't add folders if this is a child doc type
if (contentType.Level != 1 && masterContentType == null)
{
//get url encoded folder names
var folders = contentTypeService.GetContentTypeContainers(contentType)
.OrderBy(x => x.Level)
.Select(x => HttpUtility.UrlEncode(x.Name));
folderNames = string.Join("/", folders.ToArray());
}
if (string.IsNullOrWhiteSpace(folderNames) == false)
xml.Add(new XAttribute("Folders", folderNames));
return xml;
}
/// <summary>