/* selfPopup
 * open popup window with href determined from the href attribute on the anchor:
 * <a href="index.html" onclick="return selfPopup(this,300,400);">Index</a>
 * dominic winsor, get2dom.com
 */
function selfPopup( loc, x, y ) {
   LeftPosition = (screen.width) ? (screen.width-x)/2 : 0;
   TopPosition = (screen.height) ? (screen.height-y)/2 : 0;
   window.open(loc.href,"","toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=1,resizable=1,copyhistory=0,width="+x+",height="+y+',left='  +LeftPosition +  ',top='  +TopPosition +"");
   return false;
}





// submit the paypal payment form for the UK
function doPaypalUK()
{
    var frm = document.getElementById('paypalForm');
    var key = document.getElementById('paypalFormEncrypted');
    key.value = "-----BEGIN PKCS7-----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-----END PKCS7-----";
    frm.submit();
}


// submit the paypal payment form for the UK
function doPaypalOverseas()
{
    var frm = document.getElementById('paypalForm');
    var key = document.getElementById('paypalFormEncrypted');
    key.value = "-----BEGIN PKCS7-----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-----END PKCS7-----";
    frm.submit();
}





// //////////////////////////////////////////////////////////////////////////////
// PAGE LOAD EVENTS
// //////////////////////////////////////////////////////////////////////////////

var onloadCache = window.onload;
window.onload = function()
{
	if (onloadCache) onloadCache();
	doImagebuttonRollover();
}



// iterate controls on page; locate input type=submit with src attribute which contains '-off'
// e.g. 'images/buttons/btn-submit-off.png'
function doImagebuttonRollover()
{
	var ctl, iCtl;
	for( iCtl=(document.getElementsByTagName('input').length-1); iCtl>0; iCtl-- )
	{
		ctl = document.getElementsByTagName('input')[iCtl];
		if ( (ctl.type.toLowerCase()=='image') && (ctl.src.indexOf('-off')!=-1) )
		{
		    registerEvents(ctl); // attach events
		}
	}
}


// attach events to element
function registerEvents(ele)
{
	// dom method, then msie specific
	if(window.addEventListener)
	{
		ele.addEventListener('mouseover', swapImage, false);
		ele.addEventListener('mouseout', swapImage, false);
	}
	else
	{
		ele.attachEvent('onmouseover', swapImage);
		ele.attachEvent('onmouseout', swapImage);
	}
}


// handle image swap event for input buttons
// assumes that the button src image contains -off and -on for the on and off states.
function swapImage(evt)
{
	var el = evt["target"] ?  evt["target"] : evt["srcElement"];
	el.src = (el.src.indexOf('-off')!=-1) ? el.src.replace('-off','-on') : el.src.replace('-on','-off');
}




/* SPRITE STYLE IMAGE ROLLOVER
 *
 * One very wide gif image displayed as a background image which contains all 
 * map rollover variations is dynamically repositioned onmouseover. The viewport
 * is the width of one map image, meaning the remainder are off-screen.
 * The positionID is multiplied with the mapImageWidth to scroll the background image by 
 * the required amount to position it within the viewport.
 *
 *    default:      [#]######
 *    positionID=2: ##[#]####
 *    positionID=4: ####[#]##
 *     etc..
 * 
 * Note that the background is attached to the <img> with id=mapImage
 * and src= to a transparent GIF image. The width attribute specifies
 * the viewport width.
 * 
 * Producing one large gif of 39kb loads quicker over one http txn 
 * rather than 7 smaller gifs with a sum of 45kb.
*/

// map element and default width
var mapImg;
var mapImageWidth;

// initialise the rollover map variables
// called on Image.onload() like so: <img onload="ocuHighlightInit(this)"
function mapHighlightInit(mapRef)
{
	mapImg = mapRef;
	mapImageWidth = mapImg.width;
}


// scroll element background image x position by required amount
function mapHighlight(mapId)
{ 
	if(mapImg) mapImg.style.backgroundPosition = (mapId) ? -(mapImageWidth*mapId)+"px 0" : "0px 0px"; 
}




