/* This script and many more are available free online at
The JavaScript Source!! http://javascript.internet.com
Created by: Ilanio | http://www.webdeveloper.com/forum/showthread.php?t=119753 */
var aMail2 = new Array("","Aldrich","Aldrich & Harris","Aldrich & Meyer","Anderson","Arnold & Clark","Baldwin","Berry","Blainville","Born","Bose","Broderip","Brown & Pilsbry","Bruggen","Call","Carpenter","Casey","Caster","Clarke","Claypole","Cleland","Cole","Conrad","Conrad In Gabb","Cooke","Coquand","Cossmann","Cotteau","Crosse","Dall","De Gregorio","Deshayes","Dillwyn","D'orbigny","Douville","Duncan","Dusenbury","Eaton","Edwards","Edwards & Haime","Emmons","Engelhardt","F & H. Hodson","F. Hodson","Fischer Von Waldheim","Flower","Flower & Caster","Gabb","Gardiner","Gardner","Gardner & Bowles","Gerth","Girty","Glenn","Gmelin","Gould","Gray","Grzybowski","Guppy","H. Douville","H.K. Hodson","Hall","Hanley","Hanna & Israelsky","Harris","Harris  &  Hodson","Harris & Hodson","Harris In Dall","Harris, F & H.K. Hodson","Hartt & Rathbun","Hartt In Rathbun","Hawkins","Haynes","Heilprin","Hielprin","Hodson, F & Harris","Hodson, F.","Hodson, F. & H.K.","Hodson, H.K.","Hwass","Johnson","Johnson & Pilsbry","Kindle","Kozlowski","Lamarck","Lamarck?","Lambert","Langdon","Laville In Cossmann","Lea","Lea,H.C.","Lesueur","Li","Linnaeus","Linne","Marshall & Bowles","Maury","Maury,C.","Mcnair","Menke","Meyer","Meyer & Aldrich","Montfort","Morris And Sharpe","Morton","Nelson","Nicol","Nomland","Olsson","Palmer","Palmer & Brann","Perry","Philippi","Phillips?","Pilsbry & Brown","Pilsbry & Johnson","Pilsbry & Sharp","Plummer","Pulteney","Rathbun","Raymond","Recluz","Reeve","Reuss","Roemer","Rogers","Rogers & Rogers","Roig","Saemann","Safford","Say","Schoonover","Shepard","Shuttleworth","Simpson","Solander","Sowerby","Spengler","Spieker","Stenzel & Turner","Stieler","Stimpson","Thomas","Toula","Tucker","Tucker & Wilson","Tuomey & Holmes","Ulrich","Ulrich Et Al.","Valenciennes","Van Winkle","Van Winkle [Palmer]","Vanatta","Vanuxem","Vaughan","Wagner","Warren","Weisbord","Weisbord In Harris","Weisbord In Tucker-Rowlan","Wells","Whitfield","Wilckens","Williams","Williston In Hodson","Williston In Weisbord","Wood","Woods");
aMail2.sort();

function CompleteAuth(obj, evt) {
	 if ((!obj) || (!evt) || (aMail2.length == 0)) {
 	 	return;
  }

  if (obj.value.length == 0) {
  		return;
  }

  var elm = (obj.setSelectionRange) ? evt.which : evt.keyCode;

  if ((elm < 32) || (elm >= 33 && elm <= 46) || (elm >= 112 && elm <= 123)) {
  		return;
  }

  var txt = obj.value.replace(/;/gi, ",");
  elm = txt.split(",");
  txt = elm.pop();
  txt = txt.replace(/^\s*/, "");

  if (txt.length == 0) {
  		return;
  }

  if (obj.createTextRange) {
   	var rng = document.selection.createRange();
  		if (rng.parentElement() == obj) {
   			elm = rng.text;
  	 		var ini = obj.value.lastIndexOf(elm);
  		}
  } else if (obj.setSelectionRange) {
  		var ini = obj.selectionStart;
  }

  for (var i = 0; i < aMail2.length; i++) {
   	elm = aMail2[i].toString();
  		if (elm.toLowerCase().indexOf(txt.toLowerCase()) == 0) {
   			obj.value += elm.substring(txt.length, elm.length);
  	 		break;
  		}
  }

  if (obj.createTextRange) {
  		rng = obj.createTextRange();
  		rng.moveStart("character", ini);
  		rng.moveEnd("character", obj.value.length);
  		rng.select();
  } else if (obj.setSelectionRange) {
  		obj.setSelectionRange(ini, obj.value.length);
  }
}
