/*! $Id: data_tables.js 6809 2009-10-29 16:12:15Z bhillebrand $ */
/*global $:false, alert:false, document:false, navigator:false, oCtaHelper:false */
"use strict";

/*navigation start*/
function activateNavigation(element, element_position) {
	/*alert(element_position);*/
	if (navigator.appName == "Microsoft Internet Explorer") {
		if (document.getElementById("dropdownInfobox" + element_position) && document.getElementById("dropdownInfobox" + element_position).style.display == "block") {
			document.getElementById("dropdownInfobox" + element_position).style.display = "none";
		}
	}
	element.getElementsByTagName('ul')[0].style.visibility = "visible";
	/* Do this only, if it's not the first element */
	if (!element_position) {
		element.getElementsByTagName('a')[0].className = "sdtNavigation navigationModels sdtNavigationActive";
	}
}
function deactivateNavigation(element, element_position) {
	var selVariant = eval("document.getElementById('notepadSelectedVersionColumn" + element_position + "').value");
	/*
		element_temp = element;
		element_temp_pos = element_position;
		window.setTimeout("doDeactivateNavigation(element_temp, element_temp_pos)", 1000);
	*/
	element.getElementsByTagName('ul')[0].style.visibility = "hidden";

	if (navigator.appName == "Microsoft Internet Explorer") {
		if (selVariant && selVariant === '0') {
			if (document.getElementById("dropdownInfobox" + element_position) && document.getElementById("dropdownInfobox" + element_position).style.display == "none") {
				document.getElementById("dropdownInfobox" + element_position).style.display = "block";
			}
		}
	}

	if (!element_position) {
		element.getElementsByTagName('a')[0].className = "sdtNavigation navigationModels";
	}
	/*eval("window.setTimeout('doDeactivateNavigation(" + element + ", " + element_position + ")', 10000)");*/
}
/*navigation end*/
function getY(el) {
	var y;
	if (!el) {
		alert("no element:" + el);
		return 100;
	}
	y = el && el.offsetTop;
	if (!el.offsetParent) {
		return y;
	}
	else {
		return y + getY(el.offsetParent);
	}
}
function toggleInfoboxVisibility(position, visibility) {
	var cfgBtn = document.getElementById('trim' + position + 'ConfigurateButton'),
		dropPosition		= document.getElementById("dropdown" +  position).offsetLeft,
		headerPosition,
		headY,
		infoboxDiv			= document.createElement("div"),
		infoboxImageNode	= document.createElement("img"),
		infoboxImageSpan	= document.createElement("span"),
		infoboxText			= document.getElementById('please-select-a-version').firstChild.nodeValue,
		infoboxNode			= document.createTextNode(infoboxText),
		infoboxSpan			= document.createElement("span"),
		k,
		numberCat			= (document.getElementById("modelData_definitions").getElementsByTagName("ul").length) - 2,
		selVariant,
		setBoxTop,
		status,
		
		trimCount = document.getElementById("def_var").getElementsByTagName("li").length;

	if (!position) {
		alert("position is undefined");
	}

	visibility = !!(1 * visibility);
	if (visibility === false) {
		if (cfgBtn) {
			cfgBtn.className = 'buttonHide';
		}
		/*eval("document.getElementById('dropdownInfobox" + position + "').style.display = 'block'");document.getElementById('notepadSelectedVersionColumn" + element_position + "').value*/
		/*infoboxText      = "Please select a version for comparison.";*/

		infoboxImageNode.setAttribute('src', "/assets/images/global/arrowUp.png");
		infoboxImageNode.setAttribute('style', "margin-left:80px");
		infoboxSpan.appendChild(infoboxNode);
		infoboxImageSpan.appendChild(infoboxImageNode);
		infoboxImageSpan.appendChild(infoboxSpan);
		infoboxDiv.appendChild(infoboxImageSpan);
		infoboxDiv.className = "dropdownInfobox" + position;
		infoboxDiv.setAttribute("id", "dropdownInfobox" + position, "1");
		/*infoboxDiv.setAttribute("z-index", "1", "1");*//*ie7 bug fix test */
		infoboxDiv.left = dropPosition;

		eval("document.getElementById('boxDataTable').insertBefore(infoboxDiv, document.getElementById('tableLegend'));");
		if(trimCount > 1)
		{		
				document.getElementById("dropdownInfobox" + position).style.display = "block";
		}
		/*document.getElementById("dropdownInfobox" + position).style.zIndex = "1";*/
	}
	else if (visibility === true) {
		for (k = 1; k <= numberCat; k += 1) {
			headerPosition = document.getElementById("categoryToggleButton" + k).offsetTop;
			status = document.getElementById("categoryToggleButton" + k).getElementsByTagName("span")[0].style.backgroundPosition;

			if (status == "0px -39px") {
				headY = $("#categoryToggleButton" + k).position();
				setBoxTop = headY.top + 55 + "px";
				selVariant = eval("document.getElementById('notepadSelectedVersionColumn" + position + "').value");
				if (selVariant === '0' && trimCount > 1) {
						eval("document.getElementById('dropdownInfobox" + position + "').style.top = setBoxTop;");
						eval("document.getElementById('dropdownInfobox" + position + "').style.display = 'block';");
				}
				k = numberCat;
			}
		}
	}
}
function checkDropdownClasses() {
	var	currentClass,
		firstCounter,
		h,
		j;

	for (h = 1; h <= 3; h += 1) {
		firstCounter = 0;
		for (j = 0; j < document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li").length; j += 1) {
			currentClass = document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].className;
			if (currentClass == "first") {
				firstCounter = firstCounter + 1;
				if ((firstCounter > 1) && (document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].className == "first")) {
					/*alert("repair firstClasses for dropdown " + h);*/
					document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].removeAttribute("class");
				}
			}

			if (currentClass != "buttonHide" && currentClass != "first") {
				if (firstCounter === 0) {
					document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].className = "first";
					firstCounter = firstCounter + 1;
				}
			}
		}
	}

}
function checkDropdowns() {
	var h,
		i,
		j,
		selVariant,
		selVariantNr,
		trimCount = document.getElementById("def_var").getElementsByTagName("li").length;
	for (i = 1; i <= trimCount; i += 1) {
		if (i <= 3) {
			selVariantNr = eval("document.getElementById('notepadSelectedVersionColumn" + i + "').value");
			selVariant = document.getElementById("def_var").getElementsByTagName("li")[i - 1].firstChild.nodeValue;

			if (selVariantNr > 0) {
				for (h = 2; h <= 3; h += 1) {
					for (j = 0; j < document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li").length; j += 1) {

						if (document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].innerHTML == selVariant) {
							document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].className = "buttonHide";
						}
					}
				}
			}
		}
	}
}
function checkDropdowns2() {
	var	h,
		i,
		j,
		k,
		selVariantNr,
		trimCount		= document.getElementById("def_var").getElementsByTagName("li").length;

	for (i = 1; i <= trimCount; i += 1) {
		if (i <= 3) {
			selVariantNr = eval("document.getElementById('notepadSelectedVersionColumn" + i + "').value");
			if (selVariantNr === 0) {
				/* alert("zero version for " + i);*/
				document.getElementById("dropdown" + i).getElementsByTagName("ul")[0].getElementsByTagName("li")[0].getElementsByTagName("span")[0].className = "dropdownActive";
				document.getElementById("dropdown" + i).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].getElementsByTagName("span")[0].onmouseover = function () {
					this.className = 'dropdownActive';
				};

				/*test for ie6
				document.getElementById("dropdown" + i).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].getElementsByTagName("span")[0].onmouseout =
				function() {
				if ((document.getElementById("dropdownInfobox" + i)) && (document.getElementById("dropdownInfobox" + i).style.display != "none")) {this.className = "dropdownPassive";}};*/

				/* not working in ie6 - important */
				document.getElementById("dropdown" + i).getElementsByTagName("ul")[0].getElementsByTagName("li")[0].getElementsByTagName("span")[0].onmouseout =
				function () {
					if ((document.getElementById('dropdownInfobox" + i + "')) && (document.getElementById('dropdownInfobox" + i + "').style.display != 'none')) {
						this.className = 'dropdownPassive';
					}
				};
				/*eval("if ((document.getElementById('dropdownInfobox" + i + "')) && (document.getElementById('dropdownInfobox" + i + "').style.display != 'none')) {this.className = 'dropdownPassive'}");*/
			}

			if (selVariantNr > 0) {
				for (h = 1; h <= 3; h += 1) {
					for (j = 0; j < document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li").length; j += 1) {
						if ((document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].innerHTML == document.getElementById("def_var").getElementsByTagName("li")[selVariantNr - 1].firstChild.nodeValue) && (i != h)) {
							document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].className = "buttonHide";
							if (j === 0) {
								for (k = 0; k < document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li").length; k += 1) {
									if (document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[k].className != "buttonHide") {

										document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[k].className = "first";
										k = document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li").length;
									}
								}
							}
						}
						else if ((document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].innerHTML == document.getElementById("def_var").getElementsByTagName("li")[selVariantNr - 1].firstChild.nodeValue) && (i == h)) {
							document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].className = "dropdownActive";
							document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].onmouseout = function () {
								this.className = 'dropdownActive';
							};
						}
						else if ((document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].innerHTML != document.getElementById("def_var").getElementsByTagName("li")[selVariantNr - 1].firstChild.nodeValue) && (i == h)) {
							document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].className = "dropdownPassive";
							document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[j].getElementsByTagName("span")[0].onmouseout = function () {
								this.className = 'dropdownPassive';
							};
						}
					}
				}
			}
		}
	}
	checkDropdownClasses();
}
function updateDataCells(value1, value2, value3, className, point_element) {
	if (value1 == value2) {
		if (value2 == value3) {
			$(point_element).append("<td colspan='3' class='valueContentThreeColumns " + className + "'><span class='valueContent'>" + value1 + "</span></td>");
		}
		else {
			$(point_element).append("<td colspan='2' class='valueContentTwoColumns " + className + "'><span class='valueContent'>" + value1 + "</span></td>");
			if (value3 == "&nbsp;") {
				$(point_element).append("<td class='valueContentOneColumn empty " + className + "'><span>" + value3 + "</span></td>");
			}
			else {
				$(point_element).append("<td class='valueContentOneColumn " + className + "'><span class='valueContent'>" + value3 + "</span></td>");
			}

		}
	}
	else {
		$(point_element).append("<td class='valueContentOneColumn " + className + "'><span class='valueContent'>" + value1 + "</span></td>");
		if (value2 == value3) {
			if (value2 == "&nbsp;") {
				$(point_element).append("<td colspan='2' class='empty valueContentTwoColumns " + className + "'><span>" + value2 + "</span></td>");
			}
			else {
				$(point_element).append("<td colspan='2' class='valueContentTwoColumns " + className + "'><span>" + value2 + "</span></td>");
			}
		}
		else {
			if (value2 == "&nbsp;") {
				$(point_element).append("<td class='empty valueContentOneColumn " + className + "'><span>" + value2 + "</span></td>");
			}
			else {
				$(point_element).append("<td class='valueContentOneColumn " + className + "'><span class='valueContent'>" + value2 + "</span></td>");
			}
			if (value3 == "&nbsp;") {
				$(point_element).append("<td class='empty valueContentOneColumn " + className + "'><span>" + value3 + "</span></td>");
			}
			else {
				$(point_element).append("<td class='valueContentOneColumn " + className + "'><span class='valueContent'>" + value3 + "</span></td>");
			}

			/*$(point_element).append("<td class='" + className + "'><span class='valueContent'>" + value3 + "</span></td>");*/
		}
	}
}

/************************************
*  Write DataTableContents			*
************************************/
function writeDataTableCont() {
	var	category_element,
		category_element_array,
		className,
		column1version,
		column2version,
		column3version,
		j,
		k,
		numberCat,
		point_element,
		point_element_parent,
		selVariant,
		trCounter,
		value1,
		value2,
		value3,
		trimCount		= document.getElementById("def_var").getElementsByTagName("li").length;

	/* Read Variants (each col) */
	for (j = 1; j <= 3; j += 1) {
		/* Check, if selected variants are loaded: */
		selVariant = eval("document.getElementById('notepadSelectedVersionColumn" + j + "').value");
		if (selVariant > 0) { /* 0 = standart-text to choose a model */
			toggleInfoboxVisibility(j, selVariant);
			
			if (!eval("document.getElementById('cat_1_var_" + selVariant + "')")) {

				/*ajaxLoadV(j);
				return;*/
			}
		}
		else if (selVariant <= 0) {
			toggleInfoboxVisibility(j, selVariant);
						
			/*eval("document.getElementById('trim" + j + "ConfigurateButton').className = 'buttonHide'");*/
		}

	}

	/* Get number of categories: */
	numberCat = (document.getElementById("modelData_definitions").getElementsByTagName("ul").length) - 2;
	for (j = 1; j <= numberCat; j += 1) {
		trCounter = $("#modelDataTable_category_" + j + " > tbody").children("tr").length;
		category_element = eval("document.getElementById('cat_" + j + "_var_1')");
		category_element_array = category_element.getElementsByTagName("li");
		/* Get number of elements in this category: */
		for (k = 0; k < category_element_array.length; k += 1) {
			if ((k + 1) == category_element_array.length) {
				className = " last";
			}
			else {
				className = "";
			}

			column1version = document.getElementById("notepadSelectedVersionColumn1").value;
			column2version = document.getElementById("notepadSelectedVersionColumn2").value;
			column3version = document.getElementById("notepadSelectedVersionColumn3").value;

			if (document.getElementById("cat_" + j + "_var_" + column1version)) {
				value1 = document.getElementById("cat_" + j + "_var_" + column1version).getElementsByTagName("li")[k].innerHTML;
			}
			else {
				value1 = "&nbsp;";
			}
			if (document.getElementById("cat_" + j + "_var_" + column2version)) {
				value2 = document.getElementById("cat_" + j + "_var_" + column2version).getElementsByTagName("li")[k].innerHTML;
			}
			else {
				value2 = "&nbsp;";
			}
			if (document.getElementById("cat_" + j + "_var_" + column3version)) {
				value3 = document.getElementById("cat_" + j + "_var_" + column3version).getElementsByTagName("li")[k].innerHTML;
			}
			else {
				value3 = "&nbsp;";
			}

			point_element_parent = document.getElementById("modelDataTable_category_" + j);
			trCounter = $("#modelDataTable_category_" + j + " > tbody").children("tr").length;


			if ($("#modelDataTable_category_" + j + " > tbody").children("tr")[(k)]) {
				point_element = $("#modelDataTable_category_" + j + " > tbody").children("tr")[(k)];
			}
			else {
				alert("Construction Error: Missmatching numbers of index and variation-items!\n\nProcess terminated.");
				return;
			}

			$(point_element).children(".valueContentOneColumn, .valueContentTwoColumns, .valueContentThreeColumns").remove();

			updateDataCells(value1, value2, value3, className, point_element);

		} /* for */
	}
	/*$(".valueContent").animate({
	opacity: '1'
	}, "fast"); */
	checkDropdowns();
}
function toggleCategoryVisibility(element, category_element_id) {
	var	box,
		ieversion,
		numberCat,
		
		trimCount		= document.getElementById("def_var").getElementsByTagName("li").length;

	if (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) {
		ieversion = 1 * (RegExp.$1);
	}

	category_element_id = element.categoryPositionId;
	element = element.getElementsByTagName("span")[0];

	eval("document.getElementById('dropdownInfobox2').style.display = 'none';");
	eval("document.getElementById('dropdownInfobox3').style.display = 'none';");


	numberCat = (document.getElementById("modelData_definitions").getElementsByTagName("ul").length) - 2;

	if (element.style.backgroundPosition == "0px -39px") {
		$("#wrapperModelData_category_" + category_element_id).slideUp(function () {
			
			if(trimCount === 2)
			{
				toggleInfoboxVisibility(2, 1);
			}
			else
			{
				for (box = 2; box <= 3; box += 1) {
				toggleInfoboxVisibility(box, 1);
				}
			}
		});

		if (category_element_id != numberCat) {
			$("#closerGraphic_category_" + category_element_id).css("display", "block");
		}
		/*$(element).css("backgroundPosition", "2px 0px");*/
		if (navigator.appName == "Netscape" || (ieversion && ieversion > "6")) {
			$(element).css("backgroundPosition", "2px 0px");
		}
		else {
			$(element).css("backgroundImage", "url(/assets/images/global/arrows-data-tables-headline.png)");
			$(element).css("backgroundPosition", "2px 0px");
		}
	}
	else {
		$("#closerGraphic_category_" + category_element_id).css("display", "none");
		/*$("#wrapperModelData_category_" + category_element_id).slideDown();*/
		$("#wrapperModelData_category_" + category_element_id).slideDown(function () {
			if(trimCount === 2)
			{
				toggleInfoboxVisibility(2, 1);
			}
			else
			{
				for (box = 2; box <= 3; box += 1) {
				toggleInfoboxVisibility(box, 1);
				}
			}
			/*for (box = 2; box <= 3; box += 1) {
				toggleInfoboxVisibility(box, 1);
			}*/
		});

		if (navigator.appName == "Netscape" || (ieversion && ieversion > "6")) {
			$(element).css("backgroundPosition", "0px -39px");
		}
		else {
			$(element).css("backgroundPosition", "0px -39px");
			$(element).css("backgroundImage", "url(/assets/images/global/arrows-data-tables-active.png)");
		}

		/*$(element).css("backgroundImage", "url(/assets/images/global/arrows-data-tables-active.png)");
		element.style.backgroundPosition = "0px -39px";$(element).css("backgroundPosition", "0px -39px");element.className = "activeCategory";
		$(element).css("backgroundPosition", "0px -39px");*/
	}
}

/************************************
*  Generate DataTable				*
************************************/
function writeDataTableCat() {
	/*alert("start function writeDataTableCat");*/
	/* Number of Categories: All ul in XML, minus 2 definition ul for variants and trims */
	var	categoryPosition,
		containerSaveParams,
		contentValue,
		h,
		k,
		indexValueInfo,
		infoElementValue,
		infoFeatureCol,
		infoIconCol,
		infoIconRow,
		infoImageNode,
		infoItemsNumber,
		infoTable,
		infoTableBody,
		modelDataTableBody	= document.createElement("tbody"),
		newChildElemCol,
		newChildElemColContxt,
		newElemCloserImg,
		newElemHeadline,
		newElemHeadlineContent,
		newElemItemCol,
		newElemItemRow,
		newElemItemTable,
		newElemItemTableBody,
		newElemItemWrapper,
		newIndexCol,
		newIndexElementValue,
		newIndexRow,
		newIndexValue,
		newSaveContainer,
		newSaveItem1,
		newSaveItem2,
		newSaveItem3,
		numberCat			= (document.getElementById("modelData_definitions").getElementsByTagName("ul").length) - 2,
		popupArrowImg,
		popupArrowWrapper,
		popupBottom,
		popupBottomImg,
		popupContainer,
		popupContainerHolder,
		popupCopyContent,
		popupCopyWrapper,
		popupHeadContent,
		popupHeadWrapper,
		popupImg,
		popupImgWrapper,
		popupTop,
		popupTopImg,
		popupWrapper,
		position			= document.getElementById("modelDataTable"),
		thisCategoryItemsNumber;

	for (h = 0; h < numberCat; h += 1) {
		/* Create HTML-structure: */
		newElemHeadline         = document.createElement("tr");
		newChildElemCol         = document.createElement("td");
		newChildElemColContxt   = document.createElement("span");
		newChildElemColContxt.className = "category";

		newElemHeadline.setAttribute("id", "categoryToggleButton" + (h + 1), "1");

		categoryPosition = h + 1;

		newElemHeadline.categoryPositionId = categoryPosition;
		newElemHeadline.onclick = function () {
			toggleCategoryVisibility(this);
		};
		newElemHeadline.className = "categoryHeadline";

		/*ie6 test*/
		newElemHeadline.onmouseover = function () {
			this.className = 'categoryHeadlineHover categoryHeadline';
		};
		newElemHeadline.onmouseout = function () {
			this.className = 'categoryHeadline';
		};
		/*eval("newElemHeadline.onmouseover = function () {this.className = 'categoryHeadlineHover categoryHeadline'}");
		eval("newElemHeadline.onmouseout = function () {this.className = 'categoryHeadline'}")
		ie6 test end*/

		contentValue            = eval("document.getElementById('cat_" + (h + 1) + "').getElementsByTagName('li')[0].firstChild.nodeValue");
		newElemHeadlineContent  = document.createTextNode(contentValue);


		/* Build: */
		newChildElemColContxt.appendChild(newElemHeadlineContent);
		newChildElemCol.appendChild(newChildElemColContxt);
		newElemHeadline.appendChild(newChildElemCol);
		modelDataTableBody.appendChild(newElemHeadline);

		/*position.appendChild(newElemHeadline);*/

		newElemItemRow          = document.createElement("tr");
		newElemItemRow.className = "category";

		modelDataTableBody.appendChild(newElemItemRow);

		newElemItemCol          = document.createElement("td");
		newElemItemWrapper      = document.createElement("div");
		eval("newElemItemWrapper.setAttribute('id', 'wrapperModelData_category_" + (h + 1) + "', '1')");
		newElemItemWrapper.className = "categoryContent";
		newElemItemTable        = document.createElement("table");
		eval("newElemItemTable.setAttribute('id', 'modelDataTable_category_" + (h + 1) + "', '1')");
		newElemItemTable.setAttribute("cellspacing", "0", "0");
		newElemItemTable.setAttribute("cellpadding", "0", "0");
		newElemItemTableBody    = document.createElement("tbody");

		/* Index: */
		thisCategoryItemsNumber = eval("document.getElementById('cat_" + (h + 1) + "').getElementsByTagName('li').length");
		infoItemsNumber         = eval("if (document.getElementById('featureInfo')) {document.getElementById('featureInfo').getElementsByTagName('li').length}else{0}");

		for (k = 0; k < (thisCategoryItemsNumber - 1); k += 1) {
			newIndexRow = document.createElement("tr");
			newIndexCol = document.createElement("td");
			infoTable   = document.createElement("table");
			infoTable.setAttribute("cellspacing", "0", "0");
			infoTable.setAttribute("cellpadding", "0", "0");
			infoTable.className = "infoTable";
			infoTableBody   = document.createElement("tbody");
			infoFeatureCol  = document.createElement("td");
			infoIconCol     = document.createElement("td");
			infoIconRow     = document.createElement("tr");
			infoFeatureCol.className = "infoTableFeature";
			infoIconCol.className = "infoTableIcon";
			infoImageNode   = document.createElement("img");
			infoImageNode.setAttribute('src', "/assets/images/global/info.png");
			/*infoImageNode.setAttribute('style', "margin-left:80px");   */
			infoImageNode.className = "infoTableIcon";

			infoIconCol.appendChild(infoImageNode);
			infoIconRow.appendChild(infoFeatureCol);
			infoIconRow.appendChild(infoIconCol);
			infoTableBody.appendChild(infoIconRow);
			infoTable.appendChild(infoTableBody);

			popupWrapper            = document.createElement("div");
			popupTop                = document.createElement("div");
			popupTopImg             = document.createElement("img");
			popupTopImg.setAttribute('src', "/assets/images/global/infoTop.png");
			popupBottom             = document.createElement("div");
			popupBottomImg          = document.createElement("img");
			popupBottomImg.setAttribute('src', "/assets/images/global/infoBottom.png");
			popupArrowWrapper       = document.createElement("div");
			popupArrowImg           = document.createElement("img");
			popupArrowImg.setAttribute('src', "/assets/images/global/popupArrow.png");
			popupContainerHolder    = document.createElement("div");
			popupContainer          = document.createElement("div");
			popupHeadWrapper        = document.createElement("div");
			popupImgWrapper         = document.createElement("div");
			popupCopyWrapper        = document.createElement("div");
			popupImg                = document.createElement("img");
			popupImg.setAttribute('src', "/assets/images/global/models/lacetti-5d/pop1.gif");
			popupHeadContent        = document.createTextNode('Headline for the first popup');
			popupCopyContent        = document.createTextNode('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque pharetra. Donec ultrices, sapien sagittis scelerisque placerat, est purus lobortis odio, sit amet molestie sapien lorem sit amet diam.');

			popupWrapper.appendChild(popupArrowWrapper);
			popupWrapper.appendChild(popupContainerHolder);
			popupArrowWrapper.appendChild(popupArrowImg);
			popupWrapper.className = "popupWrapper";
			popupTop.className = "popupTop";
			popupTop.appendChild(popupTopImg);
			popupBottom.appendChild(popupBottomImg);
			popupBottom.className = "popupBottom";
			popupArrowWrapper.className = "popupArrowWrapper";
			popupContainerHolder.className = "popupContainerHolder";
			popupHeadWrapper.className = "popupHead";
			popupImgWrapper.className = "popupImg";
			popupCopyWrapper.className = "popupCopy";
			popupContainerHolder.appendChild(popupTop);
			popupContainerHolder.appendChild(popupContainer);
			popupContainerHolder.appendChild(popupBottom);
			popupContainer.appendChild(popupHeadWrapper);
			popupContainer.appendChild(popupImgWrapper);
			popupContainer.appendChild(popupCopyWrapper);
			popupHeadWrapper.appendChild(popupHeadContent);
			popupImgWrapper.appendChild(popupImg);
			popupCopyWrapper.appendChild(popupCopyContent);
			popupContainer.className = "popupContainer popupMiddleFilter";
			eval("popupWrapper.setAttribute('id', 'popup_cat_" + (h + 1) + "_row_" + k + "', '1')");
			eval("infoImageNode.onmouseover = function () {infoImageNode.className = 'infoIconHover'; if (document.getElementById('popup_cat_" + (h + 1) + "_row_" + k + "')) {document.getElementById('popup_cat_" + (h + 1) + "_row_" + k + "').className = 'popupWrapper buttonShow'; var popTop = getY(this); if (popTop<760) {document.getElementById('popup_cat_" + (h + 1) + "_row_" + k + "').getElementsByTagName('div')[1].className = 'popupContainerHolderTop buttonShow';}else {document.getElementById('popup_cat_" + (h + 1) + "_row_" + k + "').getElementsByTagName('div')[1].className = 'popupContainerHolder buttonShow';}; }}");
			eval("infoImageNode.onmouseout = function () {infoImageNode.className = 'infoIconHover'; if (document.getElementById('popup_cat_" + (h + 1) + "_row_" + k + "')) {document.getElementById('popup_cat_" + (h + 1) + "_row_" + k + "').className = 'popupWrapper buttonHide'}}");

			if (k < (thisCategoryItemsNumber - 2)) {
				newIndexCol.className = "index";
			}
			else {
				newIndexCol.className = "index last";
			}

			newIndexValue           = eval("document.getElementById('cat_" + (h + 1) + "').getElementsByTagName('li')[" + (k + 1) + "].firstChild.nodeValue");
			indexValueInfo = newIndexValue.replace(/'/g, "test");

			eval("if (document.getElementById('featureInfo')) {for (i = 0;i<infoItemsNumber;i += 1) {if (newIndexValue == document.getElementById('featureInfo').getElementsByTagName('li')[i].innerHTML) {newIndexCol.className = newIndexCol.className.concat(' infoTableHolder')}else{}}}");

			newIndexElementValue    = document.createTextNode(newIndexValue);
			infoElementValue    = document.createTextNode("testing infobox");

			eval("if (newIndexCol.className.indexOf('infoTableHolder') != '-1') {newIndexCol.appendChild(infoTable);infoFeatureCol.appendChild(newIndexElementValue);infoIconCol.appendChild(popupWrapper)}else{newIndexCol.appendChild(newIndexElementValue);}");

			/*newIndexCol.appendChild(newIndexElementValue);*/
			newIndexRow.appendChild(newIndexCol);
			newElemItemTableBody.appendChild(newIndexRow);
		}

		newElemCloserImg        = document.createElement("div");
		eval("newElemCloserImg.setAttribute('id', 'closerGraphic_category_" + (h + 1) + "', '1')");
		newElemCloserImg.className = "closerGraphic";

		/* Build: */
		newElemItemTable.appendChild(newElemItemTableBody);
		newElemItemWrapper.appendChild(newElemItemTable);
		newElemItemCol.appendChild(newElemItemWrapper);
		newElemItemCol.appendChild(newElemCloserImg);
		newElemItemRow.appendChild(newElemItemCol);

	}

	position.appendChild(modelDataTableBody);
	/* Add SaveParams category_element_id*/
	containerSaveParams = document.getElementById("modelData_valuesContainer");
	/* Generate: */
	newSaveContainer    = document.createElement("form");
	newSaveItem1        = document.createElement("input");
	newSaveItem1.setAttribute("type", "hidden", "0");
	newSaveItem1.setAttribute("id", "notepadSelectedVersionColumn1", "1");
	newSaveItem1.setAttribute("value", "1", "0");
	newSaveItem2        = document.createElement("input");
	newSaveItem2.setAttribute("type", "hidden", "0");
	newSaveItem2.setAttribute("id", "notepadSelectedVersionColumn2", "1");
	newSaveItem2.setAttribute("value", "0", "0");
	newSaveItem3        = document.createElement("input");
	newSaveItem3.setAttribute("type", "hidden", "0");
	newSaveItem3.setAttribute("id", "notepadSelectedVersionColumn3", "1");
	newSaveItem3.setAttribute("value", "0", "0");

	/* Build: */
	newSaveContainer.appendChild(newSaveItem1);
	newSaveContainer.appendChild(newSaveItem2);
	newSaveContainer.appendChild(newSaveItem3);
	containerSaveParams.appendChild(newSaveContainer);

	/* Write Col Variants in Save Form:
	document.getElementById("notepadSelectedVersionColumn1").value = 1;*/
	/*document.getElementById("notepadSelectedVersionColumn2").value = 2;
	document.getElementById("notepadSelectedVersionColumn3").value = 3;*/

	/* Fill DataTable numberCat
	$("#closerGraphic_category_6").css("display", "none");*/
	$("#closerGraphic_category_" + numberCat).css("display", "none");
	writeDataTableCont();
}
function dropdownActivate(version, column) {
	var h,
		i,
		k,
		versionEntry;

	for (h = 1; h <= 3; h += 1) {
		for (i = 0; i < document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li").length; i += 1) {
			if (document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].getElementsByTagName("span")[0].innerHTML == version) {
				versionEntry = i;
				for (k = 0; k < versionEntry; k += 1) {
					if (document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[k].className.indexOf('first') != -1) {
						/*alert("dropdown " + h + ", version found at position " + versionEntry +  ", first visible at position " + k);*/
					}
				}
				document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].className = "buttonShow";

				if (h == column) {
					document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].getElementsByTagName("span")[0].className = "dropdownPassive";
					document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].getElementsByTagName("span")[0].onmouseover = function () {
						this.className = 'dropdownActive';
					};
					document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].getElementsByTagName("span")[0].onmouseout = function () {
						this.className = 'dropdownPassive';
					};
					if (version === 0) {
						document.getElementById("dropdown" + h).getElementsByTagName("ul")[0].getElementsByTagName("li")[0].getElementsByTagName("span")[0].className = "dropdownActive";
					}
				}
			}
		}
	}
}
function doUpdateModelDataValues(column, version, element) {
	/*alert("doUpdateModelDataValues column " + column);*/
	var	category_element,
		category_element_array,
		className,
		column1version			= document.getElementById("notepadSelectedVersionColumn1").value,
		column2version			= document.getElementById("notepadSelectedVersionColumn2").value,
		column3version			= document.getElementById("notepadSelectedVersionColumn3").value,
		h,
		i,
		numberCat				= (document.getElementById("modelData_definitions").getElementsByTagName("ul").length) - 2,
		point_element,
		point_element_parent,
		value1,
		value2,
		value3;

	for (h = 1; h <= numberCat; h += 1) {
		category_element		= eval("document.getElementById('cat_' + h)");
		category_element_array = category_element.getElementsByTagName("li");
		for (i = 0; i < (category_element_array.length - 1); i += 1) {

			if ((i + 2) == category_element_array.length) {
				className = " last";
			}
			else {
				className = "";
			}
			if (column1version !== '0') {
				value1 = document.getElementById("cat_" + h + "_var_" + column1version).getElementsByTagName("li")[i].innerHTML;
			}
			else {
				value1 = "&nbsp;";
			}
			if (column2version !== '0') {
				value2 = document.getElementById("cat_" + h + "_var_" + column2version).getElementsByTagName("li")[i].innerHTML;
			}
			else {
				value2 = "&nbsp;";
			}
			if (column3version !== '0') {
				value3 = document.getElementById("cat_" + h + "_var_" + column3version).getElementsByTagName("li")[i].innerHTML;
			}
			else {
				value3 = "&nbsp;";
			}

			point_element_parent = document.getElementById("modelDataTable_category_" + h);
			point_element = $("#modelDataTable_category_" + h + " > tbody").children("tr")[(i)];
			/*point_element = point_element_parent.getElementsByTagName("tr")[(i)];*/

			$(point_element).children(".valueContentOneColumn, .valueContentTwoColumns, .valueContentThreeColumns").remove();

			updateDataCells(value1, value2, value3, className, point_element);

		} /* for */
	}	/* for */

	checkDropdowns2();
}
function updateModelDataValues(column, version, element) {
	var	buttonText,
		buttonTextTrimmed,
		col,
		confBtn,
		config,
		configBtn,
		confLinks,
		ctaButtons,
		doc						= document,
			compareCopy				= doc.getElementById('compare-with').firstChild.nodeValue,
		dropDownFirstElement,
		i,
		insertPosition,
		new_version_name,
		selectCopy				= doc.getElementById('select').firstChild.nodeValue,
		testli,
		testspan,
		testvalue,
		testvalueText,
		trimConfigureLink,
		trimname;

	if (element.dropdownPositionID) {
		version = element.dropdownPositionID;
	}
	if (element.variantPositionID) {
		column  = element.variantPositionID;
	}

	if (element.innerHTML == compareCopy && element.id != "selectedValueColumn1") {
		version = 0;
	}

	col = doc.getElementById("selectedValueColumn" + column);
	if (version !== 0) {
		dropdownActivate(col.innerHTML, column);
		/*test*/
		new_version_name = doc.getElementById("def_var").getElementsByTagName("li")[version - 1].innerHTML;
		col.innerHTML = new_version_name;
	}
	else {
		dropdownActivate(col.innerHTML, column);
		col.innerHTML = selectCopy;
	}
	/*dropdown test */
	insertPosition = doc.getElementById("dropdown" + column).getElementsByTagName("li")[0].getElementsByTagName("ul")[0].getElementsByTagName("li")[0];
	testvalueText = compareCopy;
	/*if (column != 1 && insertPosition.getAttribute("selectText") != "")*/
	if (column != 1 && insertPosition.getElementsByTagName("span")[0].innerHTML != testvalueText) {
		dropDownFirstElement = doc.getElementById("dropdown" + column).getElementsByTagName("li")[0].getElementsByTagName("ul")[0];
		/*testvalueText     = "Compare with";*/
		testvalue = doc.createTextNode(testvalueText);
		testli = doc.createElement("li");
		testspan = doc.createElement("span");

		testspan.onclick = function () {
			updateModelDataValues(column, version, this);
		};
		testspan.appendChild(testvalue);
		testli.appendChild(testspan);
		testli.className = "first";
		testli.selectText = "yes";

		testspan.onmouseover = function () {
			this.className = 'dropdownActive';
		};
		testspan.onmouseout = function () {
			this.className = 'dropdownPassive';
		};
		/*insertPosition.removeAttribute("class");*/

		if (dropDownFirstElement.getElementsByTagName("li")[0].getElementsByTagName("span")[0].innerHTML != testvalueText) {
			insertPosition.removeAttribute("class");
			dropDownFirstElement.insertBefore(testli, insertPosition);
		}
	}

	$(element).parents(".flyout").css("visibility", "hidden");

	eval("doc.getElementById('notepadSelectedVersionColumn" + column + "').value = '" + version + "'");

	/* show or hide configure trim buttons */
	if (version === 0) {
		confBtn = doc.getElementById('trim' + column + 'ConfigurateButton');
		if (confBtn) {
			confBtn.className = 'buttonHide';
		}
		/* display select-infobox */
		toggleInfoboxVisibility(column, 1);
	}
	else {
		if (doc.getElementById("dropdownInfobox" + column)) {
			doc.getElementById("dropdownInfobox" + column).style.display = "none";
			for (i = 0; i < doc.getElementById("dropdown" + column).getElementsByTagName("ul")[0].getElementsByTagName("li").length; i += 1) {
				if (doc.getElementById("dropdown" + column).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].className == "first") {
					doc.getElementById("dropdown" + column).getElementsByTagName("ul")[0].getElementsByTagName("li")[i].removeAttribute("class");
				}
			}
			doc.getElementById("dropdown" + column).getElementsByTagName("ul")[0].getElementsByTagName("li")[0].className = "first";
		}

		if (doc.getElementById("def_trim").getElementsByTagName("li")[version - 1].innerHTML != '') {
			trimname = doc.getElementById("def_trim").getElementsByTagName("li")[version - 1].firstChild.nodeValue;
		}
		else {
			trimname = "";
		}

		confLinks = doc.getElementById('configuratorLinks');
		if (confLinks) {
			trimConfigureLink = confLinks.getElementsByTagName('ul')[1].getElementsByTagName('li')[version - 1].firstChild.nodeValue;
			/* tmp fix above to work with 2 different versions of tech. data pages added on 7/27/09 for ES  */
			/* use declaration below when updates for group 1 countries are complete */
			/*trimConfigureLink = confLinks.getElementsByTagName('li')[version].firstChild.nodeValue;*/
			/*trimConfigureLink = confLinks.getElementsByTagName('li')[version - 1].firstChild.nodeValue;*/

			config = doc.getElementById('trim-configure').firstChild.nodeValue;
			/*buttonText = config.replace(/@@/, trimname);
			buttonText.trim();*/
			if (doc.getElementById("def_trim").getElementsByTagName("li")[version - 1].innerHTML != "") {
				buttonText = config.replace(/@@/, trimname);
			}
			else {
				buttonText = config.replace(/@@/, trimname);
				if (buttonText.charCodeAt(0) == "32") {
					buttonTextTrimmed = buttonText.substring(1);
					buttonText = buttonTextTrimmed;
				}
				buttonText = buttonText.slice(0, 1).toUpperCase() + buttonText.slice(1);
			}
			/*config = "Configure ";str = str.slice(0, 1).toUpperCase() + str.slice(1);
			buttonText = config.concat(trimname);*/

			ctaButtons = $("#configureButtonContainer").find(".button");

			$.each(ctaButtons, function () {
				$(this).children().children("img").css("height", "auto");
				$(this).css("height", "auto");
			});

			configBtn = doc.getElementById('trim' + column + 'ConfigurateButton');
			configBtn.getElementsByTagName('strong')[0].innerHTML = trimname;
			configBtn.getElementsByTagName('a')[0].setAttribute('href', trimConfigureLink, 1);
			$(configBtn).addClass('buttonShow');

			/* if the oCtaHelper object is loaded, do a group refresh to cover possible changes in height by changed content length */
			if (typeof oCtaHelper === 'object' && $.isFunction(oCtaHelper.refreshGroup)) {
				oCtaHelper.refreshGroup(ctaButtons);
			}
		}
	}

	$(".valueContent").each(function () {
		$(this).animate({
			opacity: '0'
		}, "fast");
	}, doUpdateModelDataValues(column, version, element));
}
function addCompareCopy() {
	var	compareCopy		= document.getElementById('compare-with').firstChild.nodeValue,
		dropDownFirstElement,
		h,
		insertPosition,
		testli,
		testspan,
		testvalue;
	/*var compareCopy       = "Compare with";*/
	for (h = 2; h <= 3; h += 1) {
		insertPosition		= document.getElementById("dropdown" + h).getElementsByTagName("li")[0].getElementsByTagName("ul")[0].getElementsByTagName("li")[0];
		dropDownFirstElement = document.getElementById("dropdown" + h).getElementsByTagName("li")[0].getElementsByTagName("ul")[0];
		testvalue			= document.createTextNode(compareCopy);
		testli				= document.createElement("li");
		testspan			= document.createElement("span");

		if (h === 2)	{
			testspan.onclick = function () {
				updateModelDataValues(2, 0, this);
			};
		}
		else {
			testspan.onclick = function () {
				updateModelDataValues(3, 0, this);
			};
		}

		testspan.onmouseover = function () {
			this.className = 'dropdownActive';
		};
		testspan.appendChild(testvalue);

		testspan.className = "dropdownActive";
		testli.appendChild(testspan);
		testli.className = "first";
		testli.selectText = "yes";
		insertPosition.removeAttribute("class");
		dropDownFirstElement.insertBefore(testli, insertPosition);
	}
	/* Generate	Table Index: */
	writeDataTableCat();
}

/************************************
*  Generate	DropDowns				*
************************************/
function writeDropdowns() {
	var	def_pos				= document.getElementById("def_var"),
		dropdownPosition,
		h,
		i,
		newElem,
		newElemContent,
		newElemContext,
		position,
		variantPosition,
		trimCount = document.getElementById("def_var").getElementsByTagName("li").length;

	for (h = 1; h <= 3; h += 1) {
		position = eval("document.getElementById('dropdown" + h + "')").getElementsByTagName("ul")[0];
		//position = $('#dropdown' + h + 'ul:eq(0)')

		for (i = 0; i < def_pos.getElementsByTagName("li").length; i += 1) {
			newElem = document.createElement("li");
			if (i === 0) {
				newElem.className = "first";
			}

			//newElemContext = $("<span></span>");
			newElemContext = document.createElement("span");
			dropdownPosition = i + 1;
			variantPosition = h;
			newElemContext.dropdownPositionID = dropdownPosition;
			newElemContext.variantPositionID = variantPosition;

			newElemContext.onmouseover = function () {
				this.className = 'dropdownActive';
			};
			newElemContext.onmouseout = function () {
				this.className = 'dropdownPassive';
			};
			newElemContext.onclick  = function () {
				updateModelDataValues(dropdownPosition, h, this);
			};
			//newElemContext.click(function () {
			//	updateModelDataValues(dropdownPosition, h, this);
			//});

			newElemContent = document.createTextNode(document.getElementById("def_var").getElementsByTagName("li")[i].firstChild.nodeValue);
			//.$("#def_var li:eq(i)").firstChild().text();

			//newElemContext.append(newElemContent);
			newElemContext.appendChild(newElemContent);
			//newElem.appendChild(newElemContext);

			newElem = $("<li></li>");
			newElem.append(newElemContext);

			//position.appendChild(newElem);
			//$(newElem).appendTo($(position));
			$(newElem).appendTo($('#dropdown' + h + ' ul').eq(0));
		}
	}
	/* Add "Compare with" copy for dropdowns 2 + 3: */
	if(trimCount === 1) {
		document.getElementById("dropdown2").getElementsByTagName("li")[0].setAttribute("onmouseover","",1);
		document.getElementById("dropdown2").getElementsByTagName("li")[0].setAttribute("onmouseout","",1);
		document.getElementById("dropdown2").getElementsByTagName("li")[0].className = "header headerInactive";
		document.getElementById("dropdown3").getElementsByTagName("li")[0].setAttribute("onmouseover","",1);
		document.getElementById("dropdown3").getElementsByTagName("li")[0].setAttribute("onmouseout","",1);
		document.getElementById("dropdown3").getElementsByTagName("li")[0].className = "header headerInactive";
	
	}
	if(trimCount === 2) {
		document.getElementById("dropdown3").getElementsByTagName("li")[0].setAttribute("onmouseover","",1);
		document.getElementById("dropdown3").getElementsByTagName("li")[0].setAttribute("onmouseout","",1);
		document.getElementById("dropdown3").getElementsByTagName("li")[0].className = "header headerInactive";
	}
	
	addCompareCopy();
}

/************************************
*  Loading XML Definitions			*
************************************/
function openAllCategoryFolder() {
	var	element,
		headY,
		i,
		newBoxTop,
		numberCat	= (document.getElementById("modelData_definitions").getElementsByTagName("ul").length) - 2,
		trimCount	= document.getElementById("def_var").getElementsByTagName("li").length;

	for (i = 1; i <= numberCat; i += 1) {
		if (document.getElementById("categoryToggleButton" + i)) {
			/* Check, if button is opened */
			if (document.getElementById("categoryToggleButton" + i).getElementsByTagName("span")[0].style.backgroundPosition != "0px -39px") {
				element = document.getElementById("categoryToggleButton" + i).getElementsByTagName("span")[0];
				$("#wrapperModelData_category_" + i).slideDown();
				$("#closerGraphic_category_" + i).css("display", "none");
				$(element).css("backgroundPosition", "0px -39px");
			}
		}
	}

	headY = getY(document.getElementById("categoryToggleButton1"));
	newBoxTop = headY + "px";

	if (document.getElementById("notepadSelectedVersionColumn2").value === '0') {
		toggleInfoboxVisibility(2, 1);
	}
	if (document.getElementById("notepadSelectedVersionColumn3").value === '0' && trimCount > 2) {
		toggleInfoboxVisibility(3, 1);
	}
}
function closeAllCategoryFolder() {
	var element,
		i,
		numberCat = (document.getElementById("modelData_definitions").getElementsByTagName("ul").length) - 2;
	for (i = 1; i <= numberCat; i += 1) {
		if (document.getElementById("categoryToggleButton" + i)) {
			/* Check, if button is opened */
			if (document.getElementById("categoryToggleButton" + i).getElementsByTagName("span")[0].style.backgroundPosition == "0px -39px")
			/*if (document.getElementById("categoryToggleButton" + i).style.backgroundPosition == "0px -39px")*/ {
				if (document.getElementById("dropdownInfobox2")) {
					document.getElementById("dropdownInfobox2").style.display = "none";
				}
				if (document.getElementById("dropdownInfobox3")) {
					document.getElementById("dropdownInfobox3").style.display = "none";
				}

				element = document.getElementById("categoryToggleButton" + i).getElementsByTagName("span")[0];
				$("#wrapperModelData_category_" + i).slideUp();
				if (i != numberCat) {
					$("#closerGraphic_category_" + i).css("display", "block");
				}
				/*$$("#closerGraphic_category_" + i).css("display", "block");
				("#categoryToggleButton" + i).css("backgroundPosition", "2px 0px");*/
				$(element).css("backgroundPosition", "2px 0px");
			}
		}
	}
}
$(document).ready(function () {
	writeDropdowns();
	toggleCategoryVisibility(document.getElementById('categoryToggleButton1'), '1');
	updateModelDataValues(1, 1, document.getElementById('selectedValueColumn1'));
});