UNPKG

sportsbet-mobile

Version:
85 lines (69 loc) 1.92 kB
interface Templates { sportsEventRow: Template; } Template.sportsEventRow.helpers({ category: function() { return Betting.Category.db.findOne({_id: Session.get('opened-category') || '9RxN2FsAYXgRBetik'}); }, selections: function() { var market = Betting.Market.db.findOne({event: this, live: false}); if (!market) { return; } return market.selections.fetch(); }, bettingEnabled: function() { var event = <Betting.Event>this; if (!event.live && !event.active) { return false; } return true; }, showLiveBadge: function() { var event = <Betting.Event>this; if (event.live && (Betting.nonLiveStatuses.indexOf(event.matchStatus) === -1)) { return true; } return false; }, marketsCount: function() { var event = <Betting.Event>this; if (event.live && event.active) { return event.liveMarketCount; } return event.marketCount; }, listMarket: function() { var event = <Betting.Event>this; var isLive = event.live && event.active; if (!event) { return; } var listMarkets = event.listMarkets({live: isLive, limit: 1}); if (_.isEmpty(listMarkets)) { return; } var market: Betting.Market = listMarkets.fetch()[0]; if (!market) { return; } var templateHandle = (market.live ? 'live' : 'prelive') + '_' + (+market.details.subType || market.details.typeId); return <any>{ name: market.name, markets: [market], template: Betting.getMarketTpl(templateHandle), handle: templateHandle }; } }); Template.sportsEventRow.events({ 'click .selection': function(e: MeteorTemplateEvent) { e.preventDefault(); e.stopPropagation(); Betting.toggleBet(this); }, 'click .odds, click .score, click h3, click .crumb, click .all-markets-button': function(e: MeteorTemplateEvent) { e.preventDefault(); Pages.go('/sports/' + (this.live ? 'live' : 'pre-live') + '/' + this.makeSeoString() + '/event/' + this._id); } });