{"version":3,"sources":["page/relatedArticleListing.js"],"names":["jQuery","fn","InitializeSearchPage","option","pageContent","$","this","undefined","get","extend","initialJsonData","serviceUrl","$filtersTrigger","viewModelJs","JSON","parse","viewModel","ko","mapping","fromJS","$scrollDefaultPosition","height","offset","top","SelectedFilters","observableArray","IsSearchRunning","observable","HasSearchRun","IsSelectAll","IsClearAll","HasPendingUpdates","ScrollPositionUpdate","ActivePageView","ActiveEventsPageView","ActivePracticeFilter","ActiveArticleTypeFilter","UpcomingEventsTake","SearchFilters","InitialPageSize","GetUpcomingEventPagination","computed","UpcomingEvents","slice","LoadNextUpcomingEventsPage","take","Take","HasSelectedFilters","utils","arrayFirst","PracticeFilters","item","IsSelected","IndustryFilters","TypeFilters","ArticleTypeFilters","PublicationTypeFilters","EventTypeFilters","NewsTypeFilters","BlogTypeFilters","PastDateFilters","DecodeHtmlInput","encodedString","textArea","document","createElement","innerHTML","value","SearchFiltersSet","SetActivePageView","activepage","SetActiveEventsPageView","IsVisibleList","activePage","activeEventPage","activeArticleFilter","searchFilterSet","IsActivePageView","IsActiveEventPageView","GetFirstCategory","inputstr","categoryTypes","split","length","GetCurrentArticleFilter","HasOnlyArticleTypeFilter","filtersSet","key","hasOwnProperty","QueryString","forceScrollPosition","queryString","selectedItems","Array","arrayForEach","push","ID","join","dateArray","Url","DateFrom","DateTo","ClearSelectedFilters","Skip","ReloadFilters","window","scrollTop","Search","windowPosition","text","data","qs","History","getState","replaceState","options","initialTitle","LoadNextPage","GridData","LoadDataFromServer","viewModelToSend","GetRequestObject","ajax","url","type","dataType","contentType","toJSON","cache","success","results","resultsUpcoming","ResultCount","removeAll","HasMoreResults","SetSelectedFilters","error","xhr","textStatus","errorThrown","console","log","complete","animateGridInsert","elem","nodeType","hide","fadeIn","animateGridDelete","fadeOut","remove","ClearAllSearchFilters","callBack","ClearAdvancedSearchFilters","isFunction","ResetPracticeFilter","itemType","ParentName","onstatechange","qsParms","parseQueryString","currentSkip","newSkip","skip","parseInt","projectedTotal","pop","existingFiltersTypeFilters","articletypes","output","Filters","Filter","Name","hasFilters","reloadFilters","containsAdditionalFilters","reload","keyword","KeywordFilter","services","indexOf","lastChangedType","types","other","obj","date","FutureDateFilters","datefrom","dateto","DisplaySetFilters","applyBindings","location","href","scroll","NaN","searchCriteriaCookie","cookie","pushState"],"mappings":"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","file":"relatedArticleListing.js","sourcesContent":["jQuery.fn.InitializeSearchPage = function (option) {\r\n var defaults = {\r\n initialJsonData: null,\r\n serviceUrl: null\r\n };\r\n\r\n var pageContent = $(this);\r\n if (pageContent.get(0) === undefined)\r\n return;\r\n var option = $.extend({}, defaults, option);\r\n var $filtersTrigger = $('.js-customize-filters-trigger');\r\n // Load JSON data from model\r\n var viewModelJs = JSON.parse(option.initialJsonData);\r\n var viewModel = ko.mapping.fromJS(viewModelJs);\r\n var guidEmpty = '00000000-0000-0000-0000-000000000000';\r\n var $scrollDefaultPosition = $('.js-scroll-default-position');\r\n var $scrollOffset = $('.homepage-navigation').height() * 10;\r\n var defaultScrollTop = $scrollDefaultPosition.offset() !== undefined ? $scrollDefaultPosition.offset().top : \"\";\r\n\r\n // Extend View Model\r\n viewModel.SelectedFilters = ko.observableArray();\r\n viewModel.IsSearchRunning = ko.observable(false);\r\n viewModel.HasSearchRun = ko.observable(false);\r\n viewModel.IsSelectAll = ko.observable(false);\r\n viewModel.IsClearAll = ko.observable(false);\r\n viewModel.HasPendingUpdates = ko.observable(false);\r\n viewModel.ScrollPositionUpdate = ko.observable(false);\r\n viewModel.ActivePageView = ko.observable(\"latest\");\r\n viewModel.ActiveEventsPageView = ko.observable(\"upcomingevents\");\r\n viewModel.ActivePracticeFilter = ko.observable();\r\n viewModel.ActiveArticleTypeFilter = ko.observable();\r\n\r\n viewModel.UpcomingEventsTake = ko.observable(viewModel.SearchFilters.InitialPageSize());\r\n\r\n viewModel.GetUpcomingEventPagination = ko.computed(function () {\r\n return viewModel.UpcomingEvents().slice(0, viewModel.UpcomingEventsTake());\r\n });\r\n\r\n viewModel.LoadNextUpcomingEventsPage = function () {\r\n var take = viewModel.UpcomingEventsTake() + viewModel.SearchFilters.Take();\r\n viewModel.UpcomingEventsTake(take);\r\n };\r\n\r\n viewModel.HasSelectedFilters = function () {\r\n\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.PracticeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.IndustryFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.TypeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.PublicationTypeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.EventTypeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.NewsTypeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.BlogTypeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.PastDateFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n if (hasItem != null) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n viewModel.DecodeHtmlInput = function (encodedString) {\r\n var textArea = document.createElement('textarea');\r\n textArea.innerHTML = encodedString;\r\n return textArea.value != null && textArea.value != \"null\" ? textArea.value : \"\";\r\n };\r\n viewModel.SearchFiltersSet = ko.computed(function () {\r\n return viewModel.HasSelectedFilters();\r\n });\r\n viewModel.SetActivePageView = function (activepage) {\r\n if (activepage !== \"\")\r\n viewModel.ActivePageView(activepage);\r\n else\r\n viewModel.ActivePageView(\"featured\");\r\n };\r\n viewModel.SetActiveEventsPageView = function (activepage) {\r\n if (activepage !== \"\")\r\n viewModel.ActiveEventsPageView(activepage);\r\n else\r\n viewModel.ActiveEventsPageView(\"upcomingevents\");\r\n };\r\n viewModel.IsVisibleList = ko.computed(function () {\r\n var activePage = viewModel.ActivePageView();\r\n var activeEventPage = viewModel.ActiveEventsPageView();\r\n var activeArticleFilter = viewModel.ActiveArticleTypeFilter();\r\n var searchFilterSet = viewModel.SearchFiltersSet();\r\n if (activeArticleFilter === \"Events\" && activeEventPage !== \"upcomingevents\") {\r\n return true;\r\n } else if (activeArticleFilter === \"Events\" && activeEventPage === \"upcomingevents\") {\r\n return false;\r\n } else if (activePage === \"latest\" || searchFilterSet === true) {\r\n return true;\r\n }\r\n });\r\n viewModel.IsActivePageView = function (activepage) {\r\n return (viewModel.ActivePageView() === activepage);\r\n };\r\n viewModel.IsActiveEventPageView = function (activepage) {\r\n return (viewModel.ActiveEventsPageView() === activepage);\r\n };\r\n viewModel.GetFirstCategory = function (inputstr) {\r\n if (inputstr !== \"\" && inputstr !== null && inputstr !== undefined) {\r\n var categoryTypes = inputstr.split(\"|\");\r\n if (categoryTypes !== \"\" && categoryTypes.length !== 0)\r\n return categoryTypes[0];\r\n }\r\n };\r\n viewModel.GetCurrentArticleFilter = function () {\r\n var hasItem = ko.utils.arrayFirst(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n return hasItem;\r\n };\r\n viewModel.HasOnlyArticleTypeFilter = function () {\r\n var filtersSet = true;\r\n for (var key in viewModel.SearchFilters) {\r\n if (viewModel.SearchFilters.hasOwnProperty(key) && filtersSet === false) {\r\n if (viewModel.SearchFilters[key]() !== null && viewModel.SearchFilters[key]() !== undefined && viewModel.SearchFilters[key]().length > 0 && key !== \"ArticleTypeFilters\") {\r\n var rs = ko.utils.arrayFirst(viewModel.SearchFilters[key](), function (item) {\r\n return (item.IsSelected() == true);\r\n });\r\n if (rs !== null)\r\n filtersSet = false;\r\n }\r\n }\r\n }\r\n };\r\n\r\n // Build query string based on filters\r\n viewModel.QueryString = function (forceScrollPosition) {\r\n var queryString = \"\";\r\n var selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PracticeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.IndustryFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n }\r\n });\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"services=\" + selectedItems.join();\r\n }\r\n selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.TypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n }\r\n });\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"types=\" + selectedItems.join();\r\n }\r\n\r\n selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PublicationTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n }\r\n });\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"other=\" + selectedItems.join();\r\n }\r\n\r\n selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.NewsTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n }\r\n });\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"other=\" + selectedItems.join();\r\n }\r\n\r\n selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.EventTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n }\r\n });\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"other=\" + selectedItems.join();\r\n }\r\n\r\n selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.BlogTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n }\r\n });\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"other=\" + selectedItems.join();\r\n }\r\n\r\n selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PastDateFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n selectedItems.push(item.ID());\r\n var dateArray = item.Url().split(\"|\");\r\n if (!!dateArray && dateArray.length == 2) {\r\n viewModel.SearchFilters.DateFrom(dateArray[0])\r\n viewModel.SearchFilters.DateTo(dateArray[1])\r\n }\r\n }\r\n });\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"date=\" + selectedItems.join();\r\n } else {\r\n viewModel.SearchFilters.DateFrom(\"\")\r\n //viewModel.SearchFilters.DateTo(\"\")\r\n }\r\n if (!!viewModel.SearchFilters.DateFrom() && viewModel.SearchFilters.DateFrom().length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"datefrom=\" + viewModel.SearchFilters.DateFrom();\r\n }\r\n if (!!viewModel.SearchFilters.DateTo() && viewModel.SearchFilters.DateTo().length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"dateto=\" + viewModel.SearchFilters.DateTo();\r\n }\r\n\r\n selectedItems = new Array();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n if (item.ID() !== guidEmpty) {\r\n selectedItems.push(item.ID());\r\n } else {\r\n //All Filter selected - Clear search filters\r\n viewModel.SearchFilters.ClearSelectedFilters();\r\n return;\r\n }\r\n }\r\n });\r\n\r\n if (selectedItems.length > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"articletypes=\" + selectedItems.join();\r\n }\r\n\r\n if (viewModel.SearchFilters.Skip() > 0) {\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"skip=\" + viewModel.SearchFilters.Skip();\r\n }\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n queryString += \"reload=\" + viewModel.SearchFilters.ReloadFilters();\r\n queryString += (queryString != \"\" ? \"&\" : \"?\");\r\n\r\n if (!!forceScrollPosition && forceScrollPosition > 0) {\r\n queryString += \"scroll=\" + forceScrollPosition;\r\n } else {\r\n queryString += \"scroll=\" + $(window).scrollTop();\r\n }\r\n return queryString;\r\n };\r\n\r\n // Run search by pushing new state\r\n viewModel.Search = function () {\r\n var windowPosition = (viewModel.HasSelectedFilters()) ? $scrollDefaultPosition.offset().top : 1;\r\n\r\n if (viewModel.HasPendingUpdates() == false) {\r\n return;\r\n }\r\n\r\n if (!viewModel.HasSelectedFilters()) {\r\n $filtersTrigger.text($filtersTrigger.data('expanded-label'))\r\n }\r\n\r\n //viewModel.HasMoreResults(false);\r\n viewModel.SearchFilters.Skip(0);\r\n var qs = viewModel.QueryString(windowPosition);\r\n viewModel.ScrollPositionUpdate(false);\r\n var data = History.getState().data;\r\n data['qs'] = qs;\r\n History.replaceState(data, History.options.initialTitle, qs);\r\n }\r\n\r\n // Load next page\r\n viewModel.LoadNextPage = function () {\r\n if (viewModel.IsSearchRunning())\r\n return;\r\n viewModel.IsSearchRunning(true);\r\n viewModel.SearchFilters.Skip(viewModel.GridData().length);\r\n viewModel.LoadDataFromServer();\r\n var qs = viewModel.QueryString();\r\n viewModel.ScrollPositionUpdate(false);\r\n var data = History.getState().data;\r\n data['qs'] = qs;\r\n History.replaceState(data, History.options.initialTitle, qs);\r\n }\r\n\r\n // Load data from server\r\n viewModel.LoadDataFromServer = function () {\r\n var viewModelToSend = GetRequestObject(viewModel.SearchFilters);\r\n\r\n $.ajax({\r\n url: option.serviceUrl,\r\n type: \"POST\",\r\n dataType: \"json\",\r\n contentType: \"application/json; charset=utf-8\",\r\n data: ko.mapping.toJSON(viewModelToSend),\r\n cache: false,\r\n success: function (data) {\r\n var results = ko.observableArray();\r\n var resultsUpcoming = ko.observableArray();\r\n if (viewModel.SearchFilters.Skip() == 0) {\r\n viewModel.ResultCount(0);\r\n viewModel.GridData.removeAll();\r\n viewModel.UpcomingEvents.removeAll();\r\n }\r\n ko.mapping.fromJS(data.GridData, {}, results);\r\n ko.utils.arrayForEach(results(), function (item) {\r\n viewModel.GridData.push(item);\r\n });\r\n\r\n ko.mapping.fromJS(data.UpcomingEvents, {}, resultsUpcoming);\r\n ko.utils.arrayForEach(resultsUpcoming(), function (item) {\r\n viewModel.UpcomingEvents.push(item);\r\n });\r\n viewModel.ResultCount(data.ResultCount);\r\n viewModel.HasMoreResults(data.HasMoreResults);\r\n viewModel.SearchFilters.ReloadFilters(data.SearchFilters.ReloadFilters);\r\n viewModel.SetSelectedFilters();\r\n viewModel.HasPendingUpdates(false);\r\n viewModel.SearchFilters.Skip(0);\r\n viewModel.SearchFilters.Take(10);\r\n\r\n },\r\n error: function (xhr, textStatus, errorThrown) {\r\n console.log(xhr);\r\n console.log(\"textStatus : \" + textStatus);\r\n console.log(\"errorThrown : \" + errorThrown);\r\n },\r\n complete: function name(xhr, textStatus) {\r\n viewModel.IsSearchRunning(false);\r\n }\r\n });\r\n }\r\n\r\n // Animations for new lit items\r\n viewModel.animateGridInsert = function (elem) { if (elem.nodeType === 1) $(elem).hide().fadeIn(800) }\r\n viewModel.animateGridDelete = function (elem) { if (elem.nodeType === 1) $(elem).fadeOut(800, function () { $(elem).remove(); }) }\r\n\r\n // Clear all filters and run search\r\n viewModel.SearchFilters.ClearSelectedFilters = function () {\r\n viewModel.SearchFilters.ClearAllSearchFilters();\r\n viewModel.SelectedFilters.removeAll();\r\n viewModel.HasPendingUpdates(true);\r\n viewModel.Search();\r\n };\r\n\r\n // Clear all filters\r\n viewModel.SearchFilters.ClearAllSearchFilters = function (callBack) {\r\n viewModel.SearchFilters.ClearAdvancedSearchFilters(callBack);\r\n };\r\n\r\n viewModel.SearchFilters.ClearAdvancedSearchFilters = function (callBack) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PracticeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.IndustryFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.TypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PublicationTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.EventTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.NewsTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.BlogTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PastDateFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n viewModel.SearchFilters.DateFrom('');\r\n //viewModel.SearchFilters.DateTo('');\r\n if (!!callBack && $.isFunction(callBack)) {\r\n callBack();\r\n }\r\n };\r\n viewModel.ResetPracticeFilter = function (itemType) {\r\n switch (itemType) {\r\n case \"practice\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PracticeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n case \"industry\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.IndustryFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n case \"publication\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PublicationTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n case \"event\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.EventTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n case \"date\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PastDateFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n case \"news\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.NewsTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n case \"blog\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.BlogTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n case \"All\":\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PracticeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.IndustryFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PublicationTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.EventTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.NewsTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.BlogTypeFilters(), function (item) {\r\n item.IsSelected(false);\r\n });\r\n break;\r\n }\r\n viewModel.HasPendingUpdates(true);\r\n viewModel.Search();\r\n };\r\n\r\n // Set selected filters\r\n viewModel.SetSelectedFilters = function () {\r\n var practiceCount = 0;\r\n var officeCount = 0;\r\n var industryCount = 0;\r\n viewModel.SelectedFilters.removeAll();\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PracticeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.IndustryFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.TypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n viewModel.ActiveArticleTypeFilter(item.ParentName());\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PublicationTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.EventTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.NewsTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.BlogTypeFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PastDateFilters(), function (item) {\r\n if (item.IsSelected() == true) {\r\n viewModel.SelectedFilters.push(item);\r\n }\r\n });\r\n }\r\n window.onstatechange = function () {\r\n if (viewModel.IsSearchRunning())\r\n return;\r\n var currentState = History.getState();\r\n var qs = History.getState().data['qs'];\r\n var qsParms = !!qs ? parseQueryString(qs) : {};\r\n\r\n var currentSkip = viewModel.GridData().length;\r\n var newSkip = 0;\r\n var filterCount = 0;\r\n if (!!qsParms.skip && qsParms.skip > 0) {\r\n newSkip = parseInt(qsParms.skip);\r\n }\r\n var projectedTotal = newSkip + viewModel.SearchFilters.Take();\r\n if (projectedTotal < currentSkip && newSkip != 0) {\r\n // This is here for a back button after a page scroll\r\n viewModel.IsSearchRunning(true);\r\n viewModel.HasMoreResults(true);\r\n viewModel.HasSearchRun(true);\r\n viewModel.SearchFilters.Skip(newSkip);\r\n while (viewModel.GridData().length > projectedTotal) {\r\n var popped = viewModel.GridData.pop();\r\n }\r\n viewModel.IsSearchRunning(false);\r\n } else {\r\n // New filters have been selected so run search\r\n var existingFiltersTypeFilters = new Array();\r\n if (!!qsParms.articletypes && qsParms.articletypes.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n var output = {\r\n ID: item.ID(),\r\n Filters: item.Filter(),\r\n IsSelected: item.IsSelected(),\r\n Name: item.Name()\r\n };\r\n existingFiltersTypeFilters.push(output);\r\n });\r\n }\r\n viewModel.SearchFilters.ClearAllSearchFilters();\r\n var hasFilters = false;\r\n var reloadFilters = false;\r\n var containsAdditionalFilters = false;\r\n\r\n if (!!qsParms.reload && qsParms.reload.length > 0) {\r\n reloadFilters = (qsParms.reload == \"true\");\r\n }\r\n viewModel.SearchFilters.ReloadFilters(reloadFilters);\r\n if (!!qsParms.keyword && qsParms.keyword.length > 0) {\r\n viewModel.SearchFilters.KeywordFilter(qsParms.keyword);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n viewModel.SearchFilters.Skip(newSkip);\r\n\r\n if (!!qsParms.services && qsParms.services.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PracticeFilters(), function (item) {\r\n if (qsParms.services.indexOf(item.ID()) >= 0) {\r\n if (!(item.ID() === '0a774288-0858-454b-af7c-1614bd4680df' && lastChangedType === 'IndustryFilter')) {\r\n debugger;\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.IndustryFilters(), function (item) {\r\n if (qsParms.services.indexOf(item.ID()) >= 0) {\r\n if (!(item.ID() === '0a774288-0858-454b-af7c-1614bd4680df' && lastChangedType === 'ServiceFilters')) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n }\r\n });\r\n }\r\n if (!!qsParms.types && qsParms.types.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.TypeFilters(), function (item) {\r\n if (qsParms.types.indexOf(item.ID()) >= 0) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n }\r\n });\r\n }\r\n if (!!qsParms.other && qsParms.other.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PublicationTypeFilters(), function (item) {\r\n if (qsParms.other.indexOf(item.ID()) >= 0) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.NewsTypeFilters(), function (item) {\r\n if (qsParms.other.indexOf(item.ID()) >= 0) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.EventTypeFilters(), function (item) {\r\n if (qsParms.other.indexOf(item.ID()) >= 0) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n });\r\n ko.utils.arrayForEach(viewModel.SearchFilters.BlogTypeFilters(), function (item) {\r\n if (qsParms.other.indexOf(item.ID()) >= 0) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n });\r\n }\r\n if (!!qsParms.articletypes && qsParms.articletypes.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n ko.utils.arrayForEach(existingFiltersTypeFilters, function (obj) {\r\n if (item.ID() === obj.ID && item.Name() === obj.Name && obj.IsSelected === true) {\r\n item.IsSelected(true);\r\n }\r\n });\r\n });\r\n }\r\n if (!!qsParms.date && qsParms.date.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.PastDateFilters(), function (item) {\r\n if (qsParms.date.indexOf(item.ID()) >= 0) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n });\r\n }\r\n\r\n if (!!qsParms.date && qsParms.date.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.FutureDateFilters(), function (item) {\r\n if (qsParms.date.indexOf(item.ID()) >= 0) {\r\n item.IsSelected(true);\r\n hasFilters = true;\r\n containsAdditionalFilters = true;\r\n }\r\n });\r\n }\r\n\r\n if (!!qsParms.datefrom && qsParms.datefrom.length > 0) {\r\n viewModel.SearchFilters.DateFrom(qsParms.datefrom);\r\n }\r\n\r\n if (!!qsParms.dateto && qsParms.dateto.length > 0) {\r\n viewModel.SearchFilters.DateTo(qsParms.dateto);\r\n }\r\n\r\n if (!viewModel.ScrollPositionUpdate()) {\r\n viewModel.LoadDataFromServer();\r\n viewModel.HasSearchRun(hasFilters);\r\n }\r\n\r\n if (containsAdditionalFilters === true) {\r\n viewModel.DisplaySetFilters(containsAdditionalFilters);\r\n }\r\n }\r\n return;\r\n }\r\n // Set filters that might have been included from a back button\r\n viewModel.SetSelectedFilters();\r\n\r\n // Apply Bindings\r\n ko.applyBindings(viewModel, pageContent.get(0));\r\n\r\n // Check for scroll in query string\r\n var qsParms = parseQueryString(window.location.href);\r\n var scrollPosition = 0;\r\n if (!!qsParms.scroll && qsParms.scroll.length > 0) {\r\n scrollPosition = parseInt(qsParms.scroll);\r\n }\r\n\r\n if (!!qsParms.articletypes && qsParms.articletypes.length > 0) {\r\n ko.utils.arrayForEach(viewModel.SearchFilters.ArticleTypeFilters(), function (item) {\r\n if (item.ID() === qsParms.articletypes) {\r\n if (!!qsParms.skip && qsParms.skip > 0) {\r\n if (parseInt(qsParms.scroll) !== NaN) {\r\n viewModel.SearchFilters.Take(parseInt(parseInt(qsParms.skip) + 10));\r\n }\r\n }\r\n item.IsSelected(true);\r\n viewModel.LoadDataFromServer();\r\n }\r\n });\r\n }\r\n if (viewModel.SelectedFilters().length > 0) {\r\n viewModel.HasSearchRun(true);\r\n viewModel.IsSelectAll(false);\r\n viewModel.IsClearAll(false);\r\n } else {\r\n viewModel.IsSelectAll(true);\r\n viewModel.IsClearAll(false);\r\n var searchCriteriaCookie = $.cookie('_home_page_search_critera');\r\n if (!!searchCriteriaCookie) {\r\n viewModel.ScrollPositionUpdate(false);\r\n History.pushState({\r\n qs: searchCriteriaCookie\r\n }, History.options.initialTitle, searchCriteriaCookie);\r\n }\r\n }\r\n};"]}