var jfbcUsernameSuccessElement;
var jfbcEmailSuccessElement;

function jfbcCheckUsernameAvailable(usernameField)
{
	jfbcUsernameSuccessElement = document.getElementById(usernameField);
	var testName = $('username').value;
	if (testName != '')
		var myXHR = new XHR({method:'get', onSuccess:jfbcShowUsernameSuccess}).send('index.php', 'option=com_jfbconnect&view=loginregister&task=checkUsernameAvailable&username='+testName);
}

function jfbcShowUsernameSuccess(req)
{
	if (req == 1)
	{
		jfbcUsernameSuccessElement.innerHTML='<img src="' + jfbcRoot + 'images/apply_f2.png" width="20" height="20">' + jfbcUsernameIsAvailable;
	}
	else
	{
		jfbcUsernameSuccessElement.innerHTML='<img src="' + jfbcRoot + 'images/cancel_f2.png" width="20" height="20">' + jfbcUsernameIsInUse;
	}
}

function jfbcCheckEmailAvailable(emailField)
{
	jfbcEmailSuccessElement = document.getElementById(emailField);
	var testEmail = $('email').value;
	if (testEmail != '' && jfbcIsEmail(testEmail))
		var myXHR = new XHR({method:'get', onSuccess:jfbcShowEmailSuccess}).send('index.php', 'option=com_jfbconnect&view=loginregister&task=checkEmailAvailable&email='+testEmail);
}

function jfbcShowEmailSuccess(req)
{
	if (req == 1)
	{
		jfbcEmailSuccessElement.innerHTML='<img src="' + jfbcRoot + 'images/apply_f2.png" width="20" height="20">' + jfbcEmailIsAvailable;
	}
	else
	{
		jfbcEmailSuccessElement.innerHTML='<img src="' + jfbcRoot + 'images/cancel_f2.png" width="20" height="20">' + jfbcEmailIsInUse;
	}
}

function jfbcIsEmail( text )
{
	var pattern = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
	var regex = new RegExp( pattern );
	return regex.test( text );
}

function jfbcCheckPermission(permission, callback)
{
	FB.ensureInit(function()
	{
		FB.Connect.requireSession(function()
		{
			FB.Connect.showPermissionDialog(permission,
				function(result)
				{
					callback();
				}, false, null);
		});
	});

	return false;
}


