/******************* TEXTBOXES **********************/
var labelSuffixe = "...";

RBS.Form.AddFunction("Onload", initTextBoxes, "");
RBS.Form.AddFunction("OnSubmit", checkTextBoxes, "");

function checkTextBoxes()
{
    var inputs = document.getElementsByTagName("input");
	for (var i = 0; i < inputs.length; i++)
	{
		var input = inputs[i];
		if (input.className == "kdninputtext")
		{
			if (input.value == RBS.Dom.GetElement(input.id + "_DEFAULTLABEL").value + labelSuffixe)
				input.value = "";
		}
	}
}
function initTextBoxes()
{
	var inputs = document.getElementsByTagName("input");
	for (var i = 0; i < inputs.length; i++)
	{
		var input = inputs[i];
		if (input.className == "kdninputtext")
		{
			var inputLabel = RBS.Dom.GetElement(input.id + "_DEFAULTLABEL").value + labelSuffixe;
			input.onfocus = function () {
			    if (this.value == RBS.Dom.GetElement(this.id + "_DEFAULTLABEL").value + labelSuffixe)
			    {
			        this.value = "";
			    }
			};
			input.onblur = function () {
				if (this.value == "")
				{
					this.value = RBS.Dom.GetElement(this.id + "_DEFAULTLABEL").value + labelSuffixe;
				}
			};
			if (input.value == "")
				input.value = inputLabel;
		}
	}
}

/******************** LISTBOXES *******************/
RBS.Form.AddFunction("Onload", initListBoxes, "");
function initListBoxes()
{
	var listboxes = document.getElementsByTagName("div");
	for (var i = 0; i < listboxes.length; i++)
	{
		var listbox = listboxes[i];
		
		if (listbox.className != "select-282")
		    continue;

        var label = getElementByClassName(listbox, "div", "select-282-label");
        var selection = label.innerHTML.replace(/(^\s*)|(\s*$)/g, "");
        var hiddenid = listbox.getAttribute("rel") + "_DEFAULTVALUE";
        var defaultvalue = RBS.Dom.GetElement(hiddenid).value;
        if (selection == defaultvalue)
            label.innerHTML = defaultvalue + labelSuffixe;

		listbox.onclick = function () {
		    var elem = getElementByClassName(this, "div", "select-282-inner-bottom");
		    if (elem.style.display == "block")
		    {
		        elem.style.display = "none";
		    }
		    else
		    {
		        elem.style.display = "block";
		    }
		};
		/*listbox.onblur = function () {
    	    getElementByClassName(this, "div", "select-282-inner-bottom").style.display = "none";
		};*/
    
		var listitems = listbox.getElementsByTagName("a");
		for (var j = 0; j < listitems.length; j++)
		{
		    var listitem = listitems[j];
		    
		    var addedOnClick = function (e) {
		        var obj;
		        if (e.srcElement)
		            obj = e.srcElement;
		        else
		            obj = e.target;
		            
		        if (obj.innerHTML == "&nbsp;")
		            getElementByClassName(obj.parentNode.parentNode.parentNode, "div", "select-282-label").innerHTML = RBS.Dom.GetElement(obj.parentNode.parentNode.parentNode.getAttribute("rel") + "_DEFAULTVALUE").value + labelSuffixe;
		        else
                    getElementByClassName(obj.parentNode.parentNode.parentNode, "div", "select-282-label").innerHTML = obj.innerHTML;
		    };
		    
		    if (listitem.addEventListener)
		        listitem.addEventListener("click", addedOnClick, false);
		    else
		        listitem.attachEvent("onclick", addedOnClick);
		}
	}
}
function getElementByClassName(obj, tag, cl)
{
    var elements = obj.getElementsByTagName(tag);
    for (var i = 0; i < elements.length; i++)
    {
        if (elements[i].className == cl)
            return elements[i];
    }
    return null;
}
