/** GiftCardBalance.js */
var giftCardBlanacePopup = null;
function giftCardBalanceCheckPopup()
{
	if (giftCardBlanacePopup == null)
	{
		giftCardBlanacePopup = popup.withUrl('GiftCardBlanace', 'Check Giftcard Balance', 'BECGiftCardBalanceView?storeId=' + storeId + '&langId=-1');
	}
	else
	{
		resetGiftCardBalance();
		giftCardBlanacePopup.show();
	}
}

function submitGiftCardBalanceCheck()
{
	//BECGiftCardBalanceCheck
	//resetGiftCardBalance();
    wc.service.invoke("AjaxGiftCardBalanceCheck");  
    cursor_wait();  
}

function resetGiftCardBalance()
{
	$('#gc_failure1').hide();
	$('#gc_failure2').hide();
	$('#gc_failure3').hide();
	$('#gc_success').hide();
}

/** declare the ajax service for giftcard balance check */
wc.service.declare(
{
    id: "AjaxGiftCardBalanceCheck",
    actionId: "BECGiftCardBalanceCheck",
    url: "AjaxBECGiftCardBalanceCheck",
    formId: "GiftCardForm",      
    successHandler: function(serviceResponse) 
    {
        cursor_clear(); 
        if (serviceResponse && serviceResponse.responseCode === '01')
        {
        	//get the dojo currency code
        	dojo.require("dojo.number");

        	$('#gc_balance').html(dojo.number.format(serviceResponse.GCBalance, {places: '2'}));
        	$('#gc_success').show();	
        }
        else
        {
        	$('#gc_failure1').show();
        }
    },      
    failureHandler: function(serviceResponse) 
    {
        cursor_clear();
        $('#gc_failure2').show();
    }       
});

/** Gift card and pin input validation check */	
function validateInput(gc_number, gc_pin, form1)
{	
	resetGiftCardBalance();
	
	var submitCheck = true;
	var errMsg = '';
	// make sure that GC number is not null and is 19 characters long
	if(gc_number.length == 19)
	{	 
		// make sure that there is nothing but numbers. (no letters or symbols)
		 var r1 = new RegExp("[^0-9]");
		 if(r1.test(gc_number))
		 {	
			errMsg = 'The Gift Card Number contains invalid characters: ' + gc_number;
			submitCheck = false;
		 }
	}	
	else if(gc_number.value == "" || gc_number.length==0)
	{	
		errMsg = 'Please enter a Gift Card Number.';
		submitCheck = false; 
	}
	else if(gc_number.length < 19)
	{	
		errMsg = 'Gift Card Number entered is too short, it must be 19 digits.';
		submitCheck = false; 
	}
	else
	{	
		errMsg = 'Gift Card Number entered is invalid.';
		submitCheck = false; 
	}
	
	// check the gift card pin
	if(submitCheck && (gc_pin.value == "" || gc_pin.length < 4))
	{
		errMsg = 'Please enter a valid PIN number.';
		submitCheck = false; 
	}
	
	// if valid number and pin then submit the balance check
	if (submitCheck)
	{
		submitGiftCardBalanceCheck();
	}
	else
	{
		$('#gc_failure3').html(errMsg).show();
	}
	
	return false;
}
