diff --git a/src/scripts/livetvcomponents.js b/src/scripts/livetvcomponents.js index dee3a92bd1..a883885df1 100644 --- a/src/scripts/livetvcomponents.js +++ b/src/scripts/livetvcomponents.js @@ -1,57 +1,92 @@ -define(["layoutManager", "datetime", "cardBuilder", "apphost"], function(layoutManager, datetime, cardBuilder, appHost) { +define(["layoutManager", "datetime", "cardBuilder", "apphost"], function (layoutManager, datetime, cardBuilder, appHost) { "use strict"; function enableScrollX() { - return !layoutManager.desktop + return !layoutManager.desktop; } function getBackdropShape() { - return enableScrollX() ? "overflowBackdrop" : "backdrop" + if (enableScrollX()) { + return "overflowBackdrop"; + } + + return "backdrop"; } function getTimersHtml(timers, options) { options = options || {}; - var i, length, items = timers.map(function(t) { - return t.Type = "Timer", t - }), - groups = [], - currentGroupName = "", - currentGroup = []; + var i; + var length; + var items = timers.map(function (t) { + t.Type = "Timer"; + return t; + }); + var groups = []; + var currentGroupName = ""; + var currentGroup = []; + for (i = 0, length = items.length; i < length; i++) { - var item = items[i], - dateText = ""; - if (!1 !== options.indexByDate && item.StartDate) try { - var premiereDate = datetime.parseISO8601Date(item.StartDate, !0); - dateText = datetime.toLocaleDateString(premiereDate, { - weekday: "long", - month: "short", - day: "numeric" - }) - } catch (err) {} - dateText != currentGroupName ? (currentGroup.length && groups.push({ + var item = items[i]; + var dateText = ""; + + if (false !== options.indexByDate && item.StartDate) { + try { + var premiereDate = datetime.parseISO8601Date(item.StartDate, true); + dateText = datetime.toLocaleDateString(premiereDate, { + weekday: "long", + month: "short", + day: "numeric" + }); + } catch (err) {} + } + + if (dateText != currentGroupName) { + if (currentGroup.length) { + groups.push({ + name: currentGroupName, + items: currentGroup + }); + } + + currentGroupName = dateText; + currentGroup = [item]; + } else { + currentGroup.push(item); + } + } + + if (currentGroup.length) { + groups.push({ name: currentGroupName, items: currentGroup - }), currentGroupName = dateText, currentGroup = [item]) : currentGroup.push(item) + }); } - currentGroup.length && groups.push({ - name: currentGroupName, - items: currentGroup - }); + var html = ""; + for (i = 0, length = groups.length; i < length; i++) { - var group = groups[i], - supportsImageAnalysis = appHost.supports("imageanalysis"), - cardLayout = appHost.preferVisualCards || supportsImageAnalysis; - if (cardLayout = !0, group.name && (html += '