$(document).ready(function(){ var auctionObjects = new Array(); $('.auction-item').each(function(){ var auctionId = $(this).attr('id'); auctionObjects[auctionId] = $('.' + auctionId); auctionObjects[auctionId]['flash-elements'] = $('.' + auctionId + ' .countdown, .' + auctionId + ' .bid-price, .' + auctionId + ' .bid-bidder'); auctionObjects[auctionId]['bt'] = $('.' + auctionId + ' .bnr_timer_calculation'); auctionObjects[auctionId]['pause'] = $('.' + auctionId + ' .pause'); auctionObjects[auctionId]['bid-price'] = $('.' + auctionId + ' .bid-price'); auctionObjects[auctionId]['bid-bidder'] = $('.' + auctionId + ' .bid-bidder'); auctionObjects[auctionId]['timer'] = $('.' + auctionId + ' .countdown'); auctionObjects[auctionId]['closed_status'] = $('.' + auctionId + ' .closed_status'); auctionObjects[auctionId]['bid-button'] = $('.' + auctionId + ' .bid-button'); auctionObjects[auctionId]['bid-loading'] = $('.' + auctionId + ' .bid-loading'); auctionObjects[auctionId]['bid-message'] = $('.' + auctionId + ' .bid-message'); auctionObjects[auctionId]['bid-histories'] = $('#bidHistoryTable' + auctionId); auctionObjects[auctionId]['bid-histories-p'] = $('#bidHistoryTable' + auctionId + ' p'); auctionObjects[auctionId]['bid-histories-tbody'] = $('#bidHistoryTable' + auctionId + ' tbody'); }); setInterval(function(){ $('.auction-item').each(function(){ var auctionId = $(this).attr('id'); var pause = parseInt(auctionObjects[auctionId]['pause'].html()); var closed = parseInt(auctionObjects[auctionId]['closed_status'].html()); var diff = parseInt(auctionObjects[auctionId]['bt'].html()); var diff_raw = parseInt(auctionObjects[auctionId]['bt'].html()); if(diff < 0) diff = 0; var day = parseInt(Math.floor(diff / 86400)); if(day < 1){ day = 0; }else{ day = day; } diff -= day * 86400; var hour = parseInt(Math.floor(diff / 3600)); if(hour < 10) hour = '0'+ hour; diff -= hour * 3600; var minute = parseInt(Math.floor(diff / 60)); if(minute < 10) minute = '0' + minute; diff -= minute * 60; var second = parseInt(diff); if(second < 10) second = '0'+second; var result = day+'d '+hour+':'+minute+':'+second; if(day > 0){ var result = day+'d '+hour+':'+minute+':'+second; }else{ var result = hour+':'+minute+':'+second; } var time_left = parseInt(auctionObjects[auctionId]['bt'].html()) ; //window.console.log(auctionId+' : '+result); if(diff_raw > 0){ if(pause == 1){ auctionObjects[auctionId]['timer'].html('Gepauzeerd'); auctionObjects[auctionId]['bid-button'].hide(1); }else{ auctionObjects[auctionId]['timer'].html(result); if( time_left <= 3){ auctionObjects[auctionId]['timer'].css('color', '#ff0000'); }else{ auctionObjects[auctionId]['timer'].removeAttr('style'); } if ( auctionObjects[auctionId]['bid-button'].css('display') == 'none' ){ auctionObjects[auctionId]['bid-button'].show(1); } } }else{ if(closed == 1){ auctionObjects[auctionId]['timer'].html('gewonnen'); auctionObjects[auctionId]['bid-button'].hide(1); }else{ /* if( time_left <= 0 && time_left >= -3){ auctionObjects[auctionId]['timer'].html('eenmaal'); }else if( time_left <= -3 && time_left >= -7){ auctionObjects[auctionId]['timer'].html('andermaal'); }else{ auctionObjects[auctionId]['timer'].html('Laatste maal'); } */ } } auctionObjects[auctionId]['bt'].html( parseInt(auctionObjects[auctionId]['bt'].html()) -1 ); }); }, 1000); connect(); function connect() { var socket = io.connect("http://46.17.6.47:3000"), timer; socket.on('error', function() { if (!socket.connected) { timer = window.setInterval(function() { connect() }, 7000); } }); socket.on('connect', function() { window.clearInterval(timer); $('#connected_push').html('Connected PUSH '); socket.on('push',function(data) { get_push_data(data); }); }); } function get_push_data(data) { if( data.pause == 0 ){ $('.pause').html(0); } var auctionId2 = 'auction_'+data.id; if(auctionObjects[auctionId2]) { if(data.s && auctionObjects[auctionId2]) { auctionObjects[auctionId2]['bt'].html( data.s ); } else{ console.log(data.id); } auctionObjects[auctionId2]['bid-price'].html( '€'+data.p ); auctionObjects[auctionId2]['bid-bidder'].html( data.u ); auctionObjects[auctionId2]['pause'].html( data.pause ); auctionObjects[auctionId2]['closed_status'].html( data.closed ); if(page_name == 'view'){ console.log(data); var row = '' + data.BC + '' + data.BU + '' + data.BD + ''; auctionObjects[auctionId2]['bid-histories-tbody'].prepend(row); var myremovedElems = $("#bidHistoryTable"+auctionId2+ " tr:gt(10)").remove(); } } console.log(data); } $('.bid-button-link').click(function(){ var auctionElement = 'auction_' + $(this).attr('title'); auctionObjects[auctionElement]['bid-button'].hide(1); auctionObjects[auctionElement]['bid-loading'].show(1); var params = $(this).attr('href') + '&ms=' + new Date().getTime(); $.ajax({ url: params, dataType: 'json', success: function(data){ auctionObjects[auctionElement]['bid-message'].html(data.Auction.message) .show(1) .animate({ opacity: 1.0 }, 2000) .hide(1); auctionObjects[auctionElement]['bid-button'].show(1); auctionObjects[auctionElement]['bid-loading'].hide(1); } }); return false; }); });