This page is still under development so not all features are working properly

Please choose a person and a tree type:



Level of Detail:
"; $fid=$personnode; $fid = db_result(db_query("SELECT fid FROM {family_facts} WHERE nid=%d", $personnode)); if (!isset($fid)||!isset($treetype)) { // family_indi_list("ALL"); return $content; } switch($treetype){ case 'a': //Get Data $treearray[0][1]=family_tree_get_info($fid); for($level=1;$level<=$length;$level++){ for($familyno=1;$familyno<=pow(2,$level);$familyno++){ $childid=$treearray[($level-1)][(ceil($familyno/2))]['fid']; $fam = db_result(db_query("SELECT f.fid FROM {family_facts} f, {family_relations} r "."WHERE (f.fact_code = '%s' AND f.fid=r.fid2 AND r.fid1= %d AND r.relation_description='%s')", "FAM", $childid,"CHIL")); if ($fam) { $father = db_result(db_query("SELECT fid1 FROM {family_relations} WHERE (fid2 = %d AND relation_description='%s')", $fam, "HUSB")); if ($father) { $treearray[$level][$familyno]= family_tree_get_info($father); } $familyno++; $mother = db_result(db_query("SELECT fid1 FROM {family_relations} WHERE (fid2 = %d AND relation_description='%s')", $fam, "WIFE")); if ($mother) { $treearray[$level][$familyno]= family_tree_get_info($mother); } } } } //Output data $toprowcells=pow(2,$length); $totalwidth=$toprowcells*$cellwidth; $content.='


'; for($level=$length;$level>=0;$level--){ $content.=' '; for($familyno=1;$familyno<=pow(2,$level);$familyno++){ $content.= ' '; } $content.=' '; } $content.='

'; if($level!=$length){ // previous method for width of image '.((100/(pow(2,$level-1)))-(2/$level)).' $content.='
'; } if(isset($treearray[$level][$familyno]['NAME'])){ $content.=$treearray[$level][$familyno]['NAME']; if($detail==2&&$treearray[$level][$familyno]['NAME']!='Private'){ $content.='
b. '.$treearray[$level][$familyno]['BIRT'].'
d. '.$treearray[$level][$familyno]['DEAT'].'
'; } }else{ $content.='Unknown'; } $content.='

'; break; Case 'd': $content.='

The descendancy graphs are yet to be completed; hence it probably wont work

'; //Get Data $treearray[0][1]=family_tree_get_info($fid); $treearray[0][0]=1; for($level=1;$level<=$length;$level++){ $treearray[$level][0]=0; $familyno=1; for($parentno=1;$parentno<=$treearray[$level-1][0];$parentno++){ //get child data for $treearray[$level-1][$parentno] if($treearray[$level-1][$parentno]['blank']==FALSE){ $families = db_query("SELECT f.fid FROM {family_facts} f, {family_relations} r ". "WHERE (f.fact_code = '%s' AND f.fid=r.fid2 AND r.fid1= %d AND". "(r.relation_description='%s' OR r.relation_description='%s'))", "FAM",$treearray[$level-1][$parentno]['fid'],"HUSB","WIFE"); if ($families) { for ($j = 0; $j < db_num_rows($families); $j++) { $fam_id=db_result($families,$j); $family = family_get_fam_by_famid($fam_id); if ($children = $family['CHIL']) { foreach($children as $idx => $child){ $treearray[$level][0]++; $treearray[$level][$familyno] = family_tree_get_info($child['fid']); $treearray[$level][$familyno]['parent'] = $parentno; $treearray[$level][$familyno]['blank']=FALSE; $familyno++; } }else{ $treearray[$level][0]++; $treearray[$level][$familyno]['blank']=TRUE; $treearray[$level][$familyno]['parent'] = $parentno; $familyno++; } } if(db_num_rows($families)==0){ $treearray[$level][0]++; $treearray[$level][$familyno]['blank']=TRUE; $treearray[$level][$familyno]['parent'] = $parentno; $familyno++; } }else{ $treearray[$level][0]++; $treearray[$level][$familyno]['blank']=TRUE; $treearray[$level][$familyno]['parent'] = $parentno; $familyno++; } }else{ $treearray[$level][0]++; $treearray[$level][$familyno]['blank']=TRUE; $treearray[$level][$familyno]['parent'] = $parentno; $familyno++; } } } for($familyno=1;$familyno<=$treearray[$length][0];$familyno++){ $treearray[$length][$familyno]['width']=1; } for($level=$length;$level>=1;$level--){ //echo $treearray[$level][0]."
"; for($familyno=1;$familyno<=$treearray[$level][0];$familyno++){ $treearray[$level-1][$treearray[$level][$familyno]['parent']]['width']+=$treearray[$level][$familyno]['width']; } } //Output Data $toprowcells=$treearray[$length][0]; $totalwidth=$toprowcells*$cellwidth; $content.='

'; for($level=0;$level<=$length;$level++){ $content.=""; for($familyno=1;$familyno<=$treearray[$level][0];$familyno++){ // $content.=" "; } $content.=" "; } $content.="

"; //$content.=''; if($treearray[$level][$familyno]['blank']==FALSE){ $content.=$treearray[$level][$familyno]['NAME']; if($detail==2&&$treearray[$level][$familyno]['NAME']!='Private'){ $content.='
b. '.$treearray[$level][$familyno]['BIRT'].'
d. '.$treearray[$level][$familyno]['DEAT'].'
'; } }else{ $content.= " "; } $content.="

"; break; } $content.="

"; return $content; }