var numb=1;
var thisRow;

function up(theCell,theDoc,move) {
document.getElementById('submit').disabled=true
document.getElementById('sub').style.visibility='visible'
document.frm.action=move

var newElement, cell, thisRow;
if((cell = theCell.parentNode) && (thisRow = cell.parentNode)) {

if(thisRow.rowIndex > 1) {
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.previousSibling);
var thisBody=thisRow.parentNode;//returns the table body element
updateAllNames(thisBody);


if((cell = theCell.parentNode) && (thisRow = cell.parentNode)) {
var tbody=thisRow.parentNode;
	//alert(thisRow.rowIndex);
	thisRow.parentNode.removeChild(thisRow);
	updateAllNames(tbody);
}}}}

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;
}


function down(theCell,move) {
document.getElementById('submit').disabled=true
document.getElementById('sub').style.visibility='visible'
document.frm.action=move

var newElement, cell, thisRow;
if((cell = theCell.parentNode) && (thisRow = cell.parentNode)) {

if(thisRow.rowIndex < (document.getElementById('tab').getElementsByTagName('tr').length - 2)) {
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=""; }
	}

var row2 = thisRow.nextSibling
numb++
thisRow.parentNode.insertBefore(newElement,row2.nextSibling);
var thisBody=thisRow.parentNode;//returns the table body element
updateAllNames(thisBody);


if((cell = theCell.parentNode) && (thisRow = cell.parentNode)) {
var tbody=thisRow.parentNode;
	//alert(thisRow.rowIndex);
	thisRow.parentNode.removeChild(thisRow);
	updateAllNames(tbody);

}}}}
