
jQuery.prototype.switchClass = function( before, after ){
  this.removeClass(before);
  this.addClass(after);
}

//dom cache
var recent_exhibit_btn;
var recent_request_btn;
var hot_auction_btn;
var onecoin_auction_btn;
var closing_auction_btn;
var market_tab_pane;
var auction_tab_pane;

var loading = function(dom){
    dom.empty();
    dom.append( '<div><img src="/images/ajax-loader.gif" /></div>' );
}

var switchToRecentExhibit = function(){
  recent_exhibit_btn.switchClass("tab_off","tab_on");
  recent_request_btn.switchClass("tab_on","tab_off");
  loading( market_tab_pane );
  market_tab_pane.load("/inner/recent_exhibit");
}
var switchToRecentRequest = function(){
  recent_exhibit_btn.switchClass("tab_on","tab_off");
  recent_request_btn.switchClass("tab_off","tab_on");
  loading( market_tab_pane );
  market_tab_pane.load("/inner/recent_request");
}

var switchToHotAuction = function(){
  stopAuctionTimer();
  hot_auction_btn.switchClass("tab_off","tab_on");
  onecoin_auction_btn.switchClass("tab_on","tab_off");
  closing_auction_btn.switchClass("tab_on","tab_off");
  loading( auction_tab_pane );
  auction_tab_pane.load("/inner/hot_auction?p=1",null,startAuctionTimer);
}
var switchToOnecoinAuction = function(){
  stopAuctionTimer();
  hot_auction_btn.switchClass("tab_on","tab_off");
  onecoin_auction_btn.switchClass("tab_off","tab_on");
  closing_auction_btn.switchClass("tab_on","tab_off");
  loading( auction_tab_pane );
  auction_tab_pane.load("/inner/onecoin_auction?p=1",null,startAuctionTimer);
}
var switchToClosingAuction = function(){
  stopAuctionTimer();
  hot_auction_btn.switchClass("tab_on","tab_off");
  onecoin_auction_btn.switchClass("tab_on","tab_off");
  closing_auction_btn.switchClass("tab_off","tab_on");
  loading( auction_tab_pane );
  auction_tab_pane.load("/inner/closing_auction?p=1",null,startAuctionTimer);
}

var loadHotAuction = function(page){ stopAuctionTimer(); auction_tab_pane.load("/inner/hot_auction?p="+page,null,startAuctionTimer); }
var loadOnecoinAuction = function(page){ stopAuctionTimer(); auction_tab_pane.load("/inner/onecoin_auction?p="+page,null,startAuctionTimer); }
var loadClosingAuction = function(page){ stopAuctionTimer(); auction_tab_pane.load("/inner/closing_auction?p="+page,null,startAuctionTimer); }



$(document).ready(function(){
   recent_exhibit_btn = $("#recent_exhibit_btn");
   recent_request_btn = $("#recent_request_btn");
   hot_auction_btn = $("#hot_auction_btn");
   onecoin_auction_btn = $("#onecoin_auction_btn");
   closing_auction_btn = $("#closing_auction_btn");
   market_tab_pane = $("#market_tab_pane");
   auction_tab_pane = $("#auction_tab_pane");
   recent_exhibit_btn.bind( "click", switchToRecentExhibit );
   recent_request_btn.bind( "click", switchToRecentRequest );
   hot_auction_btn.bind( "click", switchToHotAuction );
   onecoin_auction_btn.bind( "click", switchToOnecoinAuction );
   closing_auction_btn.bind( "click", switchToClosingAuction );
   switchToRecentExhibit();
   switchToHotAuction();
})

/**
  Auction Count Down
*/
var countDownInterval = 3;

var padZero = function( num ){
  if( num < 10 ) return "0"+num;
  return num;
}
var countDown = function( time ){
  if( time.indexOf("残り",0) >= 0 ) return time; /* 秒カウントに入る前 */
  if( time == "00:00:01" || time == "00:00:02" || time == "00:00:03" ) return "00:00:00";
  var now = new Date("January 1,1970 " + time);
  var sec = now.getSeconds();
  now.setSeconds(sec-countDownInterval);
  return padZero(now.getHours()) + ":" + padZero(now.getMinutes()) + ":" + padZero(now.getSeconds());
}
var timerId;
var startAuctionTimer = function(){
  timerId = setInterval("auctionTimer()", countDownInterval*1000);
}
var stopAuctionTimer = function(){
  clearInterval(timerId);
}
var auctionTimer = function(){
  $(".tile_time").each( function(){ 
    var now = $(this).html();
    if( now != "00:00:00" ) $(this).html(countDown( now ));
    if( now <= "00:03:00" && $(this).css("color") != "red" ) $(this).css("color","red");
  } )
}

