// Paragraph rollovers
function itemOVER() {
	this.style.backgroundColor='#FCFCDE';
	this.style.cursor='pointer';
}
function itemOUT() {
	this.style.backgroundColor='#FFFFFF';
	this.style.cursor='default';
}
function init(spkTag,spkClass) {
	var elements = document.getElementsByTagName(spkTag);
	var i, element, total = elements.length;
	for(i=0; i<total; i++){
		element = elements[i];
		if(element.className.toLowerCase() == spkClass){
			element.onmouseover = itemOVER;
			element.onmouseout = itemOUT;
		}
	}
}

// Stylesheet switcher
function setActiveStyleSheet(title) {
   var i, a, main;
   for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
	 if(a.getAttribute("rel").indexOf("style") != -1
		&& a.getAttribute("title")) {
	   a.disabled = true;
	   if(a.getAttribute("title") == title) a.disabled = false;
	 }
   }
}

// Show / Hide ID's
function toggleBox(szDivID, iState) // 1 visible, 0 hidden
{
    if(document.layers) {
       document.layers[szDivID].display = iState ? "block" : "none";
    } else if(document.getElementById) {
        var obj = document.getElementById(szDivID);
        obj.style.display = iState ? "block" : "none";
    } else if(document.all) {
        document.all[szDivID].style.display = iState ? "block" : "none";
    }
}

// Set up the moo.fx accordian
function accordioninit(){
	var trig = $S('.trigger');
	var box = $S('.slider');
	var ac = new fx.Accordion(trig, box, {'alwaysHide' : true, duration: 200, 'start': 'all-closed'});		
}

// Following js used in group.aspx (add friends form)
var Delegate = {
	create: function(obj, func){
		var f = function(){
			return arguments.callee.func.apply(arguments.callee.target, arguments);
		};
		f.target = obj;
		f.func = func;
		return f;
	}
};
var Utils = {
	NULL: "NULL",
	Element: {
		getAttribute: function(element, prop){
			if(element.getAttribute(prop)) return element.getAttribute(prop);
			else if(element[prop]) return element[prop];
			return Utils.NULL;
		}
	}
};
// > Make a new page
function Page(){ this.initialise.apply(this, arguments); }
Page.prototype = {
	initialise: function(){
		this.previousElement = null; 
		var tags = document.getElementsByTagName("div");
		var i, button, total = tags.length;
		for(i=0; i<total; i++){
			if(Utils.Element.getAttribute(tags[i], "rel").toLowerCase() == "fx.select"){
				button = new Button(tags[i]);
				button.setId(i);
				button.onPress = Delegate.create(this, this.doClick);
			}
		}
	},
	doClick: function(element){
		element.style.backgroundColor = "#F0F7FF";
		if(this.previousElement){
			if(this.previousElement.unique_id != element.unique_id){
				this.previousElement.style.backgroundColor = "transparent";
			}
		}
		this.previousElement = element;
	}
};
// > Make a new button
function Button(){ this.initialise.apply(this, arguments); }
Button.prototype = {
	initialise: function(htmlElement){
		this.element = htmlElement;
		this.element.onmousedown = Delegate.create(this, this.doPress);
	},
	setId: function(id){ this.element.unique_id = id; },
	doPress: function(){ if(this.onPress) this.onPress(this.element); }
};


function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
		

// Functions used for imperial / metric conversions in the Cycle10 calculator

function milesToKms(miles)
{
	var kms = miles / 0.6213;
	return kms;		
}

function kmsToMiles(kms)
{
	var miles = kms * 0.6213;
	return miles;
}

function to2DecPlaces(value)
{
	value = value * 100;
	value = Math.round(value);
	value = value / 100;
	return value;
}

function convertKms()
{
	var kms = document.getElementById('ctl00_MainContent_txtDistanceKms').value - 0;
	var miles = kmsToMiles(kms);
	miles = to2DecPlaces(miles);
	document.getElementById('ctl00_MainContent_txtDistanceMiles').value = miles;
}

function convertMiles()
{
	var miles = document.getElementById('ctl00_MainContent_txtDistanceMiles').value - 0;
	var kms = milesToKms(miles);	
	kms = to2DecPlaces(kms);
	document.getElementById('ctl00_MainContent_txtDistanceKms').value = kms;
}
