// UTILITIES FOR THIS SITE
// CREATED BY JESSE KNOWLES
// DATE : 2008.12.03

window.defaultStatus = "CouponSherpa.com";

// set webroot
var WEBROOT;
function setWebRoot(_wr) {
	WEBROOT = _wr;
}

/**************************** AUTOBLUR ****************************/
// HANDLE ONFOCUS AND ONBLUR ON AN INPUT FIELD
function autoBlur(_formId, _fieldId) {
	if(!_fieldId) var __fieldObj = document.getElementById(_formId);
	else var __fieldObj = document.getElementById(_formId)[_fieldId];
	var __initValue = (__fieldObj.value) ? __fieldObj.value : "";

	__fieldObj.onfocus = function() {
		if(__fieldObj.value == __initValue) __fieldObj.value = "";
	}
	__fieldObj.onblur = function() {
		if(__fieldObj.value == "") __fieldObj.value = __initValue;
	}
}

/**************************** ROLLOVER ****************************/

function imageSwap(_divId, _swapImage) {
	var t = this;
	var iex = document.all;
	t.__swapImage = _swapImage;


	var __divObj = document.getElementById(_divId);
	var __anchorObj = __divObj.getElementsByTagName("A")[0];	
	if(!__anchorObj) __anchorObj = __divObj;
	__anchorObj.innerHTML = "<img style='position:absolute;' src='"+t.__swapImage+"' />" + __anchorObj.innerHTML;
	var __imageObjSwap = __anchorObj.getElementsByTagName("IMG")[0];
	
	if(iex) __imageObjSwap.style.filter = 'alpha(opacity = 0)';
	else __imageObjSwap.style.opacity = 0;
	var __imageObj = __anchorObj.getElementsByTagName("IMG")[1];
	__imageObj.style.opacity = 1;	
	
	__anchorObj.onmouseover = function() {
		if(iex) __imageObjSwap.style.filter = 'alpha(opacity = 100)';
		else __imageObjSwap.style.opacity = 1;
		if(iex) __imageObj.style.filter = 'alpha(opacity = 0)';
		else __imageObj.style.opacity = 0;
	}	
	__anchorObj.onmouseout = function() {
		if(iex) __imageObjSwap.style.filter = 'alpha(opacity = 0)';
		else __imageObjSwap.style.opacity = 0;
		if(iex) __imageObj.style.filter = 'alpha(opacity = 100)';
		else __imageObj.style.opacity = 1;
	}
}

/**************************** SHOW/HIDE ****************************/

function toggleShowHide(_id, _hide) {
	var t = this;
	var __cookieId = _id;
	// GET COOKIE
	var __isHidden = (_hide) ? true : false;
	var __module = document.getElementById(_id);
	var __totalHeight = __module.offsetHeight;
	var __topHeight = 0;
	var __tw;
	
	t.doToggle = function() {
		toggleHiddenSetting();
		setSize();
	}
	
	var init = function() {
		if(__isHidden) __module.style.height = __topHeight+"px";
	}
	
	var toggleHiddenSetting = function() {
		if(__isHidden) __isHidden = false;
		else __isHidden = true;
	}
	
	var setSize = function() {
		if(__isHidden) {
			__tw = new Tween(__module.style,'height',Tween.regularEaseOut,__totalHeight,__topHeight,0.4,'px'); __tw.start();
			//__module.style.height = __topHeight+"px";
		}else{
			__tw = new Tween(__module.style,'height',Tween.regularEaseOut,__topHeight,__totalHeight,0.4,'px'); __tw.start();
			//__module.style.height = __totalHeight+"px";
		}
	}
	init();
}

function showHideModule(_modId, _hide, _addedExpandPixels) {
	var t = this;
	var __cookieId = _modId;
	// GET COOKIE
	var ck = getCookie(__cookieId);
	var __isHidden
	if(ck != null) { __isHidden = (ck == "true") ? true : false; }
	else __isHidden = (_hide) ? true : false;
	var __module = document.getElementById(_modId);
	var __top = __module.getElementsByTagName("H3")[0];
	var __hideBtnDiv = __top.getElementsByTagName("IMG")[0];
	var __hideBtn = __top.getElementsByTagName("A");
	var __totalHeight = __module.offsetHeight;
	if(_addedExpandPixels) __totalHeight += _addedExpandPixels;
	var __topHeight = __top.offsetHeight;
	var __hideTxt = '<img class="plusminus" src="'+WEBROOT+'images/minus.gif">';
	var __tw;
	
	t.doToggle = function() {
		toggleHiddenSetting();
		setText();
		setSize();
	}
	
	var init = function() {
		setText();
		if(__isHidden) __module.style.height = __topHeight+"px";
		__hideBtn[0].href = __hideBtn[1].href = "javascript:free();";
		// SET COOKIE
		setCookie(__cookieId, __isHidden, 1, "/");
	}
	
	__hideBtn[0].onmousedown = __hideBtn[1].onmousedown = function() {
		t.doToggle();
	}
	
	var toggleHiddenSetting = function() {
		if(__isHidden) __isHidden = false;
		else __isHidden = true;
		// SET COOKIE
		setCookie(__cookieId, __isHidden, 1, "/");
	}
	
	var setText = function() {
		if(__isHidden) {
			__hideBtn[0].innerHTML = '<img class="plusminus" src="'+WEBROOT+'images/plus.gif">';
		}else{
			__hideBtn[0].innerHTML = __hideTxt;
		}
	}
	
	var setSize = function() {
		if(__isHidden) {
			__tw = new Tween(__module.style,'height',Tween.regularEaseOut,__totalHeight,__topHeight,0.4,'px');
			__tw.start();
			//__module.style.height = __topHeight+"px";
		}else{
			__tw = new Tween(__module.style,'height',Tween.regularEaseOut,__topHeight,__totalHeight,0.4,'px'); 
			__tw.onMotionFinished = function() {
				__module.style.height = null;
			}
			__tw.start();
			//__module.style.height = __totalHeight+"px";
		}
	}
	init();
}

/**************************** BLUR ANCHORS ****************************/

function blurAnchors(){
	if(document.getElementsByTagName){
		var a = document.getElementsByTagName("a");
		for(var i = 0; i < a.length; i++){
		  	a[i].onfocus = function(){this.blur()};
		}
	}
}
window.onload = blurAnchors;


/**************************** DATA CLEANUP ****************************/
// avoid data containing illegal characters
function escape(_data) {
	return encodeURIComponent(_data);
}



/**************************** SET MERCHANT CODE ****************************/

function setmerch(urlx){
    neww = window.open(urlx,'newwin','menubar,resizable,height=480,width=640,left=400,top=0,scrollbars=yes,location=no,toolbar=yes');		
    neww.blur();
    window.focus(); 
    if(neww.closed){
    	neww = window.open(urlx,'newwin','menubar,resizable,height=480,width=640,left=400,top=0,scrollbars=yes,location=no,toolbar=yes');
    	neww.blur();
    	window.focus();
    }else{
    	neww.location.href = urlx;
    	neww.blur();
    	window.focus();
    }
    return true;
}



/**************************** SET FILTER SELECTION ****************************/

function initTimeFilter(_id) {
	var t = this;
	var __holder  = document.getElementById(_id);
	if(document.getElementsByTagName){
		var a = __holder.getElementsByTagName("a");
		var removeActive = function() {
			for(var j = 0; j < a.length; j++){
				a[j].className = '';
			}
		}
		for(var i = 0; i < a.length; i++){
			var link = a[i];
			link.onclick = function() {
				removeActive();
				this.className = 'active';
				cf.doFilter(this.title);
			}
		}
	}
}

/**************************** SHOWS A FORM ERROR ****************************/

function showFormError(_msgDiv, _btnDiv, _msg) {
 	var t = this;
	// display message
	_msgDiv.innerHTML = _msg;
	var fdInfo = new fade(_msgDiv);
	if(_btnDiv) {
		var fdBtn = new fade(_btnDiv);
		fdBtn.fadeOut(0.5);
	}
	
	// remove message from form
    fdInfo.onComplete = function() {
    	fdInfo.stop();
    	fdInfo.fadeOut(1);
    	if(_btnDiv) fdBtn.fadeIn(1.5);
    	if(_btnDiv) _btnDiv.style.visibility = "visible";
    	fdInfo.onComplete = t.onComplete();
    }	
		
	fdInfo.fadeIn(3);
	_msgDiv.style.visibility = "visible";
}

/**************************** SIDEBAR FORM RESPONSE ****************************/

function sidebarResponse(_resp, _frm, _txt, _resetText) {
	var respAry = _resp.split("|");

	// display message
	_txt.innerHTML = respAry[1];
	var fdInfo = new OpacityTween(_txt,Tween.regularEaseOut,100,0,3); 
	
	if(respAry[0] == "success") {
		// remove message from form
		fdInfo.onMotionFinished = function() {
			if(_frm.subscribeEmail) _frm.subscribeEmail.value = "";
			_txt.innerHTML = _resetText;
		}
	}else{
		// remove message from form
		fdInfo.onMotionFinished = function() {
			fdInfo.stop();
		}		
	}
	fdInfo.start();
}

// auto tab function
function autoTab(_obj, _frmName, _chars, _plus) {
	if(!_plus) _plus = 1;
	if(_obj.value.length >= _chars) {
		var elements = document.getElementById(_frmName).elements;
		for(var i = 0; i < elements.length; i++) {
			if(elements[i] == _obj) {
				elements[i+_plus].focus();
				break;
			}
		}
	}
}
// facebook link
function fbs_click(u) {
	window.open('http://www.facebook.com/sharer.php?u='+encodeURIComponent(u),'sharer','toolbar=0,status=0,width=626,height=436');
	return false;
}

function free() {}