From 21f92ce7aac6c6b12d507e2bf92dfc3cad297327 Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Tue, 24 Mar 2015 08:39:43 -0700 Subject: [PATCH 1/9] Added check if components metadata is null to prevent NullReferenceException if the component has no metadata --- .../Sdl.Web.Templating/Templates/ResolveRichText.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content-management/Sdl.Web.Templating/Templates/ResolveRichText.cs b/content-management/Sdl.Web.Templating/Templates/ResolveRichText.cs index b306d6d..358b4de 100644 --- a/content-management/Sdl.Web.Templating/Templates/ResolveRichText.cs +++ b/content-management/Sdl.Web.Templating/Templates/ResolveRichText.cs @@ -69,7 +69,7 @@ private string ResolveXhtml(string input) { Component comp = (Component)Engine.GetObject(uri); // resolve youtube video - if (comp != null) + if (comp != null && comp.Metadata != null) { ItemFields fields = new ItemFields(comp.Metadata, comp.MetadataSchema); ProcessFields(fields, link); From 8fbc04af2de9d5431f46e9a4509d156b48bf280d Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Tue, 24 Mar 2015 08:51:56 -0700 Subject: [PATCH 2/9] Only strip the URL if it has the default extension to support external URL's in redirects --- .../Sdl.Web.Common/Models/Navigation/SitemapItem.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/web-application/Sdl.Web.Common/Models/Navigation/SitemapItem.cs b/web-application/Sdl.Web.Common/Models/Navigation/SitemapItem.cs index af0e7de..bd0f4e4 100644 --- a/web-application/Sdl.Web.Common/Models/Navigation/SitemapItem.cs +++ b/web-application/Sdl.Web.Common/Models/Navigation/SitemapItem.cs @@ -6,6 +6,9 @@ namespace Sdl.Web.Common.Models { public class SitemapItem : EntityBase { + //TODO: Make this configurable since its dependend on framework implementation + private const string DefaultExtension = ".html"; + private string _url; public SitemapItem() @@ -29,7 +32,7 @@ public string Url private static string ProcessUrl(string value) { - return Path.HasExtension(value) ? value.Substring(0, value.Length - Path.GetExtension(value).Length) : value; + return Path.HasExtension(value) && DefaultExtension.Equals(Path.GetExtension(value)) ? value.Substring(0, value.Length - Path.GetExtension(value).Length) : value; } public string Type { get; set; } From 38cc8d369fced0634ce69d48d4483c8ecc1a25bf Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Wed, 22 Jul 2015 11:00:50 -0700 Subject: [PATCH 3/9] Also strip the forward slash when resolved link is default page for consistency --- web-application/Sdl.Web.DD4T/Mapping/DD4TContentResolver.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/web-application/Sdl.Web.DD4T/Mapping/DD4TContentResolver.cs b/web-application/Sdl.Web.DD4T/Mapping/DD4TContentResolver.cs index bd9f4fe..ea66661 100644 --- a/web-application/Sdl.Web.DD4T/Mapping/DD4TContentResolver.cs +++ b/web-application/Sdl.Web.DD4T/Mapping/DD4TContentResolver.cs @@ -62,9 +62,11 @@ public virtual string ResolveLink(object linkData, object resolveInstruction = n if (url!=null && url.EndsWith(DefaultExtension)) { url = url.Substring(0, url.Length - DefaultExtension.Length); - if (url.EndsWith("/" + DefaultExtensionLessPageName)) + // Also strip the forward slash + var defaultPageNamePart = "/" + DefaultExtensionLessPageName; + if (url.EndsWith(defaultPageNamePart)) { - url = url.Substring(0, url.Length - DefaultExtensionLessPageName.Length); + url = url.Substring(0, url.Length - defaultPageNamePart.Length); } } } From 84ecc9790fd6468e1e4db6e64f9f9530d0d69935 Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Fri, 24 Jul 2015 08:00:51 -0700 Subject: [PATCH 4/9] Adding SmartTarget module for STRI v1.0.1 --- content-management/.gitignore | 9 +- modules/SmartTarget-Module-ContentPort.zip | Bin 0 -> 21066 bytes web-application/.gitignore | 5 +- web-application/Modules/Modules.sln | 22 +++- .../Factories/ComponentPresentationFactory.cs | 66 ++++++++++ .../IComponentPresentationFactory.cs | 16 +++ .../Html/SmartTargetRenderer.cs | 87 +++++++++++++ .../Mapping/SmartTargetModelBuilder.cs | 120 ++++++++++++++++++ .../Properties/AssemblyInfo.cs | 36 ++++++ .../Sdl.Web.Modules.SmartTarget.DD4T.csproj | 97 ++++++++++++++ .../packages.config | 4 + .../Analytics/SmartTargetAnalytics.cs | 32 +++++ .../SmartTarget/Views/Region/Inset1.cshtml | 4 + .../SmartTarget/Views/Region/Inset2.cshtml | 37 ++++++ .../Areas/SmartTarget/Views/web.config | 35 +++++ .../Interfaces/ISmartTargetRenderer.cs | 12 ++ .../Models/SmartTargetExperiment.cs | 17 +++ .../Models/SmartTargetItem.cs | 24 ++++ .../Models/SmartTargetPromotion.cs | 30 +++++ .../Models/SmartTargetRegion.cs | 16 +++ .../Models/SmartTargetRegionConfig.cs | 21 +++ .../Properties/AssemblyInfo.cs | 36 ++++++ .../Query/SmartTargetQuery.cs | 118 +++++++++++++++++ .../Query/SmartTargetQueryResult.cs | 20 +++ .../Sdl.Web.Modules.SmartTarget.csproj | 119 +++++++++++++++++ .../Utils/AllowDuplicatesValueHelper.cs | 33 +++++ .../Utils/ViewUtils.cs | 31 +++++ .../Utils/WebContext.cs | 29 +++++ .../packages.config | 6 + .../redirect/Web.config | 8 ++ web-application/Modules/Unity.config | 11 +- .../Tridion.SmartTarget.Interop.dll | Bin 0 -> 598016 bytes .../st-2014-sp1/Tridion.SmartTarget.dll | Bin 0 -> 81408 bytes 33 files changed, 1091 insertions(+), 10 deletions(-) create mode 100644 modules/SmartTarget-Module-ContentPort.zip create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/ComponentPresentationFactory.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/IComponentPresentationFactory.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Properties/AssemblyInfo.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Sdl.Web.Modules.SmartTarget.DD4T.csproj create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/packages.config create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Analytics/SmartTargetAnalytics.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/web.config create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetExperiment.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetItem.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetPromotion.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegion.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegionConfig.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Properties/AssemblyInfo.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQuery.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQueryResult.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Sdl.Web.Modules.SmartTarget.csproj create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/AllowDuplicatesValueHelper.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/ViewUtils.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/WebContext.cs create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/packages.config create mode 100644 web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/redirect/Web.config create mode 100644 web-application/_references/st-2014-sp1/Tridion.SmartTarget.Interop.dll create mode 100644 web-application/_references/st-2014-sp1/Tridion.SmartTarget.dll diff --git a/content-management/.gitignore b/content-management/.gitignore index d0a3110..fc005ea 100644 --- a/content-management/.gitignore +++ b/content-management/.gitignore @@ -1,4 +1,5 @@ -/Sdl.Web.Templating/bin -/Sdl.Web.Templating/obj -/Sdl.Web.Templating/*.user -/Sdl.Web.Templating/*.suo +Sdl.Web.Templating/bin +Sdl.Web.Templating/obj +Sdl.Web.Templating/*.user +Sdl.Web.Templating/*.suo +_references/2013-sp1/*.dll diff --git a/modules/SmartTarget-Module-ContentPort.zip b/modules/SmartTarget-Module-ContentPort.zip new file mode 100644 index 0000000000000000000000000000000000000000..2e5916414520869d19613115d098e4ed9e554fdb GIT binary patch literal 21066 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

~$Kd2M0#?;aGYx*3`cPnsw;|oxi1ZA-hF? z;Ipi7&52VlCZ&mawtYuCO(zELBYg3>Ay;z#;rKe0ZOBKU*4;33O9V+VB3|(MlBYM= zJO3E@5LR7SCOUYNxZrp2SPL8fIf3w3^7zSR(!S}_fs;U@68|8BN=acQAUURbt?&uFxx{}8j5GLc8+eo^;ky5DJA!1D zfK8n1)A>oFodN2fU7T^rii^2iQnZKTfuVAib{MzNvH)k5c4#gr#kt6QjlJ$9MKvCdO3rxGJ6inTf6f34=uPg-y!K*=nP$ zMYQop#)k*8A^Q4E$=u{6gm@ps^$UGfIikezot9L(Wz_D z-?>Wvx6?n7xl1c7hd*||HL}yN zio)?H6UKN<4fI()zz5^Iu1GYq<1xEw!hFLTz-;-SA)sF-9DF$Rqo2nm@u0ccjWz3~ zF{Aq@WC8Z7ED;>#p%6b-O(IgtwsRrD6NSWKy?Gwyd6xNjg;=Ia3deoz6-%>UUul@E zI_{M3bzOBEU}9CQ-eEQTJpJ?^JpxByO`J9Wf4$1Gyjx!QuQQ0|7aF;x9=Ftx5>XXG6R+Or_+8fhF=@Q#f5?U<0K8$8*> zN}E*)EOpkd&Yhb%Zp>xya}1elGH24gG+7otB3T19sgLKS%FgyzmvT2UO&%5w$Lu=$ z(FO^Mn$sv8ZMC+PlvA-gjJGTGlIR!)L~AzlY%-zE$tWfD=k_9d|?L@{88ri^F7wELcVzy~ouv5F(Z{w5ObptiL1RFqTPW2uz zErv43FKr7$=ktw?y@$fQ|ZEJ5(nR@8U-2*A?noH_>Nl4YFS^o;h8HO8jb0P?;{hE&YH- zITinqPSj9SUs)|**F|(>?x*YjLtWW*@_1KTZAd3~NonCtx~hTt;sML-66jsfu43N2 zxRcwVgT>CdwP_dL(=a+^eB|!%~w2whcIDxvi!4yHr z_)k(XsI=aX9J_YrnyuZI6MGsxW@7YGhk3mosqwP1p#0o1d3=26; z9&-o|ln?gg*Ikx=e8AOKLqw8B_)l4fjK5vge-`ckp8qxZ5bOUN5fR7`HeI7RX9lJa zXM=iI>2?08e*^zDIp=R61J-{4{xe7CZ=m=NgZLj{J@@|s|Dk^a|J61AH!z#%-vR%4 p$p7Y~5SK4b|K_}u%0B!v*gsTT4HfOrGa>)ps)z^(N7{d?{{ibBjq?Bi literal 0 HcmV?d00001 diff --git a/web-application/.gitignore b/web-application/.gitignore index 94ad409..184fddb 100644 --- a/web-application/.gitignore +++ b/web-application/.gitignore @@ -3,6 +3,7 @@ obj bin *.user *.suo -Site/system/v*.*/ -packages/ +mod +packages Site/ClaimStore.aspx +Site/system/v*.*/ diff --git a/web-application/Modules/Modules.sln b/web-application/Modules/Modules.sln index 434019e..1ec1705 100644 --- a/web-application/Modules/Modules.sln +++ b/web-application/Modules/Modules.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2013 -VisualStudioVersion = 12.0.30723.0 +VisualStudioVersion = 12.0.31101.0 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sdl.Web.Modules.Search", "Search\Sdl.Web.Modules.Search\Sdl.Web.Modules.Search.csproj", "{8FEFFF4C-0AE2-452F-89B1-36F7D2944032}" EndProject @@ -15,6 +15,10 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sdl.Web.Tridion", "..\Sdl.W EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sdl.Web.DD4T", "..\Sdl.Web.DD4T\Sdl.Web.DD4T.csproj", "{360AEC0A-3367-486A-885F-7931F32234C1}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sdl.Web.Modules.SmartTarget", "SmartTarget\Sdl.Web.Modules.SmartTarget\Sdl.Web.Modules.SmartTarget.csproj", "{05ECDB04-EB87-4EC9-B13B-C3D5C100494C}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Sdl.Web.Modules.SmartTarget.DD4T", "SmartTarget\Sdl.Web.Modules.SmartTarget.DD4T\Sdl.Web.Modules.SmartTarget.DD4T.csproj", "{DD3A7294-291F-420D-81B0-0058AB704B8D}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -71,6 +75,22 @@ Global {360AEC0A-3367-486A-885F-7931F32234C1}.Tridion71Debug|Any CPU.Build.0 = Debug|Any CPU {360AEC0A-3367-486A-885F-7931F32234C1}.Tridion71Release|Any CPU.ActiveCfg = Release|Any CPU {360AEC0A-3367-486A-885F-7931F32234C1}.Tridion71Release|Any CPU.Build.0 = Release|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Release|Any CPU.Build.0 = Release|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Tridion71Debug|Any CPU.ActiveCfg = Debug|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Tridion71Debug|Any CPU.Build.0 = Debug|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Tridion71Release|Any CPU.ActiveCfg = Release|Any CPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C}.Tridion71Release|Any CPU.Build.0 = Release|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Release|Any CPU.Build.0 = Release|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Tridion71Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Tridion71Debug|Any CPU.Build.0 = Debug|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Tridion71Release|Any CPU.ActiveCfg = Release|Any CPU + {DD3A7294-291F-420D-81B0-0058AB704B8D}.Tridion71Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/ComponentPresentationFactory.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/ComponentPresentationFactory.cs new file mode 100644 index 0000000..f13ff86 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/ComponentPresentationFactory.cs @@ -0,0 +1,66 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using DD4T.ContentModel; +using DD4T.ContentModel.Factories; +using Tridion.ContentDelivery.DynamicContent.Query; +using Tridion.ContentDelivery.Meta; + +namespace Sdl.Web.Modules.SmartTarget.DD4T.Factories +{ + public class ComponentPresentationFactory : IComponentPresentationFactory + { + private IComponentFactory _componentFactory; + + public ComponentPresentationFactory(IComponentFactory componentFactory) + { + _componentFactory = componentFactory; + } + + public IComponentPresentation GetComponentPresentation(string componentUri, string templateUri) + { + IComponent component = null; + if (_componentFactory.TryGetComponent(componentUri, out component, templateUri)) + { + var componentTcmUri = new TcmUri(componentUri); + var templateTcmUri = new TcmUri(templateUri); + + var publicationCriteria = new PublicationCriteria(templateTcmUri.PublicationId); + var itemReferenceCriteria = new ItemReferenceCriteria(templateTcmUri.ItemId); + var itemTypeTypeCriteria = new ItemTypeCriteria(32); + + var query = new Tridion.ContentDelivery.DynamicContent.Query.Query( + CriteriaFactory.And(new Criteria[] { publicationCriteria, itemReferenceCriteria, itemTypeTypeCriteria })); + + var results = query.ExecuteEntityQuery(); + if (results != null) + { + var templateMeta = (ITemplateMeta)results.FirstOrDefault(); + + var componentPresentation = new ComponentPresentation(); + componentPresentation.Component = component as Component; + componentPresentation.IsDynamic = true; + + var template = new ComponentTemplate() + { + Id = templateUri, + Title = templateMeta.Title, + OutputFormat = templateMeta.OutputFormat + }; + componentPresentation.ComponentTemplate = template; + return componentPresentation; + } + } + return null; + } + + public bool TryGetComponentPresentation(string componentUri, string templateUri, out IComponentPresentation componentPresentation) + { + componentPresentation = GetComponentPresentation(componentUri, templateUri); + return componentPresentation != null; + } + + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/IComponentPresentationFactory.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/IComponentPresentationFactory.cs new file mode 100644 index 0000000..febc521 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Factories/IComponentPresentationFactory.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using DD4T.ContentModel; + +namespace Sdl.Web.Modules.SmartTarget.DD4T.Factories +{ + public interface IComponentPresentationFactory + { + IComponentPresentation GetComponentPresentation(string componentUri, string templateUri); + + bool TryGetComponentPresentation(string componentUri, string templateUri, out IComponentPresentation componentPresentation); + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs new file mode 100644 index 0000000..651c5c3 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs @@ -0,0 +1,87 @@ +using System; +using System.Text; +using System.Web.Mvc; +using Sdl.Web.Common.Models; +using Sdl.Web.DD4T.Html; +using Sdl.Web.Modules.SmartTarget.Interfaces; +using Sdl.Web.Modules.SmartTarget.Models; +using Sdl.Web.Modules.SmartTarget.Analytics; +using Sdl.Web.Mvc.Configuration; + +namespace Sdl.Web.Modules.SmartTarget.DD4T.Html +{ + public class SmartTargetRenderer : DD4TRenderer, ISmartTargetRenderer + { + private const string _defaultSiteEditTag = "span"; + + public MvcHtmlString RenderSmartTargetQuery(IRegion region, HtmlHelper helper, string siteEditTag = _defaultSiteEditTag) + { + var siteEditOpenTag = String.Format("<{0}>", siteEditTag); + var siteEditCloseTag = String.Format("", siteEditTag); + + if (region is SmartTargetRegion) + { + var smartTargetRegion = region as SmartTargetRegion; + + var xmpMarkup = new StringBuilder(); + var isPreview = WebRequestContext.IsPreview; + if (isPreview) + { + xmpMarkup.AppendLine(siteEditOpenTag); + xmpMarkup.AppendLine(smartTargetRegion.XpmMarkup); + } + foreach (var item in smartTargetRegion.Items) + { + if (item is SmartTargetPromotion) + { + var promotion = item as SmartTargetPromotion; + if (promotion.IsVisible) + { + if (isPreview) + { + xmpMarkup.AppendLine(siteEditOpenTag); + xmpMarkup.AppendLine(promotion.XpmMarkup); + } + foreach (var promotionItem in promotion.Items) + { + if (promotionItem.IsVisible) + { + string renderedContent = RenderEntity(promotionItem.Entity, helper).ToHtmlString(); + if (promotion is SmartTargetExperiment) + { + var experiment = promotion as SmartTargetExperiment; + string renderedContentWithTrackedLinks = SmartTargetAnalytics.AddTrackingToLinks(renderedContent, experiment); + xmpMarkup.AppendLine(renderedContentWithTrackedLinks); + + SmartTargetAnalytics.TrackView(experiment); + SmartTargetAnalytics.SaveExperimentCookies(experiment); + } + else + { + xmpMarkup.AppendLine(renderedContent); + } + } + } + if (isPreview) + { + xmpMarkup.AppendLine(siteEditCloseTag); + } + } + } + else + { + // Fallback content + xmpMarkup.AppendLine(RenderEntity(item, helper).ToHtmlString()); + } + } + if (isPreview) + { + xmpMarkup.AppendLine(siteEditCloseTag); + } + + return MvcHtmlString.Create(xmpMarkup.ToString()); + } + return null; + } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs new file mode 100644 index 0000000..e1a3bb7 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs @@ -0,0 +1,120 @@ +using System; +using System.Collections.Generic; +using DD4T.ContentModel; +using DD4T.ContentModel.Factories; +using Sdl.Web.Common.Interfaces; +using Sdl.Web.DD4T.Mapping; +using Sdl.Web.Modules.SmartTarget.DD4T.Factories; +using Sdl.Web.Modules.SmartTarget.Models; +using Sdl.Web.Modules.SmartTarget.Query; +using Sdl.Web.Modules.SmartTarget.Utils; + +namespace Sdl.Web.Modules.SmartTarget.DD4T.Mapping +{ + public class SmartTargetModelBuilder : DD4TModelBuilder + { + private IComponentPresentationFactory _componentPresentationFactory; + + public SmartTargetModelBuilder(ILinkFactory linkFactory, IContentResolver contentResolver, IComponentPresentationFactory componentPresentationFactory) + : base(linkFactory, contentResolver) + { + _componentPresentationFactory = componentPresentationFactory; + } + + protected override object CreatePage(object sourceEntity, Type type, List includes) + { + var page = base.CreatePage(sourceEntity, type, includes) as Sdl.Web.Common.Models.IPage; + if (page != null) + { + Dictionary moduleMap; + List regionConfigList; + if (TryGetSmartTargetRegionConfiguration(sourceEntity, out moduleMap, out regionConfigList)) + { + var queryResults = SmartTargetQuery.GetPagePromotions(regionConfigList); + foreach (var queryResult in queryResults) + { + var region = new SmartTargetRegion + { + Module = moduleMap[queryResult.RegionName], + Name = queryResult.RegionName, + XpmMarkup = queryResult.XpmMarkup, + HasSmartTargetContent = queryResult.HasSmartTargetContent + }; + + if (region.HasSmartTargetContent) + { + foreach (var promotion in queryResult.Promotions) + { + RetrievePromotionEntities(promotion); + region.Items.Add(promotion); + } + } + else + { + var fallbackContent = page.Regions.ContainsKey(region.Name) ? page.Regions[region.Name] : null; + if (fallbackContent != null) + { + region.Items = fallbackContent.Items; + } + } + page.Regions[region.Name] = region; + } + } + } + return page; + } + + private bool TryGetSmartTargetRegionConfiguration(object sourceEntity, out Dictionary moduleMap, out List regionConfigList) + { + moduleMap = new Dictionary(); + regionConfigList = new List(); + + IPage page = sourceEntity as IPage; + if (page != null && page.PageTemplate.MetadataFields.ContainsKey("smartTargetRegions")) + { + foreach (var smartTargetRegion in page.PageTemplate.MetadataFields["smartTargetRegions"].EmbeddedValues) + { + string module, regionName; + ViewUtils.ParseViewName(smartTargetRegion["regionName"].Value, out module, out regionName); //Mandatory field; regionName + moduleMap[regionName] = module; + + int maxItems = 0; + Int32.TryParse(smartTargetRegion["maxItems"].Value, out maxItems); //Mandatory field; maxItems + + bool allowDuplicates = AllowDuplicatesValueHelper.DefaultAllowDuplicates; + if (smartTargetRegion.ContainsKey("allowDuplicates")) + { + allowDuplicates = AllowDuplicatesValueHelper.Parse(smartTargetRegion["allowDuplicates"].Value); //Optional field; allowDuplicates + } + + var regionConfig = new SmartTargetRegionConfig + { + PageId = page.Id, + RegionName = regionName, + MaxItems = maxItems, + AllowDuplicates = allowDuplicates + }; + regionConfigList.Add(regionConfig); + } + return true; + } + return false; + } + + private void RetrievePromotionEntities(SmartTargetPromotion promotion) + { + foreach (var promotionItem in promotion.Items) + { + if (promotionItem.IsVisible) + { + IComponentPresentation componentPresentation; + if (_componentPresentationFactory.TryGetComponentPresentation(promotionItem.ComponentUri, promotionItem.TemplateUri, out componentPresentation)) + { + promotionItem.Entity = componentPresentation; + } + } + } + } + + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Properties/AssemblyInfo.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..f61efbb --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// 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. +[assembly: AssemblyTitle("Sdl.Web.Modules.SmartTarget.DD4T")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Microsoft")] +[assembly: AssemblyProduct("Sdl.Web.Modules.SmartTarget.DD4T")] +[assembly: AssemblyCopyright("Copyright © Microsoft 2015")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("dd12c51d-8715-405e-9a44-4ad971821954")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Sdl.Web.Modules.SmartTarget.DD4T.csproj b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Sdl.Web.Modules.SmartTarget.DD4T.csproj new file mode 100644 index 0000000..bc18964 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Sdl.Web.Modules.SmartTarget.DD4T.csproj @@ -0,0 +1,97 @@ + + + + + Debug + AnyCPU + {DD3A7294-291F-420D-81B0-0058AB704B8D} + Library + Properties + Sdl.Web.Modules.SmartTarget.DD4T + Sdl.Web.Modules.SmartTarget.DD4T + v4.5 + 512 + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\..\..\packages\DD4TFramework.1.31.0\lib\DD4T.ContentModel.dll + + + ..\..\..\packages\DD4TFramework.1.31.0\lib\DD4T.ContentModel.Contracts.dll + + + + + + False + ..\..\..\packages\Microsoft.AspNet.Mvc.5.1.2\lib\net45\System.Web.Mvc.dll + + + + + + + + False + ..\..\..\_references\2013-sp1\Tridion.ContentDelivery.dll + + + + + + + + + + + + {21c08f9a-24c2-481a-95c3-a255be9771a7} + Sdl.Web.Common + + + {360aec0a-3367-486a-885f-7931f32234c1} + Sdl.Web.DD4T + + + {923b2009-9a0b-4425-88a5-bf7af25c8f8b} + Sdl.Web.Mvc + + + {05ecdb04-eb87-4ec9-b13b-c3d5c100494c} + Sdl.Web.Modules.SmartTarget + + + + + + + + rmdir "$(SolutionDir)..\mod\SmartTarget.DD4T\web\Site" /q /s +xcopy "$(TargetPath)" "$(SolutionDir)..\mod\SmartTarget.DD4T\web\Site\bin\" /Y /s +xcopy "$(SolutionDir)..\mod\SmartTarget.DD4T\web\Site\*" "$(SolutionDir)..\Site\" /Y /s + + + \ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/packages.config b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/packages.config new file mode 100644 index 0000000..ff067f2 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Analytics/SmartTargetAnalytics.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Analytics/SmartTargetAnalytics.cs new file mode 100644 index 0000000..e2bf6a4 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Analytics/SmartTargetAnalytics.cs @@ -0,0 +1,32 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Sdl.Web.Modules.SmartTarget.Models; +using Sdl.Web.Modules.SmartTarget.Utils; +using Tridion.SmartTarget.Analytics; +using Tridion.SmartTarget.Utils; + +namespace Sdl.Web.Modules.SmartTarget.Analytics +{ + public static class SmartTargetAnalytics + { + private static AnalyticsManager _analyticsManager = new AnalyticsManager(); + + public static void TrackView(SmartTargetExperiment experiment) + { + _analyticsManager.TrackView(experiment.ExperimentDimensions, new AnalyticsMetaData()); + } + + public static string AddTrackingToLinks(string content, SmartTargetExperiment experiment) + { + return _analyticsManager.AddTrackingToLinks(content, experiment.ExperimentDimensions, new AnalyticsMetaData()); + } + + public static void SaveExperimentCookies(SmartTargetExperiment experiment) + { + CookieProcessor.SaveExperimentCookies(WebContext.Response, null, experiment.NewExperimentCookies); + } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml new file mode 100644 index 0000000..7442ea0 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml @@ -0,0 +1,4 @@ +@model Region +
+ @ViewBag.Renderer.RenderSmartTargetQuery(Model, Html) +
\ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml new file mode 100644 index 0000000..6b3d0c1 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml @@ -0,0 +1,37 @@ +@model SmartTargetRegion +@using System.Linq +@using Sdl.Web.Modules.SmartTarget.Models; +
+ + @Html.Raw(Model.XpmMarkup) + @if (Model.HasSmartTargetContent) + { + foreach (var promotion in Model.Items.Cast()) + { + if (promotion.IsVisible) + { + + @Html.Raw(promotion.XpmMarkup) +

@promotion.Title

+

@promotion.Slogan

+ @foreach (var item in promotion.Items) + { + if (item.IsVisible) + { + @ViewBag.Renderer.RenderEntity(item.Entity, Html) + } + } +
+ } + } + } + else + { + //Render fallback content + foreach (var item in Model.Items) + { + @ViewBag.Renderer.RenderEntity(item, Html) + } + } +
+
\ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/web.config b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/web.config new file mode 100644 index 0000000..b56ec35 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/web.config @@ -0,0 +1,35 @@ + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs new file mode 100644 index 0000000..53b3017 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs @@ -0,0 +1,12 @@ +using System; +using System.Web.Mvc; +using Sdl.Web.Common.Interfaces; +using Sdl.Web.Common.Models; + +namespace Sdl.Web.Modules.SmartTarget.Interfaces +{ + public interface ISmartTargetRenderer : IRenderer + { + MvcHtmlString RenderSmartTargetQuery(IRegion region, HtmlHelper helper, string siteEditTag); + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetExperiment.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetExperiment.cs new file mode 100644 index 0000000..064a958 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetExperiment.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tridion.SmartTarget.Analytics; +using Tridion.SmartTarget.Query; + +namespace Sdl.Web.Modules.SmartTarget.Models +{ + public class SmartTargetExperiment : SmartTargetPromotion + { + public ExperimentDimensions ExperimentDimensions { get; set; } + + public ExperimentCookies NewExperimentCookies { get; set; } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetItem.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetItem.cs new file mode 100644 index 0000000..32f3480 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetItem.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Sdl.Web.Modules.SmartTarget.Models +{ + public class SmartTargetItem + { + public string RegionName { get; set; } + + public string PromotionId { get; set; } + + public string ComponentUri { get; set; } + + public string TemplateUri { get; set; } + + public bool IsVisible { get; set; } + + // The raw entity that make up the promotion (eg Component Presentation) + public object Entity { get; set; } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetPromotion.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetPromotion.cs new file mode 100644 index 0000000..0d56b0b --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetPromotion.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Sdl.Web.Modules.SmartTarget.Models +{ + public class SmartTargetPromotion + { + public const string _xpmMarkupFormat = ""; + + public string RegionName { get; set; } + + public string PromotionId { get; set; } + + public string Title { get; set; } + + public string Slogan { get; set; } + + public List Items { get; set; } + + public bool IsVisible { get; set; } + + public string XpmMarkup + { + get { return String.Format(_xpmMarkupFormat, PromotionId, RegionName); } + } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegion.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegion.cs new file mode 100644 index 0000000..a515f1f --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegion.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Sdl.Web.Common.Models; + +namespace Sdl.Web.Modules.SmartTarget.Models +{ + public class SmartTargetRegion : Region + { + public bool HasSmartTargetContent { get; set; } + + public string XpmMarkup { get; set; } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegionConfig.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegionConfig.cs new file mode 100644 index 0000000..14d8d16 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Models/SmartTargetRegionConfig.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Sdl.Web.Modules.SmartTarget.Models +{ + public class SmartTargetRegionConfig + { + public string PageId { get; set; } + + public string RegionName { get; set; } + + public int MaxItems { get; set; } + + public int StartIndex { get; set; } + + public bool AllowDuplicates { get; set; } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Properties/AssemblyInfo.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..2da8a30 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// 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. +[assembly: AssemblyTitle("Sdl.Web.Modules.SmartTarget")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Microsoft")] +[assembly: AssemblyProduct("Sdl.Web.Modules.SmartTarget")] +[assembly: AssemblyCopyright("Copyright © Microsoft 2015")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("fd367611-b695-4c2a-a6d0-cc7780fa714a")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQuery.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQuery.cs new file mode 100644 index 0000000..d830e04 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQuery.cs @@ -0,0 +1,118 @@ +using System.Collections.Generic; +using Sdl.Web.Modules.SmartTarget.Models; +using Sdl.Web.Modules.SmartTarget.Utils; +using Tridion.ContentDelivery.AmbientData; +using Tridion.SmartTarget.Analytics; +using Tridion.SmartTarget.Query; +using Tridion.SmartTarget.Query.Builder; +using Tridion.SmartTarget.Utils; + +namespace Sdl.Web.Modules.SmartTarget.Query +{ + public class SmartTargetQuery + { + public static List GetPagePromotions(List regionConfigList) + { + var queryResults = new List(); + + var itemsAlreadyOnPage = new List(); + foreach(var regionConfig in regionConfigList) + { + var queryResult = GetRegionPromotions(regionConfig, itemsAlreadyOnPage); + queryResults.Add(queryResult); + } + + return queryResults; + } + + public static SmartTargetQueryResult GetRegionPromotions(SmartTargetRegionConfig regionConfig, List itemsAlreadyOnPage) + { + var queryResult = new SmartTargetQueryResult(); + queryResult.RegionName = regionConfig.RegionName; + + var pageUri = new TcmUri(regionConfig.PageId); + var publicationUri = new TcmUri(0, pageUri.PublicationId, 1); + //TODO; via TRI?? + ClaimStore claimStore = AmbientDataContext.CurrentClaimStore; + string triggers = AmbientDataHelper.GetTriggers(claimStore); + + var queryBuilder = new QueryBuilder(); + queryBuilder.Parse(triggers); + queryBuilder.AddCriteria(new PublicationCriteria(publicationUri)); + queryBuilder.AddCriteria(new PageCriteria(pageUri)); + queryBuilder.AddCriteria(new RegionCriteria(regionConfig.RegionName)); + if (regionConfig.MaxItems > 0) + { + queryBuilder.MaxItems = regionConfig.MaxItems; + } + if (regionConfig.StartIndex > 0) + { + queryBuilder.StartIndex = regionConfig.StartIndex; + } + + ResultSet fredHopperResultset = queryBuilder.Execute(); + if (fredHopperResultset.Promotions.Count > 0) + { + queryResult.Promotions = ProcessRegionPromotions(fredHopperResultset.Promotions, publicationUri, pageUri, regionConfig.RegionName, regionConfig.MaxItems, regionConfig.AllowDuplicates, itemsAlreadyOnPage); + queryResult.HasSmartTargetContent = true; + } + + var xmpQueryMarkup = ResultSet.GetExperienceManagerMarkup(regionConfig.RegionName, regionConfig.MaxItems, fredHopperResultset.Promotions); + queryResult.XpmMarkup = xmpQueryMarkup; + + return queryResult; + } + + private static List ProcessRegionPromotions(List promotions, TcmUri publicationUri, TcmUri pageUri, string region, int maxItems, bool allowDuplicates, List itemsAlreadyOnPage) + { + var itemsOutputInRegion = new List(); + var existingExperimentCookies = CookieProcessor.GetExperimentCookies(WebContext.Request); + var newExperimentCookies = new ExperimentCookies(); + ExperimentDimensions experimentDimensions = null; + + //Method will populate experimentDimensions variable when an experiment is present. Also it will populate the newExperimentCookies variable when no existing experiment cookies are found + ResultSet.FilterPromotions(promotions, region, maxItems, allowDuplicates, itemsOutputInRegion, itemsAlreadyOnPage, ref existingExperimentCookies, ref newExperimentCookies, out experimentDimensions); + + var smartTargetPromotions = new List(); + foreach (var promotion in promotions) + { + var smartTargetPromotion = new SmartTargetPromotion(); + if (experimentDimensions != null && experimentDimensions.ExperimentId.Equals(promotion.PromotionId)) + { + //Populate the remaining emtpy properties + experimentDimensions.PublicationId = publicationUri.ToString(); + experimentDimensions.PageId = pageUri.ToString(); + experimentDimensions.Region = region; + + smartTargetPromotion = new SmartTargetExperiment() + { + ExperimentDimensions = experimentDimensions, + NewExperimentCookies = newExperimentCookies + }; + } + smartTargetPromotion.PromotionId = promotion.PromotionId; + smartTargetPromotion.RegionName = promotion.Region; + smartTargetPromotion.Title = promotion.Title; + smartTargetPromotion.Slogan = promotion.Slogan; + smartTargetPromotion.IsVisible = promotion.Visible; + + var smartTargetPromotionItems = new List(); + foreach (var item in promotion.Items) + { + var smartTargetItem = new SmartTargetItem + { + PromotionId = item.PromotionId, + RegionName = item.Region, + ComponentUri = item.ComponentUriAsString, + TemplateUri = item.TemplateUriAsString, + IsVisible = item.Visible + }; + smartTargetPromotionItems.Add(smartTargetItem); + } + smartTargetPromotion.Items = smartTargetPromotionItems; + smartTargetPromotions.Add(smartTargetPromotion); + } + return smartTargetPromotions; + } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQueryResult.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQueryResult.cs new file mode 100644 index 0000000..b024771 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Query/SmartTargetQueryResult.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Sdl.Web.Modules.SmartTarget.Models; + +namespace Sdl.Web.Modules.SmartTarget.Query +{ + public class SmartTargetQueryResult + { + public string RegionName { get; set; } + + public List Promotions { get; set; } + + public bool HasSmartTargetContent { get; set; } + + public string XpmMarkup { get; set; } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Sdl.Web.Modules.SmartTarget.csproj b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Sdl.Web.Modules.SmartTarget.csproj new file mode 100644 index 0000000..44a5817 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Sdl.Web.Modules.SmartTarget.csproj @@ -0,0 +1,119 @@ + + + + + Debug + AnyCPU + {05ECDB04-EB87-4EC9-B13B-C3D5C100494C} + Library + Properties + Sdl.Web.Modules.SmartTarget + Sdl.Web.Modules.SmartTarget + v4.5 + 512 + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + False + ..\..\..\packages\Microsoft.AspNet.Mvc.5.1.2\lib\net45\System.Web.Mvc.dll + + + False + ..\..\..\packages\Microsoft.AspNet.Razor.3.1.2\lib\net45\System.Web.Razor.dll + + + False + ..\..\..\packages\Microsoft.AspNet.WebPages.3.1.2\lib\net45\System.Web.WebPages.dll + + + False + ..\..\..\packages\Microsoft.AspNet.WebPages.3.1.2\lib\net45\System.Web.WebPages.Deployment.dll + + + False + ..\..\..\packages\Microsoft.AspNet.WebPages.3.1.2\lib\net45\System.Web.WebPages.Razor.dll + + + + + + + + ..\..\..\_references\2013-sp1\Tridion.ContentDelivery.AmbientData.dll + + + ..\..\..\_references\st-2014-sp1\Tridion.SmartTarget.dll + + + + + + + + + + + + + + + + + + + + + {21c08f9a-24c2-481a-95c3-a255be9771a7} + Sdl.Web.Common + + + {923b2009-9a0b-4425-88a5-bf7af25c8f8b} + Sdl.Web.Mvc + + + + + + + + Designer + + + + + + rmdir "$(SolutionDir)..\mod\SmartTarget\web\Site" /q /s +xcopy "$(TargetPath)" "$(SolutionDir)..\mod\SmartTarget\web\Site\bin\" /Y +xcopy "$(ProjectDir)$(OutDir)Tridion.SmartTarget*.dll" "$(SolutionDir)..\mod\SmartTarget\web\Site\bin\" /Y +xcopy "$(ProjectDir)\Areas\*" "$(SolutionDir)..\mod\SmartTarget\web\Site\Areas\" /Y /s +xcopy "$(ProjectDir)\redirect\*" "$(SolutionDir)..\mod\SmartTarget\web\Site\redirect\" /Y /s +xcopy "$(SolutionDir)..\mod\SmartTarget\web\Site\*" "$(SolutionDir)..\Site\" /Y /s + + + \ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/AllowDuplicatesValueHelper.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/AllowDuplicatesValueHelper.cs new file mode 100644 index 0000000..dd5fc26 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/AllowDuplicatesValueHelper.cs @@ -0,0 +1,33 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tridion.SmartTarget.Utils; + +namespace Sdl.Web.Modules.SmartTarget.Utils +{ + public static class AllowDuplicatesValueHelper + { + public static bool DefaultAllowDuplicates + { + get + { + return ConfigurationUtility.DefaultAllowDuplicates; + } + } + + public static bool Parse(string value) + { + if ("No".Equals(value, StringComparison.OrdinalIgnoreCase)) + { + return false; + } + else if ("Yes".Equals(value, StringComparison.OrdinalIgnoreCase)) + { + return true; + } + return DefaultAllowDuplicates; + } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/ViewUtils.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/ViewUtils.cs new file mode 100644 index 0000000..64bd5b0 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/ViewUtils.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Sdl.Web.Common.Configuration; + +namespace Sdl.Web.Modules.SmartTarget.Utils +{ + public static class ViewUtils + { + public static void ParseViewName(string value, out string moduleName, out string viewName) + { + moduleName = SiteConfiguration.GetDefaultModuleName();//Default module + viewName = null; + if (value != null) + { + var bits = value.Split(':'); + if (bits.Length > 1) + { + moduleName = bits[0].Trim(); + viewName = bits[1].Trim(); + } + else + { + viewName = bits[0].Trim(); + } + } + } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/WebContext.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/WebContext.cs new file mode 100644 index 0000000..0270ec5 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Utils/WebContext.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Web; +using Sdl.Web.Mvc.Configuration; + +namespace Sdl.Web.Modules.SmartTarget.Utils +{ + public static class WebContext + { + public static HttpRequest Request + { + get + { + return HttpContext.Current.Request; + } + } + + public static HttpResponse Response + { + get + { + return HttpContext.Current.Response; + } + } + } +} diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/packages.config b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/packages.config new file mode 100644 index 0000000..a6add84 --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/packages.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/redirect/Web.config b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/redirect/Web.config new file mode 100644 index 0000000..774501c --- /dev/null +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/redirect/Web.config @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/web-application/Modules/Unity.config b/web-application/Modules/Unity.config index 3b862f7..c841ba7 100644 --- a/web-application/Modules/Unity.config +++ b/web-application/Modules/Unity.config @@ -13,6 +13,10 @@ + + + + @@ -51,13 +55,13 @@ - + - + @@ -81,7 +85,8 @@ - + + diff --git a/web-application/_references/st-2014-sp1/Tridion.SmartTarget.Interop.dll b/web-application/_references/st-2014-sp1/Tridion.SmartTarget.Interop.dll new file mode 100644 index 0000000000000000000000000000000000000000..5fa9879194b520270a9812992acef65ea9e95588 GIT binary patch literal 598016 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
oR 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 literal 0 HcmV?d00001 diff --git a/web-application/_references/st-2014-sp1/Tridion.SmartTarget.dll b/web-application/_references/st-2014-sp1/Tridion.SmartTarget.dll new file mode 100644 index 0000000000000000000000000000000000000000..9fee4b0bf7f3b8b2e658e0befb16efd4e225555d GIT binary patch literal 81408 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 literal 0 HcmV?d00001 From cf104c2d5c0473267d815ec1d174316d7561232e Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Fri, 24 Jul 2015 13:00:41 -0700 Subject: [PATCH 5/9] Optimization by iterating only over visible promotions --- .../Mapping/SmartTargetModelBuilder.cs | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs index e1a3bb7..e1aa2e2 100644 --- a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Mapping/SmartTargetModelBuilder.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.Collections.Generic; using DD4T.ContentModel; using DD4T.ContentModel.Factories; @@ -103,15 +104,12 @@ private bool TryGetSmartTargetRegionConfiguration(object sourceEntity, out Dicti private void RetrievePromotionEntities(SmartTargetPromotion promotion) { - foreach (var promotionItem in promotion.Items) + foreach (var promotionItem in promotion.Items.Where(p => p.IsVisible)) { - if (promotionItem.IsVisible) + IComponentPresentation componentPresentation; + if (_componentPresentationFactory.TryGetComponentPresentation(promotionItem.ComponentUri, promotionItem.TemplateUri, out componentPresentation)) { - IComponentPresentation componentPresentation; - if (_componentPresentationFactory.TryGetComponentPresentation(promotionItem.ComponentUri, promotionItem.TemplateUri, out componentPresentation)) - { - promotionItem.Entity = componentPresentation; - } + promotionItem.Entity = componentPresentation; } } } From 741bde049b77e214217cc8e5038ab8025a2c0dcc Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Fri, 24 Jul 2015 13:07:23 -0700 Subject: [PATCH 6/9] Extracted rendering of promotions to separate method --- .../Html/SmartTargetRenderer.cs | 116 ++++++++++-------- .../SmartTarget/Views/Region/Inset2.cshtml | 40 +++--- .../Interfaces/ISmartTargetRenderer.cs | 5 +- 3 files changed, 92 insertions(+), 69 deletions(-) diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs index 651c5c3..226021d 100644 --- a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget.DD4T/Html/SmartTargetRenderer.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using System.Text; using System.Web.Mvc; using Sdl.Web.Common.Models; @@ -14,74 +15,81 @@ public class SmartTargetRenderer : DD4TRenderer, ISmartTargetRenderer { private const string _defaultSiteEditTag = "span"; - public MvcHtmlString RenderSmartTargetQuery(IRegion region, HtmlHelper helper, string siteEditTag = _defaultSiteEditTag) + public MvcHtmlString RenderSmartTargetQuery(SmartTargetRegion region, HtmlHelper helper, string siteEditTag = _defaultSiteEditTag) { var siteEditOpenTag = String.Format("<{0}>", siteEditTag); var siteEditCloseTag = String.Format("", siteEditTag); - if (region is SmartTargetRegion) + var xmpMarkup = new StringBuilder(); + var isPreview = WebRequestContext.IsPreview; + if (isPreview) { - var smartTargetRegion = region as SmartTargetRegion; - - var xmpMarkup = new StringBuilder(); - var isPreview = WebRequestContext.IsPreview; - if (isPreview) - { - xmpMarkup.AppendLine(siteEditOpenTag); - xmpMarkup.AppendLine(smartTargetRegion.XpmMarkup); - } - foreach (var item in smartTargetRegion.Items) + xmpMarkup.AppendLine(siteEditOpenTag); + xmpMarkup.AppendLine(region.XpmMarkup); + } + if (region.HasSmartTargetContent) + { + foreach (var promotion in region.Items.Cast().Where(p => p.IsVisible)) { - if (item is SmartTargetPromotion) + if (isPreview) { - var promotion = item as SmartTargetPromotion; - if (promotion.IsVisible) - { - if (isPreview) - { - xmpMarkup.AppendLine(siteEditOpenTag); - xmpMarkup.AppendLine(promotion.XpmMarkup); - } - foreach (var promotionItem in promotion.Items) - { - if (promotionItem.IsVisible) - { - string renderedContent = RenderEntity(promotionItem.Entity, helper).ToHtmlString(); - if (promotion is SmartTargetExperiment) - { - var experiment = promotion as SmartTargetExperiment; - string renderedContentWithTrackedLinks = SmartTargetAnalytics.AddTrackingToLinks(renderedContent, experiment); - xmpMarkup.AppendLine(renderedContentWithTrackedLinks); - - SmartTargetAnalytics.TrackView(experiment); - SmartTargetAnalytics.SaveExperimentCookies(experiment); - } - else - { - xmpMarkup.AppendLine(renderedContent); - } - } - } - if (isPreview) - { - xmpMarkup.AppendLine(siteEditCloseTag); - } - } + xmpMarkup.AppendLine(siteEditOpenTag); + xmpMarkup.AppendLine(promotion.XpmMarkup); + } + foreach (var item in promotion.Items.Where(i => i.IsVisible)) + { + xmpMarkup.AppendLine(RenderPromotionContent(promotion, helper)); } - else + if (isPreview) { - // Fallback content - xmpMarkup.AppendLine(RenderEntity(item, helper).ToHtmlString()); + xmpMarkup.AppendLine(siteEditCloseTag); } } - if (isPreview) + } + else + { + // Fallback content + foreach (var item in region.Items) { - xmpMarkup.AppendLine(siteEditCloseTag); - } + xmpMarkup.AppendLine(RenderEntity(item, helper).ToHtmlString()); + } + } + if (isPreview) + { + xmpMarkup.AppendLine(siteEditCloseTag); + } - return MvcHtmlString.Create(xmpMarkup.ToString()); + return MvcHtmlString.Create(xmpMarkup.ToString()); + } + + public MvcHtmlString RenderSmartTargetPromotion(SmartTargetPromotion promotion, HtmlHelper helper) + { + return new MvcHtmlString(RenderPromotionContent(promotion, helper)); + } + + private string RenderPromotionContent(SmartTargetPromotion promotion, HtmlHelper helper) + { + var renderedContent = new StringBuilder(); + foreach (var item in promotion.Items.Where(i => i.IsVisible)) + { + renderedContent.AppendLine(RenderEntity(item.Entity, helper).ToHtmlString()); + } + + if (promotion is SmartTargetExperiment) + { + var experiment = promotion as SmartTargetExperiment; + string renderedContentWithTrackedLinks = SmartTargetAnalytics.AddTrackingToLinks(renderedContent.ToString(), experiment); + + SmartTargetAnalytics.TrackView(experiment); + SmartTargetAnalytics.SaveExperimentCookies(experiment); + + return renderedContentWithTrackedLinks; + } + else + { + return renderedContent.ToString(); } - return null; } + } } diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml index 6b3d0c1..2cfc7df 100644 --- a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset2.cshtml @@ -2,28 +2,40 @@ @using System.Linq @using Sdl.Web.Modules.SmartTarget.Models;
- - @Html.Raw(Model.XpmMarkup) - @if (Model.HasSmartTargetContent) - { - foreach (var promotion in Model.Items.Cast()) + @if (SiteConfiguration.IsStaging) + { + + @Html.Raw(Model.XpmMarkup) + @if (Model.HasSmartTargetContent) { - if (promotion.IsVisible) + foreach (var promotion in Model.Items.Cast().Where(p => p.IsVisible)) { @Html.Raw(promotion.XpmMarkup)

@promotion.Title

@promotion.Slogan

- @foreach (var item in promotion.Items) - { - if (item.IsVisible) - { - @ViewBag.Renderer.RenderEntity(item.Entity, Html) - } - } + @ViewBag.Renderer.RenderSmartTargetPromotion(promotion, Html)
} } + else + { + //Render fallback content + foreach (var item in Model.Items) + { + @ViewBag.Renderer.RenderEntity(item, Html) + } + } +
+ } + else + { + if (Model.HasSmartTargetContent) + { + foreach (var promotion in Model.Items.Cast().Where(p => p.IsVisible)) + { + @ViewBag.Renderer.RenderSmartTargetPromotion(promotion, Html) + } } else { @@ -33,5 +45,5 @@ @ViewBag.Renderer.RenderEntity(item, Html) } } -
+ }
\ No newline at end of file diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs index 53b3017..d21813a 100644 --- a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Interfaces/ISmartTargetRenderer.cs @@ -2,11 +2,14 @@ using System.Web.Mvc; using Sdl.Web.Common.Interfaces; using Sdl.Web.Common.Models; +using Sdl.Web.Modules.SmartTarget.Models; namespace Sdl.Web.Modules.SmartTarget.Interfaces { public interface ISmartTargetRenderer : IRenderer { - MvcHtmlString RenderSmartTargetQuery(IRegion region, HtmlHelper helper, string siteEditTag); + MvcHtmlString RenderSmartTargetQuery(SmartTargetRegion region, HtmlHelper helper, string siteEditTag); + + MvcHtmlString RenderSmartTargetPromotion(SmartTargetPromotion promotion, HtmlHelper helper); } } From 22b917a966e15e5c6ea9ac8ba125854f7d8f45bc Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Fri, 24 Jul 2015 13:08:19 -0700 Subject: [PATCH 7/9] Updated view model to SmartTargetRegion --- .../Areas/SmartTarget/Views/Region/Inset1.cshtml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml index 7442ea0..746fca1 100644 --- a/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml +++ b/web-application/Modules/SmartTarget/Sdl.Web.Modules.SmartTarget/Areas/SmartTarget/Views/Region/Inset1.cshtml @@ -1,4 +1,4 @@ -@model Region +@model Sdl.Web.Modules.SmartTarget.Models.SmartTargetRegion
@ViewBag.Renderer.RenderSmartTargetQuery(Model, Html)
\ No newline at end of file From 95bee90dc194eee81d6fa4f289b9d1207a04b39f Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Fri, 31 Jul 2015 11:11:40 -0700 Subject: [PATCH 8/9] Added SmartTarget module installation package --- ...ContentPort.zip => SmartTarget-Module.zip} | Bin 21066 -> 34522 bytes 1 file changed, 0 insertions(+), 0 deletions(-) rename modules/{SmartTarget-Module-ContentPort.zip => SmartTarget-Module.zip} (57%) diff --git a/modules/SmartTarget-Module-ContentPort.zip b/modules/SmartTarget-Module.zip similarity index 57% rename from modules/SmartTarget-Module-ContentPort.zip rename to modules/SmartTarget-Module.zip index 2e5916414520869d19613115d098e4ed9e554fdb..49d8c1d6e7c183f4c78e60d8b9e9e99359f0c3cd 100644 GIT binary patch delta 13706 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 delta 150 zcmccB%XDf9BTIlcGs|RwW-%6d1_p-78=FNpMsjh%IP#mjxPmxY#DG$pp9q`TPUdNr z5|U?70rEjW0Zc-)O%81KLX%SF0!zgUiJ|D2Aq*5&Yq1ewWdrGF20|}J28LGwARYid CE*bg& From 03f6d696ff07928d6f1aaf79afa55567d6c353c0 Mon Sep 17 00:00:00 2001 From: Jeroen Suurd Date: Fri, 31 Jul 2015 12:04:41 -0700 Subject: [PATCH 9/9] Added SmartTarget Area files to SmartTarget module installation package --- modules/SmartTarget-Module.zip | Bin 34522 -> 36922 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/modules/SmartTarget-Module.zip b/modules/SmartTarget-Module.zip index 49d8c1d6e7c183f4c78e60d8b9e9e99359f0c3cd..2039595895f389207a05f4291a7dc430ea89fafc 100644 GIT binary patch delta 3056 zcma);c|25mAIFceg|bWb!Pst=LESO-UB%eO41?@r$rdwsqB_|cBQ zTF92%j4c$BNJZ%>>#f{*FkN$R^*n!^^F8PF`hCCe&-eHHo!{q-o`p0OL2Be2KuNE4 z%fq^Z%_}SbaDyEHxBvifv@kJ8S*VBl6*!^7FB3&aX`9I z()-qr78M%ps@5vgR>9sc9LE&Ka>bEo>Xhvuo!;s-3$_@hUSDY%Y> z80iA55AOr@^KE6ZLz=RAQ?6h#e_K_3SsfIL!>kjJjiiw`+%MaEEumokIhqVva zI5iit_lm@DWZO@Jk>oT$W%EtJQG7k$L|Qi^i0u#bXy~ z2P`JXF84s6O#Qq#d2dhOgyizi#qI;HUE>_pwXmBiY8+$w59X=l=LLAt6C=KH9ZJvP z*K=d9%|(!eZOEqPF#`_GJ`x7r8Qijze%hI~X~nE0R;)<+$8+feY0dtPT{Yq>Ap&j% zZhWs4C3$rX;W&YI);nxwptA+bL)R=fn*Ck3Peas1AHh3z;}qTaY9mU9>cDW?bf8|7 zVWgZVu{E;vGY9WO;Hc%}j?R;`7C!xWcEkG=KTI2DL})QCwT!LpQT`vSEKluzU0>0M z=S8EEjS-IG&y=9JdfK)1>xfPxQMZ3zT?jH&TUwV3trF4+QNKO(Q335}-lP?%_cmIr zM34UD$L?aT92Ld2%nZO5|Yw6)_x{L-j76``>ljH;0Ld5PfaBn z`}!)M*+1M|Q&Sc)tEq;~wy!J+zTG7YYW{(FQ=-adR-kIwFj^x9aJ{m#Z2cqsqogaL z)_Q#KIORp|3=d-&Hrpzh6Im;zf7tvS-)-xgU1@D~)#gMyLhtH?=qJ)M5Y6Mpz1HaZ zz^@4I?LwnkN(94E&9I-emhf@IO7o)8^@Bv);6?nggR!@k3ki0%YoAxAI}RQ|a{I_F zW_G5$W;yF3_j*5AmX~5*EV#DkRX=X$F&`3pLkXOKVf zr5vuuopkPybzv2XmPUw6 zI+T5}DVp^x+puztAkZL8-}s-9Ps$DDL!v*4A*#e(AHIYD4^ zG`U}Wpf+*dZ&!6Y`?>pjy_CYpb+63RG6S<^q`(Q}%MZwo)y1jO7%EEnfk|hcwv1EI+UxdL1|?zR<|}RP2;q5Jxo_A}+AcM`srH#Dovq(@TYeoG7hwEf&K>8!l6+ zy3U+^yhdgbj}S%ixl<-Ezq7)+f)d4;(!?13cNaHxsGk%28rqc?K5dRPNkIimX3T(>~SN!-$B_H zWu<+IYv#kGa)T(F6M!6PsYYnGgFz{&i4CUD8RwCq!iVs$nh}Y;v#ZD4&U^80xsuGC zdoxqbs-BK4O*TyVRP5Q9|32Mf=*^_qaHa#7nC`x~#HC-q zAa2T|4{Gu<|2U9ilT_F*du8gjlCLMpK1 E1k@avng9R* delta 665 zcmdnBfaz8*(*~u$`a{A0-LealV-7JgFq~##VBln6U^RNmSsI3xcxb8f2ijz z6k;^~c+MkJZt=erbN#P>mR=E7{9sw8=*}g#l67U)n#ks~rui*sFTWtMSNQj}RL?eb zrik>qWMQTBiI>m0e|u9h&r|nueWq{lR2#Db)8=1-+oiekwDh>MmYy*FaFqLblXqnN zx;UM@YnrOL2a4SOY<7y$bt=E~$}iyOd)uUEHZGnMRZDkq{x~v4)mNm>gSGat%#80V zwryJMp!2c#Ki@3PKSn>}R|^05vGv{ApuX*E9Pi)eoyh&S%laCNuz5iNTZ8tmy=Uv+ zxCeZCFgfOduby|>+6%uAX58@h)YRC&T`7)3pm5jWw>^hKN?zzN{S|!aVb6H<%`Jid zGs{crxOThyK0NIZ`8(gk?loik*{R#x_C@(F({A7Q{oLsndW!p|*@t|b^}^uZ#~1nm z-pni_z*uEq_~!TD4a|TN!02XWC{In&-<%NXX~>6~6ee%)(qx^^cCTaG5|WDI5i>)>Kg02{){Ai*%LQg!df(-#(gaY4xT)>FM`Q4cyeUE n+GN@OFeZjfAX9Vlyna8X^!mx~`tA6*7`PY&fG*k61Tqi+zuF&c