var mix = {
	
	swapClassParent : "pageWithPuffs",
	swapClass : "puffRow",
	
	
	Init : function (){
		if (document.getElementById) {
			this.pushBlocks();
		}
	},
	
	pushBlocks: function() {
		var parentElm = $(this.swapClassParent);
		if (parentElm) {
			var elms = parentElm.getElementsByTagName("div");
			var links;
			for(var i=0; i<elms.length; i++){
				if (elms[i]) {
					elm = elms[i];
					if(elm.className=='smallPuff'||elm.className=='puff'||elm.className=='smallPuffLast smallPuff'||elm.className=='puffLast puff') {
						//mix.preloadImages(elm);
						elm.onmouseover = mix.togglePushBg;
						elm.onmouseout = mix.togglePushBg;
						links = elm.getElementsByTagName("a");
						if (links) {
							for(var j=0; j<links.length; j++){
								link = links[j];
								if(/url/i.test(link.className)) {
									elm.setAttribute("onclick", "mix.applyChildURL('" + link.href + "')");
								}
							}
						}						
					}				
				}
			}	
		}
	},
	
	togglePushBg: function() {
		var elm = this;
		if(!/puff-hover/i.test(elm.className)) {


			if(!/smallPuff/i.test(elm.className)&&!/smallPuffLast/i.test(elm.className))
				mix.addClassName(elm,"puff-hover");
				

			if(/smallPuff/i.test(elm.className)||/smallPuff smallPuffLast/i.test(elm.className)||/puff/i.test(elm.className)||/puffLast puff/i.test(elm.className))
				mix.swapImg(elm);/*BYTER BILD*/

			
		}else{
			if(!/smallPuff/i.test(elm.className))
				mix.removeClassName(elm,"puff-hover");
			if(/smallPuff/i.test(elm.className)||/smallPuff smallPuffLast/i.test(elm.className)||/puff/i.test(elm.className)||/puffLast puff/i.test(elm.className))
				mix.swapImgBack(elm)/*BYTER TILLBAKA BILD*/	
		}
	},

	togglePushSmallBg: function() {
		var elm = this;
		if(!/puff-hover/i.test(elm.className)) {
			mix.addClassName(elm,"puff-hover");
		}else{
			mix.removeClassName(elm,"puff-hover");
		}
	},
	
	applyChildURL: function(url) {
		location.href = url;
		return false;
	},

		
		
/*PRELOADING IMAGES*/		
	preloadImages: function(elm)
	{
		var imgs = elm.getElementsByTagName("img");	
		if(/smallPuff/i.test(elm.className)||/smallPuffLast/i.test(elm.className))
		{
			for(var i=0; i<imgs.length; i++)
			{
				imageObj = new Image();
				var newImg=imgs[i].src;
				imageObj.src=newImg.replace("_BW.",".");
				//	console.log('preloading img '+imageObj.src);
			}
		}		
	},

/*BIDLBYTARFUNKTIONER*/
		swapImg: function(elm) 
		{
			var img = elm.getElementsByTagName("img");	
			var newImg = img[0].src;
            
            img[0].src = img[1].src;
            img[1].src = newImg;
			
			//newImg = newImg.replace("_BW.",".");
			//img[0].src=newImg;
		},	
		
		swapImgBack: function(elm) 
		{
			var img = elm.getElementsByTagName("img");
			var newImg=img[0].src;
            
            img[0].src = img[1].src;
            img[1].src = newImg;
			
			//newImg=newImg.replace(".","_BW.");
			//img[0].src=newImg;;
		},		

	addClassName : function (oElm, strClassName){
		var strCurrentClass = oElm.className;
		if(!new RegExp(strClassName, "i").test(strCurrentClass)){
			oElm.className = strCurrentClass + ((strCurrentClass.length > 0)? " " : "") + strClassName;
		}
	},
	
	removeClassName : function (oElm, strClassName){
		var oClassToRemove = new RegExp((strClassName + "\s?"), "i");
		oElm.className = oElm.className.replace(oClassToRemove, "").replace(/^\s?|\s?$/g, "");
	},
	
	End : function (oEvent){
		mix = null;
		delete mix;
	}		
}

function addEvent(oObj, evType, fn, useCapture){
	if (oObj.addEventListener){
		oObj.addEventListener(evType, fn, useCapture);
		return true;
	} else if (oObj.attachEvent){
		var r = oObj.attachEvent("on"+evType, fn);
		return r;
	} else {
		alert("Handler could not be attached");
	}
}
addEvent(window, "load",function(){mix.Init();})
addEvent(window, "unload", function(){mix.End();}, false);

function $(strId){
	return document.getElementById(strId);
}

function set_ema() {
	var identifyer='#mt#';
	var buff;
	var arr;
	var atags=document.getElementsByTagName('a');
	var pos;

	for (i=0;i<atags.length;i++) {
		//buff = ' ';
		pos = -1;
		try {
			buff = atags[i].getAttribute('href');
			pos = buff.indexOf(identifyer);
		} catch(e) {}

		if (pos>=0) {
			arr = buff.substr(pos+identifyer.length).split(',');
			if (arr.length>1) {
				atags[i].setAttribute('href','mai'+'lto:'+arr[0]+'@'+arr[1]);
				if (arr.length>2) {if (arr[2]=='1') {atags[i].innerHTML = arr[0]+'@'+arr[1];}}
				if (arr.length>3) {if (arr[3]=='1') {atags[i].setAttribute('title',arr[0]+'@'+arr[1]);}}
			}
		}
	}
}
