{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./source-files/app/common/services/builders.js","webpack:///./source-files/app/common/services/navigation.js","webpack:///./source-files/app/common/services/selectors.js","webpack:///./source-files/app/listings/search/SearchSynonyms.js","webpack:///./source-files/app/config.js","webpack:///./source-files/app/common/services/client.js","webpack:///./source-files/app/common/services/api.js","webpack:///./source-files/app/listings/components/_TabItem.js","webpack:///./source-files/app/common/services/queries.js","webpack:///./source-files/app/common/services/actions/index.js","webpack:///./source-files/app/common/services/lru-cache.js","webpack:///./source-files/app/common/routes/router.js","webpack:///./source-files/app/common/services/reducers/entries.js","webpack:///./source-files/app/common/routes/routes.js","webpack:///./source-files/app/common/services/reducers/toggle.js","webpack:///./source-files/app/common/services/reducers/cookieData.js","webpack:///./source-files/app/listings/search/SearchItem.js","webpack:///./source-files/app/common/services/reducers/initialise-settings.js","webpack:///./source-files/app/common/services/reducers/filters.js","webpack:///./source-files/app/common/services/reducers/search.js","webpack:///./source-files/app/common/services/reducers/index.js","webpack:///./source-files/app/common/services/store.js","webpack:///./source-files/app/common/services/actions/toggle.js","webpack:///./source-files/app/common/services/actions/initialise-settings.js","webpack:///./source-files/app/common/services/actions/search-entries.js","webpack:///./source-files/app/expressions.js","webpack:///./source-files/app/common/components/_CheckboxFilter.js","webpack:///./source-files/app/common/services/actions/filters.js","webpack:///./source-files/app/common/components/_Pager.js","webpack:///./source-files/app/listings/search/SearchTabs.js","webpack:///./source-files/app/listings/search/SearchInput.js","webpack:///./source-files/app/listings/search/SearchAccordianToggle.js","webpack:///./source-files/app/listings/search/SearchAuthor.js","webpack:///./source-files/app/listings/search/SearchTechnicalFilters.js","webpack:///./source-files/app/listings/components/_MediaCheckBox.js","webpack:///./source-files/app/listings/search/SearchMediaFilters.js","webpack:///./source-files/app/listings/search/SearchOrderFilters.js","webpack:///./source-files/app/listings/search/SearchFilter.js","webpack:///./source-files/app/listings/search/SearchResults.js","webpack:///./source-files/app/boot/boot.search.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","installedChunks","push","Object","prototype","hasOwnProperty","call","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fullfilled","j","depId","splice","__webpack_require__","s","installedModules","48","exports","module","l","m","c","d","name","getter","o","defineProperty","configurable","enumerable","get","r","value","n","__esModule","object","property","p","jsonpArray","window","oldJsonpFunction","bind","slice","addWeightedField","fieldName","weight","addOrderByField","direction","formatDate","date","entryDate","Date","getDate","getMonth","getFullYear","formatDateFriendly","formatMonth","monthName","formatMonthThreeLetters","nth","range","low","hi","rangeRec","vals","createRowsArray","theArray","numItemsPerRow","rows","Array","Math","ceil","map","row","idx","chunks","arr","size","isArray","TypeError","getEventDate","entry","eventDate","startDate","from","endDate","to","getUrl","getPublishDate","sys","contentTypeId","year","publishDate","metadata","pageDate","version","published","modified","getDescText","descText","searchContent","summary","description","toString","profile","videoDescription","schemeDescription","replace","entityToChar","sLength","substring","trim","getCSWIPTitle","title","schemeName","getPageYear","schemePublishedDate","getPageDateShort","getUTCMonth","y","getUTCFullYear","getDateAnnouncedShort","dateAnnounced","_lruCache","day","mL","mS","getDay","monthNo","isShort","isSearchResultsPage","RegExp","currentUrl","location","href","slug","preString","pathname","includes","lastIndexOf","endsWith","isNSIRCSearchResultsPage","isCSWIPSearchResultsPage","isTWIINSearchResultsPage","test","whichWebsiteToDisplayOn","buildNewsEventsUrl","list","uri","startsWith","str","textarea","document","createElement","innerHTML","Cache","cache","LruCache","this","request","id","key","execute","promise","set","cacheFunc","navigate","navigateFacet","newSearch","search","router","toUrl","lastSearch","settings","buildUrl","addFilter","filterName","checked","_navigate","currentFilter","index","split","indexOf","filter","v","_defineProperty3","default","toggleFilter","_navigate2","changeDateFilter","_navigate3","currentDate","month","changeFilter","removeAdvancedFilters","filterNames","keys","changeSchemesFilter","changeFilters","filters","_extends3","pageIndex","_navigate4","getEntries","state","entries","getSearch","getLoadingEntries","loadingEntries","getSelectedEntry","selectedEntry","getLoadingSelectedEntry","loadingSelectedEntry","getFilters","getSettings","toggleSearch","toggle","_navigation","_ref","term","synonyms","loadedSynonyms","toLowerCase","e","console","log","tot","_react2","_builders","cswipSchemesContentType","allFields","path","faqListerContentType","SETTINGS","appId","pageSize","weightedFields","taxonomyFilterPaths","news","taxonomyFilters","orderBy","events","TWIInnovationNetworkEventsAppId","careers","ourstories","insights","GenericInsightsAppId","atoz","IMReportsListerAppId","IMReportsGridAppId","JIPLister","PublishedPapersLister","CSWIPSchemesAppId","CSWIPSearchAppId","CSWIPNewsAppId","CSWIPInsightsAppId","TWIInnovationNetworkNewsAppId","TWIInnovationNetworkSearchAppId","memberListAppId","PublicFundedProjectsListerAppId","CoreResearchProgrammeListerAppId","FAQListerAppId","CTLFAQListerAppId","TWIDEInsightsAppId","JobKnowledgeListerAppId","NSIRCNewsAppId","NSIRCPublicationsAppId","NSIRCThesesAppId","NSIRCDissertationsAppId","NSIRCStudentProfilesAppId","NSIRCInsightsAppId","NSIRCCareersAppId","NSIRCSearchAppId","OurPeopleAppId","GenericPressReleasesAppId","GenericShowcaseAppId","TWICLCompaniesAppId","TWICLCertificationsAppId","GenericSearchAppId","GenericWebpageListerAppId","DigitalProductFinderAppId","TWIJobsAppId","TWIJobsDescriptionAppId","TWIInnovationNetworkTAPsAppId","GenericVideosAppId","GenericVideoDisplayAppId","VirtualAcademyAppId","isProd","process","apiPrefix","SYNONYMS","Configuration","rootUrl","accessToken","versionStatus","projectId","_contensisDeliveryApi","forEach","_config","client","Client","create","CachedSearch","clientConfig","taxonomyLookup","query","JSON","stringify","contentTypes","_this","taxonomy","resolveChildren","childDepth","then","node","extendTaxonomyNode","order","_this2","getNodeByPath","_this3","catch","remove","_this4","getTaxonomyId","children","parts","cachedSearch","_callee","arguments","undefined","_regenerator2","wrap","_context","prev","next","Function","Query","concat","_toConsumableArray3","_expressions","buildExpressions","addOrderByQueries","sent","sort","queries","sortOrder","abrupt","stop","_callee2","orderBySettings","orderQuery","_context2","_","_callee3","items","entryData","response","json","paths","_context3","pageName","commonEntryFields","language","fetch","method","headers","Accept","Content-Type","body","dataFormat","_callee4","startIndex","endIndex","_context4","parseInt","_callee5","contentType","_context5","getContentType","getTaxonomyFilters","t0","t1","getCheckboxes","checkBoxFilters","t2","getTextFilters","textFilters","getTaxonomyFiltersByPath","t3","getListItems","listFilters","t4","taxonomyPathFilters","_callee6","taxonomyFields","taxonomyPromises","_context6","fields","field","taxonomyKey","validations","taxonomyRoot","getTaxonomyNode","Promise","all","reduce","_callee7","taxonomyPaths","_context7","getTaxonomyNodeByPath","_callee8","taxonomyField","_context8","CONTENT_TYPE_ID","find","_callee9","_context9","FilterCollection","_client","a","allowedValues","values","_reactRedux","Actions","connect","dispatch","toggleTabList","_toUrl","currentSearch","type","selected","isActive","searchType","eventType","url","className","onClick","preventDefault","stopPropagation","aria-selected","Op","equalTo","includeInSearch","or","and","exists","cswipContentType","contains","twiinContentType","genericSearchContentType","baseUri","microsite","in","searchTerm","freeText","weightedSearchTerm","addRange","containsSearch","authorSearch","author","searchAll","searchWeldasearch","weldasearch","not","searchTabTypes","charAt","substr","MediaQueryBuilder","contentCategory","filterUserGroupContent","isAuth","groups","listSearchType","filterQueries","taxonomyfilters","filterType","categoryPickerTaxonomy","checkboxFilters","tf","x","Name","fq","newsDateFilters","between","standardDateFilters","publishDateFilters","section","dateRangeFilter","lessThanOrEqualTo","greaterThanOrEqualTo","startOfDay","isPublished","asc","OrderBy","desc","minKey","maxKey","startWith","letter","rangeSingle","pathStartsWith","filterBySection","sections","filterSectionByPage","SectionToContentTypeMap","filterSectionByContentType","pageDateFilter","pageDateYearFilter","dateAnnouncedFilter","projectStatus","status","excludeHomePage","hideFromListingPage","orPathEndsWith","getMicrositeNews","siteName","getGenericInsights","showEventOnCorporate","microSiteName","getMicrositeEvents","getPrivateEvents","companyName","getShowcase","showcaseCollection","getMicrositeInsights","hideFromCorporate","notNSIRCVacancies","NSIRCVacancies","ourPeopleFilter","nsircSearch","cswipSearch","FAQQuery","certificationFilter","sitename","certifiedCompanyFilter","Type","twiJobsFilters","_search","jobType","workingHours","distance","lon","lat","today","future","setFullYear","distanceWithin","datePostedFilter","searchDatePosted","toISOString","excludeFromSearch","TAPsFilter","Topics","Industries","getVideos","getVirtualAcademy","_filters","_searchEntries","_initialiseSettings","_toggle","CacheNode","_classCallCheck3","limit","head","tail","setHead","_router2","routes","defaultRoute","autoCleanUp","usePlugin","_listeners2","_browser2","useHash","navigateToState","dependencies","toState","fromState","toRoute","onActivate","resolve","store","useMiddleware","onhashchange","setTimeout","hash","matchPath","currentState","getState","getDependencies","action","SEARCH_ENTRIES_COMPLETE","params","searchEntries","TOGGLE_SEARCH_COMPLETE","GET_COOKIE_DATA_COMPLETE","cookieData","SearchItem","sectionType","sysUri","element","sectionTypeNW","join","sysUriNW","renderTypeTag","permission","renderMemberTag","dangerouslySetInnerHTML","__html","xmlns","xmlnsXlink","xlinkHref","renderCRPReportDiv","propTypes","PropTypes","INITIALISE_SETTINGS_COMPLETE","LOAD_SYNONYMS_COMPLETE","LOAD_FILTERS_COMPLETE","RESET_SEARCH","SET_SEARCH_TERM","_redux","combineReducers","entriesReducer","searchReducer","filtersReducer","intialiseSettingsReducer","router5Reducer","cookieDataReducer","toggleReducer","_reduxRouter","initialState","enhancers","applyMiddleware","thunkMiddleware","router5Middleware","composeEnhancers","compose","createStore","_reducers2","setDependency","_asyncToGenerator3","mark","toggleSearchComplete","toggleSearchError","_x","_x2","TOGGLE_SEARCH_ERROR","error","initialiseSettings","auth","jobListingPageUrl","freeTrialExpired","popularSearches","pressReleasesBaseUri","eventsBaseUri","insightsBaseUri","errorMessage","initialiseSettingsComplete","initialiseFilters","initialiseSettingsError","loadSynonyms","_ref2","_api","GetSynonyms","loadSynonymsComplete","loadSynonymsError","INITIALISE_SETTINGS_ERROR","LOAD_SYNONYMS_ERROR","oldSearch","SEARCH_ENTRIES","searchEntriesComplete","searchEntriesError","setSearchTerm","_selectors","SEARCH_ENTRIES_ERROR","buildSearchExpressions","_ref7","buildEventsExpressions","_ref6","buildNewsExpressions","_ref3","buildOurStoriesExpressions","_ref4","buildInsightsExpressions","_ref5","buildCareersExpressions","_ref8","buildAtoZExpressions","_ref10","buildIMReportsListerExpressions","_ref11","buildJIPListerExpressions","_ref12","buildPublishedPapersContentTypeExpressions","_ref13","schemetype","buildCSWIPSchemesContentTypeExpressions","_ref14","buildCSWIPSearchExpressions","_ref15","buildCSWIPNewsExpressions","_ref16","buildCSWIPInsightsExpressions","_ref17","buildTWIInnovationNetworkNewsExpressions","_ref18","buildMemberListExpressions","_ref19","buildTWIInnovationNetworkEventsExpressions","_ref20","buildTWIInnovationNetworkSearchExpressions","_ref21","buildPublicFundedProjectsListerExpressions","_ref22","buildCoreResearchProgrammeListerExpressions","_ref23","buildFAQListerExpressions","_ref25","buildTWIDEInsightsExpressions","_ref26","buildJobKnowledgeListerExpressions","_ref27","buildNSIRCNewsExpressions","_ref28","buildNSIRCPublicationsExpressions","_ref29","buildNSIRCThesesExpressions","_ref30","buildNSIRCDissertationsExpressions","_ref31","buildNSIRCStudentProfilesExpressions","_ref32","buildNSIRCInsightsExpressions","_ref33","buildNSIRCCareersExpressions","_ref34","buildNSIRCSearchExpressions","_ref35","buildOurPeopleExpressions","_ref36","buildGenericPressReleasesExpressions","_ref37","buildGenericShowcaseExpressions","_ref38","buildTWICLCertificationsExpressions","_ref39","certificationtype","buildTWICLCompaniesExpressions","_ref24","buildCTLFAQListerExpressions","_ref40","buildGenericInsightsExpressions","_ref41","buildGenericSearchExpressions","_ref42","buildGenericWebpageListerExpressions","_ref43","buildDigitalProductFinderExpressions","_ref44","datePosted","buildTWIJobsExpressions","_ref45","buildTWIInnovationNetworkTAPsExpressions","_ref46","buildGenericVideosExpressions","_ref47","buildVirtualAcademyExpressions","_ref9","buildDefaultExpressions","isChecked","onChange","target","htmlFor","loadFiltersComplete","loadFiltersError","LOAD_FILTERS_ERROR","pageCount","totalCount","entriesPageIndex","currentPage","showPrev","showNext","showLast","pages","counter","prevPages","prevCounter","aria-label","scrollTop","pagerClass","_React$createElement2","active","label","_React$createElement3","SearchTabs","SearchBox","searchInput","onKeyDown","keyCode","onKeyUp","placeholder","ref","input","chkbxClsName","clsname","hrefName","style","marginBottom","marginTop","ContentCategory","taxItem","tax","_CheckboxFilter2","aria-hidden","_SearchAuthor2","checkbox","setCheckBox","Media","t","_MediaCheckBox2","SearchOrderFilter","change","data-toggle","aria-haspopup","aria-expanded","aria-labelledby","_SearchOrderFilters2","_SearchMediaFilters2","_SearchTechnicalFilters2","SearchResults","_ref2$items","_SearchSynonyms2","_SearchFilter2","_SearchItem2","_Pager2","renderSearch","mg","_store2","atob","start","ReactDOM","render","SearchApp","memberGroups","isAuthenitcated","getElementById","renderSearchInput","SearchInputApp","renderSearchTabs","SearchTabsApp","_reactRouter","Provider","RouterProvider","_SearchResults2","_SearchInput2","_SearchTabs2"],"mappings":"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","file":"search.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1]\n \t\tvar executeModules = data[2];\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fullfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fullfilled = false;\n \t\t\t}\n \t\t\tif(fullfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \tvar installedChunks = {\n \t\t48: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([898,0]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import { LruCache } from './lru-cache';\n//import entriesReducer from './reducers/entries';\n\nlet day = ['Sun', 'Mon', 'Tues', 'Wed', 'Thurs', 'Fri', 'Sat'];\nlet mL = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];\nlet mS = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\nlet sLength = 100;\n\n\nexport function addWeightedField(fieldName, weight)\n{\t\n\tlet weightedField = {\n\t\tfieldName,\n\t\tweight\n\t};\n\treturn weightedField;\n}\n\nexport function addOrderByField(name, direction)\n{\n\tlet orderByField = {\n\t\tname,\n\t\tdirection\n\t};\n\treturn orderByField;\n}\n\nexport function formatDate(date) {\n\tlet entryDate = new Date(date);\n\treturn `${entryDate.getDate()}/${entryDate.getMonth() + 1}/${entryDate.getFullYear()}`; \n}\n\nexport function formatDateFriendly(date) {\n\tlet entryDate = new Date(date);\n\treturn `${day[entryDate.getDay()]}, ${entryDate.getDate()} ${monthName(entryDate.getMonth(), true)} ${entryDate.getFullYear()}`; \n}\n\n// function formatMonthPrepend0(n){\n// return n > 9 ? \"\" + n: \"0\" + n;\n// }\n\n\nexport function formatMonth(date) {\n\tlet entryDate = new Date(date);\n\treturn monthName(entryDate.getMonth(), false); \n}\n\nexport function formatMonthThreeLetters(date) {\n\tlet entryDate = new Date(date);\n\treturn monthName(entryDate.getMonth(), true); \n}\n\nexport function nth(d) {\n\tif(d>3 && d<21) return 'th';\n\tswitch (d % 10) {\n\t\tcase 1: return \"st\";\n\t\tcase 2: return \"nd\";\n\t\tcase 3: return \"rd\";\n\t\tdefault: return \"th\";\n\t}\n } \t\n\nfunction monthName(monthNo, isShort){\n\tif(isShort){\n\t\treturn mS[monthNo];\n\t}\n\telse{\n\t\treturn mL[monthNo];\n\t}\n}\n\nexport function range(low,hi){\n\tfunction rangeRec(low, hi, vals) {\n\t\tif(low > hi) return vals;\n\t\tvals.push(low);\n\t\treturn rangeRec(low+1,hi,vals);\n\t}\n\treturn rangeRec(low,hi,[]);\n}\n\nexport function createRowsArray(theArray, numItemsPerRow) {\n\tconst rows = [...Array( Math.ceil(theArray.length / numItemsPerRow) )];\n\treturn rows.map( (row, idx) => theArray.slice(idx * numItemsPerRow, idx * numItemsPerRow + numItemsPerRow) );\n}\n\nexport function chunks(arr, size) {\n\tif (!Array.isArray(arr)) {\n\t\tthrow new TypeError('Input should be Array');\n\t}\n \n\tif (typeof size !== 'number') {\n\t\tthrow new TypeError('Size should be a Number');\n\t}\n \n\tvar result = [];\n\tfor (var i = 0; i < arr.length; i += size) {\n\t\tresult.push(arr.slice(i, size + i));\n\t}\n \n\treturn result;\n} \n\nexport function getEventDate(entry){\n\tif(entry.eventDate != null){\n\t\tlet startDate = new Date(entry.eventDate.from);\n\t\tlet endDate = new Date(entry.eventDate.to);\n\t\tif(startDate.getDate() == endDate.getDate()){\n\t\t\treturn `${endDate.getDate()} ${monthName(endDate.getMonth(), true)}`;\n\t\t}\n\t\telse{\n\t\t\treturn `${startDate.getDate()} - ${endDate.getDate()} ${monthName(endDate.getMonth(), true)}`;\n\t\t}\n\t}\n\treturn '';\n}\nexport function getUrl(entry) {\n\n\tvar isSearchResultsPage = RegExp(\"/search-results(.*)|/search.html(.*)|/(.*)SearchPageHTMLFile(.*)\", \"i\");\n\n\t//var currentUrl = \"https://www.non-metallic.com/insights#/\";\n\tvar currentUrl = window.location.href;\n\n\n\tif(entry && entry.sys && entry.sys.slug){\n\t\tif(entry.sys.contentTypeId === 'pressReleases' || entry.sys.contentTypeId === 'events'){\n\t\t\treturn buildNewsEventsUrl(entry);\n\t\t}\n\t\tif(entry.sys.contentTypeId === 'insights'){\n\t\t\tif (entry.whichWebsiteToDisplayOn && entry.whichWebsiteToDisplayOn.includes(\"CSWIP\") )\n\t\t\t{\n\t\t\t\t\treturn `${'/microsites/cswip/insights/'}${entry.sys.slug}`;\n\t\t\t}\t\n\t\t\tif (entry.whichWebsiteToDisplayOn && entry.whichWebsiteToDisplayOn.includes(\"TWIDeutschland\") )\n\t\t\t{\n\t\t\t\t\treturn `${'/locations/deutschland/medien-und-events/einblicke/'}${entry.sys.slug}`;\n\t\t\t}\n\n\t\t\tif (entry.whichWebsiteToDisplayOn && entry.whichWebsiteToDisplayOn.includes(\"non-metallic\") && (isSearchResultsPage.test(currentUrl)))\n\t\t\t{\n\n\t\t\t\treturn `${'https://www.non-metallic.com/insights/'}${entry.sys.slug}`;\t\n\t\t\t}\n\t\t\t\n\t\t\tif (entry.whichWebsiteToDisplayOn && entry.whichWebsiteToDisplayOn.includes(\"non-metallic\") && (!isSearchResultsPage.test(currentUrl)))\n\t\t\t{\n\t\t\t\treturn `${'/microsites/non-metallic/insights/'}${entry.sys.slug}`;\n\t\t\t}\n\n\n\t\t\tif (entry.whichWebsiteToDisplayOn && entry.whichWebsiteToDisplayOn.includes(\"TWIInnovationNetwork\") )\n\t\t\t{\n\t\t\t\t\treturn `${'/innovation-network/media-and-events/insights/'}${entry.sys.slug}`;\n\t\t\t}\n\t\t\t\n\t\t\t\n\n\t\t\treturn `${'/media-and-events/insights/'}${entry.sys.slug}`;\n\t\t}\n\t\tif(entry.sys.contentTypeId === 'ourStories'){\n\t\t\treturn `${'/media-and-events/our-stories/'}${entry.sys.slug}`;\n\t\t}\n\t\tif(entry.sys.contentTypeId === 'weldasearch'){\n\t\t\treturn `${'/technical-knowledge/weldasearch/'}${entry.sys.slug}`;\n\t\t}\n\t\tif(entry.sys.contentTypeId === 'publishedPapers')\n\t\t{\n\t\t\treturn `${'/technical-knowledge/published-papers/'}${entry.sys.slug}`;\n\t\t}\n\t\tif(entry.sys.contentTypeId === 'jips')\n\t\t{\n\t\t\treturn `${'/what-we-do/research-and-technology/research-programmes/joint-industry-projects/'}${entry.sys.slug}`;\n\t\t}\n\t\tif(entry.sys.contentTypeId === 'cswipSchemes' && entry.whichWebsiteToDisplayOn.list.includes('CSWIP'))\n\t\t{\n\t\t\treturn `${'/microsites/cswip/certification/'}${entry.sys.slug}`;\n\t\t}\n\n\t\tif(entry.sys.contentTypeId === 'cswipSchemes' && entry.whichWebsiteToDisplayOn.list.includes('TWICertification'))\n\t\t{\n\t\t\treturn `${'/microsites/twi-certification/certifications/'}${entry.sys.slug}`;\n\t\t}\n\n\n\t\tif(entry.sys.contentTypeId === 'publicFundedProjects')\n\t\t{\n\t\t\treturn `${'/what-we-do/research-and-technology/research-programmes/public-funded-projects/'}${entry.sys.slug}`;\n\t\t}\n\n\t\tif (entry && entry.sys && entry.sys.uri && entry.sys.uri.startsWith('/what-we-do/research-and-technology/research-programmes/'))\n\t\t{\n\t\t\treturn `${entry.sys.uri}`;\n\t\t}\n\n\t\tif(entry.sys.contentTypeId === 'staffProfiles')\n\t\t{\n\t\t\treturn `${'/careers/our-people/'}${entry.sys.slug}`;\n\t\t}\n\n\t\t// if(entry.sys.contentTypeId === 'videos')\n\t\t// {\n\t\t// \treturn `${'/what-we-do/innovation-network/showcase/'}${entry.sys.slug}`;\n\t\t// }\n\n\t\t//var preString = \"microsites/non-metallic/insights.aspx\";\n\n\t\tvar preString = window.location.pathname;\n\n\t\tpreString = preString.replace(\"/home.aspx\", \"\");\n\t\n\t\tif (preString.includes(\".aspx\"))\n\t\t{\n\t\t\tpreString = preString.substring(0, preString.lastIndexOf(\".aspx\"));\n\t\t}\n\t\n\t\t//preString += \"/\";\n\n\t\treturn `${preString}/${entry.sys.slug}`;\n\t}\n\n\tif(entry && entry.sys && entry.sys.uri){\n\t\treturn entry.sys.uri;\n\t}\n\treturn '';\n}\n\n\nfunction buildNewsEventsUrl(entry){\n\tlet date = entry.eventDate ? entry.eventDate.from : entry.publishDate;\n\tlet entryDate = new Date(date);\n\n\n\tvar preString = window.location.pathname; \n\n\t//preString = \"media-and-events/events-diary/all-events#/\";\n\t//preString = \"media-and-events/events-diary/all-events.aspx#/\";\n\t//preString = \"media-and-events/events-diary/all-events.aspx\";\n\n\t//preString = \"/media-and-events/press-releases#/\";\n\t//preString = \t\"/media-and-events/press-releases/home.aspx#/\";\n\t//preString = \t\"/media-and-events/press-releases/home.aspx\";\n\n\t//preString = \t\"/portal/events/bae.aspx#/\";\n\t//preString = \t\"/portal/events/bae#/\";\n\t//preString = \t\"/portal/events/bae.aspx\";\n\n\t//preString = preString.replace(/\\/?(all-events|home)?(.aspx)?#\\/?/, \"\");\n\n\n\tpreString = preString.replace(\"/home.aspx\", \"\");\n\n\tif (preString.includes(\".aspx\"))\n\t{\n\t\tpreString = preString.substring(0, preString.lastIndexOf(\".aspx\"));\n\t}\n\n\tif (preString.endsWith('#/'))\n\t{\n\t\tpreString = preString.replace(\"#/\", \"\");\n\t}\n\n\tpreString = preString.replace(\"/all-events\", \"\");\n\n\n\n\tvar isSearchResultsPage = RegExp(\"/search-results(.*)|/search.html(.*)|/(.*)SearchPageHTMLFile(.*)\", \"i\");\n\tvar isNSIRCSearchResultsPage = RegExp(\"/nsirc/search-results(.*)|/NSIRCSearchPageHTMLFile.html(.*)\", \"i\");\n\tvar isCSWIPSearchResultsPage = RegExp(\"/cswip/search-results(.*)|/CSWIPSearchPageHTMLFile.html(.*)\", \"i\");\n\tvar isTWIINSearchResultsPage = RegExp(\"/innovation-network/search-results(.*)|/TWIInnovationNetworkSearchPageHTMLFile(.*)\", \"i\");\n\n\tvar currentUrl = window.location.href;\n\n\n\t//window.location.href = https://www.twi-global.com/media-and-events/press-releases#/\n\n\t//https://www.twi-global.com/media-and-events/press-releases#/\n\n\n\n\t//var currentUrl = \t\"https://www.twi-global.com/media-and-events/press-releases#/\";\n\t//var currentUrl = \t\"https://www.twi-global.com/media-and-events/media-and-events/events-diary/all-events#/\";\n\t\n\n\t//var currentUrl = \"https://preview-twi.cloud.contensis.com/nsirc/search-results.aspx#/?term=phd\";\n\n\t//tests\n\t//var currentUrl = \"https://www.twi-global.com.com/media-and-events/events-diary/all-events#/\";\n\n\t//var currentUrl = \"https://www.twi-innovation-network.com/media-and-events/events-diary/all-events#/\";\n\n\t//var currentUrl = \"https://preview-twi.cloud.contensis.com/microsites/twi-innovation-network/media-and-events/events-diary/all-events.aspx#/\";\n\n\t//var currentUrl = \"https://preview-twi.cloud.contensis.com/media-and-events/events-diary/all-events.aspx#/\";\n\n\t//var currentUrl = \"https://preview-twi-dev.cloud.contensis.com/media-and-events/events-diary/all-events.aspx#/\";\n\n\t//var currentUrl = \"https://preview-twi.cloud.contensis.com/microsites/cswip/press-releases.aspx#/\";\n\n\t//var currentUrl = \"https://www.cswip.com/press-releases.aspx#/\";\n\n\t// currentUrl = \"https://preview-twi.cloud.contensis.com/microsites/NSIRC/our-research/phd-theses.aspx#/\";\n\n\n\n\tif(entry.sys.contentTypeId == 'pressReleases' && isSearchResultsPage.test(currentUrl)) {\n\n\t\tpreString = '/media-and-events/press-releases/';\n\n\t\tif(entry.whichWebsiteToDisplayOn != null) {\n\n\t\t\tif (isNSIRCSearchResultsPage.test(currentUrl)) {\n\n\t\t\t\tif(entry.whichWebsiteToDisplayOn.includes(\"NSIRC_news\"))\n\t\t\t\t{\n\t\t\t\t\tpreString = '/nsirc/news/';\n\t\t\t\t}\n\t\t\n\t\t\t\tif(entry.whichWebsiteToDisplayOn.includes(\"NSIRC_publications\"))\n\t\t\t\t{\n\t\t\t\t\tpreString = '/nsirc/our-research/phd-publications/';\n\t\t\t\t}\n\t\t\n\t\t\t\tif(entry.whichWebsiteToDisplayOn.includes(\"NSIRC_theses\"))\n\t\t\t\t{\n\t\t\t\t\tpreString = '/nsirc/our-research/phd-theses/';\n\t\t\t\t}\n\t\t\n\t\t\t\tif(entry.whichWebsiteToDisplayOn.includes(\"NSIRC_dissertations\"))\n\t\t\t\t{\n\t\t\t\t\tpreString = '/nsirc/our-research/msc-dissertations/';\n\t\t\t\t}\n\t\t\n\t\t\t\tif(entry.whichWebsiteToDisplayOn.includes(\"NSIRC_students\"))\n\t\t\t\t{\n\t\t\t\t\tpreString = '/nsirc/our-research/student-profiles/';\n\t\t\t\t}\n\t\t\n\t\t\t\tif(entry.whichWebsiteToDisplayOn.includes(\"NSIRC_insights\"))\n\t\t\t\t{\n\t\t\t\t\tpreString = '/nsirc/media-and-events/insights/';\n\t\t\t\t}\n\n\n\t\t\t}\n\n\t\t\tif(isCSWIPSearchResultsPage.test(currentUrl) && entry.whichWebsiteToDisplayOn.includes(\"CSWIP\"))\n\t\t\t{\n\t\t\t\tpreString = '/microsites/cswip/press-releases/';\n\t\t\t}\n\n\t\t\tif(isTWIINSearchResultsPage.test(currentUrl) && entry.whichWebsiteToDisplayOn.includes(\"TWIInnovationNetwork\"))\n\t\t\t{\n\t\t\t\tpreString = '/innovation-network/media-and-events/press-releases/';\n\t\t\t}\n\n\t\t\t\n\n\t\t}\n\n\n\n\n\t\treturn `${preString}${entryDate.getFullYear()}/${entry.sys.slug}`;\n\n\n\t} \n\n\tif (entry.sys.contentTypeId == 'events')\n\t{\n\t\t// no date for events\n\t\treturn `${preString}/${entry.sys.slug}`;\n\t}\n\n\n\t//for press releases\n\treturn `${preString}/${entryDate.getFullYear()}/${entry.sys.slug}`;\n}\n\n\nexport function getPublishDate(entry) {\n\tif (entry && entry.sys && entry.sys.contentTypeId == 'weldasearch'){\n\t\treturn entry.year;\n\t}\n\n\tif (entry && entry.publishDate) {\n\t\treturn formatDateFriendly(entry.publishDate);\n\t}\n\n\tif (entry && entry.sys && entry.sys.metadata && entry.sys.metadata.pageDate && entry.sys.metadata.pageDate != '1900-01-01T12:00:00Z') {\n\t\treturn formatDateFriendly(entry.sys.metadata.pageDate);\n\t}\n\n\tif (entry && entry.sys && entry.sys.version && entry.sys.version.published) {\n\t\treturn formatDateFriendly(entry.sys.version.published);\n\t}\n\tif (entry && entry.sys && entry.sys.version && entry.sys.version.modified) {\n\t\treturn formatDateFriendly(entry.sys.version.modified);\n\t}\n\treturn null;\n}\n\nconst entityToChar = str => { \n\tconst textarea = document.createElement('textarea'); \n\ttextarea.innerHTML = str; \n\treturn textarea.value; \n };\n\nexport function getDescText(entry){\n\tvar descText = \"\";\n\tif(entry && entry.searchContent){\n\t\tdescText = entry.searchContent;\n\t}\n\tif(entry && entry.summary){\n\t\tdescText = entry.summary;\n\t}\n\tif(entry && entry.description != null){\n\t\tdescText = entry.description && !Array.isArray(entry.description) ? entry.description : entry.description[0].toString() ;\n\t}\n\n\tif(entry.sys.contentTypeId == \"staffProfiles\" && entry.profile != null){\n\t\tdescText = entry.profile;\n\t}\n\n\tif(entry.sys.contentTypeId == \"showcase\" && entry.videoDescription != null){\n\t\tdescText = entry.videoDescription;\n\t}\n\n\tif(entry.sys.contentTypeId == \"cswipSchemes\" && entry.schemeDescription != null)\n\t{\n\t\tdescText = entry.schemeDescription;\n\t}\n\n\t//remove html tags\n\tdescText = descText.replace(/<[^>]+>/g, '');\n\n\t//remove double spaces\n\tdescText = descText.replace(/\\s\\s+/g, ' ');\n\n\tdescText = entityToChar(descText);\n\n\n\n\treturn descText = descText && descText.length > sLength ? descText.substring(0, sLength).trim() + '...' : descText;\n\n}\n\nexport function getCSWIPTitle(entry) {\n\tvar title = \"no title\";\n\n\tif (entry.sys.contentTypeId == \"cswipSchemes\" && entry.schemeName != null)\n\t{\n\t\ttitle = entry.schemeName;\n\t}\n\n\tif (entry.title != null)\n\t{\n\t\ttitle = entry.title;\n\t}\n\n\treturn title;\n\n\t\n\t\n}\n\n\nclass Cache {\n\n\tcache = new LruCache();\n\n\tgetCachedUrl(entry) {\n\n\n\t\treturn this.request(`[URL] ${entry.sys.id}`, getUrl(entry));\n\t}\n\n\trequest(key, execute) {\n\t\tif (!this.cache.get(key)) {\n\t\t\tlet promise = execute;\n\t\t\tthis.cache.set(key, promise);\n\t\t}\n\t\treturn this.cache.get(key);\n\t}\n}\n\nexport const cacheFunc = new Cache();\n\n\n/* sw */\n\n//published papers dates\n// export function getPageDateShort(entry) \n// {\n// \treturn formatDateFriendly(entry.pageDate);\n// }\n\nexport function getPageYear(entry){\n\tlet entryDate = new Date(entry.sys.metadata.pageDate);\n\n\tif (entry.sys.contentTypeId == 'publishedPapers')\n\t{\n\t\tentryDate = new Date(entry.pageDate);\n\t}\n\n\tif (entry.sys.contentTypeId == 'cswipSchemes')\n\t{\n\t\tentryDate = new Date(entry.schemePublishedDate);\n\t}\n\n\treturn `${entryDate.getFullYear()}`; \n}\n\nexport function getPageDateShort(entry) {\n\n\n\n\tlet entryDate = entry.sys.metadata.pageDate != null ? new Date(entry.sys.metadata.pageDate) : \"\";\n\n\tif (entry.sys.contentTypeId == 'publishedPapers')\n\t{\n\t\tentryDate = new Date(entry.pageDate);\n\t}\n\n\tentryDate = entryDate == \"\" ? entryDate = new Date(entry.sys.version.published) : entryDate;\n\n\tvar m = entryDate.getUTCMonth();\n\tvar y = entryDate.getUTCFullYear();\n\n\treturn `${monthName(m, true)} ${y}`; \n}\n\nexport function getDateAnnouncedShort(entry) {\n\n\tlet dateAnnounced = new Date(entry.dateAnnounced);\n\n\t\n\treturn `${monthName(dateAnnounced.getMonth(), true)} ${dateAnnounced.getFullYear()}`; \n}","import router from '../routes/router';\nimport { getNewsUrl } from './builders';\nimport { getSettings } from './selectors';\n\nexport function navigate(lastSearch, newSearch) {\n\tconst search = { ...lastSearch, ...newSearch };\n\trouter.navigate('list', search);\n}\n\nexport function navigateFacet( newSearch) {\n\tconst search = { ...newSearch };\n\trouter.navigate('list', search);\n}\n\nexport function toUrl(lastSearch, newSearch, settings) {\n\tconst search = { ...lastSearch, ...newSearch };\n\t\treturn router.buildUrl('list', search);\n}\n\nexport function addFilter(lastSearch, filterName, value, checked) {\n\tlet currentFilter = (lastSearch || {})[filterName];\n\tcurrentFilter = !!currentFilter ? currentFilter.toString().split(',') : [];\n\tlet index = currentFilter.indexOf(value);\t\t\n\tif (!checked && (index >= 0)) {\n\t\tcurrentFilter = currentFilter.filter(v => v !== value);\n\t}\n\tif (checked && (index < 0)) {\n\t\tcurrentFilter = [...currentFilter, value];\t\n\t}\n\tnavigate(lastSearch, { [filterName]: currentFilter.toString(), pageIndex: 0 });\n}\n\nexport function toggleFilter(lastSearch, filterName, value){\n\tlastSearch[filterName] = value;\n\tnavigate(lastSearch, { [filterName]: value, pageIndex: 0 });\n}\n\nexport function changeDateFilter(lastSearch, filterName, value) {\t\n\tconst currentDate = new Date();\n\tif (!!value && filterName == 'Year' && new Date(value, lastSearch.month - 1) >= currentDate) {\n\t\tnavigate(lastSearch, { month: currentDate.getMonth() + 1, [filterName]: value, pageIndex: 0 });\n\t}\n\telse {\n\t\tchangeFilter(lastSearch, filterName, value);\n\t}\n}\n\nexport function removeAdvancedFilters(lastSearch, filterNames){\n\tlet value = null\n\tif(filterNames){\n\t\tlet newSearch = Object.keys(lastSearch).filter(key => filterNames.indexOf(key) > -1 && lastSearch[key])\n\t\t.map(key => {delete lastSearch[key]});\n\t\tnavigate(lastSearch, newSearch)\n\t}\n}\n\nexport function changeFilter(lastSearch, filterName, value) {\n\tnavigate(lastSearch, { [filterName]: value, pageIndex: 0 });\n}\n\n\nexport function changeSchemesFilter(lastSearch, filterName, value) {\t\n\n\tchangeFilter(lastSearch, filterName, value);\n\n}\n\nexport function changeFilters(lastSearch, filters) {\n navigate(lastSearch, { ...filters, pageIndex: 0 });\n}\n","\nexport const getEntries = state => state.entries;\n\nexport const getSearch = state => state.search;\n\nexport const getLoadingEntries = state => state.loadingEntries;\n\nexport const getSelectedEntry = state => state.selectedEntry;\n\nexport const getLoadingSelectedEntry = state => state.loadingSelectedEntry;\n\nexport const getFilters = state => state.filters;\n\nexport const getSettings = state => state.settings;\n\nexport const toggleSearch = state => state.toggle;\n","import React from 'react';\nimport { toUrl } from '../../common/services/navigation';\n\nfunction SearchSynonyms({ search, settings }) {\n\t// return null;\n\tif(search && search.term && settings.synonyms){\n\t\tconst loadedSynonyms = settings.synonyms;\n\t\tvar synonyms;\n\t\ttry {\n\t\t\tsynonyms = loadedSynonyms[search.term.toLowerCase()];\n\t\t} catch (e) {\n\t\t\tconsole.log(e)\n\t\t}\n\t\tif(synonyms){\n\t\t\tvar tot = synonyms.length;\n\t\t\treturn (\n\t\t\t\t
\n\t\t\t\t\tYou might also be interested in...
\n\t\t\t\t\t

{\n\t\t\t\t\t\tsynonyms.map((s, i) => {\n\t\t\t\t\t\t\tif(i != tot-1){\n\t\t\t\t\t\t\t\treturn {s}, \n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse{\n\t\t\t\t\t\t\t\treturn {s}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t}

\n\t\t\t\t
\n\t\t);\n\t\t}\n\t\telse{\n\t\t\treturn null;\n\t\t}\n\t}\n\telse{\n\t\treturn null;\n\t}\n}\n\nexport default SearchSynonyms;\n","import { addWeightedField, addOrderByField } from './common/services/builders';\n\n\nconst ORDERBY_DESC = 'desc';\nconst ORDERBY_ASC = 'asc';\n\n\nlet cswipSchemesContentType = [\n\taddWeightedField('schemeName', 1000),\n\taddWeightedField('thumbnailDescription', 1000),\n\taddWeightedField('schemeDescription', 1000),\n\taddWeightedField('cswipSchemeRequirements[].markup', 1000),\n\taddWeightedField('cswipSchemeRequirements[].accordionTitle', 1000),\n\taddWeightedField('cswipSchemeRequirements[].cswipPDFAccordion[].title', 1000),\n\taddWeightedField('cswipSchemeRequirements[].cswipPDFAccordion[].description', 1000),\n\taddWeightedField('cswipSchemeRequirements[].cswipPDFAccordion[].description2', 1000)\n];\n\n// let insightsContentType = [\n// \taddWeightedField('title', 1000),\n// \taddWeightedField('summary', 1000),\n// \taddWeightedField('heroImage.altText', 1000),\n// \taddWeightedField('heroImage.caption', 1000),\n// \taddWeightedField('overview', 1000),\n// \taddWeightedField('videoPoster.altText', 1000),\n// \taddWeightedField('videoPoster.caption', 1000),\n// \taddWeightedField('university', 1000),\n// \taddWeightedField('heroImage.altText', 1000),\n// \taddWeightedField('caption', 1000),\n// \taddWeightedField('entryTitle', 1000),\n// \taddWeightedField('profileImage', 1000),\n// \taddWeightedField('profileImage.altText', 1000),\n// \taddWeightedField('profileImage.caption', 1000),\n// \taddWeightedField('objectivesTitle', 1000),\n// \taddWeightedField('objectives', 1000),\n// \taddWeightedField('objectivesImage[].altText', 1000),\n// \taddWeightedField('objectivesImage[].caption', 1000),\t\n// \taddWeightedField('composer[].markup', 1000),\n// \taddWeightedField('composer[].image.image.altText', 1000),\n// \taddWeightedField('composer[].markupImage2Columns.markup', 1000),\n// \taddWeightedField('composer[].markupImage2Columns.image.caption', 1000),\n// \taddWeightedField('composer[].markupImage2Columns.image.altText', 1000),\n// \taddWeightedField('solutionTitle', 1000),\n// \taddWeightedField('solution', 1000),\n// \taddWeightedField('solutionImage.altText', 1000),\n// \taddWeightedField('solutionImage.caption', 1000),\n// \taddWeightedField('conclusionTitle', 1000),\n// \taddWeightedField('conclusion', 1000),\n// \taddWeightedField('conclusionImage[].altText', 1000),\n// \taddWeightedField('conclusionImage[].caption', 1000),\n// \taddWeightedField('profile.entryTitle', 1000),\n// \taddWeightedField('profileImage.altText', 1000),\n// \taddWeightedField('profileImage.caption', 1000),\n// \t//addWeightedField('meetTheExperts', 1000),\n// \t//addWeightedField('inThisSection', 1000),\n// \taddWeightedField('relatedInsightsTitle', 1000),\n// \t//addWeightedField('relatedInsights', 1000),\n// \taddWeightedField('industry', 1000),// taxonomy\n// \taddWeightedField('keywords1', 1000),// taxonomy\n// \taddWeightedField('contentCategory', 1000),// taxonomy\n// \taddWeightedField('sectionType', 1000),// taxonomy\n// \taddWeightedField('university', 1000),// taxonomy NSIRC\n// \taddWeightedField('sponsor', 1000),// taxonomy NSIRC\n\n// ];\n\nlet allFields = [\n\taddWeightedField('entryTitle', 1000),\n\taddWeightedField('entryDescription', 1000),\n\taddWeightedField('searchContent', 1000),\n\taddWeightedField('_searchContent', 1000),\n\taddWeightedField('sys.uri', 1000),\n\taddWeightedField('*', 1000)\n\n];\n\n\nvar path = window.location.pathname;\n//tests\n//path = \"/technical-knowledge/faqs#/\";\n//var path = \t\"/technical-knowledge/faqs/home.aspx#/\";\n//var path = \t\"/locations/south-east-asia/faqs/home.aspx#/\";\n\n\n\n\nlet faqListerContentType = [\n\taddWeightedField('title', 1000),\n\taddWeightedField('heroImage.caption', 1000),\n\taddWeightedField('faqComposer[].markup', 1000),\n\taddWeightedField('faqComposer[].leadTextBlueBold', 1000),\n\taddWeightedField('faqComposer[].markupImage2Columns.markup', 1000),\n\taddWeightedField('faqComposer[].markupImage2Columns.image.caption', 1000),\n\taddWeightedField('faqComposer[].markupImage2Columns.image.altText', 1000),\n\taddWeightedField('faqComposer[].h2Anchor', 1000),\n];\n\nif (path.includes(\"/technical-knowledge/faqs\"))\n{\n\tfaqListerContentType = [\n\t\taddWeightedField('title', 1000),\n\t\taddWeightedField('heroImage.caption', 1000),\n\t\taddWeightedField('searchContent', 1000),\n\t];\n\n}\n\n\n\nexport const SETTINGS = {\n\tsearch:\n\t{\n\t\tappId: 'search',\n\t\tcontentTypeId: 'search',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\t\n\t\t\t// [\n\t\t\t// addWeightedField('entryTitle', 1500),\n\t\t\t// addWeightedField('entryDescription', 1500),\n\t\t\t// addWeightedField('description', 1500),\n\t\t\t// addWeightedField('sys.metadata.description', 1500),\n\t\t\t// addWeightedField('sys.metadata.keywords', 1500),\n\t\t\t// addWeightedField('sys.metadata.importedKeywords', 1500),\n\t\t\t// addWeightedField('sys.metadata.author', 1500),\n\t\t\t// addWeightedField('summary', 1500),\n\t\t\t// addWeightedField('keywords', 1500),\n\t\t\t// addWeightedField('title', 1500),\t //weldasearch title\n\t\t\t// addWeightedField('abstract', 1500),\n\t\t\t// addWeightedField('subjectHeading', 1500),\n\t\t\t// addWeightedField('searchContent', 1500),\n\t\t\t// addWeightedField('overview', 1500),\n\t\t\t// addWeightedField('conclusion', 1500)\n\t\t\t// ],\n\t\ttaxonomyFilterPaths: [\n\t\t\t'Search/Media',\n\t\t\t'ContentCategory'\n\t\t]\n\t},\n\tnews:\n\t{\n\t\tappId: 'news',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'categories',\n\t\t\t'industries'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tevents:\n\t{\n\t\tappId: 'events',\n\t\tcontentTypeId: 'events',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 100)\t\n\t\t],\n\t\ttaxonomyFilters:[\n\t\t\t'eventType'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('eventDate.from', ORDERBY_ASC),\n\t\t\taddOrderByField('eventDate.to', ORDERBY_DESC),\n\t\t\taddOrderByField('title', ORDERBY_ASC)\n\t\t]\n\t},\n\tTWIInnovationNetworkEventsAppId:\n\t{\n\t\tappId: 'TWIInnovationNetworkEventsAppId',\n\t\tcontentTypeId: 'events',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 100)\t\n\t\t],\n\t\ttaxonomyFilters:[\n\t\t\t'eventType'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('eventDate.from', ORDERBY_ASC),\n\t\t\taddOrderByField('eventDate.to', ORDERBY_DESC),\n\t\t\taddOrderByField('title', ORDERBY_ASC)\n\t\t]\n\t},\n\tcareers:\n\t{\n\t\tappId: 'careers',\n\t\tcontentTypeId: 'ciphrVacancies',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('contractType', 1000),\n\t\t\taddWeightedField('location',1000),\n\t\t\taddWeightedField('employmentType',1000),\n\t\t\taddWeightedField('textDescription',1000)\t\t\t\n\t\t\t// addWeightedField('reference', 800),\n\t\t\t// addWeightedField('department', 600)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t// 'locationDivision',\n\t\t\t// 'contractType'\n\t\t],\n\t},\n\tourstories:\n\t{\n\t\tappId: 'ourstories',\n\t\tcontentTypeId: 'ourStories',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('keywords', 600)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'industry'\n\t\t],\n\t},\n\tinsights:\n\t{\n\t\tappId: 'insights',\n\t\tcontentTypeId: 'insights',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\ttaxonomyFilters: [\n\t\t\t'keywords1',\n\t\t\t'industry'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.version.published', ORDERBY_DESC),\n\t\t],\n\t},\n\n\tGenericInsightsAppId:\n\t{\n\t\tappId: 'GenericInsightsAppId',\n\t\tcontentTypeId: 'insights',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\ttaxonomyFilters: [\n\t\t\t'keywords1',\n\t\t\t'industry',\n\t\t\t'innovationNetworkTopics',\n\t\t\t'innovationNetworkIndustry'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.version.published', ORDERBY_DESC),\n\t\t],\n\t},\n\n\tatoz:\n\t{\n\t\tappId: 'atoz',\n\t\tcontentTypeId: 'atoz',\n\t\tpageSize: 12,\n\t\torderBy: [\n\t\t\taddOrderByField('title', ORDERBY_ASC)\n\t\t]\n\t},\n\tIMReportsListerAppId:\n\t{\n\t\tappId: 'IMReportsListerAppId',\n\t\tcontentTypeId: 'genericContentWebpage',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title'),\n\t\t\taddWeightedField('description'),\n\t\t\taddWeightedField('sys.metadata.author'),\n\t\t\taddWeightedField('sys.metadata.pagedate'),\n\t\t\taddWeightedField('searchContent'),\n\t\t\taddWeightedField('sys.metadata.importedKeywords'),\n\t\t\taddWeightedField('sys.uri'),\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC),\n\t\t]\n\t},\n\tIMReportsGridAppId:// appId\n\t{\n\t\tappId: 'IMReportsGridAppId',\n\t\tcontentTypeId: 'genericContentWebpage',\n\t\tpageSize: 9999,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title'),\n\t\t\taddWeightedField('description'),\n\t\t\taddWeightedField('sys.metadata.author'),\n\t\t\taddWeightedField('sys.metadata.pagedate'),\n\t\t\taddWeightedField('searchContent'),\n\t\t\taddWeightedField('sys.metadata.importedKeywords'),\n\t\t\taddWeightedField('sys.uri'),\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC),\n\t\t]\n\t},\n\tJIPLister: // appId\n\t{\n\t\tappId: 'JIPLister',\n\t\tcontentTypeId: 'jips',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('projectTitle'),\n\t\t\taddWeightedField('reference'),\n\t\t\taddWeightedField('status'),\n\t\t\taddWeightedField('description'),\n\t\t\taddWeightedField('pdfDownload')\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'industries'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('dateAnnounced', ORDERBY_DESC),\n\t\t]\n\t},\n\tPublishedPapersLister: // appId\n\t{\n\t\tappId: 'PublishedPapersLister',\n\t\tcontentTypeId: 'publishedPapers',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\t//contentType\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('authors', 800),\n\t\t\taddWeightedField('conference', 800),\n\t\t\taddWeightedField('journal', 800),\n\t\t\taddWeightedField('book', 800),\n\t\t\taddWeightedField('externalLink', 800),\n\t\t\t//addWeightedField('pdf', 800),\n\t\t\t//addWeightedField('pageDate', 800),\n\t\t\taddWeightedField('publishedPaperAbstract[]', 1000),\n\t\t\taddWeightedField('fixedKeywordList', 800),\n\t\t\taddWeightedField('FixedKeywordList', 800),\n\t\t\t//webpage\n\t\t\taddWeightedField('sys.metadata.author', 800),\n\t\t\taddWeightedField('searchContent', 900)\n\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('pageDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\n\n\n\tCSWIPSchemesAppId:\n\t{\n\t\tappId: 'CSWIPSchemesAppId',\n\t\tcontentTypeId: 'cswipSchemes',\n\t\tpageSize: 12,\n\t\tweightedFields: cswipSchemesContentType,\n\t\torderBy: [\n\t\t\taddOrderByField('displayOrder', ORDERBY_ASC)\n\t\t]\n\t},\n\n\tCSWIPSearchAppId:\n\t{\n\t\tappId: 'CSWIPSearchAppId',\n\t\tcontentTypeId: 'cswipSearch',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('schemeName', 5000),\n\t\t\taddWeightedField('schemeDescription', 5000),\n\t\t\taddWeightedField('schemeType', 5000),\n\t\t\t// addWeightedField('cswipSchemeRequirements[].markup', 5000),\n\t\t\t// addWeightedField('cswipSchemeRequirements[].accordionTitle', 5000),\n\t\t\t// addWeightedField('article[].markup', 5000),\n\t\t\t// addWeightedField('article[].quote', 5000),\n\t\t\taddWeightedField('heroImage.caption', 5000),\n\t\t\taddWeightedField('heroImage.altText', 5000),\n\t\t\taddWeightedField('heroVideo.description', 5000),\n\t\t\taddWeightedField('summary', 5000),\n\t\t\taddWeightedField('thumbnailImage.caption', 5000),\n\t\t\taddWeightedField('thumbnailImage.altText', 5000),\n\t\t\taddWeightedField('title', 5000),\n\t\t\taddWeightedField('sys.metadata.description', 5000),\t\n\t\t\taddWeightedField('searchContent', 5000),\n\t\t\taddWeightedField('sys.metadata.author',5000),\n\t\t\taddWeightedField('sys.metadata.importedCategories',5000),\n\t\t\taddWeightedField('sys.metadata.importedKeywords',5000),\n\t\t\taddWeightedField('sys.slug',5000),\n\t\t\taddWeightedField('sys.uri',5000),\n\t\t]\n\t},\n\tCSWIPNewsAppId:\n\t{\n\t\tappId: 'CSWIPNewsAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('searchContent', 1000)\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'categories',\n\t\t\t'industries'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tCSWIPInsightsAppId:\n\t{\n\t\tappId: 'CSWIPInsightsAppId',\n\t\tcontentTypeId: 'insights',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('keywords', 600),\t\n\t\t\taddWeightedField('searchContent', 1000)\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'keywords1',\n\t\t\t'industry' // api name of the Content Type component\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sys.version.published', ORDERBY_DESC),\n\t\t],\n\t},\n\tTWIInnovationNetworkNewsAppId:\n\t{\n\t\tappId: 'TWIInnovationNetworkNewsAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('searchContent', 1000)\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'categories',\n\t\t\t'industries'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tTWIInnovationNetworkSearchAppId:\n\t{\n\t\tappId: 'TWIInnovationNetworkSearchAppId',\n\t\tcontentTypeId: 'twiinSearch',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('heroImage.caption', 5000),\n\t\t\taddWeightedField('heroImage.altText', 5000),\n\t\t\taddWeightedField('heroVideo.description', 5000),\n\t\t\taddWeightedField('summary', 5000),\n\t\t\taddWeightedField('thumbnailImage.caption', 5000),\n\t\t\taddWeightedField('thumbnailImage.altText', 5000),\n\t\t\taddWeightedField('title', 5000),\n\t\t\taddWeightedField('sys.metadata.description', 5000),\t\n\t\t\taddWeightedField('searchContent', 5000),\n\t\t\taddWeightedField('sys.metadata.author',5000),\n\t\t\taddWeightedField('sys.metadata.importedCategories',5000),\n\t\t\taddWeightedField('sys.metadata.importedKeywords',5000),\n\t\t\taddWeightedField('sys.slug',5000),\n\t\t\taddWeightedField('sys.uri',5000),\n\t\t]\n\t},\n\tmemberListAppId:\n\t{\n\t\tappId: 'memberListAppId',\n\t\tcontentTypeId: 'members',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('displayName', 1000),\n\t\t\taddWeightedField('memberOrg', 1000),\n\t\t\taddWeightedField('sortCol', 1000),\n\t\t\taddWeightedField('country', 1000),\n\t\t\taddWeightedField('industrySector', 1000),\n\t\t\taddWeightedField('industryGroup', 1000),\t\t\t\n\t\t\taddWeightedField('searchContent', 1000)\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'industries'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sortCol', ORDERBY_ASC)\n\t\t]\n\t},\n\tPublicFundedProjectsListerAppId: // appId\n\t{\n\t\tappId: 'PublicFundedProjectsListerAppId',\n\t\tcontentTypeId: 'publicFundedProjects',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\t// [\n\t\t// \taddWeightedField('acronym'),\n\t\t// \taddWeightedField('projectTitle'),\n\t\t// \taddWeightedField('status'),\n\t\t// \taddWeightedField('description'),\n\t\t// \taddWeightedField('website'),\n\t\t// \taddWeightedField('fundingBody'),\n\t\t// \taddWeightedField('industries'),\n\t\t// \taddWeightedField('pdfDownloads'),\n\t\t// \taddWeightedField('publication'),\n\t\t// \taddWeightedField('keywords')\n\n\t\t// ],\n\t\ttaxonomyFilters: [\n\t\t\t'industries'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('dateAddedToWebsite', ORDERBY_DESC),\n\t\t]\n\t},\n\tCoreResearchProgrammeListerAppId: // appId\n\t{\n\t\tappId: 'CoreResearchProgrammeListerAppId',\n\t\tcontentTypeId: 'genericContentWebpage',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\t//webpage\n\t\t\taddWeightedField('title'),\n\t\t\taddWeightedField('description'),\n\t\t\taddWeightedField('searchContent')\n\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\n\tFAQListerAppId: // appId\n\t{\n\t\tappId: 'FAQListerAppId',\n\t\tcontentTypeId: 'faqs',\n\t\tpageSize: 12,\n\t\tweightedFields: faqListerContentType,\n\t\ttaxonomyFilters: [\n\t\t\t'language' //id of taxonomy field in Content Type\n\t\t],\t\t\n\t\torderBy: [\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\n\t},\n\n\tCTLFAQListerAppId: // appId\n\t{\n\t\tappId: 'CTLFAQListerAppId',\n\t\tcontentTypeId: 'faqs',\n\t\tpageSize: 12,\n\t\tweightedFields: faqListerContentType,\n\t\ttaxonomyFilters: [\n\t\t\t'certifications'\n\t\t],\t\t\n\t\torderBy: [\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\n\t},\n\n\t\n\n\tTWIDEInsightsAppId:\n\t{\n\t\tappId: 'TWIDEInsightsAppId',\n\t\tcontentTypeId: 'insights',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('summary', 1000),\n\t\t\taddWeightedField('overview', 1000),\n\t\t\taddWeightedField('objectivesTitle', 1000),\n\t\t\taddWeightedField('objectives', 1000),\n\t\t\taddWeightedField('solutionTitle', 1000),\n\t\t\taddWeightedField('solution', 1000),\n\t\t\taddWeightedField('conclusionTitle', 1000),\n\t\t\taddWeightedField('conclusion', 1000),\n\t\t\taddWeightedField('profile', 1000),\n\t\t\taddWeightedField('industry', 1000),\n\t\t\taddWeightedField('keywords1', 600),\n\t\t\taddWeightedField('contentCategory', 600),\n\t\t\taddWeightedField('sectionType', 600),\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'keywords1',\n\t\t\t'industry'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sys.version.published', ORDERBY_DESC),\n\t\t],\n\t},\n\tJobKnowledgeListerAppId: // appId\n\t{\n\t\tappId: 'JobKnowledgeListerAppId',\n\t\tcontentTypeId: 'genericContentWebpage',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\t//webpage\n\t\t\taddWeightedField('title'),\n\t\t\taddWeightedField('description'),\n\t\t\taddWeightedField('searchContent'),\n\t\t\t// addWeightedField('sys.metadata.importedKeywords'),\n\t\t\t// addWeightedField('sys.metadata.author'),\n\t\t\t// addWeightedField('sys.metadata.pageDate'),\t\t\t\t\n\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tNSIRCNewsAppId:\n\t{\n\t\tappId: 'NSIRCNewsAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('searchContent', 1000)\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'sponsors',\n\t\t\t'university'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tNSIRCPublicationsAppId:\n\t{\n\t\tappId: 'NSIRCPublicationsAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'sponsors',\n\t\t\t'university'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tNSIRCThesesAppId:\n\t{\n\t\tappId: 'NSIRCThesesAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'sponsors',\n\t\t\t'university'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tNSIRCDissertationsAppId:\n\t{\n\t\tappId: 'NSIRCDissertationsAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'sponsors',\n\t\t\t'university'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tNSIRCStudentProfilesAppId:\n\t{\n\t\tappId: 'NSIRCStudentProfilesAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'sponsors',\n\t\t\t'university'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tNSIRCInsightsAppId:\n\t{\n\t\tappId: 'NSIRCInsightsAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000)\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t'sponsors',\n\t\t\t'university'\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tNSIRCCareersAppId:\n\t{\n\t\tappId: 'NSIRCCareersAppId',\n\t\tcontentTypeId: 'ciphrVacancies',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('contractType', 1000),\n\t\t\taddWeightedField('location',1000),\n\t\t\taddWeightedField('employmentType',1000),\n\t\t\taddWeightedField('textDescription',1000)\t\t\t\n\t\t],\n\t\ttaxonomyFilters: [\n\t\t\t// 'locationDivision',\n\t\t\t// 'contractType'\n\t\t],\n\t\t// taxonomyFilters: [\n\t\t// \t'locationDivision',\n\t\t// \t'university',\n\t\t// \t'contractType'\n\t\t// ],\n\t},\n\tNSIRCSearchAppId:\n\t{\n\t\tappId: 'NSIRCSearchAppId',\n\t\tcontentTypeId: 'search',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('entryTitle', 1500),\n\t\t\taddWeightedField('entryDescription', 800),\n\t\t\taddWeightedField('description', 800),\n\t\t\taddWeightedField('sys.metadata.description', 800),\n\t\t\taddWeightedField('summary', 800),\t\n\t\t\taddWeightedField('keywords', 800),\t\n\t\t\taddWeightedField('title', 900),\t //weldasearch title\n\t\t\taddWeightedField('abstract', 800),\t\n\t\t\taddWeightedField('subjectHeading', 800),\t\n\t\t\taddWeightedField('searchContent', 600),\n\t\t\taddWeightedField('overview', 800),\n\t\t\taddWeightedField('conclusion', 800)\n\t\t]\n\t},\n\tOurPeopleAppId:\n\t{\n\t\tappId: 'OurPeopleAppId',\n\t\tcontentTypeId: 'staffProfiles',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('title1', 1000),\n\t\t\taddWeightedField('company', 1000),\n\t\t\taddWeightedField('shortProfile', 1000),\n\t\t\taddWeightedField('profile', 1000),\n\t\t\taddWeightedField('email', 1000),\n\t\t\taddWeightedField('telephone', 1000),\n\t\t\taddWeightedField('linkedIn', 1000),\n\t\t\taddWeightedField('twitter', 1000)\n\t\t],\n\t\t// taxonomyFilters: [\n\t\t// \t'sponsors',\n\t\t// \t'university'\n\t\t// ],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\tGenericPressReleasesAppId:\n\t{\n\t\tappId: 'GenericPressReleasesAppId',\n\t\tcontentTypeId: 'pressReleases',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('searchContent', 1000)\n\t\t],\n\t\t// taxonomyFilters: [\n\t\t// \t'categories',\n\t\t// \t'industries'\n\t\t// ],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\n\tGenericShowcaseAppId:\n\t{\n\t\tappId: 'GenericShowcaseAppId',\n\t\tcontentTypeId: 'showcase',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('title', 1000),\n\t\t\taddWeightedField('videoDescripton', 1000),\n\t\t\taddWeightedField('searchContent', 1000)\n\t\t],\n\t\t// taxonomyFilters: [\n\t\t// \t'categories',\n\t\t// \t'industries'\n\t\t// ],\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\n\tTWICLCompaniesAppId: // appId\n\t{\n\t\tappId: 'TWICLCompaniesAppId',\n\t\tcontentTypeId: 'registerOfCompanies',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\taddWeightedField('companyName'),\n\t\t],\t\t\n\t\torderBy: [\n\t\t\taddOrderByField('companyName', ORDERBY_DESC)\n\t\t]\n\n\t},\n\n\tTWICLCertificationsAppId:\n\t{\n\t\tappId: 'TWICLCertificationsAppId',\n\t\tcontentTypeId: 'cswipSchemes',\n\t\tpageSize: 12,\n\t\tweightedFields: cswipSchemesContentType,\n\t\torderBy: [\n\t\t\taddOrderByField('displayOrder', ORDERBY_ASC)\n\t\t]\n\t},\n\n\tGenericSearchAppId:\n\t{\n\t\tappId: 'GenericSearchAppId',\n\t\tcontentTypeId: 'search',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC),\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\t\n\t},\n\n\tGenericWebpageListerAppId: // appId\n\t{\n\t\tappId: 'GenericWebpageListerAppId',\n\t\tcontentTypeId: 'genericContentWebpage',\n\t\tpageSize: 12,\n\t\tweightedFields: [\n\t\t\t//webpage\n\t\t\taddWeightedField('title'),\n\t\t\taddWeightedField('description'),\n\t\t\taddWeightedField('searchContent')\n\n\t\t],\n\t\torderBy: [\n\t\t\taddOrderByField('sys.metadata.pageDate', ORDERBY_DESC)\n\t\t]\n\t},\n\n\tDigitalProductFinderAppId: // appId\n\t{\n\t\tappId: 'DigitalProductFinderAppId',\n\t\tcontentTypeId: 'DigitalProductFinder',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\t// taxonomyFilters: [\n\t\t// \t'language' //id of taxonomy field in Content Type\n\t\t// ],\t\t\n\t\torderBy: [\n\t\t\taddOrderByField('skill', ORDERBY_DESC)\n\t\t]\n\n\t},\n\n\tTWIJobsAppId: // appId\n\t{\n\t\tappId: 'TWIJobsAppId',\n\t\tcontentTypeId: 'twiJobs',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\t// taxonomyFilters: [\n\t\t// \t'language' //id of taxonomy field in Content Type\n\t\t// ],\t\t\n\t\t// orderBy: [\n\t\t// \taddOrderByField('skill', ORDERBY_DESC)\n\t\t// ]\n\n\t},\n\n\tTWIJobsDescriptionAppId: // appId\n\t{\n\t\tappId: 'TWIJobsDescriptionAppId',\n\t\tcontentTypeId: 'twiJobs',\n\t\tpageSize: 1,\n\t\tweightedFields: allFields,\n\t\t// taxonomyFilters: [\n\t\t// \t'language' //id of taxonomy field in Content Type\n\t\t// ],\t\t\n\t\t// orderBy: [\n\t\t// \taddOrderByField('skill', ORDERBY_DESC)\n\t\t// ]\n\n\t},\n\n\tTWIInnovationNetworkTAPsAppId: // appId\n\t{\n\t\tappId: 'TWIInnovationNetworkTAPsAppId',\n\t\tcontentTypeId: 'taps',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\t// taxonomyFilters: [\n\t\t// \t'language' //id of taxonomy field in Content Type\n\t\t// ],\t\t\n\t\t// orderBy: [\n\t\t// \taddOrderByField('skill', ORDERBY_DESC)\n\t\t// ]\n\n\t},\n\n\tGenericVideosAppId: // appId\n\t{\n\t\tappId: 'GenericVideosAppId',\n\t\tcontentTypeId: 'videos',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\torderBy: [\n\t\t\taddOrderByField('publishDate', ORDERBY_DESC)\n\t\t]\n\t},\n\n\tGenericVideoDisplayAppId: // appId\n\t{\n\t\tappId: 'GenericVideoDisplayAppId',\n\t\tcontentTypeId: 'videos',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\t// orderBy: [\n\t\t// \taddOrderByField('publishDate', ORDERBY_DESC)\n\t\t// ]\n\t},\n\n\tVirtualAcademyAppId: // appId\n\t{\n\t\tappId: 'VirtualAcademyAppId',\n\t\tcontentTypeId: 'VirtualAcademy',\n\t\tpageSize: 12,\n\t\tweightedFields: allFields,\n\t\t// orderBy: [\n\t\t// \taddOrderByField('publishDate', ORDERBY_DESC)\n\t\t// ]\n\t},\n\n};\n/* End App Config */\n\n/* Start Is Local or Prod */\nexport const isProd = process.env.NODE_ENV === 'production';\nexport const apiPrefix = !isProd ? 'https://preview-twi.cloud.contensis.com' : 'https://live-twi.cloud.contensis.com';\n//export const apiPrefix = !isProd ? 'https://preview-twi-dev.cloud.contensis.com' : 'https://live-twi-dev.cloud.contensis.com';\n\n/* End Is Local or Prod */\n\nexport const SYNONYMS = !isProd ? '/source-files/app/Synonyms.json' : '/site-elements/synonyms/Synonyms.json';\n\n/* Start CMS Config */\nexport const Configuration = {\n\trootUrl: 'https://cms-twi.cloud.contensis.com',\n\t//rootUrl: 'https://cms-twi-dev.cloud.contensis.com',\n\taccessToken: 'D8wMky9p2x41vFHrR8MVV3bOWg7UCpolPYQTVMzoySnGJTx5',\n\tversionStatus: !isProd ? 'latest' : 'published',\n\tprojectId: 'website',\n};\n/* End CMS Config */","import { Client } from 'contensis-delivery-api';\nimport { Configuration, isProd } from '../../config';\nimport { LruCache } from './lru-cache';\n\nexport const client = process.env.NODE_ENV !== 'production' ? Client.create(Configuration) : Client.create(Configuration);\nexport * from 'contensis-delivery-api';\n\nexport const versionStatus = client.clientConfig.versionStatus === 'latest' ? 'latest' : 'published';\n\nclass CachedSearch {\n\n\tcache = new LruCache();\n\ttaxonomyLookup = {};\t\n\n\tsearch(query) {\n\t\treturn this.request(JSON.stringify(query), () => client.entries.search(query, 1));\n\t}\n\t\n\tgetContentType(id) {\n\t\treturn this.request(`[CONTENT TYPE] ${id}`, () => client.contentTypes.get(id));\n\t}\n\n\tgetTaxonomyNode(key) {\n\t\treturn this.request(`[TAXONOMY NODE] ${key}`, \n\t\t\t() => client.taxonomy.resolveChildren({key: key, childDepth: 2})\n\t\t\t\t\t.then(node => this.extendTaxonomyNode(node))\n\t\t);\n\t}\n\n\tgetTaxonomyNodeByPath(path, order) {\n\t\t//console.log(order)\n\t\treturn this.request(`[TAXONOMY NODE] ${path}`, \n\t\t\t() => client.taxonomy.getNodeByPath(path, order)\n\t\t\t\t.then(node => client.taxonomy.resolveChildren(node.key))\n\t\t\t\t.then(node => this.extendTaxonomyNode(node))\n\t\t);\n\t}\n\n\trequest(key, execute) {\n\t\tif (!this.cache.get(key)) {\n\t\t\tlet promise = execute();\n\t\t\tthis.cache.set(key, promise);\n\t\t\tpromise.catch(() => {\n\t\t\t\tthis.cache.remove(key);\n\t\t\t});\n\t\t}\n\t\treturn this.cache.get(key);\n\t}\n\n\textendTaxonomyNode(node) {\n\t\tlet id = this.getTaxonomyId(node);\n\t\tthis.taxonomyLookup[id] = node.key;\n\t\treturn {\n\t\t\t...node,\n\t\t\tid,\n\t\t\tchildren: (node.children) ? node.children.map(n => this.extendTaxonomyNode(n)) : null\n\t\t};\n\t}\n\n\tgetTaxonomyId(node) {\n\t\tif (node.key) {\n\t\t\tlet parts = node.key.split('/');\n\t\t\treturn parts[parts.length - 1];\n\t\t}\n\t\treturn '';\n\t}\n\n\tgetTaxonomyKey(id) {\n\t\treturn this.taxonomyLookup[id];\n\t}\n}\n\nexport const cachedSearch = new CachedSearch();","import { SETTINGS, CONTENT_TYPE_ID, TAXONOMY_FILTERS, ORDERBY_FIELDS, CHECKBOX_FILTERS, apiPrefix, SYNONYMS } from '../../config';\nimport { client, cachedSearch, Query, Op, versionStatus, OrderBy } from './client';\nimport * as queries from './queries';\nimport { buildExpressions } from '../../expressions';\n\n\nexport async function getEntries(search = {}, settings) {\n\tlet query = new Query(...buildExpressions({ search, settings }));\n\tquery.pageIndex = search.pageIndex || 0;\n\tquery.pageSize = search.pageSize || settings.pageSize;\n\tif (settings.orderBy) {\n\t\tquery = await addOrderByQueries(settings.orderBy, query);\n\t}\n\tif(search.sort){\n\t\tquery.orderBy = await queries.sortOrder(search);\n\t}\n\tlet entries = await cachedSearch.search(query);\n\t//entries.pageItems = await resolveEntryPaths(entries.pageItems);\n\treturn entries;\n}\n\nasync function addOrderByQueries(orderBySettings, query) {\n\tlet orderQuery;\n\tlet orderByQueries = Object.keys(orderBySettings)\n\t.map((_, index) => orderQuery = queries.orderBy(orderBySettings[index].name, orderBySettings[index].direction, orderQuery));\n\tif (orderQuery) {\n\t\tquery.orderBy = orderQuery;\n\t}\t\n\treturn query;\n}\n\nasync function resolveEntryPaths(items) {\n\tlet entryData = items.map((entry) => { return { pageName: entry.pageName ? entry.pageName : entry.commonEntryFields.pageName, contentTypeId: entry.sys.contentTypeId, language: entry.sys.language }; });\n\tlet response = await fetch(`${'/api/custom/routing/resolvepaths/'}`, {\n\t\tmethod: 'POST',\n\t\theaders: {\n\t\t\t'Accept': 'application/json',\n\t\t\t'Content-Type': 'application/json'\n\t\t},\n\t\tbody: JSON.stringify({entries: entryData})\n\t});\n\tlet json = await response.json();\n\tlet paths = await json.paths;\n\treturn items.map((entry, index) => { \n\t\t\tif (entry.sys.dataFormat == \"entry\") {\n\t\t\t\tentry.sys.uri = paths[index]\n\t\t\t}\n\t\t\treturn entry;\n\t\t});\n}\n\nfunction OrderQuery(query) {\n\tlet orderQuery;\n\tlet orderByQueries = Object.keys(ORDERBY_FIELDS)\n\t.map((_, index) => orderQuery = queries.orderBy(ORDERBY_FIELDS[index].name, ORDERBY_FIELDS[index].direction, orderQuery));\n\treturn orderQuery;\n}\n\nexport async function FilterCollectionAsync(items, pageIndex) {\n\tlet startIndex = parseInt(pageIndex) * 10;\n\tlet endIndex = parseInt(startIndex) + 10;\n\treturn items.filter((_, index) => index >= startIndex && index < endIndex);\n}\n\nexport function FilterCollection(items, pageIndex) {\n\tpageIndex = pageIndex == null ? 0 : pageIndex;\n\tlet startIndex = pageIndex * 10;\n\tlet endIndex = startIndex + 10;\n\treturn items.filter((_, index) => index >= startIndex && index < endIndex);\n}\n\nexport async function getFilters(settings) {\n\tlet contentType = await cachedSearch.getContentType(settings.contentTypeId);\n\treturn { taxonomyFilters: await getTaxonomyFilters(contentType, settings.taxonomyFilters), checkBoxFilters: getCheckboxes(contentType, settings.checkBoxFilters), textFilters: getTextFilters(contentType, settings.textFilters), taxonomyPathFilters: await getTaxonomyFiltersByPath(settings.taxonomyFilterPaths), listFilters: await getListItems(contentType, settings.listFilters) };\n}\n\nasync function getTaxonomyFilters(contentType, taxonomyFilters) {\n\tif (taxonomyFilters) {\n\t\tlet taxonomyFields = contentType.fields.filter(function (field) {\n\t\t\t\treturn taxonomyFilters.indexOf(field.id) > -1;\n\t\t\t});\n\t\t// Handle fetching multiple taxonomy filters from categoryPicker component\n\t\ttaxonomyFields = taxonomyFields[0].id === 'categoryPicker' ? taxonomyFields[0].fields : taxonomyFields;\n\n\t\tlet taxonomyPromises = taxonomyFields.map(field => {\n\t\t\tlet taxonomyKey = (field && field.validations && field.validations.taxonomyRoot && field.validations.taxonomyRoot.key);\n\t\t\treturn !!taxonomyKey ?\n\t\t\t\tcachedSearch.getTaxonomyNode(taxonomyKey).then(node => ({\n\t\t\t\t\t[field.id]: node\n\t\t\t\t})) :\n\t\t\t\tnull;\n\t\t});\n\t\tlet filters = await Promise.all(taxonomyPromises);\n\t\treturn filters.reduce((result, filter) => ({ ...result, ...filter}), {});\n\t}\n\n\treturn null;\n}\n\nasync function getTaxonomyFiltersByPath(taxonomyPaths) {\n\tif (taxonomyPaths) {\n\t\tlet taxonomyPromises = taxonomyPaths.map(path => cachedSearch.getTaxonomyNodeByPath(path, 'alphabetical').then(node => ({ [node.name]: node})));\n\t\tlet filters = await Promise.all(taxonomyPromises);\n\t\treturn filters.reduce((result, filter) => ({ ...result,\n\t\t\t...filter\n\t\t}), {});\n\t}\n}\n\nfunction getCheckboxes(contentType, checkBoxFilters) {\n\tif (checkBoxFilters) {\n\t\treturn contentType.fields.filter(field => checkBoxFilters.indexOf(field.id) > -1).map(function(a) { return { id: a.id, name: a.name['en-GB'], value: true }; });\n\t}\t\n}\n\nfunction getListItems(contentType, listFilters) {\n\tif (listFilters) { \n\t\treturn contentType.fields.filter(field => listFilters.indexOf(field.id) > -1).map(function(m){ \n\t\t\treturn { id: m.id, children:\n\t\t\tm.validations.allowedValues.values.map(function(a) { \n\t\t\t\treturn { id: a['en-GB'].replace(/\\s/g,''), name: a['en-GB'], value: true }; \n\t\t\t}\n\t\t)\n\t\t};\n\t}\n\t);\n\t}\t\n}\n\nfunction getTextFilters(contentType, textFilters) {\n\tif (textFilters) {\n\t\treturn textFilters;\n\t}\t\n}\n\nexport async function getTaxonomyByFieldName(fieldName)\n{\t\n\tlet contentType = await cachedSearch.getContentType(CONTENT_TYPE_ID);\n\tlet taxonomyField = contentType.fields.find(field => field.id === fieldName);\n\tlet taxonomyKey = (taxonomyField && taxonomyField.validations && taxonomyField.validations.taxonomyRoot && taxonomyField.validations.taxonomyRoot.key);\n\treturn !!taxonomyKey ?\n\t\t\tcachedSearch.getTaxonomyNode(taxonomyKey).then(node => ({\n\t\t\t\t[taxonomyField.id]: node,\n\t\t\t})) :\n\t\t\tnull;\n}\n\nexport async function GetSynonyms(){\n\treturn fetch(SYNONYMS).then(r => r.json())\n\t.then(data => data)\n\t.catch(e => console.log(\"Cant load JSON file\"))\n}","import React from 'react';\nimport { connect } from 'react-redux';\nimport { toUrl } from '../../common/services/navigation';\nimport * as Actions from '../../common/services/actions';\n\nfunction TabItem({ currentSearch, search, type, children, toggleTabList, settings }) {\n\t\n\tlet selected = null;\n\tlet isActive = false;\n\tlet c = \"events-listing-filter__item\";\n\tif (currentSearch.searchType === search || \n\t\tcurrentSearch.eventType === search || \n\t\t(!currentSearch.searchType && !currentSearch.eventType && search.toLowerCase() === 'all')) {\n\t\tselected = 'true';\n\t\tisActive = true;\n\t\tc=\"events-listing-filter__item active\"\n\t}\n\n\tconst url = toUrl(currentSearch, { [type]: search.toLowerCase() != 'all' ? search : '', pageIndex: 0 }, settings);\n\n\tconst toggleTabListClick = (e) => {\n\t\tif (isActive) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\ttoggleTabList();\n\t\t}\n\t};\n\treturn (\n\t\t
  • \n\t\t\t{children}\n\t\t
  • \n\t);\n}\n\n\nconst mapDispatchToProps = dispatch => ({\n\ttoggleTabList: () => {\n\t\tdispatch(Actions.toggleTabList());\n\t}\n});\n\nexport default connect(null, mapDispatchToProps)(TabItem);\n","import { Op, OrderBy } from './client';\n\nexport function versionStatus(versionStatus) {\n\treturn [\n\t\tOp.equalTo('sys.versionStatus', versionStatus)\n\t];\n}\n\nexport function includeInSearch() {\n\treturn [\n\t\tOp.or(\n\t\t\tOp.and(\n\t\t\t\tOp.exists('sys.metadata.includeInSearch', true), \n\t\t\t\tOp.equalTo('sys.metadata.includeInSearch', true)\n\t\t\t\t),\n\t\t\tOp.exists('sys.metadata.includeInSearch', false)\n\t\t)\n\t];\n}\n\nexport function cswipContentType() {\n\treturn [\n\t\tOp.or(\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'cswipPageTemplateWebpage'),\n\t\t\t\tOp.equalTo('sys.metadata.includeInSearch', true),\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', 'CSWIP')\n\t\t\t),\n\t\t\tOp.equalTo('sys.contentTypeId', 'cswipSchemes'),\n\t\t\tOp.and(\n\t\t\t\tOp.or(\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'pdf'),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'word'),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'excel')\n\t\t\t\t),\n\t\t\t\tOp.contains('sys.uri', '/microsites/cswip/')\n\t\t\t)\n\t\t\t)\n\t];\n}\n\nexport function twiinContentType() {\n\treturn [\n\t\tOp.or(\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'twiInnovationNetworkPageTemplateWebpage'),\n\t\t\t\tOp.equalTo('sys.metadata.includeInSearch', true),\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', 'TWIInnovationNetwork')\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.or(\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'pdf'),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'word'),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'excel')\n\t\t\t\t),\n\t\t\t\tOp.contains('sys.uri', '/innovation-network/')\n\t\t\t)\n\t\t\t)\n\t];\n}\n\nexport function genericSearchContentType(settings) {\n\treturn [\n\t\tOp.or(\n\t\t\tOp.and(\n\t\t\t\tOp.or(\n\t\t\t\t\tOp.equalTo('sys.dataFormat', 'webpage'),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'pdf')\n\t\t\t\t),\n\t\t\t\tOp.startsWith('sys.uri', settings.baseUri),\n\t\t\t\tOp.equalTo('sys.metadata.includeInSearch', 'true'),\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', settings.microsite)\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'events'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', settings.microsite)\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'insights'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', settings.microsite)\t\n\t\t\t),\n\n\t\t)\n\n\t];\n}\n\n\nexport function contentType(contentTypeId) {\n\tif(contentTypeId){\n\t\tif(contentTypeId === 'search'){\n\t\t\t//console.log(\"SEARCH - 21\");\n\t\t\treturn [\n\t\t\t\tOp.or(\n\t\t\t\t\tOp.equalTo('sys.dataFormat', 'webpage').weight(5000),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases').weight(5000),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'publishedPapers').weight(5000),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'events').weight(5000),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'insights').weight(5000),\n\t\t\t\t\t// Op.equalTo('sys.contentTypeId', 'staffProfiles').weight(5000),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'pdf').weight(5000),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'word').weight(5000),\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'excel').weight(5000),\n\t\t\t\t\t//TWI Research, TWI Knowledge, Non-TWI research, Non-TWI knowledge\n\t\t\t\t\tOp.in('sys.metadata.contentCategory', ...['0/403/440','0/403/439','0/403/409','0/403/408']),\n\t\t\t\t\tOp.and(\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'weldasearch').weight(500),\n\t\t\t\t\t\tOp.in('contentType', ...['0/403/440','0/403/439','0/403/409','0/403/408'])\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t];\n\t\t}\n\n\t\telse if(contentTypeId === 'pressReleases'){\n\t\t\treturn [\n\t\t\t\tOp.or(\n\t\t\t\t\tOp.and(\n\t\t\t\t\t\tOp.equalTo('sys.dataFormat', 'webpage').weight(5000),\n\t\t\t\t\t\tOp.in('sys.metadata.categories', '0/56/64')\n\t\t\t\t\t),\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases').weight(5000),\n\t\t\t\t)\n\t\t\t];\n\t\t}\n\t\telse if(contentTypeId === 'events'){\n\t\t\treturn [\n\t\t\t\t// Op.and(\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'events').weight(5000),\n\t\t\t\t\t// Op.in('eventType', ...['0/44/45/47/50','0/44/45/47/48','0/44/45/47/49'])\n\t\t\t\t// )\n\t\t\t];\n\t\t}\n\t\telse if(contentTypeId === 'publishedPapers'){\n\t\t\treturn [\n\t\t\t\t\tOp.or(\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'publishedPapers'),\n\t\t\t\t\t\tOp.startsWith('sys.uri', '/technical-knowledge/published-papers/')\n\t\t\t\t\t\t)\t\t\t\t\t\n\t\t\t];\n\t\t}\n\t\t// else if(contentTypeId === 'faqs'){\n\t\t// \treturn [\n\n\t\t// \t\t\tOp.or(\n\t\t// \t\t\t\tOp.and(\n\t\t// \t\t\t\t\tsearchCurrentDir(),\n\t\t// \t\t\t\t\texcludeHomePage()\n\t\t// \t\t\t\t\t),\n\n\t\t// \t\t\t\tOp.and(\n\t\t// \t\t\t\t\tOp.in('sys.contentTypeId', 'faqs'),\n\t\t// \t\t\t\t\tOp.contains('whichWebsiteToDisplayOn.list', 'TWIMiddleEast')\n\t\t// \t\t\t\t\t)\n\t\t// \t\t\t\t),\n\n\t\t\t\t\t\t\t\t\t\t\n\t\t// \t];\n\t\t// }\n\n\n\t\telse if(Array.isArray(contentTypeId)){\n\t\t\treturn [\n\t\t\t\tOp.in('sys.contentTypeId', ...contentTypeId)\n\t\t\t];\n\t\t}else{\n\t\t\treturn [\n\t\t\t\tOp.equalTo('sys.contentTypeId', contentTypeId)\n\t\t\t];\n\t\t}\n\t}\n\treturn [];\n}\n\nexport function searchTerm(term) {\n\tif (term) {\n\t\treturn [Op.freeText('title', term)];\n\t}\n\treturn [];\n}\n\nexport function weightedSearchTerm(term, weightedFields) {\n\tif (term) {\n\t\treturn [Op.or().addRange(\t\t\t\n\t\t\tObject.keys(weightedFields).map((index) => (Op.freeText(weightedFields[index].fieldName, term, true, \"and\").weight(weightedFields[index].weight)))\n\t\t)];\t\t\n\t}\n\treturn [];\n}\n\nexport function containsSearch(term, weightedFields) {\n\tif (term) {\n\t\treturn [Op.or().addRange(\t\t\t\n\t\t\tObject.keys(weightedFields).map((index) => (Op.contains(weightedFields[index].fieldName, term).weight(weightedFields[index].weight)))\n\t\t)];\t\t\n\t}\n\treturn [];\n}\n\n\n\nexport function authorSearch(search){\n\tif(search.searchType && search.author && search.searchType == 'technical'){\n\t\treturn [\n\t\t\tOp.or(\n\t\t\t\tOp.freeText('author', search.author).weight(1000),\n\t\t\t\tOp.freeText('sys.metadata.author', search.author).weight(1000),\n\t\t\t\tOp.contains('author', search.author).weight(1000),\n\t\t\t\tOp.contains('sys.metadata.author', search.author).weight(1000)\n\t\t\t)\n\t\t];\n\t}\n\treturn [];\n}\n\nexport function searchAll() {\n var ret =\n [\n Op.or(\n Op.equalTo('sys.dataFormat', 'webpage'),\n Op.equalTo('sys.contentTypeId', 'weldasearch'),\n Op.equalTo('sys.contentTypeId', 'pressReleases'),\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'publishedPapers'),\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'publicFundedProjects'),\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'ourStories'),\n Op.equalTo('sys.contentTypeId', 'events'),\n Op.equalTo('sys.contentTypeId', 'insights'),\n Op.equalTo('sys.contentTypeId', 'pdf'),\n Op.equalTo('sys.contentTypeId', 'word'),\n Op.equalTo('sys.contentTypeId', 'excel'),\n //TWI Research, TWI Knowledge, Non-TWI research, Non-TWI knowledge\n\t\t\t\tOp.in('sys.metadata.contentCategory', ('0/403/440', '0/403/439', '0/403/409', '0/403/408')),\n\t\t\t)\n ];\n\treturn ret;\n}\n\nexport function searchWeldasearch(search)\n{\n if (!search.weldasearch || search.weldasearch == \"false\") {\n return [Op.not(Op.equalTo('sys.contentTypeId', 'weldasearch'))];\n }\n return [];\n}\nexport function searchTabTypes(search) {\n if (search.searchType) {\n if (search.searchType === 'search') {\n\t\t\t//console.log(\"SEARCH - 114\");\n return [\n Op.or(\n\t\t\t\t\t\tOp.equalTo('sys.dataFormat', 'webpage').weight(5000),\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases').weight(5000),\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'publishedPapers').weight(5000),\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'events').weight(5000),\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'insights').weight(5000),\n\t\t\t\t\t\t// Op.equalTo('sys.contentTypeId', 'staffProfiles').weight(5000),\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'pdf').weight(5000),\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'word').weight(4000),\n\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'excel').weight(1000),\n\t\t\t\t\t\t//TWI Research, TWI Knowledge, Non-TWI research, Non-TWI knowledge\n\t\t\t\t\t\tOp.in('sys.metadata.contentCategory', ...['0/403/440','0/403/439','0/403/409','0/403/408']),\n\t\t\t\t\t\tOp.and(\n\t\t\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'weldasearch').weight(500),\n\t\t\t\t\t\t\tOp.in('contentType', ...['0/403/440', '0/403/439', '0/403/409', '0/403/408'])\n\t\t\t\t\t\t)\n )\n ];\n }\n else if (search.searchType === 'media') {\n if (search.contentType) {\n return [Op.or().addRange([...MediaQueryBuilder(search.contentType)])];\n }\n else {\n return [\n Op.or(\n Op.equalTo('sys.contentTypeId', 'pressReleases'),\n Op.equalTo('sys.contentTypeId', 'events'),\n Op.equalTo('sys.contentTypeId', 'insights'),\n Op.equalTo('sys.contentTypeId', 'ourStories'),\n Op.equalTo('sys.contentTypeId', 'image'),\n Op.startsWith('sys.uri', '/media-and-events/')\n )\n ];\n }\n }\n else if (search.searchType === 'technical') {\n if (search.contentCategory) {\n //console.log(\"SEARCH - 154\");\n return [\n Op.or(\n Op.and(\n Op.equalTo('sys.contentTypeId', 'weldasearch').weight(500),\n Op.in('contentType', ...search.contentCategory.split(','))\n ),\n Op.in('sys.metadata.contentCategory', ...search.contentCategory.split(','))\n )\n ];\n }\n else {\n //console.log(\"SEARCH - 166\");\n return [\n Op.or(\n Op.and(\n Op.equalTo('sys.contentTypeId', 'weldasearch').weight(500),\n Op.in('contentType', ...['0/403/440', '0/403/439', '0/403/409', '0/403/408'])\n ),\n Op.or(\n Op.equalTo('sys.contentTypeId', 'pdf'),\n Op.equalTo('sys.contentTypeId', 'word'),\n Op.equalTo('sys.contentTypeId', 'excel'),\n //TWI Research, TWI Knowledge, Non-TWI research, Non-TWI knowledge\n Op.in('sys.metadata.contentCategory', ...['0/403/440', '0/403/439', '0/403/409', '0/403/408']),\n )\n )\n ];\n }\n }\n }\n\t//console.log(\"SEARCH - 183\");\n\treturn [\n Op.or(\n Op.equalTo('sys.dataFormat', 'webpage').weight(5000),\n Op.equalTo('sys.contentTypeId', 'weldasearch').weight(500),\n Op.equalTo('sys.contentTypeId', 'pressReleases').weight(5000),\n Op.equalTo('sys.contentTypeId', 'publishedPapers').weight(5000),\n Op.equalTo('sys.contentTypeId', 'events').weight(5000),\n Op.equalTo('sys.contentTypeId', 'insights').weight(5000),\n\t\t// Op.equalTo('sys.contentTypeId', 'staffProfiles').weight(5000),\n Op.equalTo('sys.contentTypeId', 'pdf').weight(5000),\n Op.equalTo('sys.contentTypeId', 'word').weight(5000),\n Op.equalTo('sys.contentTypeId', 'excel').weight(5000),\n //TWI Research, TWI Knowledge, Non-TWI research, Non-TWI knowledge\n Op.in('sys.metadata.contentCategory', ('0/403/440', '0/403/439', '0/403/409', '0/403/408')).weight(5000)\n )\n\t];\n }\n\n\nexport function filterUserGroupContent(settings) {\n\tif(settings.isAuth && settings.groups){\n\t\tif (settings.groups.includes(\"@Industrial Member\")) {\n\t\t\treturn[\n\t\t\t\tOp.or(\n\t\t\t\t\tOp.and(\n\t\t\t\t\t\tOp.equalTo(\"sys.metadata.permission\", \"OPEN\"),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"IM\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"0/441/442\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"BOTH\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"0/441/444\"))\n\t\t\t\t\t),\n\t\t\t\t\tOp.and(\n\t\t\t\t\tOp.equalTo(\"sys.metadata.permission\", \"PRO\"),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"IM\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"0/441/442\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"BOTH\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"0/441/444\"))\n\t\t\t\t\t),\n\t\t\t\t\tOp.equalTo(\"sys.metadata.permission\", \"IM\"),\n\t\t\t\t\tOp.exists(\"sys.metadata.permission\", false),\n\t\t\t\t)\n\t\t\t\t];\n\t\t\t} else if (settings.groups.includes(\"@Professional Member\")) {\n\t\t\treturn[\n\t\t\t\tOp.or(\n\t\t\t\t\tOp.and(\n\t\t\t\t\t\tOp.equalTo(\"sys.metadata.permission\", \"OPEN\"),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"IM\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"0/441/442\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"BOTH\")),\n\t\t\t\t\t\tOp.not(Op.equalTo(\"sys.metadata.linkedTo\", \"0/441/444\"))\n\t\t\t\t\t),\n\t\t\t\t\tOp.equalTo(\"sys.metadata.permission\", \"PRO\"),\n\t\t\t\t\tOp.exists(\"sys.metadata.permission\", false),\n\t\t\t\t)\n\t\t\t\t];\n\t\t} else {\n\t\t\treturn [Op.or(\n\t\t\t\tOp.equalTo(\"sys.metadata.permission\", \"OPEN\"),\n\t\t\t\tOp.exists(\"sys.metadata.permission\", false)\n\t\t\t)];\n\t\t}\n\t}\n\telse{\n\t\treturn [Op.or(\n\t\t\tOp.equalTo(\"sys.metadata.permission\", \"OPEN\"),\n\t\t\tOp.exists(\"sys.metadata.permission\", false)\n\t\t)];\n\t}\n}\nexport function listSearchType(search, listFilters) {\n\tif (listFilters) {\n\t\tlet filterQueries = Object.keys(search)\n\t\t.filter(key => listFilters.indexOf(key) > -1 && search[key])\n\t\t.map(function(key, index) { \n\t\t\tlet query = Op.in(key); \n\t\t\tquery.values = search[key].split(',').map(id => id);\n\t\t\tif(search[key].toLowerCase() === 'all'){\n\t\t\t\treturn [];\n\t\t\t} \n\t\t\treturn Op.or(Op.exists(key, false), query);\n\t\t});\n\t\treturn filterQueries;\n\t}\n}\n\nexport function taxonomyfilters(search, taxonomyFilters) {\n\tif (taxonomyFilters) {\n\t\tlet filterQueries = Object.keys(search)\n\t\t.filter(key => taxonomyFilters.indexOf(key) > -1 && search[key])\n\t\t.map(function(key, index) { \n\t\t\tlet query = Op.in(key); \n\t\t\tquery.values = search[key].split(',').map(id => id);\n\t\t\treturn query;\n\t\t});\n\t\treturn filterQueries;\n\t}\n}\nexport function filters(search, filters, filterType, categoryPickerTaxonomy) {\n\tif (filters) {\n\t\tlet filterQueries = Object.keys(search)\n\t\t.filter(key => filters.indexOf(key) > -1 && search[key])\n\t\t.map(function(key, index) { \n\t\t\tlet query = Op.in(key); \n\t\t\tquery.values = search[key].split(',').map(id => id); \n\t\t\treturn query;\n\t\t});\n\t\treturn filterQueries;\n\t}\n}\n\nexport function checkboxFilters(search, checkboxFilters) {\n\tif (checkboxFilters) {\n\t\tlet filterQueries = Object.keys(search)\n\t\t.filter(key => checkboxFilters.indexOf(key) > -1 && search[key])\n\t\t.map(key => Op.equalTo(key, true));\n\t\treturn filterQueries;\n\t}\n\treturn [];\n}\n\nexport function textFilters(search, textFilters) {\n\tif (textFilters) {\n\t\tlet tf = textFilters.map(x => x.Name);\n\t\tlet fq = Object.keys(search).filter(key => tf.indexOf(key) > -1 && search[key])\n\t\t.map(key => Op.equalTo(key, search[key]));\n\t\treturn fq;\n\t}\n\treturn [];\n}\n\nexport function newsDateFilters(year, month) {\n\tif (year) {\n\t\tlet startDate, endDate;\t\t\t\n\t\tif (month) {\n\t\t\tstartDate = new Date(year, month - 1);\n\t\t\tendDate = new Date(year, month);\n\t\t}\n\t\telse {\n\t\t\tstartDate = new Date(year, 0);\n\t\t\tendDate = new Date(year, 11, 31);\n\t\t}\n\t\treturn [Op.between('publishDate', startDate, endDate)];\t\t\n\t}\n\treturn [];\n}\n\nexport function standardDateFilters(year, month) {\n\tif (year) {\n\t\tlet startDate, endDate;\t\t\t\n\t\tif (month) {\n\t\t\tstartDate = new Date(year, month - 1);\n\t\t\tendDate = new Date(year, month);\n\t\t}\n\t\telse {\n\t\t\tstartDate = new Date(year, 0);\n\t\t\tendDate = new Date(year, 11, 31);\n\t\t}\n\t\treturn [Op.between('sys.version.published', startDate, endDate)];\t\t\n\t}\n\treturn [];\n}\n\nexport function publishDateFilters(year, month) {\n\tif (year) {\n\t\tlet startDate, endDate;\t\t\t\n\t\tif (month) {\n\t\t\tstartDate = new Date(year, month - 1);\n\t\t\tendDate = new Date(year, month);\n\t\t}\n\t\telse {\n\t\t\tstartDate = new Date(year, 0);\n\t\t\tendDate = new Date(year, 11, 31);\n\t\t}\n\t\treturn [Op.between('publishDate', startDate, endDate)];\t\t\n\t}\n\treturn [];\n}\n\nexport function pageName(pageName) {\n\treturn [Op.equalTo('pageName', pageName)];\n}\n\nexport function section(section) {\t\n\treturn [Op.equalTo('section', section)];\n}\n\n\nexport function dateRangeFilter(from, to)\n{\t\n\tif (from && to) {\n\t\treturn [Op.or(Op.lessThanOrEqualTo('eventDate.from', new Date(from)), Op.greaterThanOrEqualTo('eventDate.to', new Date(to)),\n\t\t\t\t\tOp.lessThanOrEqualTo('eventDate.from', new Date(to)), Op.greaterThanOrEqualTo('eventDate.from', new Date(from)))];\n\t}\n\telse if (from) {\t\t\n\t\treturn [Op.or(Op.lessThanOrEqualTo('eventDate.from', new Date(from)), Op.greaterThanOrEqualTo('eventDate.to', new Date(from)))];\t\t\n\t}\n\telse if (to) {\n\t\treturn [Op.lessThanOrEqualTo('eventDate.from', new Date(to)), Op.greaterThanOrEqualTo('eventDate.to', new Date(to))];\n\t}\n\tlet currentDate = new Date();\n\tlet startOfDay = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate());\n\treturn [Op.or(\n\t\t\t\tOp.and(\n\t\t\t\t\tOp.lessThanOrEqualTo('eventDate.from', startOfDay), \n\t\t\t\t\tOp.greaterThanOrEqualTo('eventDate.to', startOfDay)\n\t\t\t\t), \n\t\t\t\tOp.greaterThanOrEqualTo('eventDate.from', startOfDay)\n\t\t\t)];\n}\n\nexport function isPublished() {\n\tlet currentDate = new Date();\n\treturn [Op.lessThanOrEqualTo('publishDate', new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate(), 23, 59, 59, 59))];\n}\n\nexport function orderBy(name, direction, orderQuery) {\n\tswitch (direction) {\n\t\tcase 'asc':\n\t\t\treturn orderQuery ? orderQuery.asc(name) : OrderBy.asc(name);\n\t\tdefault:\n\t\t\treturn orderQuery ? orderQuery.desc(name) : OrderBy.desc(name);\n\t}\n}\n\nexport function sortOrder(search){\n\tif (search.sort){\n\t\tswitch (search.sort){\n\t\t\tcase 'date':\n\t\t\t\treturn OrderBy.desc('publishDate').desc('pageDate').desc('sys.metadata.pageDate').desc('sys.version.published');\n\t\t\tcase 'dateAsc':\n\t\t\t\treturn OrderBy.asc('publishDate').asc('pageDate').asc('sys.metadata.pageDate').asc('sys.version.published');\n\t\t\tcase 'dateAnnounce':\n\t\t\t\treturn OrderBy.desc('dateAnnounced');\n\t\t\tcase 'dateAnnounceAsc':\n\t\t\t\treturn OrderBy.asc('dateAnnounced');\n\t\t\tcase 'sortNameDesc':\n\t\t\t\treturn OrderBy.desc('sortCol');\n\t\t\tcase 'sortNameAsc':\n\t\t\t\treturn OrderBy.asc('sortCol');\n\t\t\tdefault:\n\t\t\treturn [];\n\t\t}\n\t}\n\treturn [];\n}\n\nexport function range(value, minKey, maxKey) {\n\tif (value) {\n\t\treturn([Op.lessThanOrEqualTo(minKey, value), Op.greaterThanOrEqualTo(maxKey, value)]);\n\t}\n\treturn [];\n}\n\nexport function startWith(value) {\n\tif (value) {\n\t\tif (value == '0-9') {\n\t\t\treturn [Op.and().addRange([...aToZLetters()])]; // to do\n\t\t}\n\t\telse {\n\t\t\treturn [Op.startsWith('title', value)];\n\t\t}\t\t\n\t}\n\treturn [];\n}\n\nfunction aToZLetters(){\n\tlet letArr = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];\n\treturn letArr.map(letter => Op.not(Op.startsWith('title', letter)));\n}\nexport function rangeSingle(key, value) {\n\tif (value) {\n\t\treturn([Op.lessThanOrEqualTo(key, value)]);\n\t}\n\treturn [];\n}\n\nexport function pathStartsWith(path){\n\treturn [Op.startsWith('sys.uri', path)];\n\t\n}\n\n\nexport function filterBySection(sections) {\n\treturn [Op.or().addRange([...filterSectionByPage(sections), ...filterSectionByContentType(sections)])];\n}\n\nfunction filterSectionByPage(sections) {\n\tif (sections) {\t\t\n\t\treturn sections.split(',').map(section => Op.startsWith('sys.uri', section));\n\t}\n\treturn [];\n}\n\nfunction filterSectionByContentType(sections) {\n\tif (sections) {\n\t\treturn sections.split(',').filter(section => SectionToContentTypeMap[section])\n\t\t.map(section => Op.equalTo('sys.contentTypeId', SectionToContentTypeMap[section]));\n\t}\n\treturn [];\n}\n\nfunction MediaQueryBuilder(contentTypes){\n\treturn contentTypes.split(',').map(\n\t\t(c) => {\n\t\t\tswitch(c){\n\t\t\t\tcase 'Images':\n\t\t\t\treturn Op.equalTo('sys.dataFormat', 'image');\n\t\t\t\tcase 'Videos':\n\t\t\t\treturn Op.equalTo('sys.datFormat', 'video');\n\t\t\t\tdefault:\n\t\t\t\treturn Op.equalTo('sys.contentTypeId', c.charAt(0).toLowerCase() + c.substr(1).replace(/\\s/g,''));\n\t\t\t}\n\t\t\t}\n\t\t);\n}\n\n/* sw */\n\nexport function pageDateFilter(year, month)\n{\n\t\tif (year) {\n\t\tlet startDate, endDate;\t\t\t\n\t\tif (month) {\n\t\t\tstartDate = new Date(year, month - 1);\n\t\t\tendDate = new Date(year, month);\n\t\t}\n\t\telse {\n\t\t\tstartDate = new Date(year, 0);\n\t\t\tendDate = new Date(year, 11, 31);\n\t\t}\n\t\treturn [\n\t\t\tOp.or(\n\t\t\t\tOp.between('sys.metadata.pageDate', startDate, endDate),\n\t\t\t\tOp.between('pageDate', startDate, endDate)\n\t\t\t)\n\t\t\t\n\t\t];\t\t\n\t}\n\treturn [];\n\n}\n\nexport function pageDateYearFilter(year)\n{\n\t\tif (year) {\n\t\t\treturn [\n\t\t\t\tOp.between('sys.metadata.pageDate', year, year)\n\t\t\t\t];\n\t\t}\n\t\treturn [];\n}\n\nexport function dateAnnouncedFilter(year, month)\n{\n\t\tif (year) {\n\t\tlet startDate, endDate;\t\t\t\n\t\tif (month) {\n\t\t\tstartDate = new Date(year, month - 1);\n\t\t\tendDate = new Date(year, month);\n\t\t}\n\t\telse {\n\t\t\tstartDate = new Date(year, 0);\n\t\t\tendDate = new Date(year, 11, 31);\n\t\t}\n\t\treturn [\n\t\t\tOp.between('dateAnnounced', startDate, endDate)\n\t\t];\t\t\n\t}\n\treturn [];\n\n}\n\nexport function projectStatus(status) {\n\tif (status != null)\n\t{\n\t\treturn [\n\t\t\tOp.equalTo('status', status)\n\n\t\t];\n\n\t\t\n\t} else {\n\t\treturn [];\n\t}\n\n\n}\n\nexport function excludeHomePage() {\n\treturn [\n\t\tOp.not(\n\t\t\tOp.endsWith('sys.uri', 'home.aspx')\n\t\t\t)\n\t];\n\n\n}\n\nexport function hideFromListingPage() {\n\treturn [\n\t\tOp.not(\n\t\t\tOp.equalTo('sys.metadata.hideFromListingPage', 'true')\n\t\t\t)\n\t\t];\n}\n\n\n\n\nexport function orPathEndsWith(path){\n\treturn [\n\t\tOp.or(\n\t\t\tOp.endsWith('sys.uri', path),\n\t\t\tOp.equalTo('contentTypeId', 'publishedPapers')\n\t\t\t)\n\t\t];\n}\n\n\nexport function getMicrositeNews(siteName) {\n\treturn [\n\t\tOp.and(\n\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases'),\n\t\t\tOp.contains('whichWebsiteToDisplayOn', siteName),\n\t\t\t)\n\t];\n}\n\nexport function getGenericInsights(siteName) {\n\treturn [\n\t\tOp.and(\n\t\t\tOp.equalTo('sys.contentTypeId', 'Insights'),\n\t\t\tOp.contains('whichWebsiteToDisplayOn', siteName),\n\t\t\t)\n\t];\n}\n\n//Events switch\nexport function showEventOnCorporate(microSiteName) {\n\tif (microSiteName != null && microSiteName != '') {\n\t\treturn [\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'events'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', microSiteName),\n\t\t\t\t)\n\t\t];\n\n\t} else\n\treturn [\n\t\t\tOp.equalTo('boolean', 'true')\n\t\t];\n\n\n\t// if (microSiteName == null && microSiteName == '')\n\t// {\n\t// \treturn [\n\t// \t\tOp.equalTo('boolean', 'true')\n\t\n\t// \t];\n\t// }\n\n}\n\nexport function getMicrositeEvents(microSiteName) {\n\tif (microSiteName != null && microSiteName != '') {\n\t\treturn [\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'events'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', microSiteName),\n\t\t\t\t)\n\t\t];\n\n\t} else\n\n\treturn [];\n\n}\n\nexport function getPrivateEvents(companyName) {\n\tif (companyName != null && companyName != '') {\n\t\treturn [\n\t\t\tOp.or(\n\t\t\t\tOp.exists('privateEvent', 'false'),\n\t\t\t\tOp.contains('privateEvent', companyName),\n\t\t\t\t)\n\t\t];\n\n\t} else {\n\t\treturn [\n\t\t\tOp.exists('privateEvent', 'false')\n\t\t];\n\t}\n\n}\n\nexport function getShowcase(showcaseCollection) {\n\treturn [\n\t\tOp.and(\n\t\t\tOp.equalTo('sys.contentTypeId', 'showcase'),\n\t\t\tOp.contains('collection', showcaseCollection),\n\t\t\t)\n\t];\n}\n\nexport function getMicrositeInsights(siteName) {\n\treturn [\n\t\tOp.and(\n\t\t\tOp.equalTo('sys.contentTypeId', 'insights'),\n\t\t\tOp.contains('whichWebsiteToDisplayOn', siteName),\n\t\t\t)\n\t];\n}\n\n\n//Press Releases switch\nexport function hideFromCorporate() {\n\treturn [\n\t\tOp.or(\n\t\t\tOp.equalTo('hideFromCorporate', \"false\"),\n\t\t\tOp.exists('hideFromCorporate', \"false\")\n\n\t\t)\n\n\t];\n}\n\n\n\n\n\n\n\nexport function notNSIRCVacancies() {\n\treturn [\n\t\tOp.not(\n\t\t\tOp.contains('reference', \"NSIRC\")\n\t\t)\n\n\t];\n}\n\n\nexport function NSIRCVacancies() {\n\treturn [\n\t\tOp.contains('reference', \"NSIRC\")\n\t];\n}\n\n\nexport function ourPeopleFilter() {\n\treturn [\n\t\tOp.contains('collection', \"Our People\")\n\t];\n}\n\n\nexport function nsircSearch(){\n\treturn [\n\t\tOp.or(\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'nsircPageTemplateWebpage'),\n\t\t\t\tOp.equalTo('sys.metadata.includeInSearch', true),\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases'),\n\t\t\t\tOp.in('whichWebsiteToDisplayOn', ...[\"NSIRC_insights\",\"NSIRC_students\", \"NSIRC_dissertations\", \"NSIRC_theses\", \"NSIRC_publications\", \"NSIRC_news\"]))\n\n\t\t),\n\n\t\t\n\t];\n\n}\n\nexport function cswipSearch(){\n\treturn [\n\t\tOp.or(\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'cswipPageTemplateWebpage'),\n\t\t\t\tOp.equalTo('sys.metadata.includeInSearch', true),\n\t\t\t),\n\t\t\tOp.and(\n\t\t\t\tOp.equalTo('sys.contentTypeId', 'pressReleases'),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn', 'CSWIP'))\n\n\t\t),\n\n\t\t\n\t];\n\n}\n\nexport function FAQQuery(searchTerm, siteName)\n{\n\t\t//tests\n\t\t//var path = \"/technical-knowledge/faqs#/\";\n\t\t//var path = \t\"/technical-knowledge/faqs/home.aspx#/\";\n\t\t//var path = \t\"/locations/south-east-asia/faqs/home.aspx#/\";\n\n\t\tvar path = window.location.pathname;\n\n\t\tif (path.includes(\"FAQListerPageHTMLFile.html\") && siteName == '')\n\t\t{\n\t\t\tpath = \"/technical-knowledge/faqs#/\";\n\t\t}\n\n\t\tpath = path.replace(\"/home.aspx\", \"\");\n\n\t\tpath = path.includes(\".aspx\") ? path = path.substring(0, path.lastIndexOf(\".aspx\")) : path;\n\n\t\tpath = path.endsWith('#/') ? path = path.replace(\"#/\", \"\") : path;\n\n\t\tif (siteName != '')\n\t\t{\n\t\t\treturn [\n\n\t\t\t\tOp.and(\t\t\t\t\n\t\t\t\t\tOp.equalTo('sys.contentTypeId', 'faqs'),\n\t\t\t\t\tOp.contains('whichWebsiteToDisplayOn.list', siteName)\n\t\t\t\t\t)\t\t\t\t\n\t\t];\n\t\t}\n\n\t\treturn [\n\n\t\t\tOp.or(\n\t\t\t\tOp.and(\n\t\t\t\t\tOp.startsWith('sys.uri', path),\n\t\t\t\t\tOp.equalTo('sys.dataFormat', 'webpage'),\n\t\t\t\t\tOp.not(\n\t\t\t\t\t\tOp.equalTo('sys.properties.filename', 'home.aspx'),\n\t\t\t\t\t\tOp.equalTo('sys.properties.filename', 'faqs.aspx')\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t];\n\n\n\n\n\n}\n\n\n\nexport function certificationFilter(type, sitename, certificationFilter) {\n\tif (type == null && sitename != null && certificationFilter == 'showSearch' ) {\n\t\treturn [\n\t\t\tOp.contains('whichWebsiteToDisplayOn.list', sitename)\n\t\t];\n\t}\n\n\n\tif (type != null && sitename != null && certificationFilter == 'showSearch')\t\n\t{\n\t\treturn [\n\n\t\t\tOp.and(\t\t\t\t\n\t\t\t\tOp.contains('certificationType.name', type),\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn.list', sitename)\n\t\t\t\t)\t\n\t\t];\n\n\t}\n\t\n\tif (sitename != null && certificationFilter != 'showSearch')\n\t{\n\t\treturn [\n\n\t\t\tOp.and(\t\t\t\t\n\t\t\t\tOp.contains('whichWebsiteToDisplayOn.list', sitename),\n\t\t\t\tOp.contains('certificationType.name', certificationFilter)\n\t\t\t\t)\t\n\t\t];\n\t}\n\n\t\n\treturn [];\n}\n\n\nexport function certifiedCompanyFilter(Type) {\n\n\tif (Type != null)\t\n\t{\n\t\treturn [\n\t\t\tOp.contains('companyCertificate.list', Type),\n\n\t\t];\n\n\t}\t\n\t\n\treturn [];\n}\n\n\nexport function twiJobsFilters(_search) {\n\tif (_search != null)\n\t{\n\t\tvar { jobType, workingHours, companyName, distance, lon, lat } = _search;\n\t\tconst today = new Date();\n\t\tconst future = new Date();\n\t\tfuture.setFullYear(future.getFullYear() + 100);\n\n\t\t// console.log(\"distance: \" + distance);\n\t\t// console.log(\"lat: \" + lat);\n\t\t// console.log(\"lon: \" + lon);\n\n\t\tif (distance == undefined) {\n\t\t\tdistance = 1;\n\n\t\t}\n\n\n\t\tconst filters = [\n\t\t\tOp.equalTo('jobType', jobType || []),\n\t\t\tOp.equalTo('workingHours', workingHours || []),\n\t\t\tOp.equalTo('companyName1.entryTitle', companyName || []),\n\t\t\tOp.between('closingDate', today, future),\n\t\t];\n\n\t\tif (lat && lon) {\n\t\t\tfilters.push(\n\t\t\t\tOp.distanceWithin(\"location\", lat, lon, distance)\n\t\t\t);\n\t\t}\n\n\t\t// console.log(\"filters: \", filters);\n\n\t\treturn filters;\n\t}\n\telse return [];\n}\n\nexport function datePostedFilter(searchDatePosted)\n{\n\tvar today = new Date().toISOString();\n\n\tif (searchDatePosted != \"\" & searchDatePosted !== undefined)\n\t{\n\t\treturn [\n\t\t\tOp.between('datePosted', searchDatePosted, today)\n\t\t]\n\n\t}\n\telse return [];\n\n\n}\n\nexport function excludeFromSearch() {\n\treturn [\n\t\tOp.not(\n\t\t\tOp.startsWith('sys.uri', '/microsites/twi-certification/pdf/company-certificates')\n\t\t\t),\n\t\tOp.not(\n\t\t\tOp.startsWith('sys.uri', '/test-pages/')\n\t\t\t)\n\t];\n}\n\n\nexport function TAPsFilter(_search) {\n\tif (_search != null)\n\t{\n\t\tvar { Topics, Industries } = _search;\n\n\n\t\tvar industriesField = \"multipleChoice\";\n\t\tvar topicsField = \"multipleChoice1\";\n\n\n\t\tconst filters = [\n\t\t\tOp.equalTo(industriesField, Industries || []),\n\t\t\tOp.equalTo(topicsField, Topics || []),\n\t\t];\n\t\treturn filters;\n\t\t}\n\treturn [];\n\n\n}\n\n\nexport function getVideos(siteName) {\n\treturn [\n\t\tOp.and(\n\t\t\tOp.equalTo('sys.contentTypeId', 'videos'),\n\t\t\tOp.contains('whichWebsiteToDisplayOn', siteName),\n\t\t\t)\n\t];\n}\n\n\nexport function getVirtualAcademy() {\n\treturn [\n\t\tOp.and(\n\t\t\tOp.equalTo('sys.contentTypeId', 'VirtualAcademy'),\n\t\t\t)\n\t];\n}\n\n\n\n\n","export * from './filters';\nexport * from './search-entries';\nexport * from './initialise-settings';\nexport * from './toggle';","export class CacheNode {\n\tconstructor(key, value) {\n\t\tthis.key = key;\n\t\tthis.value = value;\n\t\tthis.next = null;\n\t\tthis.prev = null;\n\t}\n}\n\nexport class LruCache {\n\n\tconstructor(limit = 100) {\n\t\tthis.map = {};\n\t\tthis.head = null;\n\t\tthis.tail = null;\n\t\tthis.limit = limit || 100;\n\t\tthis.size = 0;\n\t}\n\n\tget(key) {\n\t\tif (this.map[key]) {\n\t\t\tlet value = this.map[key].value;\n\t\t\tlet node = new CacheNode(key, value);\n\t\t\tthis.remove(key);\n\t\t\tthis.setHead(node);\n\t\t\treturn value;\n\t\t}\n\t}\n\n\tset(key, value) {\n\t\tlet node = new CacheNode(key, value);\n\t\tif (this.map[key]) {\n\t\t\tthis.remove(key);\n\t\t} else {\n\t\t\tif (this.size >= this.limit) {\n\t\t\t\tdelete this.map[this.tail.key];\n\t\t\t\tthis.size--;\n\t\t\t\tthis.tail = this.tail.prev;\n\t\t\t\tthis.tail.next = null;\n\t\t\t}\n\t\t}\n\t\tthis.setHead(node);\n\t}\n\n\tsetHead(node) {\n\t\tnode.next = this.head;\n\t\tnode.prev = null;\n\t\tif (this.head) {\n\t\t\tthis.head.prev = node;\n\t\t}\n\t\tthis.head = node;\n\t\tif (!this.tail) {\n\t\t\tthis.tail = node;\n\t\t}\n\t\tthis.size++;\n\t\tthis.map[node.key] = node;\n\t}\n\n\tremove(key) {\n\t\tlet node = this.map[key];\n\t\tif (node.prev) {\n\t\t\tnode.prev.next = node.next;\n\t\t} else {\n\t\t\tthis.head = node.next;\n\t\t}\n\t\tif (node.next) {\n\t\t\tnode.next.prev = node.prev;\n\t\t} else {\n\t\t\tthis.tail = node.prev;\n\t\t}\n\t\tdelete this.map[key];\n\t\tthis.size--;\n\t}\n}","import createRouter from 'router5';\nimport listenersPlugin from 'router5/plugins/listeners';\nimport browserPlugin from 'router5/plugins/browser';\nimport routes from './routes';\n\nconst router = createRouter(routes, {\n\t\tdefaultRoute: 'list',\n\t\tautoCleanUp: true\n\t})\n\t.usePlugin(listenersPlugin())\n\t.usePlugin(browserPlugin({\n\t\tuseHash: true\n\t}));\n\nlet nextState = null;\n\n\nfunction navigateToState(dependencies, toState, fromState) {\n\tnextState = toState;\n\tconst toRoute = routes.find(r => r.name === toState.name);\n\tif (!toRoute || !toRoute.onActivate) {\n\t\treturn Promise.resolve({ ...toState\n\t\t});\n\t}\t\t\t\n\treturn Promise.resolve({})\n\t\t.then(() => toRoute.onActivate(dependencies.store, toState, fromState))\n\t\t.then(() => ({ ...toState\n\t\t}));\n}\n\nfunction OnActivateMiddlewareFactory(routes) {\n\treturn (router, dependencies) => {\n\t\treturn (toState, fromState) => {\n\t\t\treturn navigateToState(dependencies, toState, fromState);\n\t\t};\n\t};\n}\n\nrouter.useMiddleware(OnActivateMiddlewareFactory(routes));\n\n// Hack to fix IE\nwindow.onhashchange = function () {\n\tsetTimeout(function () {\n\t\tlet hash = window.location.hash;\n\t\thash = hash.replace(new RegExp('^#'), '');\n\t\tlet state = router.matchPath(hash);\n\t\tlet currentState = router.getState();\n\t\t//if (state && currentState && nextState && (state.path !== currentState.path) && (state.path !== nextState.path)) {\n\t\t\tnavigateToState(router.getDependencies(), state, currentState);\n\t\t//}\n\t}, 10);\n}\n\nexport default router;","import * as Actions from '../actions';\n\nexport default function entriesReducer(state = {}, action) {\n\tswitch (action.type) {\n\t\tcase Actions.SEARCH_ENTRIES_COMPLETE:\n\t\t\treturn action.entries;\n\t\tdefault: \n\t\t\treturn state;\n\t}\n}\n","import * as Actions from '../services/actions';\n\nfunction onActivate(store, toState, fromState) {\n\tconst search = { ...toState.params };\t\n\tconst settings = store.getState().settings;\n\tif (Object.keys(settings).length > 0) {\n\t\treturn store.dispatch(Actions.searchEntries(search));\n\t}\n}\n\nexport default [\n\t{\n\t\tname: 'list',\n\t\tpath: '/',\n\t\tonActivate\n\t},\n];","import * as Actions from '../actions';\n\nexport default function toggleReducer(state = false, action) {\n\tswitch (action.type) {\n\t\tcase Actions.TOGGLE_SEARCH_COMPLETE:\n\t\t\treturn action.toggle;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n}","import * as Actions from '../actions';\n\nexport default function cookieDataReducer(state = {}, action) {\n\tswitch (action.type) {\n\t\tcase Actions.GET_COOKIE_DATA_COMPLETE:\n\t\t\treturn action.cookieData;\n\t\tdefault:\n\t\t\treturn state;\n\t}\n}\n\n","import React from 'react';\nimport { getUrl, getDescText, getPublishDate } from '../../common/services/builders';\nimport PropTypes from 'prop-types';\n\nfunction SearchItem({ entry }) {\n return (\n
    \n
    \n
    \n {renderTypeTag(entry)}\n
    \n
    \n {renderMemberTag(entry)}\n
    \n
    \n
    \n

    {entry.title}

    \n \n \n \n \n \n {getPublishDate(entry)}\n \n
    \n {renderCRPReportDiv(entry)}\n
    \n );\n \n}\n\nfunction renderCRPReportDiv(entry){\n var sysUri = entry.sys.uri;\n var divTxt = \"\";\n var path = '/pdfs/industrial-member-reports/';\n if (sysUri && sysUri.toLowerCase().includes(path))\n {\n return
    This report is subject to export control please contact crp@twi.co.uk
    ;\n } \n return divTxt;\n}\n\nfunction renderMemberTag(entry) {\n if (entry.sys.contentTypeId == 'weldasearch'){\n return Industrial members;\n }\n if(entry.sys.metadata.permission){\n switch (entry.sys.metadata.permission) {\n case 'OPEN':\n return All members;\n case 'IM':\n return Industrial members;\n case 'PRO':\n return Professional members;\n default:\n return Public;\n }\n }\n else{\n return Public;\n }\n}\n\nfunction renderTypeTag(entry){\n if(entry.sys.dataFormat == 'webpage'){\n var sectionType = \"WebPage\";\n var sysUri = entry.sys.uri.toLowerCase();\n var contentTypes = [\n { path:\"/what-we-do\",sectionType:\"What We Do\"},\n { path:\"/who-we-are\",sectionType:\"Who We Are\"},\n { path:\"/best-practice-guides/\",sectionType:\"Best Practice Guides\"},\n { path:\"/faqs/\",sectionType:\"FAQs\"},\n { path:\"/job-knowledge/\",sectionType:\"Job Knowledge\"},\n { path:\"/knowledge-summaries\",sectionType:\"Knowledge Summaries\"},\n { path:\"/published-papers/\",sectionType:\"Published Papers\"},\n { path:\"/software-toolkits/\",sectionType:\"Software Toolkits\"},\n { path:\"/technical-articles/\",sectionType:\"Technical Articles\"},\n { path:\"/welding-abstracts-journal\",sectionType:\"Welding Abstracts Journals\"},\n { path:\"/twi-core-research/\",sectionType:\"Core Research\"},\n { path:\"/joint-industry-projects\",sectionType:\"Joint Industry Projects\"},\n { path:\"/public-funded-projects\",sectionType:\"Public Funded Projects\"},\n { path:\"/industrial-member-reports\",sectionType:\"Industrial Member Reports\"},\n { path:\"/technical-literature-reviews\",sectionType:\"Technical Literature Reviews\"},\n { path:\"media-and-events/press-releases\",sectionType:\"Press Releases\"},\n { path:\"media-and-events/insights\",sectionType:\"Insights\"},\n { path:\"media-and-events/connect\",sectionType:\"Connect\"},\n { path:\"media-and-events/bulletin\",sectionType:\"Bulletin\"},\n { path:\"media-and-events/industry-updates\",sectionType:\"Industry Updates\"},\n ];\n\n contentTypes.forEach(function(element){\n if (sysUri.includes(element.path))\n {\n sectionType = element.sectionType;\n } \n });\n\n return {sectionType};\n }\n else\n {\n var sectionTypeNW = entry.sys.contentTypeId.split(/(?=[A-Z])/).join(\" \");\n var sysUriNW = entry.sys.uri?entry.sys.uri.toLowerCase():entry.sys.slug.toLowerCase();\n if (sysUriNW.includes ('/pdfs/industrial-member-report')){\n sectionTypeNW = \"Industrial Member Report (pdf)\";\n }\n\n return {sectionTypeNW};\n }\n}\n\nSearchItem.propTypes = {\n entry: PropTypes.object,\n search: PropTypes.object,\n filters: PropTypes.object,\n settings: PropTypes.object,\n store: PropTypes.object,\n};\n\nexport default SearchItem ;","import * as Actions from '../actions';\n\nexport default function initialiseSettingsReducer(state = {}, action) {\n\tswitch (action.type) {\t\t\n\t\tcase Actions.INITIALISE_SETTINGS_COMPLETE:\n\t\t\treturn { ...action.settings };\n\t\tcase Actions.LOAD_SYNONYMS_COMPLETE:\n\t\t\treturn { ...state, ...{ synonyms: action.synonyms } };\n\t\tdefault:\n\t\t\treturn state;\n\t}\n}\n","import * as Actions from '../actions';\n\nexport default function filtersReducer(state = {}, action) {\n\tswitch (action.type) {\n\t\tcase Actions.LOAD_FILTERS_COMPLETE:\n\t\t\treturn { ...action.filters };\n\t\tdefault:\n\t\t\treturn state;\n\t}\n}","import * as Actions from '../actions';\n\nexport default function searchReducer(state = {}, action) {\n\tswitch (action.type) {\n\t\tcase Actions.RESET_SEARCH:\n\t\t\treturn { ...action.search };\n\t\tcase Actions.SET_SEARCH_TERM:\n\t\t\treturn { ...state, term: action.term };\n\t\tdefault:\n\t\t\treturn state;\n\t}\n\treturn state;\n}","import { combineReducers } from 'redux';\nimport { router5Reducer } from 'redux-router5'\nimport entriesReducer from './entries';\nimport searchReducer from './search';\nimport filtersReducer from './filters';\nimport intialiseSettingsReducer from './initialise-settings';\nimport cookieDataReducer from './cookieData';\nimport toggleReducer from './toggle';\n\n\nexport default function createReducer() {\n\treturn combineReducers({\n\t\tentries: entriesReducer,\n\t\tsearch: searchReducer,\n\t\tfilters: filtersReducer,\n\t\tsettings: intialiseSettingsReducer,\n\t\trouter: router5Reducer,\n\t\tcookieData: cookieDataReducer,\n\t\ttoggle: toggleReducer\n\t});\n}\n","import { createStore, applyMiddleware, compose } from 'redux';\nimport { router5Middleware } from 'redux-router5';\nimport thunkMiddleware from 'redux-thunk';\nimport createReducer from './reducers';\n\n\nexport default function configureStore(router, initialState) {\t\n\tconst enhancers = [applyMiddleware(thunkMiddleware, router5Middleware(router))];\n\tconst composeEnhancers =\n \tprocess.env.NODE_ENV !== 'production' &&\n \ttypeof window === 'object' &&\n \twindow.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__\n \t? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({\n \tshouldHotReload: false,\n \t})\n\t \t: compose;\n\t \n\tconst store = createStore(\n\t\tcreateReducer(),\n\t\tcomposeEnhancers(...enhancers)\n\t);\n\n\trouter.setDependency('store', store);\n\treturn store;\n}\n","export const TOGGLE_SEARCH_COMPLETE = 'TOGGLE_SEARCH_COMPLETE';\nexport const TOGGLE_SEARCH_ERROR = 'TOGGLE_SEARCH_ERROR';\n\nexport function toggleSearch(toggle) {\n\treturn async (dispatch, getState) => {\n try {\n\t\t\tdispatch(toggleSearchComplete(toggle));\n\t\t} catch (e) {\n\t\t\tconsole.log(e);\n\t\t\tdispatch(toggleSearchError(e));\n\t\t}\n\t};\n}\n\nexport function toggleSearchComplete(toggle) {\n\treturn {\n\t\ttype: TOGGLE_SEARCH_COMPLETE,\n\t\ttoggle\n\t};\n}\n\nexport function toggleSearchError(error) {\n\treturn {\n\t\ttype: TOGGLE_SEARCH_ERROR,\n\t\terror,\n\t};\n}","export const INITIALISE_SETTINGS_COMPLETE = 'INITIALISE_SETTINGS_COMPLETE';\nexport const INITIALISE_SETTINGS_ERROR = 'INITIALISE_SETTINGS_ERROR';\n\nexport const LOAD_SYNONYMS_COMPLETE = 'LOAD_SYNONYMS_COMPLETE';\nexport const LOAD_SYNONYMS_ERROR = 'LOAD_SYNONYMS_ERROR';\n\nimport { SETTINGS } from '../../../config';\nimport { initialiseFilters } from '.';\nimport { GetSynonyms } from '../api';\n\nexport function initialiseSettings(\n\tappId, groups, auth, microsite, showcaseCollection, \n\tcompanyName, certificationFilter, baseUri, jobListingPageUrl, \n\tfreeTrialExpired, popularSearches, pressReleasesBaseUri, eventsBaseUri, insightsBaseUri ) \n\t{\n\treturn async(dispatch) => {\n\t\tlet settings = SETTINGS[appId];\t\n\t\tif (settings) {\n\t\t\tif (groups && auth) {\n\t\t\t\tsettings.groups = groups;\n\t\t\t\tsettings.isAuth = auth;\n\t\t\t}\n\n\t\t\t// settings.microsite = microsite || \"\";\n\t\t\t// settings.showcaseCollection = showcaseCollection || \"\";\n\t\t\t// settings.companyName = companyName || \"\";\n\t\t\t// settings.certificationFilter = certificationFilter || \"\";\n\t\t\t// settings.baseUri = baseUri || \"\";\n\t\t\t// settings.jobListingPageUrl = jobListingPageUrl || \"\";\n\t\t\t// settings.freeTrialExpired = freeTrialExpired || false;\n\t\t\t// settings.popularSearches = popularSearches || \"\";\n\t\t\t// settings.pressReleasesBaseUri = pressReleasesBaseUri || \"\";\n\t\t\t// settings.eventsBaseUri = eventsBaseUri || \"\";\n\t\t\t// settings.insightsBaseUri = insightsBaseUri || \"\";\n\n\t\t\tsettings.microsite = \"\";\n\n\t\t\tif (microsite)\n\t\t\t{\n\t\t\t\tsettings.microsite = microsite;\n\t\t\t}\n\n\t\t\tif (showcaseCollection)\n\t\t\t{\n\t\t\t\tsettings.showcaseCollection = showcaseCollection;\n\t\t\t}\n\n\t\t\tif (companyName)\n\t\t\t{\n\t\t\t\tsettings.companyName = companyName;\n\t\t\t}\n\n\t\t\tif (certificationFilter)\n\t\t\t{\n\t\t\t\tsettings.certificationFilter = certificationFilter;\n\t\t\t}\n\n\t\t\tif (baseUri)\n\t\t\t{\n\t\t\t\tsettings.baseUri = baseUri;\n\t\t\t}\n\n\t\t\tif(jobListingPageUrl)\n\t\t\t{\n\t\t\t\tsettings.jobListingPageUrl = jobListingPageUrl;\n\t\t\t}\n\n\t\t\tif(freeTrialExpired)\n\t\t\t{\n\t\t\t\tsettings.freeTrialExpired = freeTrialExpired;\n\t\t\t}\n\n\t\t\tif(popularSearches)\n\t\t\t{\n\t\t\t\tsettings.popularSearches = popularSearches;\n\t\t\t}\n\t\t\t\n\t\t\tif(pressReleasesBaseUri)\n\t\t\t{\n\t\t\t\tsettings.pressReleasesBaseUri = pressReleasesBaseUri;\n\t\t\t}\n\n\t\t\tif(eventsBaseUri)\n\t\t\t{\n\t\t\t\tsettings.eventsBaseUri = eventsBaseUri;\n\t\t\t}\n\n\t\t\tif(insightsBaseUri)\n\t\t\t{\n\t\t\t\tsettings.insightsBaseUri = insightsBaseUri;\n\t\t\t}\n\n\n\t\t\tdispatch(initialiseSettingsComplete(settings));\n\t\t\tdispatch(initialiseFilters(settings));\n\t\t}\n\t\telse {\n\t\t\tlet errorMessage = 'Settings not found';\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.log(errorMessage);\n\t\t\tdispatch(initialiseSettingsError(errorMessage));\n\t\t}\t\n\t};\n}\n\nexport function initialiseSettingsComplete(settings) {\n\treturn {\n\t\ttype: INITIALISE_SETTINGS_COMPLETE,\n\t\tsettings\n\t};\n}\n\nexport function initialiseSettingsError(error) {\n\treturn {\n\t\ttype: INITIALISE_SETTINGS_ERROR,\n\t\terror\n\t};\n}\n\n\nexport function loadSynonyms() {\n\treturn async(dispatch) => {\n\t\tlet synonyms = await GetSynonyms();\n\t\tif (synonyms) {\n\t\t\tdispatch(loadSynonymsComplete(synonyms));\n\t\t}\t\n\t\telse {\n\t\t\tlet errorMessage = 'Synonyms not found';\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.log(errorMessage);\n\t\t\tdispatch(loadSynonymsError(errorMessage));\n\t\t}\t\n\t};\n}\nexport function loadSynonymsComplete(synonyms) {\n\treturn {\n\t\ttype: LOAD_SYNONYMS_COMPLETE,\n\t\tsynonyms\n\t};\n}\n\nexport function loadSynonymsError(error) {\n\treturn {\n\t\ttype: LOAD_SYNONYMS_ERROR,\n\t\terror\n\t};\n}\n\n","import { getEntries } from '../api';\nimport { getSearch } from '../selectors';\n\nexport const RESET_SEARCH = 'RESET_SEARCH';\nexport const SET_SEARCH_TERM = 'SET_SEARCH_TERM';\nexport const SEARCH_ENTRIES = 'SEARCH_ENTRIES';\nexport const SEARCH_ENTRIES_COMPLETE = 'SEARCH_ENTRIES_COMPLETE';\nexport const SEARCH_ENTRIES_ERROR = 'SEARCH_ENTRIES_ERROR';\n\nexport function searchEntries(search) {\n\treturn async(dispatch, getState) => {\n\t\tdispatch({\n\t\t\ttype: SEARCH_ENTRIES\n\t\t});\n\t\tlet oldSearch = getState(getSearch);\n\t\ttry {\n\t\t\tlet entries;\n\t\t\tlet settings = getState().settings;\t\n\t\t\tdispatch({\n\t\t\t\ttype: RESET_SEARCH,\n\t\t\t\tsearch\n\t\t\t});\n\t\t\tentries = await getEntries(search, settings);\n\t\t\tdispatch(searchEntriesComplete(entries));\t\t\t\n\t\t} catch (e) {\n\t\t\tconsole.log(e);\n\t\t\tdispatch({\n\t\t\t\ttype: RESET_SEARCH,\n\t\t\t\tsearch: oldSearch\n\t\t\t});\n\t\t\tdispatch(searchEntriesError(e));\n\t\t}\t\t\n\t};\n}\n\nexport function searchEntriesComplete(entries) {\n\treturn {\n\t\ttype: SEARCH_ENTRIES_COMPLETE,\n\t\tentries\n\t};\n}\n\nexport function searchEntriesError(error) {\n\treturn {\n\t\ttype: SEARCH_ENTRIES_ERROR,\n\t\terror\n\t};\n}\n\nexport function setSearchTerm(term) {\n\treturn {\n\t\ttype: SET_SEARCH_TERM,\n\t\tterm,\n\t};\n}","import * as queries from './common/services/queries';\nimport { versionStatus } from './common/services/client';\n\n\n\n\nexport function buildExpressions({ search, settings }) {\n\tswitch (settings.appId) {\n\t\tcase 'search':\n\t\t\treturn buildSearchExpressions({ search, settings });\n\t\tcase 'events':\n\t\t\treturn buildEventsExpressions({search, settings});\n\t\tcase 'news':\n\t\t\treturn buildNewsExpressions({search, settings});\n\t\tcase 'ourstories':\n\t\t\treturn buildOurStoriesExpressions({search, settings});\n\t\tcase 'insights':\n\t\t\treturn buildInsightsExpressions({search, settings});\n\t\tcase 'careers':\n\t\t\treturn buildCareersExpressions({search, settings});\n\t\tcase 'atoz':\n\t\t\treturn buildAtoZExpressions({search, settings});\n\t\tcase 'IMReportsGridAppId':\n\t\tcase 'IMReportsListerAppId':\n\t\t\treturn buildIMReportsListerExpressions({search, settings});\n\t\tcase 'JIPLister':\n\t\t\treturn buildJIPListerExpressions({search, settings});\n\t\tcase 'PublishedPapersLister':\n\t\t\treturn buildPublishedPapersContentTypeExpressions({search, settings});\n\t\tcase 'CSWIPSchemesAppId':\n\t\t\treturn buildCSWIPSchemesContentTypeExpressions({search, settings});\n\t\tcase 'CSWIPSearchAppId':\n\t\t\treturn buildCSWIPSearchExpressions({ search, settings });\n\t\tcase 'CSWIPNewsAppId':\n\t\t\treturn buildCSWIPNewsExpressions({search, settings});\n\t\tcase 'CSWIPInsightsAppId':\n\t\t\treturn buildCSWIPInsightsExpressions({search, settings});\n\t\tcase 'TWIInnovationNetworkNewsAppId':\n\t\t\treturn buildTWIInnovationNetworkNewsExpressions({search, settings});\n\t\tcase 'memberListAppId':\n\t\t\treturn buildMemberListExpressions({search, settings});\n\t\tcase 'TWIInnovationNetworkEventsAppId':\n\t\t\treturn buildTWIInnovationNetworkEventsExpressions({search, settings});\n\t\tcase 'TWIInnovationNetworkSearchAppId':\n\t\t\treturn buildTWIInnovationNetworkSearchExpressions({ search, settings });\n\t\tcase 'PublicFundedProjectsListerAppId':\n\t\t\treturn buildPublicFundedProjectsListerExpressions({search, settings});\n\t\tcase 'CoreResearchProgrammeListerAppId':\n\t\t\t\treturn buildCoreResearchProgrammeListerExpressions({search, settings});\n\t\tcase 'FAQListerAppId':\n\t\t\t\treturn buildFAQListerExpressions({search, settings});\n\t\tcase 'TWIDEInsightsAppId':\n\t\t\t\treturn buildTWIDEInsightsExpressions({search, settings});\n\t\tcase 'JobKnowledgeListerAppId':\n\t\t\t\treturn buildJobKnowledgeListerExpressions({search, settings});\n\t\tcase 'NSIRCNewsAppId':\n\t\t\treturn buildNSIRCNewsExpressions({search, settings});\n\t\tcase 'NSIRCPublicationsAppId':\n\t\t\treturn buildNSIRCPublicationsExpressions({search, settings});\n\t\tcase 'NSIRCThesesAppId':\n\t\t\treturn buildNSIRCThesesExpressions({search, settings});\n\t\tcase 'NSIRCDissertationsAppId':\n\t\t\treturn buildNSIRCDissertationsExpressions({search, settings});\n\t\tcase 'NSIRCStudentProfilesAppId':\n\t\t\treturn buildNSIRCStudentProfilesExpressions({search, settings});\n\t\tcase 'NSIRCInsightsAppId':\n\t\t\treturn buildNSIRCInsightsExpressions({search, settings});\n\t\tcase 'NSIRCCareersAppId':\n\t\t\treturn buildNSIRCCareersExpressions({search, settings});\n\t\tcase 'NSIRCSearchAppId':\n\t\t\treturn buildNSIRCSearchExpressions({search, settings});\t\n\t\tcase 'OurPeopleAppId':\n\t\t\treturn buildOurPeopleExpressions({search, settings});\t\n\t\tcase 'GenericPressReleasesAppId':\n\t\t\treturn buildGenericPressReleasesExpressions({search, settings});\n\t\tcase 'GenericShowcaseAppId':\n\t\t\treturn buildGenericShowcaseExpressions({search, settings});\n\t\tcase 'TWICLCertificationsAppId':\n\t\t\treturn buildTWICLCertificationsExpressions({search, settings});\n\t\tcase 'TWICLCompaniesAppId':\n\t\t\treturn buildTWICLCompaniesExpressions({search, settings});\n\t\tcase 'CTLFAQListerAppId':\n\t\t\treturn buildCTLFAQListerExpressions({search, settings});\n\t\tcase 'GenericInsightsAppId':\n\t\t\treturn buildGenericInsightsExpressions({search, settings});\n\t\tcase 'GenericSearchAppId':\n\t\t\treturn buildGenericSearchExpressions({ search, settings });\n\t\tcase 'GenericWebpageListerAppId':\n\t\t\treturn buildGenericWebpageListerExpressions({ search, settings });\n\t\tcase 'DigitalProductFinderAppId':\n\t\t\treturn buildDigitalProductFinderExpressions({ search, settings });\n\t\tcase 'TWIJobsAppId':\n\t\t\treturn buildTWIJobsExpressions({ search, settings });\n\t\tcase 'TWIInnovationNetworkTAPsAppId':\n\t\t\treturn buildTWIInnovationNetworkTAPsExpressions({ search, settings });\n\t\tcase 'GenericVideosAppId':\n\t\t\treturn buildGenericVideosExpressions({ search, settings });\n\t\tcase 'VirtualAcademyAppId':\n\t\t\treturn buildVirtualAcademyExpressions({search, settings});\n\t\tdefault:\t\n\t\t\treturn buildDefaultExpressions({ search, settings });\n\t\t\n\t}\n}\n\nfunction buildSearchExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.searchAll(),\n\t\t...queries.authorSearch(search),\n\t\t...queries.sortOrder(search),\n\t\t...queries.filterUserGroupContent(settings),\n\t\t...queries.includeInSearch(),\n\t\t...queries.searchWeldasearch(search),\n\t\t...queries.excludeFromSearch()\n\t];\n}\nfunction buildOurStoriesExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.standardDateFilters(search.date)\n\t];\n}\nfunction buildInsightsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.publishDateFilters(search.date),\n\t\t...queries.hideFromCorporate()\n\t];\n}\n\n\n\n\nfunction buildCareersExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.notNSIRCVacancies()\n\t];\n}\nfunction buildNewsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.hideFromCorporate(),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildEventsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.showEventOnCorporate(settings.microsite),\n\t\t...queries.getPrivateEvents(settings.companyName),\n\t\t// ...queries.getMicrositeEvents(settings.microsite),\n\t\t...queries.orderBy()\n\t];\n}\nfunction buildAtoZExpressions({ search}) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.pathStartsWith('/what-we-do/research-and-technology/technologies/'),\n\t\t...queries.startWith(search.startWith)\n\t];\n}\nfunction buildDefaultExpressions({ settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.includeInSearch()\n\t];\n}\nfunction buildIMReportsListerExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t// ...queries.pathStartsWith('/what-we-do/research-and-technology/research-reports/industrial-member-reports/'),\n\t\t...queries.pathStartsWith('/what-we-do/research-and-technology/research-programmes/core-research-programme/report-abstracts/'),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.pageDateYearFilter(search.date),\n\t\t...queries.excludeHomePage(),\n\n\t];\n}\nfunction buildJIPListerExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t// ...queries.dateAnnouncedFilter(search.date),\n\t\t// ...queries.sortOrder(search),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.projectStatus(search.status)\n\t];\n\n}\nfunction buildPublishedPapersContentTypeExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.excludeHomePage(),\n\t\t...queries.pageDateFilter(search.date)\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\nfunction buildCSWIPSchemesContentTypeExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.pageDateFilter(search.date),\n\t\t...queries.certificationFilter(search.schemetype, settings.microsite, settings.certificationFilter)\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\nfunction buildCSWIPSearchExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.cswipContentType(),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.pageDateFilter(search.date),\n\t\t// ...queries.cswipSearch()\n\t\t//...queries.pathStartsWith('/microsites/cswip/'),\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\nfunction buildCSWIPNewsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"CSWIP\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildCSWIPInsightsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeInsights(\"CSWIP\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildTWIInnovationNetworkNewsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"TWIInnovationNetwork\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildMemberListExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t];\n}\nfunction buildTWIInnovationNetworkEventsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeEvents(\"TWIInnovationNetwork\"),\n\t\t...queries.orderBy()\n\t];\n}\nfunction buildTWIInnovationNetworkSearchExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.twiinContentType(),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.pageDateFilter(search.date),\n\t\t//...queries.pathStartsWith('/microsites/twi-innovation-network/'),\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\nfunction buildPublicFundedProjectsListerExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.dateAnnouncedFilter(search.date),\n\t\t...queries.sortOrder(search),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.hideFromCorporate()\n\t];\n}\nfunction buildCoreResearchProgrammeListerExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.excludeHomePage(),\n\t\t...queries.pageDateYearFilter(search.date),\n\t\t...queries.pathStartsWith('/what-we-do/research-and-technology/research-programmes/core-research-programme/executive-summaries/')\n\t\t//...queries.pathStartsWith('/what-we-do/research-and-technology/current-research-programmes/twi-core-research')\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])] \t\n\n\t];\n}\n\nfunction buildFAQListerExpressions({ search, settings }) {\t\n\treturn [\n\n\t\t\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.FAQQuery(search.term,settings.microsite)\n\n\n\t\t// // ...queries.excludeHomePage(),\n\t\t// ...queries.pageDateFilter(search.date),\n\t\t// // ...queries.searchCurrentDir(),\n\t\t// ...queries.hideFromListingPage()\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\n\nfunction buildCTLFAQListerExpressions({ search, settings }) {\t\n\treturn [\n\n\t\t\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.FAQQuery(search.term,settings.microsite)\n\n\n\t\t// // ...queries.excludeHomePage(),\n\t\t// ...queries.pageDateFilter(search.date),\n\t\t// // ...queries.searchCurrentDir(),\n\t\t// ...queries.hideFromListingPage()\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\n\n\nfunction buildTWIDEInsightsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeInsights(\"TWIDeutschland\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildJobKnowledgeListerExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.excludeHomePage(),\n\t\t...queries.pageDateFilter(search.date),\n\t\t...queries.pathStartsWith('/technical-knowledge/job-knowledge')\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n\n}\n\nfunction buildNSIRCNewsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"NSIRC_news\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\n\nfunction buildNSIRCPublicationsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"NSIRC_publications\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\n\nfunction buildNSIRCThesesExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"NSIRC_theses\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\n\nfunction buildNSIRCDissertationsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"NSIRC_dissertations\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\n\nfunction buildNSIRCStudentProfilesExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"NSIRC_students\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildNSIRCInsightsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(\"NSIRC_insights\"),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildNSIRCCareersExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.NSIRCVacancies()\n\t];\n}\nfunction buildNSIRCSearchExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.pageDateFilter(search.date),\n\t\t...queries.nsircSearch()\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\nfunction buildOurPeopleExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.ourPeopleFilter(),\n\t\t// ...queries.filters(search, settings.taxonomyFilters),\n\t\t// ...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildGenericPressReleasesExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t// ...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getMicrositeNews(settings.microsite),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\nfunction buildGenericShowcaseExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t// ...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.getShowcase(settings.showcaseCollection),\n\t\t...queries.newsDateFilters(search.date)\n\t];\n}\n\nfunction buildTWICLCertificationsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.pageDateFilter(search.date),\n\t\t...queries.certificationFilter(search.schemetype, settings.microsite, settings.certificationFilter)\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\n\nfunction buildTWICLCompaniesExpressions({ search, settings }) {\t\n\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t//...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.certifiedCompanyFilter(search.certificationtype),\n\t\t//...queries.orderBy('companyName')\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n\n\n\n\t// if (Object.keys(search) > 0 ) {\n\t// \treturn [\n\t// \t\t...queries.versionStatus(versionStatus),\n\t// \t\t...queries.contentType(settings.contentTypeId),\n\t// \t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t// \t\t...queries.pageDateFilter(search.date),\n\t// \t\t...queries.companyCertificationFilter(search.certificationtype)\n\t// \t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t// \t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t// \t];\n\t// } \n\n\t// return [];\n\n}\n\n\nfunction buildGenericInsightsExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.filters(search, settings.taxonomyFilters),\n\t\t...queries.publishDateFilters(search.date),\n\t\t...queries.getGenericInsights(settings.microsite),\n\t//\t...queries.hideFromCorporate()\n\t];\n}\n\nfunction buildGenericSearchExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.genericSearchContentType(settings),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t//...queries.pageDateFilter(search.date),\n\t\t//...queries.includeInSearch() - pages are created with includeInSearch as false by default\n\t\t// ...queries.cswipSearch()\n\t\t//...queries.pathStartsWith('/microsites/cswip/'),\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\n\nfunction buildGenericWebpageListerExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.excludeHomePage(),\n\t\t...queries.pageDateYearFilter(search.date),\n\t\t...queries.pathStartsWith(settings.baseUri)\n\t\t//...queries.orPathEndsWith('/technical-knowledge/published-papers/')\n\t\t//,...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\n\n\nfunction buildDigitalProductFinderExpressions({ search, settings }) {\t\n\treturn [\n\n\t\t\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t\n\t\t// ...queries.filters(search, settings.taxonomyFilters),\n\t\t// ...queries.FAQQuery(search.term,settings.microsite)\n\n\n\t\t// ...queries.excludeHomePage(),\n\t\t// ...queries.pageDateFilter(search.date),\n\t\t// ...queries.searchCurrentDir(),\n\t\t// ...queries.hideFromListingPage(),\n\t\t// ...queries.orPathEndsWith('/technical-knowledge/published-papers/'),\n\t\t// ...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\n\n\n\nfunction buildTWIJobsExpressions({ search, settings }) {\n\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.twiJobsFilters(search),\n\t\t...queries.datePostedFilter(search.datePosted),\n\n\t];\n}\n\n\nfunction buildTWIInnovationNetworkTAPsExpressions({ search, settings }) {\n\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.TAPsFilter(search),\n\t\t//...queries.datePostedFilter(search.datePosted),\n\t\n\t\t// ...queries.orPathEndsWith('/technical-knowledge/published-papers/'),\n\t\t// ...queries[Op.or([{'field': 'uri', 'startsWith': '/technical-knowledge/published-papers/'}])]\n\t];\n}\n\n\nfunction buildGenericVideosExpressions({ search, settings }) {\n\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.getVideos(settings.microsite),\n\t];\n}\n\n\nfunction buildVirtualAcademyExpressions({ search, settings }) {\t\n\treturn [\n\t\t...queries.versionStatus(versionStatus),\n\t\t...queries.contentType(settings.contentTypeId),\n\t\t...queries.weightedSearchTerm(search.term, settings.weightedFields),\n\t\t...queries.getVirtualAcademy(),\n\n\t];\n}\n\n\t","import React from 'react';\nimport { addFilter } from '../services/navigation';\n\nfunction CheckBoxFilter({ search, filter, node }) {\n\n\tconst change = e => {\n\t\taddFilter(search, filter, e.target.value, e.target.checked);\n\t};\n\n\tconst isChecked = (key) => {\n\t\tlet value = search[filter];\n\t\treturn !!(value && value.indexOf(key) >= 0);\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\n\t\t
    \n\t);\n}\n\nexport default CheckBoxFilter;","import {\n\tgetFilters\n} from '../api';\n\nexport const LOAD_FILTERS_COMPLETE = 'LOAD_FILTERS_COMPLETE';\nexport const LOAD_FILTERS_ERROR = 'LOAD_FILTERS_ERROR';\n\nexport function initialiseFilters() {\n\treturn async (dispatch, getState) => {\n try {\n\t\t\tconst settings = getState().settings;\n\t\t\tlet filters = { ...await getFilters(settings)};\n\t\t\tdispatch(loadFiltersComplete(filters));\n\t\t} catch (e) {\n\t\t\t// eslint-disable-next-line no-console\n\t\t\tconsole.log(e);\n\t\t\tdispatch(loadFiltersError(e));\n\t\t}\n\t};\n}\n\nexport function loadFiltersComplete(filters) {\n\treturn {\n\t\ttype: LOAD_FILTERS_COMPLETE,\n\t\tfilters\n\t};\n}\n\nexport function loadFiltersError(error) {\n\treturn {\n\t\ttype: LOAD_FILTERS_ERROR,\n\t\terror,\n\t};\n}","import React from 'react';\nimport { toUrl } from '../services/navigation';\nimport { translate } from '../services/builders';\n\nfunction Pager({ entries, search, settings }) {\n\tconst pageCount = Math.ceil(parseInt(entries.totalCount) / parseInt(entries.pageSize));\t\n\tconst entriesPageIndex = parseInt(entries.pageIndex);\n\tconst entriesPageSize = parseInt(entries.pageSize);\n\n\tconst currentPage = entriesPageIndex + 1;\n\tconst showPrev = (entriesPageIndex > 0);\n\n\n\tconst showNext = (currentPage < pageCount);\n\tconst showLast = (currentPage < pageCount - 2);\n\t\n\tconst pages = [];\n\tlet counter = 0;\n\n\twhile (counter < 3 && counter + currentPage <= pageCount) {\n\t\tpages[counter] = counter;\n\t\tcounter += 1;\n\t}\n\n\tvar prevPages = [];\n\tlet prevCounter = currentPage;\n\tlet i = currentPage == 3 ? currentPage -1 : currentPage -2;\n\twhile (prevCounter > i && currentPage >= 3) {\n\t\tprevPages[prevCounter] = prevCounter;\n\t\tprevCounter--;\n\t}\n\n\tfunction scrollTop(){\n\t\t//window.scrollTo(0, 0);\n\t}\n\n\t//

    Showing {parseInt(entries.pageSize) * entriesPageIndex + 1} to {showNext ? parseInt(entries.pageSize) * (entriesPageIndex + 1) : parseInt(entries.totalCount)} of {parseInt(entries.totalCount)}

    \n\t\n\treturn (\n\t\t\n\t);\n}\n\n\n\nexport default Pager;","import React from 'react';\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { getEntries, getSearch, getFilters, getSettings } from '../../common/services/selectors';\nimport TabItem from '../components/_TabItem';\n\nfunction SearchTabs({ search, settings }) {\n\treturn (\n\t\t\n\t);\n}\nSearchTabs.propTypes = {\n entries: PropTypes.object,\n};\n\nconst mapStateToProps = state => ({ entries: getEntries(state), search: getSearch(state), filters: getFilters(state), settings: getSettings(state) });\n\nexport default connect(mapStateToProps)(SearchTabs);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport { getSearch } from '../../common/services/selectors';\nimport * as Actions from '../../common/services/actions';\nimport { navigate } from '../../common/services/navigation';\nimport PropTypes from 'prop-types';\n\nfunction SearchBox({ search }) {\n\tlet searchInput = null;\n\n\tconst click = e => {\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t\tnavigate(search, { term: searchInput.value, pageIndex: 0 });\n\t};\n\n\tconst keyDown = e => {\n\t\tif (e.keyCode === 13) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t}\n\t};\n\n\tconst keyUp = e => {\n\t\tif (e.keyCode === 13) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\tnavigate(search, { term: searchInput.value, pageIndex: 0 });\n\t\t}\n\t};\n\n\tconst setSearchInput = input => {\n\t\tsearchInput = input;\n\t\tif (input && search && search.term) {\n\t\t\tinput.value = search.term;\n\t\t}\n\t};\n\n\treturn (\n\t\t\t
    \n\t\t\t\t
    \n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t
    \t\n\t\t\t
    \n\t);\n}\n\nconst mapStateToProps = state => ({ search: getSearch(state) });\n\nconst mapDispatchToProps = dispatch => ({\n\tsetSearchTerm: (term) => {\n\t\tdispatch(Actions.setSearchTerm(term));\n\t} \n});\n\nSearchBox.propTypes = {\n entry: PropTypes.object,\n search: PropTypes.object,\n filters: PropTypes.object,\n settings: PropTypes.object,\n store: PropTypes.object,\n};\n\nexport default connect(mapStateToProps, mapDispatchToProps)(SearchBox);\n","import React from 'react'\nimport { connect } from 'react-redux';\nimport * as Actions from '../../common/services/actions';\nimport CheckBoxFilter from '../../common/components/_CheckboxFilter';\nimport { toggleSearch } from '../../common/services/selectors';\n\nfunction SearchAccordianToggle({ search, store, toggle, filter }) { \n let techArrHid = ['0/403/439', '0/403/408'];\n let chkbxClsName = 'checkbox--item section--menu_item';\n let clsname = 'icon icon-chevron-down';\n let hrefName = '#icon-chevron-down'\n if(toggle){\n chkbxClsName = 'checkbox--item section--menu_item filter-checkbox-open';\n clsname = 'icon icon-chevron-up';\n hrefName = '#icon-chevron-up'\n }\n //let showChecked = search && search.contentCategory && techArrHid.some(v => search.contentCategory.includes(v)) || toggle == true;\n\n let showAdvanced = () => {\n if(toggle == true){\n toggle = false;\n }\n else{\n toggle = true;\n }\n store.dispatch(Actions.toggleSearch(toggle));\n };\n return (\n
    \n
    \n showAdvanced()}/>\n  \n \n \n \n
    \n {(filter.taxonomyPathFilters && \n filter.taxonomyPathFilters.ContentCategory && toggle) && \n techArrHid.map((key) => {\n let taxItem = filter.taxonomyPathFilters.ContentCategory.children.filter(tax => tax.key == key);\n return \n })}\n
    \n
    \n
    \n )\n}\n\nconst mapStateToProps = state => ({ toggle: toggleSearch(state)});\n\nexport default connect(mapStateToProps)(SearchAccordianToggle);","import React from 'react';\nimport { connect } from 'react-redux';\nimport * as Actions from '../../common/services/actions';\nimport { navigate } from '../../common/services/navigation';\n\nfunction AuthorSearch({ search, settings, setSearchTerm }) {\n\tconst s = settings;\n\tlet searchInput = null;\n\n\tconst click = e => {\n\t\te.preventDefault();\n\t\te.stopPropagation();\n\t\tnavigate(search, { author: searchInput.value, pageIndex: 0 });\n\t};\n\n\tconst keyDown = e => {\n\t\tif (e.keyCode === 13) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t}\n\t};\n\n\tconst keyUp = e => {\n\t\tif (e.keyCode === 13) {\n\t\t\te.preventDefault();\n\t\t\te.stopPropagation();\n\t\t\tnavigate(search, { author: searchInput.value, pageIndex: 0 });\n\t\t}\n\t};\n\n\tconst setSearchInput = input => {\n\t\tsearchInput = input;\n\t\tif (input && search && search.author) {\n\t\t\tinput.value = search.author;\n\t\t}\n\t\telse if (input && search) {\n\t\t\tinput.value = '';\n\t\t}\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \t\t\t\t\n\t);\n}\n\nconst mapDispatchToProps = dispatch => ({\n\tsetSearchTerm: (term) => {\n\t\tdispatch(Actions.setSearchTerm(term));\n\t} \n});\n\nexport default connect(null, mapDispatchToProps)(AuthorSearch);\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport SearchAuthor from './SearchAuthor';\nimport CheckBoxFilter from '../../common/components/_CheckboxFilter';\nimport { getSearch, toggleSearch } from '../../common/services/selectors';\nimport SearchAccordianToggle from './SearchAccordianToggle';\n\nfunction SearchTecnicalFilter({ search, filter, toggle, store }) {\n\tlet techArr = ['0/403/440', '0/403/409'];\n\treturn (\n\t\t
    \n {/*\n *
    \n\t\t\t{filter.taxonomyPathFilters && \n\t\t\t\tfilter.taxonomyPathFilters.ContentCategory && \n techArr.map((key) => {\n\t\t\t\t\tlet taxItem = filter.taxonomyPathFilters.ContentCategory.children.filter(tax => tax.key == key);\n\t\t\t\t\treturn \n\t\t\t\t})}\n */}\n {/**/}\n\t\t\t\t\n\t\t
    \n\t);\n}\n\nconst mapStateToProps = state => ({ search: getSearch(state), toggle: toggleSearch(state) });\n\nexport default connect(mapStateToProps)(SearchTecnicalFilter);","import React from 'react';\nimport { addFilter } from '../../common/services/navigation';\n\nfunction CheckBoxFilter({ search, filter, node }) {\n\n\tconst change = e => {\n\t\taddFilter(search, filter, e.target.value, e.target.checked);\n\t};\n\n\tlet value = search[filter];\n\n\tconst setCheckBox = (key) => (checkbox) => {\n\t\tif (checkbox) {\n\t\t\tlet isChecked = !!(value && value.indexOf(key) >= 0);;\n\t\t\tif (checkbox.checked !== isChecked) {\n\t\t\t\tcheckbox.checked = isChecked;\n\t\t\t}\n\t\t}\n\t};\n\n\treturn (\n
    \n \n \n
    \t\n\t);\n}\n\nexport default CheckBoxFilter;","import React from 'react';\nimport CheckBoxFilter from '../components/_MediaCheckBox';\n\nfunction SearchMediaFilter({ search, filter }) {\n\treturn (\n\t\t
    \n\t\t\t
    \n\t\t\t{filter.taxonomyPathFilters && \n\t\t\t\tfilter.taxonomyPathFilters.Media && \n\t\t\t\tfilter.taxonomyPathFilters.Media.children.map((t) => ())}\n\t\t
    \n\t);\n}\n\nexport default SearchMediaFilter;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport { changeFilter, toggleFilter } from '../../common/services/navigation';\n\nfunction SearchOrderFilter({ search }) {\n\tconst change = e => {\t\t\t\n\t\tchangeFilter(search, 'sort', e.target.value);\n\t};\n\n const doFilter = e => {\n\t\ttoggleFilter(search, e.target.value, e.target.checked);\n };\n\n\n\tconst isChecked = (key) => {\n\t\tif (search.sort === undefined)\n\t\t{\n\t\t\tif (search === undefined) \n\t\t\t{\n\t\t\t\tsearch = {};\n\t\t\t}\n\t\t\tsearch.sort = \"relevance\";\n\t\t}\n\t\treturn search.sort && search.sort === key;\n\t};\n\n\treturn (\n\t\t
    \n\t\t\t
    \n \n \n
    \t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n\t\t\t
    \t\n\t\t\t
    \n\t\t\t\t\n\t\t\t\t\n
    \t\n
    \n\t);\n}\n\nSearchOrderFilter.propTypes = {\n\tsearch: PropTypes.object\n\t\n};\n\nexport default SearchOrderFilter;\n","import React from 'react';\nimport { connect } from 'react-redux';\nimport SearchOrderFilter from './SearchOrderFilters';\nimport SearchMediaFilter from './SearchMediaFilters';\nimport { getSearch, getFilters, toggleSearch } from '../../common/services/selectors';\nimport SearchTechnicalFilter from './SearchTechnicalFilters';\n\nfunction SearchFilter({ filters, search, toggle, store }) {\n\treturn (\n\t\t
    \n\t\t\t

    \n\t\t\t\tFilter results\n\t\t\t\t\n\t\t\t

    \n\t\t\t
    \n\t\t\t\t\n\t\t\t\t{search.searchType && search.searchType === 'media' &&\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t{search.searchType && search.searchType === 'technical' &&\n\t\t\t\t\t\n\t\t\t\t}\n\t\t\t
    \n\t\t
    \t\t\t\t\n\t);\n}\n\nconst mapStateToProps = state => ({ search: getSearch(state), filters: getFilters(state), toggle: toggleSearch(state) });\n\nexport default connect(mapStateToProps)(SearchFilter);\n","import React from 'react'\nimport { connect } from 'react-redux';\nimport PropTypes from 'prop-types';\nimport { getEntries, getSearch, getFilters, getSettings, toggleSearch } from '../../common/services/selectors';\nimport Pager from '../../common/components/_Pager';\nimport SearchItem from './SearchItem';\nimport SearchFilter from './SearchFilter';\nimport SearchSynonyms from './SearchSynonyms';\n\nfunction SearchResults({ entries, search, filters, settings, store }) { \n const { items = [] } = entries || {};\n\treturn (\n
    \n
    \n
    \n

    Search results

    \n { search.term &&

    {entries.totalCount} result(s) found for { search.term && search.term}

    }\n \n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n {entries.totalCount === 0 &&

    Nothing Found

    }\n {entries.totalCount > 0 && \n items.map((entry, index) => ) }\n
    \n
    \n {entries.totalCount > 10 && }\n
    \n
    \n
    \n\t);\n}\n\n\nSearchResults.propTypes = {\n entries: PropTypes.object,\n search: PropTypes.object,\n filters: PropTypes.object,\n settings: PropTypes.object,\n store: PropTypes.object,\n};\n\nconst mapStateToProps = state => ({ entries: getEntries(state), search: getSearch(state), filters: getFilters(state), settings: getSettings(state), toggle: toggleSearch(state) });\n\nexport default connect(mapStateToProps)(SearchResults);","import ReactDOM from 'react-dom';\nimport React from 'react';\nimport { Provider } from 'react-redux';\nimport { RouterProvider, Route } from 'react-router5';\nimport * as Actions from '../common/services/actions';\nimport configureStore from '../common/services/store';\nimport router from '../common/routes/router';\nimport SearchResults from '../listings/search/SearchResults';\nimport SearchInput from '../listings/search/SearchInput';\nimport SearchTabs from '../listings/search/SearchTabs';\n\nlet store;\n\nfunction SearchApp(memberGroups, isAuth) {\n\treturn (\n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\t);\n}\n\nfunction SearchInputApp() {\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n}\n\nfunction SearchTabsApp() {\n\treturn (\n\t\t\n\t\t\t\n\t\t\n\t);\n}\nexport function renderSearch(id, mg, auth) {\n\tif (!store) {\n\t\tstore = configureStore(router);\n\t}\n\t//decode the string to get the groups\n\tvar groups = atob(mg) != null ? atob(mg) : 'Public';\n\tstore.dispatch(Actions.initialiseSettings('search', groups, auth));\n\tstore.dispatch(Actions.loadSynonyms());\n\trouter.start(() => {\n\t\tReactDOM.render(, document.getElementById(id));\n\t});\n}\n\nexport function renderSearchInput(id) {\n\tif (!store) {\n\t\tstore = configureStore(router);\n\t}\n\tstore.dispatch(Actions.initialiseSettings('search'));\n\trouter.start(() => {\n\t\tReactDOM.render(, document.getElementById(id));\n\t});\n}\n\nexport function renderSearchTabs(id) {\n\tif (!store) {\n\t\tstore = configureStore(router);\n\t}\n\tstore.dispatch(Actions.initialiseSettings('search'));\n\trouter.start(() => {\n\t\tReactDOM.render(, document.getElementById(id));\n\t});\n}\n"],"sourceRoot":""}