var BaseSnelzoekFilter=function(n){var t=this;t.TemplateName=ko.observable(n.GetTypeString);t.Titel=ko.observable(n.Omschrijving);t.Omschrijving=ko.observable(n.Omschrijving);t.FilterKey=ko.observable(n.UrlPrefix);t.OnPageHelpText=ko.observable(n.OnPageHelpText);t.Id=ko.computed(function(){return t.FilterKey()+t.TemplateName()});t.createCommandChangeValue=function(n){return n==undefined||n===""||n===","?"":"~"+t.FilterKey()+"["+n+"]"}},BaseSlider=function(n){var t=this;ko.mapping.fromJS(n,{},t);t.Rounding=n.IntervalValue>0?n.IntervalValue:1;n.ToonUnitVoorValue?(t.PrependValue=n.Unit,t.AppendValue=""):(t.PrependValue="",t.AppendValue=n.Unit);t.ShowBereikMaxOpen=ko.pureComputed(function(){return t.IsBereikMaxOpen&&t.ValueMax()>=t.BereikMax()},this);t.ShowBereikMinOpen=ko.pureComputed(function(){return t.IsBereikMinOpen&&t.ValueMin()<=t.BereikMin()},this);t.GetCommand=function(){var n=t.ValueMin()+","+t.ValueMax();return t.createCommandChangeValue(n)};t.valueChanged=function(n,i){t.TemplateName()==="MaxFilter"?t.ValueMax(n):(t.ValueMin(n),t.ValueMax(i))};ko.utils.extend(t,new BaseSnelzoekFilter(n))},AutocompleteFilter=function(n){ko.utils.extend(this,new BaseSnelzoekFilter(n));var t=this;t.TemplateName("AutocompleteFilter");t.PlaceholderTekst=ko.observable(n.PlaceholderText);t.search=ko.observable("").extend({throttle:500});t.selectItemCallback=function(){};t.settings={url:"/webapi/zoeken/GetPlaatsen",selectCallback:t.selectItemCallback};t.GetCommandValue=function(){return $("#"+t.Id()).val()};t.GetCommand=function(){var n=t.GetCommandValue();return t.createCommandChangeValue(n)}},CheckboxFilter=function(n){var t,i;ko.utils.extend(this,new BaseSnelzoekFilter(n));t=this;t.TemplateName("CheckboxFilter");t.Opties=ko.observableArray();n.OptieLijst!=null&&n.OptieLijst.Opties!=null&&(i=$.map(n.OptieLijst.Opties,function(n){var t=new OptieModel(n);return new t}),t.Opties(i));t.GetCommand=function(){var n=[],i="";return ko.utils.arrayForEach(t.Opties(),function(t){t.Selected()&&n.push(t.Value())}),i=n.join(","),t.createCommandChangeValue(i)}},OptieModel=function(n){var t=this;t.Titel=ko.observable(n.Title+" ");t.Aantal=ko.observable("("+n.Aantal+")");t.Value=ko.observable(n.Value);t.Id=ko.observable("o"+n.Id);t.Selected=ko.observable(n.Selected)},MaxFilter=function(n){var t=this;n.ValueMin=n.ValueMin||0;n.GetTypeString="MaxFilter";ko.utils.extend(t,new BaseSlider(n));t.GetCommandValue=function(){return t.ValueMax()}},MinMaxFilter=function(n){var t=this;n.GetTypeString="MinMaxFilter";ko.utils.extend(t,new BaseSlider(n))},PlaatsStraalFilter=function(n){ko.utils.extend(this,new BaseSnelzoekFilter(n));var t=this;t.TemplateName("PlaatsStraalFilter");t.AutocompleteFilter=ko.observable(new AutocompleteFilter(n.TextinputFilter));t.MaxFilter=ko.observable(new MaxFilter(n.MaxFilter));t.GetCommand=function(){var n=t.AutocompleteFilter().GetCommandValue(),i=t.MaxFilter().GetCommandValue(),r=n+","+i;return t.createCommandChangeValue(r)}},SnelzoekenViewModel=function(){var n=this;n.Filters=ko.observableArray();n.ZoekenUrl=ko.observable();n.AantalResultaten=ko.observable();n.quickSearchCss=ko.observable("");n.BaseUrl=ko.observable();n.InitSliderFilters=function(){n.Filters().forEach(function(n){(n.TemplateName()==="MinMaxFilter"||n.TemplateName()==="MaxFilter"||n.TemplateName()==="PlaatsStraalFilter")&&(n.TemplateName()==="PlaatsStraalFilter"?InitSlider(n.MaxFilter()):InitSlider(n))})};n.getData=function(){$.getJSON("/webapi/zoeken/Quickfind/",function(t){var i=$.map(t.Filters,function(t){return t.SnelzoekPresentatie==="MaxSlider"?(n.quickSearchCss("sliderEdition"),new MaxFilter(t)):t.SnelzoekPresentatie==="MinMaxSlider"?(n.quickSearchCss("sliderEdition"),new MinMaxFilter(t)):t.SnelzoekPresentatie==="Autocomplete"?new AutocompleteFilter(t):t.SnelzoekPresentatie==="CheckboxFilter"?new CheckboxFilter(t):t.SnelzoekPresentatie==="RadioFilter"?new RadioFilter(t):t.SnelzoekPresentatie==="PlaatsStraal"?(n.quickSearchCss("sliderEdition"),new PlaatsStraalFilter(t)):(t.SnelzoekPresentatie==="TabFilter"||t.SnelzoekPresentatie==="SorteerFilter"||t.SnelzoekPresentatie==="PagingFilter",null)});n.ZoekenUrl(t.Url);n.AantalResultaten(t.AantalResultaten);n.Filters(i);n.InitSliderFilters();$(".quickSearch .tipster").tooltipster({multiple:!0})})};n.SubmitSnelzoeken=function(){var t="";ko.utils.arrayForEach(n.Filters(),function(n){t+=n.GetCommand()});window.location=n.BaseUrl()+"#"+n.ZoekenUrl()+t};n.getData()}