<?php
include 'common.php';

function UpdateLoginKey($user_id)
{
	$dbhandle = DB_Connect();
	//Select DB
	$db_selected = mysqli_select_db($dbhandle, DB_NAME)
	or die("Could not select db");

	
	$login_key = rand();
	
	
	
	
	$stmt = $dbhandle->prepare("update account set login_key=? where user_id=?");
	$stmt->bind_param("ss", $login_key, $user_id);
	$result = $stmt->execute();
	$stmt->close();
	
	if($result)
	{
		$db_success = "yes";			
	}
	else
	{
		$db_success = "no";
		
	}
	$error = mysqli_error($dbhandle);
	
	
	/* $update_query = "update account set login_key='".$login_key."' where user_id='".$user_id."'";

	//Query Result
	$result = @mysqli_query($dbhandle,$update_query);
	if($result == 1)
	{
		$db_success = "yes";
	}
	else
	{
		$db_success = "no";
	}
	$db_error = mysqli_error($dbhandle); */
    mysqli_close($dbhandle);
	
	return array($login_key,$db_success,$db_error);;
}

function CreateAccountID($user_id,$ip)
{

	$dbhandle = DB_Connect();
	
	//Select DB
	$db_selected = mysqli_select_db($dbhandle, DB_NAME)
	or die("Could not select db");

	// check character count limit
	$select_query = "select count(*) from account";
	$result_set = @mysqli_query($dbhandle, $select_query);
	$row = @mysqli_fetch_row($result_set);
	
		
	
	
	$rand = rand();
	$guest_id = "guest_" . $rand .$row[0];
	$login_key = rand();
	
	
	
	$stmt = $dbhandle->prepare("insert into account (user_id,user_pwd,platform,login_key, ip, is_guest, login_time) values(?,'null','null',?,?,1,'null')");
	$stmt->bind_param("sss", $guest_id, $login_key,$ip );
	$result = $stmt->execute();
	$stmt->close();
	
	if($result)
	{
		$db_success = "yes";			
	}
	else
	{
		$db_success = "no";
		
	}
	
	
	
	/* $insert_query = "insert into account (user_id,user_pwd,platform,login_key, ip, is_guest, login_time) values('".$guest_id."','null','null','".$login_key."','".$ip."',1,'null')";

	//Query Result
	$result = @mysqli_query($dbhandle,$insert_query);
	if($result == 1)
	{
		$db_success = "yes";
	}
	else
	{
		$db_success = "no";
	} */
	
	
	
    mysqli_close($dbhandle);
 
	
    return array($guest_id, $login_key, $db_success);
}



$json = json_decode(file_get_contents('php://input'));
$login_id = $json->login_id;
//$version = $json->version;
//$versionNumber = $json->versionNumber;
//$versionString = $json->versionString;

$isXmlHttpRequest = (isset($_SERVER['HTTP_X_REQUESTED_WITH'])) ?
(strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') ? true : false: false;
($isXmlHttpRequest) ? header('Content-type: application/json') : header('Content-type: text/plain');
 	
	
$chat_server_ip = "127.0.0.1";
$chat_server_port="7899";
$battle_server_ip = "127.0.0.1";
$battle_server_port = "7898";
$town_server_ip = "127.0.0.1";
$town_server_port = "7897";

$ip = $_SERVER['REMOTE_ADDR'];

if($login_id == "guest")
{
	//echo "guest";
	//return;
	
	list($account_id,$login_key,$db_success) = CreateAccountID($login_id,$ip);
	if($db_success == "yes")
	{		
		$login_result = "CREATE_OK";
	}
	else
	{
		$login_result = "LOGIN_FAILED";
	}
	//$login_key = rand();
	//$login_key = md5($account_id."ehdwnwodnjs10521");
	echo json_encode(array(
	'result'=>$login_result,
	'account_id'=>$account_id,
	'login_key'=>$login_key,
	'chat_server_ip'=>$chat_server_ip,
	'chat_server_port'=>$chat_server_port,
	'battle_server_ip'=>$battle_server_ip,
	'battle_server_port'=>$battle_server_port,
	'town_server_ip'=>$town_server_ip,
	'town_server_port'=>$town_server_port
	));
}
else
{
    //@todo
		/*
	list($login_key,$db_success, $db_error) = UpdateLoginKey($login_id);
	if($db_success == "yes")
	{		
		$login_result = "LOGIN_OK";
	}
	else
	{
		$login_result = "UPDATE_FAILED";
	}
	echo json_encode(array(
	'result'=>$login_result,
	'account_id'=>$accoun,
	'login_key'=>$login_key,
	'error'=>$db_error,
	'chat_server_ip'=>$chat_server_ip,
	'chat_server_port'=>$chat_server_port,
	'battle_server_ip'=>$battle_server_ip,
	'battle_server_port'=>$battle_server_port,
	'town_server_ip'=>$town_server_ip,
	'town_server_port'=>$town_server_port
	));
	*/
}

	
	
	
?>