/*
A pWidgets Bit...
website: www.pwidgets.com
*/
pWidgetsFOID = new Object();
pWidgetsFTID = new Object();
function lib_bwcheck(){ 
	this.ver=navigator.appVersion;
	//this.vender = navigator.vender;
	this.product=navigator.product;
	this.moz= navigator.product == 'Gecko';
	this.agent=navigator.userAgent;
	this.dom=document.getElementById?1:0;
	this.mac=this.agent.indexOf("Mac")>-1;
	this.opera5=this.agent.indexOf("Opera 5")>-1;
	this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
	this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
	this.ie7=(this.ver.indexOf("MSIE 7")>-1 && this.dom && !this.opera5)?1:0;
	this.ie5mac=(this.ver.indexOf("MSIE 5.23")>-1 && !this.opera5 && this.mac)?1:0;
	this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
	this.ie=this.ie4||this.ie5||this.ie6||this.ie7;
	this.saf=this.agent.indexOf("Safari")>-1;
	this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
	this.ns4=(document.layers && !this.dom)?1:0;
	this.bw2=(this.moz||this.ie5mac||this.saf||this.ie7||this.ie6||this.ie5||this.ie4||this.ns4||this.ns6||this.opera5);
	return this;
}
var bw2 = new lib_bwcheck();
function pWidgets1(object, destOp, rate, delta){

   // if (object != "[object]"){
//        setTimeout("pWidgets("+object+","+destOp+","+rate+","+delta+")",0);
//        return;
//    }
       var diff; 
    clearTimeout(pWidgetsFTID[object.sourceIndex]); 
	direction = 1;
    delta=Math.min(direction*diff,delta);
    if(bw2.ie){
    	diff = destOp-object.filters.alpha.opacity;
		if (object.filters.alpha.opacity > destOp){
        	direction = -1;
    	}
		object.filters.alpha.opacity+=direction*delta;
	}else if(bw2.ns5){
		diff = destOp-object.MozOpacity;
		if (object.MozOpacity > destOp){
        	direction = -1;
    	}
		object.MozOpacity+=direction*delta;
	}else if(bw2.saf){
		diff = destOp-object.filter;
		if (object.filter > destOp){
        	direction = -1;
    	}
		object.filter+=direction*delta;
	}else{
		diff = destOp-object.KhtmlOpacity;
		if (object.KhtmlOpacity > destOp){
        	direction = -1;
    	}
		object.KhtmlOpacity+=direction*delta;
	}
   	if (bw2.ie){
		if (object.filters.alpha.opacity != destOp){
			pWidgetsFOID[object.sourceIndex]=object;
			pWidgetsFTID[object.sourceIndex]=setTimeout("pWidgets(pWidgetsFOID["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
		}
	}else if(bw2.ns5){
		if(object.MozOpacity != destOp){
			pWidgetsFOID[object.sourceIndex]=object;
			pWidgetsFTID[object.sourceIndex]=setTimeout("pWidgets(pWidgetsFOID["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
		}
	}else if(bw2.saf){
		if(object.filter != destOp){
			pWidgetsFOID[object.sourceIndex]=object;
			pWidgetsFTID[object.sourceIndex]=setTimeout("pWidgets(pWidgetsFOID["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
		}
	}else{
		if(object.KhtmlOpacity != destOp){
			pWidgetsFOID[object.sourceIndex]=object;
			pWidgetsFTID[object.sourceIndex]=setTimeout("pWidgets(pWidgetsFOID["+object.sourceIndex+"],"+destOp+","+rate+","+delta+")",rate);
		}
	}
}
// --------------------------------
function pWidgets(id, opacStart, opacEnd, millisec) {
	//speed for each frame
	var speed = Math.round(millisec / 100);
	var timer = 0;
	if(document.getElementById(id)){if(document.getElementById(id).style.display='none'){changeOpac(0, id);document.getElementById(id).style.display='block'}}
	//determine the direction for the blending, if start and end are the same nothing happens
	if(opacStart > opacEnd) {
		for(i = opacStart; i >= opacEnd; i--){
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}
	} else if(opacStart < opacEnd) {
		for(i = opacStart; i <= opacEnd; i++){
			setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed));
			timer++;
		}		
	}
}
//change the opacity for different browsers
function changeOpac(opacity, id) {
	var object = document.getElementById(id); 
	if(!bw.ie5 && !bw.ie6){
		object.style.opacity = (opacity / 100);
		object.style.MozOpacity = (opacity / 100);
		object.style.KhtmlOpacity = (opacity / 100);	
		object.style.filter = "alpha(opacity=" + opacity + ")!important";
	}else{
		makevisible(id,opacity);
	}
}
function makevisible(cur,which){
	var object = document.getElementById(cur);
	//object.filters.item("DXImageTransform.Microsoft.Alpha").enabled = 1;
	//object.filters.alpha.opacity = opacity;
	object.filters.item("DXImageTransform.Microsoft.Alpha").opacity = which;
}