﻿// JavaScript Document

//图片
var Chessman_img = new Array("","Img/White.gif","Img/New_White.gif","Img/Black.gif","Img/New_Black.gif");

//ajax参数
var ajax_action = null;
var ajax_url = "http://www.weiqi2008.com/api/api.php";
var send_x=send_y=0;

//时间变量
var h = 0;
var m = 0;
var s = 0;


//初始化函数
function weiqi_init()
{  var x,y,Color,NO,PlayDate;
   var Chessman_obj;

   for(var i=0;i<Weiqi.length;i++)
      {   
          x=Weiqi[i].x;
          y=Weiqi[i].y;
          Color=Weiqi[i].Color;
          PlayDate=Weiqi[i].PlayDate;
          Chessman_obj=$("t_"+x+"_"+y);
          
          if((Weiqi[i].Color>0)&&(Chessman_obj))
              {
                  Chessman_obj.innerHTML="<img border=0 src="+Chessman_img[Color]+" width=32 height=32>";
                  Chessman_obj.ClassName="none";
              }
      }
    
     
    //计算剩余时间
    var thistime = new Date(ThisDate + " " + ThisTime);
    var endtime = new Date(ThisDate + " 23:59:59");
    s = parseInt((endtime - thistime)/1000);
    m = parseInt(s/60);
    h = parseInt(m/60);
    s = s - (m * 60);
    m = m - (h * 60);
    
    //启动倒记时函数
    set_time();
    
     
    //显示用户和点击排行榜
    User_TOP10('User_TOP10',User_TOP10_Array);
    Click_TOP10('Click_TOP10',Click_TOP10_Array);
    
    //隐藏提示框
    $('loading').hide();
}

//显示用户排行榜
function User_TOP10(obj,array)
{
    var html = '';
    
    html = '<table border="0" width="140%" cellspacing="0" cellpadding="0">';
    html += '<tr><td height="25" colspan="3">&nbsp;<b>用户点击排行</b></td></tr>';
    html += '<tr>';
	html += '<td height="20" width="15%">&nbsp;名次</td>';
	html += '<td height="20" width="20%">&nbsp;用户名</td>';
	html += '<td height="20" width="65%">&nbsp;手数</td>';
	html += '</tr>';
    for (var i =0;i<array.length;i++)
        {
            html += '<tr>';
			html += '<td height="20" width="10%" align="center">' + (i+1) + '</td>';
			html += '<td height="20" width="25%">&nbsp;' + array[i][0] + '</td>';
			html += '<td height="20" width="65%">&nbsp;' + array[i][1] + '</td>';
			html += '</tr>';
        }
    html += '</table>';
    $(obj).innerHTML = html;
}

//显示今日点击排行榜
function Click_TOP10(obj,array)
{
    var chararry = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S'];
	var html = '';
    
    html = '<table border="0" width="140%" cellspacing="0" cellpadding="0">';
    html += '<tr><td height="25" colspan="3">&nbsp;<b>今日点击排行</b></td></tr>';
    html += '<tr>';
	html += '<td height="20" width="10%"align="center">&nbsp;名次</td>';
	html += '<td height="20" width="25%">&nbsp;&nbsp;&nbsp;&nbsp;行</td>';
	html += '<td height="20" >列</td>';
	html += '</tr>';
    for (var i =0;i<array.length;i++)
        {
            html += '<tr>';
			html += '<td height="20" width="10%" align="center">' + (i+1) + '</td>';
			html += '<td height="20" width="25%">&nbsp;&nbsp;&nbsp;&nbsp;' + array[i][0] + '</td>';
			html += '<td height="20" >' + chararry[array[i][1]-1] + '</td>';
			html += '</tr>';
        }
    html += '</table>';
    $(obj).innerHTML = html;
}


//发送信息，并将自身改变图片
function send(x,y)
{   
    var pars;
    var chararry = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S'];
	//如果发现Cookie已经存在，就禁止发送，否则发送信息，并且设置Cookie的值
	if (confirm('您确定在 第' + x + '行 第' + chararry[y-1] + '列 位置落棋吗？'))
	   { 
	     send_x = x;
	     send_y = y;
	     ajax_action = 'click';
	     pars ='x='+send_x+'&y='+send_y+'&action=click';
             ajax_send(pars);
       }

	
}
////登陆函数
function login()
{

   var pars;
   
   if ($F('User')=='')
      {alert('输入用户名');return false;}
   if ($F('Pass')=='')
      {alert('输入密码');return false;}
   ajax_action = 'login';
   pars ='username='+$F('User')+'&password='+$F('Pass')+'&action=login';
   ajax_send(pars);
}



//注销函数
function logout()
{
   var pars = 'action=logout';
   ajax_action = 'logout';
   ajax_send(pars);
}

//检测用户登陆状态函数
function chklogin()
{  
   var pars = 'action=login';
   ajax_action = 'login';
   ajax_send(pars);
}

//倒记时函数
function set_time()
{   

    $('h').innerHTML = h;
    $('m').innerHTML = m;
    $('s').innerHTML = s;
    
    s-=1;
    
    if (s < 0)
       {
           s = 59;
           m-=1;
           if (m < 0)
              {
                  m = 59;
                  h-=1;
                  if ( h < 0)
                     {return;}
                  
              }
       }

    setTimeout("set_time();",1000); 
   
}

//气泡显示用户最新下的棋
function show_popo(x,y,color)
{

   //气泡图片
   var my_send_img = new Array("Img/title_l_b.gif","Img/title_r_b.gif","Img/title_l_t.gif","Img/title_r_t.gif");
   if ($('t_' + x + '_' + y))
      { var my_send = $('t_' + x + '_' + y);
		var my_title = $('my_title');
		var my_title_img = $('my_title_img');
		var img_no = 0;

		my_send.innerHTML="<img border=0 src="+Chessman_img[color+1]+" width=32 height=32>"
		my_send.ClassName="none";

		
		if (x > 5)
		{
		  my_title.style.top = findY(my_send) - my_title.offsetHeight + 16 + 'px';
		  img_no = 0;
		}
		else
		{ 
		 my_title.style.top = findY(my_send) + 16 + 'px';
		 img_no = 2;
		}
		
		if (y < 16)
		{
		  my_title.style.left = findX(my_send) + 16 + 'px';
		  img_no += 0;
		}
		else
		{ 
		 my_title.style.left = findX(my_send) - my_title.offsetWidth + 16 + 'px';
		 img_no += 1;
		}
		//显示气泡
		my_title_img.src = my_send_img[img_no];
		my_title.show();
   }
}
//隐藏气泡
function hide_popo(x,y)
{

   if ($('t_' + x + '_' + y))
      { var my_send = $('t_' + x + '_' + y);
        my_send.innerHTML=""
	my_send.ClassName="NewSpace";
        my_send.hide();
        my_title.hide();
      }
}


//******************************************************************************
// ajax提交数据  
function ajax_send(pars)
  {

   var url = ajax_url;   
   pars = pars + '&unm='+Math.random(); 
   var myAjax=$('ajax');
   
   //显示提示框
   $('loading').show();
   myAjax.src = ajax_url + '?' + pars;
   
   if(document.all){   
       myAjax.onreadystatechange = function(){//IE用
           var state = myAjax.readyState;
           if (state == "loaded" || state == "interactive" || state == "complete")
           {
               ajax_onComplete();
           }        
       };
    }
    else
    {
       myAjax.onload =function() {//FF用
               ajax_onComplete();
       };
    }

   
   return true;
  }
   
//ajax处理数据

function ajax_onComplete()
 {
  //隐藏提示框
  $('loading').hide();  
  
  //alert(ajax_obj.responseText);
  switch (ajax_action) {
       case 'login': 
             if(result.status)
               {  	
                 //成功
                 $('UserName').innerHTML = result.UserName;
                 $('UserCount').innerHTML = result.UserCount;
                 $('UserColor').src = Chessman_img[result.UserColor];
                 $('Pass').value = '';
                 $('UserInfo').show();	
                 $('UserLogin').hide(); 
                 send_x = result.X;
	         send_y = result.Y;
                 //显示气泡
                 show_popo(send_x,send_y,result.UserColor)  
               }
             else
               {   
                 //失败
                 alert(result.msg); 
               }
              break;       
       case 'logout':
               {
                 $('UserName').innerHTML = '';
                 $('UserCount').innerHTML = '';
                 $('UserColor').src = Chessman_img[0];
                 $('UserInfo').hide();	
                 $('UserLogin').show();  
                 //隐藏气泡
                hide_popo(send_x,send_y);
               }
              break;
       case 'click':
               if(result.status)
               {
                  var Chessman_obj=$("t_"+result.X+"_"+result.Y);  
     
                  if(Chessman_obj)
                  {
					  Chessman_obj.innerHTML="<img border=0 src="+Chessman_img[ThisColor+1]+" width=32 height=32>";
                      Chessman_obj.ClassName="none";
                  }
               }
               else
               {
                  //显示信息
                  alert(result.msg);
               }
              break;
       default :return false;
   }
    
  
  
  ajax_action = null;  
  result = null;
  return true;

 }



//********************************************************************************
function findX(obj)
{var curleft=0;
 if(obj.offsetParent)
   {while(obj.offsetParent)
     {curleft+=obj.offsetLeft
      obj=obj.offsetParent;
     }
   }
 else if(obj.x)
   curleft+=obj.x;
return curleft;
}

function findY(obj)
 {var curtop=0;
  if(obj.offsetParent)
    {while(obj.offsetParent)
       {curtop+=obj.offsetTop
        obj=obj.offsetParent;
       }
     }
  else if(obj.y)
     curtop+=obj.y;
return curtop;
  }

