From 7bfca8a0922eaaeeeb8c177a994692695dd3dc14 Mon Sep 17 00:00:00 2001 From: Dmitry Dzygin Date: Fri, 3 Feb 2017 11:25:33 +0100 Subject: [PATCH 01/13] Fixing an exception during system setup --- Composite/Core/ServiceLocator.cs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/Composite/Core/ServiceLocator.cs b/Composite/Core/ServiceLocator.cs index 56087e3a32..5c27455ec2 100644 --- a/Composite/Core/ServiceLocator.cs +++ b/Composite/Core/ServiceLocator.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.Linq; using System.Web; +using Composite.Core.Configuration; using Microsoft.Extensions.DependencyInjection; namespace Composite.Core @@ -19,7 +20,7 @@ public static class ServiceLocator { private const string HttpContextKey = "HttpApplication.ServiceScope"; private static IServiceCollection _serviceCollection = new ServiceCollection(); - private static IServiceProvider _serviceProvider = null; + private static IServiceProvider _serviceProvider; private static ConcurrentDictionary _hasTypeLookup = new ConcurrentDictionary(); private static Func _serviceProviderBuilder = s => s.BuildServiceProvider(); @@ -122,6 +123,12 @@ internal static IServiceProvider ServiceProvider internal static bool HasService(Type serviceType) { Verify.ArgumentNotNull(serviceType, nameof(serviceType)); + + if (!SystemSetupFacade.IsSystemFirstTimeInitialized || SystemSetupFacade.SetupIsRunning) + { + return false; + } + Verify.IsNotNull(_serviceProvider, "IServiceProvider not build - call out of expected sequence."); bool hasType; From ae8453479a8b4f27b64c705dd495a8a8a8bf386e Mon Sep 17 00:00:00 2001 From: Marcus Wendt Date: Fri, 3 Feb 2017 17:22:39 +0100 Subject: [PATCH 02/13] Fix issue where ILoginSessionStore fail to initialize as expected during setup (one thread running setup, another thread hitting message queue service). Mostly a "reset and re-init site situation". --- .../Runtime/LoginSessionStoreFactory.cs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Composite/C1Console/Security/Plugins/LoginSessionStore/Runtime/LoginSessionStoreFactory.cs b/Composite/C1Console/Security/Plugins/LoginSessionStore/Runtime/LoginSessionStoreFactory.cs index 48548109fd..d04569e0e8 100644 --- a/Composite/C1Console/Security/Plugins/LoginSessionStore/Runtime/LoginSessionStoreFactory.cs +++ b/Composite/C1Console/Security/Plugins/LoginSessionStore/Runtime/LoginSessionStoreFactory.cs @@ -15,12 +15,14 @@ public LoginSessionStoreFactory() public new ILoginSessionStore CreateDefault() { - var loginSessionstores = - (ServiceLocator.GetServices()?? - Enumerable.Empty()) - .Union(new[] { base.CreateDefault() }); + if (ServiceLocator.HasService(typeof(INoneConfigurationBasedLoginSessionStore))) + { + var loginSessionstores = ServiceLocator.GetServices().Union(new[] { base.CreateDefault() }); - return new LoginSessionStoreResolver(loginSessionstores); + return new LoginSessionStoreResolver(loginSessionstores); + } + + return new LoginSessionStoreResolver(new[] { base.CreateDefault() }); } } } From 071bbf418d1b18ed77321e9245254c7ec1ba15e6 Mon Sep 17 00:00:00 2001 From: Dmitry Dzygin Date: Fri, 3 Feb 2017 17:27:05 +0100 Subject: [PATCH 03/13] SqlDataProvider - fixing an exception when using complex LINQ statements https://github.com/Orckestra/CMS-Packages/issues/52 --- .../Data/Foundation/DataFacadeQueryable.cs | 71 +++++++------------ 1 file changed, 25 insertions(+), 46 deletions(-) diff --git a/Composite/Data/Foundation/DataFacadeQueryable.cs b/Composite/Data/Foundation/DataFacadeQueryable.cs index 71d5ec7303..00f1335d22 100644 --- a/Composite/Data/Foundation/DataFacadeQueryable.cs +++ b/Composite/Data/Foundation/DataFacadeQueryable.cs @@ -58,13 +58,8 @@ public IQueryable CreateQuery(Expression expression) public S Execute(Expression expression) { - bool pullIntoMemory = ShouldBePulledIntoMemory(expression); - - var handleInProviderVisitor = new DataFacadeQueryableExpressionVisitor(pullIntoMemory); - - Expression newExpression = handleInProviderVisitor.Visit(expression); - - IQueryable source = handleInProviderVisitor.Queryable; + IQueryable source; + var newExpression = BuildSqlCompatibleExpression(expression, out source); return (S)source.Provider.Execute(newExpression); } @@ -86,32 +81,41 @@ public IEnumerator GetEnumerator() } } - bool pullIntoMemory = ShouldBePulledIntoMemory(_currentExpression); + IQueryable source; + var newExpression = BuildSqlCompatibleExpression(_currentExpression, out source); + + IQueryable queryable = (IQueryable)source.Provider.CreateQuery(newExpression); + + return queryable.GetEnumerator(); + } + + + private static Expression BuildSqlCompatibleExpression(Expression expression, out IQueryable source) + { + bool pullIntoMemory = ShouldBePulledIntoMemory(expression); + var handleInProviderVisitor = new DataFacadeQueryableExpressionVisitor(pullIntoMemory); - Expression newExpression = handleInProviderVisitor.Visit(_currentExpression); + var newExpression = handleInProviderVisitor.Visit(expression); // Checking if the source contains queries both from SQL and Composite.Data.Caching.CachingQueryable in-memory queries. // In this case, we can replace CachingQueryable instances with sql queries which allows building correct sql statements. var analyzer = new QueryableAnalyzerVisitor(); analyzer.Visit(newExpression); - if(analyzer.CachedSqlQueries > 1 + if (analyzer.CachedSqlQueries > 1 || (analyzer.SqlQueries > 0 && analyzer.CachedSqlQueries > 0)) { newExpression = new CachedQueryExtractorVisitor().Visit(newExpression); newExpression = handleInProviderVisitor.Visit(newExpression); } - // Executing the query - IQueryable source = handleInProviderVisitor.Queryable; - IQueryable queryable = (IQueryable)source.Provider.CreateQuery(newExpression); + source = handleInProviderVisitor.Queryable; - return queryable.GetEnumerator(); + return newExpression; } - IEnumerator IEnumerable.GetEnumerator() { MethodInfo methodInfo = DataFacadeReflectionCache.GetDataFacadeQueryableGetEnumeratorMethodInfo(typeof(T)); @@ -136,11 +140,7 @@ public IQueryable CreateQuery(Expression expression) - public Type ElementType - { - get { return typeof(T); } - } - + public Type ElementType => typeof(T); public object Execute(Expression expression) @@ -152,33 +152,15 @@ public object Execute(Expression expression) - public Expression Expression - { - get - { - if (_currentExpression != null) - { - return _currentExpression; - } - - return Expression.Constant(this); - } - } - + public Expression Expression => _currentExpression ?? Expression.Constant(this); - public ICollection Sources - { - get { return _sources; } - } + public ICollection Sources => _sources; - public Type InterfaceType - { - get { return typeof (T); } - } + public Type InterfaceType => typeof (T); - private bool ShouldBePulledIntoMemory(Expression expression) + private static bool ShouldBePulledIntoMemory(Expression expression) { var analyzer = new QueryableAnalyzerVisitor(); analyzer.Visit(expression); @@ -195,10 +177,7 @@ public bool IsEnumerableQuery } } - public IQueryProvider Provider - { - get { return this; } - } + public IQueryProvider Provider => this; private class QueryableAnalyzerVisitor : ExpressionVisitor From d7ba441bc1f0f2e6e7f2fbb376a4c3fea92b4ad9 Mon Sep 17 00:00:00 2001 From: Marcus Wendt Date: Fri, 3 Feb 2017 18:10:05 +0100 Subject: [PATCH 04/13] Setup fix --- .../Core/Localization/LocalizationFacade.cs | 21 ++++++++++++++++++- .../WebClient/Setup/SetupServiceFacade.cs | 3 +-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/Composite/Core/Localization/LocalizationFacade.cs b/Composite/Core/Localization/LocalizationFacade.cs index 90626dd905..f92ad74eb5 100644 --- a/Composite/Core/Localization/LocalizationFacade.cs +++ b/Composite/Core/Localization/LocalizationFacade.cs @@ -126,7 +126,25 @@ public static void RenameUrlMappingNameForLocale(string cultureName, string newU /// /// public static void AddLocale(CultureInfo cultureInfo, string urlMappingName, bool addAccessToAllUsers = true, bool makeFlush = true) - { + { + AddLocale(cultureInfo, urlMappingName, addAccessToAllUsers, makeFlush, false); + } + + + + + /// + /// Adds a locale to the system. Throws exception if the given locale has already been installed or + /// if the given url mapping name has already been used. If the given locale is the first, its set + /// to be the default locale. + /// + /// + /// + /// + /// + /// + internal static void AddLocale(CultureInfo cultureInfo, string urlMappingName, bool addAccessToAllUsers, bool makeFlush, bool isDefault) + { using (TransactionScope transactionScope = TransactionsFacade.CreateNewScope()) { Verify.That(!IsLocaleInstalled(cultureInfo), "The locale '{0}' has already been added to the system", cultureInfo); @@ -141,6 +159,7 @@ public static void AddLocale(CultureInfo cultureInfo, string urlMappingName, boo systemActiveLocale.Id = Guid.NewGuid(); systemActiveLocale.CultureName = cultureInfo.Name; systemActiveLocale.UrlMappingName = urlMappingName; + systemActiveLocale.IsDefault = isDefault; DataFacade.AddNew(systemActiveLocale); if (addAccessToAllUsers) diff --git a/Composite/Core/WebClient/Setup/SetupServiceFacade.cs b/Composite/Core/WebClient/Setup/SetupServiceFacade.cs index 5f7eca4679..305feed704 100644 --- a/Composite/Core/WebClient/Setup/SetupServiceFacade.cs +++ b/Composite/Core/WebClient/Setup/SetupServiceFacade.cs @@ -114,8 +114,7 @@ public static bool SetUp(string setupDescriptionXml, string username, string pas ApplicationLevelEventHandlers.ApplicationStartInitialize(); Log.LogInformation(VerboseLogTitle, "Creating first locale: " + language); - LocalizationFacade.AddLocale(locale, "", true, false); - LocalizationFacade.SetDefaultLocale(locale); + LocalizationFacade.AddLocale(locale, "", true, false, true); Log.LogInformation(VerboseLogTitle, "Creating first user: " + username); From 839f89a5fc87437179fcc07d51ea466e3d987439 Mon Sep 17 00:00:00 2001 From: Dmitry Dzygin Date: Mon, 6 Feb 2017 10:33:26 +0100 Subject: [PATCH 05/13] UrlActionToken - adding an ability set a tab icon --- Composite/C1Console/Actions/UrlActionToken.cs | 31 +++++++++++++++++-- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/Composite/C1Console/Actions/UrlActionToken.cs b/Composite/C1Console/Actions/UrlActionToken.cs index 62163ef125..51a2dbbfdf 100644 --- a/Composite/C1Console/Actions/UrlActionToken.cs +++ b/Composite/C1Console/Actions/UrlActionToken.cs @@ -3,6 +3,8 @@ using Composite.C1Console.Security; using Composite.C1Console.Events; using System.Web; +using Composite.Core.ResourceSystem; +using Composite.Core.ResourceSystem.Icons; namespace Composite.C1Console.Actions @@ -20,10 +22,23 @@ public sealed class UrlActionToken : ActionToken /// /// public UrlActionToken(string label, string url, IEnumerable permissionTypes) + : this(label, DefaultIcon, url, permissionTypes) + { + } + + /// + /// To add a custom URL action + /// + /// + /// + /// + /// + public UrlActionToken(string label, ResourceHandle icon, string url, IEnumerable permissionTypes) { Label = label; Url = url; PermissionTypes = permissionTypes; + Icon = icon; } /// @@ -35,19 +50,28 @@ public UrlActionToken(string label, string url, IEnumerable perm /// public override IEnumerable PermissionTypes { get; } + /// + public ResourceHandle Icon { get; } + /// public override string Serialize() { - return this.Label + "·" + this.Url + "·" + this.PermissionTypes.SerializePermissionTypes(); + return $"{Label}·{Url}·{PermissionTypes.SerializePermissionTypes()}·{Icon.ResourceNamespace}·{Icon.ResourceName}"; } + private static ResourceHandle DefaultIcon => new ResourceHandle(BuildInIconProviderName.ProviderName, "page"); + /// public static ActionToken Deserialize(string serializedData) { string[] s = serializedData.Split('·'); - return new UrlActionToken(s[0], s[1], s[2].DesrializePermissionTypes()); + var icon = s.Length == 5 + ? new ResourceHandle(s[3], s[4]) + : DefaultIcon; + + return new UrlActionToken(s[0], icon, s[1], s[2].DesrializePermissionTypes()); } } @@ -73,7 +97,8 @@ public FlowToken Execute(EntityToken entityToken, ActionToken actionToken, FlowC Url = extendedUrl, ViewId = Guid.NewGuid().ToString(), ViewType = ViewType.Main, - Label = urlActionToken.Label + Label = urlActionToken.Label, + IconResourceHandle = urlActionToken.Icon }, currentConsoleId); return null; From 33af7717ec7163251a37cac4923708a23daa4adc Mon Sep 17 00:00:00 2001 From: Dmitry Dzygin Date: Mon, 6 Feb 2017 13:28:41 +0100 Subject: [PATCH 06/13] Small changes to search API --- .../Crawling/DataTypeSearchReflectionHelper.cs | 16 ++++++++++++---- Composite/Search/ISearchIndexUpdater.cs | 8 ++++---- Composite/Search/SearchQuery.cs | 2 +- 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs b/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs index 2aba6d64d4..699c9db5a9 100644 --- a/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs +++ b/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs @@ -10,7 +10,10 @@ namespace Composite.Search.Crawling { - internal static class DataTypeSearchReflectionHelper + /// + /// A helper class for extracting search related information frome the data types. + /// + public static class DataTypeSearchReflectionHelper { private static readonly ConcurrentDictionary> DocumentFieldsCache = new ConcurrentDictionary>(); @@ -19,7 +22,7 @@ internal static class DataTypeSearchReflectionHelper new ConcurrentDictionary(); - public static IEnumerable GetSearchableFields(Type interfaceType) + internal static IEnumerable GetSearchableFields(Type interfaceType) { if (!typeof(IData).IsAssignableFrom(interfaceType)) return Enumerable.Empty(); @@ -41,7 +44,7 @@ public static IEnumerable GetSearchableFields(Type interfac }); } - public static IDataFieldProcessor GetDataFieldProcessor(PropertyInfo propertyInfo) + internal static IDataFieldProcessor GetDataFieldProcessor(PropertyInfo propertyInfo) { return DataFieldProcessors.GetOrAdd(propertyInfo, pi => { @@ -63,7 +66,12 @@ public static IDataFieldProcessor GetDataFieldProcessor(PropertyInfo propertyInf - + /// + /// Gets an enumeration of the search document fields from a data type. + /// + /// + /// + /// public static IEnumerable GetDocumentFields(Type interfaceType, bool includeDefaultFields = true) { var defaultFields = includeDefaultFields diff --git a/Composite/Search/ISearchIndexUpdater.cs b/Composite/Search/ISearchIndexUpdater.cs index f6880b493b..43e2cb20fe 100644 --- a/Composite/Search/ISearchIndexUpdater.cs +++ b/Composite/Search/ISearchIndexUpdater.cs @@ -15,14 +15,14 @@ public interface ISearchIndexUpdater /// /// Rebuilds search data for the given data source. /// - /// - void Populate(string dataSource); + /// + void Populate(string searchDocumentSource); /// /// Removes search documents received from the given data source. /// - /// - void Remove(string dataSource); + /// + void Remove(string searchDocumentSource); /// /// Creates a search document collection for the given culture. diff --git a/Composite/Search/SearchQuery.cs b/Composite/Search/SearchQuery.cs index d83318ce3d..b32689ae5b 100644 --- a/Composite/Search/SearchQuery.cs +++ b/Composite/Search/SearchQuery.cs @@ -102,7 +102,7 @@ public SearchQuery(string query, CultureInfo cultureInfo) /// Filters search results by data types. /// /// - public void FilterByDataTypes(IEnumerable dataTypes) + public void FilterByDataTypes(params Type[] dataTypes) { Verify.ArgumentNotNull(dataTypes, nameof(dataTypes)); From 1f305b7bf3bab8a1df5e4493e5f904cfe9183391 Mon Sep 17 00:00:00 2001 From: Dmitry Dzygin Date: Mon, 6 Feb 2017 15:28:09 +0100 Subject: [PATCH 07/13] Search - fixing an exception when rebuilding the index --- .../Search/DocumentSources/CmsPageDocumentSource.cs | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Composite/Search/DocumentSources/CmsPageDocumentSource.cs b/Composite/Search/DocumentSources/CmsPageDocumentSource.cs index 87045eb594..ba8e0c7d99 100644 --- a/Composite/Search/DocumentSources/CmsPageDocumentSource.cs +++ b/Composite/Search/DocumentSources/CmsPageDocumentSource.cs @@ -103,11 +103,16 @@ private SearchDocument FromPage(IPage page, EntityToken entityToken) label = page.Title; } + bool isPublished = page.DataSourceId.PublicationScope == PublicationScope.Published; + string documentId = GetDocumentId(page); + var documentBuilder = new SearchDocumentBuilder(); documentBuilder.SetDataType(typeof(IPage)); documentBuilder.CrawlData(page); + string url; + using (new DataConnection(page.DataSourceId.PublicationScope, page.DataSourceId.LocaleScope)) { var placeholders = PageManager.GetPlaceholderContent(page.Id, page.VersionId); @@ -122,12 +127,9 @@ private SearchDocument FromPage(IPage page, EntityToken entityToken) { Log.LogWarning(LogTitle, ex); } - } - bool isPublished = page.DataSourceId.PublicationScope == PublicationScope.Published; - string documentId = GetDocumentId(page); - - string url = isPublished ? PageUrls.BuildUrl(page, UrlKind.Internal) : null; + url = isPublished ? PageUrls.BuildUrl(page, UrlKind.Internal) : null; + } return documentBuilder.BuildDocument(Name, documentId, label, null, entityToken, url); } From fff1ed1d2649ef4b6ecb5e43a2833054f1a85dc6 Mon Sep 17 00:00:00 2001 From: Dmitry Dzygin Date: Tue, 7 Feb 2017 11:15:40 +0100 Subject: [PATCH 08/13] Search - localizing publication status in the facets view, refactoring --- Composite/Composite.csproj | 1 + .../DataTypeSearchReflectionHelper.cs | 7 +++ .../Crawling/DateTimeDataFieldProcessor.cs | 2 +- .../Crawling/DefaultDataFieldProcessor.cs | 47 ++++++------------- .../PublicationStatusDataFieldProcessor.cs | 39 +++++++++++++++ 5 files changed, 63 insertions(+), 33 deletions(-) create mode 100644 Composite/Search/Crawling/PublicationStatusDataFieldProcessor.cs diff --git a/Composite/Composite.csproj b/Composite/Composite.csproj index baf8af8ba6..f930b25484 100644 --- a/Composite/Composite.csproj +++ b/Composite/Composite.csproj @@ -255,6 +255,7 @@ + diff --git a/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs b/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs index 699c9db5a9..622bfc6205 100644 --- a/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs +++ b/Composite/Search/Crawling/DataTypeSearchReflectionHelper.cs @@ -6,6 +6,7 @@ using Composite.Core; using Composite.Core.Types; using Composite.Data; +using Composite.Data.ProcessControlled; using SearchableFieldInfo = System.Collections.Generic.KeyValuePair; namespace Composite.Search.Crawling @@ -60,6 +61,12 @@ internal static IDataFieldProcessor GetDataFieldProcessor(PropertyInfo propertyI return new DateTimeDataFieldProcessor(); } + if (propertyInfo.DeclaringType == typeof(IPublishControlled) + && propertyInfo.Name == nameof(IPublishControlled.PublicationStatus)) + { + return new PublicationStatusDataFieldProcessor(); + } + return new DefaultDataFieldProcessor(); }); } diff --git a/Composite/Search/Crawling/DateTimeDataFieldProcessor.cs b/Composite/Search/Crawling/DateTimeDataFieldProcessor.cs index cf1851f793..2f718516a4 100644 --- a/Composite/Search/Crawling/DateTimeDataFieldProcessor.cs +++ b/Composite/Search/Crawling/DateTimeDataFieldProcessor.cs @@ -36,7 +36,7 @@ public override string[] GetFacetValues(object value) } /// - protected override DocumentFieldFacet.FacetValuePreviewDelegate GetFacetValuePreviewFunction() + protected override DocumentFieldFacet.FacetValuePreviewDelegate GetFacetValuePreviewFunction(PropertyInfo propertyInfo) { return value => { diff --git a/Composite/Search/Crawling/DefaultDataFieldProcessor.cs b/Composite/Search/Crawling/DefaultDataFieldProcessor.cs index ac00cac1bd..4e9d19eb9d 100644 --- a/Composite/Search/Crawling/DefaultDataFieldProcessor.cs +++ b/Composite/Search/Crawling/DefaultDataFieldProcessor.cs @@ -1,14 +1,10 @@ using System; using System.Collections.Generic; -using System.Globalization; using System.Linq; using System.Reflection; -using Composite.Core.ResourceSystem; using Composite.Core.Types; using Composite.Data; using Composite.Data.DynamicTypes; -using Composite.Data.ProcessControlled; -using Composite.Data.ProcessControlled.ProcessControllers.GenericPublishProcessController; using Composite.Data.Types; using Texts = Composite.Core.ResourceSystem.LocalizationFiles.Composite_Search.Untranslated; @@ -76,7 +72,7 @@ public virtual DocumentFieldFacet GetDocumentFieldFacet(PropertyInfo propertyInf { Limit = 100, MinHitCount = 1, - PreviewFunction = GetFacetValuePreviewFunction() + PreviewFunction = GetFacetValuePreviewFunction(propertyInfo) }; } @@ -143,7 +139,6 @@ public virtual string GetFieldLabel(PropertyInfo propertyInfo) if (fieldName == DefaultDocumentFieldNames.CreationTime) return Texts.FieldNames_CreationDate; if (propertyInfo.Name == nameof(ICreationHistory.CreatedBy)) return Texts.FieldNames_CreatedBy; - if (propertyInfo.Name == nameof(IPublishControlled.PublicationStatus)) return Texts.FieldNames_PublicationStatus; if (propertyInfo.Name == nameof(IMediaFile.MimeType)) return Texts.FieldNames_MimeType; var frpAttribute = propertyInfo.GetCustomAttribute(); @@ -152,44 +147,32 @@ public virtual string GetFieldLabel(PropertyInfo propertyInfo) return frpAttribute.Label; } - var dataTypeDescriptor = DynamicTypeManager.GetDataTypeDescriptor(propertyInfo.DeclaringType); - var fieldDescriptor = dataTypeDescriptor?.Fields.FirstOrDefault(f => f.Name == propertyInfo.Name); - var label = fieldDescriptor?.FormRenderingProfile?.Label; + Guid immutableTypeId; + DataTypeDescriptor dataTypeDescriptor; + if (propertyInfo.DeclaringType.TryGetImmutableTypeId(out immutableTypeId) + && DynamicTypeManager.TryGetDataTypeDescriptor(immutableTypeId, out dataTypeDescriptor)) + { + var fieldDescriptor = dataTypeDescriptor?.Fields.FirstOrDefault(f => f.Name == propertyInfo.Name); + var label = fieldDescriptor?.FormRenderingProfile?.Label; + if (label != null) + { + return label; + } + } - return label ?? propertyInfo.Name; + return propertyInfo.Name; } /// protected virtual DocumentFieldPreview.ValuePreviewDelegate GetPreviewFunction(PropertyInfo propertyInfo) { - if (propertyInfo.DeclaringType == typeof (IPublishControlled) - && propertyInfo.Name == nameof(IPublishControlled.PublicationStatus)) - { - return value => GetLocalizedPublicationStatus((string)value); - } - return value => value?.ToString(); } - private static string GetLocalizedPublicationStatus(string status) - { - switch (status) - { - case GenericPublishProcessController.Published: - return LocalizationFiles.Composite_Management.PublishingStatus_published; - case GenericPublishProcessController.Draft: - return LocalizationFiles.Composite_Management.PublishingStatus_draft; - case GenericPublishProcessController.AwaitingApproval: - return LocalizationFiles.Composite_Management.PublishingStatus_awaitingApproval; - case GenericPublishProcessController.AwaitingPublication: - return LocalizationFiles.Composite_Management.PublishingStatus_awaitingPublication; - } - return status; - } /// - protected virtual DocumentFieldFacet.FacetValuePreviewDelegate GetFacetValuePreviewFunction() + protected virtual DocumentFieldFacet.FacetValuePreviewDelegate GetFacetValuePreviewFunction(PropertyInfo propertyInfo) { return obj => obj; } diff --git a/Composite/Search/Crawling/PublicationStatusDataFieldProcessor.cs b/Composite/Search/Crawling/PublicationStatusDataFieldProcessor.cs new file mode 100644 index 0000000000..cf9bc7ffea --- /dev/null +++ b/Composite/Search/Crawling/PublicationStatusDataFieldProcessor.cs @@ -0,0 +1,39 @@ +using System.Reflection; +using Composite.Core.ResourceSystem; +using Composite.Data.ProcessControlled.ProcessControllers.GenericPublishProcessController; +using Texts = Composite.Core.ResourceSystem.LocalizationFiles.Composite_Search.Untranslated; + +namespace Composite.Search.Crawling +{ + internal class PublicationStatusDataFieldProcessor: DefaultDataFieldProcessor + { + public override string GetFieldLabel(PropertyInfo propertyInfo) => Texts.FieldNames_PublicationStatus; + + protected override DocumentFieldPreview.ValuePreviewDelegate GetPreviewFunction(PropertyInfo propertyInfo) + { + return value => GetLocalizedPublicationStatus((string) value); + } + + protected override DocumentFieldFacet.FacetValuePreviewDelegate GetFacetValuePreviewFunction(PropertyInfo propertyInfo) + { + return GetLocalizedPublicationStatus; + } + + private static string GetLocalizedPublicationStatus(string status) + { + switch (status) + { + case GenericPublishProcessController.Published: + return LocalizationFiles.Composite_Management.PublishingStatus_published; + case GenericPublishProcessController.Draft: + return LocalizationFiles.Composite_Management.PublishingStatus_draft; + case GenericPublishProcessController.AwaitingApproval: + return LocalizationFiles.Composite_Management.PublishingStatus_awaitingApproval; + case GenericPublishProcessController.AwaitingPublication: + return LocalizationFiles.Composite_Management.PublishingStatus_awaitingPublication; + } + + return status; + } + } +} From 5dad538d1312cc2f56bbb83913b0ee459dc450da Mon Sep 17 00:00:00 2001 From: Dmitry Dzygin Date: Wed, 8 Feb 2017 11:20:42 +0100 Subject: [PATCH 09/13] PageMetaDataFacade - refactoring --- Composite/Data/PageMetaDataFacade.cs | 48 +++++++++++++--------------- 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/Composite/Data/PageMetaDataFacade.cs b/Composite/Data/PageMetaDataFacade.cs index defee29e2f..f7d33f4f3b 100644 --- a/Composite/Data/PageMetaDataFacade.cs +++ b/Composite/Data/PageMetaDataFacade.cs @@ -106,7 +106,7 @@ public static IPageMetaDataDefinition GetMetaDataDefinition(Guid definingItemId, /// - /// Returns the composition container given the page metadata defintion name + /// Returns the composition container given the page metadata definition name /// /// /// @@ -214,7 +214,7 @@ public static List GetAllowedMetaDataDefinitions(this I { if (IsDefinitionAllowed(pageMetaDataDefinition, page)) { - if (resultPageMetaDataDefinitions.Where(f => f.Name == pageMetaDataDefinition.Name).Any() == false) + if (!resultPageMetaDataDefinitions.Any(f => f.Name == pageMetaDataDefinition.Name)) { resultPageMetaDataDefinitions.Add(pageMetaDataDefinition); } @@ -257,7 +257,7 @@ private static int CountLevelsToParent(Guid definingPageId, Guid pageId) { Guid parentPageId = Composite.Data.PageManager.GetParentId(pageId); - if ((definingPageId != Guid.Empty) && (parentPageId == Guid.Empty)) return -1; // Page is not a (sub)child of _pageId + if (definingPageId != Guid.Empty && parentPageId == Guid.Empty) return -1; // Page is not a (sub)child of _pageId pageId = parentPageId; count++; @@ -271,10 +271,12 @@ private static int CountLevelsToParent(Guid definingPageId, Guid pageId) /// public static IEnumerable GetMetaData(string definitionName, Type metaDataType) { - //TODO: Consider caching here - ParameterExpression parameterExpression = Expression.Parameter(metaDataType); + Verify.ArgumentNotNull(definitionName, nameof(definitionName)); + Verify.ArgumentNotNull(metaDataType, nameof(metaDataType)); - LambdaExpression lambdaExpression = Expression.Lambda( + var parameterExpression = Expression.Parameter(metaDataType); + + var lambdaExpression = Expression.Lambda( Expression.Equal( Expression.Property( parameterExpression, @@ -288,7 +290,7 @@ public static IEnumerable GetMetaData(string definitionName, Type metaDat parameterExpression ); - Expression whereExpression = ExpressionCreator.Where(DataFacade.GetData(metaDataType).Expression, lambdaExpression); + var whereExpression = ExpressionCreator.Where(DataFacade.GetData(metaDataType).Expression, lambdaExpression); IEnumerable datas = ExpressionHelper.GetCastedObjects(metaDataType, whereExpression); @@ -338,7 +340,9 @@ public static IData GetMetaData(this IPage page, string definitionName, Guid met /// public static IData GetMetaData(this IPage page, string definitionName, Type metaDataType) { - return GetMetaData(page.Id,page.VersionId, definitionName, metaDataType); + Verify.ArgumentNotNull(page, nameof(page)); + + return GetMetaData(page.Id, page.VersionId, definitionName, metaDataType); } @@ -346,10 +350,13 @@ public static IData GetMetaData(this IPage page, string definitionName, Type met /// public static IData GetMetaData(Guid pageId, Guid pageVersionId, string definitionName, Type metaDataType) { - //TODO: Consider caching here - ParameterExpression parameterExpression = Expression.Parameter(metaDataType); + Verify.ArgumentNotNull(definitionName, nameof(definitionName)); + Verify.ArgumentNotNull(metaDataType, nameof(metaDataType)); - LambdaExpression lambdaExpression = Expression.Lambda( + //TODO: Consider caching here + var parameterExpression = Expression.Parameter(metaDataType); + + var lambdaExpression = Expression.Lambda( Expression.And( Expression.And( Expression.Equal( @@ -864,19 +871,13 @@ private static void RemoveDefinitionDeleteData(string definitionName, Type metaD - private static bool ExistInOtherScope(IPage page, IEnumerable otherPageMetaDataDefinition) + private static bool ExistInOtherScope(IPage page, IEnumerable otherPageMetaDataDefinitions) { - foreach (IPageMetaDataDefinition pageMetaDataDefinition in otherPageMetaDataDefinition) - { - bool isAllowed = IsDefinitionAllowed(pageMetaDataDefinition, page); - if (isAllowed) return true; - } - - return false; + return otherPageMetaDataDefinitions.Any( + definition => IsDefinitionAllowed(definition, page)); } - /// public static void RemoveAllDefinitions(Guid metaDataTypeId, bool deleteExistingMetaData = true) { @@ -893,7 +894,7 @@ public static void RemoveAllDefinitions(Guid metaDataTypeId, bool deleteExisting /// - /// Updates the given metadata item with new Id and setting the metadata defintion name and defining item id + /// Updates the given metadata item with new Id and setting the metadata definition name and defining item id /// /// /// @@ -960,9 +961,6 @@ public static IPage GetMetaDataReferencedPage(this IData metaData) - private static Guid GetPageIdOrNull(this IPage page) - { - return page?.Id ?? Guid.Empty; - } + private static Guid GetPageIdOrNull(this IPage page) => page?.Id ?? Guid.Empty; } } From b580aa51a37f5533bfde041f39f79c2e4cb47420 Mon Sep 17 00:00:00 2001 From: Marcus Wendt Date: Wed, 8 Feb 2017 13:57:45 +0100 Subject: [PATCH 10/13] Fix #385 - now full path and query is axamined by SEO Assistant when determining is "In URL" (before only page's own URL part was examined) --- .../WebClient/Renderings/Page/PageRenderer.cs | 19 ++++++++++++++----- .../views/seoassist/scripts/SEODOMParser.js | 4 ++-- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/Composite/Core/WebClient/Renderings/Page/PageRenderer.cs b/Composite/Core/WebClient/Renderings/Page/PageRenderer.cs index 40a60452c1..5363359a3b 100644 --- a/Composite/Core/WebClient/Renderings/Page/PageRenderer.cs +++ b/Composite/Core/WebClient/Renderings/Page/PageRenderer.cs @@ -2,12 +2,14 @@ using System.Collections.Generic; using System.Globalization; using System.Linq; +using System.Web; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Xml.Linq; using Composite.Core.Caching; using Composite.Core.Extensions; using Composite.Core.Routing; +using Composite.Core.Routing.Pages; using Composite.Data; using Composite.Data.Types; using Composite.Functions; @@ -334,9 +336,9 @@ public static void AppendC1MetaTags(IPage page, XhtmlDocument xhtmlDocument) if (UserValidationFacade.IsLoggedIn()) { bool emitMenuTitleMetaTag = string.IsNullOrEmpty(page.MenuTitle) == false; - bool emitUrlTitleMetaTag = string.IsNullOrEmpty(page.UrlTitle) == false; + bool emitUrlMetaTag = string.IsNullOrEmpty(page.UrlTitle) == false; - if (emitMenuTitleMetaTag || emitUrlTitleMetaTag) + if (emitMenuTitleMetaTag || emitUrlMetaTag) { xhtmlDocument.Head.Add( new XComment("The C1.* meta tags are only emitted when you are logged in"), @@ -352,12 +354,19 @@ public static void AppendC1MetaTags(IPage page, XhtmlDocument xhtmlDocument) new XAttribute("content", page.MenuTitle))); } - if (emitUrlTitleMetaTag) + if (emitUrlMetaTag) { + var editPreview = PageRenderer.RenderingReason == RenderingReason.PreviewUnsavedChanges; + + var pageUrl = string.Format("{0}{1}{2}", + PageUrls.BuildUrl(page, UrlKind.Public).Replace("/c1mode(unpublished)", "").Replace("/c1mode(relative)",""), + editPreview ? "/" + page.UrlTitle : C1PageRoute.GetPathInfo(), + editPreview ? "" : HttpContext.Current.Request.Url.Query); + xhtmlDocument.Head.Add( new XElement(Namespaces.Xhtml + "meta", - new XAttribute("name", "C1.urltitle"), - new XAttribute("content", page.UrlTitle))); + new XAttribute("name", "C1.urlseowords"), + new XAttribute("content", pageUrl))); } } } diff --git a/Website/Composite/content/views/seoassist/scripts/SEODOMParser.js b/Website/Composite/content/views/seoassist/scripts/SEODOMParser.js index b22e5c676c..ad38d65095 100644 --- a/Website/Composite/content/views/seoassist/scripts/SEODOMParser.js +++ b/Website/Composite/content/views/seoassist/scripts/SEODOMParser.js @@ -188,7 +188,7 @@ SEODOMParser.prototype = { name = name.toLowerCase (); switch ( name ) { case "c1.menutitle" : - case "c1.urltitle" : + case "c1.urlseowords": case "description" : var text = element.getAttribute ( "content" ); if ( text ) { @@ -200,7 +200,7 @@ SEODOMParser.prototype = { case "c1.menutitle" : result.isInMenuTitle = true; break; - case "c1.urltitle" : + case "c1.urlseowords": result.isInURL = true; break; case "description" : From 8fb9937bc7a917fa086edd95c3172684b6a9421a Mon Sep 17 00:00:00 2001 From: Marcus Wendt Date: Wed, 8 Feb 2017 14:19:51 +0100 Subject: [PATCH 11/13] Rebranding to "C1 CMS" --- ...iewAvailablePackageInfoWorkflowWorkflow.cs | 2 +- .../Properties/AssemblyInfo.cs | 2 +- Composite/AspNet/Razor/CompositeC1WebPage.cs | 2 +- .../Commands/IConsoleCommandHandler.cs | 2 +- Composite/C1Console/Security/EntityToken.cs | 2 +- .../BuildinGlobalSettingsProvider.cs | 2 +- .../Configuration/GlobalSettingsFacade.cs | 2 +- Composite/Core/Log.cs | 28 ++++++------- .../DllPackageFragmentInstaller.cs | 2 +- .../PageTemplates/IPageTemplateProvider.cs | 2 +- .../PageTemplates/PageTemplateDescriptor.cs | 2 +- .../Core/PageTemplates/PageTemplateFacade.cs | 2 +- .../Core/ResourceSystem/LocalizationFiles.cs | 4 +- Composite/Core/Routing/PageUrlData.cs | 2 +- .../ApplicationLevelEventHandlers.cs | 2 +- .../IDataRenderingResponseHandler.cs | 2 +- .../RenderingResponseHandlerFacade.cs | 4 +- Composite/Core/Xml/Namespaces.cs | 4 +- Composite/Core/Xml/XhtmlDocument.cs | 4 +- Composite/Data/AutoUpdatebleAttribute.cs | 2 +- Composite/Data/DataConnection.cs | 10 ++--- Composite/Data/DataEntityToken.cs | 2 +- Composite/Data/DataEvents.cs | 18 ++++---- Composite/Data/DataReference.cs | 4 +- .../Data/DynamicTypes/DataTypeDescriptor.cs | 6 +-- Composite/Data/DynamicTypes/StoreFieldType.cs | 2 +- Composite/Data/IData.cs | 2 +- Composite/Data/IDataReference.cs | 2 +- Composite/Data/PageNode.cs | 2 +- Composite/Data/PublicationScope.cs | 2 +- Composite/Data/SitemapNavigator.cs | 2 +- Composite/Data/Streams/IFileStreamManager.cs | 4 +- Composite/Data/Types/IImageFile.cs | 2 +- Composite/Data/Types/IMediaFile.cs | 2 +- Composite/Data/Types/IMediaFileFolder.cs | 2 +- Composite/Data/Types/IPage.cs | 2 +- Composite/Data/Types/IUser.cs | 2 +- Composite/Data/Types/IUserGroup.cs | 2 +- .../Data/Types/IUserUserGroupRelation.cs | 2 +- .../FunctionParameterIgnoreAttribute.cs | 4 +- .../Html/Template/CommonMetaTagsFunction.cs | 4 +- .../ConfigBasedGlobalSettingsProvider.cs | 2 +- .../PerformanceNames.cs | 4 +- .../MasterPages/MasterPageBase.cs | 4 +- Composite/Properties/AssemblyInfo.cs | 2 +- Composite/Properties/SharedAssemblyInfo.cs | 6 +-- README.md | 8 ++-- .../Composite/DebugBuild.Composite.config | 2 +- .../Composite/ReleaseBuild.Composite.config | 2 +- Website/Composite/console/console.js | 2 +- .../content/branding/about-company.inc | 2 + .../Composite/images/branding/brand-text.svg | 39 ++++++++++++++---- Website/Composite/images/logo-dark.png | Bin 12073 -> 1981 bytes Website/Composite/images/logo.png | Bin 7080 -> 1983 bytes ...e.Plugins.PackageElementProvider.en-us.xml | 2 +- ...posite.Plugins.StandardFunctions.en-us.xml | 2 +- Website/Composite/ping.ashx | 2 +- .../FormsControls/GenerateDynamicSchemas.aspx | 2 +- Website/Composite/schemas/Trees/Tree.xsd | 2 +- .../scripts/source/top/core/Client.js | 2 +- .../scripts/source/top/core/Installation.js | 4 +- .../scripts/source/top/core/Prism.js | 2 +- Website/DebugBuild.Web.config | 2 +- Website/ReleaseBuild.Web.config | 2 +- Website/robots.txt | 2 +- 65 files changed, 137 insertions(+), 112 deletions(-) diff --git a/Composite.Workflows/Plugins/Elements/ElementProviders/PackageElementProvider/ViewAvailablePackageInfoWorkflowWorkflow.cs b/Composite.Workflows/Plugins/Elements/ElementProviders/PackageElementProvider/ViewAvailablePackageInfoWorkflowWorkflow.cs index c5fe1ff159..3f2719dfe9 100644 --- a/Composite.Workflows/Plugins/Elements/ElementProviders/PackageElementProvider/ViewAvailablePackageInfoWorkflowWorkflow.cs +++ b/Composite.Workflows/Plugins/Elements/ElementProviders/PackageElementProvider/ViewAvailablePackageInfoWorkflowWorkflow.cs @@ -125,7 +125,7 @@ private string GetDocumentTitle(PackageDescription packageDescription) { // Valid package names: // "Composite.Community.Versioning" - // "Orckestra CMS 3.0" + // "C1 CMS 3.0" string name = packageDescription.Name.Trim(); string documentTitle = name; diff --git a/Composite.Workflows/Properties/AssemblyInfo.cs b/Composite.Workflows/Properties/AssemblyInfo.cs index 58daa4f8f8..78e900013b 100644 --- a/Composite.Workflows/Properties/AssemblyInfo.cs +++ b/Composite.Workflows/Properties/AssemblyInfo.cs @@ -5,7 +5,7 @@ // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. See also Composite SharedAssemblyInfo.cs -[assembly: AssemblyDescription("Orckestra CMS Workflow Foundation classes")] +[assembly: AssemblyDescription("C1 CMS Workflow Foundation classes")] [assembly: AssemblyConfiguration("")] // Setting ComVisible to false makes the types in this assembly not visible diff --git a/Composite/AspNet/Razor/CompositeC1WebPage.cs b/Composite/AspNet/Razor/CompositeC1WebPage.cs index 0253a607df..56bd26a2ed 100644 --- a/Composite/AspNet/Razor/CompositeC1WebPage.cs +++ b/Composite/AspNet/Razor/CompositeC1WebPage.cs @@ -10,7 +10,7 @@ namespace Composite.AspNet.Razor { /// - /// Defines a Orckestra CMS razor control + /// Defines a C1 CMS razor control /// public abstract class CompositeC1WebPage : WebPage, IDisposable { diff --git a/Composite/C1Console/Commands/IConsoleCommandHandler.cs b/Composite/C1Console/Commands/IConsoleCommandHandler.cs index f3a005f765..ea8821a648 100644 --- a/Composite/C1Console/Commands/IConsoleCommandHandler.cs +++ b/Composite/C1Console/Commands/IConsoleCommandHandler.cs @@ -4,7 +4,7 @@ namespace Composite.C1Console.Commands { /// - /// Handles hash based deep links to Orckestra CMS console (/Composite/top.aspx#<command name>;<command payload> ) + /// Handles hash based deep links to C1 CMS console (/Composite/top.aspx#<command name>;<command payload> ) /// [CustomFactory(typeof(ConsoleCommandHandlerCustomFactory))] public interface IConsoleCommandHandler diff --git a/Composite/C1Console/Security/EntityToken.cs b/Composite/C1Console/Security/EntityToken.cs index ef0707b57c..274715c57a 100644 --- a/Composite/C1Console/Security/EntityToken.cs +++ b/Composite/C1Console/Security/EntityToken.cs @@ -26,7 +26,7 @@ public object Deserialize(string serializedObject) /// - /// EntityToken is used through out Orckestra CMS to describe artifacts that can have security settings. Also see . + /// EntityToken is used through out C1 CMS to describe artifacts that can have security settings. Also see . /// /// /// When subclassing this class and adding properties that have an impack when identity (equiallity) diff --git a/Composite/Core/Configuration/BuildinPlugins/GlobalSettingsProvider/BuildinGlobalSettingsProvider.cs b/Composite/Core/Configuration/BuildinPlugins/GlobalSettingsProvider/BuildinGlobalSettingsProvider.cs index 78fb1393bc..0f8d60493d 100644 --- a/Composite/Core/Configuration/BuildinPlugins/GlobalSettingsProvider/BuildinGlobalSettingsProvider.cs +++ b/Composite/Core/Configuration/BuildinPlugins/GlobalSettingsProvider/BuildinGlobalSettingsProvider.cs @@ -8,7 +8,7 @@ namespace Composite.Core.Configuration.BuildinPlugins.GlobalSettingsProvider { internal sealed class BuildinGlobalSettingsProvider : IGlobalSettingsProvider { - private string _applicationName = "Orckestra CMS"; + private string _applicationName = "C1 CMS"; private string _applicationShortName = "C1"; private string _brandedVersionAssemblySource = "Composite"; private string _configurationDirectory = "~"; diff --git a/Composite/Core/Configuration/GlobalSettingsFacade.cs b/Composite/Core/Configuration/GlobalSettingsFacade.cs index 185d97a553..626ed6ba35 100644 --- a/Composite/Core/Configuration/GlobalSettingsFacade.cs +++ b/Composite/Core/Configuration/GlobalSettingsFacade.cs @@ -440,7 +440,7 @@ public static bool OnlyTranslateWhenApproved /// /// The maximum number of characters the path to the application root (like 'C:\InetPub\MySite') can contain. - /// Orckestra CMS create files below this path, some of which have very long paths - if the root path is long enough the combined length + /// C1 CMS create files below this path, some of which have very long paths - if the root path is long enough the combined length /// can exceed a limitation in Microsoft Windows - see http://msdn.microsoft.com/en-us/library/aa365247%28VS.85%29.aspx#paths /// public static int MaximumRootPathLength diff --git a/Composite/Core/Log.cs b/Composite/Core/Log.cs index 2d315068e9..77258c5519 100644 --- a/Composite/Core/Log.cs +++ b/Composite/Core/Log.cs @@ -7,12 +7,12 @@ namespace Composite.Core { /// - /// Provide write access to the Orckestra CMS log. Note that 'verbose' messages are typically only shown in run-time log viewers. + /// Provide write access to the C1 CMS log. Note that 'verbose' messages are typically only shown in run-time log viewers. /// public static class Log { /// - /// Logs a 'information' message to the Orckestra CMS log. + /// Logs a 'information' message to the C1 CMS log. /// /// Title of log message /// Message to log @@ -24,7 +24,7 @@ public static void LogInformation(string title, string message) /// - /// Logs a 'information' message to the Orckestra CMS log. + /// Logs a 'information' message to the C1 CMS log. /// /// Title of log message /// Message to log in a String.Format() style using {0} etc. @@ -38,7 +38,7 @@ public static void LogInformation(string title, string messageFormat, params obj /// - /// Logs a 'verbose' message to the Orckestra CMS log. Verbose messages are typically only shown in developer log viewers. + /// Logs a 'verbose' message to the C1 CMS log. Verbose messages are typically only shown in developer log viewers. /// /// Title of log message /// Message to log @@ -50,7 +50,7 @@ public static void LogVerbose(string title, string message) /// - /// Logs a 'verbose' message to the Orckestra CMS log. + /// Logs a 'verbose' message to the C1 CMS log. /// /// Title of log message /// Message to log in a String.Format() style using {0} etc. @@ -64,7 +64,7 @@ public static void LogVerbose(string title, string messageFormat, params object[ /// - /// Logs a 'warning' message to the Orckestra CMS log. + /// Logs a 'warning' message to the C1 CMS log. /// /// Title of log message /// Message to log @@ -76,7 +76,7 @@ public static void LogWarning(string title, string message) /// - /// Logs a 'warning' message to the Orckestra CMS log. + /// Logs a 'warning' message to the C1 CMS log. /// /// Title of log message /// Message to log in a String.Format() style using {0} etc. @@ -90,7 +90,7 @@ public static void LogWarning(string title, string messageFormat, params object[ /// - /// Logs a 'verbose' message to the Orckestra CMS log. + /// Logs a 'verbose' message to the C1 CMS log. /// /// Title of log message /// Exception to log @@ -102,7 +102,7 @@ public static void LogWarning(string title, Exception exception) /// - /// Logs a 'error' message to the Orckestra CMS log. + /// Logs a 'error' message to the C1 CMS log. /// /// Title of log message /// Message to log @@ -114,7 +114,7 @@ public static void LogError(string title, string message) /// - /// Logs a 'error' message to the Orckestra CMS log. + /// Logs a 'error' message to the C1 CMS log. /// /// Title of log message /// Message to log in a String.Format() style using {0} etc. @@ -128,7 +128,7 @@ public static void LogError(string title, string messageFormat, params object[] /// - /// Logs a 'error' message to the Orckestra CMS log. + /// Logs a 'error' message to the C1 CMS log. /// /// Title of log message /// Exception to log @@ -140,7 +140,7 @@ public static void LogError(string title, Exception exception) /// - /// Logs a 'critical' message to the Orckestra CMS log. You should only use 'critical' when a major system failure occur. + /// Logs a 'critical' message to the C1 CMS log. You should only use 'critical' when a major system failure occur. /// /// Title of log message /// Message to log @@ -152,7 +152,7 @@ public static void LogCritical(string title, string message) /// - /// Logs a 'critical' message to the Orckestra CMS log. You should only use 'critical' when a major system failure occur. + /// Logs a 'critical' message to the C1 CMS log. You should only use 'critical' when a major system failure occur. /// /// Title of log message /// Message to log in a String.Format() style using {0} etc. @@ -166,7 +166,7 @@ public static void LogCritical(string title, string messageFormat, params object /// - /// Logs a 'critical' message to the Orckestra CMS log. You should only use 'critical' when a major system failure occur. + /// Logs a 'critical' message to the C1 CMS log. You should only use 'critical' when a major system failure occur. /// /// Title of log message /// Exception to log diff --git a/Composite/Core/PackageSystem/PackageFragmentInstallers/DllPackageFragmentInstaller.cs b/Composite/Core/PackageSystem/PackageFragmentInstallers/DllPackageFragmentInstaller.cs index 50f307fe50..dc31c82314 100644 --- a/Composite/Core/PackageSystem/PackageFragmentInstallers/DllPackageFragmentInstaller.cs +++ b/Composite/Core/PackageSystem/PackageFragmentInstallers/DllPackageFragmentInstaller.cs @@ -403,7 +403,7 @@ public void AddRedirectsForAssembly(AssemblyName assemblyName) - + ", assemblyName.Name, publicKeyToken, newTargetVersionStr)).Elements().Single()); diff --git a/Composite/Core/PageTemplates/IPageTemplateProvider.cs b/Composite/Core/PageTemplates/IPageTemplateProvider.cs index 4903e2f6a2..6dc4e13fc6 100644 --- a/Composite/Core/PageTemplates/IPageTemplateProvider.cs +++ b/Composite/Core/PageTemplates/IPageTemplateProvider.cs @@ -19,7 +19,7 @@ public interface IPageTemplateProvider IEnumerable GetPageTemplates(); /// - /// Factory that give Orckestra CMS a IPageLayouter capable of rendering a Orckestra CMS page with the specified layout ID. + /// Factory that give C1 CMS a IPageLayouter capable of rendering a C1 CMS page with the specified layout ID. /// The factory will be called for each individual page rendering /// /// diff --git a/Composite/Core/PageTemplates/PageTemplateDescriptor.cs b/Composite/Core/PageTemplates/PageTemplateDescriptor.cs index 1732cbb497..b2ed8e09ff 100644 --- a/Composite/Core/PageTemplates/PageTemplateDescriptor.cs +++ b/Composite/Core/PageTemplates/PageTemplateDescriptor.cs @@ -6,7 +6,7 @@ namespace Composite.Core.PageTemplates { /// - /// Describes a page layout to the Orckestra CMS core so it may set up editing UI + /// Describes a page layout to the C1 CMS core so it may set up editing UI /// public class PageTemplateDescriptor { diff --git a/Composite/Core/PageTemplates/PageTemplateFacade.cs b/Composite/Core/PageTemplates/PageTemplateFacade.cs index 14a8b02e88..97f29fae97 100644 --- a/Composite/Core/PageTemplates/PageTemplateFacade.cs +++ b/Composite/Core/PageTemplates/PageTemplateFacade.cs @@ -63,7 +63,7 @@ public static IPageRenderer BuildPageRenderer(Guid pageTemplateId) { var provider = PageTemplateProviderRegistry.GetProviderByTemplateId(pageTemplateId); - Verify.IsNotNull(provider, "Failed to get page template with id '{0}'. The template may contain errors preventing it to compile. Check the Orckestra CMS log for possible compilation errors.", pageTemplateId); + Verify.IsNotNull(provider, "Failed to get page template with id '{0}'. The template may contain errors preventing it to compile. Check the C1 CMS log for possible compilation errors.", pageTemplateId); return provider.BuildPageRenderer(pageTemplateId); } diff --git a/Composite/Core/ResourceSystem/LocalizationFiles.cs b/Composite/Core/ResourceSystem/LocalizationFiles.cs index fad870faa7..626b5fbd69 100644 --- a/Composite/Core/ResourceSystem/LocalizationFiles.cs +++ b/Composite/Core/ResourceSystem/LocalizationFiles.cs @@ -3770,7 +3770,7 @@ public static class Composite_Plugins_PackageElementProvider { public static string AddPackageSource_Step1_UrlHelp=>T("AddPackageSource.Step1.UrlHelp"); ///"The entered text was not a valid URL" public static string AddPackageSource_Step1_UrlNotValid=>T("AddPackageSource.Step1.UrlNotValid"); -///"The server is not a Orckestra CMS package server" +///"The server is not a C1 CMS package server" public static string AddPackageSource_Step1_UrlNonPackageServer=>T("AddPackageSource.Step1.UrlNonPackageServer"); ///"Add Package Server Source" public static string AddPackageSource_Step2_LayoutLabel=>T("AddPackageSource.Step2.LayoutLabel"); @@ -5196,7 +5196,7 @@ public static class Composite_Plugins_StandardFunctions { public static string Composite_Web_Html_Template_CommonMetaTags_param_Designer_help=>T("Composite.Web.Html.Template.CommonMetaTags.param.Designer.help"); ///"Show generator" public static string Composite_Web_Html_Template_CommonMetaTags_param_ShowGenerator_label=>T("Composite.Web.Html.Template.CommonMetaTags.param.ShowGenerator.label"); -///"Show the world you support Orckestra CMS Foundation - free open source!" +///"Show the world you support C1 CMS Foundation - free open source!" public static string Composite_Web_Html_Template_CommonMetaTags_param_ShowGenerator_help=>T("Composite.Web.Html.Template.CommonMetaTags.param.ShowGenerator.help"); ///"Appends a lang='(language code)' attribute the the parent element, reflecting the language of the current page. You can put this just below the <html /> tag." public static string Composite_Web_Html_Template_LangAttribute_description=>T("Composite.Web.Html.Template.LangAttribute.description"); diff --git a/Composite/Core/Routing/PageUrlData.cs b/Composite/Core/Routing/PageUrlData.cs index fc0eea07a6..ecf0448dd7 100644 --- a/Composite/Core/Routing/PageUrlData.cs +++ b/Composite/Core/Routing/PageUrlData.cs @@ -7,7 +7,7 @@ namespace Composite.Core.Routing { /// - /// Information stored in a Orckestra CMS page url + /// Information stored in a C1 CMS page url /// public class PageUrlData { diff --git a/Composite/Core/WebClient/ApplicationLevelEventHandlers.cs b/Composite/Core/WebClient/ApplicationLevelEventHandlers.cs index 608b10a942..472288cb27 100644 --- a/Composite/Core/WebClient/ApplicationLevelEventHandlers.cs +++ b/Composite/Core/WebClient/ApplicationLevelEventHandlers.cs @@ -29,7 +29,7 @@ namespace Composite.Core.WebClient { /// - /// ASP.NET Application level logic. This class primarily interact between Orckestra CMS and the ASP.NET Application. + /// ASP.NET Application level logic. This class primarily interact between C1 CMS and the ASP.NET Application. /// Most of the members on this class is not documented, except for those which developers may find useful to interact with. /// public static class ApplicationLevelEventHandlers diff --git a/Composite/Core/WebClient/Renderings/Plugins/RenderingResponseHandler/IDataRenderingResponseHandler.cs b/Composite/Core/WebClient/Renderings/Plugins/RenderingResponseHandler/IDataRenderingResponseHandler.cs index b630306374..90c7ee85b5 100644 --- a/Composite/Core/WebClient/Renderings/Plugins/RenderingResponseHandler/IDataRenderingResponseHandler.cs +++ b/Composite/Core/WebClient/Renderings/Plugins/RenderingResponseHandler/IDataRenderingResponseHandler.cs @@ -4,7 +4,7 @@ namespace Composite.Core.WebClient.Renderings.Plugins.RenderingResponseHandler { /// - /// Orckestra CMS allow you to build a RenderingResponseHandler plug-in. It enables developers to intercept + /// C1 CMS allow you to build a RenderingResponseHandler plug-in. It enables developers to intercept /// page and media requests and control if the request should be accepted or redirected and if the rendered /// resource is allowed to be publicly cached. /// diff --git a/Composite/Core/WebClient/Renderings/RenderingResponseHandlerFacade.cs b/Composite/Core/WebClient/Renderings/RenderingResponseHandlerFacade.cs index 6ac18c08ce..4135f97c84 100644 --- a/Composite/Core/WebClient/Renderings/RenderingResponseHandlerFacade.cs +++ b/Composite/Core/WebClient/Renderings/RenderingResponseHandlerFacade.cs @@ -5,7 +5,7 @@ namespace Composite.Core.WebClient.Renderings { /// /// Pass information about a request through all - /// plugins registered on the Orckestra CMS site. Use this if you are handling raw page / media http requests yourself. + /// plugins registered on the C1 CMS site. Use this if you are handling raw page / media http requests yourself. /// /// public static class RenderingResponseHandlerFacade @@ -18,7 +18,7 @@ public static class RenderingResponseHandlerFacade /// /// Pass information about a request through all - /// plugins registered on the Orckestra CMS site. The resulting define how you should treat the request. + /// plugins registered on the C1 CMS site. The resulting define how you should treat the request. /// /// The data being rendered. This can be and . /// A object detailing what should happen to the user request. Returning null means no special handling should be done (request should continue). diff --git a/Composite/Core/Xml/Namespaces.cs b/Composite/Core/Xml/Namespaces.cs index bdeb01a76a..a09fcc83f8 100644 --- a/Composite/Core/Xml/Namespaces.cs +++ b/Composite/Core/Xml/Namespaces.cs @@ -74,7 +74,7 @@ static Namespaces() public static XNamespace Localization10 { get; private set; } /// - /// Namespace for ASP.NET Web Forms in Orckestra CMS pages: http://www.composite.net/ns/asp.net/controls + /// Namespace for ASP.NET Web Forms in C1 CMS pages: http://www.composite.net/ns/asp.net/controls /// public static XNamespace AspNetControls { get; private set; } @@ -94,7 +94,7 @@ static Namespaces() public static XNamespace XmlNs { get; private set; } /// - /// Namespace for XHTML documents in Orckestra CMS: http://www.w3.org/1999/xhtml + /// Namespace for XHTML documents in C1 CMS: http://www.w3.org/1999/xhtml /// public static XNamespace Xhtml { get; private set; } diff --git a/Composite/Core/Xml/XhtmlDocument.cs b/Composite/Core/Xml/XhtmlDocument.cs index 4f31b4a8cd..ad39840ab5 100644 --- a/Composite/Core/Xml/XhtmlDocument.cs +++ b/Composite/Core/Xml/XhtmlDocument.cs @@ -12,10 +12,10 @@ namespace Composite.Core.Xml { /// - /// Represents an XHTML Document inside Orckestra CMS. + /// Represents an XHTML Document inside C1 CMS. /// /// This structure can contain both head elements and body elements (content) and XhtmlDocuments that are being rendered - /// can be nested within each other. The Orckestra CMS core will normalize such a nested structure when rendering a page, ensuring head elementsa flow to the top level + /// can be nested within each other. The C1 CMS core will normalize such a nested structure when rendering a page, ensuring head elementsa flow to the top level /// document and body content is left, ultimately yielding one complete and correctly structured xhtml page. /// [XhtmlDocumentConverter] diff --git a/Composite/Data/AutoUpdatebleAttribute.cs b/Composite/Data/AutoUpdatebleAttribute.cs index c5bb54909a..980e18c16c 100644 --- a/Composite/Data/AutoUpdatebleAttribute.cs +++ b/Composite/Data/AutoUpdatebleAttribute.cs @@ -5,7 +5,7 @@ namespace Composite.Data { /// /// IData types decorated with this attribute will be have their store auto created and updated if the interface changes. - /// You should use this attribute for data types that Orckestra CMS should be able to auto support via data providers. + /// You should use this attribute for data types that C1 CMS should be able to auto support via data providers. /// [AttributeUsage(AttributeTargets.Interface, AllowMultiple = false, Inherited = true)] public sealed class AutoUpdatebleAttribute : Attribute diff --git a/Composite/Data/DataConnection.cs b/Composite/Data/DataConnection.cs index 0db2d7246f..c3ea89ba42 100644 --- a/Composite/Data/DataConnection.cs +++ b/Composite/Data/DataConnection.cs @@ -8,7 +8,7 @@ namespace Composite.Data { /// - /// Represents a connection to the Orckestra CMS data system. + /// Represents a connection to the C1 CMS data system. /// /// /// Here is an example of how to use it @@ -61,7 +61,7 @@ public void DisableServices() /// Creates a new instance inheriting the /// and locale set on the call stack. When outside an existing scope this default to PublicationScope,Published and the /// default language on the website. You should use this constructure unless you need to force data to come from an alternative - /// scope. can be used to access the Orckestra CMS storage. + /// scope. can be used to access the C1 CMS storage. /// /// /// Here is an example of how to use it @@ -88,7 +88,7 @@ public DataConnection() /// /// Creates a new instance with the given - /// and current (or default) locale. can be used to access the Orckestra CMS storage. + /// and current (or default) locale. can be used to access the C1 CMS storage. /// /// The data should be read from. /// @@ -118,7 +118,7 @@ public DataConnection(PublicationScope scope) /// /// Creates a new instance with current or default - /// and the given . can be used to access the Orckestra CMS storage. + /// and the given . can be used to access the C1 CMS storage. /// /// The desired locale. This should be one of the locale found in /// @@ -146,7 +146,7 @@ public DataConnection(CultureInfo locale) /// /// Creates a new instance with the given - /// and the given . can be used to access the Orckestra CMS storage. + /// and the given . can be used to access the C1 CMS storage. /// /// The data should be read from. /// The desired locale. This should be one of the locale found in diff --git a/Composite/Data/DataEntityToken.cs b/Composite/Data/DataEntityToken.cs index 82c7a36f6a..e719210840 100644 --- a/Composite/Data/DataEntityToken.cs +++ b/Composite/Data/DataEntityToken.cs @@ -10,7 +10,7 @@ namespace Composite.Data { /// - /// EntityToken that represents a C1 Data item. EntityToken is used through out Orckestra CMS to describe artifacts that can have security settings and be navigated and this class make it easy + /// EntityToken that represents a C1 Data item. EntityToken is used through out C1 CMS to describe artifacts that can have security settings and be navigated and this class make it easy /// to move between data items and EntityToken. /// [SecurityAncestorProvider(typeof(DataSecurityAncestorProvider))] diff --git a/Composite/Data/DataEvents.cs b/Composite/Data/DataEvents.cs index dc85c2ea89..e7215e7a2c 100644 --- a/Composite/Data/DataEvents.cs +++ b/Composite/Data/DataEvents.cs @@ -6,10 +6,10 @@ namespace Composite.Data { /// - /// This class contains all the event fired by Orckestra CMS when changes are made to data items. + /// This class contains all the event fired by C1 CMS when changes are made to data items. /// /// Use to catch any data change event, including events originating from other servers in a load balance setup - /// or changes made directly to a store (which Orckestra CMS can detect). This event do not contain details about the specific data item changed and is raised after the fact. + /// or changes made directly to a store (which C1 CMS can detect). This event do not contain details about the specific data item changed and is raised after the fact. /// /// Use the more detailed operations to catch data events that happen in the current website process. The 'OnBefore' events enable you to manipulate data before they are stored. /// The 'OnAfter' events let you react to data changes in detail, for instance updating a cache. @@ -55,7 +55,7 @@ public static class DataEvents where TData : class, IData { /// - /// This event is fired just before a data item is added to the Orckestra CMS data store. + /// This event is fired just before a data item is added to the C1 CMS data store. /// See /// /// @@ -96,7 +96,7 @@ public static event DataEventHandler OnBeforeAdd /// - /// This event is fired just after a data item has been added to the Orckestra CMS data store. + /// This event is fired just after a data item has been added to the C1 CMS data store. /// See /// /// @@ -137,7 +137,7 @@ public static event DataEventHandler OnAfterAdd /// - /// This event is fired just before a data item is updated in the Orckestra CMS data store. + /// This event is fired just before a data item is updated in the C1 CMS data store. /// See /// /// @@ -182,7 +182,7 @@ public static event DataEventHandler OnBeforeUpdate /// - /// This event is fired just after a data item has been updated in the Orckestra CMS data store. + /// This event is fired just after a data item has been updated in the C1 CMS data store. /// See /// /// @@ -227,7 +227,7 @@ public static event DataEventHandler OnAfterUpdate /// - /// This event is fired after a data item has been deleted from the Orckestra CMS data store. + /// This event is fired after a data item has been deleted from the C1 CMS data store. /// See /// /// @@ -270,7 +270,7 @@ public static event DataEventHandler OnDeleted /// - /// This event is fired after changes has happened to the Orckestra CMS data store. This may be atomic actions or a larger change to the underlying + /// This event is fired after changes has happened to the C1 CMS data store. This may be atomic actions or a larger change to the underlying /// data store. The class describe the change in broad terms, including a flag indicating is detailed data /// event have been raised or not. /// @@ -358,7 +358,7 @@ public static event DataEventHandler OnNew /// Fire the event that signals that data in an external store has changed. /// /// - /// You should NOT fire this event if you do data changes through the Orckestra CMS data API since events will already be handled for you in this case. + /// You should NOT fire this event if you do data changes through the C1 CMS data API since events will already be handled for you in this case. /// /// Use this method if you are responsible for flushing cached data originating from a store not fully managed by the local website process. /// diff --git a/Composite/Data/DataReference.cs b/Composite/Data/DataReference.cs index 52c7bd5c97..7a77d4fa3d 100644 --- a/Composite/Data/DataReference.cs +++ b/Composite/Data/DataReference.cs @@ -7,7 +7,7 @@ namespace Composite.Data { /// - /// Represents a reference to a Orckestra CMS IData item. Unlike this class signals + /// Represents a reference to a C1 CMS IData item. Unlike this class signals /// that a data reference need not be set for this to be in a valid state. /// /// The C1 Data Type () being referenced @@ -30,7 +30,7 @@ public NullableDataReference(object keyValue) /// - /// Represents a reference to a Orckestra CMS IData item. + /// Represents a reference to a C1 CMS IData item. /// /// The C1 Data Type () being referenced [DataReferenceConverter] diff --git a/Composite/Data/DynamicTypes/DataTypeDescriptor.cs b/Composite/Data/DynamicTypes/DataTypeDescriptor.cs index 76d58423d8..790b59b8be 100644 --- a/Composite/Data/DynamicTypes/DataTypeDescriptor.cs +++ b/Composite/Data/DynamicTypes/DataTypeDescriptor.cs @@ -18,7 +18,7 @@ namespace Composite.Data.DynamicTypes { /// - /// Describes a data type in Orckestra CMS + /// Describes a data type in C1 CMS /// [DebuggerDisplay("Type name = {Namespace + '.' + Name}")] public class DataTypeDescriptor @@ -447,7 +447,7 @@ public List DataAssociations /// - /// True when the data type is associated to Orckestra CMS pages as an agregation + /// True when the data type is associated to C1 CMS pages as an agregation /// public bool IsPageFolderDataType { @@ -460,7 +460,7 @@ public bool IsPageFolderDataType /// - /// True when the data type is associated to Orckestra CMS pages as an composition + /// True when the data type is associated to C1 CMS pages as an composition /// public bool IsPageMetaDataType { diff --git a/Composite/Data/DynamicTypes/StoreFieldType.cs b/Composite/Data/DynamicTypes/StoreFieldType.cs index 0ca56a05ec..bc71fb8beb 100644 --- a/Composite/Data/DynamicTypes/StoreFieldType.cs +++ b/Composite/Data/DynamicTypes/StoreFieldType.cs @@ -8,7 +8,7 @@ namespace Composite.Data.DynamicTypes { /// - /// Describe a field on a Orckestra CMS data type, see . + /// Describe a field on a C1 CMS data type, see . /// [Serializable()] public sealed class StoreFieldType diff --git a/Composite/Data/IData.cs b/Composite/Data/IData.cs index 31aea23f00..ef75bb189a 100644 --- a/Composite/Data/IData.cs +++ b/Composite/Data/IData.cs @@ -4,7 +4,7 @@ namespace Composite.Data { /// - /// Base interface for data types in Orckestra CMS. + /// Base interface for data types in C1 CMS. /// [SerializerHandler(typeof(DataSerializerHandler))] public interface IData diff --git a/Composite/Data/IDataReference.cs b/Composite/Data/IDataReference.cs index 3a87add5e9..e4da215e56 100644 --- a/Composite/Data/IDataReference.cs +++ b/Composite/Data/IDataReference.cs @@ -6,7 +6,7 @@ namespace Composite.Data { /// - /// Represents a reference to a Orckestra CMS IData item. See . + /// Represents a reference to a C1 CMS IData item. See . /// public interface IDataReference { diff --git a/Composite/Data/PageNode.cs b/Composite/Data/PageNode.cs index 1c0747035c..edc07292e9 100644 --- a/Composite/Data/PageNode.cs +++ b/Composite/Data/PageNode.cs @@ -11,7 +11,7 @@ namespace Composite.Data { /// - /// Represents a page in the Orckestra CMS sitemap hierarchy. + /// Represents a page in the C1 CMS sitemap hierarchy. /// public class PageNode { diff --git a/Composite/Data/PublicationScope.cs b/Composite/Data/PublicationScope.cs index e884408a39..bc6b2b6ceb 100644 --- a/Composite/Data/PublicationScope.cs +++ b/Composite/Data/PublicationScope.cs @@ -8,7 +8,7 @@ namespace Composite.Data /// /// Define the scope of data in relation to publication status. Data which support publication should always be maintained /// in the “Unpublihed” scope, while reading data on the public website should always be done in the “Published” scope. - /// Correct setting of the PublicationScope is typically handled by Orckestra CMS and should in general not be changed by developers. + /// Correct setting of the PublicationScope is typically handled by C1 CMS and should in general not be changed by developers. /// Setting an explicit PublicationScope is typically only needed on new service end-points or /// if specific features relating to data updating / publication is desired. /// See diff --git a/Composite/Data/SitemapNavigator.cs b/Composite/Data/SitemapNavigator.cs index 486b06bf02..274a87e2de 100644 --- a/Composite/Data/SitemapNavigator.cs +++ b/Composite/Data/SitemapNavigator.cs @@ -8,7 +8,7 @@ namespace Composite.Data { /// - /// Provide access to the Orckestra CMS sitemap structure and primary page attributes. + /// Provide access to the C1 CMS sitemap structure and primary page attributes. /// [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1702:CompoundWordsShouldBeCasedCorrectly", MessageId = "Sitemap")] public class SitemapNavigator : ImplementationContainer diff --git a/Composite/Data/Streams/IFileStreamManager.cs b/Composite/Data/Streams/IFileStreamManager.cs index d4bb69eae7..7be6632d0d 100644 --- a/Composite/Data/Streams/IFileStreamManager.cs +++ b/Composite/Data/Streams/IFileStreamManager.cs @@ -34,12 +34,12 @@ public enum FileChangeType /// (like for a custom Media File Provider) expose access to stream reads/writes by annotating /// the class implementing with the attribute, /// passing the type of a as attribute parameter. - /// Orckestra CMS will, via the attribute on the , get the type responsible for stream reads/writes. + /// C1 CMS will, via the attribute on the , get the type responsible for stream reads/writes. /// /// The class implementing this interface is expected to provide read/write access to the file store being introduced by a file oriented File Provider. /// /// - /// Here is an example of how to inform Orckestra CMS about IFileStreamManager + /// Here is an example of how to inform C1 CMS about IFileStreamManager /// /// [FileStreamManager(typeof(MyFileStreamManager))] /// public abstract class SomeFile : IFile diff --git a/Composite/Data/Types/IImageFile.cs b/Composite/Data/Types/IImageFile.cs index ff0935c6b5..b68a00afeb 100644 --- a/Composite/Data/Types/IImageFile.cs +++ b/Composite/Data/Types/IImageFile.cs @@ -4,7 +4,7 @@ namespace Composite.Data.Types { /// - /// This data interface represents a image media file in Orckestra CMS. This can be used to query images through a . + /// This data interface represents a image media file in C1 CMS. This can be used to query images through a . /// [Title("C1 Image File")] [ImmutableTypeId("{BF54E59A-0EBC-4162-95B9-C46EE271C7A9}")] diff --git a/Composite/Data/Types/IMediaFile.cs b/Composite/Data/Types/IMediaFile.cs index 850ad4ec4e..d4121e2d0d 100644 --- a/Composite/Data/Types/IMediaFile.cs +++ b/Composite/Data/Types/IMediaFile.cs @@ -6,7 +6,7 @@ namespace Composite.Data.Types { /// - /// This data interface represents a media file in Orckestra CMS. This can be used to query media through a . + /// This data interface represents a media file in C1 CMS. This can be used to query media through a . /// [Title("C1 Media File")] [KeyPropertyName("KeyPath")] diff --git a/Composite/Data/Types/IMediaFileFolder.cs b/Composite/Data/Types/IMediaFileFolder.cs index 9db818a675..18ebd06300 100644 --- a/Composite/Data/Types/IMediaFileFolder.cs +++ b/Composite/Data/Types/IMediaFileFolder.cs @@ -6,7 +6,7 @@ namespace Composite.Data.Types { /// - /// This data interface represents a media folder in Orckestra CMS. This can be used to query media folders through a . + /// This data interface represents a media folder in C1 CMS. This can be used to query media folders through a . /// [Title("C1 Media Folder")] [KeyPropertyName("KeyPath")] diff --git a/Composite/Data/Types/IPage.cs b/Composite/Data/Types/IPage.cs index 85d62cba8d..db2a40842e 100644 --- a/Composite/Data/Types/IPage.cs +++ b/Composite/Data/Types/IPage.cs @@ -11,7 +11,7 @@ namespace Composite.Data.Types { /// - /// This data interface represents a page in Orckestra CMS. This can be used to query pages through a . + /// This data interface represents a page in C1 CMS. This can be used to query pages through a . /// Note that a lot of page related tasks can be done with a . /// And any changes done through this interface and a should be done with care. /// diff --git a/Composite/Data/Types/IUser.cs b/Composite/Data/Types/IUser.cs index 6564874330..ac40920eda 100644 --- a/Composite/Data/Types/IUser.cs +++ b/Composite/Data/Types/IUser.cs @@ -9,7 +9,7 @@ namespace Composite.Data.Types { /// - /// This data interface represents a administrative user in Orckestra CMS. This can be used to query users through a . + /// This data interface represents a administrative user in C1 CMS. This can be used to query users through a . /// [AutoUpdateble] [KeyPropertyName(nameof(Id))] diff --git a/Composite/Data/Types/IUserGroup.cs b/Composite/Data/Types/IUserGroup.cs index 3e74862104..e7f0f05221 100644 --- a/Composite/Data/Types/IUserGroup.cs +++ b/Composite/Data/Types/IUserGroup.cs @@ -7,7 +7,7 @@ namespace Composite.Data.Types { /// - /// This data interface represents a user group in Orckestra CMS. This can be used to query user groups through a . + /// This data interface represents a user group in C1 CMS. This can be used to query user groups through a . /// [AutoUpdateble] [KeyPropertyName("Id")] diff --git a/Composite/Data/Types/IUserUserGroupRelation.cs b/Composite/Data/Types/IUserUserGroupRelation.cs index a489ecabac..0fa6ffe1e2 100644 --- a/Composite/Data/Types/IUserUserGroupRelation.cs +++ b/Composite/Data/Types/IUserUserGroupRelation.cs @@ -6,7 +6,7 @@ namespace Composite.Data.Types { /// - /// This data interface represents a user relation to a user group in Orckestra CMS. This can be used to query user group members through a . + /// This data interface represents a user relation to a user group in C1 CMS. This can be used to query user group members through a . /// [AutoUpdateble] [KeyPropertyName(0, "UserId")] diff --git a/Composite/Functions/FunctionParameterIgnoreAttribute.cs b/Composite/Functions/FunctionParameterIgnoreAttribute.cs index 1683ac393b..d0d9d009e2 100644 --- a/Composite/Functions/FunctionParameterIgnoreAttribute.cs +++ b/Composite/Functions/FunctionParameterIgnoreAttribute.cs @@ -3,12 +3,12 @@ namespace Composite.Functions { /// - /// Put this attribute on properties to make Orckestra CMS skip them when infering C1 Function parameters from a class. + /// Put this attribute on properties to make C1 CMS skip them when infering C1 Function parameters from a class. /// /// If you need a property on your class, but do not want this property to be part of the C1 Function signature use this attrobute. /// /// - /// Here is an example of how to use to make Orckestra CMS skip a property when infering parameters: + /// Here is an example of how to use to make C1 CMS skip a property when infering parameters: /// /// [FunctionParameterIgnore()] /// public int ItemCount { get; set; } diff --git a/Composite/Plugins/Functions/FunctionProviders/StandardFunctionProvider/Web/Html/Template/CommonMetaTagsFunction.cs b/Composite/Plugins/Functions/FunctionProviders/StandardFunctionProvider/Web/Html/Template/CommonMetaTagsFunction.cs index 2a0d6d2e06..6b74823d7e 100644 --- a/Composite/Plugins/Functions/FunctionProviders/StandardFunctionProvider/Web/Html/Template/CommonMetaTagsFunction.cs +++ b/Composite/Plugins/Functions/FunctionProviders/StandardFunctionProvider/Web/Html/Template/CommonMetaTagsFunction.cs @@ -20,7 +20,7 @@ protected override IEnumerable StandardFunctio { get { - WidgetFunctionProvider showGeneratorWidget = StandardWidgetFunctions.GetBoolSelectorWidget("Yes, show Orckestra CMS Foundation support!", "No, please hide this..."); + WidgetFunctionProvider showGeneratorWidget = StandardWidgetFunctions.GetBoolSelectorWidget("Yes, show C1 CMS Foundation support!", "No, please hide this..."); yield return new StandardFunctionParameterProfile( "ContentType", @@ -73,7 +73,7 @@ public override object Execute(ParameterList parameters, FunctionContextContaine { metaTags.Add(new XElement(Namespaces.Xhtml + "meta", new XAttribute("name", "Generator"), - new XAttribute("content", "Orckestra CMS Foundation - Free Open Source from Orckestra and https://github.com/Orckestra/CMS-Foundation"))); + new XAttribute("content", "C1 CMS Foundation - Free Open Source from Orckestra and https://github.com/Orckestra/CMS-Foundation"))); } return metaTags; diff --git a/Composite/Plugins/GlobalSettings/GlobalSettingsProviders/ConfigBasedGlobalSettingsProvider.cs b/Composite/Plugins/GlobalSettings/GlobalSettingsProviders/ConfigBasedGlobalSettingsProvider.cs index df0503360f..b612624cd7 100644 --- a/Composite/Plugins/GlobalSettings/GlobalSettingsProviders/ConfigBasedGlobalSettingsProvider.cs +++ b/Composite/Plugins/GlobalSettings/GlobalSettingsProviders/ConfigBasedGlobalSettingsProvider.cs @@ -339,7 +339,7 @@ public IGlobalSettingsProvider Assemble(IBuilderContext context, GlobalSettingsP internal sealed class ConfigBasedGlobalSettingsProviderData : GlobalSettingsProviderData { private const string _applicationNamePropertyName = "applicationName"; - [ConfigurationProperty(_applicationNamePropertyName, IsRequired = true, DefaultValue = "Orckestra CMS")] + [ConfigurationProperty(_applicationNamePropertyName, IsRequired = true, DefaultValue = "C1 CMS")] public string ApplicationName { get { return (string)base[_applicationNamePropertyName]; } diff --git a/Composite/Plugins/Instrumentation/PerformanceCounterProviders/WindowsPerformanceCounterProvider/PerformanceNames.cs b/Composite/Plugins/Instrumentation/PerformanceCounterProviders/WindowsPerformanceCounterProvider/PerformanceNames.cs index 0ee052f6ff..6df6487ab7 100644 --- a/Composite/Plugins/Instrumentation/PerformanceCounterProviders/WindowsPerformanceCounterProvider/PerformanceNames.cs +++ b/Composite/Plugins/Instrumentation/PerformanceCounterProviders/WindowsPerformanceCounterProvider/PerformanceNames.cs @@ -4,8 +4,8 @@ namespace Composite.Plugins.Instrumentation.PerformanceCounterProviders.WindowsP { internal static class PerformanceNames { - public static string CategoryName { get { return "Orckestra CMS"; } } - public static string CategoryDescription { get { return "Orckestra CMS"; } } + public static string CategoryName { get { return "C1 CMS"; } } + public static string CategoryDescription { get { return "C1 CMS"; } } public static string SystemStartupCountName { get { return "SystemStartupCount"; } } public static string SystemStartupCountDescription { get { return "SystemStartupCount"; } } diff --git a/Composite/Plugins/PageTemplates/MasterPages/MasterPageBase.cs b/Composite/Plugins/PageTemplates/MasterPages/MasterPageBase.cs index 66d484b016..a2a3f4acdc 100644 --- a/Composite/Plugins/PageTemplates/MasterPages/MasterPageBase.cs +++ b/Composite/Plugins/PageTemplates/MasterPages/MasterPageBase.cs @@ -7,8 +7,8 @@ namespace Composite.Plugins.PageTemplates.MasterPages { /// - /// Base class for ASP.NET MasterPage classes in Orckestra CMS. Inheriting from this bring common features like easy data and sitemap access. - /// This class is intended for use in shared MasterPages, to create a MasterPage based page template for Orckestra CMS use . + /// Base class for ASP.NET MasterPage classes in C1 CMS. Inheriting from this bring common features like easy data and sitemap access. + /// This class is intended for use in shared MasterPages, to create a MasterPage based page template for C1 CMS use . /// public abstract class MasterPageBase : MasterPage { diff --git a/Composite/Properties/AssemblyInfo.cs b/Composite/Properties/AssemblyInfo.cs index 5c45970fb0..5d09e79a7d 100644 --- a/Composite/Properties/AssemblyInfo.cs +++ b/Composite/Properties/AssemblyInfo.cs @@ -5,7 +5,7 @@ // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. See also Composite SharedAssemblyInfo.cs -[assembly: AssemblyDescription("Orckestra CMS Core classes")] +[assembly: AssemblyDescription("C1 CMS Core classes")] [assembly: AssemblyConfiguration("")] // Setting ComVisible to false makes the types in this assembly not visible diff --git a/Composite/Properties/SharedAssemblyInfo.cs b/Composite/Properties/SharedAssemblyInfo.cs index 843276975d..0e5c845bf9 100644 --- a/Composite/Properties/SharedAssemblyInfo.cs +++ b/Composite/Properties/SharedAssemblyInfo.cs @@ -2,13 +2,13 @@ // General Information about the assemblies Composite and Composite.Workflows #if !InternalBuild -[assembly: AssemblyTitle("Orckestra CMS 6.0")] +[assembly: AssemblyTitle("C1 CMS 6.0")] #else -[assembly: AssemblyTitle("Orckestra CMS 6.0 (Internal Build)")] +[assembly: AssemblyTitle("C1 CMS 6.0 (Internal Build)")] #endif [assembly: AssemblyCompany("Orckestra Inc")] -[assembly: AssemblyProduct("Orckestra CMS")] +[assembly: AssemblyProduct("C1 CMS")] [assembly: AssemblyCopyright("Copyright © Orckestra Inc 2017")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] diff --git a/README.md b/README.md index 4f30317631..14bcbaa17b 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# Orckestra CMS Foundation +# C1 CMS Foundation -Orckestra CMS Foundation - a .NET based Web Content Management System, open source and a bundle of joy! +C1 CMS Foundation - a .NET based Web Content Management System, open source and a bundle of joy! -[![screen shots from the new Composite C1 user interface (the C1 Console)](http://hackathon.composite.net/maw/github/6-pack-screenshots-small.png)](http://hackathon.composite.net/maw/github/6-pack-screenshots.png) +[![screen shots from the new C1 user interface (the C1 Console)](http://hackathon.composite.net/maw/github/6-pack-screenshots-small.png)](http://hackathon.composite.net/maw/github/6-pack-screenshots.png) [![Join the chat at https://gitter.im/Orckestra/C1-CMS](https://badges.gitter.im/Orckestra/C1-CMS.svg)](https://gitter.im/Orckestra/C1-CMS?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) @@ -16,6 +16,6 @@ Download binaries from https://github.com/Orckestra/CMS-Foundation/releases/late Head over to https://orckestracms.codeplex.com/discussions to ask questions ## Who are we? ## -Orckestra is the company driving the development of Orckestra CMS Foundation. We have a team working full time on this CMS and on other cool stuff you can add to it. We are situated in Austin, Montreal, Copenhagen and Kiev. We specialize in enterprise commerce software. +Orckestra is the company driving the development of C1 CMS Foundation. We have a team working full time on this CMS and on other cool stuff you can add to it. We are situated in Austin, Montreal, Copenhagen and Kiev. We specialize in enterprise commerce software. You can visit us at http://cms.orckestra.com and http://www.orckestra.com/ diff --git a/Website/App_Data/Composite/DebugBuild.Composite.config b/Website/App_Data/Composite/DebugBuild.Composite.config index 447383b9cd..0aac1af263 100644 --- a/Website/App_Data/Composite/DebugBuild.Composite.config +++ b/Website/App_Data/Composite/DebugBuild.Composite.config @@ -69,7 +69,7 @@