{"version":3,"file":"gep.infoTabs-toteboard.es5.js","names":["$","showFilteredProbables","instance","poolId","hide","show","allPoolsTabIndex","probablesTabIndex","willPaysTabIndex","clientObject","utils","onResizeBrowser","methods","init","clientObjectToUse","utilsToUse","onResizeBrowserToUse","options","data","setInterval","currentRace","is","undefined","onRefresh","settings","general","toteboardPollingPeriod","updateTrack","races","nextRace","sort","comparers","compareRaceNumber","each","raceStatus","length","removeData","onRaceChange","showLoading","empty","updateRace","p","activeTabIndex","thisCard","cards","race","hasClass","tabs","html","trim","EJS","element","render","showToteboardPopupLink","maxNumberOfOpenPopups","toteboardPopup","reviewEnablingOfToteboardPopupLinks","click","openToteboardPopup","activate","todaysCards","getCardByShortName","iTSPEventCode","getCards","priorityCards","shortCardNames","append","isPriorityCard","shortCardName","text","cardName","val","cardId","todaysRaces","getRacesForCard","raceNumber","raceId","String","bind","onTrackChange","Number","find","updatePools","pools","indexedPools","allPools","poolTypeCode","myFormatter","filter","pool","raceSummaries","showTotalsFor","poolTypeCodes","indexOf","a","b","updateProbablesSubmenuOptions","probables","selection","poolTypeName","updateProbables","poolProbableCount","firstProbablesPoolId","currentProbablesPoolIdPresent","poolIdToShow","content","parent","dialog","title","resources","poolsProbablesWillpays","autoOpen","width","height","resize","modal","resizeStop","jQuery","close","remove","hover","updateWillPays","willPays","runners","fn","gep_infoTabsToteboard","method","_len","arguments","otherArguments","Array","_key","apply","_typeof","concat","error"],"sources":["gep.infoTabs-toteboard.js"],"sourcesContent":["/*global\r\njQuery,\r\nEJS,\r\nwindow,\r\ntodaysRaces,\r\ntodaysCards,\r\nutils,\r\nonResizeBrowser,\r\nclientObject,\r\nisPriorityCard,\r\nGBEUtils,\r\nopenToteboardPopup,\r\nvideoStreams\r\n*/\r\n\r\n(function ($) {\r\n\r\n \"use strict\";\r\n\r\n function showFilteredProbables(instance, poolId) {\r\n $(\".gep-probablesTab\", instance).hide();\r\n $(\"#probablesTab-\" + poolId, instance).show();\r\n }\r\n\r\n const allPoolsTabIndex = 1;\r\n const probablesTabIndex = 2;\r\n const willPaysTabIndex = 3;\r\n\r\n let clientObject;\r\n let utils;\r\n let onResizeBrowser;\r\n\r\n const methods = {\r\n\r\n init: function (clientObjectToUse, utilsToUse, onResizeBrowserToUse, options) {\r\n\r\n const instance = this;\r\n\r\n clientObject = clientObjectToUse;\r\n utils = utilsToUse;\r\n onResizeBrowser = onResizeBrowserToUse;\r\n\r\n $(instance).data(\"options\", options);\r\n\r\n // Refresh toteboard every N seconds\r\n setInterval(function () {\r\n\r\n const currentRace = $(instance).data(\"currentRace\");\r\n\r\n // Only refresh toteboard if currently shown\r\n if ($(instance).is(\":visible\")) {\r\n if (currentRace !== undefined) {\r\n options.onRefresh(currentRace);\r\n }\r\n }\r\n\r\n }, ((clientObject.settings.general.toteboardPollingPeriod || 30) * 1000));\r\n\r\n return this;\r\n },\r\n\r\n hide: function () {\r\n const instance = this;\r\n $(\"#gep-info-pools\", instance).hide();\r\n },\r\n\r\n updateTrack: function (races) {\r\n const instance = this;\r\n const options = this.data(\"options\");\r\n let nextRace;\r\n\r\n // Sort races by raceNumber\r\n races.sort(utils.comparers.compareRaceNumber);\r\n\r\n // Work out the next race for the track\r\n $.each(races, function () {\r\n // First race with a status of 'Future' is the next race\r\n if (nextRace === undefined && this.raceStatus === 1) { // 1 === Future\r\n nextRace = this;\r\n }\r\n });\r\n\r\n // In case all races are finished (or cancelled), default to last race\r\n if (nextRace === undefined) {\r\n nextRace = races[races.length - 1];\r\n }\r\n\r\n $(instance).removeData(\"currentRace\");\r\n\r\n // Update race info for new track/race\r\n options.onRaceChange(nextRace);\r\n\r\n return this;\r\n },\r\n showLoading: function () {\r\n\r\n // Hide all content and show 'spinner' icon, regardless of which section of toteboard is active\r\n\r\n const instance = this;\r\n\r\n $(\"#gep-racetab-pools .gep-pools\", instance).empty();\r\n $(\"#gep-racetab-pools .gep-loader\", instance).show();\r\n\r\n $(\"#gep-racetab-pools-all .gep-pools\", instance).empty();\r\n $(\"#gep-racetab-pools-all .gep-loader\", instance).show();\r\n\r\n $(\"#gep-racetab-probables .gep-probables\", instance).empty();\r\n $(\"#gep-racetab-probables .gep-loader\", instance).show();\r\n\r\n $(\"#gep-racetab-willpays .gep-willpays\", instance).empty();\r\n $(\"#gep-racetab-willpays .gep-loader\", instance).show();\r\n\r\n },\r\n updateRace: function (p) {\r\n const instance = this;\r\n const options = this.data(\"options\");\r\n let activeTabIndex = 0;\r\n let thisCard;\r\n let cards;\r\n let races;\r\n\r\n $(instance).data(\"currentRace\", p.race);\r\n\r\n // Remember currently active tab (if any)\r\n if ($(\"#gep-poolTabs\", this).hasClass(\"ui-tabs\")) {\r\n activeTabIndex = $(\"#gep-poolTabs\", this).tabs(\"option\", \"active\");\r\n }\r\n\r\n $(this).html($.trim(new EJS({ element: \"template_infoTabs_race\" }).render({\r\n showToteboardPopupLink: p.showToteboardPopupLink,\r\n maxNumberOfOpenPopups: clientObject.settings.toteboardPopup.maxNumberOfOpenPopups,\r\n clientObject: clientObject\r\n })));\r\n\r\n p.reviewEnablingOfToteboardPopupLinks();\r\n\r\n $(\".gep-popout\", instance).click(() => openToteboardPopup(\r\n instance,\r\n p.race\r\n ));\r\n\r\n $(\".gep-tabs\", this).tabs({\r\n activate: function () {\r\n onResizeBrowser();\r\n }\r\n });\r\n\r\n // Set active tab\r\n $(\"#gep-poolTabs\", this).tabs(\"option\", \"active\", activeTabIndex);\r\n\r\n // Disable Probables and Will Pays by default, they will be enabled if there is data to show\r\n $(\"#gep-poolTabs\", this).tabs(\"disable\", 2);\r\n $(\"#gep-poolTabs\", this).tabs(\"disable\", 3);\r\n\r\n thisCard = p.todaysCards.getCardByShortName(p.race.iTSPEventCode);\r\n\r\n // Make array of cards, sort by name, and move NYRA card to start of array\r\n cards = p.todaysCards.getCards(clientObject.settings.priorityCards.shortCardNames);\r\n\r\n $.each(cards, function () {\r\n $(\".gep-tracks\", instance).append($(\"\").text(this.cardName).val(this.cardId));\r\n });\r\n\r\n races = p.todaysRaces.getRacesForCard(thisCard.cardId);\r\n\r\n $.each(races, function () {\r\n $(\".gep-races\", instance).append($(\"\").text(\"R\" + this.raceNumber).val(this.raceId).data(\"race\", this));\r\n });\r\n $(\".gep-races\", instance).val(String(p.race.raceId));\r\n\r\n $(\".gep-tracks\", instance).bind(\"change\", function () {\r\n options.onTrackChange(Number($(this).val()));\r\n }).val(thisCard.cardId);\r\n\r\n $(\".gep-races\", instance).bind(\"change\", function () {\r\n $(instance).removeData(\"currentRace\");\r\n options.onRaceChange($(this).find(\":selected\").data(\"race\"));\r\n }).val(p.race.raceId);\r\n\r\n return this;\r\n },\r\n updatePools: function (pools, race) {\r\n\r\n const instance = this;\r\n const currentRace = $(instance).data(\"currentRace\");\r\n let indexedPools = {};\r\n let activeTabIndex;\r\n let allPools;\r\n\r\n // Make sure raceId matches race currently shown (to cope with near simultaneous auto-refresh\r\n // of current race and user changing what is current race)\r\n if (!currentRace || race.raceId !== currentRace.raceId) {\r\n return;\r\n }\r\n\r\n // Convert array of pools into associative array indexed by poolTypeCode\r\n $.each(pools, function () {\r\n indexedPools[this.poolTypeCode] = this;\r\n });\r\n\r\n $(\"#gep-racetab-pools .gep-loader\", this).hide();\r\n $(\"#gep-racetab-pools .gep-pools\", this).html($.trim(new EJS({\r\n element: \"template_infoTabs_pools\"\r\n }).render({\r\n indexedPools: indexedPools,\r\n race: race,\r\n myFormatter: clientObject.myFormatter,\r\n clientObject: clientObject\r\n })));\r\n\r\n allPools = race.pools.filter(function (pool) {\r\n return pool.raceSummaries[0].raceId === race.raceId && clientObject.settings.showTotalsFor.poolTypeCodes.indexOf(pool.poolTypeCode) > -1;\r\n }).sort(function (a, b) {\r\n return clientObject.settings.showTotalsFor.poolTypeCodes.indexOf(a.poolTypeCode) > clientObject.settings.showTotalsFor.poolTypeCodes.indexOf(b.poolTypeCode) ? 1 : -1;\r\n });\r\n\r\n $(\"#gep-racetab-pools-all .gep-loader\", this).hide();\r\n $(\"#gep-racetab-pools-all .gep-pools\", this).html($.trim(new EJS({\r\n element: \"template_infoTabs_pools_all\"\r\n }).render({\r\n pools: allPools,\r\n myFormatter: clientObject.myFormatter,\r\n clientObject: clientObject\r\n })));\r\n\r\n // Check just in case toteboard popup has been closed before this code is executed\r\n if ($(\"#gep-poolTabs\", instance).data(\"ui-tabs\")) {\r\n\r\n if (allPools.length === 0) {\r\n $(\"#gep-poolTabs\", instance).tabs(\"disable\", allPoolsTabIndex);\r\n\r\n // If currently on \"All Pools\" tab, switch to first tab \"WPS Pools\"\r\n activeTabIndex = $(\"#gep-poolTabs\", instance).tabs(\"option\", \"active\");\r\n if (activeTabIndex === allPoolsTabIndex) {\r\n $(\"#gep-poolTabs\", instance).tabs(\"option\", \"active\", 0);\r\n }\r\n } else {\r\n $(\"#gep-poolTabs\", instance).tabs(\"enable\", allPoolsTabIndex);\r\n }\r\n }\r\n\r\n return this;\r\n },\r\n updateProbablesSubmenuOptions: function (pools) {\r\n\r\n const instance = this;\r\n\r\n $(\"#gep-poolTypeDropdown\", instance).append(\"
\");\r\n $(\"#gep-poolTypeDropdown .gep-submenu\", instance).empty();\r\n\r\n $.each(pools, function () {\r\n const pool = this;\r\n if ((pool.probables.length > 0) && (pool.probables[0].selection.indexOf(\",\") > -1)) {\r\n\r\n $(\"#gep-poolTypeDropdown .gep-submenu\", instance).append($(\"\").text(pool.poolTypeName).click(function () {\r\n\r\n $(\"#gep-poolTabs\", instance).tabs(\"option\", \"active\", probablesTabIndex);\r\n\r\n // Record pool currently shown on Probables tab\r\n $(instance).data(\"currentProbablesPoolId\", pool.poolId);\r\n\r\n showFilteredProbables(instance, pool.poolId);\r\n\r\n $(\"#gep-poolTypeDropdown .gep-submenu\", instance).hide();\r\n }));\r\n }\r\n });\r\n },\r\n updateProbables: function (pools, raceId) {\r\n\r\n const instance = this;\r\n const currentRace = $(instance).data(\"currentRace\");\r\n let activeTabIndex;\r\n let poolProbableCount;\r\n let firstProbablesPoolId;\r\n let currentProbablesPoolIdPresent;\r\n\r\n // Make sure raceId matches race currently shown (to cope with near simultaneous auto-refresh\r\n // of current race and user changing what is current race)\r\n if (!currentRace || raceId !== currentRace.raceId) {\r\n return;\r\n }\r\n\r\n poolProbableCount = 0;\r\n currentProbablesPoolIdPresent = false;\r\n $.each(pools, function () {\r\n if ((this.probables.length > 0) && (this.probables[0].selection.indexOf(\",\") > -1)) {\r\n\r\n poolProbableCount = poolProbableCount + 1;\r\n\r\n if (this.poolId === Number($(instance).data(\"currentProbablesPoolId\"))) {\r\n currentProbablesPoolIdPresent = true;\r\n }\r\n\r\n if (firstProbablesPoolId === undefined) {\r\n firstProbablesPoolId = this.poolId;\r\n }\r\n }\r\n });\r\n\r\n if (!currentProbablesPoolIdPresent) {\r\n $(instance).data(\"currentProbablesPoolId\", firstProbablesPoolId);\r\n }\r\n\r\n // Check just in case toteboard popup has been closed before this code is executed\r\n if ($(\"#gep-poolTabs\", instance).data(\"ui-tabs\")) {\r\n\r\n if (poolProbableCount === 0) {\r\n // No probables available for this race\r\n\r\n // Disable \"Probables\" tab\r\n $(\"#gep-poolTabs\", instance).tabs(\"disable\", probablesTabIndex);\r\n\r\n // If currently on \"Probables\" tab, switch to first tab \"Pools\"\r\n activeTabIndex = $(\"#gep-poolTabs\", instance).tabs(\"option\", \"active\");\r\n if (activeTabIndex === probablesTabIndex) {\r\n $(\"#gep-poolTabs\", instance).tabs(\"option\", \"active\", 0);\r\n }\r\n\r\n } else {\r\n $(\"#gep-poolTabs\", instance).tabs(\"enable\", probablesTabIndex);\r\n }\r\n }\r\n\r\n\r\n $(\"#gep-racetab-probables .gep-loader\", instance).hide();\r\n\r\n $(\"#gep-racetab-probables .gep-probables\", instance).html($.trim(new EJS({\r\n element: \"template_infoTabs_probables\"\r\n }).render({\r\n pools: pools,\r\n poolIdToShow: Number($(instance).data(\"currentProbablesPoolId\")),\r\n utils: utils,\r\n myFormatter: clientObject.myFormatter,\r\n clientObject: clientObject\r\n })));\r\n\r\n $(\"#gep-racetab-probables .gep-tabs\", instance).tabs();\r\n\r\n $(\"#gep-racetab-probables .gep-popout\", instance).bind(\"click\", function () {\r\n\r\n const content = $(this).parent().parent().html();\r\n let dialog;\r\n\r\n dialog = $(\"\").html(content).dialog({\r\n title: clientObject.resources.poolsProbablesWillpays,\r\n autoOpen: true,\r\n width: 900,\r\n height: 800,\r\n resize: \"auto\",\r\n modal: true,\r\n resizeStop: function () {\r\n jQuery(this).dialog(\"option\", \"position\", \"center\");\r\n },\r\n close: function () {\r\n $(this).dialog(\"destroy\").remove();\r\n }\r\n });\r\n\r\n $(\".gep-expand\", dialog).remove();\r\n $(\".gep-tabs\", dialog).tabs();\r\n\r\n });\r\n\r\n $(\"#gep-poolTypeDropdown\", instance).hover(\r\n function () {\r\n $(\".gep-submenu\", this).show();\r\n },\r\n function () {\r\n $(\".gep-submenu\", this).hide();\r\n }\r\n );\r\n\r\n onResizeBrowser();\r\n\r\n },\r\n updateWillPays: function (willPays, raceId, runners) {\r\n const instance = this;\r\n const currentRace = $(instance).data(\"currentRace\");\r\n\r\n let activeTabIndex;\r\n\r\n // Make sure raceId matches race currently shown (to cope with near simultaneous auto-refresh\r\n // of current race and user changing what is current race)\r\n if (!currentRace || raceId !== currentRace.raceId) {\r\n return;\r\n }\r\n\r\n if (willPays.length === 0) {\r\n\r\n // No will pays available for this race\r\n\r\n // Disable \"Will Pays\" tab\r\n\r\n // Check just in case toteboard popup has been closed before this code is executed\r\n if ($(\"#gep-poolTabs\", instance).data(\"ui-tabs\")) {\r\n\r\n $(\"#gep-poolTabs\", instance).tabs(\"disable\", willPaysTabIndex);\r\n\r\n // If currently on \"Will Pays\" tab, switch to first tab \"Pools\"\r\n activeTabIndex = $(\"#gep-poolTabs\", instance).tabs(\"option\", \"active\");\r\n\r\n if (activeTabIndex === willPaysTabIndex) {\r\n $(\"#gep-poolTabs\", instance).tabs(\"option\", \"active\", 0);\r\n }\r\n }\r\n\r\n } else {\r\n\r\n $(\"#gep-racetab-willpays .gep-loader\", instance).hide();\r\n\r\n $(\"#gep-racetab-willpays .gep-willpays\", this).html($.trim(new EJS({\r\n element: \"template_infoTabs_willpays\"\r\n }).render({\r\n willPays: willPays,\r\n runners: runners,\r\n myFormatter: clientObject.myFormatter,\r\n clientObject: clientObject\r\n })));\r\n\r\n $(\"#gep-poolTabs\", instance).tabs(\"enable\", willPaysTabIndex);\r\n }\r\n }\r\n };\r\n\r\n\r\n $.fn.gep_infoTabsToteboard = function (method, ...otherArguments) {\r\n\r\n // Method calling logic\r\n if (methods[method]) {\r\n return methods[method].apply(this, otherArguments);\r\n }\r\n\r\n if (typeof method === \"object\" || !method) {\r\n return methods.init.apply(this, [method].concat(otherArguments));\r\n }\r\n\r\n\r\n $.error(\"Method \" + method + \" does not exist on jQuery.gep_infoTabsToteboard\");\r\n };\r\n\r\n}(jQuery));\r\n"],"mappings":"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","ignoreList":[]}