/*
 * jQuery Color Animations
 * Copyright 2007 John Resig
 * Released under the MIT and GPL licenses.
 */
(function(jQuery){jQuery.each(['backgroundColor','borderBottomColor','borderLeftColor','borderRightColor','borderTopColor','color','outlineColor'],function(i,attr){jQuery.fx.step[attr]=function(fx){if(fx.state==0){fx.start=getColor(fx.elem,attr);fx.end=getRGB(fx.end);}fx.elem.style[attr]="rgb("+[Math.max(Math.min( parseInt((fx.pos*(fx.end[0]-fx.start[0]))+fx.start[0]),255),0),Math.max(Math.min(parseInt((fx.pos*(fx.end[1]-fx.start[1]))+fx.start[1]), 255), 0),Math.max(Math.min( parseInt((fx.pos*(fx.end[2]-fx.start[2])) + fx.start[2]), 255), 0)].join(",") + ")";}});function getRGB(color){var result;if ( color && color.constructor == Array && color.length == 3 ){return color;}if (result=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)){return [parseInt(result[1]), parseInt(result[2]), parseInt(result[3])];}if (result = /rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)){return [parseFloat(result[1])*2.55, parseFloat(result[2])*2.55, parseFloat(result[3])*2.55];}if(result = /#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)){return [parseInt(result[1],16), parseInt(result[2],16), parseInt(result[3],16)];}if (result = /#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)){return [parseInt(result[1]+result[1],16), parseInt(result[2]+result[2],16), parseInt(result[3]+result[3],16)];}return colors[jQuery.trim(color).toLowerCase()];}function getColor(elem,attr){var color;do{color = jQuery.curCSS(elem, attr);if ( color != '' && color != 'transparent' || jQuery.nodeName(elem,"body")){break;}attr="backgroundColor";}while( elem = elem.parentNode );return getRGB(color);};var colors={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0]};})(jQuery);


// Animacion para iconos, tipo MAC, y MAC con un estilo modificado

jQuery.fn.captchaSlide = function(newConfig){
	
	config = {		
		defaultBgColor					: '#ccc',
		defaultBgImg					: 'none',
		bgActive						: '#55c233',
		bgActiveImg						: 'none',
		slideIcoImg						: null,
		speedBlock						: 0.5,
		speedChangeColor				: 200,
		startEvent 						: null,
		slideEvent						: null,
		changeEvent						: null,
		stopEvent 						: null,
		slideIcoImg						: null,
		inicialValSlide					: 0,
		minValSlide						: 0,
		maxValSlide						: 100,
		stepSlide						: 1,
		rangeSlide						: 'min',
		defaultClassSlideCont 			: '.ui-widget-content',
		defaultClassSlideContColor 		: '.ui-widget-header',
		defaultClassDeslizador			: '.ui-state-default',
		defaultClassDeslizadorFocus		: '.ui-state-focus',
		defaultClassDeslizadorActive	: '.ui-state-active',
		cursorDeslizador				: 'pointer',
		onsubmit						: function(){}
	}
	
	
	//Hago una reconfiguracion	
	reconfiguration = jQuery.extend(config , newConfig);
	
	
	//Asigno los eventos a los objetos
	this.each( function(){
		slideCreate(this);
		$(this).keypress(function(){
			$(this).slider({ value:0})
		});
    });	
	
	
	function slideCreate(obj){		
		if(config.changeEvent == null){
			config.changeEvent = function(event, ui) { 
				if(ui.value < 100){
					var newValue = (ui.value - 1);
					if(newValue >= 0){
						setTimeout("$('#"+obj.id+"').slider({value:"+newValue+"})",config.speedBlock);
					}
				}else{
					config.onsubmit();
				}
			}	
		}				
		
		$(obj).slider({
			value	: config.inicialValSlide,
			min	 	: config.minValSlide,
			max		: config.maxValSlide,
			step	: config.stepSlide,
			range	: config.rangeSlide,
			start 	: config.startEvent,
			slide 	: config.slideEvent,
			change 	: config.changeEvent,
			stop 	: config.stopEvent
		});	
		
		//Cambio la configuracion de colores de la barra
		$(config.defaultClassSlideCont).css({backgroundColor : config.defaultBgColor, backgroundImage : config.defaultBgImg});//Color desctivado
		//$(config.defaultClassSlideContColor).css({backgroundColor : config.bgActive, backgroundImage : config.bgActiveImg});//Color activado
		
		//Cambio la configuracion de los BG del deslizador
		//Deslizador Default
		/*$(config.defaultClassDeslizador).css({background : config.bgImageDeslizador, border : config.borderDeslizador, cursor : config.cursorDeslizador});
		//Deslizador Focus
		$(config.defaultClassDeslizadorFocus).css({background : config.bgImageDeslizadorFocus, border : config.borderDeslizadorFocus, cursor : config.cursorDeslizador});
		//Deslizador Active
		$(config.defaultClassDeslizadorActive).css({background : config.bgImageDeslizadorActive, border : config.borderDeslizadorActive, cursor : config.cursorDeslizador});*/
	}
	
}

