Skip to content

Commit 878dd34

Browse files
Update other email templates
1 parent 0355800 commit 878dd34

File tree

2 files changed

+26
-8
lines changed

2 files changed

+26
-8
lines changed

src/Umbraco.Commerce.Checkout/Views/UmbracoCommerceCheckout/Templates/Email/UmbracoCommerceCheckoutGiftCardEmail.cshtml

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
@using Examine
12
@using Umbraco.Cms.Core.Services.Navigation
23
@inherits UmbracoCommerceRazorTemplateView<GiftCardReadOnly>
34
@{
@@ -6,11 +7,19 @@
67

78
// Lookup the umbraco commerce checkout page for the associated orders store
89
// so that we can extract relevant settings to configure the email template
10+
// var contentCache = this.GetRequiredService<IPublishedContentCache>();
11+
// var nav = this.GetRequiredService<IDocumentNavigationQueryService>();
12+
// var rootKeys = nav.TryGetRootKeys(out var keys1) ? keys1 : [];
13+
// var nodeKeys = rootKeys.SelectMany(key => nav.TryGetDescendantsKeysOfType(key, UmbracoCommerceCheckoutConstants.ContentTypes.Aliases.CheckoutPage, out var keys2) ? keys2 : []);
14+
// var checkoutPage = nodeKeys.Select(x => contentCache.GetById(x)).FirstOrDefault(x => x.GetStore()?.Id == Model.StoreId);
15+
916
var contentCache = this.GetRequiredService<IPublishedContentCache>();
10-
var nav = this.GetRequiredService<IDocumentNavigationQueryService>();
11-
var rootKeys = nav.TryGetRootKeys(out var keys1) ? keys1 : [];
12-
var nodeKeys = rootKeys.SelectMany(key => nav.TryGetDescendantsKeysOfType(key, UmbracoCommerceCheckoutConstants.ContentTypes.Aliases.CheckoutPage, out var keys2) ? keys2 : []);
13-
var checkoutPage = nodeKeys.Select(x => contentCache.GetById(x)).FirstOrDefault(x => x.GetStore()?.Id == Model.StoreId);
17+
var examineManager = this.GetRequiredService<IExamineManager>();
18+
var searcher = examineManager.GetIndex("InternalIndex").Searcher;
19+
var storeNodeRecord = searcher.CreateQuery("content").Field("store", store.Id.ToString()).Execute().First();
20+
var checkoutPageRecords = searcher.CreateQuery("content").NodeTypeAlias(UmbracoCommerceCheckoutConstants.ContentTypes.Aliases.CheckoutPage).Execute();
21+
var checkoutPageRecord = checkoutPageRecords.First(x => x.Values["path"].StartsWith(storeNodeRecord.Values["path"]));
22+
var checkoutPage = contentCache.GetById(Guid.Parse(checkoutPageRecord.Values["__Key"]));
1423

1524
var uccStoreLogoUrl = checkoutPage.Value<IPublishedContent>("uccStoreLogo")?.Url();
1625
var uccStoreTsAndCsUrl = checkoutPage.Value<IPublishedContent>("uccTermsAndConditionsPage")?.Url();

src/Umbraco.Commerce.Checkout/Views/UmbracoCommerceCheckout/Templates/Email/UmbracoCommerceCheckoutOrderErrorEmail.cshtml

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
@using Examine
12
@using Umbraco.Cms.Core.Services.Navigation
23
@inherits UmbracoCommerceRazorTemplateView<OrderReadOnly>
34
@{
@@ -6,11 +7,19 @@
67

78
// Lookup the umbraco commerce checkout page for the associated orders store
89
// so that we can extract relevant settings to configure the email template
10+
// var contentCache = this.GetRequiredService<IPublishedContentCache>();
11+
// var nav = this.GetRequiredService<IDocumentNavigationQueryService>();
12+
// var rootKeys = nav.TryGetRootKeys(out var keys1) ? keys1 : [];
13+
// var nodeKeys = rootKeys.SelectMany(key => nav.TryGetDescendantsKeysOfType(key, UmbracoCommerceCheckoutConstants.ContentTypes.Aliases.CheckoutPage, out var keys2) ? keys2 : []);
14+
// var checkoutPage = nodeKeys.Select(x => contentCache.GetById(x)).FirstOrDefault(x => x.GetStore()?.Id == Model.StoreId);
15+
916
var contentCache = this.GetRequiredService<IPublishedContentCache>();
10-
var nav = this.GetRequiredService<IDocumentNavigationQueryService>();
11-
var rootKeys = nav.TryGetRootKeys(out var keys1) ? keys1 : [];
12-
var nodeKeys = rootKeys.SelectMany(key => nav.TryGetDescendantsKeysOfType(key, UmbracoCommerceCheckoutConstants.ContentTypes.Aliases.CheckoutPage, out var keys2) ? keys2 : []);
13-
var checkoutPage = nodeKeys.Select(x => contentCache.GetById(x)).FirstOrDefault(x => x.GetStore()?.Id == Model.StoreId);
17+
var examineManager = this.GetRequiredService<IExamineManager>();
18+
var searcher = examineManager.GetIndex("InternalIndex").Searcher;
19+
var storeNodeRecord = searcher.CreateQuery("content").Field("store", store.Id.ToString()).Execute().First();
20+
var checkoutPageRecords = searcher.CreateQuery("content").NodeTypeAlias(UmbracoCommerceCheckoutConstants.ContentTypes.Aliases.CheckoutPage).Execute();
21+
var checkoutPageRecord = checkoutPageRecords.First(x => x.Values["path"].StartsWith(storeNodeRecord.Values["path"]));
22+
var checkoutPage = contentCache.GetById(Guid.Parse(checkoutPageRecord.Values["__Key"]));
1423

1524
var uccStoreLogoUrl = checkoutPage.Value<IPublishedContent>("uccStoreLogo")?.Url();
1625
var uccStoreTsAndCsUrl = checkoutPage.Value<IPublishedContent>("uccTermsAndConditionsPage")?.Url();

0 commit comments

Comments
 (0)