var handleLeftcutNum  = 0;
var handleRightcutNum = 4;
var currentHandlecut = '';
var timeout_cut = null;

function updateResultsCut(){
	change_filter = true;
	updateResults();
}

//cut slider widget.
function getcutPosOver(mousePosition){
	if (mousePosition >= 0 && mousePosition <= 46)
	{
		return 0;//Fair.
	}
	else if (mousePosition >= 47 && mousePosition <= 96)
	{
		return 1; //Good.
	}
	else if (mousePosition >= 97 && mousePosition <= 146)
	{
		return 2; //very good.
	}
	else if (mousePosition >= 147 && mousePosition <= 196)
	{
		return 3; //Excelent.
	}
	else if (mousePosition >= 197 && mousePosition <= 246)
	{
		return 4;//Ideal
	}
	
	//invalid position value;
	return -1;
}

function movecut(pos,handle)
{
	if (null != timeout_cut)
	{
		clearTimeout(timeout_cut);
	}
	
	if (handle == 'left')
	{
		if (handleRightcutNum < pos)
		{
			return;
		}
		
		switch(pos)
		{
			case 0: //Fair
				$('#slide_iz_cut').css('padding-left','0px');
				handleLeftcutNum = 0;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 1: //good
				$('#slide_iz_cut').css('padding-left','46px');
				handleLeftcutNum = 1;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 2://very good
				$('#slide_iz_cut').css('padding-left','94px');
				handleLeftcutNum = 2;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 3://excellent
				$('#slide_iz_cut').css('padding-left','141px');
				handleLeftcutNum = 3;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 4://ideal
				$('#slide_iz_cut').css('padding-left','189px');
				handleLeftcutNum = 4;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
		}
	}
	else if ('right' == handle)
	{
		if (handleLeftcutNum > pos)
		{
			return;
		}
	
		switch(pos){
			case 0: //fair
				$('#slide_de_cut').css({'margin-left':'34px','padding-right':'191px'});
				handleRightcutNum = 0;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 1://good
				$('#slide_de_cut').css({'margin-left':'83px','padding-right':'142px'});
				handleRightcutNum = 1;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 2://very good
				$('#slide_de_cut').css({'margin-left':'130px','padding-right':'95px'});
				handleRightcutNum = 2;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 3://excelent
				$('#slide_de_cut').css({'margin-left':'178px','padding-right':'47px'});
				handleRightcutNum = 3;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
				
			case 4://ideal
				$('#slide_de_cut').css({'margin-left':'225px','padding-right':'0px'});
				handleRightcutNum = 4;
				if (!blocked)
				{
					showUpdateResultsLogin();
					timeout_cut = setTimeout(updateResultsCut,600);
				}
				break;
		}
	}
}

$(document).ready(function()
{
	$('#cutSliderContainer').bind('mousedown',function(e)
	{
		currentDragElement = 'cutSlider';
		e.preventDefault();
		initMousePosition = [e.pageX,e.pageY];
		
		e.preventDefault();
		var pos  = findPos($('#cutSliderContainer')[0]);
		var initX = pos[0];
		var relativeMousepos = e.pageX - initX;
		
		var overPosition = getcutPosOver(relativeMousepos);
		
		if (handleLeftcutNum == handleRightcutNum)
		{
			currentHandlecut = 'both';
		}
		else
		{
			if (overPosition == handleRightcutNum)
			{
				currentHandlecut = 'right';
				//console.log('use right handle');
			}
			else if (overPosition == handleLeftcutNum)
			{
				currentHandlecut = 'left';
				//console.log('use left handle');
			}
			else
			{
				currentHandlecut = '';
			}
		}
	});
	
	$('#cutSliderContainer').bind('mousemove',function(e){
		
		e.preventDefault();
		var pos  = findPos($('#cutSliderContainer')[0]);
		var initX = pos[0];
		
		var relativeMousepos = e.pageX - initX;
		
		if (currentDragElement == 'cutSlider')
		{
			//console.log('current handle: ' + currentHandleColor);
			
			if ('both' == currentHandlecut)
			{
				//si el usuario mueve el mouse hacia la izquierda se usa el handle left.
				//sino se usa el handle right.
				var deltaX = e.pageX - initMousePosition[0];
				if (deltaX > 0)
				{
					currentHandlecut = 'right';
				}
				else
				{
					currentHandlecut = 'left';
				}
			}
			
			var overPosition = getcutPosOver(relativeMousepos);
			movecut(overPosition,currentHandlecut);
		}
		
		initMousePosition = [e.pageX,e.pageY];
	});
});
