var app = angular.module('gameframe', []);
app.controller('gamectrl', function($scope,$http) {
window.localStorage.clear();
$scope.ticketSets=[];
// $scope.container = document.querySelector('.fireworks-example')
// $scope.fireworks = new Fireworks($scope.container, {
// rocketsPoint: 50,
// hue: { min: 0, max: 360 },
// delay: { min: 15, max: 30 },
// speed: 4,
// acceleration: 1.05,
// friction: 0.95,
// gravity: 2.5,
// particles: 150,
// trace: 3,
// explosion: 10,
// autoresize: true,
// brightness: {
// min: 50,
// max: 80,
// decay: { min: 0.015, max: 0.03 }
// },
// mouse: {
// click: false,
// move: false,
// max: 6
// },
// boundaries: {
// x: 50,
// y: 50,
// width: $scope.container.clientWidth,
// height: $scope.container.clientHeight
// },
// sound: {
// enable: false,
// files: [
// 'explosion0.mp3',
// 'explosion1.mp3',
// 'explosion2.mp3'
// ],
// volume: { min: 1, max: 2 },
// }
// });
// function fworks(){
// fireworks.setSize({ height: '100vh', width: '100%' });
// fireworks.start();
// }
// setTimeout(fworks, 2000);
$scope.showTicket=function(num,type=1){
if(type=='2'){
$scope.showTicketByName(num);
}
else if(window.localStorage.getItem('tsets')){
arr=window.localStorage.getItem('tsets').split(',');
j=0;
$(arr).each(function(i,v){
if(v==num)
return false;
else if(arr.length==(i+1)){
tnm=window.localStorage.getItem('tsets');
numbers=tnm+','+num;
window.localStorage.setItem('tsets',numbers);
$http.get("play/fetch_ticket_set?num="+numbers).success(function(data){
$scope.ticketSets=data;
$scope.getNumbers();
})
}
j++;
})
}
else {
tnm=num;
numbers=tnm;
window.localStorage.setItem('tsets',numbers);
$http.get("play/fetch_ticket_set?num="+numbers).success(function(data){
$scope.ticketSets=data;
$scope.getNumbers();
})
}
$("#tickets").val(numbers);
}
$scope.showTicketByName=function(num){
console.log("by name");
if(window.localStorage.getItem('tsetsNm')){
arr=window.localStorage.getItem('tsetsNm').split(',');
j=0;
$(arr).each(function(i,v){
if(v==num)
return false;
else if(arr.length==(i+1)){
tnm=window.localStorage.getItem('tsetsNm');
numbers=tnm+','+num;
window.localStorage.setItem('tsetsNm',numbers);
$http.get("play/fetch_ticket_set_byname?name="+numbers).success(function(data){
$scope.ticketSets=data;
$scope.getNumbers();
})
}
j++;
})
}
else {
tnm=num;
numbers=tnm;
window.localStorage.setItem('tsetsNm',numbers);
$http.get("play/fetch_ticket_set_byname?name="+numbers).success(function(data){
$scope.ticketSets=data;
$scope.getNumbers();
})
}
$("#tickets").val(numbers);
}
$scope.url="https://www.luckydrawgame.com/";
$scope.position=["", "First Housefull","Second Housefull","Half Sheet Bonus","Top Line","Middle Line","Bottom Line","Star","Quick 5","Third Housefull","Corner","Full Sheet Bonus"];
$scope.getNumbers=function(speak=0){
$http.get($scope.url+"results.php").success(function(data){
$scope.recentNumbers=data.numbers;
$scope.results=data.results;
$scope.callout_time=data.callout_time;
if(data.numbers.length>0)
$scope.game_status=data.status;
else $scope.game_status=" Not Started";
if(data.status!="Live" && data.numbers.length>0){
// $(".lottery-area").css('background','black');
// $scope.fireworks.start();
if(speak=='1'){
var audio = new Audio('https://www.luckydrawgame.com/assets/sounds/go.mp3');
audio.play();
// var audio2 = new Audio('https://www.luckydrawgame.com/assets/sounds/explode.mp3');
// audio2.loop=true;
// audio2.play();
// $scope.speak("Game Over");
}
window.localStorage.setItem('game_status',"Game Finished");
speak=0;//mute the speak
}
$(data.numbers).each(function(k,v){
$(".tc"+v.num).addClass('active');
if(data.status!="Live"){
console.log("Game Over");
// $("#toastNum").html("Game Over");
}else {
$("#toastNum").html(v.num);
simpleToast();
}
if(k==data.numbers.length-1 && speak=='1'){
// $scope.speak(v.num);
var audio = new Audio('https://www.luckydrawgame.com/assets/sounds/number_'+v.num+'.mp3');
audio.play();
}
})
if(speak=='1'){
tic='';win='';
$(data.results).each(function(k,v){
if(window.localStorage.getItem('recentResult') < v.id){
tic+=", "+v.t;
win+=", "+$scope.position[v.p];
}
if(k==data.results.length-1){
if(window.localStorage.getItem('recentResult') !=v.id){
msg=win+" Winner. Ticket: "+tic;
var audio = new Audio('https://www.luckydrawgame.com/assets/sounds/win/win_'+v.p+'.mp3');
setTimeout(function(){
audio.play();
},4000);
// var audio = new Audio('https://www.luckydrawgame.com/assets/sounds/w'+v.p+'.mp3');
// setTimeout(function(){
// audio.play();
// },1500);
//
// audio.addEventListener('ended', function() {
// var audio = new Audio('https://www.luckydrawgame.com/assets/sounds/wr.mp3');
// audio.play();
// });
// $scope.speak(msg);
}
window.localStorage.setItem('recentResult',v.id);
}
});
}
})
}
$scope.timerFetch=function(){
if(window.localStorage.getItem('game_status')!="Game Finished"){
$scope.getNumbers(1);
}
}
$scope.viewModal=function(id,name=''){
$("#resultModal").modal('show');
$("#resultModal").addClass("blurr");
$scope.position=name;
$http.get("play/fetch_ticket?num="+id+"&name="+name).success(function(data){
$scope.tickets=data;
setTimeout(function(){
$($scope.recentNumbers).each(function(k,v){
$(".tc"+v.num).addClass('active');
})
},500);
$("#resultModal").removeClass("blurr");
})
}
$scope.deleteSet=function(s){
$("#set"+s).css('display','none');
}
$scope.clearSets=function(){
$scope.x.num='';
$scope.ticketSets={};
window.localStorage.setItem('tsets','');
window.localStorage.setItem('tsetsNm',"");
$scope.x.type='1';
}
$scope.speak=function(msgText=''){
// var audio = new Audio('https://www.luckydrawgame.com/assets/sounds/'+msgText+'.mp3');
// audio.play();
console.log(msgText);
var msg = new SpeechSynthesisUtterance();
msg.text = msgText;
msg.pitch = 0.9;
msg.rate=0.6;
window.speechSynthesis.speak(msg);
}
$scope.x={};
setTimeout(function(){
console.log("sdsd");
$scope.getNumbers(1);
$scope.x.type='1';
$scope.game_status=" Live";
},1000);
$('[data-countdown]').each(function () {
var $this = $(this),
finalDate = $(this).data('countdown');
$this.countdown(finalDate, function (event) {
if(event.type=='stoped'){
$scope.game_status=" Live";
$(".draw-time").css("display",'none');
}
$this.html(event.strftime('%DD : %HH : %MM : %SS'));
});
});
setInterval(function(){ $scope.timerFetch()}, 10000);
});