Error executing template "Designs/rm_sub/Erhverv_frontpage.cshtml"
System.NullReferenceException: Object reference not set to an instance of an object.
   at CompiledRazorTemplates.Dynamic.RazorEngine_f069de953ba44fff8b1ba8227650f32f.ExecuteAsync()
   at RazorEngine.Templating.TemplateBase.Run(ExecuteContext context, TextWriter reader)
   at RazorEngine.Templating.RazorEngineCore.RunTemplate(ICompiledTemplate template, TextWriter writer, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.DynamicWrapperService.Run(ITemplateKey key, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, TextWriter writer, Type modelType, Object model, DynamicViewBag viewBag)
   at RazorEngine.Templating.RazorEngineServiceExtensions.<>c__DisplayClass23_0.<Run>b__0(TextWriter writer)
   at RazorEngine.Templating.RazorEngineServiceExtensions.WithWriter(Action`1 withWriter)
   at RazorEngine.Templating.RazorEngineServiceExtensions.Run(IRazorEngineService service, String name, Type modelType, Object model, DynamicViewBag viewBag)
   at Dynamicweb.Rendering.RazorTemplateRenderingProvider.Render(Template template)
   at Dynamicweb.Rendering.TemplateRenderingService.Render(Template template)
   at Dynamicweb.Rendering.Template.RenderRazorTemplate()

1 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 2 @using System; 3 @using System.Globalization; 4 @using System.Text.RegularExpressions 5 @using Custom.Integration.Brokers; 6 @using RealMaeglerne.Dynamicweb; 7 @using Dynamicweb.Content.Items; 8 @using Dynamicweb.Environment; 9 @using Newtonsoft.Json; 10 @using Dynamicweb; 11 @using Dynamicweb.Core; 12 @using RealMaeglerne.Library; 13 @using Dynamicweb.Frontend.Navigation; 14 15 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 16 @using Dynamicweb.Content.Items; 17 18 @functions{ 19 void RenderErhvervsTypeCheckboxes(string productGroupFilter) 20 { 21 <div class="col-xs-6 col-md-4"> 22 <div class="checkbox"> 23 <label> 24 <input type="checkbox" name="propertytype" value="bolig/erhverv, kombineret erhverv og bolig, byejendom (kontor, butik, beboelse)" /> 25 <span>Bolig/erhverv</span> 26 </label> 27 </div> 28 <div class="checkbox"> 29 <label> 30 <input type="checkbox" name="propertytype" value="erhvervsgrund" /> 31 <span>Erhvervsgrund</span> 32 </label> 33 </div> 34 <div class="checkbox"> 35 <label> 36 <input type="checkbox" name="propertytype" value="boligudlejning" /> 37 <span>Boligudlejningsejendom</span> 38 </label> 39 </div> 40 <div class="checkbox"> 41 <label> 42 <input type="checkbox" name="propertytype" value="kontor, klinik, kontorhotel, showroom, undervisningslokaler" /> 43 <span>Kontor</span> 44 </label> 45 </div> 46 </div> 47 <div class="col-xs-6 col-md-4"> 48 <div class="checkbox"> 49 <label> 50 <input type="checkbox" name="propertytype" value="butik / detail, butik / detailhandel" /> 51 <span>Butik/detailhandel</span> 52 </label> 53 </div> 54 <div class="checkbox"> 55 <label> 56 <input type="checkbox" name="propertytype" value="industri / logistik, håndværk, industri, kontor / lager, logistik" /> 57 <span>Produktion/lager</span> 58 </label> 59 </div> 60 <div class="checkbox"> 61 <label> 62 <input type="checkbox" name="propertytype" value="hotel - kursusejendom, restaurant" /> 63 <span>Hotel og restaurant</span> 64 </label> 65 </div> 66 <div class="checkbox"> 67 <label> 68 <input type="checkbox" name="propertytype" value="projekt ejendom" /> 69 <span>Projektejendom</span> 70 </label> 71 </div> 72 </div> 73 <div class="col-xs-6 col-md-4"> 74 <div class="checkbox"> 75 <label> 76 <input type="checkbox" name="propertytype" value="andet" /> 77 <span>Andet</span> 78 </label> 79 </div> 80 </div> 81 82 <input type="hidden" name="propertycategory" value="erhverv, udlejning" /> 83 <input type="hidden" name="filtrering" value="@productGroupFilter" /> 84 } 85 void RenderBoligtypeCheckboxes() 86 { 87 <div class="col-6 col-md-4"> 88 <div class="checkbox"> 89 <label> 90 <input type="checkbox" name="propertytype" value="villa" /> 91 <span>Villa</span> 92 </label> 93 </div> 94 <div class="checkbox"> 95 <label> 96 <input type="checkbox" name="propertytype" value="rækkehus" /> 97 <span>Rækkehus</span> 98 </label> 99 </div> 100 <div class="checkbox"> 101 <label> 102 <input type="checkbox" name="propertytype" value="villalejlighed" /> 103 <span>Villalejlighed</span> 104 </label> 105 </div> 106 <div class="checkbox"> 107 <label> 108 <input type="checkbox" name="propertytype" value="andelsbolig" /> 109 <span>Andelsbolig</span> 110 </label> 111 </div> 112 </div> 113 <div class="col-6 col-md-4"> 114 <div class="checkbox"> 115 <label> 116 <input type="checkbox" name="propertytype" value="fritidshus, fritidsbolig" /> 117 <span>Fritidsbolig</span> 118 </label> 119 </div> 120 <div class="checkbox"> 121 <label> 122 <input type="checkbox" name="propertytype" value="ejerlejlighed" class="specialOption" data-disable-slider="#grundareal" data-disable-slider-ranges="#grundarealmin,#grundarealmax" /> 123 <span>Ejerlejlighed</span> 124 </label> 125 </div> 126 <div class="checkbox"> 127 <label> 128 <input type="checkbox" name="propertytype" value="helårsgrund" class="specialOption" data-disable-slider="#boligareal,#roomsslider" data-disable-slider-ranges="#boligarealmin,#boligarealmax,#roomsmin" /> 129 <span>Helårsgrund</span> 130 </label> 131 </div> 132 <div class="checkbox"> 133 <label> 134 <input type="checkbox" name="propertytype" value="fritidsgrund" class="specialOption" data-disable-slider="#boligareal,#roomsslider" data-disable-slider-ranges="#boligarealmin,#boligarealmax,#roomsmin" /> 135 <span>Fritidsgrund</span> 136 </label> 137 </div> 138 </div> 139 <div class="col-6 col-md-4"> 140 <div class="checkbox"> 141 <label> 142 <input type="checkbox" name="propertytype" value="landejendom, lystejendom" class="specialOption" data-disable-checkbox="true" /> 143 <span>Landejendom</span> 144 </label> 145 </div> 146 <div class="checkbox"> 147 <label> 148 <input type="checkbox" name="propertytype" value="erhverv" class="specialOption" data-disable-checkbox="true" data-disable-slider="#roomsslider" data-disable-slider-ranges="#roomsmin" /> 149 <span>Erhverv</span> 150 </label> 151 </div> 152 </div> 153 } 154 155 void RenderChecked(string queryString) 156 { 157 if (Dynamicweb.Context.Current.Request.QueryString["propertytype"] == queryString) 158 { 159 @("checked") 160 } 161 } 162 163 void RenderBoligtypeCheckboxesDropdown() 164 { 165 Dictionary<string, string> propertyTypes = new Dictionary<string, string>(){ 166 { "Villa", "villa" }, { "Rækkehus", "rækkehus" }, { "Villalejlighed", "villalejlighed" }, 167 { "Andelsbolig", "andelsbolig" } 168 }; 169 foreach (KeyValuePair<string, string> type in propertyTypes) 170 { 171 bool ischecked = false; 172 string[] propertytypeSplit = new string[0]; 173 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString["propertytype"])) 174 { 175 propertytypeSplit = Dynamicweb.Context.Current.Request.QueryString["propertytype"].Split(','); 176 } 177 foreach (var propertytypeParams in propertytypeSplit) 178 { 179 if (propertytypeParams == type.Value) 180 { 181 ischecked = true; 182 } 183 } 184 <li> 185 <label class="checkbox-container d-flex"> 186 @Translate("Smartpage:Search.DropDown." + type.Key + "", "" + type.Key + "") 187 <input type="checkbox" name="propertytype" value="@type.Value" class="js-input-check datavalue js-datavalue js-count" data-val="@type.Key" onchange="submitFilter()" checked="@ischecked" /> 188 <span class="checkmark grey"></span> 189 </label> 190 </li> 191 } 192 193 <li> 194 <label class="checkbox-container d-flex"> 195 @Translate("Smartpage:Search.DropDown.Blandet Bolig/Erhverv", "Blandet Bolig/Erhverv") 196 @{ 197 bool blboligcheck = false; 198 } 199 @if (Dynamicweb.Context.Current.Request.QueryString["propertycategory"] == "Blandet Bolig/Erhverv") 200 { 201 blboligcheck = true; 202 } 203 <input type="checkbox" name="propertycategory" value="Blandet Bolig/Erhverv" class="specialOption js-input-check js-datavalue js-count" data-disable-checkbox="true" data-disable-slider="#roomsslider" data-disable-slider-ranges="#roomsmin" checked="@blboligcheck" /> 204 <span class="checkmark grey"></span> 205 </label> 206 </li> 207 208 Dictionary<string, string> propertyTypes2 = new Dictionary<string, string>(){ 209 { "Fritidsbolig", "fritidshus, fritidsbolig" }, { "Ejerlejlighed", "ejerlejlighed" }, { "Helårsgrund", "helårsgrund" }, 210 { "Fritidsgrund", "fritidsgrund" }, { "Landejendom", "landejendom, lystejendom" } 211 }; 212 foreach (KeyValuePair<string, string> type in propertyTypes2) 213 { 214 bool ischecked = false; 215 string[] propertytypeSplit2 = new string[0]; 216 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString["propertytype"])) 217 { 218 propertytypeSplit2 = Dynamicweb.Context.Current.Request.QueryString["propertytype"].Split(','); 219 } 220 foreach (var propertytypeParams in propertytypeSplit2) 221 { 222 if (propertytypeParams == type.Value) 223 { 224 ischecked = true; 225 } 226 } 227 <li> 228 <label class="checkbox-container d-flex"> 229 @Translate("Smartpage:Search.DropDown." + type.Key + "", "" + type.Key + "") 230 @if (type.Value == "ejerlejlighed") 231 { 232 <input type="checkbox" name="propertytype" value="@type.Value" class="js-input-check datavalue" data-disable-slider="#grundareal" data-disable-slider-ranges="#grundarealmin,#grundarealmax" data-val="@type.Key" onchange="submitFilter()" checked="@ischecked" /> 233 } 234 else if (type.Value == "helårsgrund") 235 { 236 <input type="checkbox" name="propertytype" value="@type.Value" class="js-input-check datavalue" data-disable-slider="#boligareal,#roomsslider" data-disable-slider-ranges="#boligarealmin,#boligarealmax,#roomsmin" data-val="@type.Key" onchange="submitFilter()" checked="@ischecked" /> 237 } 238 else if (type.Value == "fritidsgrund") 239 { 240 <input type="checkbox" name="propertytype" value="@type.Value" class="js-input-check datavalue" data-disable-slider="#boligareal,#roomsslider" data-disable-slider-ranges="#boligarealmin,#boligarealmax,#roomsmin" data-val="@type.Key" onchange="submitFilter()" checked="@ischecked" /> 241 } 242 else 243 { 244 <input type="checkbox" name="propertytype" value="@type.Value" class="js-input-check datavalue" data-val="@type.Key" onchange="submitFilter()" checked="@ischecked" /> 245 } 246 <span class="checkmark grey"></span> 247 </label> 248 </li> 249 } 250 } 251 252 void RenderBoligTypeErhverv(bool submitOnChange = false, bool frontpage = false) 253 { 254 Dictionary<string, string> erhverType = new Dictionary<string, string>(){ 255 { "Kontor", "OwnUseOffices" }, { "Lager + Produktion", "OwnUseStoresAndProductions" }, { "Detailhandel", "OwnUseRetailAndStores" }, 256 { "Grunde", "OwnUseParcel" }, { "Andre typer", "OwnUseOtherTypes" }, { "Hotel + Restaurant", "OwnUseHotelsAndRestaurants" } 257 }; 258 var submitonchange = ""; 259 if (submitOnChange) 260 { 261 submitonchange = "onchange='submitFilter()'"; 262 } 263 264 foreach (KeyValuePair<string, string> type in erhverType) 265 { 266 string ischecked = ""; 267 string[] olineParamsSplit = new string[0]; 268 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString["olinecategory"])) 269 { 270 olineParamsSplit = Dynamicweb.Context.Current.Request.QueryString["olinecategory"].Split(','); 271 } 272 foreach (var olineParams in olineParamsSplit) 273 { 274 if (olineParams == type.Value) 275 { 276 ischecked = "checked"; 277 } 278 } 279 280 <li> 281 <label class="checkbox-container d-flex"> 282 @Translate("Smartpage:Search.DropDown." + type.Key + "", "" + type.Key + "") 283 <input type="checkbox" name="olinecategory" value="@type.Value" class="js-input-check datavalue" data-val="@type.Key" @submitonchange @ischecked /> 284 <span class="checkmark grey"></span> 285 </label> 286 </li> 287 } 288 289 290 bool ischeckedpropertycat = false; 291 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString["propertycategory"])) 292 { 293 if (Dynamicweb.Context.Current.Request.QueryString["propertycategory"] == "Blandet Bolig/Erhverv") 294 { 295 ischeckedpropertycat = true; 296 } 297 } 298 <li> 299 <label class="checkbox-container"> 300 @Translate("Smartpage:Search.DropDown.Blandet Bolig/Erhverv", "Blandet Bolig/Erhverv") 301 <input type="checkbox" name="propertycategory" value="Blandet Bolig/Erhverv" class="js-input-check datavalue" data-val="Blandet Bolig/Erhverv" onchange="submitFilter()" checked="@ischeckedpropertycat" /> 302 <span class="checkmark grey"></span> 303 </label> 304 </li> 305 } 306 307 void RenderBoligTypeErhvervInvest(bool submitOnChange = false) 308 { 309 Dictionary<string, string> erhverType = new Dictionary<string, string>(){ 310 { "Kontor", "Kontor" }, { "Lager + Produktion", "InvestmentStoresAndProductions" }, { "Boligudlejning", "InvestmentHousingRental" }, 311 { "Detailhandel", "InvestmentRetailAndStores" }, { "Grunde", "InvestmentParcel" }, { "Hotel + Restaurant", "InvestmentHotelsAndRestaurants" }, { "Andre typer", "InvestmentOtherTypes" } 312 }; 313 314 foreach (KeyValuePair<string, string> type in erhverType) 315 { 316 bool ischecked = false; 317 string[] olineParamsSplit = new string[0]; 318 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString["olinecategory"])) 319 { 320 olineParamsSplit = Dynamicweb.Context.Current.Request.QueryString["olinecategory"].Split(','); 321 } 322 foreach (var olineParams in olineParamsSplit) 323 { 324 if (olineParams == type.Value) 325 { 326 ischecked = true; 327 } 328 } 329 330 <li> 331 <label class="checkbox-container"> 332 @Translate("Smartpage:Search.DropDown." + type.Key + "", "" + type.Key + "") 333 <input type="checkbox" name="olinecategory" value="@type.Value" class="js-input-check datavalue" data-val="@type.Key" onchange="submitFilter()" checked="@ischecked" /> 334 <span class="checkmark grey"></span> 335 </label> 336 </li> 337 } 338 } 339 int GetWebsiteSettingsPageId(string pageSysName) 340 { 341 int sideId = 0; 342 343 var pw = Dynamicweb.Frontend.PageView.Current(); 344 345 string settingsItemId = "1"; 346 347 if ((pw.Area.Item.ContainsKey("Type") && pw.Area.Item["Type"].ToString() == "bone") || Dynamicweb.Context.Current.Request.QueryString["bone"] == "true") 348 { 349 settingsItemId = "2"; 350 } 351 352 var settingsItem = ItemManager.Storage.GetById("Delte_Egenskaber", settingsItemId); 353 354 if (settingsItem == null || !settingsItem.ContainsKey(pageSysName)) 355 { 356 return sideId; 357 } 358 359 string boligsideLink = settingsItem[pageSysName] as String; 360 string linkPrefix = "Default.aspx?ID="; 361 362 if (!String.IsNullOrEmpty(boligsideLink) && boligsideLink.ToLower().StartsWith(linkPrefix.ToLower())) 363 { 364 Int32.TryParse(boligsideLink.Substring(linkPrefix.Length), out sideId); 365 } 366 367 return sideId; 368 } 369 370 int GetPageSettingsPageId(string pageSysName) 371 { 372 int sideId = 0; 373 374 var pw = Dynamicweb.Frontend.PageView.Current(); 375 376 if (pw.Page == null || pw.Page.PropertyItem == null || !pw.Page.PropertyItem.ContainsKey(pageSysName)) 377 { 378 return sideId; 379 } 380 381 string boligsideLink = pw.Page.PropertyItem[pageSysName] as String; 382 string linkPrefix = "Default.aspx?ID="; 383 384 if (!String.IsNullOrEmpty(boligsideLink) && boligsideLink.ToLower().StartsWith(linkPrefix.ToLower())) 385 { 386 Int32.TryParse(boligsideLink.Substring(linkPrefix.Length), out sideId); 387 } 388 389 return sideId; 390 } 391 void RenderMobileSelectBox(string name, int max, int step, string className, string inputname) 392 { 393 <select class="form-control d-block d-lg-none mb-10 @className" onchange="submitFilter()" name="@inputname"> 394 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder." + name + "", "" + name + "")</option> 395 396 @for (var i = 0; i <= max; i += step) 397 { 398 var selected = string.Empty; 399 var current = string.Empty; 400 if (i == max) 401 { 402 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString[inputname]) && Dynamicweb.Context.Current.Request.QueryString[inputname] == Convert.ToString(i)) 403 { 404 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")' selected="selected">@Convert.ToInt32(i).ToString("N0")+</option> 405 } 406 else 407 { 408 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")'>@Convert.ToInt32(i).ToString("N0")+</option> 409 } 410 } 411 else 412 { 413 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString[inputname]) && Dynamicweb.Context.Current.Request.QueryString[inputname] == Convert.ToString(i)) 414 { 415 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")' selected="selected">@Convert.ToInt32(i).ToString("N0")</option> 416 } 417 else 418 { 419 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")'>@Convert.ToInt32(i).ToString("N0")</option> 420 } 421 } 422 } 423 </select> 424 } 425 426 void RenderTopFilter(string parameter) 427 { 428 if (parameter == "pricemin" || parameter == "pricemax") 429 { 430 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["pricemin"])) 431 { 432 if (parameter == "pricemin") 433 { 434 @("<div class='search-terms' id='priceFilter'>") 435 @("Pris ") @Dynamicweb.Context.Current.Request[parameter] 436 } 437 438 else 439 { 440 @(" - ") @Dynamicweb.Context.Current.Request[parameter] @(" kr.") <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="pricemin,pricemax"></i> 441 @("</div>") 442 } 443 } 444 } 445 446 else if (parameter == "subsidymin" || parameter == "subsidymax") 447 { 448 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["subsidymin"])) 449 { 450 if (parameter == "subsidymin") 451 { 452 @("<div class='search-terms' id='subsidyFilter'>") 453 @("Årlig leje ") @Dynamicweb.Context.Current.Request[parameter] 454 } 455 456 else 457 { 458 @(" - ") @Dynamicweb.Context.Current.Request[parameter] @(" kr.") <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="subsidymin,subsidymax"></i> 459 @("</div>") 460 } 461 } 462 } 463 else if (parameter == "etagearealmin" || parameter == "etagearealmax") 464 { 465 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["etagearealmin"])) 466 { 467 if (parameter == "etagearealmin") 468 { 469 @("<div class='search-terms' id='etagearealFilter'>") 470 @("Etageareal ") @Dynamicweb.Context.Current.Request[parameter] 471 } 472 473 else 474 { 475 @(" - ") @Dynamicweb.Context.Current.Request[parameter] @(" kvm.") <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="etagearealmin,etagearealmax"></i> 476 @("</div>") 477 } 478 } 479 } 480 481 else if (parameter == "grundarealmin" || parameter == "grundarealmax") 482 { 483 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["grundarealmin"])) 484 { 485 if (parameter == "grundarealmin") 486 { 487 @("<div class='search-terms' id='grundarealFilter'>") 488 @("Grundareal ") @Dynamicweb.Context.Current.Request[parameter] 489 } 490 491 else 492 { 493 @(" - ") @Dynamicweb.Context.Current.Request[parameter] @(" kvm.") <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="grundarealmin,grundarealmax"></i> 494 @("</div>") 495 } 496 } 497 } 498 499 else if (parameter == "subsidykvmmin" || parameter == "subsidykvmmax") 500 { 501 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["subsidykvmmin"])) 502 { 503 if (parameter == "subsidykvmmin") 504 { 505 @("<div class='search-terms' id='subsidykvmFilter'>") 506 @("Årlig leje kvm ") @Dynamicweb.Context.Current.Request[parameter] 507 } 508 509 else 510 { 511 @(" - ") @Dynamicweb.Context.Current.Request[parameter] @(" kr.") <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="subsidykvmmin,subsidykvmmax"></i> 512 @("</div>") 513 } 514 } 515 } 516 517 else if (parameter == "olinecategory") 518 { 519 520 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["olinecategory"])) 521 { 522 Dictionary<string, string> erhverType = new Dictionary<string, string>(){ 523 {"OwnUseOffices", "Kontor" }, { "OwnUseStoresAndProductions","Lager + Produktion" }, { "OwnUseRetailAndStores","Detailhandel" }, 524 { "OwnUseParcel", "Grunde" }, { "OwnUseHotelsAndRestaurants", "Hotel + Restaurant" }, { "OwnUseOtherTypes", "Andre typer"}, 525 { "Kontor", "Kontor" }, { "InvestmentStoresAndProductions", "Lager + Produktion" }, { "InvestmentHousingRental", "Boligudlejning" }, 526 { "InvestmentRetailAndStores", "Detailhandel" }, { "InvestmentParcel", "Grunde" }, { "InvestmentHotelsAndRestaurants", "Hotel + Restaurant" }, { "InvestmentOtherTypes", "Andre typer" } 527 }; 528 529 530 foreach (var er in erhverType) 531 { 532 if (Dynamicweb.Context.Current.Request[parameter].Contains(er.Key)) 533 { 534 <div class="search-terms" id="@parameter"> 535 @er.Value <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="@parameter" data-val="@er.Key"></i> 536 </div> 537 } 538 } 539 } 540 } 541 else if (parameter == "propertycategory") 542 { 543 544 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["propertycategory"])) 545 { 546 Dictionary<string, string> erhverType = new Dictionary<string, string>(){ 547 { "propertycategory", "Blandet Bolig/Erhverv" } 548 }; 549 550 foreach (var er in erhverType) 551 { 552 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request[parameter]) && Dynamicweb.Context.Current.Request[parameter] == er.Value) 553 { 554 <div class="search-terms" id="@parameter"> 555 @er.Value <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="@parameter" data-val="@er.Key"></i> 556 </div> 557 } 558 } 559 } 560 } 561 else if (parameter == "search") 562 { 563 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request["search"])) 564 { 565 <div class="search-terms" id="@parameter"> 566 @Dynamicweb.Context.Current.Request[parameter] <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="@parameter"></i> 567 </div> 568 } 569 } 570 else 571 { 572 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request[parameter])) 573 { 574 Dictionary<string, string> 575 ubudsform = new Dictionary<string, string> 576 (){ 577 {"salg", "Salg" }, { "leje","Leje" } 578 }; 579 580 foreach (var er in ubudsform) 581 { 582 if (Dynamicweb.Context.Current.Request[parameter].Contains(er.Key)) 583 { 584 <div class="search-terms" id="@parameter"> 585 @er.Value <i class="fa fa-times ml-2 pointer" onclick="removeParams(this)" data-tag="@parameter" data-val="@er.Key"></i> 586 </div> 587 } 588 } 589 590 591 } 592 } 593 } 594 595 void RenderSelectValue(string dropdownname, string dropdownvalue, string queryString) 596 { 597 var selected = ""; 598 if (!string.IsNullOrEmpty(Dynamicweb.Context.Current.Request.QueryString[queryString]) && Dynamicweb.Context.Current.Request.QueryString[queryString] == dropdownvalue) 599 { 600 selected = "selected"; 601 } 602 603 var current = string.Format("<option value='" + dropdownvalue + "'>" + dropdownname + "</option>", selected); 604 605 @current 606 } 607 608 void RenderSearchForHousing(int searchPageId, string querySearch, string querySearchNameAttr, string queryZipCodeFrom, string queryZipCodeTo, string template, Item SettingsItem, string cssClasses = "") 609 { 610 <div class="main-search-form frontpage @cssClasses"> 611 <div class="dropdown-overlay"></div> 612 <div class="row mb-3 align-items-center"> 613 <div class="col-xs-12 col-md-3 border-right"> 614 <h3>@Translate("Smartpage:Search.Søg bolig", "Søg bolig")</h3> 615 </div> 616 <div class="col-xs-12 col-md-9 home-count d-none d-md-block"> 617 <span class="search-count" id="searchCounter">0</span> <span>@Translate("Smartpage:Search.BoligerTilSalg", "Boliger til salg")</span> 618 </div> 619 </div> 620 621 <form id="main-search-frontpage" class="searchbar-wrapper" action="/Default.aspx" method="GET"> 622 <input type="hidden" name="ID" value='@searchPageId' id="searchPageId-frontpage" disabled="disabled" /> 623 <div class="row form-wrapper no-gutters"> 624 625 <div class="col-xs-12 col-md-5 col-searchbar"> 626 <div class="searchbar"> 627 <input type="text" name="@querySearchNameAttr" id="searchfield-frontpage" class="search-input" placeholder="Postnummer, by, vej eller sagsnummer" tabindex="1" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(querySearch)" /> 628 <input type="hidden" id="zipcodefrom-frontpage" name="zipcodefrom" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(queryZipCodeFrom)" /> 629 <input type="hidden" id="zipcodeto-frontpage" name="zipcodeto" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(queryZipCodeTo)" /> 630 </div> 631 </div> 632 <div class="col-xs-12 col-md-5"> 633 <div class="row no-gutters"> 634 <div class="col-xs-12 col-md-6 input-col"> 635 <div class="dropdown w-overlay"> 636 <button class="btn btn-dropdown dropdown-toggle reverse position-absolute-md" type="button" id="Boligtype-frontpage" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 637 @Translate("Smartpage:Search.Boligtype", "Boligtype") 638 </button> 639 <div class="dropdown-menu box-shadow bolig-dropdown-container" aria-labelledby="Boligtype"> 640 <ul class="bolig-dropdown list-unstyled"> 641 @{ 642 RenderBoligtypeCheckboxesDropdown(); 643 } 644 </ul> 645 <span class="border-fat"></span> 646 <button class="btn btn-primary js-close-dropdown">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 647 </div> 648 649 </div> 650 651 </div> 652 <div class="col-xs-12 col-md-6 input-col"> 653 <div class="dropdown w-overlay"> 654 <button class="btn btn-dropdown dropdown-toggle reverse position-absolute-md" type="button" id="Pris-frontpage" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 655 @Translate("Smartpage:Search.Pris", "Pris") 656 </button> 657 <div class="dropdown-menu box-shadow dropdown-price" aria-labelledby="Pris"> 658 <input type="text" class="form-control mb-10 js-auto-thousand js-pricemin-frontpage-input" placeholder='@Translate("Smartpage:Search.Placeholder.MinPris","Min. pris")' /> 659 <select class="form-control js-pricemin-frontpage-select js-input-min-select mb-10"> 660 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.MinPris", "Min. pris")</option> 661 @for (var i = 0; i <= 10000000; i += 100000) 662 { 663 if (i == 10000000) 664 { 665 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")+'>@Convert.ToInt32(i).ToString("N0")+</option> 666 } 667 else 668 { 669 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")'>@Convert.ToInt32(i).ToString("N0")</option> 670 } 671 } 672 </select> 673 <input type="hidden" id="pricemin-frontpage" name="pricemin" /> 674 675 <input type="text" class="form-control js-auto-thousand js-pricemax-frontpage-input" placeholder='@Translate("Smartpage:Search.Placeholder.MaxPris","Max. pris")' /> 676 <select class="form-control js-pricemax-frontpage-select js-input-max-select"> 677 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.MaxPris", "Max. pris")</option> 678 @for (var i = 0; i <= 10000000; i += 100000) 679 { 680 if (i == 10000000) 681 { 682 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")+'>@Convert.ToInt32(i).ToString("N0")+</option> 683 } 684 else 685 { 686 <option value="@i" data-value='@Convert.ToInt32(i).ToString("N0")'>@Convert.ToInt32(i).ToString("N0")</option> 687 } 688 } 689 </select> 690 <input type="hidden" id="pricemax-frontpage" name="pricemax" /> 691 <button class="btn btn-primary js-close-dropdown mt-3">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 692 </div> 693 </div> 694 </div> 695 </div> 696 </div> 697 <div class="col-xs-12 col-md-2 d-none d-md-block"> 698 <button type="submit" class="btn btn-block btn-search"><i class="fa fa-search"></i> @Translate("Smartpage:Search.Søg", "Søg")</button> 699 </div> 700 </div> 701 702 <div class="row moresearch-btn no-gutters"> 703 <div class="col-sm-12"> 704 <div class="row align-items-center no-gutters"> 705 <div class="col-12 col-md-4"> 706 <button class="btn-blank js-search-collapse" type="button" data-toggle="collapse" data-target="#moreSearch" aria-expanded="false" aria-controls="moreSearch"> 707 <span class="moreSearch-text"><i class="fas fa-plus open-close"></i> <span class="not-open">@Translate("Smartpage:Search.Flere søgemuligheder", "Flere søgemuligheder")</span> <span class="open"><span class="js-filter-count">0</span> @Translate("Smartpage:Search.FiltreAnvendt", "filtre anvendt") </span></span> 708 </button> 709 </div> 710 <div class="col-6 col-md-2 mb-xs-4"> 711 <a class="js-reset reset-btn">@Translate("Smartpage:Search.NulstilValg", "Nulstil valg")</a> 712 </div> 713 </div> 714 715 <div class="collapse" id="moreSearch"> 716 <h4 class="mt-20"><b>@Translate("Smartpage:Search.Bolig", "Bolig")</b></h4> 717 <div class="row align-items-end mb-30"> 718 <div class="col-12 col-sm-6 col-lg-3 mb-3 mb-lg-0"> 719 <div class="filter-container row"> 720 <label class="d-block col-12">@Translate("Smartpage:Search.Boligareal", "Boligareal")</label> 721 <div class="col-6 pr-sm-0 pr-2"> 722 <input type="text" name="boligarealmin" id="boligarealmin-frontpage" class="form-control js-boligarealmin-frontpage-input js-count" placeholder='@Translate("Smartpage:Search.Placeholder.Minm2","Min. m2")' /> 723 <select class="form-control js-boligarealmin-frontpage-select js-count"> 724 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.Minm2", "Min. m2")</option> 725 @for (var i = 0; i <= 300; i += 10) 726 { 727 if (i == 300) 728 { 729 <option value="@i">@i+</option> 730 } 731 else 732 { 733 <option value="@i">@i</option> 734 } 735 } 736 </select> 737 </div> 738 <div class="col-6 pl-sm-0 pl-2"> 739 <input type="text" name="boligarealmax" id="boligarealmax-frontpage" class="form-control js-boligarealmax-frontpage-input js-count" placeholder='@Translate("Smartpage:Search.Placeholder.Maxm2","Max. m2")' /> 740 <select class="form-control js-boligarealmax-frontpage-select js-count"> 741 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.Maxm2", "Max. m2")</option> 742 @for (var i = 0; i <= 300; i += 10) 743 { 744 if (i == 300) 745 { 746 <option value="@i">@i+</option> 747 } 748 else 749 { 750 <option value="@i">@i</option> 751 } 752 } 753 </select> 754 </div> 755 </div> 756 </div> 757 <div class="col-12 col-sm-6 col-lg-3 mb-3 mb-lg-0"> 758 <div class="filter-container row"> 759 <label class="d-block col-12">@Translate("Smartpage:Search.Grundareal", "Grundareal")</label> 760 <div class="col-6 pr-sm-0 pr-2"> 761 <input type="text" name="grundarealmin" id="grundarealmin-frontpage" class="form-control js-grundarealmin-frontpage-input js-count" placeholder='@Translate("Smartpage:Search.Placeholder.Minm2","Min. m2")' /> 762 <select class="form-control js-grundarealmin-frontpage-select js-count"> 763 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.Minm2", "Min. m2")</option> 764 @for (var i = 0; i <= 10000; i += 100) 765 { 766 if (i == 10000) 767 { 768 <option value="@i">@i+</option> 769 } 770 else 771 { 772 <option value="@i">@i</option> 773 } 774 } 775 </select> 776 </div> 777 <div class="col-6 pl-sm-0 pl-2"> 778 <input type="text" name="grundarealmax" id="grundarealmax-frontpage" class="form-control js-grundarealmax-frontpage-input js-count" placeholder='@Translate("Smartpage:Search.Placeholder.Maxm2","Max. m2")' /> 779 <select class="form-control js-grundarealmax-frontpage-select js-count"> 780 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.Maxm2", "Max. m2")</option> 781 @for (var i = 0; i <= 10000; i += 100) 782 { 783 if (i == 10000) 784 { 785 <option value="@i">@i+</option> 786 } 787 else 788 { 789 <option value="@i">@i</option> 790 } 791 } 792 </select> 793 </div> 794 </div> 795 </div> 796 <div class="col-12 col-sm-6 col-lg-3 mb-3 mb-lg-0"> 797 <div class="filter-container row"> 798 <label class="d-block col-12">Antal rum</label> 799 800 <div class="col-6 pr-sm-0 pr-2"> 801 <select name="roomsmin" id="roomsmin-frontpage" class="form-control reverse js-count"> 802 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.Min", "Min")</option> 803 <option value="1">1</option> 804 <option value="2">2</option> 805 <option value="3">3</option> 806 <option value="4">4</option> 807 <option value="5+">5+</option> 808 </select> 809 </div> 810 <div class="col-6 pl-sm-0 pl-2"> 811 <select name="roomsmax" id="roomsmax-frontpage" class="form-control reverse js-count"> 812 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.Max", "Max")</option> 813 <option value="1">1</option> 814 <option value="2">2</option> 815 <option value="3">3</option> 816 <option value="4">4</option> 817 <option value="5+">@Translate("Smartpage:Rooms.5", "5")</option> 818 </select> 819 </div> 820 </div> 821 </div> 822 <div class="col-12 col-sm-6 col-lg-3 mb-3 mb-lg-0"> 823 <div class="row"> 824 <div class="col-12"> 825 <div class="filter-container"> 826 <label class="d-block">Energimærke</label> 827 <select name="energylabel" id="energylabel-frontpage" class="form-control reverse js-count"> 828 <option disabled selected="selected">@Translate("Smartpage:Search.Vælg", "Vælg")</option> 829 <option value="01">G</option> 830 <option value="02">F</option> 831 <option value="03">E</option> 832 <option value="04">D</option> 833 <option value="05">C</option> 834 <option value="06">B</option> 835 <option value="07">A</option> 836 <option value="08">A2010</option> 837 <option value="09">A2015</option> 838 <option value="10">A2020+</option> 839 </select> 840 </div> 841 </div> 842 </div> 843 </div> 844 <div class="col-12 col-sm-6 col-lg-3 mt-3"> 845 <h4 class=""><b>@Translate("Smartpage:Search.Økonomi", "Økonomi")</b></h4> 846 <div class="filter-container row"> 847 <label class="d-block col-12">@Translate("Smartpage:Search.Ejerudgift/boligydelse pr. måned", "Ejerudgift/boligydelse pr. måned")</label> 848 <div class="col-6 pr-sm-0 pr-2"> 849 <input type="text" name="subsidymin" id="subsidymin-frontpage" class="form-control js-subsidymin-frontpage-input js-count" placeholder='@Translate("Smartpage:Search.Placeholder.MinDKK","Min. DKK")' /> 850 <select class="form-control js-subsidymin-frontpage-select js-count"> 851 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.MinDKK", "Min. DKK")</option> 852 @for (var i = 0; i <= 25000; i += 1250) 853 { 854 if (i == 25000) 855 { 856 <option>@Convert.ToInt32(i).ToString("N0")+</option> 857 } 858 else 859 { 860 <option>@Convert.ToInt32(i).ToString("N0")</option> 861 } 862 } 863 </select> 864 </div> 865 <div class="col-6 pl-sm-0 pl-2"> 866 <input type="text" name="subsidymax" id="subsidymax-frontpage" class="form-control js-subsidymax-frontpage-input js-count" placeholder='@Translate("Smartpage:Search.Placeholder.MaxDKK","Max. DKK")' /> 867 <select class="form-control js-subsidymax-frontpage-select js-count"> 868 <option selected="true" disabled="disabled">@Translate("Smartpage:Search.Placeholder.MaxDKK", "Max. DKK")</option> 869 @for (var i = 0; i <= 25000; i += 1250) 870 { 871 if (i == 25000) 872 { 873 <option value="@Convert.ToInt32(i)">@Convert.ToInt32(i).ToString("N0")+</option> 874 } 875 else 876 { 877 <option value="@Convert.ToInt32(i)">@Convert.ToInt32(i).ToString("N0")</option> 878 } 879 } 880 </select> 881 </div> 882 </div> 883 </div> 884 <div class="col-12 col-sm-6 col-lg-4 offset-lg-5 mt-3 mt-sm-0"> 885 <button type="submit" class="btn btn-block btn-search"><i class="fa fa-search"></i> @Translate("Smartpage:Search.AnvendFiltre", "Anvend filtre")</button> 886 </div> 887 </div> 888 </div> 889 </div> 890 </div> 891 892 <div class="row d-block d-md-none form-wrapper no-gutters"> 893 <div class="col-xs-12 col-md-2"> 894 <button type="submit" class="btn btn-block btn-search btn-mobile-search">@Translate("Smartpage:Search.SøgBolig", "Søg Bolig")<i class="fa fa-search cta-icon"></i></button> 895 </div> 896 </div> 897 </form> 898 <div class="front-page-actions d-md-none"> 899 <div> 900 <button class="btn btn-block btn-search btn-mobile-search js-search-mobile">@Translate("Smartpage:Search.SøgBolig", "Søg Bolig")<i class="fa fa-search cta-icon"></i></button> 901 </div> 902 <div> 903 @{ 904 string brokerSearchId = SettingsItem != null ? Dynamicweb.Core.Converter.ToString(SettingsItem["Maeglersogning"]).Replace("Default.aspx?Id=", "") : ""; 905 string ctaText = Translate("Smartpage.Frontpage.Mobile.FindBroker", "FIND EJENDOMSMÆGLER"); 906 <form method="GET" action="/Default.aspx"> 907 <input name="id" value="@brokerSearchId" type="hidden" /> 908 <div class="icon-wrapper-wclick"> 909 <i class="fas fa-search ta-submit-on-icon-click"></i> 910 <input class="box-cta-input ta-postnummer ta-submit-on-select ta-submit-on-enter" name="q" type="text" placeholder="@ctaText" onfocus="this.placeholder = ''" onblur="this.placeholder='@ctaText'" /> 911 </div> 912 </form> 913 } 914 </div> 915 <div> 916 <a href="javascript:panelSalgsvurdering('Hovedmenu')" class="btn btn-orange btn-block">@Translate("Smartpage:Frontpage.Mobile.GetFreeAppraisal", "BESTIL GRATIS VURDERING")<i class="cta-icon fa fa-angle-right"></i></a> 917 </div> 918 </div> 919 </div> 920 921 } 922 Custom.Integration.Brokers.Models.BrokerEmployee GetBrokerFromCurrentProduct() 923 { 924 string productId = Dynamicweb.Context.Current.Request["ProductId"]; 925 926 if (string.IsNullOrWhiteSpace(productId)) 927 { 928 return null; 929 } 930 931 var propertyProduct = Dynamicweb.Ecommerce.Services.Products.GetProductById(productId, string.Empty, true); 932 if (propertyProduct == null) 933 { 934 return null; 935 } 936 937 string employee = Dynamicweb.Core.Converter.ToString( 938 Dynamicweb.Ecommerce.Services.Products.GetProductFieldValue(propertyProduct, "xAktoererMaeglerKontaktEmail") 939 ); 940 string storeId = Dynamicweb.Core.Converter.ToString( 941 Dynamicweb.Ecommerce.Services.Products.GetProductFieldValue(propertyProduct, "xButikID") 942 ); 943 944 if (string.IsNullOrWhiteSpace(employee) || string.IsNullOrWhiteSpace(storeId)) 945 { 946 return null; 947 } 948 949 return Custom.Integration.Brokers.Search.GetEmployee(storeId, employee); 950 } 951 952 string GetAgentTitleFromCurrentProduct() 953 { 954 var propBroker = GetBrokerFromCurrentProduct(); 955 956 if (propBroker?.Broker == null) 957 { 958 return string.Empty; 959 } 960 961 if (!string.IsNullOrEmpty(propBroker.Broker.CompanyName)) 962 { 963 return propBroker.Broker.CompanyName; 964 } 965 966 return propBroker.Broker.Name ?? string.Empty; 967 } 968 969 string GetMasterBrokerUrlFromCurrentProduct() 970 { 971 var propBroker = GetBrokerFromCurrentProduct(); 972 973 var itemId = propBroker?.Broker?.ItemId; 974 var itemType = propBroker?.Broker?.ItemType; 975 976 if (string.IsNullOrWhiteSpace(itemId) || string.IsNullOrWhiteSpace(itemType)) 977 { 978 return string.Empty; 979 } 980 var brokerItem = Dynamicweb.Content.Items.ItemManager.Storage.GetById(itemType, itemId); 981 982 if (brokerItem == null) 983 { 984 return string.Empty; 985 } 986 987 var websiteId = Dynamicweb.Core.Converter.ToInt32(brokerItem["WebsiteId"]); 988 var page = Dynamicweb.Content.Services.Pages.GetFirstPageForArea(websiteId); 989 return Dynamicweb.Frontend.SearchEngineFriendlyURLs.GetFriendlyUrl("Default.aspx?Id=" + page?.ID); 990 } 991 } 992 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 993 @using Dynamicweb.Core; 994 @using Dynamicweb.Core.Encoders; 995 @using Dynamicweb.Frontend.Navigation; 996 @using Dynamicweb; 997 998 @functions { 999 void RenderSlideMenu(bool BoligOne, bool erhverv, string maeglersoegning) 1000 { 1001 <div id="menu" 1002 class="main-menu-slide" 1003 role="navigation" 1004 aria-label="@HtmlEncoder.HtmlAttributeEncode(Translate("Custom:Accessibility.MainMenu", "Hovedmenu"))" 1005 aria-modal="true"> 1006 <div class="container"> 1007 <div class="row"> 1008 <div class="col-12"> 1009 <span class="menu-headline">MENU</span> 1010 </div> 1011 <div class="menu-slide" 1012 role="button" 1013 tabindex="0" 1014 aria-label="@HtmlEncoder.HtmlAttributeEncode(Translate("Custom:Accessibility.CloseMenu", "Luk menu"))"> 1015 <b aria-hidden="true"></b> 1016 </div> 1017 1018 <div class="col-12 main-slidemenu" role="region" aria-label="@HtmlEncoder.HtmlAttributeEncode(Translate("Custom:Accessibility.NavigationLinks", "Navigationslinks"))"> 1019 @{ 1020 string erhvervsNavigationAreaId = !string.IsNullOrWhiteSpace(Converter.ToString(Pageview.Area.Item["SpErhvervNavigationAreaId"])) ? Converter.ToString(Pageview.Area.Item["SpErhvervNavigationAreaId"]) : "2723"; 1021 string rmNavigationAreaId = !string.IsNullOrWhiteSpace(Converter.ToString(Pageview.Area.Item["SpRMNavigationAreaId"])) ? Converter.ToString(Pageview.Area.Item["SpRMNavigationAreaId"]) : "1"; 1022 1023 if (Pageview.Page.ItemType == "AgentPage") 1024 { 1025 @Navigation.RenderNavigation("Navigation/AgentNavigation.cshtml", 1026 new NavigationSettings { StartLevel = 1, StopLevel = 1, RootAreaId = Pageview.Area.ID }) 1027 } 1028 else if (erhverv) 1029 { 1030 <ul id="main-nav-erhverv" class="navigation dwnavigation" settings="startlevel:1;endlevel:2;template:Erhverv_ul_li.xslt;expandmode:all;areaid:@erhvervsNavigationAreaId;"></ul> 1031 @GetValue("DwNavigation(mainnaverhverv)") 1032 } 1033 else 1034 { 1035 <ul id="main-nav" class="navigation dwnavigation" settings="startlevel:1;endlevel:2;template:Erhverv_ul_li.xslt;expandmode:all;areaid:@rmNavigationAreaId;"></ul> 1036 @GetValue("DwNavigation(mainnav)") 1037 } 1038 } 1039 </div> 1040 <div class="col-12 bottom-btns"> 1041 1042 @{ 1043 string[] maeglerid; 1044 string maegler = !string.IsNullOrEmpty(Converter.ToString(Pageview.Area.Item["ErhvervMaeglersoegning"])) ? Converter.ToString(Pageview.Area.Item["ErhvervMaeglersoegning"]) : "Default?Id=0"; 1045 1046 if (erhverv) 1047 { 1048 maeglerid = maegler.Split(new string[] { "?Id=" }, StringSplitOptions.None); 1049 } 1050 else 1051 { 1052 maeglerid = Convert.ToString(maeglersoegning).Split(new string[] { "?Id=" }, StringSplitOptions.None); 1053 } 1054 1055 <form method="GET" action="/Default.aspx" role="search"> 1056 <input name="id" value="@maeglerid[1]" type="hidden" /> 1057 <div class="icon-wrapper-wclick"> 1058 <label for="broker-search-menu" class="sr-only">@Translate("Custom:Accessibility.FindBroker", "Find mægler")</label> 1059 <i class="fas fa-search ta-submit-on-icon-click" 1060 aria-hidden="true" 1061 role="button" 1062 tabindex="0" 1063 aria-label="@HtmlEncoder.HtmlAttributeEncode(Translate("Custom:Accessibility.SearchBroker", "Søg efter mægler"))"></i> 1064 <input id="broker-search-menu" 1065 class="box-cta-input ta-postnummer ta-submit-on-select ta-submit-on-enter" 1066 name="q" 1067 type="text" 1068 placeholder="@HtmlEncoder.HtmlAttributeEncode(Translate("Smartpage:BoxWidget.FindMægler", "FIND MÆGLER"))" 1069 aria-label="@HtmlEncoder.HtmlAttributeEncode(Translate("Custom:Accessibility.BrokerSearchField", "Indtast postnummer eller navn for at finde mægler"))" 1070 onfocus="this.placeholder = 'FIND MÆGLER'" /> 1071 </div> 1072 </form> 1073 } 1074 <br /> 1075 @{ 1076 var dpmaegler = "" + Context.Current.Session["DP"] + "Hovedmenu" + ""; 1077 } 1078 <a href="javascript:panelSalgsvurdering('@dpmaegler', '@Pageview.AreaID');" 1079 class="btn btn-block btn-default-invert js-close-menu" 1080 aria-label="@HtmlEncoder.HtmlAttributeEncode(Translate("Custom:Accessibility.FreeSalesAssessment", "Få gratis salgsvurdering"))">Gratis salgsvurdering <i class="cta-icon fa fa-angle-right" aria-hidden="true"></i></a> 1081 </div> 1082 </div> 1083 </div> 1084 </div> 1085 } 1086 } 1087 1088 @{ 1089 Context.Current.Response.AddHeader("access-control-allow-origin", "*"); 1090 1091 string bodyClass = ""; 1092 string template = "real"; 1093 string TemplateUrl = "/Files/Templates/Designs/rm/"; 1094 string logoUrl = TemplateUrl + "assets/images/logo-erhverv.svg"; 1095 string MetaTitle = GetString("Title"); 1096 string MetaDescription = GetString("Meta.Description"); 1097 string MetaKeywords = GetString("Meta.Keywords"); 1098 string searchClass = ""; 1099 1100 string cachedTimestamp = DateTime.Now.ToString("yyyyMMdd-HH"); 1101 string mainCSS = TemplateUrl + "assets/dist/css/main.min.css?" + cachedTimestamp; 1102 string erhvervCSS = TemplateUrl + "assets/dist/css/erhverv.min.css?" + cachedTimestamp; 1103 string loadingIcon = "/Files/Images/real-maeglerne-loading-erhverv.svg"; 1104 1105 var SettingsItem = ItemManager.Storage.GetById("Delte_Egenskaber", template != "bone" ? "1" : "2"); 1106 1107 // Indstillinger 1108 var settings_Frontpage = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Frontpage"])) ? SettingsItem["Frontpage"] : ""; 1109 var settings_Boligside = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Boligside"])) ? SettingsItem["Boligside"] : ""; 1110 var settings_BoligsideErhverv = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoligsideErhverv"])) ? Converter.ToString(SettingsItem["BoligsideErhverv"]) : ""; 1111 var settings_BoligListFeedMaegler = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoligListFeedMaeglerErhverv"])) ? SettingsItem["BoligListFeedMaeglerErhverv"] : ""; 1112 var settings_Maeglersogning = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Maeglersogning"])) ? SettingsItem["Maeglersogning"] : ""; 1113 var settings_MinSide = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["MinSide"])) ? SettingsItem["MinSide"] : ""; 1114 var settings_Sibling_Site = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Sibling_Site"])) ? SettingsItem["Sibling_Site"] : ""; 1115 var settings_Sibling_Boligvisning = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Sibling_Boligvisning"])) ? SettingsItem["Sibling_Boligvisning"] : ""; 1116 var settings_Product_Group = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Product_Group"])) ? SettingsItem["Product_Group"] : ""; 1117 var settings_Boligagent = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Boligagent"])) ? SettingsItem["Boligagent"] : ""; 1118 var settings_Persondatapolitik = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Persondatapolitik"])) ? SettingsItem["Persondatapolitik"] : ""; 1119 1120 // API 1121 var settings_BoligSearchFeed = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoligSearchFeed"])) ? SettingsItem["BoligSearchFeed"] : ""; 1122 var settings_BoligListFeed = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoligListFeed"])) ? SettingsItem["BoligListFeed"] : ""; 1123 var settings_BoligListFeedErhverv = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoligListFeedErhverv"])) ? SettingsItem["BoligListFeedErhverv"] : ""; 1124 var settings_BoligCountFeed = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoligCountFeed"])) ? SettingsItem["BoligCountFeed"] : ""; 1125 var settings_BoligMapFeed = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoligMapFeedErhverv"])) ? SettingsItem["BoligMapFeedErhverv"] : ""; 1126 var settings_AdvisorSearchFeed = "Default.aspx?ID=" + Pageview.Area.Item["AdvisorSearchFeed"]; 1127 1128 // Forside 1129 var settings_FrontpageOverskrift = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["FrontpageOverskrift"])) ? SettingsItem["FrontpageOverskrift"] : ""; 1130 var settings_FrontpageVideo = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["FrontpageVideo"])) ? SettingsItem["FrontpageVideo"] : ""; 1131 var settings_FrontpageVideoImage = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["FrontpageVideoImage"])) ? SettingsItem["FrontpageVideoImage"] : ""; 1132 1133 // Tracking 1134 var settings_Google_Tag_Manager_ID = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Google_Tag_Manager_ID"])) ? SettingsItem["Google_Tag_Manager_ID"] : ""; 1135 var settings_Google_Tag_Manager_ID_BoligOne = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Google_Tag_Manager_ID_BoligOne"])) ? SettingsItem["Google_Tag_Manager_ID_BoligOne"] : ""; 1136 var settings_Facebook_App_ID = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Facebook_App_ID"])) ? SettingsItem["Facebook_App_ID"] : ""; 1137 var settings_Leadhub_Pixel_ID = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["Leadhub_Pixel_ID"])) ? SettingsItem["Leadhub_Pixel_ID"] : ""; 1138 var settings_AntiFlicker_ID = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["AntiFlicker_ID"])) ? SettingsItem["AntiFlicker_ID"] : ""; 1139 1140 // Indstillinger for brugerfunktioner 1141 var settings_ForgotPwPage = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["ForgotPwPage"])) ? SettingsItem["ForgotPwPage"] : ""; 1142 var settings_NewsletterSignup = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["NewsletterSignup"])) ? SettingsItem["NewsletterSignup"] : ""; 1143 var settings_CreateUserModal = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["CreateUserModal"])) ? SettingsItem["CreateUserModal"] : ""; 1144 var settings_LoginModal = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["LoginModal"])) ? SettingsItem["LoginModal"] : ""; 1145 1146 int createUserParagraphId = 0; 1147 int loginParagraphId = 0; 1148 Int32.TryParse(settings_CreateUserModal.ToString(), out createUserParagraphId); 1149 Int32.TryParse(settings_LoginModal.ToString(), out loginParagraphId); 1150 1151 // Use configured search page id for search action which depends on the context. Context can currently be one of: rm, boligone or erhverv. 1152 // Subsequent calls to search page via ajax (sorting, loading, etc) should preserve search context. (vv) 1153 int searchPageId = GetPageSettingsPageId("Boligside"); 1154 if (searchPageId == 0) 1155 { 1156 searchPageId = GetWebsiteSettingsPageId("Boligside"); 1157 } 1158 1159 int boligsideId = GetPageSettingsPageId("Boligside"); 1160 if (boligsideId == 0) 1161 { 1162 boligsideId = GetWebsiteSettingsPageId("Boligside"); 1163 } 1164 1165 string productGroupFilter = String.Empty; 1166 if (Pageview.Page.PropertyItem != null && Pageview.Page.PropertyItem.ContainsKey("Product_Group") && Pageview.Page.PropertyItem["Product_Group"] != null) 1167 { 1168 productGroupFilter = Pageview.Page.PropertyItem["Product_Group"].ToString(); 1169 } 1170 1171 if (GetString("DwAreaFirstActivePageID") == GetString("DwPageID") || GetBoolean("Item.Page.TransparentHeader")) 1172 { 1173 bodyClass += " frontpage"; 1174 bodyClass += " header-transparent"; 1175 1176 } 1177 if (Pageview.Page.PropertyItem != null && Convert.ToBoolean(Pageview.Page.PropertyItem["IsRealFrontpage"])) 1178 { 1179 searchClass = "is-frontpage"; 1180 } 1181 1182 bool isErhverv = false; 1183 if (Pageview.Page.PropertyItem != null && Pageview.Page.PropertyItem.ContainsKey("Erhverv") && Pageview.Page.PropertyItem["Erhverv"] != null) 1184 { 1185 var s = Pageview.Page.PropertyItem["Erhverv"].ToString(); 1186 Boolean.TryParse(s, out isErhverv); 1187 } 1188 1189 bool isBrokerPage = false; 1190 if (!String.IsNullOrEmpty(GetString("Item.Area.M_glerGruppeId.Value"))) 1191 { 1192 isBrokerPage = true; 1193 bodyClass = ""; // Get rid of transparent header on brokerPage 1194 } 1195 1196 string callTrackingId = GetString("Item.Area.CallTrackingId.Value"); 1197 1198 RealEstate.User.Model.BrokerEmployee MyBroker = null; 1199 try 1200 { 1201 var MyB = new RealEstate.User.MyBroker(); 1202 MyBroker = MyB.GetMyBroker(); 1203 } 1204 catch 1205 { 1206 // Ignore 1207 } 1208 1209 string querySearch = (Context.Current.Request.QueryString["search"] != null ? Context.Current.Request.QueryString["search"] : ""); 1210 string querySearchNameAttr = "search"; 1211 // Overwrite search with zipcodeinterval if set 1212 if (Context.Current.Request.QueryString["zipcodeinterval"] != null) 1213 { 1214 querySearch = Context.Current.Request.QueryString["zipcodeinterval"]; 1215 querySearchNameAttr = "zipcodeinterval"; 1216 } 1217 string queryZipCodeFrom = (Context.Current.Request.QueryString["zipcodefrom"] != null ? Context.Current.Request.QueryString["zipcodefrom"] : ""); 1218 string queryZipCodeTo = (Context.Current.Request.QueryString["zipcodeto"] != null ? Context.Current.Request.QueryString["zipcodeto"] : ""); 1219 1220 Dynamicweb.Security.UserManagement.User user = null; 1221 int userID = 0; 1222 string userName = ""; 1223 string userEmail = ""; 1224 string userPhone = ""; 1225 string userZip = ""; 1226 string userAddress = ""; 1227 1228 if (Dynamicweb.Security.UserManagement.User.IsExtranetUserLoggedIn()) 1229 { 1230 user = Dynamicweb.Security.UserManagement.User.GetCurrentExtranetUser(); 1231 userName = user.Name; 1232 userEmail = user.Email; 1233 userPhone = user.Phone; 1234 userZip = user.Zip; 1235 userAddress = user.Address; 1236 userID = user.ID; 1237 } 1238 1239 string markerColor = ""; 1240 string mapMarkerUrl = TemplateUrl + "assets/images/logo-real.png"; 1241 1242 markerColor = "#213960"; 1243 1244 var butikId = string.Empty; 1245 var primaryArea = string.Empty; 1246 string bEmail = string.Empty; 1247 if (MyBroker != null && MyBroker.Broker != null) 1248 { 1249 butikId = MyBroker.Broker.Item().GetString("CBMedlemsnummer"); 1250 primaryArea = MyBroker.Broker.Item().GetString("PrimaertOmraade"); 1251 bEmail = MyBroker.Broker.Item().GetString("Email"); 1252 } 1253 1254 var salesAssessmentPageId = Dynamicweb.Core.Converter.ToString(GetPageIdByNavigationTag("OrderSalesAssessment")); 1255 var termsMail = "info@realmaeglerne.dk"; 1256 } 1257 1258 <!DOCTYPE html> 1259 <html> 1260 <head> 1261 <meta charset="utf-8"> 1262 <title>@MetaTitle</title> 1263 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1"> 1264 <meta name="description" content="@MetaDescription"> 1265 <meta name="keywords" content="@MetaKeywords"> 1266 <meta name="format-detection" content="telephone=no"> 1267 <meta http-equiv="Expires" content="60"> 1268 <meta name="robots" content="@(Pageview.Area.Noindex ? "noindex" : "index"),@(Pageview.Area.Nofollow ? "nofollow" : "follow")"> 1269 @RenderSnippet("OpenGraphTags") 1270 1271 @*FONT AWESOME*@ 1272 <link rel="stylesheet" href="@(TemplateUrl)assets/fontawesome/css/all.css" /> 1273 <link rel="stylesheet" href="@mainCSS" /> 1274 <link rel="stylesheet" href="@erhvervCSS" /> 1275 <link rel="icon" type="image/ico" href="@(TemplateUrl)assets/images/favicons/favicon-real.ico?v=1"> 1276 <link rel="icon" type="image/png" href="@(TemplateUrl)assets/images/favicons/favicon-real-16x16.png" sizes="16x16"> 1277 <link rel="icon" type="image/png" href="@(TemplateUrl)assets/images/favicons/favicon-real-32x32.png" sizes="32x32"> 1278 <link rel="icon" type="image/png" href="@(TemplateUrl)assets/images/favicons/favicon-real-96x96.png" sizes="96x96"> 1279 <meta name="google-site-verification" content="ldo3P1JA2R9wtsYlK2cge26EWxu2gOM-aoQhe2qTukA" /> 1280 1281 @if (!string.IsNullOrEmpty(settings_AntiFlicker_ID.ToString())) 1282 { 1283 <!-- Anti-flicker snippet --> 1284 <style> 1285 .async-hide { 1286 opacity: 0 !important 1287 } 1288 </style> 1289 <script> 1290 (function (a, s, y, n, c, h, i, d, e) { 1291 s.className += ' ' + y; h.start = 1 * new Date; 1292 h.end = i = function () { s.className = s.className.replace(RegExp(' ?' + y), '') }; 1293 (a[n] = a[n] || []).hide = h; setTimeout(function () { i(); h.end = null }, c); h.timeout = c; 1294 })(window, document.documentElement, 'async-hide', 'dataLayer', 4000, 1295 { 'GTM-THN57XP': true });</script> 1296 1297 } 1298 1299 @if (isBrokerPage && !string.IsNullOrEmpty(callTrackingId)) 1300 { 1301 <script type="text/javascript" src="https://call.call-tracking.dk/getJavascript?custid=@callTrackingId"></script> 1302 } 1303 1304 @if (!string.IsNullOrEmpty(Converter.ToString(settings_Google_Tag_Manager_ID))) 1305 { 1306 1307 <!-- Datalaget --> 1308 <script> 1309 window.dataLayer = window.dataLayer || []; 1310 </script> 1311 1312 1313 <!-- Andet --> 1314 <script> 1315 window.dataLayer.push({ 1316 'division': '@(isErhverv ? "b2b" : "b2c")', // 'b2c', 'b2b', 'project' ... 1317 }); 1318 </script> 1319 1320 @RenderSnippet("GtmDatalayer") 1321 1322 <!-- Google Tag Manager --> 1323 <script> 1324 (function (w, d, s, l, i) { 1325 w[l] = w[l] || []; w[l].push({ 1326 'gtm.start': 1327 new Date().getTime(), event: 'gtm.js' 1328 }); var f = d.getElementsByTagName(s)[0], 1329 j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : ''; j.async = true; j.src = 1330 'https://frap.realmaeglerne.dk/gtm.js?id=' + i + dl; f.parentNode.insertBefore(j, f); 1331 })(window, document, 'script', 'dataLayer', '@Converter.ToString(settings_Google_Tag_Manager_ID)'); 1332 </script> 1333 1334 } 1335 1336 @if (!string.IsNullOrEmpty(settings_Leadhub_Pixel_ID.ToString())) 1337 { 1338 <!-- Begin Leadhub Pixel Code --> 1339 <script> 1340 (function(w,d,x,n,u,t,f,s,o){ 1341 f='LHInsights';w[n]=w[f]=w[f]||function(n,d){ 1342 (w[f].q=w[f].q||[]).push([n,d])};w[f].l=1*new Date();s=d.createElement(x); s.async=1;s.src=u+'?t='+t;o=d.getElementsByTagName(x)[0];o.parentNode.insertBefore(s,o) 1343 })(window,document, 'script', 'lhi', '//www.lhinsights.com/agent.js', '@settings_Leadhub_Pixel_ID'); 1344 lhi('pageview'); 1345 </script> 1346 <!-- End Leadhub Pixel Code --> 1347 } 1348 1349 <script> 1350 // Global namespace used for fetching API feeds from DW 1351 var RMAPI = (RMAPI) ? RMAPI : {}; 1352 var ApiPreFix = "/Default.aspx?ID="; 1353 RMAPI.BoligCountFeed = ApiPreFix + "@settings_BoligCountFeed"; 1354 RMAPI.BoligListFeed = ApiPreFix + "@settings_BoligListFeed" + "&refpageid=@Pageview.Page.ID"; 1355 RMAPI.BoligListFeedMaegler = ApiPreFix + "@settings_BoligListFeedMaegler" + "&refpageid=@Pageview.Page.ID"; 1356 RMAPI.BoligSearchFeed = ApiPreFix + "@settings_BoligSearchFeed"; 1357 RMAPI.BoligListFeedErhverv = "@settings_BoligListFeedErhverv"; 1358 RMAPI.BoligMapFeed = ApiPreFix + "@settings_BoligMapFeed"; 1359 RMAPI.Boligagent = "@settings_Boligagent"; 1360 RMAPI.IsErhverv = @isErhverv.ToString().ToLower(); 1361 RMAPI.ProductGroupFilter = "@productGroupFilter"; 1362 RMAPI.ButikId = "@butikId"; 1363 RMAPI.Boligvisning = false; 1364 RMAPI.RefPageId = "@Pageview.Page.ID"; 1365 RMAPI.Template = "@template"; 1366 RMAPI.SliderSettings = @JsonConvert.SerializeObject(Settings.Site); 1367 RMAPI.AdvisorSearchFeed = "@settings_AdvisorSearchFeed"; 1368 RMAPI.LoadingIcon = "@loadingIcon"; 1369 RMAPI.MarkerColor = "@markerColor"; 1370 RMAPI.IsBoligOne = "false"; 1371 RMAPI.mapMarkerUrl = "@mapMarkerUrl"; 1372 RMAPI.settings_ForgotPwPage = "@settings_ForgotPwPage"; 1373 RMAPI.settings_Boligside = "@settings_Boligside"; 1374 1375 </script> 1376 1377 @if (!string.IsNullOrEmpty(settings_Facebook_App_ID.ToString())) 1378 { 1379 <!-- Facebook Pixel Code --> 1380 <script> 1381 !function (f, b, e, v, n, t, s) { 1382 if (f.fbq) return; n = f.fbq = function () { 1383 n.callMethod ? 1384 n.callMethod.apply(n, arguments) : n.queue.push(arguments) 1385 }; 1386 if (!f._fbq) f._fbq = n; n.push = n; n.loaded = !0; n.version = '2.0'; 1387 n.queue = []; t = b.createElement(e); t.async = !0; 1388 t.src = v; s = b.getElementsByTagName(e)[0]; 1389 s.parentNode.insertBefore(t, s) 1390 }(window, document, 'script', 1391 'https://connect.facebook.net/en_US/fbevents.js'); 1392 fbq('init', '@settings_Facebook_App_ID'); 1393 fbq('track', 'PageView'); 1394 </script> 1395 <noscript> 1396 <img height="1" width="1" src="https://www.facebook.com/tr?id=@settings_Facebook_App_ID&ev=PageView&noscript=1" /> 1397 </noscript> 1398 <!-- End Facebook Pixel Code --> 1399 } 1400 1401 </head> 1402 1403 <body class="@template@bodyClass" data-spsalesassesmentid="@salesAssessmentPageId"> 1404 @if (GetPageIdByNavigationTag("ErhvervFrontPage") != Pageview.ID) 1405 { 1406 <div class="top-search"> 1407 <div class="header logo"> 1408 <div class="logo"> 1409 <a href="/erhverv"> 1410 <img src="@logoUrl" alt='@("RealMæglerne")' /> 1411 </a> 1412 </div> 1413 </div> 1414 <div class="top-form mx-auto"> 1415 <form id="main-search-top" class="js-top-search" action="/Default.aspx" method="GET"> 1416 @{ 1417 var erhvervSearchPageId = !string.IsNullOrEmpty(Converter.ToString(SettingsItem["BoliglisteErhverv"])) ? Converter.ToString(SettingsItem["BoliglisteErhverv"]).Replace("Default.aspx?Id=", "") : ""; 1418 } 1419 <input type="hidden" name="ID" value='@erhvervSearchPageId' id="searchPageId-top" disabled="disabled" /> 1420 1421 @if (Context.Current.Request["type"] == "egetforbrug") 1422 { 1423 <input name="type" type="hidden" value="egetforbrug" /> 1424 <input name="investeringsejendom" type="hidden" value="0" /> 1425 } 1426 <div class="row form-wrapper no-gutters"> 1427 <div class="col-xs-12 col-md-4 col-lg-5 col-searchbar"> 1428 <div class="searchbar float-label-container text-left"> 1429 <label class="float-label">@Translate("Smartpage:Erhver.Postnummer, by, vej eller sagsnummer", "Postnummer, by, vej eller sagsnummer")</label> 1430 <input type="text" name="@querySearchNameAttr" id="searchfield-top" class="search-input js-float-label js-getdata" tabindex="1" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(querySearch)" /> 1431 </div> 1432 </div> 1433 <div class="col-xs-12 col-md-5"> 1434 <div class="row no-gutters"> 1435 <div class="col-xs-12 col-md-6 input-col"> 1436 <div class="dropdown w-overlay float-label-container"> 1437 <label class="float-label" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">@Translate("Smartpage:Search.Erhverv.Lokaletype", "Lokaletype")</label> 1438 <button class="btn btn-dropdown dropdown-toggle reverse position-absolute-md" type="button" id="Boligtype-frontpage" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"></button> 1439 <div class="dropdown-menu box-shadow bolig-dropdown-container" aria-labelledby="Boligtype"> 1440 <ul class="bolig-dropdown list-unstyled"> 1441 @{ 1442 RenderBoligTypeErhverv(); 1443 } 1444 </ul> 1445 <span class="border-fat"></span> 1446 <div class="d-none d-md-block"> 1447 <button class="btn btn-primary js-close-dropdown">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 1448 </div> 1449 <div class="d-flex row d-md-none"> 1450 <div class="col-6"> 1451 <button class="btn btn-danger js-remove-filter">@Translate("Smartpage:Search.Annuller", "Annuller")</button> 1452 </div> 1453 <div class="col-6"> 1454 <button class="btn btn-primary js-close-dropdown">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 1455 </div> 1456 </div> 1457 </div> 1458 1459 </div> 1460 </div> 1461 <div class="col-xs-12 col-md-6 input-col"> 1462 <div class="btn-dropdown p-3 border-top-bottom-right"> 1463 <ul class="two-column list-unstyled"> 1464 <li> 1465 <label class="checkbox-container"> 1466 @Translate("Smartpage:Search.Erhverv.Leje", "Leje") 1467 <input type="checkbox" name="propertytype" value="leje" class="js-input-check" /> 1468 <span class="checkmark"></span> 1469 </label> 1470 </li> 1471 <li> 1472 <label class="checkbox-container"> 1473 @Translate("Smartpage:Search.Erhverv.Køb", "Køb") 1474 <input type="checkbox" name="propertytype" value="kob" class="js-input-check" /> 1475 <span class="checkmark"></span> 1476 </label> 1477 </li> 1478 </ul> 1479 </div> 1480 1481 </div> 1482 </div> 1483 </div> 1484 <div class="col-xs-12 col-md-3 col-lg-2 d-none d-md-block"> 1485 <button type="submit" class="btn btn-block btn-search"><i class="fa fa-search"></i> @Translate("Smartpage:Search.Søg", "Søg")</button> 1486 </div> 1487 </div> 1488 </form> 1489 </div> 1490 </div> 1491 <div class="search-modal"> 1492 <div class="main-search-form frontpage"> 1493 <div class="dropdown-overlay"></div> 1494 <div class="nav nav-tabs row js-switch-pos"> 1495 <div class="col-12 col-md-6 tab left"><button class="blank active" data-toggle="tab" href="#home">@Translate("Smartpage:Erhver.Eget brug", "Eget brug")</button></div> 1496 <div class="col-12 col-md-6 tab"><button class="blank" data-toggle="tab" href="#investment">@Translate("Smartpage:Erhver.Investering", "Investering")</button></div> 1497 </div> 1498 <form id="main-search-frontpage" class="searchbar-wrapper erhverv" action="/Default.aspx" method="GET"> 1499 <input type="hidden" name="ID" value='@erhvervSearchPageId' id="searchPageId-frontpage" disabled="disabled" /> 1500 <div class="tab-content mt-2"> 1501 <div id="home" class="tab-pane fade in active show"> 1502 <input name="type" type="hidden" value="egetforbrug" /> 1503 <input name="investeringsejendom" type="hidden" value="0" /> 1504 <div class="row mb-3 align-items-center mt-3"> 1505 <div class="col-xs-12"> 1506 <h3>@Translate("Smartpage:Search.Erhverv.Søg erhvervs", "Søg erhvervs") <span class="thin">- @Translate("Smartpage:Search.Erhverv.lokaler/ejendomme", "lokaler/ejendomme")</span></h3> 1507 </div> 1508 </div> 1509 <div class="row form-wrapper no-gutters"> 1510 <div class="col-xs-12 col-md-4 col-lg-5 col-searchbar"> 1511 <div class="searchbar float-label-container"> 1512 <label class="float-label">@Translate("Smartpage:Erhver.Postnummer, by, vej eller sagsnummer", "Postnummer, by, vej eller sagsnummer")</label> 1513 <input type="text" name="@querySearchNameAttr" id="searchfield-frontpage" class="search-input js-float-label js-getdata" tabindex="1" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(querySearch)" /> 1514 <input type="hidden" id="zipcodefrom-frontpage" name="zipcodefrom" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(queryZipCodeFrom)" /> 1515 <input type="hidden" id="zipcodeto-frontpage" name="zipcodeto" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(queryZipCodeTo)" /> 1516 </div> 1517 </div> 1518 <div class="col-xs-12 col-md-5"> 1519 <div class="row no-gutters"> 1520 <div class="col-xs-12 col-md-6 input-col"> 1521 <div class="dropdown w-overlay float-label-container"> 1522 <label class="float-label" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">@Translate("Smartpage:Search.Erhverv.Lokaletype", "Lokaletype")</label> 1523 <button class="btn btn-dropdown dropdown-toggle reverse position-absolute-md" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"></button> 1524 <div class="dropdown-menu box-shadow bolig-dropdown-container" aria-labelledby="Boligtype"> 1525 <ul class="bolig-dropdown list-unstyled"> 1526 @{ 1527 RenderBoligTypeErhverv(); 1528 } 1529 </ul> 1530 <span class="border-fat"></span> 1531 <div class="d-none d-md-block"> 1532 <button class="btn btn-primary js-close-dropdown">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 1533 </div> 1534 <div class="d-flex row d-md-none"> 1535 <div class="col-6"> 1536 <button class="btn btn-danger js-remove-filter">@Translate("Smartpage:Search.Annuller", "Annuller")</button> 1537 </div> 1538 <div class="col-6"> 1539 <button class="btn btn-primary js-close-dropdown">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 1540 </div> 1541 </div> 1542 </div> 1543 1544 </div> 1545 </div> 1546 <div class="col-xs-12 col-md-6 input-col"> 1547 <div class="btn-dropdown p-3 border-top-bottom-right"> 1548 <ul class="two-column list-unstyled"> 1549 <li> 1550 <label class="checkbox-container"> 1551 @Translate("Smartpage:Search.Erhverv.Leje", "Leje") 1552 <input type="checkbox" name="udbudsform" value="Leje" /> 1553 <span class="checkmark"></span> 1554 </label> 1555 </li> 1556 <li> 1557 <label class="checkbox-container"> 1558 @Translate("Smartpage:Search.Erhverv.Køb", "Køb") 1559 <input type="checkbox" name="udbudsform" value="Salg" /> 1560 <span class="checkmark"></span> 1561 </label> 1562 </li> 1563 </ul> 1564 </div> 1565 1566 </div> 1567 </div> 1568 </div> 1569 <div class="col-xs-12 col-md-3 col-lg-2 d-none d-md-block"> 1570 <button type="submit" class="btn btn-block btn-search"><i class="fa fa-search"></i> @Translate("Smartpage:Search.Søg", "Søg")</button> 1571 </div> 1572 </div> 1573 <div class="row d-block d-md-none form-wrapper no-gutters"> 1574 <div class="col-xs-12 col-md-2"> 1575 <button type="submit" class="btn btn-block btn-search"><i class="fa fa-search"></i> @Translate("Smartpage:Search.Søg", "Søg")</button> 1576 </div> 1577 </div> 1578 </div> 1579 <div id="investment" class="tab-pane fade"> 1580 <input name="type" type="hidden" value="invenstment" /> 1581 <input name="investeringsejendom" type="hidden" value="1" /> 1582 <div class="row mb-3 align-items-center mt-3"> 1583 <div class="col-xs-12"> 1584 <h3>@Translate("Smartpage:Search.Erhverv.Søg investerings", "Søg investerings") <span class="thin">- @Translate("Smartpage:Search.Erhverv.lokaler/ejendomme", "lokaler/ejendomme")</span></h3> 1585 </div> 1586 </div> 1587 <div class="row form-wrapper no-gutters"> 1588 <div class="col-xs-12 col-md-4 col-lg-5 col-searchbar"> 1589 <div class="searchbar float-label-container"> 1590 <label class="float-label">@Translate("Smartpage:Erhver.Postnummer, by, vej eller sagsnummer", "Postnummer, by, vej eller sagsnummer")</label> 1591 <input type="text" name="@querySearchNameAttr" id="searchfield-frontpage-invest" class="search-input js-float-label js-getdata" tabindex="1" value="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(querySearch)" /> 1592 </div> 1593 </div> 1594 <div class="col-xs-12 col-md-5"> 1595 <div class="row no-gutters"> 1596 <div class="col-xs-12 col-md-6 input-col"> 1597 <div class="dropdown w-overlay float-label-container"> 1598 <label class="float-label" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">@Translate("Smartpage:Search.Erhverv.Lokaletype", "Lokaletype")</label> 1599 <button class="btn btn-dropdown dropdown-toggle reverse position-absolute-md" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"></button> 1600 <div class="dropdown-menu box-shadow bolig-dropdown-container" aria-labelledby="Boligtype"> 1601 <ul class="bolig-dropdown list-unstyled"> 1602 @{ 1603 RenderBoligTypeErhvervInvest(); 1604 } 1605 </ul> 1606 <span class="border-fat"></span> 1607 <div class="d-none d-md-block"> 1608 <button class="btn btn-primary js-close-dropdown">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 1609 </div> 1610 <div class="d-flex row d-md-none"> 1611 <div class="col-6"> 1612 <button class="btn btn-danger js-remove-filter">@Translate("Smartpage:Search.Annuller", "Annuller")</button> 1613 </div> 1614 <div class="col-6"> 1615 <button class="btn btn-primary js-close-dropdown">@Translate("Smartpage:Search.Anvend", "Anvend")</button> 1616 </div> 1617 </div> 1618 </div> 1619 1620 </div> 1621 </div> 1622 <div class="col-xs-12 col-md-6 input-col"> 1623 <div class="btn-dropdown p-3 border-top-bottom-right"> 1624 <ul class="two-column list-unstyled"> 1625 <li> 1626 <label class="checkbox-container"> 1627 @Translate("Smartpage:Search.Erhverv.Køb", "Køb") 1628 <input type="checkbox" name="udbudsform" value="salg" class="js-input-check" /> 1629 <span class="checkmark"></span> 1630 </label> 1631 </li> 1632 </ul> 1633 </div> 1634 1635 </div> 1636 </div> 1637 </div> 1638 <div class="col-xs-12 col-md-3 col-lg-2 d-none d-md-block"> 1639 <button type="submit" class="btn btn-block btn-search"><i class="fa fa-search"></i> @Translate("Smartpage:Search.Søg", "Søg")</button> 1640 </div> 1641 </div> 1642 <div class="row d-block d-md-none form-wrapper no-gutters"> 1643 <div class="col-xs-12 col-md-2"> 1644 <button type="submit" class="btn btn-block btn-search"><i class="fa fa-search"></i> @Translate("Smartpage:Search.Søg", "Søg")</button> 1645 </div> 1646 </div> 1647 </div> 1648 </div> 1649 </form> 1650 </div> 1651 </div> 1652 } 1653 <div class="header logo"> 1654 <div class="logo"> 1655 <a href="/erhverv"> 1656 <img src="@logoUrl" alt='@("RealMæglerne")' /> 1657 </a> 1658 </div> 1659 </div> 1660 1661 <div class="header shortcuts"> 1662 <div class="header-shortcuts float-right"> 1663 @if (GetPageIdByNavigationTag("ErhvervFrontPage") != Pageview.ID) 1664 { 1665 <a href='' class="search-menu d-none d-xl-flex align-items-center float-left border-right js-mainsearch @searchClass"> 1666 <i class="fa fa-search" aria-hidden="true"></i><span class="search-menu-text hidden d-md-block"> @Translate("Smartpage:Search.Søg", "Søg")</span> 1667 </a> 1668 } 1669 <div class="menu-slide d-flex align-items-center"> 1670 <b></b> 1671 <span class="menu-text hidden d-md-block">Menu</span> 1672 </div> 1673 </div> 1674 </div> 1675 @{ 1676 RenderSlideMenu(false, true, ""); 1677 } 1678 1679 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 1680 @using Custom.Integration.Brokers; 1681 @using Newtonsoft.Json; 1682 @using RealMaeglerne.Dynamicweb; 1683 @using RealMaeglerne.Dynamicweb.Models; 1684 @using Dynamicweb.Core; 1685 @using Dynamicweb; 1686 @using RealMaeglerne.Library; 1687 1688 1689 @GetValue("Title(Forside)") 1690 @GetValue("Description(Forsideskabelon til Mæglersider)") 1691 @{ 1692 string siteUrl = Utils.GetBaseUrl(true); 1693 var Broker = GetValue("Real:Broker") as Dynamicweb.Security.UserManagement.UserGroup; 1694 string brokerName = Broker.Name; 1695 if (!string.IsNullOrEmpty(Broker.CompanyName)) 1696 { 1697 brokerName = Broker.CompanyName; 1698 } 1699 string brokerPhone = RealMaeglerne.Library.Helper.FormatPhoneNumber(Broker.Telephone); 1700 string brokerEmail = Broker.Item().GetString("Email"); 1701 string brokerID = Broker.ID.ToString(); 1702 string brokerRating = ""; 1703 string brokerImage = Broker.GeolocationIcon.ToString(); 1704 string brokerUrl = siteUrl + GetString("DwAreaName"); 1705 string brokerTitle = GetString("Item.SPTitleForDesc"); 1706 string brokerDesc = GetString("Item.Beskrivelse"); 1707 string teaserDesc = System.Text.RegularExpressions.Regex.Replace(brokerDesc, "<[^>]*>", string.Empty); 1708 if (teaserDesc.Length > 300) 1709 { 1710 teaserDesc = teaserDesc.Substring(0, 300) + "..."; 1711 } 1712 if (!string.IsNullOrEmpty(Broker.Item().GetString("Rating"))) 1713 { 1714 brokerRating = Broker.Item().GetString("Rating"); 1715 } 1716 string brokerBadgeBesvarelser = ""; 1717 if (!string.IsNullOrEmpty(Broker.Item().GetString("BadgeBesvarelser"))) 1718 { 1719 brokerBadgeBesvarelser = Broker.Item().GetString("BadgeBesvarelser"); 1720 } 1721 1722 butikId = Broker.Item().GetString("CBMedlemsnummer"); 1723 primaryArea = Broker.Item().GetString("PrimaertOmraade"); 1724 1725 string brugerId = String.Empty; 1726 try 1727 { 1728 brugerId = Dynamicweb.Security.UserManagement.User.GetCurrentUserID().ToString(); 1729 } 1730 catch 1731 { 1732 // Ignore 1733 } 1734 1735 var Aabningstider = JsonConvert.DeserializeObject<ForretningsoplysningerAabningstider>(Broker.Item().GetString("AabningstiderJson")); 1736 } 1737 1738 @SnippetStart("OpenGraphTags") 1739 1740 <meta property="og:type" content="website" /> 1741 <meta property="og:url" content="@Dynamicweb.Core.Encoders.HtmlEncoder.HtmlAttributeEncode(Context.Current.Request.Url.AbsoluteUri)" /> 1742 <meta property="og:image" content="@brokerImage" /> 1743 <meta property="og:title" content="@brokerName" /> 1744 <meta property="og:description" content="@teaserDesc" /> 1745 1746 @SnippetEnd("OpenGraphTags") 1747 1748 @SnippetStart("JavaScriptBottom") 1749 <script type="application/ld+json"> 1750 { 1751 "@@context": "http://schema.org", 1752 "@@type": "RealEstateAgent", 1753 "image": "@(brokerImage)", 1754 "@@id": "@(brokerUrl)", 1755 "name": "@(brokerName)", 1756 "address": { 1757 "@@type": "PostalAddress", 1758 "streetAddress": "@(Broker.Address.ToString())", 1759 "addressLocality": "@(Broker.City.ToString())", 1760 "postalCode": "@(Broker.ZipCode.ToString())", 1761 "addressCountry": "DK" 1762 }, 1763 "geo": { 1764 "@@type": "GeoCoordinates", 1765 "latitude": @(Broker.GeolocationLatitude.ToString().Replace(',', '.')), 1766 "longitude": @(Broker.GeolocationLongitude.ToString().Replace(',', '.')) 1767 }, 1768 @if (!string.IsNullOrEmpty(brokerRating) 1769 && !string.IsNullOrEmpty(brokerBadgeBesvarelser) 1770 && Convert.ToDouble(brokerRating, System.Globalization.CultureInfo.InvariantCulture) >= 8.5) 1771 { 1772 <text>"aggregateRating": { 1773 "@@type":"AggregateRating", 1774 "bestRating":"10.0", 1775 "ratingValue":"@brokerRating", 1776 "worstRating":"0.0", 1777 "reviewCount":"@brokerBadgeBesvarelser" 1778 },</text> 1779 } 1780 "url": "@(brokerUrl)", 1781 "telephone": "+45 @(RealMaeglerne.Library.Helper.FormatPhoneNumber(Broker.Telephone))" 1782 } 1783 </script> 1784 1785 <script> 1786 var RMAPI = (RMAPI) ? RMAPI : {}; 1787 RMAPI.brokerImage = "@(brokerImage)"; 1788 RMAPI.CBMedlemsnummer = "@(Broker.Item().GetString("CBMedlemsnummer"))"; 1789 RMAPI.CompanyName = "@(Broker.CompanyName)"; 1790 RMAPI.AddressZip = "@($"{Broker.Address}, {Broker.ZipCode}")"; 1791 RMAPI.Telephone = "@(Broker.Telephone)"; 1792 RMAPI.Email = "@(Broker.Item().GetString("Email"))"; 1793 RMAPI.GeolocationIcon = "@(Broker.GeolocationIcon.ToString())"; 1794 RMAPI.City = "@Broker.City"; 1795 RMAPI.ButikId = "@butikId"; 1796 </script> 1797 1798 <script type="text/javascript" src='/Files/Templates/Designs/rm/assets/dist/bundle.maegler.min.js'></script> 1799 1800 1801 @SnippetEnd("JavaScriptBottom") 1802 1803 @if (!string.IsNullOrEmpty(Broker.GeolocationIcon.ToString())) 1804 { 1805 <section class="maegler-header" style="background-image: url('@brokerImage');"></section> 1806 } 1807 <section class="maegler-page"> 1808 <div class="container"> 1809 <div class="page"> 1810 <div class="content"> 1811 <div class="row no-gutters"> 1812 <div class="col-12 col-lg-6 p-45"> 1813 <div class="border-right blue"> 1814 <h1 class="sp-broker-title-style js-choose-broker-name-val">@brokerName</h1> 1815 <div class="read-more-cont"> 1816 <div class="text-min"> 1817 @brokerDesc.TruncateHtml(500)<span class="read-more">.. <b>@Translate("product-read-more", "læs mere")</b></span> 1818 </div> 1819 <div class="text-full" style="display: none;"> 1820 @brokerDesc<span class="read-less">.. <b>@Translate("product-read-less", "læs mindre")</b></span> 1821 </div> 1822 </div> 1823 1824 </div> 1825 </div> 1826 <div class="col-12 col-lg-3 p-30"> 1827 @if (!string.IsNullOrEmpty(GetString("Item.Area.USP"))) 1828 { 1829 <ul class="usp fa-ul"> 1830 @{ 1831 string[] uspSplit = GetString("Item.Area.USP").Split(','); 1832 for (var i = 0; i < uspSplit.Length; i++) 1833 { 1834 <li><span class="fa-li"><i class="fas fa-check"></i><i class="fas fa-circle"></i></span>@uspSplit[i]</li> 1835 if (i == 2) 1836 { 1837 break; 1838 } 1839 } 1840 } 1841 </ul> 1842 } 1843 <p> 1844 <span class="js-choose-broker-address-val">@Broker.Address<br></span> 1845 <span class="js-choose-broker-zip">@Broker.ZipCode @Broker.City<br></span> 1846 @if (!string.IsNullOrEmpty(brokerEmail)) 1847 { 1848 <text>Mail: <a href='mailto:@brokerEmail'>@brokerEmail</a><br></text> 1849 } 1850 @if (!string.IsNullOrEmpty(brokerPhone)) 1851 { 1852 <text>Tlf.: <a href="tel:@brokerPhone">@brokerPhone</a></text> 1853 } 1854 </p> 1855 1856 </div> 1857 1858 <div class="col-xs-12 col-md-4 col-lg-3 light-blue p-30"> 1859 <h3 class="big">@Translate("Smartpage:Erhverv.Mægler.Skal du sælge dine lokaler eller ejendom?", "Skal du sælge dine lokaler eller ejendom?")</h3> 1860 <br /> 1861 @{ 1862 var dpmaegler = "" + Context.Current.Session["DP"] + "Mæglervisning" + ""; 1863 } 1864 <a class="btn btn-primary btn-block btn-left" href="#bestilSalgsvurdering">@Translate("form-vurdering-cta", "Bestil vurdering") <i class="fal fa-angle-right"></i></a> 1865 <a class="btn btn-default btn-block btn-left" href="javascript:panelKontaktmaegler('Mæglervisning');">@Translate("Smartpage:KontaktMægler", "Kontakt mægler") <i class="fal fa-angle-right"></i></a> 1866 </div> 1867 </div> 1868 </div> 1869 </div> 1870 </div> 1871 </section> 1872 @* Render boliglist *@ 1873 1874 <div class="dwcontent" id="content-main" title="Main content" data-settings="unwrap: true;"></div> 1875 @GetValue("DwContent(contentmain)") 1876 1877 <div id="bestilSalgsvurdering" class="salgsvurdering-container" style="background-color: #00182b; padding: 50px 0px;"> 1878 <div class="u-full-height"> 1879 <div class="grid bestil-salgsvurdering-item dw-mod"> 1880 <div class="grid__col- col-lg-12 col-sm-12 rhs"> 1881 <div class="salgsvurdering-form"> 1882 <div class="top-section"> 1883 <div class="header"> 1884 @Translate("Smartpage:Form.Salgsvurdering.Erhverv.Header", "Bestil vurdering") 1885 </div> 1886 <div class="description"> 1887 @Translate("Smartpage:Form.Salgsvurdering.Erhverv.Description", "Skriv adressen på den ejendom, som du ønsker vurderet og dine kontaktoplysninger")<i class="icon fas fa-question-circle"></i> 1888 </div> 1889 </div> 1890 <form id="bestil-salgsvurdering" class="buyer-advisor-form js-buyer-advisor-form" method="POST" action="/InboxHandler"> 1891 <p>@Translate("form-salgsvurdering-beskrivelse", "")</p> 1892 <div class="form-group-container"> 1893 <div class="form-group"> 1894 <input class="form-control js-autocomplete-city" type="hidden" readonly /> 1895 <input class="form-control js-autocomplete-postnummer" data-is-on-broker-page="true" data-primary-area="" type="hidden" pattern="^[0-9]*$" maxlength="4" name="postnummer" placeholder='@Translate("Smartpage:Salgsvurdering.Erhverv.Placeholder.Adresse", "Post nr")' value="" required /> 1896 <input type="hidden" class="js-postnummer-validation" /> 1897 <input type="hidden" class="form-control js-autocomplete-adresse" name="adresse" /> 1898 </div> 1899 1900 <div class="form-group mr-3 address"> 1901 <div class="autocomplete-container"> 1902 <input id="dawa-autocomplete-input" class="form-control js-adresse" name="autocompleteAdresse" type="search" placeholder='@Translate("Smartpage:Salgsvurdering.Erhverv.Placeholder.Zip", "Adresse")*' value="" required data-message='@Translate("Smartpage:Form.Validation.Error.Adresse", "Indtast venligst en gyldig adresse")' data-is-on-broker-page='true' /> 1903 </div> 1904 </div> 1905 1906 <div class="form-group mr-3"> 1907 <input class="form-control js-navn" type="text" name="navn" placeholder='@Translate("Smartpage:Salgsvurdering.Erhverv.Placeholder.Navn", "Navn")*' value='' required data-message='@Translate("Smartpage:Form.Validation.Error.Navn", "Indtast venligst dit navn")' /> 1908 </div> 1909 1910 <div class="form-group mr-3"> 1911 <input class="form-control js-email" type="email" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" name="email" placeholder='@Translate("Smartpage:Salgsvurdering.Erhverv.Placeholder.Email", "E-mail")*' value='' required data-message='@Translate("Smartpage:Form.Validation.Error.Email", "Indtast venligst din e-mail")' /> 1912 </div> 1913 1914 <div class="form-group mr-3"> 1915 <input class="form-control js-telefonnummer" type="tel" pattern="^[0-9]*$" maxlength="20" name="telefonnummer" placeholder='@Translate("Smartpage:Salgsvurdering.Erhverv.Placeholder.Telefon", "Telefon")*' value='' required data-message='@Translate("Smartpage:Form.Validation.Error.Telefon", "Indtast venligst dit telefonnummer")' /> 1916 </div> 1917 </div> 1918 <button class="comment-button text-left js-collapse-focus" type="button" data-toggle="collapse" data-target="#salgsvurdering-collapse" aria-expanded="false" aria-controls="salgsvurdering-collapse"> 1919 <i class="icon fas fa-plus"></i><span class="text">@Translate("Smartpage:Salgsvurdering.Erhverv.Skrivenkommentar", "Tilføj kommentar til mægler")</span> 1920 </button> 1921 1922 <div class="collapse" id="salgsvurdering-collapse"> 1923 <div class="form-group"> 1924 <textarea class="form-control" name="besked" placeholder='@Translate("form-besked-max", "Skriv en besked på max 150 tegn")' maxlength="150"></textarea> 1925 </div> 1926 </div> 1927 1928 1929 <div class="form-group mt-3 mb-2"> 1930 <div class="checkbox"> 1931 <label> 1932 <input class="js-kontaktmigok" type="checkbox" name="kontaktmigok" required data-message='@Translate("Smartpage:Form.Validation.Error.Kontakt", "Afkryds dette felt så vi kan kontakte dig med salgsvurderingen")' /> 1933 <span class="consent-checkbox">@Translate("Smartpage:Salgsvurdering.Erhverv.KontaktOk", "Ja, RealMæglerne må kontakte mig. ") @Translate("Smartpage:Salgsvurdering.PrivacyPolicyText", "Ved at bestille en vurdering accepterer du vores brug af") <a class="link" href="@settings_Persondatapolitik"> @Translate("Smartpage:PrivacyPolicyText.PersonalInfo", "personlige oplysninger")</a></span> 1934 </label> 1935 </div> 1936 </div> 1937 <div class="form-group mb-0"> 1938 <button type="submit" class="btn btn-primary btn-light-blue btn-block js-buyer-advisor-button" onclick="document.getElementById('oneBrokerToChoose').click();">@Translate("form-salgsvurdering-submitbtn", "Bestil gratis salgsvurdering")</button> 1939 </div> 1940 <input type="hidden" name="fn" value="bsv" /> 1941 <input type="hidden" name="origin" class="js-salgsvurdering-origin" value="SalgsvurderingBrokerPage" /> 1942 <input type="hidden" name="brugerId" value="" /> 1943 <input type="hidden" name="areaid" value="@Pageview.AreaID" /> 1944 <input type="hidden" id="boligvisning" name="boligvisning" value="" /> 1945 <input type="hidden" id="panel-salgsvurdering-butikid" name="butikId" value="@butikId" /> 1946 <input type="hidden" id="panel-salgsvurdering-sagsnr" name="sagsnr" value="" /> 1947 <input type="hidden" name="ejendomstype" value="" /> 1948 <input type="hidden" name="salgspris" value="" /> 1949 <input type="hidden" name="employee" value="" /> 1950 <input type="hidden" name="modtager" value="" /> 1951 <input class="js-value-check" type="hidden" name="valueCheck" value="" /> 1952 <input class="js-green-appraisal" type="hidden" name="greenAppraisal" value="" /> 1953 </form> 1954 1955 </div> 1956 <div id="tak-salgsvurdering" class="salgsvurdering-confirmation" style="display:none;"> 1957 <div class="header"> 1958 @Translate("Smartpage:Form.Salgsvurdering.Erhverv.Confirmation.Header", "Tak for din interesse") 1959 </div> 1960 <div class="description"> 1961 @Translate("Smartpage:Form.Salgsvurdering.Erhverv.Confirmation.Description", "Du vil snarest blive kontaktet af en af vores medarbejdere.") 1962 </div> 1963 </div> 1964 </div> 1965 </div> 1966 </div> 1967 </div> 1968 @if (GetLoop("Real:Broker.Employees").Count > 0) 1969 { 1970 <section class="brokers"> 1971 <div class="container"> 1972 <h2 class="text-center mt-4">Medarbejdere</h2> 1973 <div class="broker-list row"> 1974 @{ 1975 foreach (var employee in GetLoop("Real:Broker.Employees")) 1976 { 1977 string employeePhone = RealMaeglerne.Library.Helper.FormatPhoneNumber(employee.GetString("PhoneMobile")); 1978 string employeeEmail = RealMaeglerne.Library.Helper.ExtractMaskedEmail(employee.GetString("Email")); 1979 string employeeImage = ""; 1980 string employeeClass = "na"; 1981 1982 employeeImage = "/Files/Templates/Designs/rm/assets/images/na-real.png"; 1983 1984 bool CanSelect = employee.GetBoolean("MyEmployee"); 1985 if (!string.IsNullOrEmpty(employee.GetString("Image"))) 1986 { 1987 employeeImage = employee.GetString("Image"); 1988 employeeClass = ""; 1989 } 1990 if (!string.IsNullOrEmpty(employee.GetString("ImageWithBackground"))) 1991 { 1992 employeeImage = employee.GetString("ImageWithBackground"); 1993 employeeClass = ""; 1994 } 1995 1996 <div class="din-maegler col-12 col-lg-6 p-50"> 1997 <div class="row h-100"> 1998 <div class="col-12 box-shadow"> 1999 <div class="row h-100"> 2000 <div class="col-12 col-sm-6"> 2001 <div class="img-wrapper @employeeClass" style="background-image:url('@employeeImage')"> 2002 </div> 2003 </div> 2004 <div class="col-12 col-md-6 py-4"> 2005 <h4>@(employee.GetValue("Name"))</h4> 2006 @if (!string.IsNullOrEmpty(employee.GetString("JobTitle"))) 2007 { 2008 <p>@employee.GetString("JobTitle")</p> 2009 } 2010 <div class="icon-container"> 2011 <i class="fas fa-envelope"></i> 2012 @if (!string.IsNullOrEmpty(employeeEmail)) 2013 { 2014 <span>Mail: <a href='mailto:@(employeeEmail)'>@(employeeEmail)</a></span> 2015 } 2016 </div> 2017 <div class="icon-container mb-2"> 2018 <i class="fas fa-phone"></i> 2019 @if (!string.IsNullOrEmpty(employeePhone)) 2020 { 2021 <span>Tlf.: <a href='tel:@(employeePhone)'>@(employeePhone)</a></span> 2022 } 2023 </div> 2024 <a class="btn btn-border blue btn-left mt-2" href="javascript:panelKontaktmaegler('@Context.Current.Session["DP"]Mæglervisning');">@Translate("Smartpage:Kontakt", "Kontakt") <i class="fal fa-angle-right"></i></a> 2025 </div> 2026 </div> 2027 </div> 2028 </div> 2029 </div> 2030 } 2031 } 2032 </div> 2033 </div> 2034 </section> 2035 } 2036 2037 <section class="maegler-bottom"> 2038 <div class="container"> 2039 <h2 class="text-center mt-4">@brokerName</h2> 2040 <div class="row"> 2041 <div class="col-12 col-lg-6"> 2042 <img class="img-fluid" src="@brokerImage" /> 2043 </div> 2044 <div class="col-12 col-lg-6"> 2045 <div class="row"> 2046 <div class="col-12"> 2047 <div class="box-shadow"> 2048 <div class="row"> 2049 @if (Aabningstider != null) 2050 { 2051 <div class="col-12"> 2052 <h3>@Translate("Smartpage:Åbningstider", "Åbningstider")</h3> 2053 </div> 2054 } 2055 <div class="col-6"> 2056 @if (Aabningstider != null) 2057 { 2058 <table> 2059 <tr> 2060 <td>@Translate("Smartpage:Mandag", "Mandag")</td> 2061 <td align="right"><b>@Aabningstider.Mandag</b></td> 2062 </tr> 2063 <tr> 2064 <td>@Translate("Smartpage:Tirsdag", "Tirsdag")</td> 2065 <td align="right"><b>@Aabningstider.Tirsdag</b></td> 2066 </tr> 2067 <tr> 2068 <td>@Translate("Smartpage:Onsdag", "Onsdag")</td> 2069 <td align="right"><b>@Aabningstider.Onsdag</b></td> 2070 </tr> 2071 <tr> 2072 <td>@Translate("Smartpage:Torsdag", "Torsdag")</td> 2073 <td align="right"><b>@Aabningstider.Torsdag</b></td> 2074 </tr> 2075 <tr> 2076 <td>@Translate("Smartpage:Fredag", "Fredag")</td> 2077 <td align="right"><b>@Aabningstider.Fredag</b></td> 2078 </tr> 2079 @if (Aabningstider.Loerdag == Aabningstider.Soendag) 2080 { 2081 <tr> 2082 <td>@Translate("Smartpage:LødagSøndag", "Lørdag - søndag")</td> 2083 <td align="right"><b>@Aabningstider.Loerdag</b></td> 2084 </tr> 2085 } 2086 else 2087 { 2088 <tr> 2089 <td>@Translate("Smartpage:Lørdag", "Lørdag")</td> 2090 <td align="right"><b>@Aabningstider.Loerdag</b></td> 2091 </tr> 2092 <tr> 2093 <td>@Translate("Smartpage:Søndag", "Søndag")</td> 2094 <td align="right"><b>@Aabningstider.Soendag</b></td> 2095 </tr> 2096 } 2097 </table> 2098 } 2099 </div> 2100 <div class="col-12 col-lg-6 text-center text-lg-left"> 2101 @if (!string.IsNullOrEmpty(Converter.ToString(Pageview.Area.Item["FacebookLink"]))) 2102 { 2103 <a href='@Pageview.Area.Item["FacebookLink"]' target="_blank"> 2104 <p class="d-inline-block d-lg-block"><i class="fab fa-facebook-f"></i> @Translate("Smartpage:SocialLinks.Facebook", "Facebook")</p> 2105 </a> 2106 } 2107 @if (!string.IsNullOrEmpty(Converter.ToString(Pageview.Area.Item["LinkedinLink"]))) 2108 { 2109 <a href='@Pageview.Area.Item["LinkedinLink"]' target="_blank"> 2110 <p class="d-inline-block d-lg-block"><i class="fab fa-linkedin-in"></i> @Translate("Smartpage:SocialLinks.LinkedIn", "LinkedIn")</p> 2111 </a> 2112 } 2113 </div> 2114 </div> 2115 </div> 2116 </div> 2117 </div> 2118 2119 <div id="myCarousel" class="carousel slide" data-ride="carousel"> 2120 <div class="carousel-inner row w-100 mx-auto no-gutters"> 2121 @{ 2122 var count = 0; 2123 var isActive = ""; 2124 } 2125 @foreach (var d in GetLoop("Item.Area.DownloadOrLink")) 2126 { 2127 if (count == 0) 2128 { 2129 isActive = "active"; 2130 } 2131 else 2132 { 2133 isActive = ""; 2134 } 2135 <div class="col-12 col-lg-6 carousel-item @isActive"> 2136 <div class="box-shadow"> 2137 <h3>@d.GetString("Item.Area.DownloadOrLink.Overskrift")</h3> 2138 2139 @if (d.GetString("Item.Area.DownloadOrLink.DownloadOrLink") == "download") 2140 { 2141 <a class="fat bounce" href='@d.GetString("Item.Area.DownloadOrLink.File")' download>@Translate("Smartpage:Download", "Download") <span class="fal fa-arrow-to-bottom"></span></a> 2142 } 2143 else 2144 { 2145 <a class="fat bounce" href='@d.GetString("Item.Area.DownloadOrLink.Link")' target="_blank">@d.GetString("Item.Area.DownloadOrLink.LinkTitel") <span class="fal fa-angle-right right"></span></a> 2146 } 2147 </div> 2148 </div> 2149 2150 count++; 2151 2152 } 2153 </div> 2154 2155 @*ONLY SHOW IF MORE THAN 2*@ 2156 <div class="d-none d-lg-block"> 2157 2158 </div> 2159 @if (count > 2) 2160 { 2161 <a class="carousel-control-prev" href="#myCarousel" role="button" data-slide="prev"> 2162 <i class="fal fa-angle-left fa-2x"></i> 2163 <i class="fa fa-circle blue fa-3x"></i> 2164 </a> 2165 <a class="carousel-control-next" href="#myCarousel" role="button" data-slide="next"> 2166 <i class="fal fa-angle-right fa-2x"></i> 2167 <i class="fa fa-circle blue fa-3x"></i> 2168 </a> 2169 } 2170 2171 <div class="d-block d-lg-none"> 2172 @if (count > 1) 2173 { 2174 <a class="carousel-control-prev" href="#myCarousel" role="button" data-slide="prev"> 2175 <i class="fal fa-angle-left fa-2x"></i> 2176 <i class="fa fa-circle blue fa-3x"></i> 2177 </a> 2178 <a class="carousel-control-next" href="#myCarousel" role="button" data-slide="next"> 2179 <i class="fal fa-angle-right fa-2x"></i> 2180 <i class="fa fa-circle blue fa-3x"></i> 2181 </a> 2182 } 2183 </div> 2184 </div> 2185 </div> 2186 </div> 2187 </div> 2188 </section> 2189 2190 <div id="panel-kontaktmaegler" class="panel panel-form"> 2191 <button type="button" class="close" data-dismiss="panel-form" aria-label="Close"> 2192 <b></b> 2193 </button> 2194 <h2>@Translate("form-kontaktmaegler-titel", "Kontakt mægler")</h2> 2195 <p>@Translate("form-kontaktmaegler-beskrivelse", "")</p> 2196 <form id="form-kontaktmaegler" method="POST" action="/InboxHandler"> 2197 <div class="form-group"> 2198 <input class="form-control" type="text" name="navn" placeholder='@Translate("form-navn", "Navn")' value='@GetGlobalValue("Global:Extranet.Name")' required /> 2199 </div> 2200 <div class="form-group"> 2201 <input class="form-control" type="email" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" name="email" placeholder='@Translate("form-email", "E-mail")' value='@GetGlobalValue("Global:Extranet.Email")' required /> 2202 </div> 2203 <div class="form-group"> 2204 <div class="radio"> 2205 <label> 2206 <input type="radio" name="phonetype" value="fastnet" /> 2207 <span>@Translate("form-phonetype-fastnet", "Fastnet")</span> 2208 </label> 2209 <label> 2210 <input type="radio" name="phonetype" value="mobil" checked="checked" /> 2211 <span>@Translate("form-phonetype-mobil", "Mobil")</span> 2212 </label> 2213 </div> 2214 </div> 2215 <div class="form-group"> 2216 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="telefonnummer" placeholder='@Translate("form-telefonnummer", "Telefonnummer")' value='@GetGlobalValue("Global:Extranet.Phone")' required /> 2217 </div> 2218 <div class="form-group"> 2219 <textarea class="form-control" name="besked" placeholder='@Translate("form-besked-mægler", "Din besked til mægleren. F.eks ”Jeg ønsker en salgsvurdering”")'></textarea> 2220 </div> 2221 <div class="form-group"> 2222 <div class="checkbox"> 2223 <label> 2224 <input type="checkbox" name="kontaktmigok" required /> 2225 <span>@Translate("form-contactpermission-real", "Ja tak, RealMæglerne må gerne kontakte mig. *")</span> 2226 </label> 2227 </div> 2228 </div> 2229 <div class="form-group"> 2230 <div class="row"> 2231 <div class="col-12"> 2232 <button type="submit" class="btn btn-primary btn-block">@Translate("form-kontaktmaegler-submitbtn", "Send")</button> 2233 </div> 2234 </div> 2235 </div> 2236 <div class="form-group form-group-terms"> 2237 * Der samles ingen personlige oplysninger uden dit udtrykkelige samtykke. 2238 Ved at klikke på denne checkboks giver du dit samtykke til, at dine data samles og behandles af RealMæglerne A/S for at kunne kontakte dig. 2239 Du kan til enhver tid tilbagekalde dit samtykke. For at gøre dette skal du blot sende en meddelelse til <a href="mailto:@termsMail">@termsMail</a>. 2240 Læs mere på <a href="@settings_Persondatapolitik">privatlivspolitikkerne</a>. 2241 </div> 2242 <input type="hidden" name="fn" value="km" /> 2243 <input type="hidden" name="origin" value="" /> 2244 <input type="hidden" name="brugerId" value="@brugerId" /> 2245 <input type="hidden" name="areaid" value="@Pageview.AreaID" /> 2246 <input type="hidden" name="butikId" value="@butikId" /> 2247 </form> 2248 <div id="tak-kontaktmaegler" style="display:none;"> 2249 <p>@Translate("form-kontaktmaegler-tak", "Tak for din interesse, vi vender tilbage hurtigst muligt.")</p> 2250 </div> 2251 </div> 2252 2253 2254 @if (MyBroker != null && MyBroker.Broker != null && MyBroker.Employee != null && GetBoolean("Item.Page.HideMyBroker.Value") != true) 2255 { 2256 string bName = MyBroker.Broker.Name; 2257 string bImage = ""; 2258 string bClass = "na"; 2259 bImage = "/Files/Templates/Designs/rm/assets/images/na-real.png"; 2260 2261 if (!string.IsNullOrEmpty(MyBroker.Broker.CompanyName)) 2262 { 2263 bName = MyBroker.Broker.CompanyName; 2264 } 2265 try 2266 { 2267 var imgUrl = MyBroker.Employee.Item().GetString("BilledeUrl"); 2268 if (!string.IsNullOrEmpty(imgUrl)) 2269 { 2270 bImage = imgUrl; 2271 bClass = ""; 2272 } 2273 } 2274 catch 2275 { 2276 // Ignore 2277 } 2278 2279 string bAreaID = MyBroker.Broker.Item().GetString("WebsiteId"); 2280 string medlemsnummer = MyBroker.Broker.Item().GetString("CBMedlemsnummer"); 2281 <section class="din-maegler"> 2282 <div class="img-wrapper @bClass" style="background-image:url('@bImage')"></div> 2283 <div class="container"> 2284 <div class="col-12 col-sm-12 col-md-6 offset-md-6"> 2285 <h2>Din personlige mægler</h2> 2286 <div class="row"> 2287 <div class="col-12 col-sm-6"> 2288 <p> 2289 <b class="my-broker-name">@MyBroker.Employee.Name</b><br> 2290 @if (!string.IsNullOrEmpty(MyBroker.Employee.Email)) 2291 { 2292 <text>Mail: <a href="mailto:@(RealMaeglerne.Library.Helper.ExtractMaskedEmail(MyBroker.Employee.Email))" class="my-broker-email">@RealMaeglerne.Library.Helper.ExtractMaskedEmail(MyBroker.Employee.Email)</a><br></text> 2293 } 2294 @if (!string.IsNullOrEmpty(MyBroker.Employee.PhoneMobile)) 2295 { 2296 <text>Tlf.: <a href="tel:@(MyBroker.Employee.PhoneMobile)" class="my-broker-phone">@RealMaeglerne.Library.Helper.FormatPhoneNumber(MyBroker.Employee.PhoneMobile)</a></text> 2297 } 2298 else if (!string.IsNullOrEmpty(MyBroker.Broker.Telephone)) 2299 { 2300 <text>Tlf.: <a href="tel:@(MyBroker.Broker.Telephone)" class="my-broker-phone">@RealMaeglerne.Library.Helper.FormatPhoneNumber(MyBroker.Broker.Telephone)</a></text> 2301 } 2302 </p> 2303 </div> 2304 <div class="col-12 col-sm-6"> 2305 <p> 2306 <b class="my-broker-company-name">@bName</b><br> 2307 <span class="my-broker-company-address">@MyBroker.Broker.Address</span><br> 2308 <span class="my-broker-company-zip">@MyBroker.Broker.ZipCode</span> <span class="my-broker-company-city">@MyBroker.Broker.City</span><br> 2309 @if (!string.IsNullOrEmpty(bEmail)) 2310 { 2311 <text>Mail: <a href="mailto:@(bEmail)" class="my-broker-broker-email">@bEmail</a><br></text> 2312 } 2313 @if (!string.IsNullOrEmpty(MyBroker.Broker.Telephone)) 2314 { 2315 <text>Tlf.: <a href="tel:@(MyBroker.Broker.Telephone)" class="my-broker-broker-phone">@RealMaeglerne.Library.Helper.FormatPhoneNumber(MyBroker.Broker.Telephone)</a></text> 2316 } 2317 </p> 2318 </div> 2319 </div> 2320 <div class="row"> 2321 <br /> 2322 <div class="col-12 col-sm-6"> 2323 <a href="/@medlemsnummer" class="btn btn-primary btn-block my-broker-company-url">Til mæglerens side</a> 2324 </div> 2325 </div> 2326 </div> 2327 </div> 2328 </section> 2329 } 2330 2331 @if (GetGlobalValue("Global:CookieOptInLevel") != "All") 2332 { 2333 <section class="cookie-bar bar-text" id="cookieBar"> 2334 <div class="container"> 2335 <div class="row"> 2336 <div class="col-12"> 2337 <a class="close" onclick="return setOptInCookie(2);"><i class="fa fa-times"></i></a> 2338 <p>Denne hjemmeside bruger cookies til trafikmåling og optimering af indhold. Hvis du klikker videre, accepterer du vores brug af cookies. <a href="@settings_Persondatapolitik">Læs mere</a></p> 2339 </div> 2340 </div> 2341 </div> 2342 </section> 2343 } 2344 2345 <footer> 2346 <div class="container"> 2347 <div class="row"> 2348 <ul id="footer-nav" class="navigation dwnavigation" settings="startlevel:1;endlevel:3;template:footerNav.xslt;expandmode:all;parenttag:footer-nav-erhverv;"></ul> 2349 @GetValue("DwNavigation(footernav)") 2350 </div> 2351 </div> 2352 </footer> 2353 2354 @if (GetInteger("DW_extranet_AccessUserID") <= 0) 2355 { 2356 <div id="panel-login" class="panel panel-form"> 2357 <button type="button" class="close" data-dismiss="panel-form" aria-label="Close"> 2358 <b></b> 2359 </button> 2360 <div class="loginform login"> 2361 @if (loginParagraphId > 0) 2362 { 2363 <text> 2364 @RenderParagraphContent(loginParagraphId) 2365 </text> 2366 } 2367 </div> 2368 <div class="loginform register js-register-form-wrapper" style="display: none;"> 2369 @if (createUserParagraphId > 0) 2370 { 2371 <text> 2372 @RenderParagraphContent(createUserParagraphId) 2373 </text> 2374 } 2375 </div> 2376 <div class="loginform forgotpw" style="display: none;"> 2377 <h2 class="forgotpw-reg">@Translate("forgot-pw-reg-title", "Glemt adgangskode")</h2> 2378 <h2 class="forgotpw-broker">@Translate("forgot-pw-broker-title", "Tilmeldt via. mægler")</h2> 2379 <form id="forgotPwForm" class="form-body" method="post" action=""> 2380 <input type="hidden" id="AccessUserShopID" name="AccessUserShopID" value="SHOP6" /> 2381 <p class="forgotpw-reg">@Translate("forgot-pw-reg-teaser", "Har du glemt din adgangskode? Udfyld din e-mail herunder og få tilsendt instrukser for nulstillelse/ændring af din adgangskode.")</p> 2382 <p class="forgotpw-broker">@Translate("forgot-pw-broker-teaser", "Er du blevet tilmeldt via. din mægler, men mangler adgangskode til dit login? Udfyld e-mailen du har oplyst hos mægleren og få tilsendt instrukser for nulstillelse/ændring af din adgangskode.")</p> 2383 <div class="form-group"> 2384 <input id="AccessUserEmail" name="AccessUserEmail" type="email" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" placeholder="E-mail" class="form-control" required /> 2385 </div> 2386 <button class="btn btn-primary btn-block" type="submit">@Translate("forgot-pw-cta", "Nulstil adgangskode")</button> 2387 <br /> 2388 <div id="submitMessage"></div> 2389 </form> 2390 </div> 2391 </div> 2392 } 2393 2394 @inherits Dynamicweb.Rendering.RazorTemplateBase<Dynamicweb.Rendering.RazorTemplateModel<Dynamicweb.Rendering.Template>> 2395 @using System 2396 @using RealMaeglerne.Dynamicweb; 2397 @using RealMaeglerne.Library; 2398 @using RealMaeglerne.Library.Models; 2399 @using Dynamicweb.Content.Items; 2400 @using Dynamicweb.Core; 2401 @using System.Linq; 2402 2403 @{ 2404 string privacyPolicyText = Translate("Smartpage:PrivacyPolicyText", "* Der samles ingen personlige oplysninger uden dit udtrykkelige samtykke. Ved at klikke på denne checkboks giver du dit samtykke til, at dine data samles og behandles af RealMæglerne A/S for at kunne kontakte dig. Du kan til enhver tid tilbagekalde dit samtykke. For at gøre dette skal du blot sende en meddelelse til"); 2405 } 2406 2407 <!-- KONTAKT KØBERRAADGIVNING --> 2408 <div id="panel-kontakt-koeberraadgivning" class="panel panel-form"> 2409 <button type="button" class="close" data-dismiss="panel-form" aria-label="Close"> 2410 <b></b> 2411 </button> 2412 <h2>@Translate("Smarptage:Guldkøber.KontaktMægler", "Kontakt Mægler")</h2> 2413 <form id="form-koeberraadgivning" method="POST" action="/InboxHandler"> 2414 <div class="form-group"> 2415 <label><strong>@Translate("form-navn", "Navn")*</strong></label> 2416 <input class="form-control" type="text" name="navn" tabindex="1" placeholder='@Translate("Smartpage:Kontakt.Placeholder.Navn", "Indtast dit navn")' value='@GetGlobalValue("Global:Extranet.Name")' required /> 2417 </div> 2418 <div class="form-group"> 2419 <label><strong>@Translate("form-email", "E-mail")*</strong></label> 2420 <input class="form-control" type="email" tabindex="2" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" name="email" placeholder='@Translate("Smartpage:Kontakt.Placeholder.Email", "Indtast din e-mail")' value='@GetGlobalValue("Global:Extranet.Email")' required /> 2421 </div> 2422 <div class="form-group row mb-4"> 2423 <div class="col-6"> 2424 <label><strong>@Translate("form-mobile", "Mobil nr.")*</strong></label> 2425 <input class="form-control" type="tel" pattern="^[0-9]*$" tabindex="3" maxlength="20" name="mobile" placeholder='@Translate("Smartpage:Kontakt.Placeholder.Mobile", "Indtast mobil nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' required /> 2426 </div> 2427 <div class="col-6"> 2428 <label><strong>@Translate("form-telephone", "Telefon nr.")</strong></label> 2429 <input class="form-control" type="tel" pattern="^[0-9]*$" tabindex="4" maxlength="20" name="telefonnummer" placeholder='@Translate("Smartpage:Kontakt.Placeholder.Telefon", "Indtast tlf nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' /> 2430 </div> 2431 </div> 2432 <h3>@Translate("Smartpage:Salgsvurdering.DinBolig", "Din bolig")</h3> 2433 <div class="form-group row"> 2434 <div class="col-4"> 2435 <label><strong>@Translate("form-zip", "Post nr")*</strong></label> 2436 <input class="form-control js-postnummer" type="tel" pattern="^[0-9]*$" maxlength="4" name="postnummer" tabindex="5" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Adresse", "Post nr")' value="@userZip" required /> 2437 <input type="hidden" class="js-postnummer-validation" /> 2438 </div> 2439 <div class="col-8"> 2440 <label><strong>@Translate("form-city", "By")*</strong></label> 2441 <input class="form-control js-city" type="text" readonly /> 2442 </div> 2443 </div> 2444 <div class="form-group overflow-unset"> 2445 <label><strong>@Translate("form-adresse", "Adresse")*</strong></label> 2446 <input class="form-control js-validate-address" type="text" name="adresse" tabindex="6" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Zip", "Udfyld din egen adresse")' required /> 2447 2448 <label class="form-validate-error js-address-error d-none" for="adresse">@Translate("Smarptage:Kontakt.Forkert adresse", "Den indtastede adresse matchede ikke en kendt dansk adresse")</label> 2449 </div> 2450 <button class="form-control text-left js-collapse-focus" type="button" data-toggle="collapse" data-target="#kontaktkoeberrradgiver-collapse" aria-expanded="false" aria-controls="kontaktkoeberrradgiver-collapse"> 2451 <strong class="f-12"><i class="fas fa-plus"></i> @Translate("Smartpage:Salgsvurdering.Skrivenkommentar", "Skriv en kommentar")</strong> 2452 </button> 2453 <div class="collapse" id="kontaktkoeberrradgiver-collapse"> 2454 <div class="form-group"> 2455 <textarea class="form-control" name="besked" placeholder='@Translate("form-besked-max", "Skriv en besked på max 150 tegn")' maxlength="150"></textarea> 2456 </div> 2457 </div> 2458 2459 <div class="form-group mt-3"> 2460 <div class="checkbox"> 2461 <label> 2462 <input type="checkbox" name="kontaktmigok" required /> 2463 <span>@Translate("form-contactpermission-real", "Ja tak, RealMæglerne må gerne kontakte mig. *")</span> 2464 </label> 2465 </div> 2466 </div> 2467 <div class="form-group"> 2468 <div class="row"> 2469 <div class="col-12"> 2470 <button type="submit" class="btn btn-green btn-block">@Translate("KontaktMægler", "Kontakt Mægler")</button> 2471 </div> 2472 </div> 2473 </div> 2474 <div class="form-group form-group-terms"> 2475 @privacyPolicyText <a href="mailto:@termsMail">@termsMail</a>. 2476 Læs mere på <a href="@settings_Persondatapolitik">privatlivspolitikkerne</a>. 2477 </div> 2478 2479 <input type="hidden" name="fn" value="krk" /> 2480 <input type="hidden" name="origin" value="" /> 2481 <input type="hidden" name="brugerId" value="" /> 2482 <input type="hidden" name="areaid" value="@Pageview.AreaID" /> 2483 <input type="hidden" name="butikId" value="@butikId" /> 2484 <input type="hidden" name="ejendomstype" value="" /> 2485 <input type="hidden" name="salgspris" value="" /> 2486 <input type="hidden" name="modtager" value="" /> 2487 </form> 2488 <div id="tak-kontakt-advisor" style="display:none;"> 2489 <h2>@Translate("TakForDinInteresse", "Tak for din interesse")</h2> 2490 <div class="row"> 2491 <div class="col-6"> 2492 <img src="" class="img-fluid js-maegler-img" /> 2493 </div> 2494 <div class="col-6"> 2495 <p class="js-maegler-name"></p> 2496 <p class="js-maegler-address"></p> 2497 <p class="js-maegler-phone"></p> 2498 <p class="js-maegler-mail"></p> 2499 </div> 2500 </div> 2501 <p>@Translate("Smartpage:FormKontaktGuld.Bottom", "Mægleren vil kontakte dig hurtigst muligt")</p> 2502 </div> 2503 </div> 2504 2505 <!--ÅBENT HUS--> 2506 <div id="panel-aabenthus" class="panel panel-form"> 2507 <button type="button" class="close" data-dismiss="panel-form" aria-label="Close"> 2508 <b></b> 2509 </button> 2510 2511 <form id="form-aabenthus" method="POST" action="/InboxHandler"> 2512 <h2>@Translate("Smarptage:Aabenthus.TilmeldTilÅbenthus", "Tilmeld til åbent hus")</h2> 2513 @{ 2514 string sagsnr = Dynamicweb.Context.Current.Request["ProductId"]; 2515 var product = Dynamicweb.Ecommerce.Services.Products.GetProductById(sagsnr, string.Empty, true); 2516 if (product != null) 2517 { 2518 var boligManager = new BoligManager(Pageview); 2519 Bolig bolig = boligManager.CreateBolig(product, true); 2520 var kommendeAabnehuse = boligManager.KommendeAabnehuse(bolig).Take(3); 2521 2522 if (kommendeAabnehuse.Count() > 0) 2523 { 2524 <div> 2525 <div class="open-house-dates"> 2526 @foreach (var openHouse in kommendeAabnehuse) 2527 { 2528 <label class="open-house-dates__date"> 2529 @openHouse.DatoClean 2530 <input class="js-aabenthus-date-select hidden" type="radio" name="AabenthusDato" value="@openHouse.Dag @openHouse.DatoFormateret" data-time="@openHouse.Tidspunkt" data-house-id="@openHouse.Id" /> 2531 </label> 2532 } 2533 </div> 2534 @foreach (var openHouse in kommendeAabnehuse) 2535 { 2536 <div id="@openHouse.Id" class="open-house-times"> 2537 @if (openHouse.VisInterval && openHouse.Tilmelding) 2538 { 2539 int counter = 0; 2540 foreach (var interval in openHouse.TidsIntervallerFormateret) 2541 { 2542 <div><input class="js-aabenthus-time-select time-radio" type="radio" name="AabenthusTid" value="@interval" checked="@(counter == 0)" /><span>@interval.Substring(3)</span></div> 2543 counter++; 2544 } 2545 2546 } 2547 2548 @if (!openHouse.Tilmelding) 2549 { 2550 <div class="js-open-house-no-signup open-house-no-signup"> 2551 @Translate("Smartpage:Aabenthus.IngenTilmelding", "Ingen tilmelding påkrævet") 2552 </div> 2553 } 2554 </div> 2555 } 2556 </div> 2557 } 2558 } 2559 } 2560 2561 <div class="d-block"> 2562 <strong>@Translate("Smarptage:Adresse", "Adresse:")</strong> <label class="js-aabenthus-address mb-0"></label> 2563 </div> 2564 <div class="d-block"> 2565 <strong>@Translate("Smarptage:Date", "Dato:")</strong> <label class="js-aabenthus-date mb-0"></label> 2566 </div> 2567 <div class="d-block mb-4"> 2568 <strong>@Translate("Smarptage:Time", "Tidspunkt:")</strong> <label class="js-aabenthus-time mb-0"></label> 2569 </div> 2570 <div class="js-open-house-signup open-house-signup"> 2571 <h3>@Translate("Smartpage:Aabenthus.DineKontaktoplysning", "Dine kontaktoplysninger")</h3> 2572 <div class="form-group"> 2573 <label for="aabenthus-name"><strong>@Translate("form-navn", "Navn")*</strong></label> 2574 <input class="form-control" type="text" name="navn" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Navn", "Indtast dit navn")' value='@GetGlobalValue("Global:Extranet.Name")' required /> 2575 </div> 2576 <div class="form-group"> 2577 <label><strong>@Translate("form-email", "E-mail")*</strong></label> 2578 <input class="form-control" type="email" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" name="email" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Email", "Indtast din e-mail")' value='@GetGlobalValue("Global:Extranet.Email")' required /> 2579 </div> 2580 <div class="form-group row"> 2581 <div class="col-6"> 2582 <label><strong>@Translate("form-mobile", "Mobil nr.")*</strong></label> 2583 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="mobile" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Mobile", "Indtast mobil nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' required /> 2584 </div> 2585 <div class="col-6"> 2586 <label><strong>@Translate("form-telephone", "Telefon nr.")</strong></label> 2587 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="telefonnummer" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Telefon", "Indtast tlf nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' /> 2588 </div> 2589 2590 </div> 2591 <div class="form-group"> 2592 <div class="checkbox"> 2593 <label> 2594 <input type="checkbox" name="kontaktmigok" required /> 2595 <span class="base-color">@Translate("form-contactpermission-real", "Ja tak, RealMæglerne må gerne kontakte mig. *")</span> 2596 </label> 2597 </div> 2598 </div> 2599 <div class="form-group"> 2600 <div class="row"> 2601 <div class="col-12"> 2602 <button type="submit" class="btn btn-block btn-green">@Translate("Smartpage:Aabenthus.TilmeldKnap", "Tilmeld åbent hus")</button> 2603 </div> 2604 </div> 2605 </div> 2606 <div class="form-group"> 2607 @String.Format(Translate("Smartpage:Panel.Accept", "Du accepterer samtidig vores {0} og giver samtykke til, at dine data samles og behandles af RealMæglerne A/S for at kunne kontakte dig"), "<a href='" + settings_Persondatapolitik + "'>privatlivspolitikkerne</a>") 2608 2609 </div> 2610 </div> 2611 <input type="hidden" name="fn" value="ah" /> 2612 <input type="hidden" name="origin" value="" /> 2613 <input type="hidden" name="brugerId" value="@userID" /> 2614 <input type="hidden" name="areaid" value="@Pageview.AreaID" /> 2615 <input type="hidden" name="butikId" value="@butikId" /> 2616 <input type="hidden" name="sagsaddresse" value="" class="js-aabenthus-address-input" /> 2617 <input type="hidden" name="ejendomstype" value="" /> 2618 <input type="hidden" name="salgspris" value="" /> 2619 <input type="hidden" name="modtager" value="" /> 2620 <input type="hidden" name="employee" value="" /> 2621 <input type="hidden" name="sagsnr" value="" class="js-sagsnr" /> 2622 <input type="hidden" name="productId" value="@Dynamicweb.Context.Current.Request["ProductId"]" /> 2623 <input type="hidden" name="aftaleid" value="" class="js-aftaleid" /> 2624 2625 <input type="hidden" name="dateMail" class="js-aabenthus-date-input" /> 2626 <input type="hidden" name="timeMail" class="js-aabenthus-time-input" /> 2627 <input type="hidden" name="visintervaller" class="js-aabenthus-showinterval-input" /> 2628 <input type="hidden" name="brokerImageMail" class="property-broker-image-input" /> 2629 <input type="hidden" name="employeeNameMail" class="js-maegler-employee-name-input" /> 2630 <input type="hidden" name="employeeTitleMail" class="js-maegler-employee-title-input" /> 2631 <input type="hidden" name="employeeMailMail" class="js-maegler-mail-input" /> 2632 <input type="hidden" name="employeeMobileMail" class="js-maegler-mobile-input" /> 2633 <input type="hidden" name="employeePhoneMail" class="js-maegler-phone-input" /> 2634 2635 <input type="hidden" name="brokerNameMail" class="js-broker-name-input" /> 2636 <input type="hidden" name="brokerAddressMail" class="js-broker-address-input" /> 2637 <input type="hidden" name="brokerPhoneMail" class="js-broker-phone-input" /> 2638 <input type="hidden" name="greenmobility" class="js-green-mobility" /> 2639 </form> 2640 <div id="tak-aabenthus" style="display:none;"> 2641 <h2>@Translate("Smarptage:Aabenthus.TakForTilmelding", "Tak for din tilmelding til åbent hus!")</h2> 2642 <div class="d-block"> 2643 <strong>@Translate("Smarptage:Adresse", "Adresse:")</strong> <label class="js-aabenthus-address mb-0"></label> 2644 </div> 2645 <div class="d-block"> 2646 <strong>@Translate("Smarptage:Date", "Dato:")</strong> <label class="js-aabenthus-date mb-0"></label> 2647 2648 </div> 2649 <div class="d-block mb-4"> 2650 <strong>@Translate("Smarptage:Time", "Tidspunkt:")</strong> <label class="js-aabenthus-time mb-0"></label> 2651 2652 </div> 2653 <div class="js-employee"> 2654 <p>@String.Format(Translate("Smartpage:Aabenthus.Tak", "Vi glæder os til at vise dig boligen. Har du spørgsmål inden vi ses, kan du kontakte {0} fra RealMæglerne"), "<b class='js-aabenthus-employee-name'></b>")</p> 2655 </div> 2656 <div class="js-not-employee"> 2657 <p>@Translate("Smartpage:Aabenthus.Tak.NoEmployee", "Vi glæder os til at vise dig boligen. Har du spørgsmål inden vi ses, er du velkommen til at kontakte os")</p> 2658 </div> 2659 <div class="row"> 2660 <div class="js-employee"> 2661 <div class="col-12 js-maegler-img aabenthus-image"> 2662 <div class="property-broker-image" style=""></div> 2663 2664 </div> 2665 </div> 2666 <div class="col-12"> 2667 <div class="bg-base"> 2668 2669 <div class="js-employee"> 2670 <h4 class="js-maegler-employee-name"></h4> 2671 <div class="icon-container"> 2672 <i class="fas fa-envelope"></i> <span class="js-maegler-mail"></span> 2673 </div> 2674 <div class="icon-container"> 2675 <i class="fas fa-phone"></i> <span class="js-maegler-mobile"></span> 2676 </div> 2677 </div> 2678 2679 2680 <h4 class="js-maegler-name"></h4> 2681 <div class="icon-container"> 2682 <i class="fas fa-map-marker-alt"></i> <span class="js-maegler-address"></span> 2683 </div> 2684 <div class="icon-container"> 2685 <i class="fas fa-phone"></i> <span class="js-maegler-phone"></span> 2686 2687 </div> 2688 <a class="btn btn-border" onclick="panelKontaktmaeglerGuldkoeber()">KONTAKT MÆGLER</a> 2689 </div> 2690 </div> 2691 </div> 2692 </div> 2693 </div> 2694 2695 <!-- KONTAKT GULDKØBER --> 2696 <div id="panel-kontakt-guldkoeber" class="panel panel-form"> 2697 <button type="button" class="close" data-dismiss="panel-form" aria-label="Close"> 2698 <b></b> 2699 </button> 2700 <h2>@Translate("Smarptage:Guldkøber.KontaktMægler", "Kontakt Mægler")</h2> 2701 <form id="form-kontaktmaegler" method="POST" action="/InboxHandler"> 2702 <div class="form-group"> 2703 <label><strong>@Translate("form-navn", "Navn")*</strong></label> 2704 <input class="form-control" type="text" name="navn" placeholder='@Translate("form-navn", "Navn")' value='@GetGlobalValue("Global:Extranet.Name")' required /> 2705 </div> 2706 <div class="form-group"> 2707 <label><strong>@Translate("form-email", "E-mail")*</strong></label> 2708 <input class="form-control" type="email" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" name="email" placeholder='@Translate("form-email", "E-mail")' value='@GetGlobalValue("Global:Extranet.Email")' required /> 2709 </div> 2710 <div class="form-group row mb-4"> 2711 <div class="col-6"> 2712 <label><strong>@Translate("form-mobile", "Mobil nr.")*</strong></label> 2713 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="mobile" placeholder='@Translate("Smartpage:Kontakt.Placeholder.Mobile", "Indtast mobil nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' required /> 2714 </div> 2715 <div class="col-6"> 2716 <label><strong>@Translate("form-telephone", "Telefon nr.")</strong></label> 2717 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="telefonnummer" placeholder='@Translate("Smartpage:Kontakt.Placeholder.Telefon", "Indtast tlf nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' /> 2718 </div> 2719 </div> 2720 <div class="form-group row"> 2721 <div class="col-4"> 2722 <label><strong>@Translate("form-zip", "Post nr")*</strong></label> 2723 <input class="form-control js-postnummer" type="tel" pattern="^[0-9]*$" maxlength="4" name="postnummer" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Adresse", "Post nr")' value="@userZip" required /> 2724 <input type="hidden" class="js-postnummer-validation" /> 2725 </div> 2726 <div class="col-8"> 2727 <label><strong>@Translate("form-city", "By")*</strong></label> 2728 <input class="form-control js-city" type="text" readonly /> 2729 </div> 2730 </div> 2731 2732 <div class="form-group overflow-unset"> 2733 <label><strong>@Translate("form-adresse", "Adresse")*</strong></label> 2734 <input class="form-control js-validate-address" type="text" name="adresse" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Zip", "Udfyld din egen adresse")' value="@userAddress" required /> 2735 <label class="form-validate-error js-address-error d-none" for="adresse">@Translate("Smarptage:Kontakt.Forkert adresse", "Den indtastede adresse matchede ikke en kendt dansk adresse")</label> 2736 </div> 2737 <div class="form-group"> 2738 <textarea class="form-control" name="besked" placeholder='@Translate("form-besked-max", "Skriv en besked på max 150 tegn")' maxlength="150"></textarea> 2739 </div> 2740 <div class="form-group"> 2741 <div class="checkbox"> 2742 <label> 2743 <input type="checkbox" name="kontaktmigok" required /> 2744 <span>@Translate("form-contactpermission-real", "Ja tak, RealMæglerne må gerne kontakte mig. *")</span> 2745 </label> 2746 </div> 2747 </div> 2748 <div class="form-group"> 2749 <div class="row"> 2750 <div class="col-12"> 2751 <button type="submit" class="btn btn-green btn-block">@Translate("KontaktMægler", "Kontakt Mægler")</button> 2752 </div> 2753 </div> 2754 </div> 2755 <div class="form-group form-group-terms"> 2756 @privacyPolicyText <a href="mailto:@termsMail">@termsMail</a>. 2757 Læs mere på <a href="@settings_Persondatapolitik">privatlivspolitikkerne</a>. 2758 </div> 2759 <input type="hidden" name="fn" value="gk" /> 2760 <input type="hidden" name="origin" value="" /> 2761 <input type="hidden" name="brugerId" value="@userID" /> 2762 <input type="hidden" name="areaid" value="@Pageview.AreaID" /> 2763 <input type="hidden" name="butikId" value="@butikId" /> 2764 <input type="hidden" name="ejendomstype" value="" /> 2765 <input type="hidden" name="salgspris" value="" /> 2766 <input type="hidden" name="modtager" value="" /> 2767 <input type="hidden" name="employee" value="" /> 2768 </form> 2769 <div id="tak-kontakt-maegler-guldkoeber" style="display:none;"> 2770 <h2>@Translate("TakForDinInteresse", "Tak for din interesse")</h2> 2771 <p>@Translate("Smartpage:FormKontaktGuld.Subheader", "Vi har sendt din forespørgsel om guldkøbere til:")</p> 2772 <div class="row"> 2773 <div class="col-6"> 2774 <img src="" class="img-fluid js-maegler-img" /> 2775 </div> 2776 <div class="col-6"> 2777 <p class="js-maegler-name"></p> 2778 <p class="js-maegler-address"></p> 2779 <p class="js-maegler-phone"></p> 2780 <p class="js-maegler-mail"></p> 2781 </div> 2782 </div> 2783 <p>@Translate("Smartpage:FormKontaktGuld.Bottom", "Mægleren vil kontakte dig hurtigst muligt")</p> 2784 </div> 2785 </div> 2786 2787 <!-- BESTIL SALGSVURDERING --> 2788 <div id="panel-salgsvurdering" class="panel panel-form"> 2789 <button type="button" class="close" data-dismiss="panel-form" aria-label="Close"> 2790 <b></b> 2791 </button> 2792 2793 <form id="bestil-salgsvurdering" class="buyer-advisor-form js-buyer-advisor-form" method="POST" action="/InboxHandler"> 2794 <h2 class="js-buyer-advisor-header">@Translate("form-salgsvurdering-titel", "Bestil gratis salgsvurdering")</h2> 2795 <p>@Translate("form-salgsvurdering-beskrivelse", "")</p> 2796 <div class="form-group"> 2797 <label><strong>@Translate("form-navn", "Navn")*</strong></label> 2798 <input class="form-control" type="text" name="navn" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Navn", "Indtast dit navn")' value='@GetGlobalValue("Global:Extranet.Name")' required /> 2799 </div> 2800 <div class="form-group"> 2801 <label><strong>@Translate("form-email", "E-mail")*</strong></label> 2802 <input class="form-control" type="email" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" name="email" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Email", "Indtast din e-mail")' value='@GetGlobalValue("Global:Extranet.Email")' required /> 2803 </div> 2804 <div class="form-group row mb-4"> 2805 <div class="col-6"> 2806 <label><strong>@Translate("form-mobile", "Mobil nr.")*</strong></label> 2807 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="mobile" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Mobile", "Indtast mobil nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' required /> 2808 </div> 2809 <div class="col-6"> 2810 <label><strong>@Translate("form-telephone", "Telefon nr.")</strong></label> 2811 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="telefonnummer" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Telefon", "Indtast tlf nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' /> 2812 </div> 2813 2814 </div> 2815 2816 @{ 2817 // isErhverv comes from master template 2818 bool pageIsErhverv = isErhverv || Converter.ToBoolean(Pageview.Area.Item["IsErhverv"]); 2819 string yourPropertyHeader = pageIsErhverv ? Translate("Smartpage:Salgsvurdering.DinEjendom", "Din ejendom") : Translate("Smartpage:Salgsvurdering.DinBolig", "Din bolig"); 2820 // If user is on broker page already then don't suggest alternative broker 2821 bool isOnBrokerPage = !string.IsNullOrEmpty(butikId); 2822 } 2823 2824 <h3>@yourPropertyHeader</h3> 2825 <div class="form-group row"> 2826 <div class="col-4"> 2827 <label><strong>@Translate("form-zip", "Post nr")*</strong></label> 2828 @{ 2829 string primaryAreaEncoded = Dynamicweb.Core.Encoders.HtmlEncoder.HtmlEncode(primaryArea); 2830 <input class="form-control js-postnummer js-updatebroker-list" data-is-on-broker-page="@isOnBrokerPage" data-primary-area="@primaryAreaEncoded" type="tel" pattern="^[0-9]*$" maxlength="4" name="postnummer" placeholder="@Translate("Smartpage:Aabenthus.Placeholder.Adresse", "Post nr")" value="@userZip" required /> 2831 <input type="hidden" class="js-postnummer-validation" /> 2832 } 2833 </div> 2834 <div class="col-8"> 2835 <label><strong>@Translate("form-city", "By")*</strong></label> 2836 <input class="form-control js-city" type="text" readonly /> 2837 </div> 2838 </div> 2839 <div class="form-group overflow-unset"> 2840 <label><strong>@Translate("form-adresse", "Adresse")*</strong></label> 2841 <input class="form-control js-validate-address" type="text" name="adresse" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Zip", "Udfyld din egen adresse")' value="@userAddress" required /> 2842 <label class="form-validate-error js-address-error d-none" for="adresse">@Translate("Smarptage:Kontakt.Forkert adresse", "Den indtastede adresse matchede ikke en kendt dansk adresse")</label> 2843 </div> 2844 2845 <button class="form-control text-left js-collapse-focus" type="button" data-toggle="collapse" data-target="#salgsvurdering-collapse" aria-expanded="false" aria-controls="salgsvurdering-collapse"> 2846 <strong class="f-12"><i class="fas fa-plus"></i> @Translate("Smartpage:Salgsvurdering.Skrivenkommentar", "Skriv en kommentar")</strong> 2847 </button> 2848 <div class="collapse" id="salgsvurdering-collapse"> 2849 <div class="form-group"> 2850 <textarea class="form-control" name="besked" placeholder='@Translate("form-besked-max", "Skriv en besked på max 150 tegn")' maxlength="150"></textarea> 2851 </div> 2852 </div> 2853 2854 <div class="salgsvurdering-precheck"> 2855 <h3>@Translate("Smartpage:Salgsvurdering.SendSalgsvurderingTil", "Send salgsvurdering til:")</h3> 2856 <div class="col-12"> 2857 <div class="choose-broker row align-items-center active"> 2858 <div class="col-2"> 2859 <input class="js-broker-radio" type="radio" id="" name="choose-broker" value="" checked> 2860 <label class="js-broker-label" for=""></label><div class="check"> 2861 <div class="inside"> 2862 </div> 2863 </div> 2864 </div> 2865 <div class="col-4"> 2866 <img src="" class="img-fluid js-broker-image"> 2867 </div> 2868 <div class="col-6"> 2869 <span class="d-block"> 2870 <strong class="js-choose-broker-name"></strong> 2871 </span> 2872 <span class="js-choose-broker-address"></span> 2873 <input type="hidden" class="js-choose-broker-phone" value="" /> 2874 <input type="hidden" class="js-choose-broker-email" value="" /> 2875 </div> 2876 </div> 2877 </div> 2878 </div> 2879 <div class="salgsvurdering-broker"> 2880 <h3 class="js-brokerh3">@Translate("Smartpage:Salgsvurdering.VælgMægler", "Vælg mægler")</h3> 2881 <div class="js-choose-broker col-12"> 2882 </div> 2883 2884 </div> 2885 <div class="form-group mt-4"> 2886 <div class="checkbox"> 2887 <label> 2888 <input type="checkbox" name="kontaktmigok" required /> 2889 <span class="consent-checkbox">@Translate("form-contactpermission-real", "Ja tak, RealMæglerne må gerne kontakte mig. *")</span> 2890 </label> 2891 </div> 2892 </div> 2893 <div class="form-group"> 2894 <div class="row"> 2895 <div class="col-12"> 2896 <button type="submit" class="btn btn-green btn-block js-buyer-advisor-button" onclick="document.getElementById('oneBrokerToChoose').click();">@Translate("form-salgsvurdering-submitbtn", "Bestil gratis salgsvurdering")</button> 2897 </div> 2898 </div> 2899 </div> 2900 <div class="form-group form-group-terms"> 2901 @privacyPolicyText <a href="mailto:@termsMail">@termsMail</a>. 2902 Læs mere på <a href="@settings_Persondatapolitik">privatlivspolitikkerne</a>. 2903 </div> 2904 <input type="hidden" name="fn" value="bsv" /> 2905 <input type="hidden" name="origin" class="js-salgsvurdering-origin" value="" /> 2906 <input type="hidden" name="brugerId" value="@userID" /> 2907 <input type="hidden" name="areaid" value="@Pageview.AreaID" /> 2908 <input type="hidden" id="boligvisning" name="boligvisning" value="" /> 2909 <input type="hidden" id="panel-salgsvurdering-butikid" name="butikId" value="" /> 2910 <input type="hidden" id="panel-salgsvurdering-sagsnr" name="sagsnr" value="" /> 2911 <input type="hidden" name="productId" value="@Dynamicweb.Context.Current.Request["ProductId"]" /> 2912 <input type="hidden" name="ejendomstype" value="" /> 2913 <input type="hidden" name="salgspris" value="" /> 2914 <input type="hidden" name="employee" value="" /> 2915 <input type="hidden" name="modtager" value="" /> 2916 <input class="js-value-check" type="hidden" name="valueCheck" value="" /> 2917 <input class="js-green-appraisal" type="hidden" name="greenAppraisal" value="" /> 2918 </form> 2919 <div id="tak-salgsvurdering" style="display:none;"> 2920 <h2>@Translate("TakForDinInteresse", "Tak for din interesse")</h2> 2921 <p>@Translate("Smartpage:FormSalgsvurdering.Subheader", "Vi har sendt din bestilling af gratis salgsvurdering til:")</p> 2922 <div class="row"> 2923 <div class="col-6"> 2924 <img src="" class="img-fluid js-maegler-img" /> 2925 </div> 2926 <div class="col-6"> 2927 <p class="js-maegler-name"></p> 2928 <p class="js-maegler-address"></p> 2929 <p class="js-maegler-phone"></p> 2930 <p class="js-maegler-mail"></p> 2931 </div> 2932 </div> 2933 <p>@Translate("Smartpage:FormKontaktGuld.Bottom", "Mægleren vil kontakte dig hurtigst muligt")</p> 2934 </div> 2935 </div> 2936 2937 <!-- BESTIL SALGSVURDERING GULDKØBER --> 2938 <div id="panel-salgsvurdering-guldkoeber" class="panel panel-form"> 2939 <button type="button" class="close" data-dismiss="panel-form" aria-label="Close"> 2940 <b></b> 2941 </button> 2942 2943 <form id="bestil-salgsvurdering-guldkoeber" method="POST" action="/InboxHandler"> 2944 <h2>@Translate("form-salgsvurdering-titel", "Bestil gratis salgsvurdering")</h2> 2945 <p>@Translate("form-salgsvurdering-beskrivelse", "")</p> 2946 <div class="form-group"> 2947 <label><strong>@Translate("form-navn", "Navn")*</strong></label> 2948 <input class="form-control" type="text" name="navn" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Navn", "Indtast dit navn")' value='@GetGlobalValue("Global:Extranet.Name")' required /> 2949 </div> 2950 <div class="form-group"> 2951 <label><strong>@Translate("form-email", "E-mail")*</strong></label> 2952 <input class="form-control" type="email" pattern="[_a-z0-9.%+-]+&#64;[a-z0-9.-]+.[a-z]{2,4}$" name="email" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Email", "Indtast din e-mail")' value='@GetGlobalValue("Global:Extranet.Email")' required /> 2953 </div> 2954 <div class="form-group row mb-4"> 2955 <div class="col-6"> 2956 <label><strong>@Translate("form-telephone", "Telefon nr.")</strong></label> 2957 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="telefonnummer" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Telefon", "Indtast tlf nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' /> 2958 </div> 2959 <div class="col-6"> 2960 <label><strong>@Translate("form-mobile", "Mobil nr.")*</strong></label> 2961 <input class="form-control" type="tel" pattern="^[0-9]*$" maxlength="20" name="mobile" placeholder='@Translate("Smartpage:Salgsvurdering.Placeholder.Mobile", "Indtast mobil nr.")' value='@GetGlobalValue("Global:Extranet.Phone")' required /> 2962 </div> 2963 </div> 2964 2965 <h3>@Translate("Smartpage:Salgsvurdering.DinBolig", "Din bolig")</h3> 2966 2967 <div class="form-group row"> 2968 <div class="col-4"> 2969 <label><strong>@Translate("form-zip", "Post nr")*</strong></label> 2970 <input class="form-control js-postnummer js-updatebroker-list" type="tel" pattern="^[0-9]*$" maxlength="4" name="postnummer" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Adresse", "Post nr")' value="@userZip" required /> 2971 <input type="hidden" class="js-postnummer-validation" /> 2972 </div> 2973 <div class="col-8"> 2974 <label><strong>@Translate("form-city", "By")*</strong></label> 2975 <input class="form-control js-city" type="text" readonly /> 2976 </div> 2977 </div> 2978 <div class="form-group overflow-unset"> 2979 <label><strong>@Translate("form-adresse", "Adresse")*</strong></label> 2980 <input class="form-control js-validate-address" type="text" name="adresse" placeholder='@Translate("Smartpage:Aabenthus.Placeholder.Zip", "Udfyld din egen adresse")' value="@userAddress" required /> 2981 <label class="form-validate-error js-address-error d-none" for="adresse">@Translate("Smarptage:Kontakt.Forkert adresse", "Den indtastede adresse matchede ikke en kendt dansk adresse")</label> 2982 </div> 2983 2984 <button class="form-control text-left js-collapse-focus" type="button" data-toggle="collapse" data-target="#salgsvurdering-collapse" aria-expanded="false" aria-controls="salgsvurdering-collapse"> 2985 <strong class="f-12"><i class="fas fa-plus"></i> @Translate("Smartpage:Salgsvurdering.Skrivenkommentar", "Skriv en kommentar")</strong> 2986 </button> 2987 <div class="collapse" id="salgsvurdering-collapse"> 2988 <div class="form-group"> 2989 <textarea class="form-control" name="besked" placeholder='@Translate("form-besked-max", "Skriv en besked på max 150 tegn")' maxlength="150"></textarea> 2990 </div> 2991 </div> 2992 <div class="salgsvurdering-precheck"> 2993 <h3>@Translate("Smartpage:Salgsvurdering.SendSalgsvurderingTil", "Send salgsvurdering til:")</h3> 2994 <div class="col-12"> 2995 <div class="choose-broker row align-items-center active"> 2996 <div class="col-2"> 2997 <input class="js-broker-radio" type="radio" id="" name="choose-broker-gk" value="" checked> 2998 <label class="js-broker-label" for=""></label><div class="check"> 2999 <div class="inside"> 3000 </div> 3001 </div> 3002 </div> 3003 <div class="col-4"> 3004 <img src="" class="img-fluid js-broker-image"> 3005 </div> 3006 <div class="col-6"> 3007 <span class="d-block"> 3008 <strong class="js-choose-broker-name"></strong> 3009 </span> 3010 <span class="js-choose-broker-address"></span> 3011 <input type="hidden" class="js-choose-broker-phone" value="" /> 3012 <input type="hidden" class="js-choose-broker-email" value="" /> 3013 </div> 3014 </div> 3015 </div> 3016 </div> 3017 <div class="salgsvurdering-broker"> 3018 <h3 class="js-brokerh3">@Translate("Smartpage:Salgsvurdering.VælgMægler", "Vælg mægler")</h3> 3019 <div class="js-choose-broker col-12"> 3020 </div> 3021 3022 </div> 3023 3024 <div class="form-group"> 3025 <div class="checkbox"> 3026 <label> 3027 <input type="checkbox" name="kontaktmigok" required /> 3028 <span>@Translate("form-contactpermission-real", "Ja tak, RealMæglerne må gerne kontakte mig. *")</span> 3029 </label> 3030 </div> 3031 </div> 3032 <div class="form-group"> 3033 <div class="row"> 3034 <div class="col-12"> 3035 <button type="submit" class="btn btn-green btn-block">@Translate("form-salgsvurdering-submitbtn", "Bestil gratis salgsvurdering")</button> 3036 </div> 3037 </div> 3038 </div> 3039 <div class="form-group form-group-terms"> 3040 @privacyPolicyText <a href="mailto:@termsMail">@termsMail</a>. 3041 Læs mere på <a href="@settings_Persondatapolitik">privatlivspolitikkerne</a>. 3042 </div> 3043 <input type="hidden" name="fn" value="bsg" /> 3044 <input type="hidden" name="origin" class="js-salgsvurdering-origin" value="" /> 3045 <input type="hidden" name="brugerId" value="@userID" /> 3046 <input type="hidden" name="areaid" value="@Pageview.AreaID" /> 3047 <input type="hidden" id="boligvisning-gk" name="boligvisning" value="" /> 3048 <input type="hidden" id="panel-salgsvurdering-gk-butikid" name="butikId" value="" /> 3049 <input type="hidden" id="panel-salgsvurdering-gk-sagsnr" name="sagsnr" value="" /> 3050 <input type="hidden" name="productId" value="@Dynamicweb.Context.Current.Request["ProductId"]" /> 3051 <input type="hidden" name="ejendomstype" value="" /> 3052 <input type="hidden" name="salgspris" value="" /> 3053 <input type="hidden" name="employee" value="" /> 3054 <input type="hidden" name="modtager" value="" /> 3055 </form> 3056 <div id="tak-salgsvurdering" style="display:none;"> 3057 <h2>@Translate("TakForDinInteresse", "Tak for din interesse")</h2> 3058 <p>@Translate("Smartpage:FormSalgsvurdering.Subheader", "Vi har sendt din bestilling af gratis salgsvurdering til:")</p> 3059 <div class="row"> 3060 <div class="col-6"> 3061 <img src="" class="img-fluid js-maegler-img" /> 3062 </div> 3063 <div class="col-6"> 3064 <p class="js-maegler-name"></p> 3065 <p class="js-maegler-address"></p> 3066 <p class="js-maegler-phone"></p> 3067 <p class="js-maegler-mail"></p> 3068 </div> 3069 </div> 3070 <p>@Translate("Smartpage:FormKontaktGuld.Bottom", "Mægleren vil kontakte dig hurtigst muligt")</p> 3071 </div> 3072 </div> 3073 3074 3075 <div class="overlay-wrapper"></div> 3076 <div class="dropdown-overlay"></div> 3077 <div class="loader-inner ball-pulse"></div> 3078 <script type="text/javascript" src='@(TemplateUrl)assets/webpack/js/3rdparty/viamapstrap.js'></script> 3079 <script type="text/javascript" src='@(TemplateUrl)assets/dist/bundle.app.min.js?@cachedTimestamp'></script> 3080 3081 @RenderSnippet("JavaScriptBottom") 3082 3083 @if (Context.Current.Request.QueryString["ShowLogin"] == "true") 3084 { 3085 <input class="js-showLogin" value="true" /> 3086 } 3087 @if (!string.IsNullOrWhiteSpace(GetString("DW_extranet_error_uk"))) 3088 { 3089 <input class="js-DWError" value="true" /> 3090 <input class="js-DWErrorVal" value="@GetString("DW_extranet_error_dk")" /> 3091 } 3092 </body> 3093 </html> 3094