/*
 * This is FieldSelect Component of JavaScript.
 * 
 */


function createSelectDefault(object) {
	var fieldHTML = "";
	var fieldName = object.attr("title"); // Select of Field Name;
	// Set SelectField of value
	var objSelectOp = $(object).children("select").children("option:selected");
	var objSelectText = objSelectOp.val() == "" ? "" : objSelectOp.text();
	var objInput = jQuery('<input id="imp" class="select_default_input" type="text" value="' + objSelectText + '"/>');// object.children("input");

	objInput.addClass("select_default_input");
	if (fieldName != "") {
		object.attr("title", "");
		fieldHTML = '<div class="text_default_title select_default_title" onclick="focusSelectInputText($(this))">' + fieldName + '</div>'
		if (objInput.val() != "") {
			fieldHTML = '<div class="text_default_title select_default_title" style="display:none;" onclick="focusSelectInputText($(this))">' + fieldName + '</div>'
		}
		objInput.addClass("text_default_input_field");
	}
	objInput.width(object.css("width").replace("px","") - 20 - 40);
	object.append(objInput);
	var strHTML = '<div class="select_default_left"></div>'
			+ '<div class="select_default_right"></div>'
			+ '<div class="select_default_middle">' + fieldHTML + object.html()
			+ '</div>'
	object.html(strHTML);
}

// Create Options.
function clickSelectDefaultField(object) {
	var objSelect = $(object).prevAll("select");
	objSelect.prevAll(".select_default_options").remove();

	var optionHTML = '<table cellspacing="0" style="width:100%">';
	var objOptions = objSelect.children("option");
	var optionLength = objOptions.length;
	for ( var i = 0; i < optionLength; i++) {
		objOption = objOptions[i];
		optionHTML = optionHTML
				+ '<tr><td class="select_option" onmouseover="onMouseOverSelect($(this))" onmouseout="onMouseOutSelect($(this))" onclick="onClickSelect($(this))">'
				+ $(objOption).text() + '</td></tr>';
	}
	optionHTML = optionHTML + "</table>";

	var objwidth = objSelect.parents(".select_default").width() - 8;
	var objheight = objSelect.height();
	var downHTML = '<div class="select_default_options" style="width:'
			+ objwidth
			+ 'px;">'
			+ '<div class="select_default_options_back">'
			+ '<img src="images/common/text/fade_background.png" style="width:100%;height:100%;position:absolute;z-index:-1;">'
			+ '<div style="overflow:auto;width:100%;height:100%" onmousedown="$(this).parents(\'.select_default_options\').attr(\'title\',\'true\');">'
			+ optionHTML + '</div>' + '</div>' + '</div>';
	objSelect.parent(".select_default_middle").prepend(downHTML);
	var objTableHeight = objSelect.parents(".select_default").find("table").height();
	objheight = (objheight > objTableHeight || objheight < 30) && objTableHeight != 0 ? objTableHeight : objheight;
	objSelect.parents(".select_default").find(".select_default_options").height(objheight);
}

function onMouseOverSelect(object) {
	$(object).addClass("select_option_over");
}

function onMouseOutSelect(object) {
	$(object).removeClass("select_option_over");
}

function onClickSelect(object) {
	var objParent = $(object).parents(".select_default_middle");
	var optionText = $(object).text();

	var line = $(object).parent("tr").get(0).rowIndex;
	objParent.children("select").children("option")[line].selected = true;
	// alert(objParent.children("select").val());
	optionText = objParent.children("select").val() == "" ? "" : optionText;

	objParent.children("input").focus();
	objParent.children("input").val(optionText);

	$(".select_default_options").remove();
}

function selectDefaultField() {
	if ($(".select_default_options").attr("title") != "true") {
		$(".select_default_options").remove();
	}
	$(".select_default_options").attr("title", "");
}

function focusSelectInputText(object) {
	$(object).css("display", "none");
	$(object).nextAll("input").click();
	$(object).nextAll("input").focus();
}