Error compiling template "Designs/Swift/Swift_Newsletter.cshtml"
Line 38: The type or namespace name 'Services' does not exist in the namespace 'Dynamicweb' (are you missing an assembly reference?)
Line 558: The type or namespace name 'Services' does not exist in the namespace 'Dynamicweb' (are you missing an assembly reference?)
1 // <auto-generated/>
2 #pragma warning disable 1591
3 namespace CompiledRazorTemplates.Dynamic
4 {
5 #line hidden
6 using System.Threading.Tasks;
7 using System;
8 using System.Collections.Generic;
9 using System.Linq;
10 using Dynamicweb.Content;
11 using Page = Dynamicweb.Content.Page;
12 internal class RazorEngine_d6aeafbb7d5f420a91af3392f83e4e98 : Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
13 {
14 #pragma warning disable 1998
15 public async override global::System.Threading.Tasks.Task ExecuteAsync()
16 {
17 WriteLiteral("\r\n");
18
19 int newsletterWidth = Model.Item.GetInt32("Width");
20 string mediaQuery = newsletterWidth + 20 + "px";
21 string oneColWidth = newsletterWidth + "px";
22 string twoColWidth = newsletterWidth / 2 + "px";
23 string twoColGutterWidth = (newsletterWidth - 20) / 2 + "px";
24 string backgroundColor = "#FFFFFF";
25 string viewInBrowserLink = "/Default.aspx?ID=" + Model.ID;
26 string viewInBrowserText = Model.Item.GetString("ViewInBrowserText");
27 string lang = Pageview.Area.CultureInfo.TwoLetterISOLanguageName;
28 string emailLinksColor = "#808080";
29 string fontsToLink = GetFontsToLink();
30 string bodyFontStyle = GetFontStyle("Body");
31 string theme = !string.IsNullOrEmpty(Pageview.Page.PropertyItem["Theme"]?.ToString()) ? Pageview.Page.PropertyItem["Theme"].ToString().ToLower() : "";
32
33 if (!string.IsNullOrEmpty(theme) && theme != "theme default")
34 {
35 var themesPageId = Pageview.AreaSettings.GetLink("ThemesPage") != null ? Pageview.AreaSettings.GetLink("ThemesPage").PageId : 0;
36 if (themesPageId > 0)
37 {
38 List<Paragraph> themesPageParagraphs = Dynamicweb.Services.Paragraphs.GetParagraphsByPageId(themesPageId)?.ToList();
39 Paragraph themeParagraph = themesPageParagraphs?.FirstOrDefault(p => p.Item["Name"].ToString().ToLower().Equals(theme));
40
41 if (themeParagraph != null)
42 {
43 backgroundColor = themeParagraph.Item["BackgroundColor"] != null ? themeParagraph.Item["BackgroundColor"].ToString() : "";
44 backgroundColor = backgroundColor == "" ? "transparent" : backgroundColor;
45 }
46 }
47 }
48 WriteLiteral("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional //EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\r\n<!--[if IE]>\r\n\t<html xmlns=\"http://www.w3.org/1999/xhtml\" class=\"ie\" lang=\"");
49 Write(lang);
50 WriteLiteral("\">\r\n<![endif]-->\r\n<!--[if !IE]><!-->\r\n\t<html style=\"margin: 0;padding: 0;\" xmlns=\"http://www.w3.org/1999/xhtml\"");
51 BeginWriteAttribute("lang", " lang=\"", 3820, "\"", 3832, 1);
52 WriteAttributeValue("", 3827, lang, 3827, 5, false);
53 EndWriteAttribute();
54 WriteLiteral(@">
55 <!--<![endif]-->
56 <head>
57 <meta http-equiv=""Content-Type"" content=""text/html; charset=utf-8"">
58 <title></title>
59 <!--[if !mso]><!--><meta http-equiv=""X-UA-Compatible"" content=""IE=edge""><!--<![endif]-->
60 <meta name=""viewport"" content=""width=device-width"">
61 <style type=""text/css"">
62 ");
63 WriteLiteral("@media only screen and (min-width: ");
64 Write(mediaQuery);
65 WriteLiteral("){.wrapper{min-width:");
66 Write(oneColWidth);
67 WriteLiteral(@" !important}.wrapper h1{}.wrapper h1{font-size:22px !important;line-height:31px !important}.wrapper h2{}.wrapper h2{font-size:20px !important;line-height:28px !important}.wrapper h3{}.wrapper h3{font-size:18px !important;line-height:26px !important}.column{}.wrapper .size-8{font-size:8px !important;line-height:14px !important}.wrapper .size-9{font-size:9px !important;line-height:16px !important}.wrapper .size-10{font-size:10px !important;line-height:18px !important}.wrapper .size-11{font-size:11px !important;line-height:19px !important}.wrapper .size-12{font-size:12px !important;line-height:19px !important}.wrapper .size-13{font-size:13px !important;line-height:21px !important}.wrapper .size-14{font-size:14px !important;line-height:21px !important}.wrapper .size-15{font-size:15px !important;line-height:23px
68 !important}.wrapper .size-16{font-size:16px !important;line-height:24px !important}.wrapper .size-17{font-size:17px !important;line-height:26px !important}.wrapper .size-18{font-size:18px !importan");
69 WriteLiteral(@"t;line-height:26px !important}.wrapper .size-20{font-size:20px !important;line-height:28px !important}.wrapper .size-22{font-size:22px !important;line-height:31px !important}.wrapper .size-24{font-size:24px !important;line-height:32px !important}.wrapper .size-26{font-size:26px !important;line-height:34px !important}.wrapper .size-28{font-size:28px !important;line-height:36px !important}.wrapper .size-30{font-size:30px !important;line-height:38px !important}.wrapper .size-32{font-size:32px !important;line-height:40px !important}.wrapper .size-34{font-size:34px !important;line-height:43px !important}.wrapper .size-36{font-size:36px !important;line-height:43px !important}.wrapper
70 .size-40{font-size:40px !important;line-height:47px !important}.wrapper .size-44{font-size:44px !important;line-height:50px !important}.wrapper .size-48{font-size:48px !important;line-height:54px !important}.wrapper .size-56{font-size:56px !important;line-height:60px !important}.wrapper .size-64{font-size:64px !important;line-h");
71 WriteLiteral(@"eight:63px !important}}
72 </style>
73 <meta name=""x-apple-disable-message-reformatting"">
74 <style type=""text/css"">
75 .main, .mso {
76 margin: 0;
77 padding: 0;
78 }
79 table {
80 border-collapse: collapse;
81 table-layout: fixed;
82 }
83 * {
84 line-height: inherit;
85 }
86 [x-apple-data-detectors] {
87 color: inherit !important;
88 text-decoration: none !important;
89 }
90 .wrapper .footer__share-button a:hover,
91 .wrapper .footer__share-button a:focus {
92 color: #ffffff !important;
93 }
94 .btn a:hover,
95 .btn a:focus,
96 .footer__share-button a:hover,
97 .footer__share-button a:focus,
98 .email-footer__links a:hover,
99 .email-footer__links a:focus {
100 opacity: 0.8;
101 }
102 .preheader,
103 .header,
104 .layout,
105 .column {
106 transition: width 0.25s ease-in-out, max-width 0.25s ease-in-out;
107 }
108 .preheader td {
109 padding-bottom: 8px;
110 }
111 .layout,
112 div.header {
113 max-width: 400px !important");
114 WriteLiteral(@";
115 -fallback-width: 95% !important;
116 width: calc(100% - 20px) !important;
117 }
118 div.preheader {
119 max-width: 360px !important;
120 -fallback-width: 90% !important;
121 width: calc(100% - 60px) !important;
122 }
123 .snippet,
124 .webversion {
125 Float: none !important;
126 }
127 .stack .column {
128 max-width: 400px !important;
129 width: 100% !important;
130 }
131 .snippet,
132 .webversion {
133 width: 50% !important;
134 }
135 .ie .btn {
136 width: 100%;
137 }
138 .ie .stack .column,
139 .ie .stack .gutter {
140 display: table-cell;
141 height: 0;
142 float: none !important;
143 }
144 .ie div.preheader,
145 .ie .email-footer {
146 max-width: 560px !important;
147 width: 560px !important;
148 }
149 .ie .snippet,
150 .ie .webversion {
151 width: 280px !important;
152 }
153 .ie div.header,
154 .ie .layout {
155 max-width: ");
156 Write(oneColWidth);
157 WriteLiteral(" !important;\r\n min-width: ");
158 Write(oneColWidth);
159 WriteLiteral(" !important;\r\n width: ");
160 Write(oneColWidth);
161 WriteLiteral(" !important;\r\n }\r\n .ie .two-col .column {\r\n max-width: ");
162 Write(twoColWidth);
163 WriteLiteral(" !important;\r\n min-width: ");
164 Write(twoColWidth);
165 WriteLiteral(" !important;\r\n width: ");
166 Write(twoColWidth);
167 WriteLiteral(" !important;\r\n }\r\n .ie .stack.two-col.has-gutter .column {\r\n max-width: ");
168 Write(twoColGutterWidth);
169 WriteLiteral(" !important;\r\n min-width: ");
170 Write(twoColGutterWidth);
171 WriteLiteral(" !important;\r\n width: ");
172 Write(twoColGutterWidth);
173 WriteLiteral(@" !important;
174 }
175 .ie .fixed-width .layout__inner {
176 border-left: 0 none white !important;
177 border-right: 0 none white !important;
178 }
179 .ie .layout__edges {
180 display: none;
181 }
182 .mso .layout__edges {
183 font-size: 0;
184 }
185 .layout-fixed-width,
186 .mso .layout-full-width {
187 background-color: ");
188 Write(backgroundColor);
189 WriteLiteral(";\r\n }\r\n ");
190 WriteLiteral("@media only screen and (min-width: ");
191 Write(mediaQuery);
192 WriteLiteral(@") {
193 .column,
194 .gutter {
195 display: table-cell;
196 height: 0;
197 Float: none !important;
198 vertical-align: top;
199 }
200 div.preheader,
201 .email-footer {
202 max-width: 560px !important;
203 width: 560px !important;
204 }
205 .snippet,
206 .webversion {
207 width: 280px !important;
208 }
209 div.header,
210 .layout,
211 .one-col .column {
212 max-width: ");
213 Write(oneColWidth);
214 WriteLiteral(" !important;\r\n min-width: ");
215 Write(oneColWidth);
216 WriteLiteral(" !important;\r\n width: ");
217 Write(oneColWidth);
218 WriteLiteral(" !important;\r\n }\r\n .two-col .column {\r\n max-width: ");
219 Write(twoColWidth);
220 WriteLiteral(" !important;\r\n min-width: ");
221 Write(twoColWidth);
222 WriteLiteral(" !important;\r\n width: ");
223 Write(twoColWidth);
224 WriteLiteral(" !important;\r\n }\r\n .two-col.has-gutter .column,\r\n .two-col.x_has-gutter .column {\r\n max-width: ");
225 Write(twoColGutterWidth);
226 WriteLiteral(" !important;\r\n min-width: ");
227 Write(twoColGutterWidth);
228 WriteLiteral(" !important;\r\n width: ");
229 Write(twoColGutterWidth);
230 WriteLiteral(" !important;\r\n }\r\n\r\n /*Style need for Comcast email to work. Doesn\'t seem to break any of the other providers*/\r\n .one-col .product-column.column {\r\n \twidth: ");
231 Write(twoColGutterWidth);
232 WriteLiteral(@" !important;
233 }
234
235 .two-col .product-column.column,
236 .two-col .product-column.x_column,
237 .product-column.column,
238 .product-column.x_column {
239 min-width: 0 !important;
240 min-width: auto !important;
241 }
242 }
243 ");
244 WriteLiteral(@"@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
245 .fblike {
246 background-image: url(/Files/EmailIcons/Facebook.png) !important;
247 }
248 .tweet {
249 background-image: url(/Files/EmailIcons/Twitter.png) !important;
250 }
251 .linkedinshare {
252 background-image: url(/Files/EmailIcons/Linkedin.png) !important;
253 }
254 .forwardtoafriend {
255 background-image: url(/Files/EmailIcons/Envelope.png) !important;
256 }
257 }
258 ");
259 WriteLiteral(@"@media (max-width: 321px) {
260 .layout,
261 .stack .column {
262 min-width: 320px !important;
263 width: 320px !important;
264 }
265 .border {
266 display: none;
267 }
268 .has-gutter .border {
269 display: table-cell;
270 }
271 }
272 .mso div {
273 border: 0 none white !important;
274 }
275 .mso .w560 .divider {
276 Margin-left: 260px !important;
277 Margin-right: 260px !important;
278 }
279 .mso .w360 .divider {
280 Margin-left: 160px !important;
281 Margin-right: 160px !important;
282 }
283 .mso .w260 .divider {
284 Margin-left: 110px !important;
285 Margin-right: 110px !important;
286 }
287 .mso .w160 .divider {
288 Margin-left: 60px !important;
289 Margin-right: 60px !important;
290 }
291 .mso .w354 .divider {
292 Margin-left: 157px !important;
293 Margin-right: 157px !important;
294 }
295 .mso .w250 .divider {
296 Margin-left: 105px !important;
297 Margin-right: 105px !important;
298 }
299 .mso .w148 .divide");
300 WriteLiteral(@"r {
301 Margin-left: 54px !important;
302 Margin-right: 54px !important;
303 }
304 .mso .size-8,
305 .ie .size-8 {
306 font-size: 8px !important;
307 line-height: 14px !important;
308 }
309 .mso .size-9,
310 .ie .size-9 {
311 font-size: 9px !important;
312 line-height: 16px !important;
313 }
314 .mso .size-10,
315 .ie .size-10 {
316 font-size: 10px !important;
317 line-height: 18px !important;
318 }
319 .mso .size-11,
320 .ie .size-11 {
321 font-size: 11px !important;
322 line-height: 19px !important;
323 }
324 .mso .size-12,
325 .ie .size-12 {
326 font-size: 12px !important;
327 line-height: 19px !important;
328 }
329 .mso .size-13,
330 .ie .size-13 {
331 font-size: 13px !important;
332 line-height: 21px !important;
333 }
334 .mso .size-14,
335 .ie .size-14 {
336 font-size: 14px !important;
337 line-height: 21px !important;
338 }
339 .mso .size-15,
340 .ie .size-15 {
341 font-size: 15px !important;
342 line-height: 23px !important;");
343 WriteLiteral(@"
344 }
345 .mso .size-16,
346 .ie .size-16 {
347 font-size: 16px !important;
348 line-height: 24px !important;
349 }
350 .mso .size-17,
351 .ie .size-17 {
352 font-size: 17px !important;
353 line-height: 26px !important;
354 }
355 .mso .size-18,
356 .ie .size-18 {
357 font-size: 18px !important;
358 line-height: 26px !important;
359 }
360 .mso .size-20,
361 .ie .size-20 {
362 font-size: 20px !important;
363 line-height: 28px !important;
364 }
365 .mso .size-22,
366 .ie .size-22 {
367 font-size: 22px !important;
368 line-height: 31px !important;
369 }
370 .mso .size-24,
371 .ie .size-24 {
372 font-size: 24px !important;
373 line-height: 32px !important;
374 }
375 .mso .size-26,
376 .ie .size-26 {
377 font-size: 26px !important;
378 line-height: 34px !important;
379 }
380 .mso .size-28,
381 .ie .size-28 {
382 font-size: 28px !important;
383 line-height: 36px !important;
384 }
385 .mso .size-30,
386 .ie .size-30 {
387 font-size: 30px !");
388 WriteLiteral(@"important;
389 line-height: 38px !important;
390 }
391 .mso .size-32,
392 .ie .size-32 {
393 font-size: 32px !important;
394 line-height: 40px !important;
395 }
396 .mso .size-34,
397 .ie .size-34 {
398 font-size: 34px !important;
399 line-height: 43px !important;
400 }
401 .mso .size-36,
402 .ie .size-36 {
403 font-size: 36px !important;
404 line-height: 43px !important;
405 }
406 .mso .size-40,
407 .ie .size-40 {
408 font-size: 40px !important;
409 line-height: 47px !important;
410 }
411 .mso .size-44,
412 .ie .size-44 {
413 font-size: 44px !important;
414 line-height: 50px !important;
415 }
416 .mso .size-48,
417 .ie .size-48 {
418 font-size: 48px !important;
419 line-height: 54px !important;
420 }
421 .mso .size-56,
422 .ie .size-56 {
423 font-size: 56px !important;
424 line-height: 60px !important;
425 }
426 .mso .size-64,
427 .ie .size-64 {
428 font-size: 64px !important;
429 line-height: 63px !important;
430 }
431
432 .mt-0 > *:fir");
433 WriteLiteral("st-child {\r\n\t\tmargin-top: 0;\r\n\t}\r\n\r\n\t.mb-0 > *:last-child {\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\t</style>\r\n\t<!--[if !mso]><!-->\r\n\t<style type=\"text/css\">\r\n ");
434 WriteLiteral("@import url(https://fonts.googleapis.com/css?family=");
435 Write(fontsToLink);
436 WriteLiteral(");\r\n </style>\r\n\t<link");
437 BeginWriteAttribute("href", " href=\"", 15531, "\"", 15590, 2);
438 WriteAttributeValue("", 15538, "https://fonts.googleapis.com/css?family=", 15538, 40, true);
439 WriteAttributeValue("", 15578, fontsToLink, 15578, 12, false);
440 EndWriteAttribute();
441 WriteLiteral(" rel=\"stylesheet\" type=\"text/css\">\r\n\t<!--<![endif]-->\r\n\t<style type=\"text/css\">\r\n .main,.mso{background-color:");
442 Write(backgroundColor);
443 WriteLiteral(@"}.logo a:hover,.logo a:focus{color:#1e2e3b !important}.mso h1,.ie h1{}.mso h1,.ie h1{font-size:22px !important;line-height:31px !important}.mso h2,.ie h2{}.mso h2,.ie h2{font-size:20px !important;line-height:28px !important}.mso h3,.ie h3{}.mso h3,.ie h3{font-size:18px !important;line-height:26px !important}.mso .layout__inner,.ie .layout__inner{}.mso .footer__share-button p{}
444 </style>
445 <meta name=""robots"" content=""noindex,nofollow""></meta>
446 <meta property=""og:title""");
447 BeginWriteAttribute("content", " content=\"", 16200, "\"", 16240, 1);
448 WriteAttributeValue("", 16210, Model.Item.GetString("Title"), 16210, 30, false);
449 EndWriteAttribute();
450 WriteLiteral("></meta>\r\n</head>\r\n<!--[if mso]>\r\n\t<body class=\"mso\">\r\n<![endif]-->\r\n<!--[if !mso]><!-->\r\n<body class=\"main no-padding\" style=\"margin: 0;padding: 0;-webkit-text-size-adjust: 100%;\">\r\n<!--<![endif]-->\r\n<table class=\"wrapper\"");
451 BeginWriteAttribute("style", " style=\"", 16464, "\"", 16581, 7);
452 WriteAttributeValue("", 16472, "background-color:", 16472, 17, true);
453 WriteAttributeValue("", 16489, backgroundColor, 16489, 16, false);
454 WriteAttributeValue("", 16505, ";border-collapse:", 16505, 17, true);
455 WriteAttributeValue(" ", 16522, "collapse;table-layout:", 16523, 23, true);
456 WriteAttributeValue(" ", 16545, "fixed;min-width:", 16546, 17, true);
457 WriteAttributeValue(" ", 16562, "320px;width:", 16563, 13, true);
458 WriteAttributeValue(" ", 16575, "100%;", 16576, 6, true);
459 EndWriteAttribute();
460 WriteLiteral(" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\">\r\n\t<tbody>\r\n\t<tr>\r\n\t\t<td>\r\n");
461 if (!string.IsNullOrEmpty(viewInBrowserText))
462 {
463 WriteLiteral(@" <div>
464 <div class=""preheader"" style=""Margin: 0 auto;max-width: 560px;min-width: 280px; width: 280px;width: calc(28000% - 167440px);"">
465 <div style=""border-collapse: collapse;display: table;width: 100%;"">
466 <!--[if (mso)|(IE)]><table align=""center"" class=""preheader"" cellpadding=""0"" cellspacing=""0"" role=""presentation""><tr><td style=""width: ");
467 Write(oneColWidth);
468 WriteLiteral("\" valign=\"top\"><![endif]-->\r\n\t\t\t\t\t\t\t<div class=\"webversion\"");
469 BeginWriteAttribute("style", " style=\"", 17150, "\"", 17371, 20);
470 WriteAttributeValue("", 17158, "display:", 17158, 8, true);
471 WriteAttributeValue(" ", 17166, "table-cell;Float:", 17167, 18, true);
472 WriteAttributeValue(" ", 17184, "left;font-size:", 17185, 16, true);
473 WriteAttributeValue(" ", 17200, "12px;max-width:", 17201, 16, true);
474 WriteAttributeValue(" ", 17216, oneColWidth, 17217, 12, false);
475 WriteAttributeValue("", 17229, ";min-width:", 17229, 11, true);
476 WriteAttributeValue(" ", 17240, "320px;", 17241, 7, true);
477 WriteAttributeValue(" ", 17247, "width:", 17248, 7, true);
478 WriteAttributeValue(" ", 17254, "320px;width:", 17255, 13, true);
479 WriteAttributeValue(" ", 17267, "calc(28000%", 17268, 12, true);
480 WriteAttributeValue(" ", 17279, "-", 17280, 2, true);
481 WriteAttributeValue(" ", 17281, "167400px);padding:", 17282, 19, true);
482 WriteAttributeValue(" ", 17300, "10px", 17301, 5, true);
483 WriteAttributeValue(" ", 17305, "0", 17306, 2, true);
484 WriteAttributeValue(" ", 17307, "5px", 17308, 4, true);
485 WriteAttributeValue(" ", 17311, "0;text-align:", 17312, 14, true);
486 WriteAttributeValue(" ", 17325, "center;color:", 17326, 14, true);
487 WriteAttributeValue(" ", 17339, emailLinksColor, 17340, 16, false);
488 WriteAttributeValue("", 17356, ";", 17356, 1, true);
489 WriteAttributeValue("", 17357, bodyFontStyle, 17357, 14, false);
490 EndWriteAttribute();
491 WriteLiteral(">\r\n\t\t\t\t\t\t\t\t<p style=\"Margin-top: 0;Margin-bottom: 0;\">\r\n\t\t\t\t\t\t\t\t\t<a");
492 BeginWriteAttribute("style", " style=\"", 17439, "\"", 17531, 7);
493 WriteAttributeValue("", 17447, "text-decoration:", 17447, 16, true);
494 WriteAttributeValue(" ", 17463, "underline;transition:", 17464, 22, true);
495 WriteAttributeValue(" ", 17485, "opacity", 17486, 8, true);
496 WriteAttributeValue(" ", 17493, "0.1s", 17494, 5, true);
497 WriteAttributeValue(" ", 17498, "ease-in;color:", 17499, 15, true);
498 WriteAttributeValue(" ", 17513, emailLinksColor, 17514, 16, false);
499 WriteAttributeValue("", 17530, ";", 17530, 1, true);
500 EndWriteAttribute();
501 BeginWriteAttribute("href", " href=\"", 17532, "\"", 17557, 1);
502 WriteAttributeValue("", 17539, viewInBrowserLink, 17539, 18, false);
503 EndWriteAttribute();
504 WriteLiteral(">");
505 Write(viewInBrowserText);
506 WriteLiteral("</a>\r\n\t\t\t\t\t\t\t\t</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<!--[if (mso)|(IE)]></td></tr></table><![endif]-->\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n");
507 }
508 WriteLiteral("\t\t\t<div>\r\n");
509 WriteLiteral("\r\n\r\n");
510 Write(Model.Grid("Grid", "Email Grid", "default:true;sort:1", "EmailPages"));
511 WriteLiteral("\r\n\r\n\t\t\t</div>\r\n\t\t\t<div role=\"contentinfo\">\r\n\t\t\t\t<div class=\"layout one-col email-footer\"");
512 BeginWriteAttribute("style", " style=\"", 17977, "\"", 18157, 14);
513 WriteAttributeValue("", 17985, "Margin:", 17985, 7, true);
514 WriteAttributeValue(" ", 17992, "0", 17993, 2, true);
515 WriteAttributeValue(" ", 17994, "auto;max-width:", 17995, 16, true);
516 WriteAttributeValue(" ", 18010, oneColWidth, 18011, 12, false);
517 WriteAttributeValue("", 18023, ";min-width:", 18023, 11, true);
518 WriteAttributeValue(" ", 18034, "320px;", 18035, 7, true);
519 WriteAttributeValue(" ", 18041, "width:", 18042, 7, true);
520 WriteAttributeValue(" ", 18048, "320px;width:", 18049, 13, true);
521 WriteAttributeValue(" ", 18061, "calc(28000%", 18062, 12, true);
522 WriteAttributeValue(" ", 18073, "-", 18074, 2, true);
523 WriteAttributeValue(" ", 18075, "167400px);overflow-wrap:", 18076, 25, true);
524 WriteAttributeValue(" ", 18100, "break-word;word-wrap:", 18101, 22, true);
525 WriteAttributeValue(" ", 18122, "break-word;word-break:", 18123, 23, true);
526 WriteAttributeValue(" ", 18145, "break-word;", 18146, 12, true);
527 EndWriteAttribute();
528 WriteLiteral(">\r\n\t\t\t\t\t<div class=\"layout__inner\" style=\"border-collapse: collapse;display: table;width: 100%;\">\r\n\t\t\t\t\t\t<!--[if (mso)|(IE)]><table align=\"center\" cellpadding=\"0\" cellspacing=\"0\" role=\"presentation\"><tr class=\"layout-email-footer\"><td style=\"width: ");
529 Write(oneColWidth);
530 WriteLiteral(";\" class=\"w560\"><![endif]-->\r\n\t\t\t\t\t\t<div class=\"column\"");
531 BeginWriteAttribute("style", " style=\"", 18474, "\"", 18555, 6);
532 WriteAttributeValue("", 18482, "text-align:", 18482, 11, true);
533 WriteAttributeValue(" ", 18493, "center;font-size:", 18494, 18, true);
534 WriteAttributeValue(" ", 18511, "12px;color:", 18512, 12, true);
535 WriteAttributeValue(" ", 18523, emailLinksColor, 18524, 16, false);
536 WriteAttributeValue("", 18540, ";", 18540, 1, true);
537 WriteAttributeValue("", 18541, bodyFontStyle, 18541, 14, false);
538 EndWriteAttribute();
539 WriteLiteral(">\r\n\t\t\t\t\t\t\t<div style=\"Margin-left: 20px;Margin-right: 20px;Margin-top: 10px;Margin-bottom: 10px;\">\r\n\t\t\t\t\t\t\t\t<div style=\"font-size: 12px;line-height: 19px;margin-bottom: 15px;\">\r\n\t\t\t\t\t\t\t\t\t<a");
540 BeginWriteAttribute("style", " style=\"", 18745, "\"", 18837, 7);
541 WriteAttributeValue("", 18753, "text-decoration:", 18753, 16, true);
542 WriteAttributeValue(" ", 18769, "underline;transition:", 18770, 22, true);
543 WriteAttributeValue(" ", 18791, "opacity", 18792, 8, true);
544 WriteAttributeValue(" ", 18799, "0.1s", 18800, 5, true);
545 WriteAttributeValue(" ", 18804, "ease-in;color:", 18805, 15, true);
546 WriteAttributeValue(" ", 18819, emailLinksColor, 18820, 16, false);
547 WriteAttributeValue("", 18836, ";", 18836, 1, true);
548 EndWriteAttribute();
549 WriteLiteral(" href=\"{{EmailMarketing:Email.UnsubscribeLink.Clean}}\">");
550 Write(Translate("Unsubscribe"));
551 WriteLiteral("</a>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t<!--[if (mso)|(IE)]></td></tr></table><![endif]-->\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</td>\r\n\t</tr>\r\n\t</tbody>\r\n</table>\r\n</body>\r\n</html>\r\n");
552 }
553 #pragma warning restore 1998
554
555 private Page GetBrandingPage()
556 {
557 int brandingPageId = Model.Area.Item.GetLink("BrandingPage") != null ? Model.Area.Item.GetLink("BrandingPage").PageId : 0;
558 return brandingPageId > 0 ? Dynamicweb.Services.Pages?.GetPage(brandingPageId) : null;
559 }
560
561 private string GetFontsToLink()
562 {
563 Page brandingPage = GetBrandingPage();
564 if (brandingPage == null) return "";
565
566 List<string> fonts = new List<string>();
567 AddFontFamily(brandingPage, "HeaderFont", fonts);
568 AddFontFamily(brandingPage, "DisplayFont", fonts);
569 AddFontFamily(brandingPage, "BodyFont", fonts);
570
571 var fontsToLink = string.Join("%7C", fonts.Where(x => !string.IsNullOrEmpty(x)).Distinct().Select(x => string.Format("{0}:100,200,300,400,500,600,700,800,900", x)));
572 return fontsToLink;
573 }
574
575 private static void AddFontFamily(Page brandingPage, string systemName, List<string> fonts)
576 {
577 if (brandingPage.Item[systemName] == null) return;
578 dynamic font = Newtonsoft.Json.JsonConvert.DeserializeObject(brandingPage.Item[systemName].ToString());
579 if (font != null && font.Family != null) {
580 fonts.Add(font.Family.ToString());
581 }
582 }
583
584 private string GetFontStyle(string type)
585 {
586 Page brandingPage = GetBrandingPage();
587 if (brandingPage == null) return "";
588
589 string fontStyle = "";
590 dynamic font = Newtonsoft.Json.JsonConvert.DeserializeObject(brandingPage.Item[type+"Font"].ToString());
591 if (font != null) {
592 fontStyle += $"font-family:{font.Family}, sans-serif;";
593 fontStyle += $"font-weight:{font.SelectedVariant};";
594 }
595 fontStyle += $"text-transform:{brandingPage.Item[type+"Casing"]};";
596 fontStyle += $"line-height:{brandingPage.Item[type+"LineHeight"]};";
597 fontStyle += $"letter-spacing:{brandingPage.Item[type+"LetterSpacing"]};";
598 return fontStyle;
599 }
600 }
601 }
602 #pragma warning restore 1591
603
1 @using Dynamicweb.Content
2 @using Page = Dynamicweb.Content.Page
3 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
4 @functions
5 {
6 private Page GetBrandingPage()
7 {
8 int brandingPageId = Model.Area.Item.GetLink("BrandingPage") != null ? Model.Area.Item.GetLink("BrandingPage").PageId : 0;
9 return brandingPageId > 0 ? Dynamicweb.Services.Pages?.GetPage(brandingPageId) : null;
10 }
11
12 private string GetFontsToLink()
13 {
14 Page brandingPage = GetBrandingPage();
15 if (brandingPage == null) return "";
16
17 List<string> fonts = new List<string>();
18 AddFontFamily(brandingPage, "HeaderFont", fonts);
19 AddFontFamily(brandingPage, "DisplayFont", fonts);
20 AddFontFamily(brandingPage, "BodyFont", fonts);
21
22 var fontsToLink = string.Join("%7C", fonts.Where(x => !string.IsNullOrEmpty(x)).Distinct().Select(x => string.Format("{0}:100,200,300,400,500,600,700,800,900", x)));
23 return fontsToLink;
24 }
25
26 private static void AddFontFamily(Page brandingPage, string systemName, List<string> fonts)
27 {
28 if (brandingPage.Item[systemName] == null) return;
29 dynamic font = Newtonsoft.Json.JsonConvert.DeserializeObject(brandingPage.Item[systemName].ToString());
30 if (font != null && font.Family != null) {
31 fonts.Add(font.Family.ToString());
32 }
33 }
34
35 private string GetFontStyle(string type)
36 {
37 Page brandingPage = GetBrandingPage();
38 if (brandingPage == null) return "";
39
40 string fontStyle = "";
41 dynamic font = Newtonsoft.Json.JsonConvert.DeserializeObject(brandingPage.Item[type+"Font"].ToString());
42 if (font != null) {
43 fontStyle += $"font-family:{font.Family}, sans-serif;";
44 fontStyle += $"font-weight:{font.SelectedVariant};";
45 }
46 fontStyle += $"text-transform:{brandingPage.Item[type+"Casing"]};";
47 fontStyle += $"line-height:{brandingPage.Item[type+"LineHeight"]};";
48 fontStyle += $"letter-spacing:{brandingPage.Item[type+"LetterSpacing"]};";
49 return fontStyle;
50 }
51 }
52
53 @{
54 int newsletterWidth = Model.Item.GetInt32("Width");
55 string mediaQuery = newsletterWidth + 20 + "px";
56 string oneColWidth = newsletterWidth + "px";
57 string twoColWidth = newsletterWidth / 2 + "px";
58 string twoColGutterWidth = (newsletterWidth - 20) / 2 + "px";
59 string backgroundColor = "#FFFFFF";
60 string viewInBrowserLink = "/Default.aspx?ID=" + Model.ID;
61 string viewInBrowserText = Model.Item.GetString("ViewInBrowserText");
62 string lang = Pageview.Area.CultureInfo.TwoLetterISOLanguageName;
63 string emailLinksColor = "#808080";
64 string fontsToLink = GetFontsToLink();
65 string bodyFontStyle = GetFontStyle("Body");
66 string theme = !string.IsNullOrEmpty(Pageview.Page.PropertyItem["Theme"]?.ToString()) ? Pageview.Page.PropertyItem["Theme"].ToString().ToLower() : "";
67
68 if (!string.IsNullOrEmpty(theme) && theme != "theme default")
69 {
70 var themesPageId = Pageview.AreaSettings.GetLink("ThemesPage") != null ? Pageview.AreaSettings.GetLink("ThemesPage").PageId : 0;
71 if (themesPageId > 0)
72 {
73 List<Paragraph> themesPageParagraphs = Dynamicweb.Services.Paragraphs.GetParagraphsByPageId(themesPageId)?.ToList();
74 Paragraph themeParagraph = themesPageParagraphs?.FirstOrDefault(p => p.Item["Name"].ToString().ToLower().Equals(theme));
75
76 if (themeParagraph != null)
77 {
78 backgroundColor = themeParagraph.Item["BackgroundColor"] != null ? themeParagraph.Item["BackgroundColor"].ToString() : "";
79 backgroundColor = backgroundColor == "" ? "transparent" : backgroundColor;
80 }
81 }
82 }
83 }
84 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional //EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
85 <!--[if IE]>
86 <html xmlns="http://www.w3.org/1999/xhtml" class="ie" lang="@lang">
87 <![endif]-->
88 <!--[if !IE]><!-->
89 <html style="margin: 0;padding: 0;" xmlns="http://www.w3.org/1999/xhtml" lang="@lang">
90 <!--<![endif]-->
91 <head>
92 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
93 <title></title>
94 <!--[if !mso]><!--><meta http-equiv="X-UA-Compatible" content="IE=edge"><!--<![endif]-->
95 <meta name="viewport" content="width=device-width">
96 <style type="text/css">
97 @@media only screen and (min-width: @mediaQuery){.wrapper{min-width:@oneColWidth !important}.wrapper h1{}.wrapper h1{font-size:22px !important;line-height:31px !important}.wrapper h2{}.wrapper h2{font-size:20px !important;line-height:28px !important}.wrapper h3{}.wrapper h3{font-size:18px !important;line-height:26px !important}.column{}.wrapper .size-8{font-size:8px !important;line-height:14px !important}.wrapper .size-9{font-size:9px !important;line-height:16px !important}.wrapper .size-10{font-size:10px !important;line-height:18px !important}.wrapper .size-11{font-size:11px !important;line-height:19px !important}.wrapper .size-12{font-size:12px !important;line-height:19px !important}.wrapper .size-13{font-size:13px !important;line-height:21px !important}.wrapper .size-14{font-size:14px !important;line-height:21px !important}.wrapper .size-15{font-size:15px !important;line-height:23px
98 !important}.wrapper .size-16{font-size:16px !important;line-height:24px !important}.wrapper .size-17{font-size:17px !important;line-height:26px !important}.wrapper .size-18{font-size:18px !important;line-height:26px !important}.wrapper .size-20{font-size:20px !important;line-height:28px !important}.wrapper .size-22{font-size:22px !important;line-height:31px !important}.wrapper .size-24{font-size:24px !important;line-height:32px !important}.wrapper .size-26{font-size:26px !important;line-height:34px !important}.wrapper .size-28{font-size:28px !important;line-height:36px !important}.wrapper .size-30{font-size:30px !important;line-height:38px !important}.wrapper .size-32{font-size:32px !important;line-height:40px !important}.wrapper .size-34{font-size:34px !important;line-height:43px !important}.wrapper .size-36{font-size:36px !important;line-height:43px !important}.wrapper
99 .size-40{font-size:40px !important;line-height:47px !important}.wrapper .size-44{font-size:44px !important;line-height:50px !important}.wrapper .size-48{font-size:48px !important;line-height:54px !important}.wrapper .size-56{font-size:56px !important;line-height:60px !important}.wrapper .size-64{font-size:64px !important;line-height:63px !important}}
100 </style>
101 <meta name="x-apple-disable-message-reformatting">
102 <style type="text/css">
103 .main, .mso {
104 margin: 0;
105 padding: 0;
106 }
107 table {
108 border-collapse: collapse;
109 table-layout: fixed;
110 }
111 * {
112 line-height: inherit;
113 }
114 [x-apple-data-detectors] {
115 color: inherit !important;
116 text-decoration: none !important;
117 }
118 .wrapper .footer__share-button a:hover,
119 .wrapper .footer__share-button a:focus {
120 color: #ffffff !important;
121 }
122 .btn a:hover,
123 .btn a:focus,
124 .footer__share-button a:hover,
125 .footer__share-button a:focus,
126 .email-footer__links a:hover,
127 .email-footer__links a:focus {
128 opacity: 0.8;
129 }
130 .preheader,
131 .header,
132 .layout,
133 .column {
134 transition: width 0.25s ease-in-out, max-width 0.25s ease-in-out;
135 }
136 .preheader td {
137 padding-bottom: 8px;
138 }
139 .layout,
140 div.header {
141 max-width: 400px !important;
142 -fallback-width: 95% !important;
143 width: calc(100% - 20px) !important;
144 }
145 div.preheader {
146 max-width: 360px !important;
147 -fallback-width: 90% !important;
148 width: calc(100% - 60px) !important;
149 }
150 .snippet,
151 .webversion {
152 Float: none !important;
153 }
154 .stack .column {
155 max-width: 400px !important;
156 width: 100% !important;
157 }
158 .snippet,
159 .webversion {
160 width: 50% !important;
161 }
162 .ie .btn {
163 width: 100%;
164 }
165 .ie .stack .column,
166 .ie .stack .gutter {
167 display: table-cell;
168 height: 0;
169 float: none !important;
170 }
171 .ie div.preheader,
172 .ie .email-footer {
173 max-width: 560px !important;
174 width: 560px !important;
175 }
176 .ie .snippet,
177 .ie .webversion {
178 width: 280px !important;
179 }
180 .ie div.header,
181 .ie .layout {
182 max-width: @oneColWidth !important;
183 min-width: @oneColWidth !important;
184 width: @oneColWidth !important;
185 }
186 .ie .two-col .column {
187 max-width: @twoColWidth !important;
188 min-width: @twoColWidth !important;
189 width: @twoColWidth !important;
190 }
191 .ie .stack.two-col.has-gutter .column {
192 max-width: @twoColGutterWidth !important;
193 min-width: @twoColGutterWidth !important;
194 width: @twoColGutterWidth !important;
195 }
196 .ie .fixed-width .layout__inner {
197 border-left: 0 none white !important;
198 border-right: 0 none white !important;
199 }
200 .ie .layout__edges {
201 display: none;
202 }
203 .mso .layout__edges {
204 font-size: 0;
205 }
206 .layout-fixed-width,
207 .mso .layout-full-width {
208 background-color: @backgroundColor;
209 }
210 @@media only screen and (min-width: @mediaQuery) {
211 .column,
212 .gutter {
213 display: table-cell;
214 height: 0;
215 Float: none !important;
216 vertical-align: top;
217 }
218 div.preheader,
219 .email-footer {
220 max-width: 560px !important;
221 width: 560px !important;
222 }
223 .snippet,
224 .webversion {
225 width: 280px !important;
226 }
227 div.header,
228 .layout,
229 .one-col .column {
230 max-width: @oneColWidth !important;
231 min-width: @oneColWidth !important;
232 width: @oneColWidth !important;
233 }
234 .two-col .column {
235 max-width: @twoColWidth !important;
236 min-width: @twoColWidth !important;
237 width: @twoColWidth !important;
238 }
239 .two-col.has-gutter .column,
240 .two-col.x_has-gutter .column {
241 max-width: @twoColGutterWidth !important;
242 min-width: @twoColGutterWidth !important;
243 width: @twoColGutterWidth !important;
244 }
245
246 /*Style need for Comcast email to work. Doesn't seem to break any of the other providers*/
247 .one-col .product-column.column {
248 width: @twoColGutterWidth !important;
249 }
250
251 .two-col .product-column.column,
252 .two-col .product-column.x_column,
253 .product-column.column,
254 .product-column.x_column {
255 min-width: 0 !important;
256 min-width: auto !important;
257 }
258 }
259 @@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2/1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
260 .fblike {
261 background-image: url(/Files/EmailIcons/Facebook.png) !important;
262 }
263 .tweet {
264 background-image: url(/Files/EmailIcons/Twitter.png) !important;
265 }
266 .linkedinshare {
267 background-image: url(/Files/EmailIcons/Linkedin.png) !important;
268 }
269 .forwardtoafriend {
270 background-image: url(/Files/EmailIcons/Envelope.png) !important;
271 }
272 }
273 @@media (max-width: 321px) {
274 .layout,
275 .stack .column {
276 min-width: 320px !important;
277 width: 320px !important;
278 }
279 .border {
280 display: none;
281 }
282 .has-gutter .border {
283 display: table-cell;
284 }
285 }
286 .mso div {
287 border: 0 none white !important;
288 }
289 .mso .w560 .divider {
290 Margin-left: 260px !important;
291 Margin-right: 260px !important;
292 }
293 .mso .w360 .divider {
294 Margin-left: 160px !important;
295 Margin-right: 160px !important;
296 }
297 .mso .w260 .divider {
298 Margin-left: 110px !important;
299 Margin-right: 110px !important;
300 }
301 .mso .w160 .divider {
302 Margin-left: 60px !important;
303 Margin-right: 60px !important;
304 }
305 .mso .w354 .divider {
306 Margin-left: 157px !important;
307 Margin-right: 157px !important;
308 }
309 .mso .w250 .divider {
310 Margin-left: 105px !important;
311 Margin-right: 105px !important;
312 }
313 .mso .w148 .divider {
314 Margin-left: 54px !important;
315 Margin-right: 54px !important;
316 }
317 .mso .size-8,
318 .ie .size-8 {
319 font-size: 8px !important;
320 line-height: 14px !important;
321 }
322 .mso .size-9,
323 .ie .size-9 {
324 font-size: 9px !important;
325 line-height: 16px !important;
326 }
327 .mso .size-10,
328 .ie .size-10 {
329 font-size: 10px !important;
330 line-height: 18px !important;
331 }
332 .mso .size-11,
333 .ie .size-11 {
334 font-size: 11px !important;
335 line-height: 19px !important;
336 }
337 .mso .size-12,
338 .ie .size-12 {
339 font-size: 12px !important;
340 line-height: 19px !important;
341 }
342 .mso .size-13,
343 .ie .size-13 {
344 font-size: 13px !important;
345 line-height: 21px !important;
346 }
347 .mso .size-14,
348 .ie .size-14 {
349 font-size: 14px !important;
350 line-height: 21px !important;
351 }
352 .mso .size-15,
353 .ie .size-15 {
354 font-size: 15px !important;
355 line-height: 23px !important;
356 }
357 .mso .size-16,
358 .ie .size-16 {
359 font-size: 16px !important;
360 line-height: 24px !important;
361 }
362 .mso .size-17,
363 .ie .size-17 {
364 font-size: 17px !important;
365 line-height: 26px !important;
366 }
367 .mso .size-18,
368 .ie .size-18 {
369 font-size: 18px !important;
370 line-height: 26px !important;
371 }
372 .mso .size-20,
373 .ie .size-20 {
374 font-size: 20px !important;
375 line-height: 28px !important;
376 }
377 .mso .size-22,
378 .ie .size-22 {
379 font-size: 22px !important;
380 line-height: 31px !important;
381 }
382 .mso .size-24,
383 .ie .size-24 {
384 font-size: 24px !important;
385 line-height: 32px !important;
386 }
387 .mso .size-26,
388 .ie .size-26 {
389 font-size: 26px !important;
390 line-height: 34px !important;
391 }
392 .mso .size-28,
393 .ie .size-28 {
394 font-size: 28px !important;
395 line-height: 36px !important;
396 }
397 .mso .size-30,
398 .ie .size-30 {
399 font-size: 30px !important;
400 line-height: 38px !important;
401 }
402 .mso .size-32,
403 .ie .size-32 {
404 font-size: 32px !important;
405 line-height: 40px !important;
406 }
407 .mso .size-34,
408 .ie .size-34 {
409 font-size: 34px !important;
410 line-height: 43px !important;
411 }
412 .mso .size-36,
413 .ie .size-36 {
414 font-size: 36px !important;
415 line-height: 43px !important;
416 }
417 .mso .size-40,
418 .ie .size-40 {
419 font-size: 40px !important;
420 line-height: 47px !important;
421 }
422 .mso .size-44,
423 .ie .size-44 {
424 font-size: 44px !important;
425 line-height: 50px !important;
426 }
427 .mso .size-48,
428 .ie .size-48 {
429 font-size: 48px !important;
430 line-height: 54px !important;
431 }
432 .mso .size-56,
433 .ie .size-56 {
434 font-size: 56px !important;
435 line-height: 60px !important;
436 }
437 .mso .size-64,
438 .ie .size-64 {
439 font-size: 64px !important;
440 line-height: 63px !important;
441 }
442
443 .mt-0 > *:first-child {
444 margin-top: 0;
445 }
446
447 .mb-0 > *:last-child {
448 margin-bottom: 0;
449 }
450 </style>
451 <!--[if !mso]><!-->
452 <style type="text/css">
453 @@import url(https://fonts.googleapis.com/css?family=@fontsToLink);
454 </style>
455 <link href="https://fonts.googleapis.com/css?family=@fontsToLink" rel="stylesheet" type="text/css">
456 <!--<![endif]-->
457 <style type="text/css">
458 .main,.mso{background-color:@backgroundColor}.logo a:hover,.logo a:focus{color:#1e2e3b !important}.mso h1,.ie h1{}.mso h1,.ie h1{font-size:22px !important;line-height:31px !important}.mso h2,.ie h2{}.mso h2,.ie h2{font-size:20px !important;line-height:28px !important}.mso h3,.ie h3{}.mso h3,.ie h3{font-size:18px !important;line-height:26px !important}.mso .layout__inner,.ie .layout__inner{}.mso .footer__share-button p{}
459 </style>
460 <meta name="robots" content="noindex,nofollow"></meta>
461 <meta property="og:title" content="@Model.Item.GetString("Title")"></meta>
462 </head>
463 <!--[if mso]>
464 <body class="mso">
465 <![endif]-->
466 <!--[if !mso]><!-->
467 <body class="main no-padding" style="margin: 0;padding: 0;-webkit-text-size-adjust: 100%;">
468 <!--<![endif]-->
469 <table class="wrapper" style="background-color:@backgroundColor;border-collapse: collapse;table-layout: fixed;min-width: 320px;width: 100%;" cellpadding="0" cellspacing="0" role="presentation">
470 <tbody>
471 <tr>
472 <td>
473 @if (!string.IsNullOrEmpty(viewInBrowserText))
474 {
475 <div>
476 <div class="preheader" style="Margin: 0 auto;max-width: 560px;min-width: 280px; width: 280px;width: calc(28000% - 167440px);">
477 <div style="border-collapse: collapse;display: table;width: 100%;">
478 <!--[if (mso)|(IE)]><table align="center" class="preheader" cellpadding="0" cellspacing="0" role="presentation"><tr><td style="width: @oneColWidth" valign="top"><![endif]-->
479 <div class="webversion" style="display: table-cell;Float: left;font-size: 12px;max-width: @oneColWidth;min-width: 320px; width: 320px;width: calc(28000% - 167400px);padding: 10px 0 5px 0;text-align: center;color: @emailLinksColor;@bodyFontStyle">
480 <p style="Margin-top: 0;Margin-bottom: 0;">
481 <a style="text-decoration: underline;transition: opacity 0.1s ease-in;color: @emailLinksColor;" href="@viewInBrowserLink">@viewInBrowserText</a>
482 </p>
483 </div>
484 <!--[if (mso)|(IE)]></td></tr></table><![endif]-->
485 </div>
486 </div>
487 </div>
488 }
489 <div>
490 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel>
491
492
493 @Model.Grid("Grid", "Email Grid", "default:true;sort:1", "EmailPages")
494
495 </div>
496 <div role="contentinfo">
497 <div class="layout one-col email-footer" style="Margin: 0 auto;max-width: @oneColWidth;min-width: 320px; width: 320px;width: calc(28000% - 167400px);overflow-wrap: break-word;word-wrap: break-word;word-break: break-word;">
498 <div class="layout__inner" style="border-collapse: collapse;display: table;width: 100%;">
499 <!--[if (mso)|(IE)]><table align="center" cellpadding="0" cellspacing="0" role="presentation"><tr class="layout-email-footer"><td style="width: @oneColWidth;" class="w560"><![endif]-->
500 <div class="column" style="text-align: center;font-size: 12px;color: @emailLinksColor;@bodyFontStyle">
501 <div style="Margin-left: 20px;Margin-right: 20px;Margin-top: 10px;Margin-bottom: 10px;">
502 <div style="font-size: 12px;line-height: 19px;margin-bottom: 15px;">
503 <a style="text-decoration: underline;transition: opacity 0.1s ease-in;color: @emailLinksColor;" href="{{EmailMarketing:Email.UnsubscribeLink.Clean}}">@Translate("Unsubscribe")</a>
504 </div>
505 </div>
506 </div>
507 <!--[if (mso)|(IE)]></td></tr></table><![endif]-->
508 </div>
509 </div>
510 </div>
511 </td>
512 </tr>
513 </tbody>
514 </table>
515 </body>
516 </html>
517