
/* treeutils.js */
var $trees;if("undefined"==typeof TGN){$trees=YAHOO.namespace("Ancestry.Trees")}else{$trees=TGN.namespace("TGN.Ancestry.Trees")}$trees.res={resourceStrings:null,getString:function(a){var b=(null!=$trees.res.resourceStrings)?$trees.res.resourceStrings[a]:null;return(b)?b:"$$"+a},setString:function(a,b){if(!$trees.res.resourceStrings){$trees.res.resourceStrings={}}$trees.res.resourceStrings[a]=b}};$trees.content={objs:null,getObject:function(a){return(null!=$trees.content.objs)?$trees.content.objs[a]:null},setObject:function(a,b){if(!$trees.content.objs){$trees.content.objs={}}$trees.content.objs[a]=b},getPersonKey:function(b,a){return"person_"+a.toString()},setPerson:function(c,a,b){$trees.content.setObject($trees.content.getPersonKey(c,a),b)},getPerson:function(b,a){return $trees.content.getObject($trees.content.getPersonKey(b,a))},addPerson:function(h,o,a,d,b,q,f,e,g,k,p,n,c,j,i){var l=/"/g;k=k.replace(l,"'");var m={typ:h,rel:o,name:a,gname:d,sname:b,birth:q,birthPlace:f,death:e,deathPlace:g,linkUrl:k,imgUrl:p,gender:n,sid:c,pid:j,tid:i};$trees.content.setPerson(i,j,m);return m}};$trees.util={gotoTemplate:null,setGotoTemplate:function(a){$trees.util.gotoTemplate=a},gotoPerson:function(c,a){if($trees.util.gotoTemplate!=null&&a!=null){var b=$trees.util.gotoTemplate.replace("{t}",c).replace("{p}",a);window.location.href=b}},getShortName:function(b){if(b&&40<b.length){var a=[];a=b.split(" ");b=a[0].charAt(0)+" ";b+=a[a.length-1]}return b},getYearFromDate:function(a){var c="";if(a&&""!=a){var b=validDateSimple(a);if(0==b[0]){c=b[1]}}return c},imposeMaxLength:function(b,a){if(b.value.length>a){b.value=b.value.substring(0,a)}return true},htmlEncode:function(a){var c=document.createElement("div");var b=document.createTextNode(a);c.appendChild(b);return c.innerHTML},htmlDecode:function(a){var b=document.createElement("div");b.innerHTML=a.replace(/<\/?[^>]+>/gi,"");return b.childNodes[0]?b.childNodes[0].nodeValue:""}};
/* hints.js */
function hintHoverUpdate(g,f,d){var e=document.getElementById("hintsTitle"+d);var a=document.getElementById("hintRecordLink"+d);var c=document.getElementById("hintPersonaLink"+d);var b=document.getElementById("hintObjectLink"+d);if(a!=null&&c!=null&&b!=null){if(f){e.style.display="none";a.style.display="none";c.style.display="none";b.style.display="none"}}}function getIEVersion(){version=0;if(navigator.appVersion.indexOf("MSIE")!=-1){var a=navigator.appVersion.split("MSIE");version=parseFloat(a[1])}return version}function hintHover(){showPop("hintHoverDiv")}function hintOut(){hidePop("hintHoverDiv")}var hintURLArray=new Array("","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","");var hintPidArray=new Array("","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","");var hintURLArrayIndex=0;var hintRequestInProgress=false;var onHintRequestComplete=null;function OnHintComplete(m){hintRequestInProgress=false;var w=m.responseXML.documentElement;if(w!=null){var k=w.getElementsByTagName("personaCount")[0];if(k!=null){var n=k.firstChild.data;var i=parseInt(n);k=w.getElementsByTagName("pid")[0];if(k!=null){var l=k.firstChild.data;k=w.getElementsByTagName("recordCount")[0];if(k!=null){n=k.firstChild.data;var c=parseInt(n);k=w.getElementsByTagName("objectCount")[0];if(k!=null){n=k.firstChild.data;var e=parseInt(n);var s=document.getElementById("hintIcon"+l);var v=document.getElementById("hintWorkingIcon"+l);if(s!=null){s.style.display="none"}if(v!=null){v.style.display="none"}if((c>0||i>0)&&s!=null){s.style.display="inline"}var q=document.getElementById("hintRecordCount"+l);var a=document.getElementById("hintPersonaCount"+l);var h=document.getElementById("hintObjectCount"+l);var b=document.getElementById("hintStatus"+l);if(q!=null){q.value=c}if(a!=null){a.value=i}if(h!=null){h.value=e}if(b!=null){b.value=1}var j=document.getElementById("hintHover"+l);if(j==null){j=document.getElementById("hintHover");if(j!=null){l=""}}var t=document.getElementById("hintsTitle"+l);var f=document.getElementById("hintRecordLink"+l);var g=document.getElementById("hintPersonaLink"+l);var p=document.getElementById("hintObjectLink"+l);var u=document.getElementById("phSpan"+l);var d=document.getElementById("rhSpan"+l);var r=document.getElementById("ohSpan"+l);if(t!=null&&f!=null&&g!=null&&p!=null&&u!=null&&d!=null&&r!=null){if(c>0||i>0||e>0){t.style.display=""}else{t.style.display="none"}if(c>0){f.style.display="";d.innerHTML=c}else{f.style.display="none"}if(i>0){g.style.display="";u.innerHTML=i}else{g.style.display="none"}if(e>0){p.style.display="";r.innerHTML=e}else{p.style.display="none"}if(j!=null){if(c>0||i>0||e>0){j.style.display=""}else{j.style.display="none"}}}if(typeof onHintRequestComplete=="function"){onHintRequestComplete(l)}}}}}}initiateHintRequest()}function OnHintError(l){hintRequestInProgress=false;var u=l.responseXML.documentElement;if(u!=null){var q=u.getElementsByTagName("throttled")[0];var j=u.getElementsByTagName("pid")[0];if(j!=null){var k=j.firstChild.data;var d=0;var h=0;var f=0;var s=document.getElementById("hintWorkingIcon"+k);var p=document.getElementById("hintIcon"+k);var m=document.getElementById("hintRecordCount"+k);var a=document.getElementById("hintPersonaCount"+k);var g=document.getElementById("hintObjectCount"+k);var c=document.getElementById("hintStatus"+k);if(m!=null&&m.value.length>0){d=parseInt(m.value)}if(a!=null&&a.value.length>0){h=parseInt(a.value)}if(g!=null&&g.value.length>0){f=parseInt(g.value)}if(c!=null){c.value=1}var i=document.getElementById("hintHover"+k);if(i==null){i=document.getElementById("hintHover");if(i!=null){k=""}}else{var r=document.getElementById("phSpan"+k);var e=document.getElementById("rhSpan"+k);var n=document.getElementById("ohSpan"+k);h=parseInt(r.innerHTML.length>0?r.innerHTML:"0");d=parseInt(e.innerHTML.length>0?e.innerHTML:"0");f=parseInt(n.innerHTML.length>0?n.innerHTML:"0")}var t=d+h+f;if(s!=null){s.style.display="none"}if(p!=null){p.style.display=(t>0)?"":"none"}if(i!=null){i.style.display=(t>0)?"":"none"}if(q!=null){var b=document.getElementById("throttledMsgDiv");if(b!=null){b.style.display=""}}}}initiateHintRequest()}function addHintURL(c,b,a){hintURLArray[c]=b;hintPidArray[c]=a}function clearHintURL(){hintURLArray=new Array("","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","");hintPidArray=new Array("","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","");hintURLArrayIndex=0}function setOnHintRequestComplete(a){onHintRequestComplete=a}function initiateHintRequests(){initiateHintRequest()}function initiateHintRequest(){if(hintRequestInProgress==false){var b=hintURLArray[hintURLArrayIndex];while(hintURLArrayIndex<31&&b.length==0){hintURLArrayIndex++;b=hintURLArray[hintURLArrayIndex]}if(hintURLArrayIndex<31&&b.length>0){hintRequestInProgress=true;YAHOO.util.Connect.asyncRequest("GET",hintURLArray[hintURLArrayIndex],{success:OnHintComplete,failure:OnHintError});var c=document.getElementById("hintWorkingIcon"+hintPidArray[hintURLArrayIndex]);if(c!=null){c.style.display=""}var d=document.getElementById("hintIcon"+hintPidArray[hintURLArrayIndex]);if(d!=null){d.style.display="none"}var e=document.getElementById("hintHover"+hintPidArray[hintURLArrayIndex]);if(e!=null){e.style.display=""}var a=document.getElementById("hintStatus"+hintPidArray[hintURLArrayIndex]);if(a!=null){a.value=0}hintURLArrayIndex++}}};
/* validation.js */
var monthNamesAll=null;var monthAbbrs=null;var aboutAbbr=null;var beforeAbbr=null;var afterAbbr=null;var betweenAbbr=null;var conjunctionAbbr=null;var rangeAbbr=null;var unknown=null;var monthDayYearOrder=null;var warnDateYearTooBig=null;var warnDateTwoMonths=null;var warnDateDayWithoutMonth=null;var warnDateTwoDays=null;var warnDateTwoYears=null;var warnDateDayTooLarge=null;var warnDateMonthTooLarge=null;var warnDateInvalidMonth=null;var warnDateBirthBeforeMother=null;var warnDateBirthAfterMother=null;var warnDateBirthBeforeFather=null;var warnDateBirthAfterFather=null;var warnDateBirth120BeforeDeath=null;var warnDateDeath120AfterBirth=null;var warnDateBeforeBirth=null;var warnDateAfterDeath=null;var warnDateMayBeWrong=null;var warnStillUseIt=null;var warnOfTheSpouse=null;var badBirthDate=null;var badDeathDate=null;var badMarriageDate=null;var warnLastName=null;var warnNameFather=null;var warnNameMaiden=null;var invalidNameChars=null;var errorNameInvalidChar=null;function initValidationStrings(){monthNamesAll=[$trees.res.getString("g.monthNamesJan"),$trees.res.getString("g.monthNamesFeb"),$trees.res.getString("g.monthNamesMar"),$trees.res.getString("g.monthNamesApr"),$trees.res.getString("g.monthNamesMay"),$trees.res.getString("g.monthNamesJun"),$trees.res.getString("g.monthNamesJul"),$trees.res.getString("g.monthNamesAug"),$trees.res.getString("g.monthNamesSep"),$trees.res.getString("g.monthNamesOct"),$trees.res.getString("g.monthNamesNov"),$trees.res.getString("g.monthNamesDec")];monthAbbrs=[$trees.res.getString("g.monthAbbrsJan"),$trees.res.getString("g.monthAbbrsFeb"),$trees.res.getString("g.monthAbbrsMar"),$trees.res.getString("g.monthAbbrsApr"),$trees.res.getString("g.monthAbbrsMay"),$trees.res.getString("g.monthAbbrsJun"),$trees.res.getString("g.monthAbbrsJul"),$trees.res.getString("g.monthAbbrsAug"),$trees.res.getString("g.monthAbbrsSep"),$trees.res.getString("g.monthAbbrsOct"),$trees.res.getString("g.monthAbbrsNov"),$trees.res.getString("g.monthAbbrsDec")];aboutAbbr=$trees.res.getString("g.dateAboutAbbr");beforeAbbr=$trees.res.getString("g.dateBeforeAbbr");afterAbbr=$trees.res.getString("g.dateAfterAbbr");betweenAbbr=$trees.res.getString("g.dateBetweenAbbr");conjunctionAbbr=$trees.res.getString("g.dateConjunctionAbbr");rangeAbbr=$trees.res.getString("g.dateRangeAbbr");unknown=$trees.res.getString("g.unknown");monthDayYearOrder=$trees.res.getString("g.monthDayYearOrder");warnDateYearTooBig=$trees.res.getString("g.warnDateYearTooBig");warnDateTwoMonths=$trees.res.getString("g.warnDateTwoMonths");warnDateDayWithoutMonth=$trees.res.getString("g.warnDateDayWithoutMonth");warnDateTwoDays=$trees.res.getString("g.warnDateTwoDays");warnDateTwoYears=$trees.res.getString("g.warnDateTwoYears");warnDateDayTooLarge=$trees.res.getString("g.warnDateDayTooLarge");warnDateMonthTooLarge=$trees.res.getString("g.warnDateMonthTooLarge");warnDateInvalidMonth=$trees.res.getString("g.warnDateInvalidMonth");warnDateBirthBeforeMother=$trees.res.getString("g.warnDateBirthBeforeMother");warnDateBirthAfterMother=$trees.res.getString("g.warnDateBirthAfterMother");warnDateBirthBeforeFather=$trees.res.getString("g.warnDateBirthBeforeFather");warnDateBirthAfterFather=$trees.res.getString("g.warnDateBirthAfterFather");warnDateBirth120BeforeDeath=$trees.res.getString("g.warnDateBirth120BeforeDeath");warnDateDeath120AfterBirth=$trees.res.getString("g.warnDateDeath120AfterBirth");warnDateBeforeBirth=$trees.res.getString("g.warnDateBeforeBirth");warnDateAfterDeath=$trees.res.getString("g.warnDateAfterDeath");warnDateMayBeWrong=$trees.res.getString("g.warnDateMayBeWrong");warnStillUseIt=$trees.res.getString("g.warnStillUseIt");warnOfTheSpouse=$trees.res.getString("g.warnOfTheSpouse");badBirthDate=$trees.res.getString("g.badBirthDate");badDeathDate=$trees.res.getString("g.badDeathDate");badMarriageDate=$trees.res.getString("g.badMarriageDate");warnLastName=$trees.res.getString("g.warnLastName");warnNameFather=$trees.res.getString("g.warnNameFather");warnNameMaiden=$trees.res.getString("g.warnNameMaiden");invalidNameChars=$trees.res.getString("g.invalidNameCharsJS");errorNameInvalidChar=$trees.res.getString("g.errorNameInvalidChar")}function validDate(g,e,b,h,a,i,d,k,j){var n=g.toLowerCase();var f=false;var m;var l=[0,""];if(n.length>0){if(n.indexOf(unknown.toLowerCase())>=0){n=""}if(!isDigit(n.charAt(0))){var c=parseModifier(n,aboutAbbr);if(c.length<n.length){n=c}else{c=parseModifier(n,beforeAbbr);if(c.length<n.length){n=c}else{c=parseModifier(n,afterAbbr);if(c.length<n.length){n=c}else{if(j){c=parseModifier(n,betweenAbbr);if(c.length<n.length){n=c;f=true}}}}}}if(j){if(f){m=new Array(2);m=splitDateRange(n,true)}else{m=new Array(2);m=splitDateRange(n,false)}if(m[0].length>0&&m[1].length>0){l=validDate(m[0],e,b,h,a,i,d,k);if(l[0]==0){l=validDate(m[1],e,b,h,a,i,d,k)}return l}}l=validateDate(n);if(l[0]==0&&l[1].length>0&&e.length>0){l[0]=checkDates(l[1],l[2],l[3],e,b,h,a,i,d,k)}if(l[0]!=0){l[1]=getWarning(l[0])}}return l}function getWarning(a){switch(a){case 1:return warnDateYearTooBig;case 2:return warnDateTwoMonths;case 3:return warnDateDayWithoutMonth;case 4:return warnDateTwoDays;case 5:return warnDateTwoMonths;case 6:return warnDateTwoYears;case 7:return warnDateDayTooLarge;case 8:return warnDateMonthTooLarge;case 9:return warnDateInvalidMonth;case 101:return warnDateBirthBeforeMother;case 102:return warnDateBirthAfterMother;case 103:return warnDateBirthBeforeFather;case 104:return warnDateBirthAfterFather;case 105:return warnDateBirth120BeforeDeath;case 106:return warnDateDeath120AfterBirth;case 107:return warnDateBeforeBirth;case 108:return warnDateAfterDeath;default:return""}}function splitDateRange(a,e){var c=new Array(2);c[0]="";c[1]="";var g=(e)?conjunctionAbbr:rangeAbbr;var d=g.split("|");for(var b=0;b<d.length;b++){var f=d[b];var h=a.indexOf(f);if(h>0&&a.length>h+f.length){if(a.indexOf(f,h+1)==-1&&(!isLetter(a.charAt(h))||!isLetter(a.charAt(h-1)))&&(!isLetter(a.charAt(h+f.length))||!isLetter(a.charAt(h+f.length-1)))){c[0]=a.substring(0,h);c[1]=a.substring(h+f.length)}}}return c}function validDateOwt(a){return validDate(a,"","","","","","","",false)}function validDateSimple(a){return validDate(a,"","","","","","","",true)}function validateDate(a){var h=new Array(4);var b=getTokens(a);var s=new Array();var p=new Array();var j=0;var n=new Array();var l=0;var e=0;var r=0;var k=false;var m=new Date();var q=m.getFullYear();b=stripDayModifier(b);for(var g=0;g<b.length;g++){var c=b[g];if(isDigit(c.charAt(0))){if(c<=31){s.push(c)}if(c<=12){p.push(c)}if(c<=q){if(s.length==0&&p.length==0){k=true}n.push(c)}else{h[0]=1;return h}}else{var o=monthTextToNumber(c.toLowerCase());if(o>0){if(j>0){h[0]=2;return h}j=o}else{h[0]=9;return h}}}if(j>0){l=j;p.length=0}else{if(p.length==1){l=p[0];removeItem(s,l);removeItem(n,l)}}if(s.length==1){e=s[0];removeItem(n,e);if(l==0){h[0]=3;return h}}else{if(s.length>1){switch(s.length){case 2:if(p.length==2){l=p[0];e=s[1];if(l!=e&&monthDayYearOrder.indexOf("D")<monthDayYearOrder.indexOf("M")&&(k==false||monthDayYearOrder.indexOf("Y")==0)){var f=e;e=l;l=f}s[0]=e;s.length=1;removeItem(n,e);p[0]=l;p.length=1;removeItem(n,l)}else{if(n.length==2){e=s[0];if(monthDayYearOrder.indexOf("Y")<monthDayYearOrder.indexOf("D")){e=s[1];s[0]=e}s.length=1;removeItem(n,e)}else{h[0]=4;return h}}break;case 3:if(n.length==3&&p.length==0){e=s[monthDayYearOrder.indexOf("D")];l=s[monthDayYearOrder.indexOf("M")];n[0]=s[monthDayYearOrder.indexOf("Y")];n.length=1;p[0]=l;p.length=1;s[0]=e;s.length=1}break;default:h[0]=4;return h}}}if(p.length>1){h[0]=5;return h}if(n.length==1){r=n[0]}else{if(n.length>1){if(s.length==0){if(p.length==0){h[0]=6;return h}else{h[0]=7;return h}}else{if(j==0&&p.length==0){h[0]=8;return h}else{h[0]=6;return h}}}}if(l>0&&e>0){if(!isDayInBounds(l,e,r)){h[0]=7;return h}}h[0]=0;if(n.length>0){h[1]=r}else{h[1]=""}h[2]=l;h[3]=e;return h}function stripDayModifier(c){var a=new Array();for(var b=0;b<c.length;b++){if(!isLetter(c[b].charAt(0))){a.push(c[b])}else{if(isLetter(c[b].charAt(0))&&c[b].length>2){a.push(c[b])}else{if(c[b]!="th"&&c[b]!="nd"&&c[b]!="rd"&&c[b]!="st"&&c[b].length>2){a.push(c[b])}}}}return a}function monthTextToNumber(d){var c=0;for(var b=0;b<12;b++){var f=monthAbbrs[b].split(":");for(var a=0;a<f.length;a++){if(d==f[a]){return b+1}}var e=":"+d;if(monthNamesAll[b].indexOf(e)>=0){if(c>0){return 0}c=b+1}}return c}function parseModifier(e,b){var d=e.toLowerCase();var a=b.split("|");for(var c=0;c<a.length;c++){if(d.substring(0,a[c].length+1)==a[c]+" "){return e.substring(a[c].length+1)}}return e}function checkDates(k,j,m,d,b,e,a,f,c,g){var l=null;var i=null;var h=null;var n=null;if(d=="birth"){if(a!=null&&a.length>0){n=validateDate(a);if(n[0]==0&&n[1].length>0){if(k<(parseInt(n[1])+15)){return 101}}}if(f!=null&&f.length>0){n=validateDate(f);if(n[0]==0&&n[1].length>0){if(k>(parseInt(n[1]))){return 102}}}if(c!=null&&c.length>0){h=validateDate(c);if(h[0]==0&&h[1].length>0){if(k<parseInt(h[1])+17){return 103}}}if(g!=null&&g.length>0){h=validateDate(g);if(h[0]==0&&h[1].length>0){if(k>(parseInt(h[1])+1)){return 104}}}if(i==null&&e!=null&&e.length>0){i=validateDate(e)}if(i!=null&&i[0]==0&&i[1].length>0){if(k<parseInt(i[1])-120){return 105}}}else{if(l==null&&b!=null&&b.length>0){l=validateDate(b)}if(d=="death"){if(l!=null&&l[0]==0&&l[1].length>0){if(k>parseInt(l[1])+120){return 106}}}if(l!=null&&l[0]==0){if(dateCompare(k,j,m,l[1],l[2],l[3])==-1){return 107}}}if(d!="death"&&d!="burial"&&d!="cremation"){if(i==null&&e.length>0){i=validateDate(e)}if(i!=null&&i[0]==0){if(dateCompare(k,j,m,i[1],i[2],i[3])==1){return 108}}}return 0}function dateCompare(c,a,f,b,e,d){if(c!=null&&c.length>0&&b!=null&&b.length>0){if(parseInt(c)<parseInt(b)){return -1}else{if(parseInt(c)>parseInt(b)){return 1}else{if(a!=null&&a>0&&e!=null&&e>0){if(parseInt(a)<parseInt(e)){return -1}else{if(parseInt(a)>parseInt(e)){return 1}else{if(f!=null&&f.length>0&&d!=null&&d.length>0){if(parseInt(f)<parseInt(d)){return -1}else{if(parseInt(f)>parseInt(d)){return 1}else{return 0}}}}}}}}}return 0}function getTokens(h){var b=new Array();var f="";var a=false;var g=false;var e=" /-.,:;";for(var d=0;d<h.length;d++){var j=h.charAt(d);if(isDigit(j)){if(!g){f+=j}else{b.push(f);f=j;g=false}a=true}else{if(e.indexOf(j)!=-1){if(f.length>0){b.push(f);f="";g=false;a=false}}else{if(!a){f+=j}else{b.push(f);f=j;a=false}g=true}}}if(f.length>0){b.push(f)}return b}function isDigit(a){if(a<"0"||a>"9"){return false}return true}function isLetter(a){if(a>="a"&&a<="z"){return true}else{if(a>="A"&&a<="Z"){return false}}}function removeItem(d,c){for(var b=0;b<d.length;b++){if(d[b]==c){for(var a=b;a<d.length-1;a++){d[a]=d[a+1]}d.length--}}return d}function isDayInBounds(d,a,c){if(a<1){return false}switch(d){case 4:case 6:case 9:case 11:return(a<=30);case 2:var b=29;if(c>0){if(c%4!=0){b=28}else{if(c%400==0){b=29}else{if(c%100==0){b=28}}}}return(a<=b);default:return(a<=31)}}function checkForInvalidChar(b){for(var a=0;a<b.length;a++){if(invalidNameChars.indexOf(b.charAt(a))>=0){return b.charAt(a)}}return""}function validateSurname(e,d,a){var c=e.toLowerCase();var b=d.toLowerCase();var f=a.toLowerCase();if(b.length>0){if(c!=b){if(nameMatch(c,f)){return warnNameMaiden}else{return warnNameFather}}}else{if(nameMatch(c,f)){return warnNameMaiden}}return""}function nameMatch(a,d){if(a.length>0){var c=d.split(";");for(var b=0;b<c.length;b++){if(a==c[b]){return true}}}return false};
/* autosuggest.js */
function AutoSuggestControl(c,a,e,n,q,b,m,k,g,j,d,f,p,t,r,s){if(c==null){return}this.textbox=c;this.uid=e;this.tid=n;this.type=q;this.hiddenField=b;this.hiddenField2=s;this.myOnblur=m;this.myOnfocus=k;var i="/pt/ajax/AutoSuggestionsHandler.ashx";var h=["suggestion","name","pid","date","sep"];if(q!="name"){h=["suggestion","place","sep"]}var l=new YAHOO.widget.DS_XHR(i,h);l.scriptQueryParam="inp";l.scriptQueryAppend="NoUcdmRedir=1&ver="+new Date().getTime()+"&uid="+e+"&tid="+n+"&type="+q;l.responseType=YAHOO.widget.DS_XHR.TYPE_XML;l.maxCacheEntries=0;this.myAutoComp=new YAHOO.widget.AutoComplete(c.id,a.id,l);this.myAutoComp.maxResultsDisplayed=20;this.myAutoComp.queryDelay=0.2;this.myAutoComp.useShadow=true;this.myAutoComp.forceSelection=(q=="name");this.myAutoComp.asType=q;this.myAutoComp.typeAhead=false;if(r==null){r=3}else{if(typeof r=="string"){r=parseInt(r,10);if(isNaN(r)){r=3}}}this.myAutoComp.minQueryLength=r;this.myAutoComp.animHoriz=false;this.myAutoComp.animVert=false;this.myAutoComp.autoHighlight=false;this.myAutoComp.formatResult=function(v,z){var u=v[0];var w;if(this.asType=="name"){u=u.replace(new RegExp("\\$\\[;","gi"),'<span class="autoSuggestHighlight">');u=u.replace(new RegExp("\\$\\];","gi"),"</span>");var y=v[2];if(y==null||y.length==0){y="&nbsp;"}u="<dl><dt class='autoSuggestPersonName'>"+u+"</dt> <dd class='autoSuggestPersonDate'><em>"+y+"</em></dd></dl><div class='clearDiv'></div>";w=v[3]}else{w=v[1]}if(w=="1"){u='<div class="autoSuggestSeparator"></div>'+u}return u};this.myAutoComp.originalForceSelection=this.myAutoComp.forceSelection;this.myAutoComp.hiddenField=b;this.myAutoComp.hiddenField2=s;this.myAutoComp.textbox=c;this.myAutoComp.startClass="autoSuggestStart";this.myAutoComp.typeClass="autoSuggestType";this.myAutoComp.newClass="autoSuggestNew";if(typeof p!="undefined"&&p!=null){this.myAutoComp.maxResultsDisplayed=p}if(typeof j!="undefined"&&j!=null){this.myAutoComp.startClass=j}if(typeof d!="undefined"&&d!=null){this.myAutoComp.typeClass=d}if(typeof f!="undefined"&&f!=null){this.myAutoComp.newClass=f}if(typeof g=="string"){this.myAutoComp.instructionText=g}if(c.value.length>0){if(typeof this.myAutoComp.instructionText=="undefined"||c.value!=this.myAutoComp.instructionText){this.myAutoComp.forceSelection=false;this.textbox.className=this.myAutoComp.newClass}}this.myTextboxKeyEvent=function(v,u){if(this.forceSelection==false){this.forceSelection=this.originalForceSelection}};if(typeof t!="undefined"&&t!=null){this.myAutoComp.myOnSelect=t}this.myItemSelectEvent=function(w,v){var u;if(v[2].length>1&&this.hiddenField!=null){this.hiddenField.value=v[2][1];u=v[2][0];if(this.asType=="name"){u=u.replace(new RegExp("\\$\\[;","gi"),"");u=u.replace(new RegExp("\\$\\];","gi"),"");if(this.hiddenField2!=null){this.hiddenField2.value=v[2][2]}}this.textbox.value=o(u);if(this.myOnSelect!=null){this.myOnSelect(v[2][1])}}else{u=v[2][0];this.textbox.value=o(u)}};function o(u){var v=document.createElement("div");v.innerHTML=u.replace(/<\/?[^>]+>/gi,"");return v.childNodes[0]?v.childNodes[0].nodeValue:""}this.mySelectionEnforceEvent=function(v,u){if(this.hiddenField!=null){this.hiddenField.value=""}if(this.hiddenField2!=null){this.hiddenField2.value=""}};this.autoSuggestOnblur=function(){if(this.textbox.value==""){if(typeof this.instructionText!="undefined"){this.textbox.value=this.instructionText}this.textbox.className=this.startClass;if(this.hiddenField!=null){this.hiddenField.value=""}if(this.hiddenField2!=null){this.hiddenField2.value=""}}};this.autoSuggestOnfocus=function(){if(typeof this.instructionText!="undefined"&&this.textbox.value==this.instructionText){this.textbox.value="";this.textbox.className=this.newClass}else{this.textbox.select()}};this.autoSuggestDataRequestEvent=function(){this.textbox.className=this.typeClass};this.autoSuggestDataReturnEvent=function(){this.textbox.className=this.newClass};this.autoSuggestTreeUpdate=function(u){this.tid=u;this.myAutoComp.dataSource.scriptQueryAppend="NoUcdmRedir=1&ver="+new Date().getTime()+"&uid="+this.uid+"&tid="+this.tid+"&type="+this.type};this.myAutoComp.textboxKeyEvent.subscribe(this.myTextboxKeyEvent);this.myAutoComp.itemSelectEvent.subscribe(this.myItemSelectEvent);this.myAutoComp.selectionEnforceEvent.subscribe(this.mySelectionEnforceEvent);this.myAutoComp.textboxBlurEvent.subscribe(this.autoSuggestOnblur);this.myAutoComp.textboxFocusEvent.subscribe(this.autoSuggestOnfocus);this.myAutoComp.dataRequestEvent.subscribe(this.autoSuggestDataRequestEvent);this.myAutoComp.dataReturnEvent.subscribe(this.autoSuggestDataReturnEvent);this.myAutoComp.dataErrorEvent.subscribe(this.autoSuggestDataReturnEvent);this.myAutoComp.unmatchedItemSelectEvent.subscribe(this.autoSuggestDataReturnEvent);if(this.myOnblur!=null){this.myAutoComp.textboxBlurEvent.subscribe(this.myOnblur)}if(this.myOnfocus!=null){this.myAutoComp.textboxFocusEvent.subscribe(this.myOnfocus)}};
/* HtmlEncode.js */
function HtmlEncode(s)
{
	var div = document.createElement('div');
	var text = document.createTextNode(s);
	div.appendChild(text);
	return div.innerHTML;
}

function HtmlDecode(s)
{
	var div = document.createElement('div');
	div.innerHTML = s.replace(/<\/?[^>]+>/gi, '');
	return div.childNodes[0] ? div.childNodes[0].nodeValue : '';
}

/* trees_modal.js */
YAHOO.namespace("person");YAHOO.namespace("pedigree");function decodeQuotes(a){var b=a;if(b.indexOf("&#39;")!=-1){b=b.replace(/&#39;/g,"'")}return b}var isRemoved=false;var clickedSave=0;var overlayEditModal;var editperspid;var isPersonPage=false;YAHOO.person.editModalInitFM=function(c,a){var b=fmInfoArray[a];YAHOO.person.editModalInitPersona(c,b)};YAHOO.person.editModalInitSibling=function(c,a){var b=siblingInfoArray[a];YAHOO.person.editModalInitPersona(c,b)};YAHOO.person.editModalInitPersona=function(d,c){isPersonPage=true;var f="none";var a="none";var b="none";var e="none";if(c.birth!=null&&c.birth!=""){f=c.birth}if(c.birthPlace!=null&&c.birthPlace!=""){a=c.birthPlace}if(c.death!=null&&c.death!=""){b=c.death}if(c.deathPlace!=null&&c.deathPlace!=""){e=c.deathPlace}YAHOO.person.editModalInit(d,c.gname,c.sname,c.gender,f,a,b,e)};YAHOO.person.editModalInit=function(j,d,b,k,o,f,e,g){if(typeof YAHOO.personEditOverlay!="undefined"&&YAHOO.personEditOverlay!=null){YAHOO.personEditOverlay.show()}else{var c=YAHOO.util.Dom.getViewportWidth()/2-235;if(c<10){c=10}var n=YAHOO.util.Dom.getViewportHeight()/2-200;if(n<10){n=10}YAHOO.personEditOverlay=new YAHOO.widget.Panel("editModal",{width:"470px",zIndex:99,x:c,y:n,close:true,draggable:false,modal:true,underlay:"none",visible:true,constraintoviewport:true});YAHOO.personEditOverlay.render();autoSuggestSetup();var m=document.getElementById("editModal");m.style.display="";m.style.zIndex="99";var i=document.getElementById(v_saveButton);i.style.height="17px";YAHOO.util.Event.addListener(document.getElementById(v_removePersonLink),"click",removePerson);overlayEditModal=YAHOO.personEditOverlay;YAHOO.util.Event.addListener(i,"click",saveOutData)}editperspid=j;var h=document.getElementById(v_editPersonLink);h.href="/pt/editPerson.aspx?tid="+v_emTreeId+"&pid="+j+"&pg=0&ret="+v_emPersonId;var a=d+" "+b;var l="";if(a.length>25){a=d.charAt(0)+" "+b}document.getElementById("personName").innerHTML=""+rs_Edit+" "+a+"";document.getElementById(v_fmnameField).value=decodeQuotes(d);document.getElementById(v_surnameField).value=decodeQuotes(b);if(k=="M"){document.getElementById("genderRadio0").checked=true}else{if(k=="F"){document.getElementById("genderRadio1").checked=true}else{document.getElementById("genderRadio2").checked=true}}if(o=="none"||o=="System.Web.UI.WebControls.TextBox"){o=""}if(f=="none"||f=="System.Web.UI.WebControls.TextBox"){f=""}if(e=="none"||e=="System.Web.UI.WebControls.TextBox"){e=""}if(g=="none"||g=="System.Web.UI.WebControls.TextBox"){g=""}document.getElementById(v_birthDateField).value=decodeQuotes(o);document.getElementById(v_birthPlaceField).value=decodeQuotes(f);document.getElementById(v_deathDateField).value=decodeQuotes(e);document.getElementById(v_deathPlaceField).value=decodeQuotes(g);isRemoved=false};YAHOO.pedigree.editModalInit=function(d){isPersonPage=false;var i=document.getElementById("root");i.style.zIndex="1";if(typeof YAHOO.pedigreeEditOverlay!="undefined"&&YAHOO.pedigreeEditOverlay!=null){YAHOO.pedigreeEditOverlay.show();var g=document.getElementById("editModal");if(g!=null){g.style.zIndex="1199"}var b=document.getElementById("editModal_c");if(b!=null){b.style.zIndex="1199"}var k=document.getElementById("editModal_mask");if(k!=null){k.style.zIndex="1199"}YAHOO.pedigreeEditOverlay.center()}else{YAHOO.pedigreeEditOverlay=new YAHOO.widget.Panel("editModal",{width:"470px",fixedcenter:false,zIndex:1199,close:true,draggable:false,modal:true,underlay:"none",visible:true,constraintoviewport:true});YAHOO.pedigreeEditOverlay.render();autoSuggestSetup();var f=document.getElementById("editModal");f.style.display="";f.style.zIndex="1199";var a=document.getElementById("editModal_c");if(a!=null){a.style.zIndex="1199"}var j=document.getElementById("editModal_mask");if(j!=null){j.style.zIndex="1199"}i.style.zIndex="1";var e=document.getElementById(v_saveButton);e.style.height="17px";YAHOO.pedigreeEditOverlay.center();YAHOO.util.Event.addListener(document.getElementById(v_removePersonLink),"click",removePerson);overlayEditModal=YAHOO.pedigreeEditOverlay;YAHOO.util.Event.addListener(e,"click",saveOutData)}if(d==0){nodeEdit=YAHOO.pedigree.pgData.nodes[0]}editperspid=nodeEdit.pid;var c=document.getElementById(v_editPersonLink);c.href="/pt/editPerson.aspx?tid="+v_emTreeId+"&pid="+nodeEdit.pid+"&pg="+v_emPedigreeView+"&ret="+v_emPersonId;var h="";if(nodeEdit.name.length>25){h=nodeEdit.nameAbbr.toString()}else{h=nodeEdit.name.toString()}document.getElementById("personName").innerHTML=""+rs_Edit+" "+h+"";document.getElementById(v_fmnameField).value=nodeEdit.gname;document.getElementById(v_surnameField).value=nodeEdit.sname;if(nodeEdit.isMale){document.getElementById("genderRadio0").checked=true}else{if(nodeEdit.isFemale){document.getElementById("genderRadio1").checked=true}else{document.getElementById("genderRadio2").checked=true}}document.getElementById(v_birthDateField).value=nodeEdit.birthDate;document.getElementById(v_birthPlaceField).value=nodeEdit.birthPlace;document.getElementById(v_deathDateField).value=nodeEdit.deathDate;document.getElementById(v_deathPlaceField).value=nodeEdit.deathPlace;isRemoved=false};function CancelEditModal(){if(isPersonPage==true){YAHOO.personEditOverlay.hide()}else{YAHOO.pedigreeEditOverlay.hide()}isSaving=false;clickedSave=0;validationcnt=0;isValidatedSuccess=false;checkWarningStyle()}function checkWarningStyle(){returnFlag="false";if(YAHOO.util.Dom.hasClass("nameRow","g_errorWO")){YAHOO.util.Dom.removeClass("nameRow","g_errorWO");document.getElementById("nameRowWrn").innerHTML=""}if(YAHOO.util.Dom.hasClass("genderRow","g_errorWO")){YAHOO.util.Dom.removeClass("genderRow","g_errorWO");document.getElementById("genderRowWrn").innerHTML=""}if(YAHOO.util.Dom.hasClass("birthRow","g_errorWO")){YAHOO.util.Dom.removeClass("birthRow","g_errorWO");document.getElementById("birthRowWrn").innerHTML=""}if(YAHOO.util.Dom.hasClass("deathRow","g_errorWO")){YAHOO.util.Dom.removeClass("deathRow","g_errorWO");document.getElementById("deathRowWrn").innerHTML=""}document.getElementById(v_saveButton).innerHTML="<span>"+rs_saveChanges+"</span>"}var responseSuccessRemovePerson=function(o){isRemoved=true;var personIDitem=o.responseText;var res=eval("("+personIDitem+")");if(isPersonPage==true){YAHOO.personEditOverlay.hide()}else{YAHOO.pedigreeEditOverlay.hide()}checkWarningStyle();if(isPersonPage==true){removeFromFamilyMemberArray(editperspid)}else{for(var i=0;i<pedigreeBreadcrumb.trail.length;i++){if(editperspid==pedigreeBreadcrumb.trail[i].getPid()){pedigreeBreadcrumb.trail.splice(i,1);break}}if(isRootPos==0&&res.objectPid.returnPid.length>0){reloadPage(res.objectPid.returnPid,false,true)}else{reloadPage(v_emPersonId,false,true)}}isRemovePerson=false};var responseFailureRemovePerson=function(a){isRemoved=false};var callbackRemovePerson={success:responseSuccessRemovePerson,failure:responseFailureRemovePerson};function removePerson(){if(isRemoved==false){if(ConfirmRemovePerson()){var a="/pt/AJAX/SetPersonNodeHandler.ashx?command=removeperson&uid="+v_emUid+"&tid="+v_emTreeId+"&pid="+editperspid+"&canViewLiving="+v_emCanViewLiving;YAHOO.util.Connect.asyncRequest("GET",a,callbackRemovePerson)}else{if(isPersonPage==true){YAHOO.personEditOverlay.show()}else{YAHOO.pedigreeEditOverlay.show()}}}}function ConfirmRemovePerson(){return confirm(rs_removethis)}var isValidatedSuccess=false;var returnFlag="false";var isSaving=false;var validationcnt=0;function clearValidation(){returnFlag="false"}var responseSuccessValidatePersData=function(o){returnFlag="false";checkWarningStyle();document.getElementById(v_saveButton).innerHTML="<span>"+rs_saveChanges+"</span>";var messagesItem=o.responseText;var res=eval("("+messagesItem+")");isValidatedSuccess=true;if(isSaving==true){isValidatedSuccess=true;isSaving=false;clickedSave=0;validationcnt=0;savePersonData()}};var responseFailureValidatePersData=function(o){returnFlag="true";validationcnt++;if(isSaving==false){checkWarningStyle()}var messagesItem=o.responseText;var res=eval("("+messagesItem+")");var initialcnt=parseInt(res.objectValidateNode.warningCount);var isBirthData=res.objectValidateNode.isBirthData;if(initialcnt>0){document.getElementById(v_saveButton).innerHTML="<span>"+rs_saveAnyway+"</span>"}for(var i=0;i<initialcnt;i++){var warningmsg="";var wcod="";if(i==0){warningmsg=res.objectValidateNode.wrnMessage0;wcod=res.objectValidateNode.wrnArgsWcod0;if(isSaving==false){clickedSave=0}if((validationcnt>1)&&(isSaving==true)){clickedSave++}}if(i==1){warningmsg=res.objectValidateNode.wrnMessage1;wcod=res.objectValidateNode.wrnArgsWcod1;if(isSaving==false){clickedSave++}}if(i==2){warningmsg=res.objectValidateNode.wrnMessage2;wcod=res.objectValidateNode.wrnArgsWcod2;if(isSaving==false){clickedSave++}}if(i==3){warningmsg=res.objectValidateNode.wrnMessage3;wcod=res.objectValidateNode.wrnArgsWcod3;if(isSaving==false){clickedSave++}}switch(wcod){case"201":case"202":case"203":case"204":case"205":case"206":isValidatedSuccess=true;var nameRowWrnEl=document.getElementById("nameRowWrn");if(res.objectValidateNode.isGNameData=="true"){YAHOO.util.Dom.addClass("nameRow","g_errorWO");nameRowWrnEl.innerHTML="<p><b>"+rs_warning+"</b><br />"+warningmsg+"("+rs_warnPreviousValue+" "+HtmlDecode(res.objectValidateNode.oldValueGName)+") <br /><br /> <i>"+rs_warnClickSaveChanges+"</i></p>"}else{YAHOO.util.Dom.addClass("nameRow","g_errorWO");nameRowWrnEl.innerHTML="<p><b>"+rs_warning+"</b><br />"+warningmsg+"("+rs_warnPreviousValue+" "+HtmlDecode(res.objectValidateNode.oldValueSName)+") <br /><br /> <i>"+rs_warnClickSaveChanges+"</i></p>"}break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":isValidatedSuccess=false;if(isBirthData=="true"){YAHOO.util.Dom.addClass("birthRow","g_errorWO");document.getElementById("birthRowWrn").innerHTML="<p><b>"+rs_error+"</b><br />"+warningmsg+"("+rs_warnPreviousValue+" "+HtmlDecode(res.objectValidateNode.oldValueBDate)+") <br /><br /> <i>"+rs_warnErrorCorrect+"</i></p>";document.getElementById(v_birthDateField).value="";isBirthData="false"}else{YAHOO.util.Dom.addClass("deathRow","g_errorWO");document.getElementById("deathRowWrn").innerHTML="<p><b>"+rs_error+"</b><br />"+warningmsg+"("+rs_warnPreviousValue+" "+HtmlDecode(res.objectValidateNode.oldValueDDate)+") <br /><br /> <i>"+rs_warnErrorCorrect+"</i></p>";document.getElementById(v_deathDateField).value=""}break;case"101":case"102":case"103":case"104":case"105":case"108":case"110":isValidatedSuccess=true;YAHOO.util.Dom.addClass("birthRow","g_errorWO");document.getElementById("birthRowWrn").innerHTML="<p><b>"+rs_warning+"</b><br />"+warningmsg+"("+rs_warnPreviousValue+" "+HtmlDecode(res.objectValidateNode.oldValueBDate)+") <br /><br /> <i>"+rs_warnClickSaveChanges+"</i></p>";isBirthData="false";break;case"106":case"107":case"109":isValidatedSuccess=true;YAHOO.util.Dom.addClass("deathRow","g_errorWO");document.getElementById("deathRowWrn").innerHTML="<p><b>"+rs_warning+"</b><br />"+warningmsg+"("+rs_warnPreviousValue+" "+HtmlDecode(res.objectValidateNode.oldValueDDate)+") <br /><br /> <i>"+rs_warnClickSaveChanges+"</i></p>";break}}if((isSaving==true)&&(clickedSave>1)){isSaving=false;clickedSave=0;validationcnt=0;savePersonData()}};var callbackSaveValidatePersData={success:responseSuccessValidatePersData,failure:responseFailureValidatePersData};function validatePersonData(){clearValidation();var e=document.getElementById(v_fmnameField).value;var c=document.getElementById(v_surnameField).value;if((e.indexOf("&")!=-1)||(c.indexOf("&")!=-1)){alert("Contains invalid characters")}else{var g="";if(document.getElementById("genderRadio0").checked){g="M"}else{if(document.getElementById("genderRadio1").checked){g="F"}else{g="unknown"}}var b=document.getElementById(v_birthDateField).value;var a=document.getElementById(v_birthPlaceField).value;var f=document.getElementById(v_deathDateField).value;var h=document.getElementById(v_deathPlaceField).value;var d="/pt/AJAX/SetPersonNodeHandler.ashx?command=validatepersonnode&uid="+v_emUid+"&tid="+v_emTreeId+"&pid="+editperspid+"&canViewLiving="+v_emCanViewLiving+"&isJiapu=false&returnFlag="+returnFlag+"&gname="+encodeURIComponent(e)+"&sname="+encodeURIComponent(c)+"&genderType="+g+"&birthDate="+encodeURIComponent(b)+"&birthPlace="+encodeURIComponent(a)+"&deathDate="+encodeURIComponent(f)+"&deathPlace="+encodeURIComponent(h);YAHOO.util.Connect.asyncRequest("GET",d,callbackSaveValidatePersData)}}var saveHoldArray=new Array();var responseSuccessSavePersData=function(o){returnFlag="false";isValidatedSuccess=false;var messagesItem=o.responseText;var res=eval("("+messagesItem+")");if(isPersonPage==true){saveFamilyMemberArray(editperspid);YAHOO.personEditOverlay.hide()}else{if(isPersonPage==true){reloadPage(v_emPersonId,false,true)}else{reloadPage(v_personId,false,true)}YAHOO.pedigreeEditOverlay.hide()}checkWarningStyle();document.getElementById(v_saveButton).innerHTML="<span>"+rs_saveChanges+"</span>"};var responseFailureSavePersData=function(a){if(isPersonPage==true){YAHOO.personEditOverlay.show()}else{YAHOO.pedigreeEditOverlay.show()}};var callbackSaveSavePersData={success:responseSuccessSavePersData,failure:responseFailureSavePersData};function savePersonData(){var e=document.getElementById(v_fmnameField).value;var c=document.getElementById(v_surnameField).value;var g="";if(document.getElementById("genderRadio0").checked){g="M"}else{if(document.getElementById("genderRadio1").checked){g="F"}else{g="unknown"}}var b=document.getElementById(v_birthDateField).value;var a=document.getElementById(v_birthPlaceField).value;var f=document.getElementById(v_deathDateField).value;var h=document.getElementById(v_deathPlaceField).value;saveHoldArray[0]={gname:e,sname:c,birth:b,birthPlace:a,death:f,deathPlace:h,genderType:g};if(isValidatedSuccess==true){var d="/pt/AJAX/SetPersonNodeHandler.ashx?command=setpersonnode&uid="+v_emUid+"&tid="+v_emTreeId+"&pid="+editperspid+"&canViewLiving="+v_emCanViewLiving+"&isJiapu=false&returnFlag="+returnFlag+"&gname="+encodeURIComponent(e)+"&sname="+encodeURIComponent(c)+"&genderType="+g+"&birthDate="+encodeURIComponent(b)+"&birthPlace="+encodeURIComponent(a)+"&deathDate="+encodeURIComponent(f)+"&deathPlace="+encodeURIComponent(h);YAHOO.util.Connect.asyncRequest("GET",d,callbackSaveSavePersData)}}function saveOutData(){isSaving=true;returnFlag="false";validatePersonData();clickedSave++}function autoSuggestSetup(){var a=new AutoSuggestControl(document.getElementById(v_birthPlaceField),document.getElementById("birthplaceContainer"),v_emUid,v_emTreeId,"Place",null,null,null,"","","","");a=new AutoSuggestControl(document.getElementById(v_deathPlaceField),document.getElementById("deathplaceContainer"),v_emUid,v_emTreeId,"Place",null,null,null,"","","","")};