// THIS PAGE INCLUDES CUSTOM FUNCTIONS FOR THE CLIENT
clear_debug();
var currentPage = encodeURIComponent(window.location.href);
function params(qp) { try{r=unescape(location.search.match(new RegExp(qp+"=+([^&]*)"))[1]);}catch(e){r='';} return r; }


		function Gload() {}
		function GUnload() {}
		
var editMode = false;
var pageLoaded;
function onPageLoad() {
	preloadImages();
	pageLoaded = true;
	
	//setMenuActive();
	//showGallery('home.htm');
}

function onPageResize() {
}

function preloadImages() {
//	MM_preloadImages('');
}


function customHandler(desc,page,line,chr)  {		// Display Errors in status	 
	window.status = "JAVASCRIPT ERROR : " + desc + " : PAGE=" + page + " : LINE=" + line;
	return true;
}
window.onerror=customHandler;



function setMenuActive() {
	var cID = section + "_" + page;
	var cItem = document.getElementById(cID);
	if (cItem)	cItem.className = "on";

	var cID = "mm0" + getNumber(section);	
	var cItem = document.getElementById(cID);
	if (cItem)	cItem.src = 'assets/images/mm0' + getNumber(section) + 'on.gif'
}


function pagePrint() {
	window.print();
}



function pageSave(wURL,cPage,divIndex) {
    //$D(wURL);
    //	if ( !isTop() )
    //	{
    //	    top.document.getElementById('pageSavedDupe').style.left = '224px';
    //	    top.document.getElementById('pageSavedDupe').style.right = '';
    //	    top.document.getElementById('pageSavedDupe').style.top = '32px';
    //	    top.document.getElementById('pageSavedDupe').style.width = '482px';
    //	    top.document.getElementById('pageSavedDupe').style.background = '#ff0000';
    //	    top.document.getElementById('pageSaved').style.left = '50px';
    //	    top.document.getElementById('pageSaved').style.right = '';
    //	    top.document.getElementById('pageSaved').style.top = '32px';
    //	    top.document.getElementById('pageSaved').style.width = '482px';
    //	    top.pageSave(wURL,cPage,divIndex);
    //	    return;
    //	}

    $.ajax({
        type: "GET",
        url: wURL,
        success: function(response){
            $D("response" + response);
            if (response == "1") {
                
                if (isTop())
                {
                    numSavedItems = numSavedItems + 1;
                }

                if (divIndex == "")
                {
                    showMsg("#pageSaved");
                }
                else
                {
                    showMsg("#pageSaved" + divIndex);
                }
                if (isTop())
                {
                    $("#savedItems").hide();			  
                    $("#savedItems").html("Saved items (" + numSavedItems + ")");
                    $("#savedItems").fadeIn();
                }
            }
            else if (response == "2") {
                var newUrlString = wURL;
                top.window.location.href = "Members/Login.htm@ReturnURL=" + cPage + "?SaveIt|";
            }
            else {
                showMsg("#pageSavedDupe" + divIndex);
            }
        }
    });
}

function pageDelete(wURL,divIndex) {
	//$D(wURL);
	if (confirm('Are you sure you want to delete?'))
	{
	    $.ajax({
	      type: "GET",
	      url: wURL,
	      success: function(response){
		      //$D("response" + response);
		      if (response == "1") {
                $("#savedItem" + divIndex).fadeOut("normal");
                numSavedItems = numSavedItems - 1;
                $("#savedItems").hide();			  
                $("#savedItems").html("Saved items (" + numSavedItems + ")");
                $("#savedItems").fadeIn();
		      }
		      else if (response == "2") {
			    window.location.href = "Members/Login.htm";
		      }
		      else {
		      }
	      }
	    });
	}	
}

function showMsg(wDiv) {
	$D("show" + wDiv);
	$(wDiv).fadeIn(300, function() {setTimeout( function() { $(wDiv).fadeOut(300)} ,1000)} );
}


var usernameControl;
var passwordControl;

// Add login clears	

function loginBoxInit(input1, input2){
    usernameControl = input1;
    passwordControl = input2;
}

function handleEnter (field, event) {
var keyCode = event.keyCode ? event.keyCode : event.which ? event.which : event.charCode;
if (keyCode == 13) {
var i;
for (i = 0; i < field.form.elements.length; i++)
if (field == field.form.elements[i])
break;
i = (i + 1) % field.form.elements.length;
field.form.elements[i].focus();
return false;
} 
else
return true;
} 


function findStore(wField,wVal) {
	$D("find store" + wField + " " + wVal);	
	formVal = $("#" + wField).attr("value");
	if (checkZip(formVal)) {
		$D(formVal);
		window.location = "Store-Locator.htm@zipcode=" + formVal
	}
	else {
		showMsg($("#" + wVal));
		return false;
	}

}


jQuery().ready(function (){

	if ($.browser.msie) {	// wrap home links in a tags to fix click throughs on IE
		$(".homeItem").each(function(i){
			var thisObj = $(this);
			var cLink = thisObj.children("a").attr("href");
			$D(cLink);
	
			var cImage = thisObj.find("img");
			$D(cImage);
			$(cImage).wrap("<a href=\""+ cLink + "\" class=\"iewrap\"></a>");
			
		});	
	}

//	alert(params("iuser"));
	//$("#regForm input[@type=checkbox]").attr("checked", "checked");

	$("#" + usernameControl).focus( function() { clearText(this); autohide = false; } );	
	$("#" + passwordControl).focus( function() { clearText(this, true); autohide = false;} );		
	
	$("#" + usernameControl).blur( function() { autohide = true; } );	
	$("#" + passwordControl).blur( function() { autohide = true;} );
	
	
	$("input[@type=submit]").addClass("button");
	$("input[@type=checkbox]").addClass("checkbox");	

	// setup default submits on forms
	$('input[@name=zipFoot]').keydown(function(e){
			if (e.keyCode == 13) {
				$('#submitStoreFoot').click();
				return false;
			}
	});
	$('input[@name=zipHead]').keydown(function(e){
			if (e.keyCode == 13) {
				$('#submitStoreHead').click();
				return false;
			}
	});	


}
);

/** BEGIN GALLERY FUNCTIONS ***/

function isTop() {
	return (top.window == window)
}



function pageEmail() {
	if (!isTop()) top.galEmail = top.galLoaded;
	else top.galEmail = null;
	
	var emailPage = "CMSTemplates/BenjaminMoore/Tools-Email.aspx@cPage="	
	top.showOverlay(emailPage + currentPage, 400, 400);
	
}

var galLoaded = null;
var galEmail = null;
var overlayOn = false;
var cGal = params("gal")

function showGallery(wGallery) {
	$D("showGal" + wGallery);
	showOverlay(wGallery, 602,502);
	galLoaded = wGallery;
}

function hideGallery() {
	hideOverlay();
}


function galInit() {
	if (cGal != "") {
		cGal = cGal.replace("http://","");
		cGal = cGal.replace(location.hostname,"");	
		showGallery(cGal);
	}
}


function showOverlay(wPage,wHeight,wWidth) {

	$D("showOverlay " + wPage);
	
	if (!overlayOn) {
		overlayBackObj = document.getElementById("overlayBack");
		overlayBackObj.style.display = "block";
		overlayBackObj.style.filter = "alpha(opacity=0)";
		$("#overlayBack").fadeTo("normal",.5);
		$("#overlayFrameHolder").fadeIn();
	}
	
	var currentfr=document.getElementById("overlayFrame");
	currentfr.height = wHeight;
	currentfr.width = wWidth;

	//frames['overlayFrame'].location.href = "http://" + location.hostname + wPage.replace("~", "");	
    document.getElementById('overlayFrame').src = "http://" + location.hostname + wPage.replace("~", "");	
	overlayOn = true;

}

function hideOverlay() {
	if (galEmail) {
		showGallery(galEmail);
		top.galEmail = null;
	}
	else {
		$("#overlayBack").fadeOut();
		$("#overlayFrameHolder").fadeOut();
		frames['overlayFrame'].location.href = "blank.html";	
		overlayOn = false;
	}
	
}



/** BEGIN MENU POPUPS ***/
var activePop;
var activeNum 	=	new Array(7)
var activeTimeout 	=	new Array(7)
var focusedTextBox = "";

function setFocusedTextBox(input)
{
    focusedTextBox = input;
}

function showPop(wNum) {
	$D("showNav" + wNum);
	hideAll(wNum);

	var navItem = getNav(wNum);
	navItem.addClass("hover");

	clearTimeout(activeTimeout[wNum]);		// ADDED 
	if (activeNum[wNum] == true) return;
	var navPop = getPop(wNum);
	navPop.slideDown({duration: 500, easing: "expoout"});
	
	activeNum[wNum] = true;
}

function getNav(wNum) {
	return $("#nav" + wNum);
}

function getPop(wNum) {
	return $("#navPop" + wNum);
}

var autohide = true;

function hidePop(wNum) {
    if (focusedTextBox == "")
    {
	    $D("hide" + wNum);
	    clearTimeout(activeTimeout[wNum]);
	    if (autohide) activeTimeout[wNum] = setTimeout(function() { hidePopNow(wNum) }, 1000);
	}
}

function hidePopNow(wNum) {
//	$D("hidenow" + wNum);
	clearTimeout(activeTimeout[wNum]);		
	if (activeNum[wNum] == false) return;
	var navPop = getPop(wNum);
	navPop.fadeOut(200, function() { 	  });;	
	
	var navItem = getNav(wNum); 
	navItem.removeClass("hover");
	
	activeNum[wNum] = false;
	
	
	
}

function hideAll(wNum) {	// will hide all except passed number
	for (var i = 0; i < activeTimeout.length; i++) {
		if (i != wNum)
			hidePopNow(i)
	}
}
/** END MENU POPUPS ***/



function slideWithIcon(scrollDiv, iconDiv)
{
    if (document.getElementById(scrollDiv).style.display == 'none')
    {
        $("#" + scrollDiv).slideDown({duration: 500, easing: "expoout"});
        document.getElementById(iconDiv).innerHTML = '<img src="assets/images/minus.gif" alt="+" height="9" width="9" />';
    }
    else if (document.getElementById(scrollDiv).style.display == 'block')
    {
        $("#" + scrollDiv).slideUp({duration: 500, easing: "expoout"});
        document.getElementById(iconDiv).innerHTML = '<img src="assets/images/plus.gif" alt="+" height="9" width="9" />';
    }
}

function slide(scrollDiv)
{
    if (document.getElementById(scrollDiv).style.display == 'none')
    {
        $("#" + scrollDiv).slideDown({duration: 500, easing: "expoout"});
    }
    else if (document.getElementById(scrollDiv).style.display == 'block')
    {
        $("#" + scrollDiv).slideUp({duration: 500, easing: "expoout"});
    }
}

var scrollTimer;
var divPos = 0;
var galleryItems = 0;
function scroll(direction, speed)
{
    clearTimeout(scrollTimer);
    
    if (direction == "left")
    {
        if (divPos >= 0)
        {
            document.getElementById('rightarrow').style.background = "url('assets/images/right_arrow.gif') no-repeat 6px 12px;";
            document.getElementById('leftarrow').style.background = "#f2f2f2;";
            return false;
        }
        divPos = divPos + speed;
    }
    else if (direction == "right")
    {
        if (divPos - 450 <= (galleryItems * -46))
        {
            document.getElementById('leftarrow').style.background = "url('assets/images/left_arrow.gif') no-repeat 0px 12px;";
            document.getElementById('rightarrow').style.background = "#f2f2f2;";
            return false;
        }
        divPos = divPos - speed;
    }
    
    if ( !(divPos >=0 || divPos - 450 <= (galleryItems * -46) ) )
    {
        document.getElementById('leftarrow').style.background = "url('assets/images/left_arrow.gif') no-repeat 0px 12px;";
        document.getElementById('rightarrow').style.background = "url('assets/images/right_arrow.gif') no-repeat 6px 12px;";
    }

    document.getElementById('scroll').style.left = divPos + "px";
    scrollTimer = setTimeout("scroll('" + direction + "', " + speed + ")", 10);
}

function jump(direction)
{
    if (direction == "right")
    {
        divPos = divPos + 10;
    }
    else if (direction == "left")
    {
        divPos = divPos - 10;
    }
    document.getElementById('scroll').style.left = divPos + "px";
}

function killScroll()
{
    clearTimeout(scrollTimer);
}

function loadScrollBars()
{
    if (galleryItems >= 10)
    {
        document.getElementById('leftarrow').style.background = 'url(\'assets/images/left_arrow.gif\') no-repeat 6px 12px;';
        document.getElementById('rightarrow').style.background = 'url(\'assets/images/right_arrow.gif\') no-repeat 6px 12px;';
    }
}

function galPageSave(wURL,cPage,divIndex) {
    $.ajax({
        type: "GET",
        url: wURL,
        success: function(response){
            $D("response" + response);
            if (response == "1") {
                numSavedItems = numSavedItems + 1;
                window.parent.updateSavedItems(numSavedItems);
                if (divIndex == "")
                {
                    showMsg("#pageSaved");                    
                }
                else
                {
                    showMsg("#pageSaved" + divIndex);
                }
            }
            else if (response == "2") {
                var newUrlString = wURL;
                top.window.location.href = "Members/Login.htm@ReturnURL=" + cPage + "?SaveIt|";
            }
            else {
                showMsg("#pageSavedDupe" + divIndex);
            }
        }
    });
}

function updateSavedItems(input)
{
    $("#savedItems").hide();
    $("#savedItems").html("Saved items (" + input + ")");
    $("#savedItems").fadeIn();
}