function resetAffiliatedEntity(entity_index, entity_id) {
	select_box = document.getElementById('aff_entity[' + entity_index + ']');
	input_box = document.getElementById('new_entity_' + entity_index);
	my_options = select_box.options;
	for (i=0; i< my_options.length; i++) {
		if (my_options[i].value == entity_id) {
			select_box.selectedIndex = i;
			alert("value for " + 'new_entity_' + entity_index + " : " + input_box.value);
			input_box.value = "";
			alert("value after change: " + input_box.value);
			
			break;
		}
	}
}
function redirect(new_url) {
	alert('redirect: ' + new_url);
	window.location = new_url;
}

function clearSelectBox(select1_name) {
	selectbox = document.getElementById(select1_name);
	selectbox.selectedIndex = 0;
}
function clearInputBox(input1_name) {
	input1 = document.getElementById(input1_name);
	input1.value = "";
	
}

function setUseThisLink(linkId, entity_index, entity_id) {
	linkdiv = document.getElementById(linkId);
	Element.show(linkId);
	linkdiv.innerHTML = "<a href=\"javascript(0);\" onClick=\"resetAffiliatedEntity(" + entity_index + ", " + entity_id + ");\">use this</a>";
}

function addPersonBlock3() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
	var divIdName = "my"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
	// populate the drop-down
	old_person_select = document.getElementById("person_1_select");
	old_role_select = document.getElementById("role_1");
  ptable = document.createElement("table");
  ptable.setAttribute("class", "aff_people");
  	pbody = document.createElement("tbody");
  		selectrow = document.createElement("tr");	
  			selectcell = document.createElement("td");
  			//selectcell.appendChild(document.createTextNode(num + "."));
				newselect = old_person_select.cloneNode(true);
				newselect.setAttribute("id","person_select[" + num + "]");
				newselect.setAttribute("name","person_select[" + num + "]");
				default_person = newselect[0];
				default_person.selected = true;
				selectcell.appendChild(newselect);
				selectrow.appendChild(selectcell);
				selectrow.appendChild(document.createElement("td"));

			pbody.appendChild(selectrow);
			new_p_header_row = document.createElement("tr");
		  new_p_header_row.innerHTML = "<td class=\"label\"><label>or create new person</label></td><td></td>";
		  pbody.appendChild(new_p_header_row);
		  new_p_row = document.createElement("tr");
		  	new_p_1 = document.createElement("td");
		  	//new_p_1.innerHTML = "<label for=\"new_person_first1\"><span style=\"color: rgb(255, 255, 255);\">1.</span></label>"
		  			//	+ "<input name=\"new_person_first[" + num + "]\" value=\"first\" size=\"40\" style=\"width:80%;\">";
		  	new_p_1.innerHTML = "<input name=\"new_person_first[" + num + "]\" value=\"first\" size=\"40\">";
		    new_p_row.appendChild(new_p_1);
		    new_p_2 = document.createElement("td");
		    //new_p_2.innerHTML = "<input name=\"new_person_last[" + num + "]\" value=\"last\" size=\"40\">";
		    new_p_2.innerHTML = "<input autocomplete=\"off\" id=\"person_last_name_" + num + "\" name=\"person_last_name_" + num + "\" size=\"30\" value=\"\" type=\"text\"><div style=\"display: none;\" id=\"person_last_name_" + num + "_auto_complete\" class=\"auto_complete\"></div><script type=\"text/javascript\">var person_last_name_" + num + "_auto_completer = new Ajax.Autocompleter('person_last_name_" + num + "', 'person_last_name_" + num + "_auto_complete', 'index.php?ajax_task=aff_person&target=my" + num + "Div&index=" + num + "&field_name=person_last_name_" + num + "&usethislink=use_this_" + num + "', {} )</script>";

		    new_p_row.appendChild(new_p_2);
			pbody.appendChild(new_p_row);
			role_header_row = document.createElement("tr");
			role_header_row.innerHTML = "<td class=\"label\"><label for=\"role_1\">role at this entity</label></td><td class=\"label\"><label>or create new role</label></td>";
			pbody.appendChild(role_header_row);
			role_row = document.createElement("tr");
				selectrolecell = document.createElement("td");
				//selectrolecell.innerHTML = "<label><span style=\"color: rgb(255, 255, 255);\">1. </span></label>";
					new_role_select = old_role_select.cloneNode(true);
					new_role_select.setAttribute("id","role[" + num + "]");
					new_role_select.setAttribute("name","role[" + num + "]");
					default_role = new_role_select[0];
					default_role.selected = true;
					selectrolecell.appendChild(new_role_select);
 				role_row.appendChild(selectrolecell);
				new_role_cell = document.createElement("td");
				new_role_cell.innerHTML = "<input name=\"new_role[" + num + "]\" id=\"new_role_" + num + "\">";
			  role_row.appendChild(new_role_cell);
			pbody.appendChild(role_row);
			remove_row = document.createElement('tr');
			spacer1 = document.createElement('td');
			remove_row.appendChild(spacer1);
				remove_cell = document.createElement("td");
				remove_cell.setAttribute("style", "text-align: right; font-size: 80%;");
				remove_cell.innerHTML = "<a href=\"javascript.void(0);\" onClick=\"Element.remove('" + divIdName + "'); return false;\">[remove]</a>";
				remove_row.appendChild(remove_cell);
				pbody.appendChild(remove_row);
		ptable.appendChild(pbody);
		newdiv.appendChild(ptable);
		newdiv.appendChild(document.createElement("br"));
	addlink = $("add_person_link");
	fieldset = $("people_fieldset_id");
	//alert("parent: " + addlink.parentNode.getAttribute("name"));
	//addlink.parentNode.insertBefore(newdiv,addlink);
	//fieldset.appendChild(newdiv);
	ni.appendChild(newdiv);


}


function addEntityRelationBlock3() {

  var ni = document.getElementById('entityDiv');
  var numi = document.getElementById('ent_relation_index');
  var num = (document.getElementById('ent_relation_index').value -1)+ 2;
  numi.value = num;


	var divIdName = "entity"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
	// populate the drop-down
	old_person_select = document.getElementById("entity_select[1]");
	old_role_select = document.getElementById("entity_role_1");

  ptable = document.createElement("table");
  ptable.setAttribute("class","related_entity");
  	pbody = document.createElement("tbody");
  		label1row = document.createElement("td");
  		label1row.innerHTML = "<td></td><td class=\"label\"><label for=\"new_person_first1\">or create new entity</label></td>";
  		pbody.appendChild(label1row);
  		selectrow = document.createElement("tr");	
  			selectcell = document.createElement("td");
  			//selectcell.appendChild(document.createTextNode(num + "."));
				newselect = old_person_select.cloneNode(true);
				newselect.setAttribute("id","entity_select[" + num + "]");
				newselect.setAttribute("name","entity_select[" + num + "]");
				default_person = newselect[0];
				default_person.selected = true;
				selectcell.appendChild(newselect);
				selectrow.appendChild(selectcell);
				inputcell = document.createElement("td");
				//inputcell.innerHTML = "<input name=\"new_entity[" + num + "]\">";
		    inputcell.innerHTML = "<input autocomplete=\"off\" id=\"new_entity_" + num + "\" name=\"new_entity_" + num + "\" size=\"30\" value=\"\" type=\"text\"><div style=\"display: none;\" id=\"new_entity_" + num + "_auto_complete\" class=\"auto_complete\"></div><script type=\"text/javascript\">var new_entity_" + num + "_auto_completer = new Ajax.Autocompleter('new_entity_" + num + "', 'new_entity_" + num + "_auto_complete', 'index.php?ajax_task=affiliated_entity&target=entity" + num + "Div&index=" + num + "&field_name=new_entity_" + num + "&usethislink=use_this_" + num + "', {} )</script>        <div id=\"use_this_" + num + "\" style=\"display: none;\"></div>";
		    
				selectrow.appendChild(inputcell);
		 pbody.appendChild(selectrow);
		 labelrow = document.createElement("tr");
		// labelrow.innerHTML = "<td><label><span style=\"color: rgb(255, 255, 255);\">1. </span></label><label for=\"role_1\">relationship</label></td><td>&nbsp;</td><td>&nbsp;</td>";
		 labelrow.innerHTML = "<td class=\"label\"><label for=\"role_1\">relationship</label></td><td>&nbsp;</td>";
		 pbody.appendChild(labelrow);
		 
		 relrow = document.createElement("tr");
		 		rolecell = document.createElement("td");
		 		spacer = document.createElement("label");
		 		//spacer.innerHTML = "<span style=\"color: rgb(255, 255, 255);\">1. </span>";
		 		rolecell.appendChild(spacer);
		 		new_role_select = old_role_select.cloneNode(true);
		 		new_role_select.setAttribute("id","entity_role[" + num + "]");
		 		new_role_select.setAttribute("name","entity_role[" + num + "]");
				default_role = new_role_select[0];
				default_role.selected = true;
		 		rolecell.appendChild(new_role_select);
		 relrow.appendChild(rolecell);
				remove_cell = document.createElement("td");
				remove_cell.setAttribute("style", "font-size: 80%; text-align: right;");
				remove_cell.innerHTML = "<a href=\"javascript.void(0);\" onClick=\"Element.remove('" + divIdName + "'); return false;\">[remove]</a>";
		 relrow.appendChild(remove_cell);
	pbody.appendChild(relrow);
ptable.appendChild(pbody);
		newdiv.appendChild(ptable);
		newdiv.appendChild(document.createElement("br"));
	addlink = $("add_entity_link");
	fieldset = $("entity_fieldset_id");
	//alert("parent: " + addlink.parentNode.getAttribute("name"));
	//addlink.parentNode.insertBefore(newdiv,addlink);
	//fieldset.appendChild(newdiv);
	ni.appendChild(newdiv); 
}


function addPersonEntityBlock3() {
	var ni = document.getElementById('myDiv');
	var numi = document.getElementById('theValue');
	var num = (document.getElementById("theValue").value -1)+ 2;
	numi.value = num;
	var divIdName = "my"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
	old_person_select = document.getElementById("aff_entity[1]");
	old_role_select = document.getElementById("role[1]");
	etable = document.createElement("table");
	etable.setAttribute("class","related_entity");
		ebody = document.createElement("tbody");
			toplabelrow = document.createElement("tr");
			toplabelrow.appendChild(document.createElement("td"));
			label1 = document.createElement("td");
			label1.setAttribute("class", "label");
			label1.innerHTML = "<label for=\"new_person_first" + num + "\">or create new entity</label></td>";
			toplabelrow.appendChild(label1);
			ebody.appendChild(toplabelrow);
			
			select_row = document.createElement("tr");
				select_cell = document.createElement("td");
				newselect = old_person_select.cloneNode(true);
				newselect.setAttribute("id","aff_entity[" + num + "]");
				newselect.setAttribute("name","aff_entity[" + num + "]");
				default_person = newselect[0];
				default_person.selected = true;
				select_cell.appendChild(newselect);
				select_row.appendChild(select_cell);
				inputcell = document.createElement("td");
				inputcell.innerHTML = "<input autocomplete=\"off\" id=\"new_entity_" + num + "\" name=\"new_entity_" + num + "\" size=\"30\" value=\"\" type=\"text\"><div style=\"display: none;\" id=\"new_entity_" + num + "_auto_complete\" class=\"auto_complete\"></div><script type=\"text/javascript\">var new_entity_" + num + "_auto_completer = new Ajax.Autocompleter('new_entity_" + num + "', 'new_entity_" + num + "_auto_complete', 'index.php?ajax_task=affiliated_entity&target=my" + num + "Div&index=" + num + "&field_name=new_entity_" + num + "', {} )</script>";
				select_row.appendChild(inputcell);


			ebody.appendChild(select_row);
			label2row = document.createElement("tr");
			rlabel1 = document.createElement("td");
			rlabel1.setAttribute("class","label");
			rlabel1.innerHTML = "<label>role at this entity</label>";
			label2row.appendChild(rlabel1);
			rlabel2 = document.createElement("td");
			rlabel2.setAttribute("class","label");
			rlabel2.innerHTML = "<label>or create new role</label>";
			label2row.appendChild(rlabel2);
			ebody.appendChild(label2row);
			
			role_row = document.createElement("tr");
				role_select_cell = document.createElement("td");
				new_role_select = old_role_select.cloneNode(true);
				new_role_select.setAttribute("id","role[" + num + "]");
				new_role_select.setAttribute("name","role[" + num + "]");
				default_role = new_role_select[0];
				default_role.selected = true;
				role_select_cell.appendChild(new_role_select);
				role_row.appendChild(role_select_cell);
				new_role = document.createElement("td");
				new_role.innerHTML = "<input name=\"new_role[" + num + "]\">";
				role_row.appendChild(new_role);
				ebody.appendChild(role_row);
				remove_row = document.createElement("tr");
				remove_row.appendChild(document.createElement("td"));
				remove_cell = document.createElement('td');
				//remove_span = document.createElement("span");
				remove_cell.setAttribute("style", "font-size: 80%; text-align: right;");
				remove_cell.innerHTML = "<a href=\"javascript.void(0);\" onClick=\"Element.remove('" + divIdName + "'); return false;\">[remove]</a>";
				remove_row.appendChild(remove_cell);
			ebody.appendChild(remove_row);
		etable.appendChild(ebody);
	newdiv.appendChild(etable);
	newdiv.appendChild(document.createElement("br"));
	

	
	addlink = $("add_entity_link");
	table = $("form_table");
	addlink.parentNode.insertBefore(newdiv,addlink);



}


function addPersonEntityBlockNoTables() {
//alert("0");
	//set up the new div and adjust the id number
	var ni = document.getElementById('myDiv');
	var numi = document.getElementById('theValue');
	var num = (document.getElementById("theValue").value -1)+ 2;
	numi.value = num;
	var divIdName = "my"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
	//Element.remove("add_person_block_" + num);
	//alert("1");
	// populate the drop-down
	old_person_select = document.getElementById("aff_entity[1]");
	old_role_select = document.getElementById("role[1]");


	name_select_label = document.createElement("label");
	name_select_label.appendChild(document.createTextNode(num + "."));
	newselect = old_person_select.cloneNode(true);
	newselect.setAttribute("id","aff_entity[" + num + "]");
	newselect.setAttribute("name","aff_entity[" + num + "]");
	default_person = newselect[0];
	default_person.selected = true;
	name_select_label.appendChild(newselect);
	newdiv.appendChild(name_select_label);
	newdiv.appendChild(document.createElement("br"));
	//alert("2");
	create_label = document.createElement("label");
	create_label.appendChild(document.createTextNode("or create new entity"));
	newdiv.appendChild(create_label);
	newdiv.appendChild(document.createElement("br"));
	//alert("2.1");
	create_name_label = document.createElement("label");
	spacer_span = document.createElement("span");
	spacer_span.setAttribute("style", "color: #FFF;");
	spacer_span.appendChild(document.createTextNode("1."));
	//alert("2.2");
	create_name_label.appendChild(spacer_span);
	newnames_first = document.createElement("input");
	newnames_first.setAttribute("type","text");
	newnames_first.setAttribute("name","new_entity[" + num + "]");
	newnames_first.setAttribute("value","");
	create_name_label.appendChild(newnames_first);
	//alert("2.3");
	newdiv.appendChild(create_name_label);
	//alert("2.3.5");
	newdiv.appendChild(document.createElement("br"));
	//alert("3");
	role_label1 = document.createElement("label");
	role_label1.appendChild(document.createTextNode("role at this entity"));
	newdiv.appendChild(role_label1);
	newdiv.appendChild(document.createElement("br"));
	
	role_label2 = document.createElement("label");
	spacer_span1 = document.createElement("span");
	spacer_span1.setAttribute("style", "color: #FFF;");
	spacer_span1.appendChild(document.createTextNode("1."));
	role_label2.appendChild(spacer_span1);
	new_role_select = old_role_select.cloneNode(true);
	new_role_select.setAttribute("id","role[" + num + "]");
	new_role_select.setAttribute("name","role[" + num + "]");
	default_role = new_role_select[0];
	default_role.selected = true;
	role_label2.appendChild(new_role_select);
	newdiv.appendChild(role_label2);
	newdiv.appendChild(document.createElement("br"));
	//alert("4");
	new_role_label = document.createElement("label");
	new_role_label.appendChild(document.createTextNode("or create new role "));
	new_role_input = document.createElement("input");
	new_role_input.setAttribute("type", "text");
	new_role_input.setAttribute("name", "new_role[" + num + "]");
	new_role_label.appendChild(new_role_input);
	newdiv.appendChild(new_role_label);
	
	remove_link = document.createElement("a");
	remove_link.setAttribute("href","#");
	remove_link.setAttribute("onClick","Element.remove('" + divIdName + "'); return false;");
	remove_link.appendChild(document.createTextNode("[remove]"));
	newdiv.appendChild(remove_link);

	
	addlink = $("add_entity_link");
	table = $("form_table");
	addlink.parentNode.insertBefore(newdiv,addlink);
}




function addEntityRelationBlockNoTables() {

	/*var ni = document.getElementById('entityDiv');
	var numi = document.getElementById('ent_relation_index');
	//var num = (document.getElementById("ent_relation_index").value -1)+ 2;

	//var numi = document.getElementById('ent_relation_index').value;
	var num = (document.getElementById("ent_relation_index").value -1)+ 2;
	//numi.value = num;

	numi.value = num;
*/


  var ni = document.getElementById('entityDiv');
  var numi = document.getElementById('ent_relation_index');
  var num = (document.getElementById('ent_relation_index').value -1)+ 2;
  numi.value = num;


	var divIdName = "entity"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
// populate the drop-down
old_person_select = document.getElementById("entity_1_select");
old_role_select = document.getElementById("entity_role_1");

	name_select_label = document.createElement("label");
	name_select_label.appendChild(document.createTextNode(num + 1 + "."));
	newselect = old_person_select.cloneNode(true);
	newselect.setAttribute("id","entity_select[" + num + "]");
	newselect.setAttribute("name","entity_select[" + num + "]");
	default_ent = newselect[0];
	default_ent.selected = true;
	name_select_label.appendChild(newselect);
	newdiv.appendChild(name_select_label);
	newdiv.appendChild(document.createElement("br"));
	//alert("2");
	create_label = document.createElement("label");
	create_label.appendChild(document.createTextNode("or create new entity"));
	newdiv.appendChild(create_label);
	newdiv.appendChild(document.createElement("br"));
	//alert("2.1");
	create_name_label = document.createElement("label");
	spacer_span = document.createElement("span");
	spacer_span.setAttribute("style", "color: #FFF;");
	spacer_span.appendChild(document.createTextNode("1."));
	//alert("2.2");
	create_name_label.appendChild(spacer_span);
	newnames_first = document.createElement("input");
	newnames_first.setAttribute("type","text");
	newnames_first.setAttribute("name","new_entity[" + num + "]");
	newnames_first.setAttribute("value","");
	create_name_label.appendChild(newnames_first);
	//alert("2.3");
	newdiv.appendChild(create_name_label);
	//alert("2.3.5");
	newdiv.appendChild(document.createElement("br"));
	//alert("3");
	role_label1 = document.createElement("label");
	role_label1.appendChild(document.createTextNode("relationship "));
	newdiv.appendChild(role_label1);
	newdiv.appendChild(document.createElement("br"));
	
	role_label2 = document.createElement("label");
	spacer_span1 = document.createElement("span");
	spacer_span1.setAttribute("style", "color: #FFF;");
	spacer_span1.appendChild(document.createTextNode("1."));
	role_label2.appendChild(spacer_span1);
	new_role_select = old_role_select.cloneNode(true);
	new_role_select.setAttribute("id","entity_role[" + num + "]");
	new_role_select.setAttribute("name","entity_role[" + num + "]");
	default_role = new_role_select[0];
	default_role.selected = true;
	role_label2.appendChild(new_role_select);
	newdiv.appendChild(role_label2);
	remove_link = document.createElement("a");
	remove_link.setAttribute("href","#");
	remove_link.setAttribute("onClick","Element.remove('" + divIdName + "'); return false;");
	remove_link.appendChild(document.createTextNode("[remove]"));
	newdiv.appendChild(remove_link);


	addlink = $("add_entity_link");
	table = $("form_table");
	addlink.parentNode.insertBefore(newdiv,addlink);


}





function addPersonBlock() {
	//set up the new div and adjust the id number
var ni = document.getElementById('myDiv');
var numi = document.getElementById('theValue');
var num = (document.getElementById("theValue").value -1)+ 2;
numi.value = num;
var divIdName = "my"+num+"Div";
var newdiv = document.createElement('div');
newdiv.setAttribute("id",divIdName);
//Element.remove("add_person_block_" + num);

// populate the drop-down
old_person_select = document.getElementById("person_1_select");
old_role_select = document.getElementById("role_1");

nameheading_tr = document.createElement("tr");
nameheading_tr.appendChild(document.createElement("td"));
nameheading_td1 = document.createElement("td");
//nameheading_td1.setAttribute("width", $('aff_label_row').width);
nameheading_label1 = document.createElement("label");
nameheading_label1.appendChild(document.createTextNode("or create new person"));
nameheading_td1.appendChild(nameheading_label1);
nameheading_tr.appendChild(nameheading_td1);
nameheading_tr.appendChild(document.createElement("td"));
newdiv.appendChild(nameheading_tr);


tr1 = document.createElement("tr");
td1 = document.createElement("td");
table1 = document.createElement("table");
tr2 = document.createElement("tr");
td2 = document.createElement("td");
td2.appendChild(document.createTextNode(num + "."));
td3 = document.createElement("td");

newselect = old_person_select.cloneNode(true);
newselect.setAttribute("id","person_select[" + num + "]");
newselect.setAttribute("name","person_select[" + num + "]");
td3.appendChild(newselect);

tr2.appendChild(td2);
tr2.appendChild(td3);
table1.appendChild(tr2);
td1.appendChild(table1);
tr1.appendChild(td1);

newnames_td = document.createElement("td");
newnames_table = document.createElement("table");
newnames_tr = document.createElement("tr");
newnames_first_td = document.createElement("td");
newnames_first = document.createElement("input");
newnames_first.setAttribute("type","text");
newnames_first.setAttribute("name","new_person_first[" + num + "]");
newnames_first.setAttribute("value","first");
newnames_first_td.appendChild(newnames_first);
newnames_tr.appendChild(newnames_first_td);
newnames_last_td = document.createElement("td");
newnames_last = document.createElement("input");
newnames_last.setAttribute("name","new_person_last[" + num + "]");
newnames_last.setAttribute("value","last");
newnames_last_td.appendChild(newnames_last);
newnames_tr.appendChild(newnames_last_td);
newnames_table.appendChild(newnames_tr);
newnames_td.appendChild(newnames_table);
tr1.appendChild(newnames_td);

newdiv.appendChild(tr1);

roleheading_tr = document.createElement("tr");
roleheading_td1 = document.createElement("td");
roleheading_table1 = document.createElement("table");
roleheading_tr1 = document.createElement("tr");
roleheading_td2 = document.createElement("td");
roleheading_td2.appendChild(document.createTextNode("role at this entity"));
roleheading_tr1.appendChild(roleheading_td2);
roleheading_table1.appendChild(roleheading_tr1);
roleheading_td1.appendChild(roleheading_table1);
roleheading_tr.appendChild(roleheading_td1);
roleheading_td3 = document.createElement("td");
roleheading_label1 = document.createElement("label");
roleheading_label1.appendChild(document.createTextNode("or create new role"));
roleheading_td3.appendChild(roleheading_label1);
roleheading_tr.appendChild(roleheading_td3);
newdiv.appendChild(roleheading_tr);

role_tr = document.createElement("tr");
	role_td = document.createElement("td");
		role_table = document.createElement("table");
			role_table_tr = document.createElement("tr");
				role_table_tr.appendChild(document.createElement("td"));
				role_table_td = document.createElement("td");
					new_role_select = old_role_select.cloneNode(true);
					new_role_select.setAttribute("id","role[" + num + "]");
					new_role_select.setAttribute("name","role[" + num + "]");
					role_table_td.appendChild(new_role_select);
				role_table_tr.appendChild(role_table_td);
			role_table.appendChild(role_table_tr);
		role_td.appendChild(role_table);
	role_tr.appendChild(role_td);
	new_role_td = document.createElement("td");
		new_role_input = document.createElement("input");
		new_role_input.setAttribute("type", "text");
		new_role_input.setAttribute("name", "new_role[" + num + "]");
		new_role_td.appendChild(new_role_input);
	role_tr.appendChild(new_role_td);

newdiv.appendChild(role_tr);

del_tr = document.createElement("tr");
del_tr.setAttribute("id","add_person_block_" + num);
  del_td = document.createElement("td");
  del_td.setAttribute("colspan","2");
  del_td.innerHTML = "<a href=\"javascript:;\" onclick=\"Element.remove('" + divIdName + "');\">remove</a>";
  del_tr.appendChild(del_td);
 newdiv.appendChild(del_tr);

//div_tr = document.createElement("tr");
//div_tr.setAttribute("id","add_person_block_" + num);
//  div_td = document.createElement("td");
//  div_td.setAttribute("colspan","2");
//  div_td.innerHTML = "<a href=\"javascript:;\" onclick=\"addPersonBlock();\">Add another person</a><div id=\"" + divIdName + "\"> </div>";
//  div_tr.appendChild(div_td);
// newdiv.appendChild(div_tr);

//ni.appendChild(newdiv);
//$('person_table').appendChild(newdiv);
//document.insertBefore(newdiv,$('myDiv'));
	addlink = $("add_person_link");
	table = $("form_table");
	addlink.parentNode.insertBefore(newdiv,addlink);
}


function addPersonBlockNoTables() {
	//set up the new div and adjust the id number
	//var ni = document.getElementById('myDiv');
	//var numi = document.getElementById('theValue');
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
	var divIdName = "my"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
	//Element.remove("add_person_block_" + num);
	//alert("1");
	// populate the drop-down
	old_person_select = document.getElementById("person_1_select");
	old_role_select = document.getElementById("role_1");

	name_select_label = document.createElement("label");
	name_select_label.appendChild(document.createTextNode(num + "."));
	newselect = old_person_select.cloneNode(true);
	newselect.setAttribute("id","person_select[" + num + "]");
	newselect.setAttribute("name","person_select[" + num + "]");
	//alert("adding select=[" + newselect.getAttribute("name") + "]  id: [" + newselect.getAttribute("id") + "]");
	default_person = newselect[0];
	default_person.selected = true;
	name_select_label.appendChild(newselect);
	newdiv.appendChild(name_select_label);
	newdiv.appendChild(document.createElement("br"));
	//alert("2");
	create_label = document.createElement("label");
	create_label.appendChild(document.createTextNode("or create new person"));
	newdiv.appendChild(create_label);
	newdiv.appendChild(document.createElement("br"));
	//alert("2.1");
	create_name_label = document.createElement("label");
	spacer_span = document.createElement("span");
	spacer_span.setAttribute("style", "color: #FFF;");
	spacer_span.appendChild(document.createTextNode("1."));
	//alert("2.2");
	create_name_label.appendChild(spacer_span);
	newnames_first = document.createElement("input");
	newnames_first.setAttribute("type","text");
	newnames_first.setAttribute("name","new_person_first[" + num + "]");
	newnames_first.setAttribute("value","first");
	create_name_label.appendChild(newnames_first);
	//alert("2.3");
	newnames_last = document.createElement("input");
	//alert("2.3.1");
	newnames_last.setAttribute("name","new_person_last[" + num + "]");
	//alert("2.3.2");
	newnames_last.setAttribute("value","last");
	//alert("2.3.3");
	create_name_label.appendChild(newnames_last);
	//alert("2.3.4");
	newdiv.appendChild(create_name_label);
	//alert("2.3.5");
	newdiv.appendChild(document.createElement("br"));
	//alert("3");
	role_label1 = document.createElement("label");
	role_label1.appendChild(document.createTextNode("role at this entity"));
	newdiv.appendChild(role_label1);
	newdiv.appendChild(document.createElement("br"));
	
	role_label2 = document.createElement("label");
	spacer_span1 = document.createElement("span");
	spacer_span1.setAttribute("style", "color: #FFF;");
	spacer_span1.appendChild(document.createTextNode("1."));
	role_label2.appendChild(spacer_span1);
	new_role_select = old_role_select.cloneNode(true);
	new_role_select.setAttribute("id","role[" + num + "]");
	new_role_select.setAttribute("name","role[" + num + "]");
	default_role = new_role_select[0];
	default_role.selected = true;
	role_label2.appendChild(new_role_select);
	newdiv.appendChild(role_label2);
	//alert("4");
	new_role_label = document.createElement("label");
	new_role_label.appendChild(document.createTextNode("or create new role "));
	new_role_input = document.createElement("input");
	new_role_input.setAttribute("type", "text");
	new_role_input.setAttribute("name", "new_role[" + num + "]");
	new_role_label.appendChild(new_role_input);
	newdiv.appendChild(new_role_label);
	//alert("21");
	remove_link = document.createElement("a");
	remove_link.setAttribute("href","#");
	remove_link.setAttribute("onClick","Element.remove('" + divIdName + "'); return false;");
	remove_link.appendChild(document.createTextNode("[remove]"));
	newdiv.appendChild(remove_link);
	//alert("5");
	addlink = $("add_person_link");
	fieldset = $("people_fieldset_id");
	//alert("parent: " + addlink.parentNode.getAttribute("name"));
	//addlink.parentNode.insertBefore(newdiv,addlink);
	//fieldset.appendChild(newdiv);
	ni.appendChild(newdiv);
	//alert("6");
	

	
}


function addEntityRelationBlock() {
	var ni = document.getElementById('entityDiv');
	var numi = document.getElementById('ent_relation_index');
	var num = (document.getElementById("ent_relation_index").value -1)+ 2;
	numi.value = num;
	var divIdName = "entity"+num+"Div";
	var newdiv = document.createElement('div');
	newdiv.setAttribute("id",divIdName);
// populate the drop-down
old_person_select = document.getElementById("entity_1_select");
old_role_select = document.getElementById("entity_role_1");

nameheading_tr = document.createElement("tr");
nameheading_tr.appendChild(document.createElement("td"));
nameheading_td1 = document.createElement("td");
//nameheading_td1.setAttribute("width", $('aff_label_row').width);
nameheading_label1 = document.createElement("label");
nameheading_label1.appendChild(document.createTextNode("or create new entity"));
nameheading_td1.appendChild(nameheading_label1);
nameheading_tr.appendChild(nameheading_td1);
nameheading_tr.appendChild(document.createElement("td"));
newdiv.appendChild(nameheading_tr);


tr1 = document.createElement("tr");
td1 = document.createElement("td");
table1 = document.createElement("table");
tr2 = document.createElement("tr");
td2 = document.createElement("td");
td2.appendChild(document.createTextNode(num + "."));
td3 = document.createElement("td");

newselect = old_person_select.cloneNode(true);
newselect.setAttribute("id","entity_select[" + num + "]");
newselect.setAttribute("name","entity_select[" + num + "]");
td3.appendChild(newselect);

tr2.appendChild(td2);
tr2.appendChild(td3);
table1.appendChild(tr2);
td1.appendChild(table1);
tr1.appendChild(td1);

newnames_td = document.createElement("td");
newnames_table = document.createElement("table");
newnames_tr = document.createElement("tr");
newnames_first_td = document.createElement("td");
newnames_first = document.createElement("input");
newnames_first.setAttribute("type","text");
newnames_first.setAttribute("name","new_entity[" + num + "]");
newnames_first_td.appendChild(newnames_first);
newnames_tr.appendChild(newnames_first_td);
newnames_last_td = document.createElement("td");
newnames_tr.appendChild(newnames_last_td);
newnames_table.appendChild(newnames_tr);
newnames_td.appendChild(newnames_table);
tr1.appendChild(newnames_td);

newdiv.appendChild(tr1);

roleheading_tr = document.createElement("tr");
roleheading_td1 = document.createElement("td");
roleheading_table1 = document.createElement("table");
roleheading_tr1 = document.createElement("tr");
roleheading_td2 = document.createElement("td");
roleheading_td2.appendChild(document.createTextNode("relationship"));
roleheading_tr1.appendChild(roleheading_td2);
roleheading_table1.appendChild(roleheading_tr1);
roleheading_td1.appendChild(roleheading_table1);
roleheading_tr.appendChild(roleheading_td1);
roleheading_td3 = document.createElement("td");
roleheading_tr.appendChild(roleheading_td3);
newdiv.appendChild(roleheading_tr);

role_tr = document.createElement("tr");
	role_td = document.createElement("td");
		role_table = document.createElement("table");
			role_table_tr = document.createElement("tr");
				role_table_tr.appendChild(document.createElement("td"));
				role_table_td = document.createElement("td");
					new_role_select = old_role_select.cloneNode(true);
					new_role_select.setAttribute("id","entity_role[" + num + "]");
					new_role_select.setAttribute("name","entity_role[" + num + "]");
					role_table_td.appendChild(new_role_select);
				role_table_tr.appendChild(role_table_td);
			role_table.appendChild(role_table_tr);
		role_td.appendChild(role_table);
	role_tr.appendChild(role_td);
	new_role_td = document.createElement("td");
		new_role_input = document.createElement("input");
		new_role_input.setAttribute("type", "text");
		new_role_input.setAttribute("name", "new_role[" + num + "]");
		new_role_td.appendChild(new_role_input);
	role_tr.appendChild(new_role_td);

newdiv.appendChild(role_tr);

del_tr = document.createElement("tr");
del_tr.setAttribute("id","add_entity_block_" + num);
  del_td = document.createElement("td");
  del_td.setAttribute("colspan","2");
  del_td.innerHTML = "<a href=\"javascript:;\" onclick=\"Element.remove('" + divIdName + "');\">remove</a>";
  del_tr.appendChild(del_td);
 newdiv.appendChild(del_tr);

//div_tr = document.createElement("tr");
//div_tr.setAttribute("id","add_person_block_" + num);
//  div_td = document.createElement("td");
//  div_td.setAttribute("colspan","2");
//  div_td.innerHTML = "<a href=\"javascript:;\" onclick=\"addPersonBlock();\">Add another person</a><div id=\"" + divIdName + "\"> </div>";
//  div_tr.appendChild(div_td);
// newdiv.appendChild(div_tr);

//ni.appendChild(newdiv);
//$('person_table').appendChild(newdiv);
//document.insertBefore(newdiv,$('myDiv'));
	addlink = $("add_entity_link");
	table = $("form_table");
	addlink.parentNode.insertBefore(newdiv,addlink);
	
	
}




function removeElement(divNum)
{
var d = document.getElementById('myDiv');
var olddiv = document.getElementById(divNum);
d.removeChild(olddiv);
}
function autosize_textarea(fieldname) {
	ta = document.getElementById(fieldname);
	if (ta != null) {
		updateTextareaHeight(ta);
	}
}


/*
 * Copyright 2006 by Scott Tabar
 * Usage is granted as long as this credit remains in place.
 * If used in a production/commerical product, then please drop 
 * me a line at http://scott-tabar-safari.blogspot.com
 */
function updateTextareaHeight(obj)
{
  if ( obj == null ) {
    return false;
  }

  // NOTE: This is using regular expressions to count spaces and linefeeds
  var objText = obj.value;
  var fontFamilyAdj = obj.style.fontFamily == "Courier" ? 1.1 : .9;
  var linefeedsArray = objText.match(/[\n\r]/g);
  var linefeeds = ( linefeedsArray == null ? 0 : linefeedsArray.length);
  var spacesArray =    objText.match(/[ \t]/g);
  var spaces = ( spacesArray == null ? 1 : spacesArray.length + 1);

  var avgWordSize = Math.round( obj.value.length / spaces + .5);
  // A large word is greater than 35% of the adj cols
  var adjColumns = Math.round(obj.cols / fontFamilyAdj);
  var largeWordSize = Math.round( adjColumns * .35 );

  var regExpStr = "\\w{" + largeWordSize + ",}";
  var largeWordArray = objText.match( new RegExp( regExpStr, "g" ));
  var largeWordCount = (largeWordArray == null ? 0 : largeWordArray.length);

  var extraRows = Math.round( obj.value.length / adjColumns) + 1;
  extraRows += Math.round( largeWordCount * .5 );

  // Density tries to measure large white space vs ideal fill
  var density = Math.round( objText.length / (adjColumns * 
                        (linefeeds + extraRows)) * 100 ) / 100;
  if ( density < .7 && density > .2 && 
        objText.length > adjColumns && linefeeds > 0 ) {
    extraRows += Math.round( fontFamilyAdj / density + .5);
    extraRows -= Math.round( linefeeds * (linefeeds < 20 ? .2 : .1) );
  }

  var newRows = linefeeds + extraRows;

  var debugStr = "TEXTAREA id=" + obj.id + " newRows= " + newRows + 
       " linefeeds=" + linefeeds + " extraRows=" + extraRows +
       " density=" + density + 
       " fontFamilyAdj=" + fontFamilyAdj + 
       " spaces=" + spaces +
       " avgWordSize=" + avgWordSize + " cols=" + obj.cols + 
       " adjColumns=" + adjColumns + 
       " largeWordsize=" + largeWordSize + 
       " largeWordCount=" + largeWordCount;
  document.getElementById( "debugText" ).innerText = debugStr;


  if ( newRows != obj.rows )  {
    obj.rows=newRows;
  }
}