


var artUrl      = "http://img.mqcdn.com/mqsite/"; //default for non-map art assets

/**
 * =CLOSE SAVED WINDOW
 * @ close saved and recent drop-down
 */
function closeSavedWindow(evt) {

    if(getElementById("savedrecentpopup"))
        getElementById("savedrecentpopup").style.display = "none";

    if(localSavedObj)
        localSavedObj.src = artUrl + "frmp-icon-savedbtn-v1";
    toggleDropdown(evt);
    srPopupId = false;
}//closeSavedWindow()

/**
 * =CLOSE POPUP
 * @method for closing the saved and recent popup window while clicking on outside of the popup window
 */
removeEvent(window.document, "click", closePopup); addEvent(window.document, "click", closePopup);
function closePopup(evt)
{
	if(getElementById("savedrecentpopup") == null) return;
	if(getElementById("savedrecentpopup").style.display == "none")
	{
        return;
	}

   var evtobj = getTarget(evt);
	if (evtobj && evtobj.id.match(/r[0-9]+$/) || evtobj.id == "savedclose")
   {
       return;
   }
   closeSavedWindow();
}//closePopup()

/**
 * =SHOW SAVED RECENT
 * @saved and recent popup window related methods
 */
var localSavedObj;
function showSavedRecent(evt)
{
    var xyData      = getXY(evt);
    var imageObj    = getElementById(xyData.elementId);
    var imageX      = xyData.pageX - xyData.elementX;
    var imageY      = xyData.pageY - xyData.elementY;

    if(imageObj.src == (artUrl + "frmp-icon-savedover-v1"))
    {
        //imageObj.src = artUrl + "frmp-icon-savedbtn-v1";
        //getElementById("savedrecentpopup").style.display = "none";
        closeSavedWindow(evt);
        return;
    }
    imageObj.src    = artUrl + "frmp-icon-savedover-v1";
    localSavedObj   =  imageObj;
    //Get other saved recent buttons back to normal (from rolled over image)
    var savedRecent = document.images;
    for(var i = 0, l = savedRecent.length;i < l;i++)
    {
        if(savedRecent[i].id.substring(0,1) == "r")
        {
           obj = getElementById(savedRecent[i].id);
           if(obj.id  && obj.id != localSavedObj.id)
                obj.src = artUrl + "frmp-icon-savedbtn-v1";
        }
    }

    var refval = xyData.elementId.substring(1);
    getElementById("addPanelRef").value = refval;

    var imageObjWidth               = imageObj.style.width;
    var imageObjHeight              = imageObj.style.height;
    imageObjWidth                   = 60;
    imageObjHeight                  = 22;

    var rightPosX                   = imageX+ imageObjWidth;
    var rightPosY                   = imageY+ imageObjHeight;
    var popUpElement                = getElementById("savedrecentpopup");
    popUpElement.style.top          = String(rightPosY)+"px";
    popUpElement.style.paddingLeft  = "0px";

    //To push the popup to the right incase the left margin falls below zero
    var leftOffset;
    if(rightPosX-330 <0) {
        leftOffset= -(rightPosX-332);
        popUpElement.style.left = String(rightPosX+leftOffset-330 + 50)+"px";
    }else {
        popUpElement.style.left = String(rightPosX-330 + 10 + 50)+"px";
    }//leftOffset

    //To push the popup to the left incase the right margin exceeds the browser width
    var browserSize = getBrowserSize();
    var rightOffset;
    if(rightPosX > browserSize.width) {
        rightOffset = rightPosX - browserSize.width;
        popUpElement.style.left = String(rightPosX-332-rightOffset)+"px";
    }//rightOffset

    var browser = getBrowserInfo();
    if (browser.name == 'msie' && browser.version < 7.0)
    {
        getElementById("savedcenter").style.height = "10px";
        if(browser.version >= 5.5)
        {
            getElementById("savedtop").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://img.mqcdn.com/mqsite/frmp-bg-savedtop-v1.png', sizingMethod='scale')";
            getElementById("savedbottom").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://img.mqcdn.com/mqsite/frmp-bg-savedbtm.png', sizingMethod='scale')";
            getElementById("savedcenter").style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='http://img.mqcdn.com/mqsite/frmp-bg-savedcntr.png', sizingMethod='scale')";
        }
        else
        {
            getElementById("savedbottom").style.height = "13px";
            getElementById("savedtop").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedtop) no-repeat left";
            getElementById("savedbottom").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedbtm) no-repeat left";
            getElementById("savedcenter").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedcntr) 0 100% repeat-y";
        }
    }
    else
    {
        if(window.opera && getBrowserInfo().version < 8)
        {
           // Preload images
           getElementById("savedcenter").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedcntr.png) 0 0% repeat-y";
           getElementById("savedtop").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedtop.png) no-repeat left";
           getElementById("savedbottom").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedbtm.png) 0 0% repeat-y";
        }
        getElementById("savedtop").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedtop-v1.png) no-repeat left";
        getElementById("savedbottom").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedbtm.png) no-repeat left";
        getElementById("savedcenter").style.background = "transparent url(http://img.mqcdn.com/mqsite/frmp-bg-savedcntr.png) 0 100% repeat-y";
    }
    getElementById("savedrecentpopup").style.display = "block";
    srPopupId = xyData.elementId;
    toggleDropdown(evt);
}//showSavedRecent()

/**
 * =SAVED RECENT INIT
 * @saved and recent popup window related methods
 */
function savedRecentInit()
{
    for(var i = 1; i <= 18; i++)
    {
        var savedRecent = getElementById("r" + i);
        if(savedRecent && (savedRecent.className == "savedrecent")) {
            addEvent(savedRecent, "click", showSavedRecent);
        }
    }
}//savedRecentInit()

/**
 * =POPULATE SAVED RECENT
 * @saved and recent values populated
 */
function populateSavedRecent(str)
{
   closeSavedWindow();
	var sfx = document.getElementById("addPanelRef").value;

   if(str != null && str.length > 0) {
		var cookiearray=str.split("|");
		if(trimString(cookiearray[0]).length > 0 && document.getElementById("bus" + sfx).checked) {
			document.getElementById("pn" + sfx).value = cookiearray[0];
		}
		document.getElementById("a" + sfx).value = trimString(cookiearray[1]);
		document.getElementById("c" + sfx).value = trimString(cookiearray[2]);
		document.getElementById("s" + sfx).value = trimString(cookiearray[3]);
		document.getElementById("z" + sfx).value = trimString(cookiearray[4]);
		document.getElementById("ctry" + sfx).value = trimString(cookiearray[5]);
   }

}

/*
 * Toggle drop-down list to prevent overlap in IE 6.0
 */
var srPopupId = false;
function toggleDropdown(evt) {
    var browser = getBrowserInfo();
    if (browser.name == 'msie' && browser.version < 7.0 && srPopupId)
    //if (srPopupId)
    {
    	var popup = getElementById("savedrecentpopup");
    	var dropdown = document.getElementById("probTyp" + (srPopupId.match(/[\d]+/) / 2));
    	if (!dropdown) dropdown = document.getElementById("topic");
    	if (!dropdown) return;

    	var popupBottom = getCoords(popup).y + popup.clientHeight - 12;
    	if (!dropdown.style.visibility && popupBottom > getCoords(dropdown).y) {
	    	 dropdown.style.visibility = "hidden";
    	} else {
	    	 dropdown.style.visibility = "";
    	}
	}
}

function getCoords(elem) {
	var _x = 0;
	var _y = 0;
	
    for (; elem.offsetParent; elem = elem.offsetParent) {
        _x += elem.offsetLeft;
        _y += elem.offsetTop;
    }
	return {x:_x, y:_y};
}

function getTarget(evt) {
	return evt.target ? evt.target : evt.srcElement;
}
