var priceSlider = null;
var image_directory = '/Slider/';
var mattyParams = new Array;				
var queryString = "";

function parseUrl(){
	/** Using an array for the join command.  **/
	/** 0,1,2,3 are not changed               **/
	/** 4 = Category                          **/
	/** 5 = Page Prods                        **/
	/** 6 = Page No                           **/
	/** 7 = Price Low                         **/
	/** 8 = Price High                        **/
	/** 9 = Color                             **/
	/** 10 = Type                              **/
	/** 11 = Dimensions                       **/
	/** 12 = Sort Order                       **/
	/** 13 = Last Part                        **/
	
	var actual_url = document.URL;
	if(actual_url.indexOf('?') > -1){
		queryString = actual_url.substring(actual_url.indexOf('?'), actual_url.length);
		actual_url = actual_url.substring(0, actual_url.indexOf('?'));
	}
	var tmp_url_array = actual_url.split("/");
	
	mattyParams[0] = tmp_url_array[0];
	mattyParams[1] = tmp_url_array[1];
	mattyParams[2] = tmp_url_array[2];
	mattyParams[3] = tmp_url_array[3];
	mattyParams[4] = tmp_url_array[4];

	if(tmp_url_array[6]){
		mattyParams[5] = tmp_url_array[5];
		mattyParams[6] = tmp_url_array[6];
		mattyParams[7] = tmp_url_array[7];
		mattyParams[8] = tmp_url_array[8];
		mattyParams[9] = tmp_url_array[9];
		mattyParams[10] = tmp_url_array[10];
		mattyParams[11] = tmp_url_array[11];
		mattyParams[12] = tmp_url_array[12];
		mattyParams[13] = tmp_url_array[13];
	}
	else{
		if(tmp_url_array[4] == "Categories"){
			mattyParams[4] = "All";
		}
		mattyParams[5] = 12;
		mattyParams[6] = 1;
		mattyParams[7] = 0;
		mattyParams[8] = 0;
		mattyParams[9] = "All";
		mattyParams[10] = "All";
		mattyParams[11] = "0-0x0-0x0-0";
		mattyParams[12] = 0;
		mattyParams[13] = "Categories";
	}
}


function init_slider(defaultMin, defaultMax, actualMin, actualMax){
	priceSlider = new Bs_Slider();
	priceSlider.width         = 164;
	priceSlider.height        = 33;
	priceSlider.imgDir   = image_directory;
	//priceSlider.setBackgroundImage('background.gif', 'no-repeat');
	priceSlider.attachOnChange(priceSliderChange);
	priceSlider.attachOnSlideEnd(priceSliderEnd);
	
	priceSlider.fieldName     = 'priceSlider_start';
	priceSlider.minVal        = defaultMin;
	priceSlider.maxVal        = defaultMax;
	priceSlider.valueInterval = 1;
	priceSlider.valueDefault  = actualMin;
	priceSlider.setSliderIcon('handle.gif', 13, 33);
	priceSlider.useInputField = 0;
	priceSlider.styleValueFieldClass = 'sliderInput';
	
	priceSlider.useSecondKnob        = true;
	priceSlider.preventValueCrossing = true;
	priceSlider.wheelAmount        = 0; //disable mouse wheeling cause we have 2 knobs.
	
	priceSlider.fieldName2     = 'priceSlider_end';
	priceSlider.minVal2        = defaultMin;
	priceSlider.maxVal2        = defaultMax;
	priceSlider.valueInterval2 = 1;
	priceSlider.valueDefault2  = actualMax;
	priceSlider.setSliderIcon2('handle.gif', 13, 33);
	priceSlider.useInputField2 = 0;
	priceSlider.styleValueFieldClass2 = 'sliderInput';
	
	priceSlider.colorbar = new Object({ type:'between', color:'#3d97da', offsetLeft:5, height:2, offsetTop:17 });
	
	priceSlider.drawInto('mattyPriceSlider');
}


function priceSliderChange(sliderObj, val, newPos, knobNumber) { 
	if(knobNumber == 1){
		priceLow = val;	
		$('actualMin').innerHTML = val;	
	}
	if(knobNumber == 2){
		priceHigh = val;	
		$('actualMax').innerHTML = val;	
	}
	page = 1;
}
function priceSliderEnd(obj, val, pos){
}
function clearPrice(){
}

function color_values(){
	var total_colors = $$('#mattyColorsOptionsWrapper input');
	var return_color = "All";
	var tmp_color_array = new Array();
	
	total_colors.each(function(actual_element, index_element){
		if(actual_element.checked){
			tmp_color_array.push(actual_element.value);
		}
	});
	if(tmp_color_array.length == 1){
		return_color = tmp_color_array[0];
	}
	else{
		return_color = tmp_color_array.join("-");
	}
	return return_color.replace(/ /g, "+");
}

function type_values(){
	if($('mattyTypeSelect')){
		return $('mattyTypeSelect').value.replace(/ /g, "+");
	}
	return "";
}

var Site = new Class({
	initialize: function(){
		if ($('mattyPanel')) {
			this.panel_functions();
		}
	},
	panel_functions: function(){
		var matty_submit_button = $('mattySubmitButton');
		matty_submit_button.addEvent('click', function(e){
			processRun();
		});
		
		var matty_pages_select = $('mattyPagesSelect');		
		matty_pages_select.addEvent('change', function(e){
			processRun();
		});

		var matty_sort_select = $('mattySortSelect');		
		matty_sort_select.addEvent('change', function(e){
			processRun();
		});
	}
});

function processRun(){
	mattyParams[6] = 1; /* page should always reset to 1 */
	mattyParams[7] = parseInt($('actualMin').innerHTML);
	mattyParams[8] = parseInt($('actualMax').innerHTML);
	mattyParams[9] = color_values();
	mattyParams[10] = type_values();
	mattyParams[11] = $('mattyDimensionsLengthMin').value + "-" + $('mattyDimensionsLengthMax').value + "x" + $('mattyDimensionsHeightMin').value + "-" + $('mattyDimensionsHeightMax').value + "x" + $('mattyDimensionsDepthMin').value + "-" + $('mattyDimensionsDepthMax').value;
	
	var url_with_changed_parameters = mattyParams.join('/');
	if(queryString != ''){
		url_with_changed_parameters += queryString;
	}
	window.location.href = url_with_changed_parameters;
}


function afterAjaxFunctions(){
	init_slider(parseInt($('defaultMin').innerHTML), parseInt($('defaultMax').innerHTML), parseInt($('actualMin').innerHTML), parseInt($('actualMax').innerHTML));
	var new_Class = new Site();
}

