﻿<!--

/* Generate Flash Player*/
function getFlashPlayer(path, width, height, basePath){
    if(basePath == null)
        basePath = "";
        
    var strflashdata = "";
    strflashdata += "<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0' width='" + width +"' height='" + height + "'>";
    strflashdata += "<param name='movie' value='" + basePath + "FLVPlayer_Progressive.swf' />";
    strflashdata += "<param name='salign' value='lt' />";
    strflashdata += "<param name='quality' value='high' />";
    strflashdata += "<param name='scale' value='noscale' />";
    strflashdata += "<param name='FlashVars' value='&MM_ComponentVersion=1&skinName=" + basePath + "Clear_Skin_2&streamName=" + path + "&autoPlay=false&autoRewind=false' />";
    strflashdata += "<embed src='" + basePath + "FLVPlayer_Progressive.swf' flashvars='&MM_ComponentVersion=1&skinName=" + basePath + "Clear_Skin_2&streamName=" + path + "&autoPlay=false&autoRewind=false' quality='high' scale='noscale' width='" + width + "' height='" + height + "' salign='LT' type='application/x-shockwave-flash' pluginspage='http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash' />";
    strflashdata += "</object>";
    //document.write(strflashdata);
    return strflashdata;
}
/* Generate header menu */
$(function(){
    $("ul.dropdown li").hover(function(){
        $(this).addClass("hover");
        $('ul:first',this).css('visibility', 'visible');
    }, function(){
        $(this).removeClass("hover");
        $('ul:first',this).css('visibility', 'hidden');
    });
    $("ul.dropdown li ul li:has(ul)").find("a:first").append(" &raquo;");
});

/* Pantry member search related operation */
function SearchPantry(){
    if($('#txtSPantryZipCode').val().length > 0)
        window.location = _SiteUrl + 'pantry-locator.aspx?zip=' + escape($('#txtSPantryZipCode').val());
    else{
        if($('#slctSPantryCity').val().length > 0)
            window.location = _SiteUrl + 'pantry-locator.aspx?city=' + escape($('#slctSPantryCity').val());
        else
            window.location = _SiteUrl + 'pantry-locator.aspx';
    }
}
function SearchRPantry(){    
        if($('#txtRSPantryZipCode').val().length == 0){
            jAlert('error', 'Please provide zip code for pantry locator.', 'Pantries on Google map');
            return false;
        } else{
                window.location = _SiteUrl + 'pantry-map-view.aspx?zip=' + escape($('#txtRSPantryZipCode').val()) + '&rad=' + escape($('#ddlradius').val());
        }    
}
function ClearSearch(IsDropDown){
    if(IsDropDown){
        $('#txtSPantryZipCode').val('');
    } else {
        var ddlSearchCity = $('#slctSPantryCity');
        if (ddlSearchCity != null && ddlSearchCity[0].options.length > 0) { ddlSearchCity[0].options.selectedIndex = 0; }
    }
}

/* Newsletter sign up related operation */
function ValidNewsletterSignUp(){    
    var txtNewsletterSignUp = document.getElementById('txtNewsletterSignUp');    
    if(StringTrim(txtNewsletterSignUp.value) == ''){
        jAlert('error','Please enter your email address to sign up for our mailing list.','Newsletter Sign Up');
        txtNewsletterSignUp.focus();
        return false;
    }
    if(!isEmail(txtNewsletterSignUp,objemail)){
        jAlert('error','Please enter valid email address for newsletter sign up.','Newsletter Sign Up');
        txtNewsletterSignUp.focus();
        return false;
    }
    window.location = _SiteUrl + 'newsroom/join-our-mailing-list.aspx?email=' + escape(txtNewsletterSignUp.value);
}

function GetAjaxResponse(Pageurl,RespCtrl,LoadingCtrl)
{
    $('#' + LoadingCtrl).show();
    $.ajax({url: Pageurl,type:"get",success:function(resp){$('#' + RespCtrl).html(resp);$('#' + LoadingCtrl).hide();}});
}

/* Search operation in header part */
function validateSearch(strDefaultValue){
    if(strDefaultValue != null && strDefaultValue.length > 0){
        if(StringTrim($("#SearchCriteria").val()).toLowerCase() == strDefaultValue.toLowerCase()){
            //alert('-- Please enter your search criteria.');
            jAlert('error','Please enter your search criteria.','LA Food Bank Search');
		    $("#SearchCriteria").focus();
		    return false;
        }
    }    
    if(StringTrim($("#SearchCriteria").val()) != "")
	    return true;
    else{
        //alert('-- Please enter your search criteria.');
        jAlert('error','Please enter your search criteria.','LA Food Bank Search');
		$("#SearchCriteria").focus();
		return false;
    }
}

/* Provides the default text of a textbox and when focus is lost the default text reappears */
function textChanger(obj, text){
    if(text == null){text = ''}
    if(obj.value.length == 0)
        obj.value = text;
    else if(obj.value.toLowerCase() == text.toLowerCase())
        obj.value = '';
    else if(obj.value.toLowerCase() != text.toLowerCase())
        return;
}

/* Validating payment field at pro method of payment. CC validation */
function mod10(cardNumber){ 
	// LUHN Formula for validation of credit card numbers.
	var ar = new Array( cardNumber.length );
	var i = 0,sum = 0;

   	for(i = 0; i < cardNumber.length; ++i){ ar[i] = parseInt(cardNumber.charAt(i)); }
    
	for( i = ar.length -2; i >= 0; i-=2 ){
		// you have to start from the right, and work back.
    	ar[i] *= 2;		// every second digit starting with the right most (check digit)
   		if( ar[i] > 9 ) ar[i]-=9;	// will be doubled, and summed with the skipped digits.
   	}	// if the double digit is > 9, ADD those individual digits together 

   	for( i = 0; i < ar.length; ++i ){
    	sum += ar[i];	// if the sum is divisible by 10 mod10 succeeds
   	}
   	return (((sum%10)==0)?true:false);
}

function expired(month,year){
   	var now = new Date();	// this function is designed to be Y2K compliant.
   	var expiresIn = new Date(year,month,0,0,0);		// create an expired on date object with valid thru expiration date
   	expiresIn.setMonth(expiresIn.getMonth()+1);		// adjust the month, to first day, hour, minute & second
                                                    //	of expired month
   	if(now.getTime() < expiresIn.getTime()) { return false; }
    return true;	// then we get the miliseconds, and do a long integer comparison
}

function validateCreditCard(cardNumber,cardType,cardMonth,cardYear,cardCode){
    if(cardType.length == 0){ return "Please select credit card type.";	}
	
	if(cardNumber != null){
  	    if( cardNumber.length == 0 ){ return "Please enter valid card number."; }
    }
    if( cardCode.length == 0 ){ return "Please enter valid card code."; }
    
    if(cardNumber != null){
        for( var i = 0; i < cardNumber.length; ++i ){	
		    // make sure the number is all digits.. (by design)
            var c = cardNumber.charAt(i);

   		    if( c < '0' || c > '9' ){
        	    return "Please enter valid card number. Use only digits. do not use Spaces or Hyphens.";        	    
            }
        }
    }
    
	if(cardNumber != null){
	    var length = cardNumber.length;		//perform card specific length and prefix tests
    	
   	    switch( cardType ){
    	    case 'a':
			    if( length != 15 ){ return "Please enter valid American Express card number."; }
                var prefix = parseInt( cardNumber.substring(0,2));
   			    if( prefix != 34 && prefix != 37 ){ return "Please enter valid American Express card number."; }
            break;
            case 'd':
			    if( length != 16 ){ return "Please enter valid Discover card number."; }
                var prefix = parseInt( cardNumber.substring(0,4));
			    if( prefix != 6011 ){ return "Please enter valid Discover card number."; }
            break;
            case 'm':
			    if( length != 16 ){ return "Please enter valid MasterCard number."; }
                var prefix = parseInt( cardNumber.substring(0,2));
			    if( prefix < 51 || prefix > 55){ return "Please enter valid MasterCard number."; }
            break;
            case 'v':
			    if( length != 16 && length != 13 ){ return "Please enter valid Visa card number."; }
                var prefix = parseInt( cardNumber.substring(0,1));
			    if( prefix != 4 ){ return "Please enter valid Visa card number."; }
            break;
        }
        
	    if(!mod10(cardNumber)){ 	
		    // run the check digit algorithm
            return "Sorry! This is not a valid credit card number.";            
        }
    }
    
    if(cardMonth == ''){ return "Please select expiration month."; }
    if(cardYear == ''){ return "Please select expiration year."; }
    
    if(expired(cardMonth, cardYear)){
		// check if entered date is already expired.
        return "Sorry! The expiration date you have entered would make this card invalid.";
    }
    if (cardCode != ""){
		 for( var i = 0; i < cardCode.length; ++i ){
			var c = cardCode.charAt(i);
			if( c < '0' || c > '9' ){ return "Please enter valid card code. Use only digits."; }
		}
	}
	return "";	// at this point card has not been proven to be invalid
}
function openWindow(theURL,winName,features){window.open(theURL,winName,features);}
//-->