Error executing template "Designs/Jks2022/_parsed/DepartmentPage.parsed.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_acacb7c59c6e49c48f19a1de7c59bf8f.Execute() in D:\Web\jks.dk\Files\Templates\Designs\Jks2022\_parsed\DepartmentPage.parsed.cshtml:line 268
   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 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel> 2 3 @{ 4 //for cookieinformation and flags 5 string languageCode = Pageview.Area.Culture.Substring(0, 2).ToUpper(); 6 if (languageCode == "NN") 7 { 8 languageCode = "NB"; 9 } 10 int modelId = Model.Area.ID; 11 string googleTagManagerId = Model.Area.Item.GetString("GoogleTagManager"); 12 } 13 14 <!DOCTYPE html> 15 <html> 16 <head> 17 18 <!-- Google tag (gtag.js) --> 19 @if (modelId == 18) 20 { 21 <script async src="https://www.googletagmanager.com/gtag/js?id=G-ELDPWGB1ZZ"></script> 22 <script> 23 window.dataLayer = window.dataLayer || []; 24 function gtag() { dataLayer.push(arguments); } 25 gtag('js', new Date()); 26 gtag('config', 'G-ELDPWGB1ZZ'); 27 </script> 28 } 29 else if (modelId == 10) 30 { 31 <script async src="https://www.googletagmanager.com/gtag/js?id=G-D299QWVPJP"></script> 32 <script> 33 window.dataLayer = window.dataLayer || []; 34 function gtag() { dataLayer.push(arguments); } 35 gtag('js', new Date()); 36 gtag('config', 'G-D299QWVPJP'); 37 </script> 38 } 39 else if (modelId == 12) 40 { 41 <script async src="https://www.googletagmanager.com/gtag/js?id=G-PHS2ZDS6BW"></script> 42 <script> 43 window.dataLayer = window.dataLayer || []; 44 function gtag() { dataLayer.push(arguments); } 45 gtag('js', new Date()); 46 gtag('config', 'G-PHS2ZDS6BW'); 47 </script> 48 } 49 <!-- End Google tag (gtag.js) --> 50 51 <meta charset="utf-8" /> 52 <meta name="viewport" content="width=device-width, initial-scale=1.0" /> 53 <title>@Model.Title</title> 54 <meta name="description" content="@Model.Description" /> 55 56 <link href="@Model.Area.Item.GetFile("FavIcon")" type="image/x-icon" rel="icon" /> 57 <link href="@Model.Area.Item.GetFile("FavIcon")" type="image/x-icon" rel="shortcut icon" /> 58 59 @if (System.Web.HttpContext.Current.Request.Url.Host.Contains("staging") || System.Web.HttpContext.Current.Request.Url.Host.Contains("vestjyskmarketing") || Pageview.Area.Noindex || Pageview.Page.Noindex) 60 { 61 <meta name="robots" content="noindex,nofollow" /> 62 } 63 64 <script id="CookieConsent" src="https://policy.app.cookieinformation.com/uc.js" data-culture="@languageCode" type="text/javascript"></script> 65 66 @if (!String.IsNullOrEmpty(googleTagManagerId)) 67 { 68 <!-- Google Tag Manager --> 69 <script> 70 (function (w, d, s, l, i) { 71 w[l] = w[l] || []; w[l].push({ 72 'gtm.start': 73 new Date().getTime(), event: 'gtm.js' 74 }); var f = d.getElementsByTagName(s)[0], 75 j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 76 'https://www.googletagmanager.com/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); 77 })(window, document, 'script', 'dataLayer', '@googleTagManagerId'); 78 </script> 79 <!-- End Google Tag Manager --> 80 } 81 82 @RenderSnippet("Metas") 83 84 @if (modelId == 17) 85 { 86 var careerStyles = VestjyskMarketing.Helpers.Utilities.CacheBuster("/Files/Templates/Designs/dist/CareerJks2022.css"); 87 <link rel="stylesheet" type="text/css" href="@careerStyles"> 88 } 89 else if (modelId == 16) 90 { 91 var profJksStyles = VestjyskMarketing.Helpers.Utilities.CacheBuster("/Files/Templates/Designs/dist/ProfJks2022.css"); 92 <link rel="stylesheet" type="text/css" href="@profJksStyles" /> 93 } 94 else 95 { 96 var jksStyles = VestjyskMarketing.Helpers.Utilities.CacheBuster("/Files/Templates/Designs/dist/Jks2022.css"); 97 <link rel="stylesheet" type="text/css" href="@jksStyles" /> 98 } 99 100 @RenderSnippet("Styles") 101 @RenderSnippet("Scripts") 102 </head> 103 104 105 <body> 106 107 @if (!String.IsNullOrEmpty(googleTagManagerId)) 108 { 109 <!-- Google Tag Manager (noscript) --> 110 <noscript> 111 <iframe src="" data-consent-src="https://www.googletagmanager.com/ns.html?id=@googleTagManagerId" data-category-consent="cookie_cat_marketing" height="0" width="0" style="display:none;visibility:hidden"></iframe> 112 </noscript> 113 <!-- End Google Tag Manager (noscript) --> 114 } 115 116 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel> 117 118 @using Dynamicweb.Content 119 @using Dynamicweb.Content.Files.Metadata 120 @using Dynamicweb.Extensibility; 121 122 @{ 123 var areaID = Dynamicweb.Frontend.PageView.Current().Area.ID; 124 var pageID = Dynamicweb.Frontend.PageView.Current().Page.ID; 125 var pageType = Dynamicweb.Frontend.PageView.Current().Page.ItemType; 126 var pageService = ServiceLocator.Current.GetPageService(); 127 var rootPages = pageService.GetRootPagesForArea(areaID).Where(p => p.Active && p.Item != null).ToArray(); 128 int searchpageIdGlobal = GetPageIdByNavigationTag("SearchPageGlobal"); 129 } 130 @{ 131 var navigationSettingsDesktop = new Dynamicweb.Frontend.Navigation.NavigationSettings() 132 { 133 StartLevel = 1, 134 StopLevel = 2, 135 ExpandMode = Dynamicweb.Frontend.Navigation.ExpandMode.All 136 }; 137 var navigationTemplateDesktop = "Navigation/NavigationDesktop.cshtml"; 138 139 var navigationSettingsMobile = new Dynamicweb.Frontend.Navigation.NavigationSettings() 140 { 141 StartLevel = 1, 142 StopLevel = 999, 143 ExpandMode = Dynamicweb.Frontend.Navigation.ExpandMode.All 144 }; 145 146 var navigationTemplateMobile = "Navigation/NavigationMobile.cshtml"; 147 string classHeader = Dynamicweb.Core.Converter.ToString(Dynamicweb.Context.Current.Items["headerCLass"]); 148 //hack because the special page does not understand the context properly? 149 if (Model.ItemType == "JksDividerPage") 150 { 151 classHeader += "bg-primary nav-light"; 152 } 153 else if(Model.ItemType == "DepartmentPage") 154 { 155 classHeader += "bg-eggwhite"; 156 } 157 158 159 string logoDesktop = Model.Area.Item.GetString("LogoWide"); 160 string logoMobile = Model.Area.Item.GetString("LogoTall"); 161 162 if (pageType == "Job" && !classHeader.Contains("nav-light")) 163 { 164 classHeader = classHeader + " nav-light "; 165 } 166 167 if (!classHeader.Contains("nav-light")) 168 { 169 logoDesktop = logoDesktop.Replace("white", "rgb"); 170 logoMobile = logoMobile.Replace("white", "rgb"); 171 } 172 } 173 <div class="header-wrapper"> 174 <header class="container-fluid header @classHeader"> 175 <a href="/" id="js-header-logo" class="header__logo-wrapper" title="@Translate("Go to frontpage")"> 176 <picture> 177 <source media="(min-width:1200px)" srcset="@logoDesktop"> 178 <img class="header__logo-wrapper__logo" src="@logoMobile" alt="@Translate("Logo") @Model.Area.Name"> 179 </picture> 180 </a> 181 182 <div class="d-flex justify-content-around align-items-center"> 183 <div class="header__desktop__menu__item--search d-lg-none me-4"> 184 <a href="/Default.aspx?ID=@searchpageIdGlobal&Search=" class="header__burger__menu__title--search--wrapper "> 185 <div class="header__burger__menu__title--searchicon"> 186 </div> 187 </a> 188 189 </div> 190 <div class="header__burger header__burger--active d-lg-none"> 191 <input class="header__burger__checkbox" type="checkbox" id="js-burger-checkbox" /> 192 <span class="header__burger__line"></span> 193 <span class="header__burger__line"></span> 194 <span class="header__burger__line"></span> 195 196 @Navigation.RenderNavigation(navigationTemplateMobile, navigationSettingsMobile) 197 </div> 198 199 </div> 200 201 202 <div class="flex-column header__desktop__menu-wrapper"> 203 @if (Model.Area.Item.GetItems("Shortcuts").Count > 0) 204 { 205 <ul class="header__desktop__shortcuts justify-content-end" id="js-menu-shortcuts"> 206 @foreach (var list in Model.Area.Item.GetItems("Shortcuts")) 207 { 208 <li> 209 <a href="@list.GetLink("Link")">@list.GetString("Tekst")</a> 210 </li> 211 } 212 </ul> 213 } 214 215 @Navigation.RenderNavigation(navigationTemplateDesktop, navigationSettingsDesktop) 216 </div> 217 218 219 </header> 220 221 @if (true) 222 { 223 <div class="d-none d-md-block header-mega-menu container-fluid"> 224 225 @foreach (var rootPage in rootPages) 226 { 227 228 if (rootPage.Item.ContainsKey("ShowExtendedMenu") && rootPage.Item["ShowExtendedMenu"] != null && bool.Parse(rootPage.Item["ShowExtendedMenu"].ToString())) 229 { 230 var details = rootPage.Item["ExtendedMenuDetails"]; 231 var title = rootPage.MenuText; 232 var subPages = pageService.GetPagesByParentID(rootPage.ID).Where(p => p.Active); 233 234 <div class="mega-menu row" role="menu" menuId="@rootPage.ID"> 235 <div class="col-7"> 236 <div class="col-10 col-lg-8 col-xl-6"> 237 <a href="@rootPage.GetPageHrefValue()" class="section-title"><h3 class="title">@title<span class="arrow"></span></h3></a> 238 <p class="details">@details</p> 239 </div> 240 </div> 241 <div class="col-5 sub-pages"> 242 <div class="row"> 243 @foreach (var subpage in subPages) 244 { 245 <div class="col-6 col-xl-6 link-item"><a href="@subpage.GetPageHrefValue()">@subpage.MenuText</a></div> 246 } 247 </div> 248 </div> 249 </div> 250 } 251 } 252 </div> 253 } 254 255 </div> 256 257 258 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel> 259 @using Jks.ViewModel.Job 260 @using ClientiCoreDotNet.Extensions.String; 261 262 @Title("Main department template") 263 264 265 @{ 266 var departmentData = Model.Item.GetItem("DepartmentData"); 267 bool businessPage = Model.Item.GetBoolean("BusinessPage"); 268 string departmentId = departmentData.GetString("Department_ID"); 269 string areaId = Model.Area.ID.ToString(); 270 IEnumerable<IJobViewModel> jobsDepartment = Jks.ViewModels.Jobs.GetJobsByDepartmentId(departmentId, areaId); 271 272 var imageTopObj = departmentData.GetFile("Image"); 273 string imageTop = "/Admin/Public/GetImage.ashx?Image=" + departmentData.GetFile("Image") + "&Crop=7&Format=webP&width=1000&Height=600&Compression=75"; 274 if (imageTopObj != null && imageTopObj.HasFocalPoint()) 275 { 276 imageTop += "&x=" + imageTopObj.FocalX + "&y=" + imageTopObj.FocalY; 277 } 278 279 var imageBusinessObj = departmentData.GetFile("Image_Business_FiftyFifty"); 280 string imageBusiness = "/Admin/Public/GetImage.ashx?Image=" + departmentData.GetFile("Image_Business_FiftyFifty") + "&Crop=7&Format=webP&width=1000&Height=600&Compression=75"; 281 if (imageBusinessObj != null && imageBusinessObj.HasFocalPoint()) 282 { 283 imageBusiness += "&x=" + imageBusinessObj.FocalX + "&y=" + imageBusinessObj.FocalY; 284 } 285 286 int formIdUsed = businessPage ? Model.Area.Item.GetLink("DepartmentFormBusinessParagraph").ParagraphId : Model.Area.Item.GetLink("DepartmentFormPrivateParagraph").ParagraphId; 287 288 string urlHost = "https://" + System.Web.HttpContext.Current.Request.Url.Host; 289 290 string allJobsLink = string.IsNullOrEmpty(Model.Area.Item.GetString("Link_To_All_Jobs")) ? "/for-vikarer/ledige-stillinger" : Model.Area.Item.GetString("Link_To_All_Jobs"); 291 } 292 293 <div class="department"> 294 <div class="container-fluid container-fluid-extra bg-eggwhite padding-standard department__entry-picture"> 295 <section class="entry-picture entry-picture-large padding-standard-bund"> 296 <div class="row flex-row-reverse"> 297 <div class="entry-picture__image-wrapper col-12 col-lg-6 col-xl-7 offset-lg-1 d-flex flex-column justify-content-center"> 298 <div class="entry-picture__image" style="background-image: url('@imageTop')"></div> 299 </div> 300 <div class="col-12 col-lg-5 col-xl-4 entry-picture__text-wrapper d-flex flex-column justify-content-center"> 301 <h1 class="big-header-font"> 302 @departmentData.GetString("WebOverskrift") 303 </h1> 304 <div class="entry-picture__text "> 305 @departmentData.GetString("Description") 306 <p> 307 @Translate("Ring til os på") <a href="tel:@departmentData.GetString("Phone")" title=""> @departmentData.GetString("Phone")</a> @Translate("eller skriv til os på") <a href="mailto:@departmentData.GetString("Email")" title=""> @departmentData.GetString("Email")</a> 308 </p> 309 </div> 310 311 <div> 312 @if (businessPage) 313 { 314 <a href="#anchor-contactform" class="btn btn-secondary btn-sm mt-3"> 315 @Translate("Ring mig op") 316 </a> 317 } 318 else 319 { 320 string substituteUrl = "/Default.aspx?ID=" + GetPageIdByNavigationTag("SubstitutePage"); 321 <a href="@substituteUrl" class="btn btn-secondary btn-sm mt-3"> 322 @Translate("Bliv vikar") 323 </a> 324 325 326 } 327 328 @if (!businessPage) 329 { 330 <a href="#anchor-contactform" class="btn btn-secondary btn-sm mt-3"> 331 @Translate("Kontakt JKS") 332 </a> 333 } 334 </div> 335 </div> 336 </div> 337 </section> 338 </div> 339 340 @if (!businessPage) 341 { 342 <div class="container-fluid container-fluid-extra--xxxl margin-half-bottom padding-standard-top"> 343 <section class="employees"> 344 <h2 class="employees__subheader">@Translate("Vores medarbejdere")</h2> 345 @RenderItemList(new 346 { 347 ItemType = "Consultant", 348 ListSourceType = "Area", 349 ListSourceArea = areaId, 350 ItemFieldsList = "*", 351 ListTemplate = "ItemPublisher/List/ConsultantList.cshtml", 352 ListPageSize = "1000", 353 Filter = "Department_IDs contains \"" + departmentId + "\"" 354 }) 355 </section> 356 </div> 357 <div class="container-fluid container-fluid-extra"> 358 <hr style="margin: 0;"> 359 </div> 360 } 361 362 @if (jobsDepartment.Any() && !businessPage) 363 { 364 <div class="container-fluid container-fluid-extra bg-white"> 365 <section class="padding-standard"> 366 <div class="company__slider-wrapper"> 367 <div class="row"> 368 <div class="col-12 col-md-4 col-lg-4"> 369 <div class="company__slider-wrapper__text-wrapper"> 370 <h2 class="company__slider-wrapper__text-wrapper__header">@(Translate("Ledige stillinger i området"))</h2> 371 <div class="company__slider-wrapper__text-wrapper__text"> 372 @(Translate("JKS har altid mere end 50 ledige vikarjob – se om der er et job for dig!")) 373 </div> 374 </div> 375 376 <div class="company__slider-wrapper__controls"> 377 <div class="arrow-small js-company__slider__controls-prev company__slider-wrapper__controls-prev user-select-none"></div> 378 <div class="arrow-small js-company__slider__controls-next company__slider-wrapper__controls-next user-select-none"></div> 379 </div> 380 </div> 381 382 <div class="col-12 col-md-8 col-xl-9 company__slider-wrapper__wrapper"> 383 <div class="js-company-slider company__slider"> 384 <div class="swiper-wrapper"> 385 386 @foreach (var job in jobsDepartment) 387 { 388 389 string jobDescription = job.DescriptionShort; 390 string jobDescriptionLong = job.Description; 391 string jobSubtitle = job.Subtitle; 392 string finalDescription = (string.IsNullOrEmpty(jobDescription) ? jobDescriptionLong : jobDescription).StripHtml(); 393 string description = (string.IsNullOrEmpty(jobSubtitle) ? finalDescription : jobSubtitle).StripHtml().TruncateHtml(80, "..."); 394 string jobUrl = "/Default.aspx?ID=" + job.Id; 395 396 <a href="@jobUrl" class="company__slider__item js-company-slider-item col-12 col-sm-7 col-md-8 col-lg-7 col-xl-6 col-xxl-5" title="@Translate("Go to") @job.Title"> 397 398 <p class="company__slider__item__date">@job.ActiveFrom</p> 399 400 <h3 class="company__slider__item__text"> 401 @job.Title 402 </h3> 403 404 <p class="company__slider__item__subtext"> 405 @description 406 </p> 407 408 <span class="company__slider__item__link" href="#">@Translate("Se jobopslag")</span> 409 </a> 410 } 411 </div> 412 </div> 413 </div> 414 </div> 415 </div> 416 <div class="text-center pt-rem-5"> 417 <a href="@allJobsLink" class="btn btn-primary btn-transparant "> 418 @Translate("Alle ledige stillinger") 419 </a> 420 </div> 421 </section> 422 </div> 423 } 424 425 @if (businessPage) 426 { 427 <div class="container-fluid container-fluid-extra padding-standard"> 428 <section class="big-font-wrapper big-font-wrapper-smaller"> 429 <div class="row"> 430 <div class="d-flex"> 431 <h2 class="mb-5"> 432 @departmentData.GetString("ContentBusinessHeadline") 433 </h2> 434 </div> 435 </div> 436 437 <div class="row columns__content"> 438 <div class="col-12 col-lg-5"> 439 @departmentData.GetString("ContentBusinessColumn1") 440 </div> 441 442 <div class="col-12 col-lg-6 offset-lg-1 pt-rem-1 pt-rem-lg-0"> 443 @departmentData.GetString("ContentBusinessColumn2") 444 </div> 445 </div> 446 </section> 447 </div> 448 449 <div class="container-fluid container-fluid-extra "> 450 <section class="entry-picture entry-picture-large padding-standard-bottom"> 451 <div class="row "> 452 <div class="entry-picture__image-wrapper col-12 col-lg-6 col-xl-7 d-flex flex-column justify-content-center"> 453 <div class="entry-picture__image" style="background-image: url('@imageBusiness')"></div> 454 </div> 455 <div class="col-12 col-lg-5 col-xl-4 entry-picture__text-wrapper offset-lg-1 d-flex flex-column justify-content-center"> 456 <h2 class="entry-picture__header"> 457 @departmentData.GetString("ContentBusinessHeadlineFiftyFifty") 458 </h2> 459 <div class="entry-picture__text "> 460 @departmentData.GetString("ContentBusinessTextFiftyFifty") 461 </div> 462 </div> 463 </div> 464 </section> 465 </div> 466 } 467 468 @if (businessPage) 469 { 470 <div class="container-fluid container-fluid-extra"> 471 <hr style="margin: 0;"> 472 </div> 473 <div class="container-fluid container-fluid-extra--xxxl margin-half-bottom padding-standard-top"> 474 <section class="employees"> 475 <h2 class="employees__subheader">@Translate("Vores medarbejdere")</h2> 476 @RenderItemList(new 477 { 478 ItemType = "Consultant", 479 ListSourceType = "Area", 480 ListSourceArea = areaId, 481 ItemFieldsList = "*", 482 ListTemplate = "ItemPublisher/List/ConsultantList.cshtml", 483 ListPageSize = "1000", 484 Filter = "Department_IDs contains \"" + departmentId + "\"" 485 }) 486 </section> 487 </div> 488 } 489 490 <section class="map-info"> 491 <div class="text-center"> 492 <h2 class="big-header-font d-block d-lg-none mt-5 mb-4">Her finder <br /> du os</h2> 493 </div> 494 <div class="row g-0"> 495 <div id="js-department-info-@departmentId" class="col-12 col-lg-5 justify-content-center d-flex order-lg-first order-last bg-eggwhite"> 496 @{ 497 string[] latlng = departmentData.GetString("LatLong").Split(','); 498 } 499 <div class="department-map__details"> 500 <div class="department-map__details__top"> 501 <h2 class="big-header-font d-none d-lg-block mb-5 pb-3">@Translate("Her finder du os")</h2> 502 </div> 503 <div class="department-map__details__bottom row g-0"> 504 <h2 id="lat-long" data-lat="@latlng[0]" data-lng="@latlng[1]" data-urlmapgoogle="@departmentData.GetString("Address"),@departmentData.GetString("City")">JKS @departmentData.GetString("Web_Name")</h2> 505 <div class="col"> 506 <p id="js-department-adress"> 507 @departmentData.GetString("Address")<br /> 508 @departmentData.GetString("Postal_Code") @departmentData.GetString("City") 509 </p> 510 @Pageview.Area.Item["OpeningHours"] 511 </div> 512 <div class="col"> 513 <p> 514 <a href="tel:@departmentData.GetString("Phone")">T: @departmentData.GetString("Phone")</a><br /> 515 <a href="mailto:@departmentData.GetString("Email")">@departmentData.GetString("Email")</a> 516 </p> 517 @Pageview.Area.Item["PhoneHours"] 518 </div> 519 </div> 520 </div> 521 </div> 522 <div class="col-12 col-lg-7"> 523 <div id="js-department-map-single" class="department-map__map" data-language="@Pageview.Area.CultureInfo.TwoLetterISOLanguageName"> 524 </div> 525 </div> 526 </div> 527 </section> 528 529 @if (formIdUsed > 0 && !String.IsNullOrEmpty(departmentData.GetString("Email"))) 530 { 531 532 <div class="container-padding-mobile-lg" id="anchor-contactform"> 533 <section class="contact padding-standard"> 534 <div class="d-flex flex-column-reverse flex-lg-row"> 535 <div class="col-12 col-lg-6 contact__form contact__form__padding d-flex flex-column justify-content-center pt-rem-2 pt-rem-lg-2 pb-rem-lg-2 p-rem-xl-7"> 536 <h2 class="contact__form__header"> 537 @if (!businessPage) 538 { 539 @Translate("Ring mig op?") 540 } 541 else 542 { 543 @Translate("Kontakt os") 544 } 545 </h2> 546 <div class="contact__form__text"> 547 <p>@Translate("Fortæl os, hvad vi kan gøre for dig – og vi hjælper så hurtigt som muligt.")</p> 548 </div> 549 550 @RenderParagraphContent(formIdUsed) 551 </div> 552 <div class="col-12 col-lg-6 contact__image @if(!businessPage){<text>small</text>} background-center" style="background-image: url('/Admin/Public/GetImage.ashx?Image=/Files/Images/Jks22/department-image-contactform.jpg&amp;Crop=7&amp;Format=webP&amp;width=1110&amp;Height=1000&amp;Quality=75')"></div> 553 </div> 554 </section> 555 </div> 556 557 } 558 </div> 559 560 @SnippetStart("Metas") 561 @if (businessPage) 562 { 563 if (!String.IsNullOrEmpty(departmentData.GetString("SOME_Title_Business"))) 564 { 565 <meta property="og:title" content="@departmentData.GetString("SOME_Title_Business")" /> 566 } 567 568 if (!String.IsNullOrEmpty(departmentData.GetString("SOME_Image_Busines"))) 569 { 570 <meta property="og:image" content="@(urlHost)@departmentData.GetString("SOME_Image_Busines")" /> 571 } 572 } 573 else 574 { 575 if (!String.IsNullOrEmpty(departmentData.GetString("SOME_Title_Temp"))) 576 { 577 <meta property="og:title" content="@departmentData.GetString("SOME_Title_Temp")" /> 578 } 579 if (!String.IsNullOrEmpty(departmentData.GetString("SOME_Image_Temp"))) 580 { 581 <meta property="og:image" content="@(urlHost)@departmentData.GetString("SOME_Image_Temp")" /> 582 } 583 } 584 @SnippetEnd("Metas") 585 586 @SnippetStart("JavaScriptBottom") 587 <script type="text/javascript"> 588 var mailRecipientContactForm = document.getElementById("MailRecipient"); 589 if (mailRecipientContactForm) { 590 mailRecipientContactForm.value = "@departmentData.GetString("Email")"; 591 } 592 </script> 593 @SnippetEnd("JavaScriptBottom") 594 595 @inherits Dynamicweb.Rendering.ViewModelTemplate<Dynamicweb.Frontend.PageViewModel> 596 597 @{ 598 int formIdParagraph = Dynamicweb.Core.Converter.ToInt32(Model.Area.Item.GetString("FooterForm")?.Substring(Model.Area.Item.GetString("FooterForm").LastIndexOf('#') + 1)); 599 } 600 601 <footer class="footer"> 602 <div class="container-fluid container-fluid-extra "> 603 <div class="row position-relative"> 604 <div class="col-12 col-md-7"> 605 <div class="footer__form-wrapper"> 606 <h3 class="footer__form-wrapper__header"> 607 <span class="footer__form-wrapper__header__text">@Model.Area.Item.GetString("FooterFormHeadline")</span> 608 609 <div class="footer__form-wrapper__header__svg-wrapper"> 610 <svg class="js-footer-form-btn footer__form-wrapper__header__svg-wrapper__svg arrow-small" version="1.1" id="Layer_1" 611 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" 612 viewBox="0 0 71 71" style="enable-background:new 0 0 71 71;" xml:space="preserve"> 613 <g> 614 <path d="M37.4,26.7l8.8,8.8l-8.8,8.8l-1.9-2l3.3-3.3c0.7-0.7,1.6-1.2,2.9-1.9l-0.4-1c-1.1,0.4-2.1,0.8-3.7,0.8L24.8,37v-2.9 615 L37.6,34c1.6,0,2.8,0.5,3.7,0.8l0.4-1c-1.4-0.7-2.2-1.1-3-1.9l-3.3-3.2L37.4,26.7z" /> 616 </g> 617 </svg> 618 </div> 619 </h3> 620 621 <p class="footer__form-wrapper__text"> 622 @Model.Area.Item.GetString("FooterFormSubHeadline") 623 </p> 624 625 @if (formIdParagraph > 0 && String.IsNullOrEmpty(System.Web.HttpContext.Current.Request.QueryString["pid"])) 626 { 627 @RenderParagraphContent(formIdParagraph) 628 } 629 </div> 630 </div> 631 <div class="col-12"> 632 <div class="d-flex footer__bottom flex-wrap flex-xxl-nowrap"> 633 <div class="flex-fill d-none d-lg-block footer__bottom__logo-wrapper pe-lg-3"> 634 <img class="footer__bottom__logo-wrapper__logo" src="@Model.Area.Item.GetFile("LogoFooter")" alt="@Translate("Logo")" /> 635 </div> 636 637 <ul class="flex-fill footer__bottom__list pe-2 pe-sm-3"> 638 <li class="footer__bottom__list__header">@Model.Area.Item.GetString("FooterHeadlineLinkList1")</li> 639 @foreach (var list in Model.Area.Item.GetItems("FooterLinkList1")) 640 { 641 <li class="footer__bottom__list__item"> 642 <a class="footer__bottom__list__item__link" href="@list.GetLink("Link")" >@list.GetString("Tekst")</a> 643 </li> 644 } 645 </ul> 646 <ul class="flex-fill footer__bottom__list px-2 px-sm-3"> 647 <li class="footer__bottom__list__header">@Model.Area.Item.GetString("FooterHeadlineLinkList2")</li> 648 @foreach (var list in Model.Area.Item.GetItems("FooterLinkList2")) 649 { 650 <li class="footer__bottom__list__item"> 651 <a class="footer__bottom__list__item__link" href="@list.GetLink("Link")" >@list.GetString("Tekst")</a> 652 </li> 653 } 654 </ul> 655 656 @if (Model.Area.Item.GetItems("FooterLinkList3").Count() > 0) 657 { 658 <ul class="flex-fill footer__bottom__list pe-2 pe-sm-3"> 659 <li class="footer__bottom__list__header mt-3 mt-sm-0">@Model.Area.Item.GetString("FooterHeadlineLinkList3")</li> 660 @foreach (var list in Model.Area.Item.GetItems("FooterLinkList3")) 661 { 662 <li class="footer__bottom__list__item"> 663 <a class="footer__bottom__list__item__link" href="@list.GetLink("Link")" >@list.GetString("Tekst")</a> 664 </li> 665 } 666 </ul> 667 } 668 669 <div class="flex-fill footer__bottom__follow d-flex flex-column"> 670 <span class="footer__bottom__follow__header d-none d-lg-block">@Translate("Follow us")</span> 671 <div> 672 @foreach (var icon in Model.Area.Item.GetItems("SocialIcons")) 673 { 674 <a href="@icon.GetLink("Link")" title="@Translate("Go to") @icon.GetString("LinkAltText")" class="d-inline-block"> 675 <img class="footer__bottom__follow__linkedin img-fluid" src="@icon.GetFile("Icon")" alt="@icon.GetString("LinkAltText")" /> 676 </a> 677 678 } 679 </div> 680 @if (!Model.Area.Item.GetBoolean("Hide_Branding_Logo")) 681 { 682 <a href="#"> 683 <img class="footer__bottom__follow__jks img-fluid" src="@Model.Area.Item.GetFile("LogoBranding")" alt="@Translate("Logo branding")" /> 684 </a> 685 } 686 </div> 687 </div> 688 </div> 689 @if (!String.IsNullOrEmpty(Model.Area.Item.GetString("AAA_Logo"))) 690 { 691 <div id="aaa_rating" class="aaa_rating"> 692 @Model.Area.Item.GetString("AAA_Logo") 693 </div> 694 } 695 </div> 696 </div> 697 698 </footer> 699 700 @if (modelId == 17) 701 { 702 <script src="/Files/Templates/Designs/dist/CareerJks2022.js?v=@System.IO.File.GetLastWriteTime(AppDomain.CurrentDomain.BaseDirectory + "/Files/Templates/Designs/dist/CareerJks2022.css").Ticks"></script> 703 } 704 else if (modelId == 16) 705 { 706 <script src="/Files/Templates/Designs/dist/ProfJks2022.js?v=@System.IO.File.GetLastWriteTime(AppDomain.CurrentDomain.BaseDirectory + "/Files/Templates/Designs/dist/ProfJks2022.css").Ticks"></script> 707 } 708 else 709 { 710 var masterScript = VestjyskMarketing.Helpers.Utilities.CacheBuster("/Files/Templates/Designs/dist/Jks2022.js"); 711 <script src="@masterScript"></script> 712 } 713 714 <!--Used for youtube video on site--> 715 <div class="modal fade" id="youtubeModal" aria-hidden="true" tabindex="-1"> 716 <div class="modal-dialog modal-xl modal-dialog-centered justify-content-center"> 717 <div class="modal-content"> 718 <div id="js-ytplayer"></div> 719 </div> 720 </div> 721 </div> 722 723 <script type="text/javascript"> 724 (function(e,t,o,n,p,r,i){e.visitorGlobalObjectAlias=n;e[e.visitorGlobalObjectAlias]=e[e.visitorGlobalObjectAlias]||function(){(e[e.visitorGlobalObjectAlias].q=e[e.visitorGlobalObjectAlias].q||[]).push(arguments)};e[e.visitorGlobalObjectAlias].l=(new Date).getTime();r=t.createElement("script");r.src=o;r.async=true;i=t.getElementsByTagName("script")[0];i.parentNode.insertBefore(r,i)})(window,document,"https://diffuser-cdn.app-us1.com/diffuser/diffuser.js","vgo"); 725 vgo('setAccount', '226425903'); 726 vgo('setTrackByDefault', true); 727 vgo('process'); 728 </script> 729 730 @RenderSnippet("JavaScriptBottom") 731 </body> 732 733 </html>