/*
*
* Home Page Javascript
*
* (c) 2008 Du Maurier Ltd
*
* Author: S.Manning Jul 2008
*
*=============================================================================*/

/* >>>> NB window onload in index.adp <<<< */


/*========================================================================*/
/* 							index_content1 scripts 						  */
/* 							Promo Products Slider 						  */
/*========================================================================*/

function promoScrollLeft() {
    document.getElementById("promo_slide_left").href="javascript:noop()";
    document.getElementById("promo_slide_right").href="javascript:noop()";

    promoScroll('',0,1);
};

function promoScrollRight() {
    document.getElementById("promo_slide_left").href="javascript:noop()";
    document.getElementById("promo_slide_right").href="javascript:noop()";

    promoScroll('',0,0);
};

function promoScroll(start,dx,dir) {
    var div=document.getElementById("promo_slide");
    var x=parseInt(div.style.left);

    if (start=='') start=x;

    if (Math.abs(x-start) <= (promoWidth/2)) {
        dx++;
    } else {
        dx--;
    };

    if (dir==1) {
        x=x+dx;
        var a=Math.abs(x);
        var b=Math.abs(promoWidth+start);
        var end=start+promoWidth;
    } else {
        x=x-dx;
        var a=Math.abs(promoWidth-start);
        var b=Math.abs(x);
        var end=start-promoWidth;
    };

    if (a > b) {
        div.style.left=Number(x)+"px";
        var wait=15;
        window.setTimeout("promoScroll("+start+","+dx+","+dir+")",wait);
    } else {
        div.style.left=Number(end)+"px";
        if (end >= -1) {
            div=document.getElementById("promo_slide_left");
            div.href="javascript:noop()";
            div.setAttribute("class","hidden");
            div.className="hidden";
        } else {
            div=document.getElementById("promo_slide_left");
            div.href="javascript:promoScrollLeft()";
            div.setAttribute("class","btn prev");
            div.className="btn prev";
        };

        if (end <= (-1*promoMaxWidth)) {
            div=document.getElementById("promo_slide_right");
            div.href="javascript:noop()";
            div.setAttribute("class","hidden");
            div.className="hidden";
        } else {
            div=document.getElementById("promo_slide_right");
            div.href="javascript:promoScrollRight()";
            div.setAttribute("class","btn next");
            div.className="btn next";
        };
    };
};




/*========================================================================*/
/* 							index_content6 scripts 						  */
/* 							Theme Slider        						  */
/*========================================================================*/

function wideThemesScrollLeft() {
	document.getElementById("wide_themes_slide_left").href="javascript:noop()";
	document.getElementById("wide_themes_slide_right").href="javascript:noop()";
	wideThemesScroll('',0,1);
};

function wideThemesScrollRight() {
	document.getElementById("wide_themes_slide_left").href="javascript:noop()";
	document.getElementById("wide_themes_slide_right").href="javascript:noop()";
	wideThemesScroll('',0,0);
};

function wideThemesScroll(start,dx,dir) {
	var div=document.getElementById("wide_themes_slide");
	var x=parseInt(div.style.left);

	if (start=='') start=x;

	if (Math.abs(x-start) <= (wideThemesWidth/2)) {
		dx++;
	} else {
		dx--;
	};

	if (dir==1) {
		x=x+dx;
		var a=Math.abs(x);
		var b=Math.abs(wideThemesWidth+start);
		var end=start+wideThemesWidth;
	} else {
		x=x-dx;
		var a=Math.abs(wideThemesWidth-start);
		var b=Math.abs(x);
		var end=start-wideThemesWidth;
	};

	if (a > b) {
		div.style.left=Number(x)+"px";

		var wait=15;
		window.setTimeout("wideThemesScroll("+start+","+dx+","+dir+")",wait);
	} else {
		div.style.left=Number(end)+"px";
        if (end >= -1) {
            div=document.getElementById("wide_themes_slide_left");
            div.href="javascript:noop()";
            div.setAttribute("class","hidden");
            div.className="hidden";
        } else {
            div=document.getElementById("wide_themes_slide_left");
            div.href="javascript:wideThemesScrollLeft()";
            div.setAttribute("class","btn prev");
            div.className="btn prev";
        };

        if (end <= (-1*wideThemesMaxWidth)) {
            div=document.getElementById("wide_themes_slide_right");
            div.href="javascript:noop()";
            div.setAttribute("class","hidden");
            div.className="hidden";
        } else {
            div=document.getElementById("wide_themes_slide_right");
            div.href="javascript:wideThemesScrollRight()";
            div.setAttribute("class","btn next");
            div.className="btn next";
        };
	};
};


/*========================================================================*/
/* 							index_content7 scripts 						  */
/*                          Tag Cloud                                     */
/*========================================================================*/

var tcWait = 1;
var tcStep = 2;
var tcActive = 0;
var tcMove = 0;

function getPos(obj) {
    var output = new Object();
    var mytop=0, myleft=0;
    while( obj) {
        mytop+= obj.offsetTop;
        myleft+= obj.offsetLeft;
        obj= obj.offsetParent;
    }
    output.left = myleft;
    output.top = mytop;
    return output;
}

function tcMouseOver(event) {

    if (tcMove!=0) window.clearTimeout(tcMove);
    document.getElementById("tc_controls").style.visibility="visible";

    var ctrl = (event.target || event.srcElement).getAttribute("id");

    var mx=event.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
    var my=event.clientY + document.body.scrollTop + document.documentElement.scrollTop;
    var div=document.getElementById("tag-cloud");

    var pos=getPos(div);
    var leftPos=pos.left;
    var topPos=pos.top;

    //var tenthWidth=parseInt(div.style.width)/10;
    var lz=leftPos+150;
    var rz=leftPos+290;

    //var tenthHeight=parseInt(div.style.height)/10;
    var tz=topPos+25;
    var bz=topPos+75;

//document.getElementById("debug").innerHTML="MX: "+mx+" RZ: "+rz+" LZ: "+lz+" LP: "+leftPos+"<br>MY: "+my+" TZ: "+tz+" BZ: "+bz+" TP: "+topPos

    //if (mx < lz) {
    //    dx = 1 * tcStep;
    //    dy = 0;
    //} else if (mx > rz) {
    //    dx = -1 * tcStep;
    //    dy = 0;
    //} else

    if (mx > lz && mx < rz) {
        if (my < tz) {
            dy = 1 * tcStep;
        } else if (my > bz) {
            dy = -1 * tcStep;
        } else {
            dy = 0;
        }
    } else {
        dy = 0;
    }
    dx = 0;

    if (tcActive!=0) window.clearTimeout(tcActive);
    tcActive = 0;
    tcScroll(dx,dy);
}

function tcMouseOut(event) {
    document.getElementById("tc_controls").style.visibility="hidden";
    if (tcActive!=0) window.clearTimeout(tcActive);
    tcActive = 0;
}

function tcScroll(dx,dy) {
    var slider=document.getElementById("tag-slider");
    var holder=document.getElementById("tag-cloud");
    //var x=parseInt(slider.style.left);
    var y=parseInt(slider.style.top);

    //if (x < ( -1 * (parseInt(slider.offsetWidth) - (9*parseInt(holder.style.width)/10))) || x > parseInt(holder.style.width)/10) {
    //    slider.style.left=Number(x-dx)+"px";
    //    dx = 0;
    //} else {
    //    slider.style.left=Number(x+dx)+"px";
    //}

    dx = 0;

    if (y < ( -1 * (parseInt(slider.offsetHeight) - (9*parseInt(holder.style.height)/10))) || y > parseInt(holder.style.height)/10) {
        slider.style.top=Number(y-dy)+"px";
        dy = 0;
    } else {
        slider.style.top=Number(y+dy)+"px";
    }

    tcActive=window.setTimeout("tcScroll("+dx+","+dy+")",tcWait);
};

function tcMoveRnd() {
    var div=document.getElementById("tag-slider");
    var holder=document.getElementById("tag-cloud");
    //var x= -1 * Math.random() * (parseInt(div.offsetWidth) - parseInt(holder.style.width));
    var y= -1 * Math.random() * (parseInt(div.offsetHeight) - parseInt(holder.style.height));

    //div.style.left=Number(x)+"px";
    div.style.top=Number(y)+"px";

    tcMove=window.setTimeout("tcMoveRnd()",5000);
};
