//--------------------------------------------------------------------
// POPCAP.JP WebGame Sever Comunication Functions Prototype
//--------------------------------------------------------------------
var zoo_webgame_session_id = '';
var zoo_webgame_play_id = '';

function Zoo_ZoneEventNotify(method, param){
  Zoo_EventNotify('zone', method, param);
}

function Zoo_PopCapEventNotify(method, param){
  Zoo_EventNotify('popcap', method, param);
}

function Zoo_EventNotify(api, method, param){
  var url  = 'game_event_notify.php?';
      url += 'api=' + encodeURI(api);
      url += '&method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      //url += '&game_name=' + popcap_gamename;
  //var ajax = new Ajax.Request(url,{method:'get'});  
}

function Zoo_SetWebGameSessionId(req){
  zoo_webgame_session_id = req.responseText;
}

/**
 * wrapper for prototype.js Ajax.Request
 */
function Zoo_Ajax_Request(url, options){
  if(typeof(Ajax) == 'object'){
    // if available
    var ajax = new Ajax.Request(url, options);  
  }
}

function Zoo_SessionReady(method, param){
  var url  = 'webgame_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      //url += '&game_name=' + popcap_gamename;
      url += '&ver=090723';
  //var ajax = new Ajax.Request(url,{method:'get',onComplete:Zoo_SetWebGameSessionId});  
  Zoo_Ajax_Request(url,{method:'get',onComplete:Zoo_SetWebGameSessionId});  
}

function Zoo_SetPlayId(req){
  zoo_webgame_play_id = req.responseText;
  //alert(zoo_webgame_play_id);
}

function Zoo_GameReady(method, param){
  //alert('Zoo_GameReady');
  //alert(zoo_webgame_session_id);
  var url  = 'webgame_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      //url += '&game_name=' + popcap_gamename;
      url += '&wgsid=' + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get',onComplete:Zoo_SetPlayId}); 
  Zoo_Ajax_Request(url,{method:'get',onComplete:Zoo_SetPlayId}); 
}

function Zoo_ScoreBroadcast(method, param){
  var url  = 'webgame_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      url += '&wgpid=' + zoo_webgame_play_id;
      url += '&wgsid=' + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get'});  
  Zoo_Ajax_Request(url,{method:'get'});  
}

function Zoo_GameBreak(method, param){
  var url  = 'webgame_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      url += '&wgpid=' + zoo_webgame_play_id;
      url += '&wgsid=' + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get'});  
  Zoo_Ajax_Request(url,{method:'get'});  
}

function Zoo_GameEnd(method, param){
  var url  = 'webgame_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param='  + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      url += '&wgpid='  + zoo_webgame_play_id;
      url += '&wgsid='  + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get'});  
  Zoo_Ajax_Request(url,{method:'get'});  
}

function Zoo_Default(method, param){
  var url  = '/webgame_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      url += '&wgpid=' + zoo_webgame_play_id;
      url += '&wgsid=' + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get'});  
  Zoo_Ajax_Request(url,{method:'get'});  
}


function Zoo_ScoreSubmit(method, param){
  var url  = 'webgame_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      url += '&wgpid=' + zoo_webgame_play_id;
      url += '&wgsid=' + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get'});  
  Zoo_Ajax_Request(url,{method:'get'});  
}

// 2009.08.04
function Zoo_receiveNotification(method, param){
  switch(method){
    case 'GameEnd':
      Zoo_GameEnd(method, param);
      break;
    case 'LoadBroadcast':
      // 
			Zoo_Default(method, param);
      break;
    case 'SessionReady':
      Zoo_SessionReady(method, param);
      break;
    case 'GameReady':
      Zoo_GameReady(method, param);
      break;
    case 'ScoreBroadcast':
      Zoo_ScoreBroadcast(method, param);
      break;
    case 'GameBreak':
      Zoo_GameBreak(method, param);
      break;
    case 'ScoreSubmit':
      Zoo_ScoreSubmit(method, param);
      break;
    case 'CustomEvent':
      //
			Zoo_Default(method, param);
      break;
    default:
      Zoo_Default(method, param);
  }
}


//-------------------------------------------------------------------
// PopCap API
//-------------------------------------------------------------------

function Zoo_pc_gameloaded(method, param){
  var url  = '/webgame_popcap_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      //url += '&game_name=' + popcap_gamename;
  //var ajax = new Ajax.Request(url,{method:'get',onComplete:Zoo_SetWebGameSessionId});  
  Zoo_Ajax_Request(url,{method:'get',onComplete:Zoo_SetWebGameSessionId});  
}

function Zoo_pc_gamestart(method, param){
  var url  = '/webgame_popcap_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      //url += '&game_name=' + popcap_gamename;
      url += '&wgsid=' + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get',onComplete:Zoo_SetPlayId}); 
  Zoo_Ajax_Request(url,{method:'get',onComplete:Zoo_SetPlayId}); 
}

function Zoo_pc_default(method, param){
  var url  = '/webgame_popcap_api.php?';
      url += 'method=' + encodeURI(method) 
      url += '&param=' + encodeURI(param);
      url += '&game_no=' + encodeURI(zoo_game_no);
      url += '&wgpid=' + zoo_webgame_play_id;
      url += '&wgsid=' + zoo_webgame_session_id;
  //var ajax = new Ajax.Request(url,{method:'get'});  
  Zoo_Ajax_Request(url,{method:'get'});  
}

function Zoo_PopCapEventHandler(method, param){
  // return;
  switch(method){
    case 'pc_launchinstaller':
      // Do Nothing
      break;
    case 'pc_gameloaded':
      Zoo_pc_gameloaded(method, param);
      break;
    case 'pc_gamestart':
      Zoo_pc_gamestart(method, param);
      break;
    default:
      Zoo_pc_default(method, param);
      //Zoo_Default(method, param);
  }
}

