var numb=1;
var thisRow;
function showFormValuesNew(frm){
	for(i=0;i<frm.length;i++){
	if(frm[i].type=="select-multiple"){
	for(j=0;j<frm[i].options.length;j++){
			if(frm[i].options[j].selected){alert(frm[i].options[j].innerHTML);}
			}
			}
	//alert(frm[i].name + " = " + frm[i].value + " type= " + frm[i].type);
	}
}



function showFormValues(frm)
{
        // open a blank window
        var aWindow = window.open('','ShowResults','scrollbars=yes,menubar=yes,resizable=yes,toolbar=no,width=400,height=400');

        // set the target to the blank window
        frm.target = 'ShowResults';

        // submit
        frm.submit();
}

/* cloneRow
* Clones a row when a cell has been clicked on
* Given a reference to the cell, clones the row and inserts it
* before nextSibling.
* If the nextSibling doesn't exist, it doesn't matter, the
* newElement is put immediately after the the row anyway.
*/

function cloneRow(theCell) {

var newElement, cell, thisRow;
if((cell = theCell.parentNode) && (thisRow = cell.parentNode)) {

var thisRow_textareas= thisRow.getElementsByTagName('textarea');
var thisRow_selects= thisRow.getElementsByTagName('select');
var thisRow_inputs= thisRow.getElementsByTagName('input');
var i;

var newElement = thisRow.cloneNode(true);
var textareas= newElement.getElementsByTagName('textarea');

for(i=0;i<textareas.length;i++)
	{
	var oldName=updateThisName(textareas[i].name,numb);
	textareas[i].name=oldName;
	//textareas[i].value=thisRow_textareas[i].value;
	textareas[i].value="";
	}

var selects= newElement.getElementsByTagName('select');

for(i=0;i<selects.length;i++)
	{	
	var oldName=updateThisName(selects[i].name,numb);
	selects[i].name=oldName;

		//multiple select box options
		for (var j=0; j<thisRow_selects[i].options.length; j++) {
			selects[i].options[j].selected=false; //unselect for ffox
			if (thisRow_selects[i].options[j].selected) {
			selects[i].options[j].selected=true;			
			}
		}
	//selects[i].options.selectedIndex=thisRow_selects[i].options.selectedIndex;///for non-multiple selects
	}

var inputs= newElement.getElementsByTagName('input');

for(i=0;i<inputs.length;i++)
	{	
	var oldName=updateThisName(inputs[i].name,numb);
	inputs[i].name=oldName;
	
	//if(inputs[i].type!=="button"){	inputs[i].value=""; }
	}

numb++
thisRow.parentNode.insertBefore(newElement,thisRow.nextSibling);
var thisBody=thisRow.parentNode;//returns the table body element
updateAllNames(thisBody);
}}

function updateAllNames(thisBody){

//update each elements name attribute

	for(i=0;i<thisBody.rows.length;i++){
	
	
	var selectElements=thisBody.rows[i].getElementsByTagName('select');
		for(k=0;k<selectElements.length;k++){
		if(selectElements[k].name){selectElements[k].name=updateThisName(selectElements[k].name,i);}
		}


	var inputElements=thisBody.rows[i].getElementsByTagName('input');
		for(k=0;k<inputElements.length;k++){
		if(inputElements[k].name){inputElements[k].name=updateThisName(inputElements[k].name,i);}
 		}
		
	var textareaElements=thisBody.rows[i].getElementsByTagName('textarea');
		for(k=0;k<textareaElements.length;k++){
		if(textareaElements[k].name){textareaElements[k].name=updateThisName(textareaElements[k].name,i);}
 		}
	
		
	
	}
}


function updateThisName(oName,N){

var old_Name=oName.split("_") ;
old_Name=old_Name[0];
old_Name=old_Name + "_" + N;
return old_Name;
}

/* deleteRow
* Deletes a row when a cell is clicked on.
* Gets a reference to the row that the cell is in, then deletes the
* entire row from the table.
*/
function deleteRow(theCell) {
if((cell = theCell.parentNode) && (thisRow = cell.parentNode)) {
var tbody=thisRow.parentNode;
	if(thisRow.rowIndex > 1) {
	//alert(thisRow.rowIndex);
	thisRow.parentNode.removeChild(thisRow);
	updateAllNames(tbody);
	} 
	else{
	return alert("cannot delete first row");
	}

}}