var Scripts,searchMap,projectSearchViewModel;(function(n){var t;(function(n){var t;(function(n){var t=function(){function t(n,t,i,r,u){this.defaultDistanceGroupingKilometers=n;this.advancedSearchDistanceGroupingKilometers=t;this.maxpriceMarginPercentage=i;this.defaultCities=r;this.defaultProjects=u;this.apiLocation="/api/sitecore/ProjectSearch/"}return t.prototype.search=function(t,i,r,u,f,e,o,s,h,c){var l=document.createElement("textarea");l.innerHTML=i;i=l.value;$.ajax({url:this.apiLocation+"SortedProjects?keywords="+encodeURIComponent(i)+"&minprice="+u+"&maxprice="+f+"&buildingtype="+e+"&numberOfProjectsToShow="+h+"&province="+t+"&latitude="+o+"&longitude="+s+"&defaultDistanceGroupKilometers="+this.defaultDistanceGroupingKilometers+"&advancedLocationSearchDistanceGroupKilometers="+this.advancedSearchDistanceGroupingKilometers+"&maxPriceMarginPercentage="+this.maxpriceMarginPercentage+"&defaultCities="+this.defaultCities+"&defaultProjects="+this.defaultProjects,dataType:"json",cache:!1,ifModified:!1,success:function(t){for(var f=[],i=null,u=0;u<t.Projects.length;u++)i=t.Projects[u],f.push(new n.Project(i.Id,i.Url,i.Title,i.City,i.Address,i.ShowEventLink,i.EventInThePictureUrl,i.EventInThePictureColor,i.EventInThePictureDate,i.EventInThePictureName,i.Images,i.BulletPoints,i.NumberOfHouses,i.NumberOfAppartments,i.NumberOfBuildingGrounds,r,e,i.SearchLogging,i.IsSoldOut,i.SortOrder,i.DistanceToSearchedCity,i.SalesUnitSearchedAmount,i.InPriceRange));c(new n.SearchResult(t.TotalNumberOfProjects,f))}})},t.prototype.searchLocation=function(t,i,r,u){var f=document.createElement("textarea");f.innerHTML=t;t=f.value;$.ajax({url:this.apiLocation+"SortedProjects?keywords="+encodeURIComponent(t)+"&numberOfProjectsToShow="+i+"&defaultDistanceGroupKilometers="+this.defaultDistanceGroupingKilometers+"&advancedLocationSearchDistanceGroupKilometers="+this.advancedSearchDistanceGroupingKilometers+"&projectsToIgnore="+r,dataType:"json",cache:!1,ifModified:!1,success:function(t){for(var f=[],i=null,r=0;r<t.Projects.length;r++)i=t.Projects[r],f.push(new n.Project(i.Id,i.Url,i.Title,i.City,i.Address,i.ShowEventLink,i.EventInThePictureUrl,i.EventInThePictureColor,i.EventInThePictureDate,i.EventInThePictureName,i.Images,i.BulletPoints,i.NumberOfHouses,i.NumberOfAppartments,i.NumberOfBuildingGrounds,"","",i.SearchLogging,i.IsSoldOut,i.SortOrder,i.DistanceToSearchedCity,i.SalesUnitSearchedAmount,i.InPriceRange));u(new n.SearchResult(t.TotalNumberOfProjects,f))}})},t}();n.ProjectSearchService=t})(t=n.ProjectSearch||(n.ProjectSearch={}))})(t=n.Components||(n.Components={}))})(Scripts||(Scripts={})),function(n){var t;(function(n){var t;(function(n){var t=function(){function n(n,t,i,r,u,f,e,o,s,h,c,l,a){this.searchService=n;this.province=t;this.latitude=o;this.longitude=s;this.onSearchLoaded=a;this.keywords=ko.observable(i);this.price=ko.observable(r);this.minprice=ko.observable(u);this.maxprice=ko.observable(f);this.selectedBuildingType=ko.observable(e);this.projects=ko.observableArray();this.exactMatches=ko.observableArray();this.numberOfItemsToShowPerLoad=ko.observable(h);this.numberOfExactResultsToShow=ko.observable(c);this.numberOfOtherResultsToShow=ko.observable(l);this.numberOfItems=ko.observable(h);this.totalNumberOfItems=ko.observable(1e3);this.isLoadingInitially=ko.observable(!0);this.isLoading=ko.observable(!1);this.searchDescription=ko.observable("");this.isFiltered=ko.observable(!1)}return n.prototype.search=function(){this.isLoading(!0);this.windowXBeforeScrolling=window.scrollX;this.windowYBeforeScrolling=window.scrollY;this.getValuesFromInput();this.searchService.search(this.province,this.keywords(),this.price(),this.minprice(),this.maxprice(),this.selectedBuildingType(),this.latitude,this.longitude,this.numberOfItems(),this.showResults.bind(this))},n.prototype.loadAll=function(){this.isLoading(!0);this.windowXBeforeScrolling=window.scrollX;this.windowYBeforeScrolling=window.scrollY;this.getValuesFromInput();this.searchService.search(this.province,this.keywords(),this.price(),this.minprice(),this.maxprice(),this.selectedBuildingType(),this.latitude,this.longitude,this.numberOfItems()+this.numberOfItemsToShowPerLoad(),this.showResults.bind(this))},n.prototype.showResults=function(n){var i=this,f=this.keywords()!==""||this.selectedBuildingType()!=="none"||this.maxprice()>0||this.minprice()>0,t,r,u;this.isFiltered(f);f?(t=n.projects.filter(function(n){var t=!0;return t=t&&(i.keywords()===""||i.keywords()!==""&&n.DistanceToSearchedCity<=0),t=t&&(i.selectedBuildingType()==="none"||i.selectedBuildingType()!=="none"&&n.SalesUnitSearchedAmount>0),t=t&&(i.maxprice()===0||i.maxprice()>0&&n.InPriceRange>0),n.IsMatch=t,t}),t=t.slice(0,this.numberOfExactResultsToShow()),r=n.projects,t.length>0&&(u=this.numberOfOtherResultsToShow()*Math.floor(n.projects.length-t.length/this.numberOfOtherResultsToShow()),u==0&&(u=this.numberOfOtherResultsToShow()),r=r.slice(t.length,t.length+u)),this.exactMatches(t),this.projects(r)):(this.exactMatches([]),this.projects(n.projects));this.numberOfItems(n.projects.length);this.totalNumberOfItems(n.totalNumberOfResults);this.onSearchLoaded(n.projects);this.isLoading(!1);this.isLoadingInitially(!1);window.scrollTo(this.windowXBeforeScrolling,this.windowYBeforeScrolling)},n.prototype.getValuesFromInput=function(){var i=$("#price").val()||"",t=i.split("-"),n;t.length==2&&(this.minprice(t[0]),this.maxprice(t[1]));this.keywords($("#taginput").val()||"");this.price(i);this.selectedBuildingType($("#buildingtype").val()||"");n="";this.keywords()!==""&&(n+=this.keywords());this.price()!="none"&&(n!==""&&(n+=", "),n+=$("#price option:selected").text());this.selectedBuildingType()!="none"&&(n!==""&&(n+=", "),n+=$("#buildingtype option:selected").text());this.searchDescription(n)},n}();n.ProjectSearchViewModel=t})(t=n.ProjectSearch||(n.ProjectSearch={}))})(t=n.Components||(n.Components={}))}(Scripts||(Scripts={})),function(n){var t;(function(n){var t;(function(n){var t=function(){function n(n,t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w,b,k,d,g,nt,tt,it){it===void 0&&(it=!1);this.Id=n;this.Url=t;this.Title=i;this.City=r;this.Address=u;this.ShowEventLink=f;this.EventInThePictureUrl=e;this.EventInThePictureColor=o;this.EventInThePictureDate=s;this.EventInThePictureName=h;this.Images=c;this.BulletPoints=l;this.NumberOfHouses=a;this.NumberOfAppartments=v;this.NumberOfBuildingGrounds=y;this.price=p;this.buildingType=w;this.SearchLogging=b;this.IsSoldOut=k;this.SortOrder=d;this.DistanceToSearchedCity=g;this.SalesUnitSearchedAmount=nt;this.InPriceRange=tt;this.IsMatch=it;this.showUnitNumbers=ko.observable(a>0||v>0||y>0);this.eventInThePicture=ko.computed(function(){return s+"<br />"+h})}return n}();n.Project=t})(t=n.ProjectSearch||(n.ProjectSearch={}))})(t=n.Components||(n.Components={}))}(Scripts||(Scripts={})),function(n){var t;(function(n){var t;(function(n){var t=function(){function n(n,t){this.projects=[];this.totalNumberOfResults=0;this.projects=t;this.totalNumberOfResults=n}return n}();n.SearchResult=t})(t=n.ProjectSearch||(n.ProjectSearch={}))})(t=n.Components||(n.Components={}))}(Scripts||(Scripts={}));searchMap=null;projectSearchViewModel=null;$(document).ready(function(){var n=$("#search_filter"),h=n.attr("data-selectedKeywords")||"",u=n.attr("data-price")||"",f=0,e=0,t=u.split("-"),i,r;t.length==2&&(f=parseInt(t[0]),e=parseInt(t[1]));var c=n.attr("data-selectedSalesUnitType")||"",l=n.attr("data-selectedProvince")||"",o=0,s=n.attr("data-latitude");s!=undefined&&(o=parseFloat(s.replace(",",".")));i=0;r=n.attr("data-longitude");r!=undefined&&(i=parseFloat(r.replace(",",".")));var a=parseInt(n.attr("data-defaultDistanceGroupingKilometers"))||0,v=parseInt(n.attr("data-advancedSearchDistanceGroupingKilometers"))||0,y=parseInt(n.attr("data-maxpriceMarginPercentage"))||0,p=parseInt(n.attr("data-numberOfItemsToShowPerLoad"))||0,w=parseInt(n.attr("data-numberOfExactResultsToShow"))||0,b=parseInt(n.attr("data-numberOfOtherResultsToShow"))||0,k=n.attr("data-defaultCities")||"",d=n.attr("data-defaultProjects")||"";projectSearchViewModel=new Scripts.Components.ProjectSearch.ProjectSearchViewModel(new Scripts.Components.ProjectSearch.ProjectSearchService(a,v,y,k,d),l,h,u,f,e,c,o,i,p,w,b,function(n){setTimeout(function(){chopstickFlexslider();chopstickBlazy();chopstickBlocklink()},100);$.get("/api/sitecore/ProjectSearch/Projects",{},function(t){for(var u=[],f=[],i,e,r=0;r<n.length;r++)f.push(n[r].Id);for(r=0;r<t.length;r++)i=t[r],u.push({id:i.Id,tooltip:'<div class="p-i-map-tooltip-main"><a class="p-i-map-tooltip-image-link" href="'+i.Url+'"><figure class="p-i-map-mask"><img class="p-i-map-tooltip-image" src="'+i.ImageUrl+'" /><\/figure><\/a><h3 class="c-card__title u-plr-gamma p-i-map-tooltip-title-wrapper"><a href="'+i.Url+'" class="c-card__link p-i-map-tooltip-title"><span class="u-color-alpha-base">'+i.Title.split(" - ")[0]+"<\/span> "+i.Title.split(" - ")[1]+'<\/a><\/h3><p class="c-card__text u-plr-beta"><a href="'+i.Url+'" class="c-link c-link--neutral c-map-markers__link p-i-map-tooltip-address">'+i.Street+" "+i.Number+", "+i.City+'<\/a><\/p><div class="c-card__criteria p-i-map-tooltip-criteria"><\/div><\/div>',address:i.Street+" "+i.Number+", "+i.City,latitude:i.Latitude,longitude:i.Longitude,markerType:"house",link:i.Url,icon:i.IconUrl,iconHover:"/Design/img/png/marker-blue.png",iconViewed:i.IconUrl,iconPerfectMatch:i.IconUrl,iconActive:"/Design/img/png/marker-blue.png",isPerfect:f.indexOf(i.Id)>=0});e={center:{lat:51.117077,lng:3.715433},zoom:11,mapTypeControl:!1,styles:[{featureType:"administrative.country",elementType:"geometry.stroke",stylers:[{visibility:"on"},{color:"#4ba4df"}]},{featureType:"administrative.country",elementType:"labels.text.fill",stylers:[{color:"#4ba4df"}]},{featureType:"administrative.province",elementType:"labels.text.fill",stylers:[{color:"#6d6d6d"},{visibility:"on"}]},{featureType:"administrative.locality",elementType:"labels.text.fill",stylers:[{color:"#555555"}]},{featureType:"administrative.neighborhood",elementType:"labels.text.fill",stylers:[{color:"#999999"}]},{featureType:"landscape",elementType:"all",stylers:[{color:"#f2f2f2"}]},{featureType:"landscape.natural",elementType:"geometry.fill",stylers:[{visibility:"on"}]},{featureType:"landscape.natural.landcover",elementType:"geometry.fill",stylers:[{visibility:"on"}]},{featureType:"poi.attraction",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"poi.business",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"poi.government",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"poi.medical",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"poi.park",elementType:"geometry.fill",stylers:[{color:"#e1eddd"}]},{featureType:"poi.place_of_worship",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"poi.school",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"poi.sports_complex",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"road",elementType:"all",stylers:[{saturation:"-100"},{lightness:"45"}]},{featureType:"road.highway",elementType:"all",stylers:[{visibility:"simplified"}]},{featureType:"road.highway",elementType:"geometry.fill",stylers:[{color:"#f2f2f2"}]},{featureType:"road.highway",elementType:"labels.icon",stylers:[{visibility:"on"},{hue:"#c6e7fd"},{saturation:"100"},{lightness:"5"}]},{featureType:"road.highway.controlled_access",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"road.highway.controlled_access",elementType:"geometry.fill",stylers:[{color:"#f2f2f2"}]},{featureType:"road.highway.controlled_access",elementType:"geometry.stroke",stylers:[{visibility:"off"}]},{featureType:"road.highway.controlled_access",elementType:"labels.icon",stylers:[{lightness:"1"},{saturation:"100"},{hue:"#c6e7fd"}]},{featureType:"road.arterial",elementType:"geometry.fill",stylers:[{color:"#ffffff"}]},{featureType:"road.arterial",elementType:"labels.text.fill",stylers:[{color:"#8a8a8a"}]},{featureType:"road.arterial",elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"road.local",elementType:"geometry.fill",stylers:[{color:"#ffffff"}]},{featureType:"transit",elementType:"all",stylers:[{visibility:"off"}]},{featureType:"transit.station.airport",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"transit.station.airport",elementType:"geometry.fill",stylers:[{lightness:"33"},{saturation:"-100"},{visibility:"on"}]},{featureType:"transit.station.bus",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"transit.station.rail",elementType:"all",stylers:[{visibility:"on"}]},{featureType:"water",elementType:"all",stylers:[{color:"#c6e7fd"},{visibility:"on"}]},{featureType:"water",elementType:"geometry.fill",stylers:[{color:"#c6e7fd"}]},{featureType:"water",elementType:"labels.text.fill",stylers:[{color:"#ffffff"}]},{featureType:"water",elementType:"labels.text.stroke",stylers:[{visibility:"off"}]}]};searchMap=new interactiveMapGoogle("interactive-map",u,e,700,".c-map-markers__hover",".c-map-markers__link")})});ko.applyBindings(projectSearchViewModel);projectSearchViewModel.search()})