var checked = false;

//document.getElementById
function _(element) 
{
    if (arguments.length > 1) 
    {
        for (var i = 0, elements = [], length = arguments.length; i < length; i++)
          elements.push($(arguments[i]));
        return elements;
    }
    else
        return document.getElementById(element);
}



//to exp bonus
function doExpBonus()
{
	alert("Sorry, the first round of Hand in Hand event has ended.");
	return false;
	
	$.get(
		'record.php?do=ExpBonus',	
	    function(data)
		{
			if (data.substr(0,3) == 'Exp')
				_('cnt').innerHTML = parseInt(_('cnt').innerHTML) - 1;
			
	        alert(data);
	    } 
	);
}



//init the server list
function areaChanged(value, type) 
{
	oAreaId = _('area_id');
	oServerId = _('server_id');

    var area = serverList[0];
    for (var i=0; i<serverList.length; i++) 
    {
        if (serverList[i].id == value) 
		{
        	area = serverList[i];
        	break;
        }
    }
            
    if (area) 
    {
        oServerId.options.length = 0;
        for (var i=0; i<area.sub.length; i++) 
        {
        	oServerId.options.add(new Option(area.sub[i].name, area.sub[i].id));
        	if ('1' == area.sub[i].id) 
        		oServerId.options[i].selected = true;
        }
    }
}
	 

//process the load event
window.onload = function()
{

	oAreaId = _('area_id');
	oServerId = _('server_id');
	oAreaId.options.length = 0;
        
	for (var i=0; i<serverList.length; i++) 
	{
		oAreaId.options.add(new Option(serverList[i].name,serverList[i].id));
		if ('1' == serverList[i].id) 
			oAreaId.options[i].selected = true;
	}
	
	areaChanged(1, 0);
	
	$('input', document).blur(obtain);
}


var checked = false;

//obtain account
function obtain(post)
{
	if (!/record/.test(location.href))
	{
		alert("Sorry, the first round of Hand in Hand event has ended.");
		return false;
	}
	
	var fields = ['account', 'passwd', 'code'];
	var e = '';
	
	if ( post != 'post' && !checked)
		return false;
		
	if ( post == 'post')
		checked = true;
			
	for (var m in fields)
	{
		if (_(fields[m]).value == '')
		{
			_('e_' + fields[m]).innerHTML = e = '*This information is required';
			$('#e_' + fields[m]).fadeIn('slow');
		}
		else
			$('#e_' + fields[m]).fadeOut('slow');
	}	

	if ( e == '' && post == 'post')
	{
		$.getJSON(
			'index.php?do=obtain',
			
			{ 
				account: _('account').value,
				passwd: _('passwd').value,
				server_id: _('server_id').value,
				area_id: _('area_id').value,
				code: _('code').value
			},
			
		    function(data)
			{
				if (data['stat'] == 'ok')
					$('#obtain').html(data['text']);
				else
		          	alert(data['text']);
		    } 
		);
	}	
}

var recordChecked = false;

//get record
function getRecord(post)
{	
	var fields = ['account', 'code'];
	var e = '';
	
	if ( post != 'post' && !recordChecked)
		return false;
		
	if ( post == 'post')
		recordChecked = true;
			
	for (var m in fields)
	{
		if (_(fields[m]).value == '')
		{
			_('e_' + fields[m]).innerHTML = e = '*This information is required';
			$('#e_' + fields[m]).fadeIn('slow');
		}
		else
			$('#e_' + fields[m]).fadeOut('slow');
	}	

	if ( e == '' && post == 'post')
		_('record').submit();
}