var setGradient = (function(){	 	//private variables;	var p_dCanvas = document.createElement('canvas');	var p_useCanvas =  !!( typeof(p_dCanvas.getContext) == 'function');	var p_dCtx = p_useCanvas?p_dCanvas.getContext('2d'):null;	var p_isIE = /*@cc_on!@*/false;	 		 //test if toDataURL() is supported by Canvas since Safari may not support it	   try{   p_dCtx.canvas.toDataURL() }catch(err){          p_useCanvas = false ;   };         	if(p_useCanvas){	   	   return function (dEl , sColor1 , sColor2 , bRepeatY ){						if(typeof(dEl) == 'string') dEl =  document.getElementById(dEl);			if(!dEl) return false;			var nW = dEl.offsetWidth;			var nH = dEl.offsetHeight;			p_dCanvas.width = nW;			p_dCanvas.height = nH;								var dGradient;			var sRepeat;			// Create gradients			if(bRepeatY){				dGradient = p_dCtx.createLinearGradient(0,0,nW,0);				sRepeat = 'repeat-y';			}else{				dGradient = p_dCtx.createLinearGradient(0,0,0,nH);				sRepeat = 'repeat-x';			}								dGradient.addColorStop(0,sColor1);			dGradient.addColorStop(1,sColor2);										p_dCtx.fillStyle = dGradient ; 			p_dCtx.fillRect(0,0,nW,nH);			var sDataUrl = p_dCtx.canvas.toDataURL('image/png');						with(dEl.style){				backgroundRepeat = sRepeat;				backgroundImage = 'url(' + sDataUrl + ')';				backgroundColor = sColor2;    			};	   }	}else if(p_isIE){				p_dCanvas = p_useCanvas = p_dCtx =  null;				return function (dEl , sColor1 , sColor2 , bRepeatY){			if(typeof(dEl) == 'string') dEl =  document.getElementById(dEl);			if(!dEl) return false;			dEl.style.zoom = 1;			var sF = dEl.currentStyle.filter;			dEl.style.filter += ' ' + ['progid:DXImageTransform.Microsoft.gradient(	GradientType=',  +(!!bRepeatY ),',enabled=true,startColorstr=',sColor1,', endColorstr=',sColor2,')'].join('');		    		};		}else{				p_dCanvas = p_useCanvas = p_dCtx =  null;		return function(dEl , sColor1 , sColor2  ){						if(typeof(dEl) == 'string') dEl =  document.getElementById(dEl);			if(!dEl) return false;			with(dEl.style){				 backgroundColor = sColor2; 			};			//alert('your browser does not support gradient effet');		}	}})();
