var SF = {

	element : null,

	currentSet :  null ,
	
	data : Products, // Read from products.js file
	
	init : function( element ){

		SF.element = document.getElementById( element );

		SF.start();
	},

	reset : function(){

		SF.element.innerHTML = "";

		SF.start();
	},

	start : function(){
		
		SF.currentSet = SF.data;

		SF.render();
	},

	go : function(){

		var select = document.getElementById("sf_selector");
		
		var index = parseInt(select.options[select.selectedIndex].value);

		var newSet = SF.currentSet.options[index];

		if( newSet.url !== undefined ){
			window.location.href = newSet.url;
		}
		else {
			SF.currentSet = newSet;
			SF.render();
		}
	},

	render : function(){
		
		SF.element.innerHTML = "";
		
		var label = document.createElement("label");
		label.setAttribute("for","sf_selector");
		label.style.display = "block";
		label.style.margin = "10px 0px";
		label.innerHTML = SF.currentSet.label;

		SF.element.appendChild(label);

		var select = document.createElement("select");
;
		
		for( var i = 0, max = SF.currentSet.options.length; i < max ; i++ ){
			
			var option = document.createElement("option");
			
			option.innerHTML = SF.currentSet.options[i].title;
			option.value = i;
			
			select.appendChild(option);
		}

		select.id = "sf_selector";

		SF.element.appendChild(select);
		
		SF.element.appendChild(document.createElement("br"));
		SF.element.appendChild(document.createElement("br"));

		var go = document.createElement("input");

		go.type = "button";
		go.value = "Go";
		go.style.marginRight = "10px";
		go.onclick = SF.go;
		
		SF.element.appendChild(go);

		var reset = document.createElement("input");
		
		reset.type = "button";
		reset.value = "Reset";
		reset.onclick = SF.reset;
		
		SF.element.appendChild(reset);
		
	}
 
}; // end of Search Filter
