// JavaScript Document
// WRITTEN FOR IMPERIAL SELECT //
// DEPENDENT ON jquery.js //
var IE = document.all?true:false
var drops = new Array();

function Custom_DropDown(width, input_arr, input_val_arr, default_op) {
	this.width = width;
	var arr = Array();
	var val_array = Array();
	
	var cont = "";
	
	if (input_arr != null) {
		arr = input_arr;
	}
	if (input_val_arr != null) {
		val_array = input_val_arr;
	}
	
	this.id = "";
	drops[drops.length] = this;
	
	
	var option = "";
	var action_func = "";
	
	var input = "";
	
	var disabled = false;
	
	this.resetDrop = function () {
		option = "";	
		
		$("#"+this.id+" .custom_drop_left").html(default_op);
		
		this.disabled();	
	}
	
	this.disabled = function () {
		disabled = true;
		
		$(".custom_drop_left", cont).css("background-image", "url("+path+"images/dropdown/arrow_down.jpg)");	
		$(".custom_drop_left", cont).css("color", "#ffffff");	
		
	}	
	this.enabled = function () {
		disabled = false;
		$(".custom_drop_left", cont).css("background-image", "url("+path+"images/dropdown/arrow_down.jpg)");	
		$(".custom_drop_left", cont).css("color", "#ffffff");	

	}
	
	this.render = function (container, name) {
		this.id = container;
		
		document.getElementById(container).style.position = "relative";
		
		cont = document.createElement("div");
		
		
		var left = document.createElement("div");
		left.className = "custom_drop_left";
		left.style.width = (this.width-12)+"px";
		
		if (IE) {
			left.onclick = this.showOptions;
		}
		else {
			left.addEventListener("click", this.showOptions, true);
		}
		if (arr.length != 0) {
			left.innerHTML = arr[0];	
		}
		if (default_op != "") {
			left.innerHTML = default_op;	
		}
		
		var right =document.createElement("div");
		right.className = "custom_drop_right";
		if (IE) {
			right.onclick = this.showOptions;
		}
		else {
			right.addEventListener("click", this.showOptions, true);
		}
		

		
		var clear = document.createElement("div");
		clear.style.clear = "both";
		clear.style.height = "0px";
		
		
		var drop = document.createElement("div");
		drop.className = "custom_drop_options";
		
		for (i = 0; i < arr.length; i++) {
			var drop_item = document.createElement("div");	
			drop_item.className = "custom_drop_item";
			drop_item.innerHTML = arr[i];
			drop_item.alt = i;
			if (IE) {
				drop_item.onclick = this.setOption;
			}
			else {
				drop_item.addEventListener("click", this.setOption, true);
			}
			drop.appendChild(drop_item);
			
		}
		
		
		cont.appendChild(left);
		cont.appendChild(right);
		cont.appendChild(clear);
		
		cont.appendChild(drop);
		
		document.getElementById(container).appendChild(cont);
		
		if (arr.length == 0) {
			this.disabled();	
		}
		
		input = document.createElement("input");
		input.name = name;
		input.id = name;
		input.type = "hidden";
		
		document.getElementById(container).appendChild(input);
		
	}
	
	var action_func = "";
	
	this.setAction = function (func) {
		action_func = func;
	}

	this.getOptions = function () {
		
		
		return option;
		
	}
	
	this.closeDrop = function () {
		$("#"+this.id+" .custom_drop_options").slideUp(100);
		$("#"+this.id+" .custom_drop_right").css("background-image", "url("+path+"images/dropdown/arrow_down.jpg)");
	}
	
	this.showOptions = function (e) {
		if (!disabled) {
			var obj = "";
			if (e != null) {
				obj = e.target;	
			}
			else {
				obj = event.srcElement;
			}
			
			var id = obj.parentNode.parentNode.id;
			if ($("#"+id+" .custom_drop_options").css("display") == "none") {
				
				for (i = 0; i < drops.length; i++) {
					drops[i].closeDrop();	
				}
				$("#"+id+" .custom_drop_options").slideDown(100);
				
				$("#"+id+" .custom_drop_right").css("background-image", "url("+path+"images/dropdown/arrow_down.jpg)");
				
				current_drop = this;
			}
			else {
				$("#"+id+" .custom_drop_options").slideUp(100);
				$("#"+id+" .custom_drop_right").css("background-image", "url("+path+"images/dropdown/arrow_down.jpg)");
				
				current_drop = "";
			}
		}
			
	}
	
	this.setOption = function (e) {
		var obj = "";
		if (e != null) {
			obj = e.target;	
		}
		else {
			obj = event.srcElement;
		}
		
		var value = obj.innerHTML;
		var id = obj.parentNode.parentNode.parentNode.id;
		option = val_array[obj.alt];
		
		input.value = option;
		$("#"+id+" .custom_drop_left").html(value);
		$("#"+id+" .custom_drop_right").css("background-image", "url("+path+"images/dropdown/arrow_down.jpg)");
		$("#"+id+" .custom_drop_options").slideUp(50);	
		
		if (action_func != "") {
			action_func();
		}
	}
	
	
	this.updateContent = function (arr_input, val_arr_input) {
		arr = arr_input;
		val_arr = val_arr_input;
		
		$("#"+this.id+" .custom_drop_options").html("");
		
		
		
		for (i = 0; i < arr.length; i++) {
			var drop_item = document.createElement("div");	
			drop_item.className = "custom_drop_item";
			drop_item.innerHTML = arr[i];
			drop_item.alt = i;
			if (IE) {
				drop_item.onclick = this.setOption;
			}
			else {
				drop_item.addEventListener("click", this.setOption, true);
			}
			$("#"+this.id+" .custom_drop_options").append(drop_item);
			
		}
		
		
	}

	
	
}
