///<reference path=".#ts/client.d.ts" />

interface Templates {
	lotteryUserTicketsList: Template;
}

Template.lotteryUserTicketsList.helpers({
	tickets: function () {
		var selector = {};
		var options = {
			sort: {'acquired': -1},
			limit: 50
		};
		var tickets = Lotteries.Ticket.db.find(selector, options);
		var matching = [];
		tickets.forEach(function (ticket) {
			var lotteryInstance = ticket.lotteryInstance.fetch()
			if (lotteryInstance && (
				Session.get('ticketFilter') == 'all') ||
				(Session.get('ticketFilter') == 'locked' && lotteryInstance.locked == true)
			) {
				matching.push(ticket);
			}
		});
        return matching;
	},
	usableTickets: function(){
		return Lotteries.Ticket.db.find({lotteryInstance: {$exists: false}}).count();
	},
	inArray: function(num, array){
		return $.inArray(num, array) != -1;
	},
	logoUrl: function() {
		var self = <Lotteries.LotteryInstance> this;
		if(self.logoSmallUrl) return self.logoSmallUrl;
		if(self.locked) return cdnUrl + 'images/lottery/icon-vip.png';
		if(self.isLotto) return cdnUrl + 'images/lottery/icon-lotto.png';
		if(self.isRaffle) return cdnUrl + 'images/lottery/icon-raffle.png ';
	}
});

Template.lotteryUserTicketsList.events({
	'click .fillTicket': function(){
		Session.set('opened-modal', 'fillTicketModal');
		Modals.open('fillTicketModal', this);
	}
});

Template.lotteryUserTicketsList.created = function () {

};

