Error executing template "Designs/Dwsimple/_parsed/fullwidth.parsed.cshtml"
System.IO.IOException: The process cannot access the file 'e:\dynamicweb.net\solutions\SkovboData\ringstedsoroeprovsti.dw9.dynamicweb-cms.com\files\Templates\Designs\Dwsimple\css\DWGlobalStyles.min.css' because it is being used by another process.
at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
at System.IO.StreamWriter.CreateFile(String path, Boolean append, Boolean checkHost)
at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding, Int32 bufferSize, Boolean checkHost)
at System.IO.StreamWriter..ctor(String path, Boolean append, Encoding encoding)
at Dynamicweb.Core.Helpers.TextFileHelper.WriteTextFile(String value, String path, Boolean appendToFile, Encoding encoding)
at CompiledRazorTemplates.Dynamic.RazorEngine_644a1eee28b840f3ae7767fc114cc326.Execute() in e:\dynamicweb.net\solutions\SkovboData\ringstedsoroeprovsti.dw9.dynamicweb-cms.com\files\Templates\Designs\Dwsimple\_parsed\fullwidth.parsed.cshtml:line 1965
at RazorEngine.Templating.TemplateBase.RazorEngine.Templating.ITemplate.Run(ExecuteContext context, TextWriter reader)
at RazorEngine.Templating.RazorEngineService.RunCompile(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass16_0.<RunCompile>b__0(TextWriter writer)
at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
at Dynamicweb.Rendering.Template.RenderRazorTemplate()
1 @using System
2 @using System.Web
3
4 @using System.Text.RegularExpressions
5 @using System.Web
6
7
8 @functions{
9 public class WrapMethods
10 {
11 //Gets the contrasting color
12 public static string getContrastYIQ(string hexcolor)
13 {
14 if (hexcolor != "")
15 {
16 hexcolor = Regex.Replace(hexcolor, "[^0-9a-zA-Z]+", "");
17
18 int r = Convert.ToByte(hexcolor.Substring(0, 2), 16);
19 int g = Convert.ToByte(hexcolor.Substring(2, 2), 16);
20 int b = Convert.ToByte(hexcolor.Substring(4, 2), 16);
21 int yiq = ((r * 299) + (g * 587) + (b * 114)) / 1000;
22
23 if (yiq >= 128)
24 {
25 return "black";
26 }
27 else
28 {
29 return "white";
30 }
31 }
32 else
33 {
34 return "black";
35 }
36 }
37
38
39 //Truncate text
40 public static string Truncate (string value, int count, bool strip=true)
41 {
42 if (strip == true){
43 value = StripHtmlTagByCharArray(value);
44 }
45
46 if (value.Length > count)
47 {
48 value = value.Substring(0, count + 1) + "...";
49 }
50
51 return value;
52 }
53
54
55 //Strip text from HTML
56 public static string StripHtmlTagByCharArray(string htmlString)
57 {
58 char[] array = new char[htmlString.Length];
59 int arrayIndex = 0;
60 bool inside = false;
61
62 for (int i = 0; i < htmlString.Length; i++)
63 {
64 char let = htmlString[i];
65 if (let == '<')
66 {
67 inside = true;
68 continue;
69 }
70 if (let == '>')
71 {
72 inside = false;
73 continue;
74 }
75 if (!inside)
76 {
77 array[arrayIndex] = let;
78 arrayIndex++;
79 }
80 }
81 return new string(array, 0, arrayIndex);
82 }
83
84 //Make the correct count of columns
85 public static string ColumnMaker(int Col, string ScreenSize)
86 {
87 string Columns = "";
88
89 switch (Col)
90 {
91 case 1:
92 Columns = "col-"+ScreenSize+"-12";
93 break;
94
95 case 2:
96 Columns = "col-"+ScreenSize+"-6";
97 break;
98
99 case 3:
100 Columns = "col-"+ScreenSize+"-4";
101 break;
102
103 case 4:
104 Columns = "col-"+ScreenSize+"-3";
105 break;
106
107 default:
108 Columns = "col-"+ScreenSize+"-3";
109 break;
110 }
111
112 return Columns;
113 }
114
115
116 private string Custom(string firstoption, string secondoption)
117 {
118 if (firstoption == "custom")
119 {
120 return secondoption;
121 }
122 else
123 {
124 return firstoption;
125 }
126 }
127 }
128 }
129 @helper MiniCart()
130 {
131 <div class="dropdown-cart">
132 @if (GetInteger("Ecom:Order.OrderLines.TotalProductQuantity") > 0)
133 {
134 <div class="col-md-12 col-sm-12 col-xs-12">
135 <div class="row">
136 <span class="cart-items">@Translate("You have", "You have")<strong> @GetValue("Ecom:Order.OrderLines.TotalProductQuantity")</strong> @Translate("items in your cart", "items in your cart")</span>
137 <table class="table table-cart">
138 <tbody>
139 <tr>
140 <th colspan="2">@Translate("Product", "Product")</th>
141 <th class="text-center">@Translate("Qty", "Qty")</th>
142 <th>@Translate("Total", "Total")</th>
143 </tr>
144
145 @foreach (var orderline in GetLoop("OrderLines"))
146 {
147 var image = orderline.GetString("Ecom:Product.ImageLarge.Clean");
148
149 <tr>
150 <td><img src="/Admin/Public/GetImage.ashx?width=50&image=@image&Compression=99" class="img-center" alt=""></td>
151 <td><a href="@orderline.GetValue(" ecom:order:orderline.productlink")"="">@orderline.GetValue("Ecom:Order:OrderLine.ProductName")</a><br><small>@orderline.GetString("Ecom:Order:OrderLine.ProductVariantText")</small></td>
152 <td class="text-center">@orderline.GetValue("Ecom:Order:OrderLine.Quantity")</td>
153 <td><nobr>@if(orderline.GetInteger("Ecom:Order:OrderLine.Points")>0){
154 @orderline.GetDouble("Ecom:Order:OrderLine.Points");
155 <text> </text>@Translate("orderline_points","points")
156 }
157 else{
158 @orderline.GetValue("Ecom:Order:olPrice.PriceWithVATFormatted")
159 }</nobr></td>
160 </tr>
161 }
162
163 <tr>
164 <td class="text-center"><i class="fa fa-credit-card"></i></td>
165 <td>@GetValue("Ecom:Order.PaymentMethod")</td>
166 <td class="text-center"></td>
167 <td>@GetValue("Ecom:Order.PaymentFee")</td>
168 </tr>
169 <tr>
170 <td class="text-center"><i class="fa fa-truck"></i></td>
171 <td>@GetValue("Ecom:Order.ShippingMethod")</td>
172 <td class="text-center"></td>
173 <td>@GetValue("Ecom:Order.ShippingFee")</td>
174 </tr>
175 </tbody>
176 </table>
177 </div>
178 </div>
179 <div class="col-md-12 col-sm-12 col-xs-12">
180 <div class="row">
181 <div class="col-md-8">
182 <!--
183 @{
184 var edittextstring = Translate("Edit cart", "Edit cart");
185 var cartid = GetValue("DwAreaCartPageID");
186 }
187
188 <form action="/Default.aspx?ID=@cartid" method="post">
189 <input type="submit" name="CartV2.GotoStep1" id="CartV2.GotoStep1" value="@edittextstring" class="btn btn-xs btn-base pull-left" />
190 </form>
191 -->
192 </div>
193 <div class="col-md-4">
194 <a href="Default.aspx?ID=@cartid" class="btn btn-xs btn-base pull-right">@Translate("Proceed to checkout", "Proceed to checkout")</a>
195 <span class="clearfix"></span>
196 </div>
197 </div>
198 <div class="row"> </div>
199 </div>
200 }
201 else
202 {
203 <span class="cart-items">@Translate("Your shopping cart is empty.", "Your shopping cart is empty.")</span>
204 }
205 </div>
206 }
207
208
209
210 <!DOCTYPE html>
211 <html>
212 <head>
213 <meta charset="utf-8">
214 <title>@GetValue("Title")</title>
215 @GetValue("MetaTags")
216 @GetValue("CopyRightNotice")
217
218
219 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
220 <meta name="robots" content="index, follow">
221
222 @{
223 string MetaDescription = GetString("Meta.Description");
224 string MetaKeywords = GetString("Meta.Keywords");
225 }
226
227
228
229
230
231 <!-- Facebook Admin -->
232 @if (!string.IsNullOrWhiteSpace(GetString("Item.Area.FacebookCommendAdmin"))) {
233 string fbadmin = GetString("Item.Area.FacebookCommendAdmin");
234 <meta property="fb:admins" content="@fbadmin">
235 }
236
237 <!-- Essential styles -->
238 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" type="text/css">
239 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css" type="text/css">
240 <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.5/jquery.fancybox.min.css" media="screen">
241
242 <!-- Custom styles -->
243 <link rel="stylesheet" href="/Files/Templates/Designs/Dwsimple/css/custom.min.css" type="text/css">
244
245 <!-- Mobile menu styles -->
246 <link href="//cdnjs.cloudflare.com/ajax/libs/jasny-bootstrap/3.1.3/css/jasny-bootstrap.min.css" rel="stylesheet" type="text/css" media="screen">
247
248 <!-- Favicon -->
249 @{
250 var favicon = @GetString("Item.Area.Favicon");
251 }
252 <link href="@favicon" rel="icon" type="image/png">
253
254 <!-- Variables -->
255 @{
256 var attrValue = "";
257 string currentpageid = GetString("DwPageID");
258 string firstpageid = GetString("DwAreaFirstActivePageID");
259 string searchplaceholder = Translate("Search products", "Search products");
260
261 var cartid = GetValue("DwAreaCartPageID");
262
263 DateTime areaUpdated = Pageview.Area.Audit.LastModifiedAt;
264 string cssPath = HttpContext.Current.Server.MapPath("/Files/Templates/Designs/Dwsimple/css/DWGlobalStylesSite" + GetString("DwAreaID") + "_auto.min.css");
265 DateTime lastWriteTime = System.IO.File.GetLastWriteTime(cssPath);
266 bool writeCss = true; <!-- Rettet fra false SKAL SÆTTES TILBAGE -->
267 string css = String.Empty;
268 if (areaUpdated > lastWriteTime.AddMinutes(1))
269 {
270 writeCss = true;
271 }
272 }
273 <!--FONT SETTINGS-->
274 @functions{
275 public class FontSettings
276 {
277 public class Logo
278 {
279 public static string FontFamily { get; set; }
280 public static string FontSize { get; set; }
281 public static string FontWeight { get; set; }
282 public static string Color { get; set; }
283 public static string LineHeight { get; set; }
284 public static string Casing { get; set; }
285 public static string LetterSpacing { get; set; }
286 }
287
288 public class H1
289 {
290 public static string FontFamily { get; set; }
291 public static string FontSize { get; set; }
292 public static string FontWeight { get; set; }
293 public static string Color { get; set; }
294 public static string LineHeight { get; set; }
295 public static string Casing { get; set; }
296 public static string LetterSpacing { get; set; }
297 }
298
299 public class H2
300 {
301 public static string FontFamily { get; set; }
302 public static string FontSize { get; set; }
303 public static string FontWeight { get; set; }
304 public static string Color { get; set; }
305 public static string LineHeight { get; set; }
306 public static string Casing { get; set; }
307 public static string LetterSpacing { get; set; }
308 }
309
310 public class Body
311 {
312 public static string FontFamily { get; set; }
313 public static string FontSize { get; set; }
314 public static string FontWeight { get; set; }
315 public static string Color { get; set; }
316 public static string LineHeight { get; set; }
317 public static string Casing { get; set; }
318 public static string LetterSpacing { get; set; }
319 }
320 }
321
322 private void InitFontSettings()
323 {
324 //LOGO
325 FontSettings.Logo.FontFamily = CustomFont(GetString("Item.Area.LogoFont.Font"), GetString("Item.Area.LogoFont.CustomFont"));
326 FontSettings.Logo.FontSize = GetString("Item.Area.LogoFont.Size")+"px";
327 FontSettings.Logo.FontWeight = CheckExistence(GetString("Item.Area.LogoFont.Weight"), "normal");
328 FontSettings.Logo.LineHeight = CheckExistence(GetString("Item.Area.LogoFont.LineHeight"), "1");
329 FontSettings.Logo.LetterSpacing = GetString("Item.Area.LogoFont.LetterSpacing") + "px";
330 FontSettings.Logo.Casing = GetString("Item.Area.LogoFont.Casing");
331 FontSettings.Logo.Color = GetString("Item.Area.LogoFont.Color.Color");
332
333
334 //HEADINGS
335 FontSettings.H1.FontFamily = CustomFont(GetString("Item.Area.HeadingsH1.Font"), GetString("Item.Area.HeadingsH1.CustomFont"));
336 FontSettings.H1.FontSize = GetString("Item.Area.HeadingsH1.Size")+"px";
337 FontSettings.H1.FontWeight = CheckExistence(GetString("Item.Area.HeadingsH1.Weight"), "normal");
338 FontSettings.H1.LineHeight = CheckExistence(GetString("Item.Area.HeadingsH1.LineHeight"), "1");
339 FontSettings.H1.LetterSpacing = GetString("Item.Area.HeadingsH1.LetterSpacing") + "px";
340 FontSettings.H1.Casing = GetString("Item.Area.HeadingsH1.Casing");
341 FontSettings.H1.Color = GetString("Item.Area.HeadingsH1.Color.Color");
342
343 FontSettings.H2.FontFamily = CustomFont(GetString("Item.Area.HeadingsH2.Font"), GetString("Item.Area.HeadingsH2.CustomFont"));
344 FontSettings.H2.FontSize = GetString("Item.Area.HeadingsH2.Size")+"px";
345 FontSettings.H2.FontWeight = CheckExistence(GetString("Item.Area.HeadingsH2.Weight"), "normal");
346 FontSettings.H2.LineHeight = CheckExistence(GetString("Item.Area.HeadingsH2.LineHeight"), "1");
347 FontSettings.H2.LetterSpacing = GetString("Item.Area.HeadingsH2.LetterSpacing") + "px";
348 FontSettings.H2.Casing = GetString("Item.Area.HeadingsH2.Casing");
349 FontSettings.H2.Color = GetString("Item.Area.HeadingsH2.Color.Color");
350
351
352 //BODY
353 FontSettings.Body.FontFamily = CustomFont(GetString("Item.Area.BodyFont.Font"), GetString("Item.Area.BodyFont.CustomFont"));
354 FontSettings.Body.FontSize = GetString("Item.Area.BodyFont.Size") + "px";
355 FontSettings.Body.FontWeight = CheckExistence(GetString("Item.Area.BodyFont.Weight"), "normal");
356 FontSettings.Body.LineHeight = CheckExistence(GetString("Item.Area.BodyFont.LineHeight"), "1");
357 FontSettings.Body.LetterSpacing = GetString("Item.Area.BodyFont.LetterSpacing") + "px";
358 FontSettings.Body.Casing = GetString("Item.Area.BodyFont.Casing");
359 FontSettings.Body.Color = GetString("Item.Area.BodyFont.Color.Color");
360
361
362 gfonts.Add(FontSettings.Logo.FontFamily, "");
363 if (!gfonts.ContainsKey(FontSettings.H1.FontFamily))
364 {
365 gfonts.Add(FontSettings.H1.FontFamily, "");
366 }
367 if (!gfonts.ContainsKey(FontSettings.H2.FontFamily))
368 {
369 gfonts.Add(FontSettings.H2.FontFamily, "");
370 }
371 if (!gfonts.ContainsKey(FontSettings.Body.FontFamily))
372 {
373 gfonts.Add(FontSettings.Body.FontFamily, "");
374 }
375
376 }
377
378 private string CustomFont (string firstfont, string secondfont)
379 {
380 if (firstfont == "custom")
381 {
382 return secondfont;
383 }
384 else
385 {
386 return firstfont;
387 }
388 }
389
390 private string CheckExistence (string stringitem, string defaultvalue)
391 {
392 if (!string.IsNullOrWhiteSpace(stringitem)) {
393 return stringitem;
394 } else {
395 return defaultvalue;
396 }
397 }
398
399 private System.Collections.Generic.Dictionary<string, object> gfonts = new System.Collections.Generic.Dictionary<string, object>();
400 }
401
402 @{
403 InitFontSettings();
404 }
405
406 @helper GoogleFonts()
407 {
408 if (gfonts != null)
409 {
410 foreach (var item in gfonts)
411 {
412 <link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=@item.Key:100,200,300,400,500,600,700,800,900">
413 }
414 }
415 }
416
417 @functions{
418 public string FontStylesCSS()
419 {
420 string CssString = @"
421 .dw-logotext {
422 font-family: " + FontSettings.Logo.FontFamily + @";
423 font-size: " + FontSettings.Logo.FontSize + @";
424 font-weight: " + FontSettings.Logo.FontWeight + @";
425 line-height: " + FontSettings.Logo.LineHeight + @" !important;
426 letter-spacing: " + FontSettings.Logo.LetterSpacing + @";
427 text-transform: " + FontSettings.Logo.Casing + @";
428 color: " + FontSettings.Logo.Color + @";
429 }
430
431 h1 {
432 font-family: " + FontSettings.H1.FontFamily + @" !important;
433 font-size: " + FontSettings.H1.FontSize + @";
434 color: " + FontSettings.H1.Color + @";
435 line-height: " + FontSettings.H1.LineHeight + @" !important;
436 text-transform: " + FontSettings.H1.Casing + @";
437 font-weight: " + FontSettings.H1.FontWeight + @";
438 letter-spacing: " + FontSettings.H1.LetterSpacing + @" !important;
439 }
440
441
442 h2, h3, h4, h5, h6 {
443 margin-top: 0.7em;
444 margin-bottom: 0.7em;
445
446 font-family: " + FontSettings.H2.FontFamily + @" !important;
447 font-size: " + FontSettings.H2.FontSize + @";
448 color: " + FontSettings.H2.Color + @";
449 line-height: " + FontSettings.H2.LineHeight + @";
450 text-transform: " + FontSettings.H2.Casing + @" !important;
451 font-weight: " + FontSettings.H2.FontWeight + @" !important;
452 letter-spacing: " + FontSettings.H2.LetterSpacing + @" !important;
453 }
454
455 h4, h5, h6 {
456 font-size: 16px !important;
457 }
458
459 body {
460 font-family: " + FontSettings.Body.FontFamily + @" !important;
461 font-size: " + FontSettings.Body.FontSize + @";
462 color: " + FontSettings.Body.Color + @";
463 line-height: " + FontSettings.Body.LineHeight + @" !important;
464 text-transform: " + FontSettings.Body.Casing + @";
465 font-weight: " + FontSettings.Body.FontWeight + @";
466 letter-spacing: " + FontSettings.Body.LetterSpacing + @" !important;
467 }
468
469 .navbar-wp .navbar-nav > li > a {
470 font-family: " + FontSettings.Body.FontFamily + @" !important;
471 }
472
473 .section-title {
474 margin-top: 0.7em;
475 margin-bottom: 0.7em;
476 }
477 ";
478 return CssString;
479 }
480 }
481 @GoogleFonts()
482 <!-- GENERAL/COLOR SETTINGS -->
483 @functions{
484 public class ColorSettings
485 {
486 public class Color
487 {
488 public static string Primary { get; set; }
489 public static string Secondary { get; set; }
490 public static string NavbarFont { get; set; }
491 public static string Footer { get; set; }
492 public static string FooterFont { get; set; }
493
494 public static string Sticker { get; set; }
495 public static string Price { get; set; }
496 public static string Cart { get; set; }
497 }
498 }
499
500 private void InitColorSettings()
501 {
502 ColorSettings.Color.Primary = GetString("Item.Area.ColorsPrimary.Color");
503 ColorSettings.Color.Secondary = GetString("Item.Area.ColorsSecondary.Color");
504
505 ColorSettings.Color.NavbarFont = GetString("Item.Area.NavbarFontColor");
506
507 if (string.IsNullOrWhiteSpace(ColorSettings.Color.NavbarFont))
508 {
509 ColorSettings.Color.NavbarFont = WrapMethods.getContrastYIQ(ColorSettings.Color.Secondary);
510 }
511
512 ColorSettings.Color.Footer = GetString("Item.Area.ColorsFooterColor.Color");
513 ColorSettings.Color.FooterFont = WrapMethods.getContrastYIQ(ColorSettings.Color.Footer);
514
515 ColorSettings.Color.Price = GetString("Item.Area.EcommercePriceColor.Color");
516 ColorSettings.Color.Sticker = GetString("Item.Area.EcommerceDiscountStickerColor.Color");
517 ColorSettings.Color.Cart = GetString("Item.Area.EcommerceCartButtonColor.Color");
518 }
519
520 public string GetColorSettings()
521 {
522 string CssString = @"
523 a:hover, a:focus, a:active {
524 color: @Primary;
525 }
526
527 .navbar-wp, .navbar-wp.affix, .navbar-wp .navbar-nav > li > a {
528 color: @NavbarFont;
529 }
530
531 .navbar-wp .navbar-nav > .active > a, .navbar-wp .navbar-nav > .active > a:hover, .navbar-wp .navbar-nav > .active > a:focus {
532 color: @NavbarFont;
533 }
534
535 .navbar-wp .navbar-nav > li > a:hover, .navbar-wp .navbar-nav > li > a:focus {
536 border-top: 0px solid @Secondary;
537 color: @NavbarFont;
538 }
539
540 .navbar-wp .navbar-nav > li > a span:after {
541 background-color: @Primary;
542 }
543
544 .btn-dw-primary {
545 color: #FFF;
546 background-color: @Primary;
547 border-color: @Primary;
548 }
549
550 .btn-dw-secondary {
551 color: @NavbarFont;
552 background-color: @Secondary;
553 border-color: @Secondary;
554 }
555
556 .btn-dw-cart {
557 color: #FFF;
558 background-color: @Cart;
559 border-color: @Cart;
560 }
561
562 .dw-section-title {
563 border-color: @Secondary;
564 }
565
566 .dw-minicart-update {
567 color: #FFF !important;
568 background-color: @Primary;
569 transition: all 0.3s ease-in-out 0s;
570 }
571
572 .pagination > li > a, .pagination > li > a:hover, .pagination > li > a:focus, .pagination > li > a:active {
573 color: @Primary;
574 }
575
576 .form-control:hover, .form-control:focus, .form-control:active {
577 border-color: @Primary !important;
578 }
579
580 .bg-2 {
581 background: @Primary !important;
582 }
583
584 .blockquote-1:hover {
585 border-color: @Primary !important;
586 }
587
588 .navbar-wp .navbar-nav > li > a.dropdown-form-toggle, .navbar-wp .navbar-nav > li > a.dropdown-form-toggle:hover, .navbar-wp .navbar-nav > li > a.dropdown-form-toggle:focus {
589 color: @Primary;
590 }
591
592 .navbar-wp .navbar-nav > .open > a.dropdown-form-toggle, .navbar-wp .navbar-nav > .open > a.dropdown-form-toggle:hover, .navbar-wp .navbar-nav > .open > a.dropdown-form-toggle:focus {
593 color: @Primary;
594 }
595
596 .navbar-wp .navbar-nav > li > a:hover, .navbar-wp .navbar-nav > li > a:focus {
597 border: 0px solid @Primary;
598 }
599
600 .navbar-wp .navbar-toggle:hover, .navbar-wp .navbar-toggle:focus {
601 background-color: @Primary !important;
602 border-color: @Primary !important;
603 }
604
605 .navbar-wp .dropdown-menu {
606 border-top: 1px solid @Primary !important;
607 border-bottom: 3px solid @Primary !important;
608 }
609
610 .navbar-wp .dropdown-menu > li > a:hover {
611 background: @Primary !important;
612 color: #fff;
613 }
614
615 .navbar-wp .dropdown-menu .active {
616 background: @Primary !important;
617 color: #fff;
618 }
619
620 .navbar-wp.navbar-contrasted .dropdown-menu > li > a:hover {
621 background: @Primary !important;
622 }
623
624 .nav > ul > li > a:hover {
625 color: @Primary;
626 }
627
628 .lw .w-box.w-box-inverse .thmb-img i {
629 color: @Primary !important;
630 }
631
632 .w-box.w-box-inverse .thmb-img:hover i {
633 background: @Primary !important;
634 }
635
636 .c-box {
637 border: 1px solid @Primary !important;
638 }
639
640 .c-box .c-box-header {
641 background: @Primary !important;
642 }
643
644 .w-section .aside-feature:hover .icon-feature, .w-section .aside-feature:hover h4 {
645 color: @Primary !important;
646 }
647
648 .layer-slider-wrapper .title.title-base {
649 background: @Primary !important;
650 }
651
652 .layer-slider-wrapper .subtitle {
653 color: @Primary !important;
654 }
655
656 .layer-slider-wrapper .list-item {
657 color: @Primary !important;
658 }
659
660 .box-element.box-element-bordered {
661 border: 1px solid @Primary !important;
662 }
663
664 .carousel-2 .carousel-indicators .active {
665 background-color: @Primary !important;
666 }
667
668 .carousel-2 .carousel-nav a {
669 color: @Primary !important;
670 }
671
672 .carousel-2 .carousel-nav a:hover {
673 background: @Primary !important;
674 }
675
676 .carousel-3 .carousel-nav a {
677 color: @Primary !important;
678 }
679
680 .carousel-3 .carousel-nav a:hover {
681 background: @Primary !important;
682 }
683
684 .like-button .button.liked i {
685 color: @Primary !important;
686 }
687
688 ul.list-listings li.featured {
689 border-color: @Primary !important;
690 }
691
692 ul.list-check li i {
693 color: @Primary !important;
694 }
695
696 ul.dw-categories li a:hover, ul.dw-categories a:focus, ul.dw-categories a:active{
697 color: @NavbarFont;
698 background-color: @Primary;
699 border-color: @Primary;
700 }
701
702 ul.categories li a:hover, ul.categories a:focus, ul.categories a:active{
703 color: @NavbarFont;
704 background-color: @Primary;
705 border-color: @Primary;
706 }
707
708 .timeline .event:nth-child(2n):before {
709 background-color: @Primary !important;
710 }
711
712 .timeline .event:nth-child(2n-1):before {
713 background-color: @Primary !important;
714 }
715
716 #toTopHover {
717 background-color: @Primary !important;
718 }
719
720 .tags-list li {
721 border: 1px solid @Primary !important;
722 color: @Primary !important;
723 }
724
725 .tags-list li:hover,
726 a.open-panel {
727 background-color: @Primary !important;
728 }
729
730 .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus,
731 .panel-group .panel-heading a i,
732 .tags-list li a {
733 color: @NavbarFont !important;
734 }
735
736 .nav-pills > li > a:hover, .nav-pills > li > a:focus {
737 color: @NavbarFont !important;
738 background: none repeat scroll 0% 0% @Secondary !important;
739 }
740
741 footer {
742 background: @Footer !important;
743 }
744
745 footer h4 {
746 color: @FooterFont !important;
747 }
748
749 footer a {
750 color: @FooterFont !important;
751 }
752
753 footer a:hover, footer a:focus, footer a:active {
754 color: @Secondary !important;
755 }
756
757 footer p {
758 color: @FooterFont !important;
759 }
760
761 footer ul > li {
762 color: @FooterFont !important;
763 }
764
765 footer hr {
766 border-color: @FooterFont
767 }
768
769
770 /* Button colors */
771 .btn-base {
772 color: @NavbarFont !important;
773 background-color: @Secondary !important;
774 border: 1px solid @Secondary !important;
775 }
776
777 .btn-base:before {
778 background-color: @Secondary !important;
779 }
780
781 .btn-base:hover:before, .btn-base:focus:before, .btn-base:active:before {
782 color: @NavbarFont !important;
783 background-color: @Primary !important;
784 border-color: @Primary !important;
785 }
786
787 .btn-icon:before {
788 transition: none !important;
789 }
790
791 .btn-base:hover, .btn-base:focus, .btn-base:active, .btn-base.active, .open .dropdown-toggle.btn-base {
792 color: @NavbarFont !important;
793 background-color: @Primary !important;
794 border-color: @Primary !important;
795 }
796
797 .btn-two {
798 color: @NavbarFont !important;
799 border-color: @Secondary !important;
800 background-color: @Secondary !important;
801 border: 1px solid @Secondary !important;
802 }
803
804 .btn-two:hover, .btn-two:focus, .btn-two:active, .btn-two.active, .open .dropdown-toggle.btn-two {
805 color: @NavbarFont !important;
806 background-color: @Primary !important;
807 border-color: @Primary !important;
808 }
809
810 .btn-primary {
811 background-color: @Primary !important;
812 border-color: @Primary !important;
813 }
814
815 .open .dropdown-toggle.btn-primary {
816 background-color: @Primary !important;
817 border-color: @Primary !important;
818 }
819
820 .btn-one:hover, .btn-one:focus, .btn-one:active, .btn-one.active, .open .dropdown-toggle.btn-one {
821 color: @Primary !important;
822 }
823
824 .btn-four {
825 border: 2px solid @Primary!important;
826 color: @Primary !important;
827 }
828
829 .btn-four:hover, .btn-four:focus, .btn-four:active, .btn-four.active, .open .dropdown-toggle.btn-four {
830 background-color: #fff !important;
831 }
832
833
834 /* Dropdown-menu */
835 .dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
836 background: @Primary !important;
837 color: #fff !important;
838 }
839
840 /* Ecom settings */
841 .ribbon.base, .ball {
842 background: @Sticker !important;
843 color: #fff;
844 border-right: 5px solid @Sticker !important;
845 }
846
847 .ribbon.base:before {
848 border-top: 27px solid @Sticker !important;
849 }
850
851 .ribbon.base:after {
852 border-bottom: 27px solid @Sticker !important;
853 }
854
855 .price {
856 color: @Price !important;
857 }
858
859 .discount-sticker {
860 background-color: @Sticker !important;
861 }
862
863 .bs-callout-primary {
864 border-left-color: @Primary !important;
865 }
866
867 .ratings .fa-star {
868 color: @Secondary !important;
869 }
870
871 .feature-label {
872 color: @Secondary !important;
873 }";
874
875 return ParseCSSToString(CssString);
876 }
877
878 private string ParseCSSToString(string TheString)
879 {
880 TheString = TheString.Replace("@Primary", ColorSettings.Color.Primary);
881 TheString = TheString.Replace("@Secondary", ColorSettings.Color.Secondary);
882 TheString = TheString.Replace("@NavbarFont", ColorSettings.Color.NavbarFont);
883 TheString = TheString.Replace("@FooterFont", ColorSettings.Color.FooterFont);
884 TheString = TheString.Replace("@Footer", ColorSettings.Color.Footer);
885
886 TheString = TheString.Replace("@Sticker", ColorSettings.Color.Sticker);
887 TheString = TheString.Replace("@Price", ColorSettings.Color.Price);
888 TheString = TheString.Replace("@Cart", ColorSettings.Color.Cart);
889
890
891 System.Text.StringBuilder sb = new System.Text.StringBuilder();
892
893 foreach(var item in TheString.Split(new string[] { Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries))
894 {
895 sb.AppendLine(item);
896 }
897
898 return sb.ToString();
899 }
900 }
901
902 @{
903 InitColorSettings();
904 }
905
906
907
908 @using System.Drawing
909 @using System.Net
910
911
912 @functions{
913 public class GeneralSettings
914 {
915
916 public class Header
917 {
918 public static string Mode { get; set; }
919 public static string Classes { get; set; }
920 public static bool Show { get; set; }
921 public static string Background { get; set; }
922 public static bool ShowFrontpageImage { get; set; }
923 }
924
925 public class Logo
926 {
927 public static string Image { get; set; }
928 public static string ContrastImage { get; set; }
929 public static string Text { get; set; }
930 public static string Slogan { get; set; }
931 public static string SecondaryColor { get; set; }
932 public static string Logo_Background { get; set; }
933 }
934
935 public class Navigation
936 {
937 public static string Position { get; set; }
938 public static string InvertedPosition { get; set; }
939 public static string StickyMenu { get; set; }
940 public static string SelectionMode { get; set; }
941 public static string SelectionStyle { get; set; }
942 public static int SelectionWeight { get; set; }
943 public static bool Case { get; set; }
944
945 public static string BreadcrumbMode { get; set; }
946 public static string BreadcrumbAlign { get; set; }
947
948 public static string LeftmenuMode { get; set; }
949
950 public static string ButtonDesign { get; set; }
951 }
952
953 public class Headings
954 {
955 public static string Mode { get; set; }
956 }
957
958 public class Background
959 {
960 public static string Color { get; set; }
961 public static string Image { get; set; }
962 public static string CustomImage { get; set; }
963 public static bool GradientColor { get; set; }
964 public static string GradientPercentage { get; set; }
965 public static string Style { get; set; }
966 public static string Position { get; set; }
967 }
968
969 public class Site
970 {
971 public static bool Shadow { get; set; }
972 public static string LayoutMode { get; set; }
973 }
974
975 public class Images
976 {
977 public static bool RoundCorners { get; set; }
978 }
979
980 public class Ecommerce
981 {
982 public static string EcomListDesign { get; set; }
983 public static string EcomCardDesign { get; set; }
984 }
985 }
986
987 private void InitGeneralSettings()
988 {
989 //Header settings
990 GeneralSettings.Header.Mode = GetString("Item.Area.HeaderLayoutMode");
991 GeneralSettings.Header.Show = GetBoolean("Item.Area.HeaderShow");
992 GeneralSettings.Header.Background = GetString("Item.Area.NavigationNavbarBackground");
993 GeneralSettings.Header.ShowFrontpageImage = GetBoolean("Item.Area.HeaderFrontpageImage");
994
995 if (GeneralSettings.Header.Mode == "solid"){
996 GeneralSettings.Header.Classes = "";
997 }
998
999 if (GeneralSettings.Header.Mode == "cover" || GeneralSettings.Header.Mode == "mobile"){
1000 GeneralSettings.Header.Classes = "header-alpha header-cover";
1001 }
1002
1003
1004 //Logo settings
1005 GeneralSettings.Logo.Image = GetString("Item.Area.GeneralLogo");
1006 GeneralSettings.Logo.Text = GetString("Item.Area.GeneralLogoText");
1007 GeneralSettings.Logo.Slogan = GetString("Item.Area.LogoSlogan");
1008 GeneralSettings.Logo.SecondaryColor = GetString("Item.Area.LogoSecondColor.Color");
1009 GeneralSettings.Logo.Logo_Background = GetString("Item.Area.Logo_Background");
1010
1011 if (!string.IsNullOrWhiteSpace(GetString("Item.Area.LogoContrastImage"))) {
1012 GeneralSettings.Logo.ContrastImage = GetString("Item.Area.LogoContrastImage");
1013 } else {
1014 GeneralSettings.Logo.ContrastImage = GetString("Item.Area.GeneralLogo");
1015 }
1016
1017
1018 //Navigation settings
1019 GeneralSettings.Navigation.Position = GetString("Item.Area.NavigationPosition");
1020 GeneralSettings.Navigation.StickyMenu = "off";
1021
1022 if (GetBoolean("Item.Area.NavigationSticky")) {
1023 if (GeneralSettings.Header.Show)
1024 {
1025 if (GeneralSettings.Header.Mode == "cover")
1026 {
1027 GeneralSettings.Navigation.StickyMenu = "44"; //"data-spy=\"affix\" data-offset-top=\"44\" data-offset-bottom=\"300\"";
1028 }
1029 else
1030 {
1031 int offset = ImageHeight()+28;
1032
1033 GeneralSettings.Navigation.StickyMenu = offset.ToString(); // "data-spy=\"affix\" data-offset-top=\"" + offset.ToString() + "\" data-offset-bottom=\"300\"";
1034 }
1035 }
1036 else
1037 {
1038 GeneralSettings.Navigation.StickyMenu = "5"; // "data-spy=\"affix\" data-offset-top=\"5\" data-offset-bottom=\"300\"";
1039 }
1040 }
1041
1042 if (GeneralSettings.Navigation.Position == "left") {
1043 GeneralSettings.Navigation.InvertedPosition = "right";
1044 }
1045 else
1046 {
1047 GeneralSettings.Navigation.InvertedPosition = "left";
1048 }
1049
1050 GeneralSettings.Navigation.SelectionMode = GetString("Item.Area.NavigationSelectionMode");
1051 GeneralSettings.Navigation.SelectionStyle = "";
1052 GeneralSettings.Navigation.SelectionWeight = GetInteger("Item.Area.SelectionWeight");
1053
1054 if (GeneralSettings.Navigation.SelectionMode == "arrow") {
1055 GeneralSettings.Navigation.SelectionStyle = "navbar-arrow";
1056 }
1057
1058 GeneralSettings.Navigation.Case = GetBoolean("Item.Area.NavigationUppercase");
1059
1060 GeneralSettings.Navigation.BreadcrumbMode = GetString("Item.Area.NavigationBreadcrumbLayout");
1061 GeneralSettings.Navigation.BreadcrumbAlign = GetString("Item.Area.NavigationBreadcrumbAlign");
1062
1063 GeneralSettings.Navigation.LeftmenuMode = GetString("Item.Area.NavigationLeftNavigationMode");
1064
1065 GeneralSettings.Navigation.ButtonDesign = GetString("Item.Area.NavigationButtonDesign");
1066
1067
1068 //Background settings
1069 GeneralSettings.Background.Image = GetString("Item.Area.BackgroundImage.Image.Image");
1070 GeneralSettings.Background.CustomImage = GetString("Item.Area.BackgroundImage.Image.CustomImage");
1071 GeneralSettings.Background.Color = GetString("Item.Area.BackgroundImage.Color.Color");
1072 GeneralSettings.Background.GradientColor = GetBoolean("Item.Area.BackroundGradientColor");
1073 GeneralSettings.Background.GradientPercentage = GetString("Item.Area.GradientPercentage");
1074
1075
1076 if (@GetString("Item.Area.BackgroundFixed") == "True")
1077 {
1078 GeneralSettings.Background.Position = "fixed";
1079 }
1080 else
1081 {
1082 GeneralSettings.Background.Position = "";
1083 }
1084
1085
1086 if (GeneralSettings.Background.Image == "none")
1087 {
1088 GeneralSettings.Background.Style = "";
1089 }
1090 else if (GeneralSettings.Background.Image == "custom")
1091 {
1092 if (!string.IsNullOrWhiteSpace(GeneralSettings.Background.CustomImage))
1093 {
1094 GeneralSettings.Background.Style = "background: url('/Admin/Public/GetImage.ashx?width=1920&Crop=1&Compression=75&image=" + GeneralSettings.Background.CustomImage + "') " + GeneralSettings.Background.Position + " !important; ";
1095 }
1096 }
1097 else
1098 {
1099 GeneralSettings.Background.Style = "background: url('/Admin/Public/GetImage.ashx?width=1920&Crop=1&Compression=75&image=/Files/Templates/Designs/Dwsimple/images/background/" + GeneralSettings.Background.Image + "') " + GeneralSettings.Background.Position + " !important; ";
1100 }
1101
1102
1103 //Headings settings
1104 GeneralSettings.Headings.Mode = GetString("Item.Area.AdvHeadingsMode");
1105
1106
1107 //Site settings
1108 GeneralSettings.Site.Shadow = GetBoolean("Item.Area.BackgroundSiteShadow");
1109 GeneralSettings.Site.LayoutMode = GetString("Item.Area.LayoutMode");
1110
1111 if (GeneralSettings.Site.LayoutMode == "boxed"){
1112 GeneralSettings.Site.LayoutMode = "body-" + GeneralSettings.Site.LayoutMode;
1113 GeneralSettings.Header.Classes += " header-boxed";
1114 }
1115
1116
1117 //Image settings
1118 GeneralSettings.Images.RoundCorners = GetBoolean("Item.Area.LayoutRoundCorners");
1119
1120 //Ecommerce settings
1121 GeneralSettings.Ecommerce.EcomListDesign = GetString("Item.Area.EcommerceProductCardDesign");
1122 GeneralSettings.Ecommerce.EcomCardDesign = GetString("Item.Area.EcommerceProductCardDesign");
1123 }
1124
1125 public string GetGeneralCSS()
1126 {
1127 string CssString = "";
1128 int SelectionWeight = GeneralSettings.Navigation.SelectionWeight;
1129
1130 //Site settings
1131 if (GetString("Item.Area.LogoFont.Color.Color") == "#FFF" || GetString("Item.Area.LogoFont.Color.Color") == "#FFFFFF")
1132 {
1133 int offset = ImageHeight()+28;
1134
1135 CssString += @"
1136 .dw-offsetmenu-logo {
1137 color: #333 !important;
1138 }";
1139 }
1140
1141 if (!string.IsNullOrWhiteSpace(GeneralSettings.Background.Color))
1142 {
1143 CssString += @"
1144 body {
1145 background-color: " + GeneralSettings.Background.Color + @";
1146 background-size: cover;
1147 overflow-y: scroll;
1148 }";
1149 }
1150
1151 if (GeneralSettings.Background.GradientColor)
1152 {
1153 CssString += @"
1154 body {
1155 background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%);
1156 background: -o-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%);
1157 background: -ms-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%);
1158 background: -moz-linear-gradient(bottom, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%);
1159 background: linear-gradient(to top, rgba(0, 0, 0, 0." + GeneralSettings.Background.GradientPercentage + @") 0%, rgba(0, 0, 0, 0) 100%);
1160 background-attachment: fixed;
1161 background-color: " + GeneralSettings.Background.Color + @" !important;
1162 }";
1163 }
1164
1165 if (GeneralSettings.Site.Shadow)
1166 {
1167 CssString += @"
1168 .shad {
1169 -webkit-box-shadow: 0px 0px 8px 0px rgba(50, 50, 50, 0.75);
1170 -moz-box-shadow: 0px 0px 8px 0px rgba(50, 50, 50, 0.75);
1171 box-shadow: 0px 0px 8px 0px rgba(50, 50, 50, 0.75);
1172 }";
1173 }
1174
1175 //Image settings
1176 if (GeneralSettings.Images.RoundCorners)
1177 {
1178 CssString += @"
1179 .content-image {
1180 border-radius: 6px;
1181 -webkit-border-radius: 6px;
1182 -moz-border-radius: 6px;
1183 }";
1184 }
1185
1186 //Navbar and header custom settings
1187 if (GeneralSettings.Header.Mode == "cover")
1188 {
1189 CssString += @"
1190 .navbar-wp {
1191 background-color: none !important;
1192 }";
1193
1194 if (!GeneralSettings.Header.Show || GeneralSettings.Header.Mode == "mobile")
1195 {
1196 CssString += @"
1197 .header-cover .navbar-wp {
1198 top: 0px !important;
1199 }";
1200 }
1201 }
1202 else
1203 {
1204 if (GeneralSettings.Header.Show)
1205 {
1206 CssString += @"
1207 .navbar-wp.affix .navbar-nav > li > a {
1208 padding: 16px 16px !important;
1209 }";
1210 }
1211 }
1212
1213 if (GeneralSettings.Header.Background == "colorline")
1214 {
1215 CssString += @"
1216 .navbar-wp, .navbar-wp.affix {
1217 border-bottom: 4px solid " + ColorSettings.Color.Primary + @" !important;
1218 }
1219
1220 .navbar-wp.affix, .navbar-wp.affix .navbar-nav > li > a {
1221 background-color: #FFF;
1222 color: #333;
1223 }
1224
1225 .navbar-wp.affix .navbar-nav > .active > a, .navbar-wp.affix .navbar-nav > li > a:hover, .navbar-wp.affix .navbar-nav > li > a:focus {
1226 color: " + ColorSettings.Color.NavbarFont + @";
1227 }
1228
1229 .affix .dw-logotext, .affix .dw-slogantext, .dw-header-sm-title, .dw-offsetmenu-logo {
1230 color: " + GeneralSettings.Logo.SecondaryColor + @" !important;
1231 }";
1232 } else if (GeneralSettings.Header.Background == "neutral")
1233 {
1234 CssString += @"
1235 .navbar-wp, .navbar-wp.affix, .navbar-wp .navbar-nav > li > a {
1236 background-color: #f1f1f1;
1237 }
1238
1239 .navbar-wp.affix, .navbar-wp.affix .navbar-nav > li > a {
1240 color: #333;
1241 }
1242
1243 .navbar-wp.affix .navbar-nav > .active > a, .navbar-wp.affix .navbar-nav > li > a:hover, .navbar-wp.affix .navbar-nav > li > a:focus {
1244 color: " + ColorSettings.Color.NavbarFont + @";
1245 }
1246
1247 .affix .dw-logotext, .affix .dw-slogantext, .dw-header-sm-title, .dw-offsetmenu-logo {
1248 color: " + GeneralSettings.Logo.SecondaryColor + @" !important;
1249 }";
1250 }
1251 else if (GeneralSettings.Header.Background == "transparent")
1252 {
1253 CssString += @"
1254 .navbar-wp, .navbar-wp.affix {
1255 background-color: #FFF;
1256 opacity: 0.9;
1257 filter: alpha(opacity=90); /* For IE8 and earlier */
1258 }
1259
1260 .navbar-wp.affix, .navbar-wp.affix .navbar-nav > li > a {
1261 color: #333;
1262 }
1263
1264 .navbar-wp.affix .navbar-nav > .active > a, .navbar-wp.affix .navbar-nav > li > a:hover, .navbar-wp.affix .navbar-nav > li > a:focus {
1265 color: " + ColorSettings.Color.NavbarFont + @";
1266 }
1267
1268 .affix .dw-logotext, .affix .dw-slogantext, .dw-header-sm-title, .dw-offsetmenu-logo {
1269 color: " + GeneralSettings.Logo.SecondaryColor + @" !important;
1270 }";
1271 }
1272 else
1273 {
1274 CssString += @"
1275 .navbar-wp, .navbar-wp.affix, .navbar-wp .navbar-nav > li > a {
1276 background-color: " + ColorSettings.Color.Secondary + @";
1277 }
1278
1279 .affix .dw-logotext, .affix .dw-slogantext, .dw-header-sm-title, .dw-offsetmenu-logo {
1280 color: " + GeneralSettings.Logo.SecondaryColor + @" !important;
1281 }";
1282 }
1283
1284 if (GeneralSettings.Navigation.SelectionMode == "background" || GeneralSettings.Navigation.SelectionMode == "arrow"){
1285 CssString += NavbarPosition(false, SelectionWeight);
1286
1287 CssString += @"
1288 .dw-navbar-button > a {
1289 background-color: transparent !important;
1290 }
1291
1292 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a {
1293 background-color: " + ColorSettings.Color.Primary + @" !important;
1294 }";
1295 }
1296
1297 if (GeneralSettings.Navigation.SelectionMode == "underline"){
1298 CssString += NavbarPosition(true);
1299
1300 CssString += ClearBackground();
1301
1302 CssString += @"
1303 .dw-navbar-button > a span:after {
1304 position: absolute;
1305 content: '';
1306 left: 0px;
1307 bottom: 0px;
1308 height: " + SelectionWeight + @"px;
1309 width: 100%;
1310 transform: scaleX(0);
1311 transition: all 0.3s ease-in-out 0s;
1312 }
1313 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a {
1314 color: " + ColorSettings.Color.Primary + @" !important;
1315 }
1316
1317 .dw-navbar-button > a:hover span:after, dw-navbar-button > a:active span:after, dw-navbar-button > a:focus span:after, .active > a span:after {
1318 color: " + ColorSettings.Color.Primary + @" !important;
1319 transform: scaleX(1);
1320 transition: all 0.3s ease-in-out 0s;
1321 }";
1322 }
1323
1324 if (GeneralSettings.Navigation.SelectionMode == "boxed"){
1325 CssString += NavbarPosition(true, SelectionWeight);
1326
1327 CssString += @"
1328 .dw-navbar-button > a {
1329 background-color: transparent !important;
1330 }
1331
1332 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a {
1333 background-color: " + ColorSettings.Color.Primary + @" !important;
1334 transition: all 0.3s ease-in-out 0s;
1335 }";
1336 }
1337
1338 if (GeneralSettings.Navigation.SelectionMode == "border"){
1339 CssString += NavbarPosition(true, 6, SelectionWeight);
1340
1341 CssString += ClearBackground();
1342
1343 CssString += @"
1344 .dw-navbar-button > a {
1345 border: " + SelectionWeight + @"px solid transparent !important; transition: None !important;
1346 }
1347
1348 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a {
1349 border-width: " + SelectionWeight + @"px !important;
1350 border-color: " + ColorSettings.Color.Primary + @" !important;
1351 transition: all 0.3s ease-in-out 0s;
1352 }";
1353 }
1354
1355 if (GeneralSettings.Navigation.SelectionMode == "font"){
1356 CssString += NavbarPosition();
1357
1358 CssString += ClearBackground();
1359
1360 SelectionWeight = (SelectionWeight*100);
1361
1362 CssString += @"
1363 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a {
1364 color: " + ColorSettings.Color.Primary + @" !important;
1365 font-weight: " + SelectionWeight + @" !important;
1366 transition: all 0.3s ease-in-out 0s;
1367 }";
1368 }
1369
1370 if (GeneralSettings.Navigation.Case){
1371 CssString += @"
1372 .dw-navbar-button > a {
1373 text-transform: uppercase !important;
1374 }";
1375 }
1376 else
1377 {
1378 CssString += @"
1379 .dw-navbar-button > a {
1380 text-transform: none !important;
1381 }";
1382 }
1383
1384
1385 //Breadcrumb custom settings
1386 if (GeneralSettings.Navigation.BreadcrumbMode == "light")
1387 {
1388 CssString += @"
1389 .pg-opt {
1390 border-bottom: 0px;
1391 background: none repeat scroll 0% 0% #FFF;
1392 }
1393
1394 .dw-breadcrumb-title {
1395 font-size: 14px !important;
1396 padding: 5px 0px 5px 0px !important;
1397 }
1398
1399 .dw-breadcrumb {
1400 padding: 5px 0px 5px 0px !important;
1401 }";
1402 }
1403
1404 if (GeneralSettings.Navigation.BreadcrumbMode == "normal")
1405 {
1406 CssString += @"
1407 .dw-breadcrumb-title {
1408 font-size: 14px !important;
1409 padding: 5px 0px 5px 0px !important;
1410 }
1411
1412 .dw-breadcrumb a, .pg-opt .breadcrumb {
1413 padding: 5px !important;
1414 }";
1415 }
1416
1417 if (GeneralSettings.Navigation.BreadcrumbMode == "large")
1418 {
1419 CssString += @"
1420 .dw-breadcrumb-title {
1421 font-size: 22px !important;
1422 padding: 15px 0px 15px 0px !important;
1423 }
1424
1425 .dw-breadcrumb {
1426 padding: 15px !important;
1427 }";
1428 }
1429
1430
1431 if (GeneralSettings.Navigation.BreadcrumbAlign == "right")
1432 {
1433 CssString += @"
1434 .dw-breadcrumb {
1435 float: right !important;
1436 }";
1437 }
1438 else
1439 {
1440 CssString += @"
1441 .dw-breadcrumb {
1442 float: left !important;
1443 }";
1444 }
1445
1446
1447 //Left menu custom settings
1448 if (GeneralSettings.Navigation.LeftmenuMode == "light" || GeneralSettings.Navigation.LeftmenuMode == "light-color")
1449 {
1450 CssString += @"
1451 ul.dw-categories > li > ul > li > a {
1452 padding: 5px 35px;
1453 }
1454
1455 ul.dw-categories, ul.dw-categories > li, ul.dw-categories > li > ul > li {
1456 border: 0px solid #EEE;
1457 }
1458
1459 ul.dw-categories > li > ul {
1460 background: none repeat scroll 0% 0% #FFF;
1461 }
1462
1463 ul.dw-categories li a:hover, ul.dw-categories li a:focus, ul.dw-categories li a:active {
1464 background-color: #FFF !important;
1465 color: " + ColorSettings.Color.Primary + @" !important;
1466 }
1467
1468 .list-active, .list-active > a {
1469 background-color: #FFF;
1470 color: " + ColorSettings.Color.Primary + @" !important;
1471 }
1472
1473 .list-open-active {
1474 background-color: #FFF;
1475 color: " + ColorSettings.Color.Primary + @" !important;
1476 }";
1477 }
1478
1479 if (GeneralSettings.Navigation.LeftmenuMode == "lines")
1480 {
1481 CssString += @"
1482 ul.dw-categories > li {
1483 border-bottom: 1px solid #EEE;
1484 }
1485
1486 ul.dw-categories {
1487 border: 0px solid #EEE;
1488 }
1489
1490 ul.dw-categories > li > ul {
1491 background: none repeat scroll 0% 0% #FFF;
1492 }
1493
1494 ul.dw-categories li a:hover, a:focus, a:active {
1495 background-color: #FFF !important;
1496 color: " + ColorSettings.Color.Primary + @" !important;
1497 }
1498
1499 .list-active, .list-active > a {
1500 background-color: #FFF;
1501 color: " + ColorSettings.Color.Primary + @" !important;
1502 }
1503
1504 .list-open-active {
1505 background-color: #FFF;
1506 color: " + ColorSettings.Color.Primary + @" !important;
1507 }";
1508 }
1509
1510 if (GeneralSettings.Navigation.LeftmenuMode == "boxed")
1511 {
1512 CssString += @"
1513 ul.dw-categories, ul.dw-categories > li, ul.dw-categories > li > ul > li {
1514 border: 0px solid #EEE;
1515 }
1516
1517 .list-active, .list-active > a {
1518 background-color: " + ColorSettings.Color.Primary + @" !important;
1519 color: #FFF;
1520 }";
1521 }
1522
1523 if (GeneralSettings.Navigation.LeftmenuMode == "border")
1524 {
1525 CssString += @"
1526 ul.dw-categories > li {
1527 border: 1px solid #EEE;
1528 }
1529
1530 ul.dw-categories > li > ul > li {
1531 border-top: 1px solid #EEE;
1532 }
1533
1534 .list-active, .list-active > a {
1535 background-color: " + ColorSettings.Color.Primary + @" !important;
1536 color: #FFF;
1537 }";
1538 }
1539
1540 if (GeneralSettings.Navigation.LeftmenuMode == "light-color")
1541 {
1542 CssString += @"
1543 ul.dw-categories li a:hover, ul.dw-categories a:focus, ul.dw-categories a:active {
1544 border-left: 6px solid " + ColorSettings.Color.Primary + @";
1545 }
1546
1547 ul.dw-categories .list-active > a {
1548 border-left: 6px solid " + ColorSettings.Color.Primary + @";
1549 }
1550
1551 .btn-dw:hover, .btn-dw:focus, .btn-dw:active {
1552
1553 }";
1554 }
1555
1556
1557 //Buttons custom designs
1558 if (GeneralSettings.Navigation.ButtonDesign == "light-rounded")
1559 {
1560 CssString += @"
1561 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart {
1562 border-width: 0px;
1563 }
1564
1565 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active {
1566 background-color: " + ColorSettings.Color.Secondary + @";
1567 color: #FFF;
1568 border-width: 0px;
1569 }
1570
1571 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active {
1572 background-color: " + ColorSettings.Color.Primary + @";
1573 color: #FFF;
1574 border-width: 0px;
1575 }
1576
1577 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active {
1578 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1579 color: #FFF;
1580 border-width: 0px;
1581 }";
1582 }
1583
1584 if (GeneralSettings.Navigation.ButtonDesign == "corners")
1585 {
1586 CssString += @"
1587 .btn-dw-primary, .btn-dw-secondary, btn-dw-cart , .btn-dw-cart {
1588 border-radius: 0px !important;
1589 border-width: 0px;
1590 }
1591
1592 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active {
1593 background-color: " + ColorSettings.Color.Secondary + @";
1594 color: #FFF;
1595 border-width: 0px;
1596 }
1597
1598 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active {
1599 background-color: " + ColorSettings.Color.Primary + @";
1600 color: #FFF;
1601 border-width: 0px;
1602 }
1603
1604 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active {
1605 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1606 color: #FFF;
1607 border-width: 0px;
1608 }";
1609 }
1610
1611 if (GeneralSettings.Navigation.ButtonDesign == "round")
1612 {
1613 CssString += @"
1614 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart {
1615 padding: 5px 15px;
1616 border-radius: 200px !important;
1617 border-width: 0px !important;
1618 }
1619
1620 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active {
1621 background-color: " + ColorSettings.Color.Secondary + @";
1622 color: #FFF;
1623 border-width: 0px !important;
1624 }
1625
1626 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active {
1627 background-color: " + ColorSettings.Color.Primary + @";
1628 color: #FFF;
1629 border-width: 0px !important;
1630 }
1631
1632 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active {
1633 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1634 color: #FFF;
1635 border-width: 0px !important;
1636 }";
1637 }
1638
1639 if (GeneralSettings.Navigation.ButtonDesign == "border")
1640 {
1641 CssString += @"
1642 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart {
1643 background-color: transparent;
1644 }
1645
1646 .btn-dw-primary {
1647 border-width: 4px;
1648 padding: 3px 10px;
1649 color: " + ColorSettings.Color.Primary + @";
1650 }
1651
1652 .btn-dw-secondary {
1653 border-width: 2px;
1654 color: " + ColorSettings.Color.Secondary + @";
1655 }
1656
1657 .btn-dw-cart {
1658 border-width: 4px;
1659 padding: 3px 10px;
1660 color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1661 }
1662
1663 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active {
1664 background-color: " + ColorSettings.Color.Primary + @";
1665 border-width: 4px;
1666 padding: 3px 10px;
1667 border-color: " + ColorSettings.Color.Primary + @";
1668 color: #FFF;
1669 }
1670
1671 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active {
1672 background-color: " + ColorSettings.Color.Primary + @";
1673 border-width: 2px;
1674 color: #FFF;
1675 border-color: #FFF;
1676 }
1677
1678 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active {
1679 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1680 border-width: 4px;
1681 padding: 3px 10px;
1682 border-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1683 color: #FFF;
1684 }";
1685 }
1686
1687 if (GeneralSettings.Navigation.ButtonDesign == "border-sharp" || GeneralSettings.Navigation.ButtonDesign == "border-round")
1688 {
1689 CssString += @"
1690 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart {
1691 background-color: transparent;
1692 }
1693
1694 .btn-dw-primary {
1695 border-width: 4px;
1696 padding: 3px 15px;
1697 color: " + ColorSettings.Color.Primary + @";
1698 }
1699
1700 .btn-dw-secondary {
1701 border-width: 2px;
1702 padding: 5px 15px;
1703 color: " + ColorSettings.Color.Secondary + @";
1704 }
1705
1706 .btn-dw-cart {
1707 border-width: 4px;
1708 padding: 3px 15px;
1709 color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1710 }
1711
1712 .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active {
1713 background-color: " + ColorSettings.Color.Primary + @";
1714 border-width: 4px;
1715 color: #FFF;
1716 padding: 3px 15px;
1717 border-color: " + ColorSettings.Color.Primary + @";
1718 }
1719
1720 .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active {
1721 background-color: " + ColorSettings.Color.Primary + @";
1722 border-width: 2px;
1723 color: #FFF;
1724 padding: 5px 15px;
1725 border-color: #FFF;
1726 }
1727
1728 .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active {
1729 background-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1730 border-width: 4px;
1731 color: #FFF;
1732 padding: 3px 15px;
1733 border-color: " + GetString("Item.Area.EcommerceCartButtonColor.Color") + @";
1734 }";
1735 }
1736
1737 if (GeneralSettings.Navigation.ButtonDesign == "border-sharp")
1738 {
1739 CssString += @"
1740 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart, .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active, .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active, .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active {
1741 border-radius: 0px !important;
1742 }";
1743 }
1744
1745 if (GeneralSettings.Navigation.ButtonDesign == "border-round")
1746 {
1747 CssString += @"
1748 .btn-dw-primary, .btn-dw-secondary, .btn-dw-cart, .btn-dw-primary:hover, .btn-dw-primary:focus, .btn-dw-primary:active, .btn-dw-secondary:hover, .btn-dw-secondary:focus, .btn-dw-secondary:active, .btn-dw-cart:hover, .btn-dw-cart:focus, .btn-dw-cart:active {
1749 border-radius: 200px !important;
1750 }";
1751 }
1752
1753
1754 //Headings custom settings
1755 if (GeneralSettings.Headings.Mode == "underline")
1756 {
1757 CssString += @"
1758 .dw-section-title {
1759 border-bottom: 2px solid;
1760 margin-bottom: 15px;
1761 }";
1762 }
1763
1764 if (GeneralSettings.Headings.Mode == "boxed" || GeneralSettings.Headings.Mode == "boxed-line")
1765 {
1766 CssString += @"
1767 .dw-section-title span {
1768 background-color: " + GetString("Item.Area.HeadingsH1.Color.Color") + @";
1769 display: inline-block;
1770 padding: 8px 16px;
1771 color: #FFF;
1772 }";
1773
1774 if (string.IsNullOrWhiteSpace(GetString("Item.Area.HeadingsH1.Color.Color")))
1775 {
1776 CssString += @"
1777 .dw-section-title {
1778 background-color: " + ColorSettings.Color.Primary + @";
1779 }";
1780 }
1781 }
1782
1783 if (GeneralSettings.Headings.Mode == "boxed-line")
1784 {
1785 CssString += @"
1786 .dw-section-title span {
1787 margin-bottom: 2px;
1788 }
1789
1790 .dw-section-title {
1791 border-bottom: 2px solid " + GetString("Item.Area.HeadingsH1.Color.Color") + @";
1792 margin-bottom: 10px;
1793 }";
1794
1795 if (string.IsNullOrWhiteSpace(GetString("Item.Area.HeadingsH1.Color.Color")))
1796 {
1797 CssString += @"
1798 .dw-section-title {
1799 border-bottom: 2px solid " + ColorSettings.Color.Primary + @";
1800 }";
1801 }
1802 }
1803
1804 if (GeneralSettings.Headings.Mode == "outline")
1805 {
1806 CssString += @"
1807 .dw-section-title {
1808 color: #FFF;
1809 text-shadow:
1810 -1px -1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @",
1811 1px -1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @",
1812 -1px 1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @",
1813 1px 1px 0 " + GetString("Item.Area.HeadingsH1.Color.Color") + @";
1814 }";
1815
1816 if (string.IsNullOrWhiteSpace(GetString("Item.Area.HeadingsH1.Color.Color")))
1817 {
1818 CssString += @"
1819 .dw-section-title {
1820 text-shadow:
1821 -1px -1px 0 #1A1A1A,
1822 1px -1px 0 #1A1A1A,
1823 -1px 1px 0 #1A1A1A,
1824 1px 1px 0 #1A1A1A;
1825 }";
1826 }
1827 }
1828
1829 if (GeneralSettings.Headings.Mode == "backline")
1830 {
1831 CssString += @"
1832 .dw-section-title {
1833 text-align: center;
1834 border-bottom: 2px solid;
1835 padding: 0;
1836 margin: 50px 0 30px;
1837 line-height: 0em !important;
1838 }
1839
1840 .dw-section-title > span {
1841 background-color: #FFF;
1842 padding: 0 16px;
1843 }
1844
1845 .dw-section-title-small {
1846 margin: 8px 0 20px;
1847 }";
1848 }
1849
1850 if (GeneralSettings.Ecommerce.EcomCardDesign == "one")
1851 {
1852
1853 }
1854
1855 if (GeneralSettings.Ecommerce.EcomCardDesign == "two")
1856 {
1857 CssString += @"
1858 .product {
1859 border: 1px solid #E5E5E5;
1860 }";
1861 }
1862
1863 return CssString;
1864 }
1865
1866 private string ClearBackground() {
1867 string CssString = "";
1868
1869 CssString += @"
1870 .dw-navbar-button > a {
1871 background-color: rgba(0, 0, 0, 0.0) !important;
1872 }
1873
1874 .dw-navbar-button > a:hover, dw-navbar-button > a:active, dw-navbar-button > a:focus, .active > a {
1875 background-color: rgba(0, 0, 0, 0.0) !important;
1876 }";
1877
1878 return CssString;
1879 }
1880
1881 private string NavbarPosition(bool margin=false, int specialpadding=6, int extramargin=0) {
1882 int LogoHeight = 0;
1883 string CssString = "";
1884 int Centerpos = 0;
1885
1886 if (GeneralSettings.Header.Mode != "solid"){
1887 if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Image))
1888 {
1889 LogoHeight = ImageHeight();
1890 }
1891 else
1892 {
1893 LogoHeight = GetInteger("Item.Area.LogoFont.Size");
1894 }
1895 }
1896 else
1897 {
1898 if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Image))
1899 {
1900 LogoHeight = 18;
1901 }
1902 else
1903 {
1904 LogoHeight = GetInteger("Item.Area.LogoFont.Size")-10;
1905 }
1906 }
1907
1908 if (margin == false)
1909 {
1910 Centerpos = (LogoHeight/2) + 6;
1911
1912 CssString += @"
1913 .dw-navbar-button > a, .navbar-wp.affix .navbar-nav > li > a {
1914 padding: " + Centerpos + @"px " + (specialpadding+4) + @"px " + Centerpos + @"px " + (specialpadding+4) + @"px !important;
1915 margin: " + extramargin + @"px " + extramargin + @"px !important;
1916 }";
1917 }
1918 else
1919 {
1920 Centerpos = ((LogoHeight/2)+6)-(specialpadding+extramargin);
1921
1922 CssString += @"
1923 .dw-navbar-button > a, .navbar-wp.affix .navbar-nav > li > a {
1924 padding: " + specialpadding + @"px " + (specialpadding+4) + @"px " + specialpadding + @"px " + (specialpadding+4) + @"px !important;
1925 margin: " + Centerpos + @"px 4px 0px 0px !important;
1926 }";
1927 }
1928
1929 return CssString;
1930 }
1931
1932 private int ImageHeight ()
1933 {
1934 int LogoHeight = 0;
1935
1936 if (!string.IsNullOrWhiteSpace(GetString("Item.Area.GeneralLogo")))
1937 {
1938 string imageUrl = "";
1939
1940 WebRequest request = WebRequest.Create(imageUrl);
1941 WebResponse response = request.GetResponse();
1942 Image image = Image.FromStream(response.GetResponseStream());
1943
1944 LogoHeight = image.Height;
1945 }
1946 else
1947 {
1948 LogoHeight = 38;
1949 }
1950
1951 return LogoHeight;
1952 }
1953 }
1954
1955
1956
1957 @{
1958 InitGeneralSettings();
1959 }
1960
1961 @if (writeCss)
1962 {
1963 css += FontStylesCSS() + "/*Colors*/" + Environment.NewLine + GetColorSettings() + Environment.NewLine + "/*General*/" + Environment.NewLine + GetGeneralCSS();
1964 Dynamicweb.Core.Helpers.TextFileHelper.WriteTextFile(css, HttpContext.Current.Server.MapPath("/Files/Templates/Designs/Dwsimple/css/DWGlobalStylesSite" + GetString("DwAreaID") + "_auto.css"), false);
1965 Dynamicweb.Core.Helpers.TextFileHelper.WriteTextFile(RemoveWhiteSpaceFromStylesheets(Dynamicweb.Core.Helpers.TextFileHelper.ReadTextFile(HttpContext.Current.Server.MapPath("/Files/Templates/Designs/Dwsimple/css/DWGlobalStyles.css"))), HttpContext.Current.Server.MapPath("/Files/Templates/Designs/Dwsimple/css/DWGlobalStyles.min.css"), false);
1966 Dynamicweb.Core.Helpers.TextFileHelper.WriteTextFile(RemoveWhiteSpaceFromStylesheets(Dynamicweb.Core.Helpers.TextFileHelper.ReadTextFile(HttpContext.Current.Server.MapPath("/Files/Templates/Designs/Dwsimple/css/custom.css"))), HttpContext.Current.Server.MapPath("/Files/Templates/Designs/Dwsimple/css/custom.min.css"), false);
1967 Dynamicweb.Core.Helpers.TextFileHelper.WriteTextFile(RemoveWhiteSpaceFromStylesheets(css), cssPath, false);
1968 }
1969
1970 @functions{
1971 public static string RemoveWhiteSpaceFromStylesheets(string body)
1972 {
1973 body = Regex.Replace(body, @"[a-zA-Z]+#", "#");
1974 body = Regex.Replace(body, @"[\n\r]+\s*", string.Empty);
1975 body = Regex.Replace(body, @"\s+", " ");
1976 body = Regex.Replace(body, @"\s?([:,;{}])\s?", "$1");
1977 body = body.Replace(";}", "}");
1978 body = Regex.Replace(body, @"([\s:]0)(px|pt|%|em)", "$1");
1979 // Remove comments from CSS
1980 body = Regex.Replace(body, @"/\*[\d\D]*?\*/", string.Empty);
1981 return body;
1982 }
1983 }
1984
1985 <!-- Template styles -->
1986 <link id="dwStylesheet" type="text/css" href="/Files/Templates/Designs/Dwsimple/css/DWGlobalStyles.min.css" rel="stylesheet" media="screen">
1987 <link rel="stylesheet" type="text/css" href="/Files/Templates/Designs/Dwsimple/css/invoice.css">
1988
1989 @{ string cssAutoPath = "/Files/Templates/Designs/Dwsimple/css/DWGlobalStylesSite" + GetString("DwAreaID") + "_auto.min.css?t=@areaUpdated.Ticks"; }
1990
1991 <link type="text/css" href="@cssAutoPath" rel="stylesheet">
1992
1993 <link id="dwAdaptiveStylesheet" type="text/css" href="/Files/Templates/Designs/Dwsimple/css/timeline.css" rel="stylesheet" media="screen">
1994
1995 <!-- Analytics code -->
1996 @GetValue("Item.Area.OtherAnalyticsCode")
1997
1998 @GetValue("Stylesheets")
1999 @GetValue("Javascripts")
2000 </head>
2001 <body style="@GeneralSettings.Background.Style" id="sitecontent">
2002 <!-- MODALS -->
2003 <div class="modal fade" id="login" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
2004 <div class="modal-dialog modal-sm">
2005 <div class="modal-content">
2006 <div class="modal-header">
2007 <h4 class="modal-title" id="myModalLabel">@Translate("Login", "Login")</h4>
2008 </div>
2009 <form role="form" id="loginform" method="post">
2010 <div class="modal-body">
2011 @if (!string.IsNullOrWhiteSpace(GetString("DW_extranet_error_uk")))
2012 {
2013 <script>alert("@GetValue("DW_extranet_error_uk")");</script>
2014 }
2015
2016 <input type="hidden" name="ID" value="@Pageview.ID">
2017 <input type="hidden" name="DWExtranetUsernameRemember" value="True">
2018 <input type="hidden" name="DWExtranetPasswordRemember" value="True">
2019 <div class="form-group">
2020 @{ attrValue = Translate("Enter username", "Enter username");
2021 var username2 = @GetValue("DWExtranetUsername");
2022 }
2023
2024 <label for="username">@Translate("Email address", "Email address")</label>
2025 <input type="text" class="form-control" name="username" id="username" placeholder="@attrValue" value="@username2">
2026 </div>
2027 <div class="form-group">
2028 @{ attrValue = Translate("Enter password", "Enter password");
2029 }
2030
2031 <label for="password">@Translate("Password", "Password")</label>
2032 <input type="password" class="form-control" name="password" id="password" placeholder="@attrValue">
2033 <p> </p>
2034 <a class="pull-left" href="/Default.aspx?ID=@firstpageid&LoginAction=Recovery">@Translate("Forgot your password?", "Forgot your password?")</a>
2035
2036 </div>
2037 </div>
2038 <div class="modal-footer">
2039 <div class="row">
2040 <div class="col-md-12">
2041 <div class="checkbox pull-left">
2042 <label>
2043 <input type="checkbox" name="Autologin" checked="checked" value="True"> @Translate("Remember me", "Remember me")
2044 </label>
2045 </div>
2046 <button type="submit" class="btn btn-xs btn-base pull-right">@Translate("Sign in", "Sign in")</button>
2047 </div>
2048 </div>
2049 </div>
2050 @if (GetLoop("DWExtranetExternalLoginProviders").Count != 0)
2051 {
2052 <div class="modal-footer">
2053 <div class="row">
2054 <div class="col-md-12">
2055 <div class="pull-left">@Translate("Or sign in using", "Or sign in using"):</div>
2056 <p> </p>
2057 </div>
2058 </div>
2059
2060 <div class="row">
2061 <div class="col-md-12">
2062 @foreach (LoopItem LoginProvider in GetLoop("DWExtranetExternalLoginProviders"))
2063 {
2064 var ProviderName = LoginProvider.GetString("ProviderName").ToLower();
2065 var ProviderID = LoginProvider.GetValue("ProviderID");
2066 <a href='/Admin/Public/Social/ExternalLogin.aspx?action=login&providerID=@ProviderID' class="btn btn-xs btn-base pull-left"><i class="fa fa-@ProviderName"></i>@LoginProvider.GetString("ProviderName")</a><text> </text>
2067 }
2068 </div>
2069 </div>
2070 </div>
2071 }
2072 </form>
2073 </div>
2074 </div>
2075 </div>
2076 <!-- MOBILE MENU -->
2077 @{
2078 var offsetmenuplace = "left";
2079
2080 if (GeneralSettings.Header.Mode == "mobile"){
2081 offsetmenuplace = GeneralSettings.Navigation.Position;
2082 }
2083 }
2084
2085 <div id="myNavmenu" class="navmenu navmenu-default navmenu-fixed-@offsetmenuplace offcanvas">
2086 <div class="col-sm-12 col-xs-12 offcanvas-col">
2087 <div class="row offcanvas-row"> </div>
2088 <div class="row offcanvas-row">
2089 <div class="col-sm-12 col-xs-12 offcanvas-col">
2090 <a href="/Default.aspx?ID=@firstpageid" class="brand">
2091 @if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Image))
2092 {
2093 <div class="img-responsive dw-offsetmenu-logo pull-left">
2094 <img src="@GeneralSettings.Logo.Image" alt="Logo">
2095 </div>
2096 }
2097
2098 @if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Text))
2099 {
2100 <div class="dw-logotext dw-offsetmenu-logo pull-left">@GeneralSettings.Logo.Text</div>
2101 }
2102 </a>
2103 </div>
2104 </div>
2105 <div class="row offcanvas-row"> </div>
2106 </div>
2107
2108 <div class="col-sm-12 col-xs-12 offcanvas-col">
2109 @if (GetBoolean("Item.Area.EcomEnabled")) {
2110 <div class="row offcanvas-row">
2111 <div class="col-sm-12 col-xs-12 offcanvas-col">
2112 <form method="get" action="Default.aspx">
2113 <input type="hidden" name="ID" value="8399">
2114 <div class="input-group">
2115 <input type="text" class="form-control" name="eComQuery" tabindex="1" placeholder="Søg">
2116 <span class="input-group-btn">
2117 <button class="btn btn-primary" type="submit"><i class="fa fa-search"></i></button>
2118 </span>
2119 </div>
2120 </form>
2121 </div>
2122 </div>
2123 <div class="row offcanvas-row"> </div>
2124 <div class="row offcanvas-row">
2125 <div class="col-sm-12 col-xs-12 offcanvas-col">
2126 @if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) {
2127 <div class="pull-left">
2128 <a href="/Login" class="btn btn-sm btn-default"><i class="fa fa-sign-in"></i> @Translate("Sign in", "Sign in")</a>
2129 </div>
2130 }
2131
2132 @if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName"))) {
2133 <div class="pull-left">
2134 <a href="Default.aspx?ID=8473" class="btn btn-sm btn-default">
2135 <i class="fa fa-user"></i> <strong>@GetGlobalValue("Global:Extranet.Name")</strong>
2136 </a>
2137 </div>
2138 <div class="pull-left">
2139 <a href="/Admin/Public/ExtranetLogoff.aspx?ID=@Pageview.ID"><button class="btn btn-sm btn-default"><i class="fa fa-sign-out"></i> @Translate("Sign out", "Sign out")</button></a>
2140 </div>
2141 }
2142 </div>
2143 </div>
2144 <div class="row offcanvas-row"> </div>
2145 }
2146 </div>
2147
2148
2149 <div class="row offcanvas-row">
2150 <div class="col-sm-12 col-xs-12 offcanvas-col">
2151 @GetValue("DwNavigation(drawernavigation)")
2152 </div>
2153 </div>
2154 </div>
2155
2156 <!-- HEADER AND CONTENT-->
2157
2158 <div class="body-wrap shad @GeneralSettings.Site.LayoutMode">
2159
2160 <!-- HEADER -->
2161 <div id="divHeaderWrapper">
2162 <header class="@GeneralSettings.Header.Classes">
2163
2164
2165 <!-- TOP HEADER -->
2166 @if (GeneralSettings.Header.Show){
2167 <div class="top-header img-responsive">
2168 <a href="/home">
2169 <div style="height: 160px !important; background: url('/Admin/Public/Getimage.ashx?width=1500&Crop=5&image=@GeneralSettings.Logo.Logo_Background') no-repeat; background-size: cover !important; background-color: @ColorSettings.Color.Secondary">
2170 <div class="row">
2171 <div class="col-md-6 logobox">
2172 @if (GeneralSettings.Header.Mode == "solid"){
2173 <a href="/Default.aspx?ID=@firstpageid" class="brand">
2174 @if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Image))
2175 {
2176 <img class="img-responsive dw-logoimage pull-left" src="@GeneralSettings.Logo.Image" alt="Logo">
2177 }
2178
2179 @if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Text))
2180 {
2181 <div class="dw-logotext pull-left">@GeneralSettings.Logo.Text</div>
2182 }
2183 </a>
2184 }
2185 </div>
2186 <div class="col-md-6 logobox">
2187 <nav class="top-header-menu hidden-sm hidden-xs">
2188 <ul class="top-menu">
2189
2190 <!-- Ecommerce user menu -->
2191 @if (GetBoolean("Item.Area.EcomEnabled")) {
2192 if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName")))
2193 {
2194 <text>
2195 <li><a href="#" data-toggle="modal" data-target="#login">@Translate("Login", "Login")</a></li>
2196 @GetValue("DwNavigation(toolsnavigationNotloggedin)")
2197 </text>
2198 }
2199
2200 if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName")))
2201 {
2202 <text>
2203 <li>
2204 <a href="Default.aspx?ID=8473">
2205 <nobr>
2206 <i class="fa fa-user"></i> <strong>@GetGlobalValue("Global:Extranet.Name")</strong>
2207 </nobr>
2208 </a>
2209 </li>
2210 <li>
2211 <a href='/Admin/Public/ExtranetLogoff.aspx?ID=@currentpageid'>@Translate("Logout", "Logout")</a>
2212 </li>
2213 </text>
2214 }
2215 }
2216
2217
2218 <!-- Ecommerce Cart -->
2219 @if (GetBoolean("Item.Area.EcomEnabled")) {
2220 <li class="dropdown animate-hover" data-animate="animated fadeInUp">
2221 <a href="Default.aspx?ID=@cartid" title="" id="minipagecart" class="dw-minicart"><i class="fa fa-shopping-cart"></i> @GetValue("Ecom:Order.OrderLines.TotalProductQuantity") <span>@GetValue("Ecom:Order.OrderLines.Total.PriceWithVAT")</span></a>
2222
2223 <ul class="sub-menu">
2224 <li id="minicart">
2225 @MiniCart()
2226 </li>
2227 </ul>
2228 </li>
2229 }
2230 </ul>
2231 </nav>
2232 </div>
2233 </div>
2234 </div>
2235 </a>
2236 </div>
2237 }
2238
2239 <!-- MAIN NAV -->
2240 @{
2241 var sticky = GeneralSettings.Navigation.StickyMenu;
2242 var stickyTrigger = "affix";
2243 var navbarpos = GeneralSettings.Navigation.Position;
2244 var selectionstyle = GeneralSettings.Navigation.SelectionStyle;
2245
2246 if (sticky == "off") {
2247 stickyTrigger = "";
2248 }
2249 }
2250
2251
2252 <div id="navOne" class="navbar navbar-wp @selectionstyle navbar-fixed affix-top" role="navigation" data-spy="@stickyTrigger" data-offset-top="@sticky" data-offset-bottom="300">
2253 <div class="container">
2254 @if (GeneralSettings.Header.Mode != "solid" || !GeneralSettings.Header.Show)
2255 {
2256 <div class="navbar-header pull-@GeneralSettings.Navigation.InvertedPosition">
2257 <div class="hidden-sm hidden-xs">
2258 <a href="/Default.aspx?ID=@firstpageid" class="brand">
2259 @if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Image))
2260 {
2261 <img class="img-responsive dw-logoimage pull-left" src="@GeneralSettings.Logo.Image" alt="Logo">
2262 }
2263
2264 @if (!string.IsNullOrWhiteSpace(GeneralSettings.Logo.Text))
2265 {
2266 <div class="dw-logotext pull-left">@GeneralSettings.Logo.Text</div>
2267 }
2268 </a>
2269 </div>
2270 </div>
2271 }
2272
2273 @if (GeneralSettings.Header.Mode != "mobile")
2274 {
2275 <!-- Small screen header -->
2276 <div class="hidden-md hidden-lg row">
2277 <div class="dw-header-sm">
2278 <div class="pull-left">
2279 <button type="button" class="btn btn-sm btn-base" data-toggle="offcanvas" data-target="#myNavmenu" data-canvas="body">
2280 <i class="fa fa-bars"></i>
2281 </button>
2282
2283 </div>
2284
2285 <div class="pull-left">
2286 <h2 class="dw-header-sm-title">@GetGlobalValue("Global:Page.Top.Name")</h2>
2287 </div>
2288 @if (GetBoolean("Item.Area.EcomEnabled"))
2289 {
2290
2291 <div class="pull-right">
2292 <ul class="top-menu">
2293 <li>
2294 <a href="Default.aspx?ID=@cartid" title="" class="btn btn-sm btn-base dw-minicart" id="minipagecart-button"><i class="fa fa-shopping-cart"></i><strong> @GetValue("Ecom:Order.OrderLines.TotalProductQuantity") <span class="amount">@GetValue("Ecom:Order.OrderLines.Total.PriceWithVAT")</span></strong></a>
2295
2296 <ul class="sub-menu hidden-xs">
2297 <li id="smallscreen-minicart">
2298 @MiniCart()
2299 </li>
2300 </ul>
2301 </li>
2302 </ul>
2303 </div>
2304
2305
2306 if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName")))
2307 {
2308 <div class="hidden-xs pull-right">
2309 <a href='/Admin/Public/ExtranetLogoff.aspx?ID=@Pageview.Page.ID'><button class="btn btn-sm btn-base"><i class="fa fa-sign-out"></i></button></a>
2310
2311 </div>
2312 <div class="hidden-xs pull-right">
2313 <a href="Default.aspx?ID=8473" class="btn btn-sm btn-base">
2314 <i class="fa fa-user"></i> <strong>@GetGlobalValue("Global:Extranet.Name")</strong>
2315 </a>
2316
2317 </div>
2318 }
2319
2320 if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName")))
2321 {
2322 <div class="hidden-xs pull-right">
2323 <a href="/Login" class="btn btn-sm btn-base"><i class="fa fa-sign-in"></i></a>
2324
2325 </div>
2326 }
2327 }
2328
2329
2330 </div>
2331 </div>
2332
2333 <!-- Big screen header -->
2334 <div class="navbar-navigation">
2335 <div class="hidden-sm hidden-xs">
2336 <nav class="col-md-10 col-sm-10 col-xs-10 navbar-collapse collapse navbar-@navbarpos">
2337 @GetValue("DwNavigation(topnavigation)")
2338
2339 <!-- Extra navigation when no header is shown -->
2340 @if (GetBoolean("Item.Area.EcomEnabled"))
2341 {
2342 if (!GeneralSettings.Header.Show)
2343 {
2344 <ul class="nav navbar-nav">
2345 <li> </li>
2346 @if (!Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName")))
2347 {
2348 <li class="dw-navbar-button"><a href="#" data-toggle="modal" data-target="#login" data-hover="dropdown"><i class="fa fa-sign-in"></i><span></span></a></li>
2349 <li class="dw-navbar-button"><a href="/not-logged-in/create-user-profile" data-hover="dropdown"><i class="fa fa-user"></i><span></span></a></li>
2350 }
2351
2352 @if (Dynamicweb.Core.Converter.ToBoolean(GetGlobalValue("Global:Extranet.UserName")))
2353 {
2354 <li class="dw-navbar-button">
2355 <a href="Default.aspx?ID=8473" data-hover="dropdown">
2356 <nobr>
2357 <strong><i class="fa fa-user"></i></strong>
2358 </nobr>
2359 <span></span>
2360 </a>
2361 </li>
2362 <li class="dw-navbar-button">
2363 <a href="/Admin/Public/ExtranetLogoff.aspx?ID=@Pageview.Page.ID" data-hover="dropdown"><i class="fa fa-sign-out"></i><span></span></a>
2364 </li>
2365 }
2366
2367 <li class="dw-navbar-button">
2368 <a href="Default.aspx?ID=@cartid" title="" id="nav_minipagecart" data-hover="dropdown"><i class="fa fa-shopping-cart"></i> @GetValue("Ecom:Order.OrderLines.TotalProductQuantity") <span class="amount">@GetValue("Ecom:Order.OrderLines.Total.PriceWithVAT")</span><span></span></a>
2369 </li>
2370 </ul>
2371 }
2372
2373 if (GeneralSettings.Header.Mode != "solid")
2374 {
2375 <!--<ul class="nav navbar-nav">
2376 <li class="dropdown dropdown-aux animate-click dw-navbar-button" data-animate-in="animated bounceInUp" data-animate-out="animated fadeOutDown" style="z-index:500;">
2377 <a href="#" class="dropdown-toggle" data-toggle="dropdown" data-hover="dropdown"><i class="fa fa-search"></i><span></span></a>
2378
2379 <ul class="dropdown-menu dropdown-menu-user animate-wr">
2380 <li id="dropdownForm">
2381 <div class="dropdown-form">
2382 <form class="form-light p-15" role="form" method="get" action="Default.aspx">
2383 <input type="hidden" name="ID" value="8399" />
2384 <div class="input-group">
2385 <input type="text" class="form-control" name="eComQuery" placeholder="@searchplaceholder">
2386 <span class="input-group-btn">
2387 <button class="btn btn-base" type="submit"><i class="fa fa-search"></i></button>
2388 </span>
2389 </div>
2390 </form>
2391 </div>
2392 </li>
2393 </ul>
2394 </li>
2395 </ul>-->
2396 }
2397 }
2398 </nav>
2399 </div>
2400
2401 @if (GetBoolean("Item.Area.EcomEnabled"))
2402 {
2403 if (GeneralSettings.Header.Mode == "solid" && GeneralSettings.Header.Show)
2404 {
2405 <div class="hidden-sm hidden-xs">
2406 <div class="col-md-2 col-sm-2 col-xs-2 pull-@GeneralSettings.Navigation.InvertedPosition">
2407 <form method="get" action="Default.aspx">
2408 <input type="hidden" name="ID" value="8399">
2409 <div class="input-group pull-@GeneralSettings.Navigation.InvertedPosition dw-top-search">
2410 <input type="text" class="form-control" name="eComQuery" tabindex="1" placeholder="@searchplaceholder">
2411 <span class="input-group-btn">
2412 <button class="btn btn-primary" type="submit"><i class="fa fa-search"></i></button>
2413 </span>
2414 </div>
2415 </form>
2416 </div>
2417 </div>
2418 }
2419 }
2420 </div>
2421 }
2422 else
2423 {
2424 <!-- Using only mobile navigation -->
2425 <div class="pull-@GeneralSettings.Navigation.Position">
2426 <ul class="nav navbar-nav">
2427 <li class="dw-navbar-button" data-toggle="offcanvas" data-target="#myNavmenu" data-canvas="body">
2428 <a><i class="fa fa-bars fa-2x"></i><span></span></a>
2429 </li>
2430 </ul>
2431 </div>
2432 }
2433 </div>
2434 </div>
2435
2436
2437
2438 @if (!string.IsNullOrWhiteSpace(GetString("Item.Area.HeaderLayoutImage"))){
2439 if (currentpageid != firstpageid){
2440 var coverimage = GetString("Item.Area.HeaderLayoutImage");
2441
2442 <div class="container-fluid dw-header-image">
2443 <div class="row">
2444 <section class="carousel carousel-1 slice fluid" style="height: 160px !important; background: url('/Admin/Public/Getimage.ashx?width=1920&compression=75&Crop=5&image=@coverimage') no-repeat; background-size: cover !important; background-color: @ColorSettings.Color.Secondary"></section>
2445 </div>
2446 </div>
2447 }
2448 } else if (GeneralSettings.Header.Mode != "solid"){
2449 if (currentpageid != firstpageid){
2450 <div class="container-fluid dw-header-image">
2451 <div class="row">
2452 <section class="carousel carousel-1 slice fluid" style="height: 160px !important; background-color: transparent; background-size: cover !important;"></section>
2453 </div>
2454 </div>
2455 }
2456 }
2457 </header>
2458 </div>
2459
2460 <!-- MAIN CONTENT -->
2461
2462 @GetValue("Title(Full width page)")
2463 @GetValue("Description(Use this page for full width pages with no left navigation.)")
2464
2465 @{
2466 string siteurl = GetGlobalValue("Global:Request.Url").ToString();
2467 }
2468
2469 @if(GetBoolean("Item.Page.LayoutShowBreadcrumb")){
2470 <div class="pg-opt pin white">
2471 <div class="container">
2472 <div class="row">
2473 <!--$$if (!GetBoolean("Item.Page.LayoutHideLeftMenu")){
2474 <div class="col-lg-3 col-md-3 hidden-sm hidden-xs">
2475 @if (GeneralSettings.Navigation.BreadcrumbMode != "light")
2476 {
2477 <div class="dw-breadcrumb-title">@GetGlobalValue("Global:Page.Top.Name")</div>
2478 }
2479 </div>
2480 }-->
2481 <div class="col-lg-9 col-md-9 col-sm-12 col-xs-12">
2482 @GetValue("DwNavigation(breadcrumb)")
2483 </div>
2484 </div>
2485 </div>
2486 </div>
2487 }
2488
2489 <section class="slice white animate-hover-slide">
2490 <div class="container">
2491 <div class="row">
2492 @if(!GetBoolean("Item.Page.LayoutHideLeftMenu")) {
2493 <div class="col-md-3 hidden-sm hidden-xs">
2494 <div class="widget">
2495 <!--<h3 class="dw-section-title dw-section-title-small"><span>@GetGlobalValue("Global:Page.Top.Name")</span></h3>-->
2496
2497 @GetValue("DwNavigation(leftnavigation)")
2498 </div>
2499 <p> </p>
2500 </div>
2501 }
2502
2503 @{
2504 var attributeValue = "col-md-9 col-sm-12 col-xs-12";
2505
2506 if(GetBoolean("Item.Page.LayoutHideLeftMenu")) {
2507 attributeValue = "col-md-12 col-sm-12 col-xm-12";
2508 }
2509 }
2510
2511 <div class="@attributeValue" id="content">
2512 <div class="row" style="margin-bottom: 10px x" id="maincontent">@GetValue("DwContent(maincontent)")</div>
2513 </div>
2514
2515 @if (GetBoolean("Item.Page.FacebookLikeButton")){
2516 <div class="container">
2517 <div class="col-md-12 col-sm-12 col-xs-12">
2518 <div class="row">
2519 <!--<iframe src="//www.facebook.com/plugins/like.php?href=@siteurl&width=200&layout=button_count&action=recommend&show_faces=true&share=true&height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:21px;" allowTransparency="true"></iframe> -->
2520 </div>
2521 </div>
2522 </div>
2523 }
2524 </div>
2525 </div>
2526 </section>
2527
2528 <!-- FOOTER -->
2529 <div class="body-wrap @GeneralSettings.Site.LayoutMode">
2530 <footer class="footer">
2531 <div class="container">
2532 <div class="row">
2533 <div class="col-md-3 col-sm-6 col-xs-12">
2534 <div class="col">
2535 <h4>@Translate("Contact us", "Contact us")</h4>
2536
2537 @{
2538 string footeremail = GetString("Item.Area.FooterEmail");
2539 }
2540
2541 <ul>
2542 <li>@GetValue("Item.Area.FooterCompanyName")</li>
2543 <li>@GetValue("Item.Area.FooterAddress")</li>
2544 <li>@Translate("Phone", "Phone"): @GetValue("Item.Area.FooterPhone") </li>
2545 <li>@Translate("Email", "Email"): <a href="mailto:@footeremail" title="Email Us">@GetValue("Item.Area.FooterEmail")</a></li>
2546 </ul>
2547 <div> </div>
2548 </div>
2549 </div>
2550 <!-- Skal løses mere permanent på den længere bane. Hardcode Sucks! -->
2551 <div class="col-md-3 col-sm-6 col-xs-12">
2552 <div class="col">
2553
2554
2555 <h4>Provst</h4>
2556
2557 @{
2558 string footeremailx = GetString("Item.Area.FooterEmail");
2559 }
2560
2561 <ul>
2562 <li>Marianne Lekven Agerholm</li>
2563 <li><p>Klostervænget 2B<br>
2564 4100 Ringsted
2565 </p>
2566 <p> </p>
2567 </li>
2568
2569 <li>@Translate("Phone", "Phone"): 2489 0534 </li>
2570 <li>@Translate("Email", "Email"): <a href="mailto:MLT@km.dk" title="Email Us">MLT@km.dk</a></li>
2571 </ul>
2572 <div> </div>
2573 </div>
2574 </div>
2575 <div class="col-md-3 col-sm-6 col-xs-12">
2576 <div class="col">
2577 <h4> </h4>
2578 <ul>
2579 <li></li>
2580 </ul>
2581 </div>
2582 </div>
2583 <div class="col-md-3 col-sm-6 col-xs-12">
2584 <div class="col pull-right">
2585 <h4> </h4>
2586 <ul>
2587 <li><a href="https://was.digst.dk/ringstedsoroe-dk" target="_blank"><strong>Webtilgængelighedserklæring</strong></a></li>
2588 </ul>
2589 </div>
2590 </div>
2591
2592 @if (GetBoolean("Item.Area.FooterNewsletterSignUp")) {
2593 <div class="col-md-3 col-sm-6 col-xs-12">
2594 <div class="col">
2595 <h4>@Translate("Mailing list", "Mailing list")</h4>
2596 <p>@Translate("Sign up if you would like to receive occasional treats from us.", "Sign up if you would like to receive occasional treats from us.")</p>
2597 <form name="UserManagementEditForm" action="/Default.aspx?ID=9204" method="post" enctype="multipart/form-data">
2598 <input name="UserManagementForm" value="1" type="hidden">
2599 <input id="UserManagementForm.DeleteImage" name="UserManagementForm.DeleteImage" type="hidden">
2600 <div style="display: none;">
2601 <input name="UserManagement_Form_EmailAllowed" id="UserManagement_Form_EmailAllowed" value="True" checked="checked" type="checkbox">
2602 <input name="UserManagement_Form_EmailAllowed_ApplyValue" id="UserManagement_Form_EmailAllowed_ApplyValue" value="AllowEmail" type="hidden">
2603 </div>
2604 <div class="input-group">
2605 @{ attrValue = Translate("Your email address", "Your email address");
2606 }
2607
2608 <input name="UserManagement_Form_Email" id="UserManagement_Form_Email" type="text" class="form-control" placeholder="@attrValue">
2609 <span class="input-group-btn">
2610 <input class="btn btn-base" type="submit" id="submitter" value="Go">
2611 </span>
2612
2613 </div>
2614 <div> </div>
2615 </form>
2616 </div>
2617 </div>
2618 }
2619
2620 @if (GetBoolean("Item.Area.SocialLinksInFooter"))
2621 {
2622 string sicon = "";
2623 string slink = "";
2624
2625 <div class="col-md-3 col-sm-6 col-xs-12">
2626 <div class="col">
2627 <h4>@Translate("Social links", "Social links")</h4>
2628 <p>
2629 @foreach (LoopItem socialitem in GetLoop("Item.Area.SocialIconInFooter"))
2630 {
2631 sicon = socialitem.GetString("Item.Area.SocialIconInFooter.Icon");
2632 slink = socialitem.GetString("Item.Area.SocialIconInFooter.Link");
2633
2634 <a href="@slink"><i class="fa @sicon fa-2x"></i> </a>
2635 }
2636 </p>
2637 </div>
2638 </div>
2639 }
2640
2641 @if (GetBoolean("Item.Area.FooterShowSitemap"))
2642 {
2643 <div class="col-md-6 col-sm-12 col-xs-12">
2644 <div class="col">
2645 @GetValue("DwNavigation(footersitemap)")
2646 </div>
2647 <div> </div>
2648 </div>
2649 }
2650 </div>
2651
2652 <hr>
2653
2654 <div class="row">
2655 <div class="col-lg-9 col-md-9 col-sm-9 col-xs-9 copyright">
2656 <div class="col">
2657 <p>@GetGlobalValue("Global:Server.Date.Year") © @GetValue("Item.Area.FooterCompanyName"). @Translate("All rights reserved.", "All rights reserved.")</p>
2658 </div>
2659 </div>
2660 <div class="col-lg-3 col-md-3 col-sm-3 col-xs-3">
2661 <div class="col pull-right">
2662 @{
2663 var webmasterlink = GetString("Item.Area.WebmasterLinkCode");
2664 var username = GetValue("Item.Area.FooterEmail");
2665 var pagename = GetGlobalValue("Global:Page.Name");
2666 }
2667 <!--
2668 Oprindelig kode
2669 <p><a href="javascript:void(0);" onclick="window.open('@webmasterlink?un=@username&pn=@pagename&url=' + encodeURI(location),'_blank','width=1050,height=750,resizable=yes,scrollbars=yes');">Webmaster</a></p> -->
2670
2671 <p><a href="@webmasterlink">Webmaster</a></p>
2672 </div>
2673 </div>
2674 </div>
2675 </div>
2676 </footer>
2677 </div>
2678
2679
2680 <!-- Essentials -->
2681 <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
2682 <script src="//cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js"></script>
2683 <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
2684 <script src="//forcdn.googlecode.com/files/jquery.mousewheel.min.js"></script>
2685 <script src="//xoomla.googlecode.com/files/jquery.easing.1.3.js"></script>
2686
2687 <!-- Assets -->
2688 <script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-hover-dropdown/2.0.10/bootstrap-hover-dropdown.min.js"></script>
2689 <script src="//cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"></script>
2690 <script src="//cdnjs.cloudflare.com/ajax/libs/fancybox/2.1.5/jquery.fancybox.min.js"></script>
2691 <script src="//cdnjs.cloudflare.com/ajax/libs/spin.js/2.0.1/spin.min.js"></script>
2692
2693 <!-- Sripts for individual pages, depending on what plug-ins are used -->
2694 <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/jasny-bootstrap/3.1.3/js/jasny-bootstrap.min.js"></script>
2695
2696 <!-- Replacing the Home text -->
2697 <script>
2698 if (document.getElementById("homemenubtn")) {
2699 document.getElementById("homemenubtn").innerHTML = "<img src='/Files/Images/SiteImages/kirke_ikon-WHITE.png' /><span></span>";
2700 }
2701 </script>
2702
2703 <!-- Initialize Fancybox -->
2704 <script type="text/javascript">
2705 $(document).ready(function () {
2706 $(".fancybox").fancybox();
2707 });
2708 </script>
2709 </div></body>
2710 </html>