var activeTooltip;
function displayTooltip(objElement) {
	objElement = objElement.nextSibling.nextSibling;
	if(typeof(activeTooltip)!='undefined'){
		activeTooltip.style.display='none';
		if(activeTooltip!=objElement){
			activeTooltip=objElement;
			activeTooltip.style.visibility="visible";
			activeTooltip.style.display="block";
		}else{
			activeTooltip=undefined
		}
	}else{
		activeTooltip=objElement;
		activeTooltip.style.visibility="visible";
		activeTooltip.style.display="block";
	}
}

function assemble(){
	var message=document.getElementsByName('message')[0]; 
	var template=document.getElementById('template').value;
	var items,i;

	var currentTime=new Date();
	var strDate=currentTime.getFullYear()+"-";if(currentTime.getMonth()<9){strDate+="0"+parseInt(currentTime.getMonth()+1)}else{strDate+=parseInt(currentTime.getMonth()+1)};strDate+="-";if(currentTime.getDate()<10){strDate+="0"+currentTime.getDate()}else{strDate+=currentTime.getDate()};
	var strDate;if(currentTime.getHours()<10){strTime="0"+currentTime.getHours()}else{strTime=currentTime.getHours()};strTime+=":";if(currentTime.getMinutes()<10){strTime+="0"+currentTime.getMinutes()}else{strTime+=currentTime.getMinutes()};

	// General template replacements
		template=template.replace("##date##",strDate);
		template=template.replace("##time##",strTime);

	// Meta data collection
		items=document.getElementsByName('meta');
		for(i=0;i<items.length;i++){
			template=template.replace("##"+items[i].id+"##",items[i].value);
		}

	// Info data collection
		items=document.getElementsByName('info');
		for(i=0;i<items.length;i++){
			template=template.replace("##"+items[i].id+"##",items[i].value);
		}

	// Table data collection
		var strTableData;
	// Products
		strTableData="";
		items=document.getElementsByName('table-products');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##products##",strTableData);

	// INPUTS - Mainmaterial
		strTableData="";
		items=document.getElementsByName('table-mainmaterial');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##mainmaterial##",strTableData);

	// INPUTS - Consumables
		strTableData="";
		items=document.getElementsByName('table-consumables');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##consumables##",strTableData);

	// INPUTS - Energy
		strTableData="";
		items=document.getElementsByName('table-energy');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##energy##",strTableData);

	// OUTPUTS - Emission to air
		strTableData="";
		items=document.getElementsByName('table-emissiontoair');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##emissiontoair##",strTableData);
	// OUTPUTS - Emission to water
		strTableData="";
		items=document.getElementsByName('table-emissiontowater');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##emissiontowater##",strTableData);
	// OUTPUTS - Emission to soil
		strTableData="";
		items=document.getElementsByName('table-emissiontosoil');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##emissiontosoil##",strTableData);
	// OUTPUTS - Final waste flow
		strTableData="";
		items=document.getElementsByName('table-finalwasteflow');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##finalwasteflow##",strTableData);
	// OUTPUTS - Non material emissions
		strTableData="";
		items=document.getElementsByName('table-nonmaterialemissions');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##nonmaterialemissions##",strTableData);
	// OUTPUTS - Social issues
		strTableData="";
		items=document.getElementsByName('table-socialissues');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##socialissues##",strTableData);
	// OUTPUTS - Economic issues
		strTableData="";
		items=document.getElementsByName('table-economicissues');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##economicissues##",strTableData);
	// OUTPUTS - Waste to treatment
		strTableData="";
		items=document.getElementsByName('table-wastetotreatment');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##wastetotreatment##",strTableData);
	// OUTPUTS - Input parameters
		strTableData="";
		items=document.getElementsByName('table-inputparameters');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##inputparameters##",strTableData);
	// OUTPUTS - Calculated parameters
		strTableData="";
		items=document.getElementsByName('table-calculatedparameters');
		if(items.length>0){
			for(i=0;i<items.length-1;i++){
				strTableData+=items[i].value+";";
			};strTableData+=items[i].value+"\n";
		}
		template = template.replace("##calculatedparameters##",strTableData);
		
	//Lägg till alla andra datamängder här på samma sätt som products...

	message.value = template;
	message.form.submit();
}

function addRowToTableFour(tableId,tableName){
	var tbl=document.getElementById(tableId);
	var lastRow=tbl.rows.length-1;
	var iteration=lastRow;
	var row=tbl.insertRow(lastRow);
  
	// 1st cell = hidden-control, name
		var cellLeft=row.insertCell(0);
		var lc = document.createElement('input');
		lc.type = 'text';
		lc.name = 'table-'+tableName;
		lc.size = 42;
		cellLeft.appendChild(lc);
  
	// 2nd cell = amount
		var cellRight = row.insertCell(1);
		var rc = document.createElement('input');
		rc.type = 'text';
		rc.name = 'table-'+tableName;
		rc.size = 4;
		cellRight.appendChild(rc);
  
	// 3rd cell = unit
		var cellRightSel = row.insertCell(2);
		var sel = document.createElement('select');
		var micro = unescape('%b5');
		sel.name = 'table-'+tableName;
		sel.options[0] = new Option('', 'Unspecified');
		sel.options[1] = new Option('-WEIGHT-', 'Unspecified');
		sel.options[2] = new Option('pg', 'pg');
		sel.options[3] = new Option('ng', 'ng');
		sel.options[4] = new Option(micro+'g', micro+'g');
		sel.options[5] = new Option('mg', 'mg');
		sel.options[6] = new Option('g', 'g');
		sel.options[7] = new Option('kg', 'kg');
		sel.options[8] = new Option('ton', 'ton');
		sel.options[9] = new Option('kton', 'kton');
		sel.options[10] = new Option('Mtn', 'Mtn');
		sel.options[11] = new Option('tn.sh', 'tn.sh');
		sel.options[12] = new Option('tn.lg', 'tn.lg');
		sel.options[13] = new Option('-VOLUME-', 'Unspecified');
		sel.options[14] = new Option('m3', 'm3');
		sel.options[15] = new Option('liter', 'l');
		sel.options[16] = new Option('-ENERGY-', 'Unspecified');
		sel.options[17] = new Option('J', 'J');
		sel.options[18] = new Option('kJ', 'kJ');
		sel.options[19] = new Option('MJ', 'MJ');
		sel.options[20] = new Option('GJ', 'GJ');
		sel.options[21] = new Option('TJ', 'TJ');
		sel.options[22] = new Option('PJ', 'PJ');
		sel.options[23] = new Option('Wh', 'Wh');
		sel.options[24] = new Option('kcal', 'kcal');
		sel.options[25] = new Option('kWh', 'kWh');
		sel.options[26] = new Option('MWh', 'MWh');
		sel.options[27] = new Option('-DISTANCE-', 'Unspecified');
		sel.options[28] = new Option('mm', 'mm');
		sel.options[29] = new Option('cm', 'cm');
		sel.options[30] = new Option('dm', 'dm');
		sel.options[31] = new Option('m', 'm');
		sel.options[32] = new Option('km', 'km');
		sel.options[33] = new Option('-QUANTITY-', 'Unspecified');
		sel.options[34] = new Option('Pieces', 'p');
		cellRightSel.appendChild(sel);

	// 4th cell = delete
		var cellDelete = row.insertCell(3);
		var del = document.createElement('button');
		del.title = 'Remove this row';
		del.innerHTML = '-';
		del.id = "delete_"+tableId+"_"+iteration;
		cellDelete.appendChild(del);
		document.getElementById("delete_"+tableId+"_"+iteration).onclick=function(){removeRowFromTable(tableId,this)};
}



function addRowToTableSix(tableId,tableName){
	var tbl=document.getElementById(tableId);
	var lastRow=tbl.rows.length-1;
	var iteration=lastRow;
	var row=tbl.insertRow(lastRow);
  
	// 1st cell = name
		var cellLeft=row.insertCell(0);
		var lc = document.createElement('input');
		lc.type = 'text';
		lc.name = 'table-'+tableName;
		lc.size = 14;
		cellLeft.appendChild(lc);
  
	// 2nd cell = amount
		var cellRight = row.insertCell(1);
		var rc = document.createElement('input');
		rc.type = 'text';
		rc.name = 'table-'+tableName;
		rc.size = 2;
		cellRight.appendChild(rc);
  
	// 3rd cell = unit
		var cellRightSel = row.insertCell(2);
		var sel = document.createElement('select');
		var micro = unescape('%b5');
		sel.name = 'table-'+tableName;
		sel.options[0] = new Option('', 'Unspecified');
		sel.options[1] = new Option('-WEIGHT-', 'Unspecified');
		sel.options[2] = new Option('pg', 'pg');
		sel.options[3] = new Option('ng', 'ng');
		sel.options[4] = new Option(micro+'g', micro+'g');
		sel.options[5] = new Option('mg', 'mg');
		sel.options[6] = new Option('g', 'g');
		sel.options[7] = new Option('kg', 'kg');
		sel.options[8] = new Option('ton', 'ton');
		sel.options[9] = new Option('kton', 'kton');
		sel.options[10] = new Option('Mtn', 'Mtn');
		sel.options[11] = new Option('tn.sh', 'tn.sh');
		sel.options[12] = new Option('tn.lg', 'tn.lg');
		sel.options[13] = new Option('-VOLUME-', 'Unspecified');
		sel.options[14] = new Option('m3', 'm3');
		sel.options[15] = new Option('liter', 'l');
		sel.options[16] = new Option('-ENERGY-', 'Unspecified');
		sel.options[17] = new Option('J', 'J');
		sel.options[18] = new Option('kJ', 'kJ');
		sel.options[19] = new Option('MJ', 'MJ');
		sel.options[20] = new Option('GJ', 'GJ');
		sel.options[21] = new Option('TJ', 'TJ');
		sel.options[22] = new Option('PJ', 'PJ');
		sel.options[23] = new Option('Wh', 'Wh');
		sel.options[24] = new Option('kcal', 'kcal');
		sel.options[25] = new Option('kWh', 'kWh');
		sel.options[26] = new Option('MWh', 'MWh');
		sel.options[27] = new Option('-DISTANCE-', 'Unspecified');
		sel.options[28] = new Option('mm', 'mm');
		sel.options[29] = new Option('cm', 'cm');
		sel.options[30] = new Option('dm', 'dm');
		sel.options[31] = new Option('m', 'm');
		sel.options[32] = new Option('km', 'km');
		sel.options[33] = new Option('-QUANTITY-', 'Unspecified');
		sel.options[34] = new Option('Pieces', 'p');
		cellRightSel.appendChild(sel);

	// 4th cell = percent
		var cellFour = row.insertCell(3);
		var c4 = document.createElement('input');
		c4.type = 'text';
		c4.name = 'table';
		c4.id = tableName + '-' + iteration + '-percent';
		c4.size = 2;
		cellFour.appendChild(c4);
 
	// 5th cell = waste
		var cellFiveSel = row.insertCell(4);
		var sel5 = document.createElement('select');
		sel5.name = 'table-'+tableName;
		sel5.options[0] = new Option('', 'Unspecified');
		sel5.options[1] = new Option('Aluminium', 'Aluminium');
		sel5.options[2] = new Option('Biopolymers', 'Biopolymers');
		sel5.options[3] = new Option('Brick', 'Brick');
		sel5.options[4] = new Option('Cardboard', 'Cardboard');
		sel5.options[5] = new Option('Cement', 'Cement');
		sel5.options[6] = new Option('Ceramics', 'Ceramics');
		sel5.options[7] = new Option('Compost', 'Compost');
		sel5.options[8] = new Option('Coppers', 'Coppers');
		sel5.options[9] = new Option('ECCS steel', 'ECCS steel');
		sel5.options[10] = new Option('Ferro metals', 'Ferro metals');
		sel5.options[11] = new Option('Fibres', 'Fibres');
		sel5.options[12] = new Option('Glass', 'Glass');
		sel5.options[13] = new Option('Magnesiums', 'Magnesiums');
		sel5.options[14] = new Option('Newspaper', 'Newspaper');
		sel5.options[15] = new Option('Non-ferro', 'Non-ferro');
		sel5.options[16] = new Option('Organic waste', 'Organic waste');
		sel5.options[17] = new Option('Others', 'Others');
		sel5.options[18] = new Option('Packaging cardboard', 'Packaging cardboard');
		sel5.options[19] = new Option('Packaging paper', 'Packaging paper');
		sel5.options[20] = new Option('Paint', 'Paint');
		sel5.options[21] = new Option('Paper', 'Paper');
		sel5.options[22] = new Option('PE', 'PE');
		sel5.options[23] = new Option('PET', 'PET');
		sel5.options[24] = new Option('Plastics', 'Plastics');
		sel5.options[25] = new Option('PP', 'PP');
		sel5.options[26] = new Option('PS', 'PS');
		sel5.options[27] = new Option('PUR', 'PUR');
		sel5.options[28] = new Option('PVC', 'PVC');
		sel5.options[29] = new Option('PVDC', 'PVDC');
		sel5.options[30] = new Option('Rubber', 'Rubber');
		sel5.options[31] = new Option('Steel', 'Steel');
		sel5.options[32] = new Option('Textile', 'Textile');
		sel5.options[33] = new Option('Tin plate', 'Tin plate');
		sel5.options[34] = new Option('Tin sheet', 'Tin sheet');
		sel5.options[35] = new Option('Wood', 'Wood');
		sel5.options[36] = new Option('Zincs', 'Zincs');
		cellFiveSel.appendChild(sel5);

	// 6th cell = delete
		var cellDelete = row.insertCell(5);
		var del = document.createElement('button');
		del.title = 'Remove this row';
		del.innerHTML = '-';
		del.id = "delete_"+tableId+"_"+iteration;
		cellDelete.appendChild(del);
		document.getElementById("delete_"+tableId+"_"+iteration).onclick=function(){removeRowFromTable(tableId,this)};
}

function removeRowFromTable(tableId,element){
	var row=element.parentNode.parentNode.rowIndex;
	var tbl=document.getElementById(tableId);
	tbl.deleteRow(row);
}

