function fmtData (byte)
{
	var out = byte/1000;
	if (out < 1000)
		return out.toFixed(2) + ' MB';

	out /= 1000;
	return out.toFixed(2) + ' GB';
}


function outUserInfo (response)
{
	var line = response.split("\n");
	var param = new Array();
	for (var n = 0; n < line.length; n++)
	{
		var fld = line[n].split("=");
		param[fld[0]] = fld[1];
	}

	var panel = document.getElementById('userInfo');
	if (!param['USERID'])
	{
		panel.style.visibility = 'hidden';
		panel = document.getElementById('userLogout');
		if (panel)
			panel.style.visibility = 'hidden';
		panel = document.getElementById('userLogin');
		if (panel)
			panel.style.visibility = 'visible';
		return;
	}

	var userID = document.getElementById('userID');
	userID.innerHTML = param['USERID'];

	var title = document.getElementById('qTitle');
	var cell = document.getElementById('qAvailable');
	title.innerHTML='';
	cell.innerHTML = '';

	// dnd[0] = status
	// dnd[1] = total quota
	// dnd[2] = BOD
	// dnd[3] = downloaded
	// dnd[4] = expiredate
	// dnd[7] = total quota
	// dnd[8] = BOD
	// dnd[9] = monthly quota
	var dnd = param['DNDDATA'].split("+");

	if (dnd[0] == '200')
	{
		var quota = parseFloat(dnd[1]) + parseFloat(dnd[2]);
		if (quota > 1000)
		{
			cell.innerHTML = fmtData(quota - parseFloat(dnd[3]));
            		title.innerHTML = "Capacity";
		}
		else
		{
			dnd[0] = '0';
		}
	}

	if (dnd[0] != '200')
	{
		dnd = param['MAILDATA'].split("+");
		if (dnd[0] == '200')
		{
			cell.innerHTML = fmtData(parseFloat(dnd[1]) - parseFloat(dnd[2]));
			title.innerHTML = "Capacity";
		}
	}

	panel.style.visibility = 'visible';

	panel = document.getElementById('userLogin');
	if (panel)
		panel.style.visibility = 'hidden';
	panel = document.getElementById('userLogout');
	if (panel)
		panel.style.visibility = 'visible';
}

function LoginPopup ()
{
	document.loginform.user.value = '';
	document.loginform.pass.value = '';

	var panel;
	panel = document.getElementById('badLogin');
	panel.style.visibility = 'hidden';

	panel = document.getElementById('userLoginPopup');
	panel.style.visibility = 'visible';

}

function LoginPopupClose ()
{
	panel = document.getElementById('userLoginPopup');
	panel.style.visibility = 'hidden';

	showUserInfo();

}

function showUserInfo (req)
{
	ajaxRequest('/user_info.asp?' + Math.random(), outUserInfo);
}

function LogoutDone (response)
{
	if (typeof(logoutTo) != "undefined") {
		document.location.href = logoutTo;
	}

	var panel = document.getElementById('userLogout');
	panel.style.visibility = 'hidden';

	panel = document.getElementById('userLogin');
	panel.style.visibility = 'visible';
}

function LogoutNow ()
{
	var panel = document.getElementById('userInfo');
	panel.style.visibility = 'hidden';

	ajaxRequest('/cgi-bin/do_logout?' + Math.random(), LogoutDone);
}

function LoginDone (response)
{
	if (response.match(/^LOGIN:/) != null)
	{
		showUserInfo();
		return;
	}

	var panel = document.getElementById('userInfo');
	panel.style.visibility = 'hidden';

	panel = document.getElementById('badLogin');
	panel.style.visibility = 'visible';
}

function LoginNow ()
{
	var user = document.loginform.user.value.replace(/[\s\&;#]/g, '');
	var pass = document.loginform.pass.value.replace(/[\s\&;#]/g, '');

	ajaxRequest('/cgi-bin/login_chk?' + user + '+' + pass + '+++' + Math.random(), LoginDone);

	var panel = document.getElementById('userLoginPopup');
	panel.style.visibility = 'hidden';
}

function showLogin ()
{
	var panel = document.getElementById('userLogin');
	panel.style.visibility = 'visible';
}

function hideLogin ()
{
	panel = document.getElementById('userLogin');
	panel.style.visibility = 'hidden';
}

