<?php
class gedcom_cls {
function voegsamen($tekst1, $tekst2){
if ($tekst1){ $tekst1=$tekst1.';'.$tekst2; }
else{ $tekst1=$tekst2; }
return $tekst1;
}
function voegsamen2($tekst1, $tekst2){
if ($tekst1){ $tekst=$tekst1.', '.$tekst2; }
else{ $tekst=$tekst2; }
return $tekst;
}
//Woonplaatsen en beroepen samenvoegen met een "|" teken. Anders problemen met HTML tekens door de ";" zie: "ë"
function voegsamen3($tekst1, $tekst2){
if ($tekst1){ $tekst1=$tekst1.'|'.$tekst2; }
else{ $tekst1=$tekst2; }
return $tekst1;
}
// CONT
function cont($tekst1){
//$tekst="<br>\n".$tekst1;
$tekst="\n".$tekst1;
return $tekst;
}
// CONC
// Bij een aantal programma's is een extra spatie noodzakelijk!
function conc($tekst1){
global $genprogramma;
$spatie='';
if ($genprogramma=='HuMo-gen'){ $spatie=' '; }
if ($genprogramma=='Haza-Data'){ $spatie=' '; }
if ($genprogramma=='PRO-GEN'){ $spatie=' '; }
if ($genprogramma=='Family Tree Legends'){ $spatie=' '; }
$tekst=$spatie.$tekst1;
return $tekst;
}
// ************************************************************************************************
// *** Personen verwerken ***
// ************************************************************************************************
function persoon($persoon_array){
global $nietverwerkt, $genprogramma;
require ("prefixes.php");
$regel2=explode("\n",$persoon_array);
//TEST REGEL
//echo '<p>'; for ($z=1; $z<=count($regel2)-2; $z++){ echo $z.' '.$regel2[$z].'<br>'; }
//Nieuwe variabelen meteen als $persoon["variabele"] andere nog omzetten.
unset ($persoon); //Reset de hele array
$persoon["pers_patronym"]="";
$persoon["pers_prefix"]="";
$persoon["tekst"]="";
$persoon["pers_own_code"]="";
$pers_firstname=''; $pers_callname=''; $pers_name_text=''; $pers_name_source='';
$fams=""; $pers_famc="";
$pers_indexnr=""; $pers_place_index="";
$pers_birth_date=""; $pers_birth_time=""; $pers_birth_place=""; $pers_birth_text=""; $pers_birth_source="";
$pers_bapt_date=""; $pers_bapt_place=""; $pers_bapt_text=""; $pers_bapt_source=""; $religie="";
$pers_death_date=""; $pers_death_time="";
$pers_death_place=""; $pers_death_text=""; $pers_death_source="";
$pers_buried_date=""; $pers_buried_place=""; $pers_buried_text=""; $pers_buried_source=""; $pers_cremation="";
$pers_death_cause="";
$sexe="";
$persoon["pers_text_source"]='';
$persoon["new_date"]=""; $persoon["new_time"]=""; $persoon["changed_date"]=""; $persoon["changed_time"]="";
$levend='';
if ($genprogramma=='Haza-Data'){ $levend='HZ_ovl'; }
if ($genprogramma=='HuMo-gen'){ $levend='HZ_ovl'; }
// Aldfaer heeft een ovl vinkje, werkt dus andersom...
//if ($genprogramma=='ALDFAER') { $levend=1; }
$event="";
// Alle adressen in de aparte tabel opslaan
$nradres2=0;
// nog geen unset gedaan
// Voor de tabel vermeldingen
$nrvermelding=0;
// **********************************************************************************************
// *** Persoon ***
// **********************************************************************************************
// 0 @I1@ INDI
// *** 1e regel verwerken ***
$buffer=$regel2[0];
$buffer = str_replace("_", "", $buffer); //Aldfaer nummers
$gedcomnummer=substr($buffer,3,-6);
if (isset($_POST['verwerkweergave'])){ print "$gedcomnummer "; }
// *** Level0 opslaan ***
$level0=substr($buffer,2); $level1=""; $level2="";
// *** Overige regels verwerken ***
for ($z=1; $z<=count($regel2)-2; $z++){
$verwerkt=0;
//$buffer=addslashes($regel2[$z]);
$buffer=$regel2[$z];
$buffer=rtrim($buffer,"\n\r"); //newline strippen
// *** Strip starting spaces, for Pro-gen ***
if ($genprogramma=='PRO-GEN'){ $buffer=ltrim($buffer," "); }
//echo "BUFFER: ".$z."-".$buffer."!".count($regel2)."<br>";
// *** Level1 opslaan ***
if (substr($buffer, 0, 1)=='1'){
$level1=rtrim(substr($buffer,2,5)); //rtrim voor CHR_
$event='';
$event2='1';
$level2="";
}
// *** Level2 opslaan ***
if (substr($buffer, 0, 1)=='2'){ $level2=substr($buffer,2,4); }
// *** Datum opslaan in database ***
//1 _NEW
//2 DATE 04 AUG 2004
if ($level1=='_NEW'){
if (substr($buffer, 0, 6)=='1 _NEW'){ $verwerkt=1; }
if (substr($buffer, 0, 6)=='2 DATE'){
$verwerkt=1; $persoon["new_date"]=substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 TIME'){
$verwerkt=1; $persoon["new_time"]=substr($buffer,7); }
}
// *** Wijzigings datum opslaan in database ***
//1 CHAN
//2 DATE 04 AUG 2004
if ($level1=='CHAN'){
if (substr($buffer, 0, 6)=='1 CHAN'){ $verwerkt=1; }
if (substr($buffer, 0, 6)=='2 DATE'){ $verwerkt=1; $persoon["changed_date"]=substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 TIME'){ $verwerkt=1; $persoon["changed_time"]=substr($buffer,7); }
}
// *** Gezin ouders ***
// 1 FAMC @F1@
if (substr($buffer, 0, 8)=='1 FAMC @'){
$verwerkt=1;
$pers_famc=substr($buffer,8,-1);
if (!$pers_indexnr){$pers_indexnr=$pers_famc;}
}
// *** Eigen gezinnen ***
// 1 FAMS @F5@
// 1 FAMS @F11@
if (substr($buffer, 0, 8)=='1 FAMS @'){
$verwerkt=1;
$fams= $this->voegsamen($fams, substr($buffer,8,-1));
// In gedcom bestand (FAMS heeft de voorkeur, dat is het eigen gezin):
// Aldfaer: eerst FAMC dan FAMS
// Haza : eerst FAMS dan FAMC
// Indexnr wordt 1e eigen gezin:
$eerste_gezin=explode(";",$fams);
$pers_indexnr=$eerste_gezin[0];
}
// *** Naam ***
// Haza-Data
// 1 NAME Voornaam/Achternaam/
// 2 NOTE Tekst bij naam!
// 3 CONT 2e regel tekst naam
// 3 CONT 3e regel tekst naam
// 1 NAME The/Best/
// 1 NAME Alias//
// 1 NAME Alias3//
//Aldfaer
//0 @I2@ INDI
//1 RIN 1046615289
//1 REFN Hu*ub
//1 NAME Voornaam/Achternaam/
//2 NICK Alias3
//ALLE BK Soorten namen
//LET OP: Bij al deze namen is een tekst, bron en datum mogelijk!
//1 NAME Hubertus /Huub/ Andriessen Mons OK
//2 SOUR @S3@ OK
//2 _AKAN ook bekend als
//2 NICK bijnaam
//2 _SHON verkort voor rapporten
//2 _ADPN adoptienaam
//2 _HEBN hebreeuwse naam
//2 _CENN censusnaam
// 3 DATE 21 FEB 2007
// 3 SOUR @S3@
// 3 NOTE tekst bij Naam censusnaam
// 4 CONT 2e regel
// 4 CONT 3e regel
//2 _MARN huwelijksnaam
// 3 DATE 21 FEB 2007
//2 _GERN pers_callname
//2 _FARN boerderijnaam
//2 _BIRN geboortenaam
//2 _INDN indiaanse naam
//2 _FKAN officiele naam
//2 _CURN huidige naam
//2 _SLDN soldatennaam
//2 _FRKA voorheen bekend als
//2 _RELN kloosternaam
//2 _OTHN andere naam
//1 TITL Sr.
//*************************************
if ($level1=='NAME'){
if (substr($buffer,0,6)=='1 NAME'){
$verwerkt=1;
$naam = str_replace("_", " ", $buffer);
$naam = str_replace("~", " ", $naam);
$positie = strpos($naam,"/");
if ($pers_firstname){
if ($pers_callname){ $pers_callname=$pers_callname.", ".substr($naam,7); } else { $pers_callname=substr($naam,7); }
$pers_callname=str_replace("/", " ", $pers_callname);
$pers_callname=rtrim($pers_callname);
}
else{
$pers_firstname=substr($naam,7,$positie-7);
$pers_lastname=substr($naam,$positie+1,-1);
//Voorzetsels bij achternamen, DIT DEEL VERTRAAGD EEN BEETJE!!!
// Bij een accent zit er een accent of spatie in de pers_lastname...
if (strpos ($pers_lastname, "'" ) OR strpos ($pers_lastname, " " ) ){
for ($i=0; $i<count($pers_prefix); $i++) {
$voorzet=addslashes($pers_prefix[$i]);
$lengte=strlen($voorzet);
$voorzet_controle=substr($pers_lastname,0,$lengte);
// *** Spaties anders wordt het pers_prefix niet altijd goed opgeslagen in de database! ***
$voorzet_controle=str_replace(" ", "_", $voorzet_controle);
//if (strtolower($voorzet_controle)==str_replace("_", " ", $voorzet)){
if (strtolower($voorzet_controle)==$voorzet){
// *** Voorzetsels met hoofdletter ook zo weergeven ***
$persoon["pers_prefix"]=$voorzet_controle;
$pers_lastname=substr($pers_lastname,$lengte);
}
}
}
}
}
// *** Gedcom 5.5 lastname prefix: 2 SPFX Le ***
if (substr($buffer, 0, 6)=='2 SPFX'){ $verwerkt=1; $persoon["pers_prefix"]=substr($buffer,7).'_'; }
if (substr($buffer, 0, 6)=='2 NOTE'){ $verwerkt=1; $pers_name_text=substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 CONT'){ $verwerkt=1; $pers_name_text.=$this->cont(substr($buffer,7)); }
if (substr($buffer, 0, 6)=='3 CONC'){ $verwerkt=1; $pers_name_text.=$this->conc(substr($buffer,7)); }
if (substr($buffer,0,6)=='2 SOUR'){ $verwerkt=1; $pers_name_source=$this->voegsamen($pers_name_source,substr($buffer, 7)); }
$verwerk_vermelding=false;
//if (substr($buffer, 0, 7)=='1 _AKAN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _AKAN'){ $verwerk_vermelding=true; }
//if (substr($buffer, 0, 6)=='1 NICK'){ $verwerk_vermelding=true; }
// *** BK (als bijnaam) en PG (als pers_callname): 2 NICK naam ***
if (substr($buffer, 0, 6)=='2 NICK'){
// *** Bij Pro-gen opslaan als pers_callname. ***
if ($genprogramma=='PRO-GEN'){
$verwerkt=1;
$pers_firstname.=' ('.substr($buffer,7).')';
}
else{
$verwerk_vermelding=true;
}
}
// *** PG: 2 _ALIA ***
if (substr($buffer, 0, 7)=='2 _ALIA'){
//$verwerkt=1; $pers_firstname.=' ('.substr($buffer,8).')';
$verwerk_vermelding=true;
}
if (substr($buffer, 0, 7)=='2 _SHON'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _ADPN'){ $verwerk_vermelding=true; }
//if (substr($buffer, 0, 7)=='1 _HEBN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _HEBN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _CENN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _MARN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _GERN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _FARN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _BIRN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _INDN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _FKAN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _CURN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _SLDN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _FRKA'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _RELN'){ $verwerk_vermelding=true; }
if (substr($buffer, 0, 7)=='2 _OTHN'){ $verwerk_vermelding=true; }
if ($verwerk_vermelding){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='naam';
$vermelding[$nrvermelding]=substr($buffer,7);
$vermeldinggedcom[$nrvermelding]=trim(substr($buffer, 2, 5));
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
//Hier bron en datum van BK gaan verwerken bij namen
// 3 DATE 21 FEB 2007
// 3 SOUR @S3@
// 3 NOTE tekst bij Naam censusnaam
// 4 CONT 2e regel
// 4 CONT 3e regel
if (substr($buffer,0,6)=='3 DATE'){ $verwerkt=1; $vermeldingdatum[$nrvermelding]=substr($buffer,7); }
if (substr($buffer,0,6)=='3 SOUR'){
$verwerkt=1;
$vermeldingbron[$nrvermelding]=$this->voegsamen($vermeldingbron[$nrvermelding],substr($buffer, 7));
}
if (substr($buffer,0,6)=='3 NOTE'){ $verwerkt=1; $vermeldingtekst[$nrvermelding]= substr($buffer,7); }
if (substr($buffer,0,6)=='4 CONT'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='5 CONC'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->conc(substr($buffer,7)); }
}
if (substr($buffer, 0, 8)=='2 QUAY 0'){ $verwerkt=1; $pers_firstname='(?) '.$pers_firstname; } //(On)zeker persoon HZ
// *** Pro-gen: 1 _PATR Jans ***
if (substr($buffer, 0, 7)=='1 _PATR'){ $verwerkt=1; $persoon["pers_patronym"]=substr($buffer,8); }
// *** Eigen code ***
if (substr($buffer, 0, 6)=='1 REFN'){ $verwerkt=1; $persoon["pers_own_code"]=substr($buffer,7); }
// *** TEKSTEN ***
if ($level1=='NOTE'){
if (substr($buffer, 0, 6)=='1 NOTE'){
// *** Voor o.a. BK: meerdere teksten bij persoon mogelijk ***
//if ($persoon["tekst"]){ $persoon["tekst"].="<br>"; }
if ($persoon["tekst"]){ $persoon["tekst"].="\n"; }
$verwerkt=1;
$persoon["tekst"].=substr($buffer,7);
}
if (substr($buffer, 0, 6)=='2 CONT'){ $verwerkt=1; $persoon["tekst"].=$this->cont(substr($buffer,7)); }
if (substr($buffer, 0, 6)=='2 CONC'){ $verwerkt=1; $persoon["tekst"].=$this->conc(substr($buffer,7)); }
/* BK: source by text */
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1; $persoon["pers_text_source"]=$this->voegsamen($persoon["pers_text_source"],substr($buffer, 7));
}
}
// *** Voor BK (Interesse) ***
// 1 ANCI
// 2 NOTE De moeder trouwde met David Hoofien-de koetsier van haar
// 3 CONT vader- en werd daarom onterft.Deze was van de fam.
if ($level1=='ANCI'){
//if (substr($buffer, 0, 6)=='1 ANCI'){ $verwerkt=1; $persoon["tekst"].="<br>".substr($buffer,7); }
if (substr($buffer, 0, 6)=='1 ANCI'){ $verwerkt=1; $persoon["tekst"].=substr($buffer,7); }
//if (substr($buffer, 0, 6)=='2 NOTE'){ $verwerkt=1; $persoon["tekst"].="<br>\n".substr($buffer,7); }
if (substr($buffer, 0, 6)=='2 NOTE'){ $verwerkt=1; $persoon["tekst"].="\n".substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 CONT'){ $verwerkt=1; $persoon["tekst"].=$this->cont(substr($buffer,7)); }
if (substr($buffer, 0, 6)=='4 CONC'){ $verwerkt=1; $persoon["tekst"].=$this->conc(substr($buffer,7)); }
}
// ******************************************************************************************
// *** Adres(sen) ***
// *** Woonplaats ***
//Haza-Data 7.2
//1 ADDR Ridderkerk
//1 ADDR Slikkerveer
//1 ADDR Alkmaar
//1 ADDR Heerhugowaard
if (substr($buffer, 0, 6)=='1 ADDR'){
$nradres2++;
$adresplaats[$nradres2]="";
$adresdatum[$nradres2]="";
$adrestekst[$nradres2]="";
$adresbron[$nradres2]="";
$verwerkt=1;
$adresplaats[$nradres2]= substr($buffer,7);
$pers_place_index=substr($buffer,7);
}
if ($level1=='RESI'){
// *** Woonplaats o.a. Haza-data plus ***
//*** Haza-data plus verwijzing naar adres ***
//1 ADDR de Rijp <<<<< deze dus ook nog erbij!!!
//1 RESI @R34@
//2 DATE 1651
//2 ROLE landbouwer op
if ($genprogramma=='Haza-Data'){
if (substr($buffer,0,6)=='1 RESI'){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='adres';
$vermelding[$nrvermelding]='';
$vermeldinggedcom[$nrvermelding]=trim(substr($buffer, 2, 5));
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]=substr($buffer, 7);
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
if (substr($buffer, 0, 6)=='2 ROLE'){
$verwerkt=1; $vermelding[$nrvermelding]=substr($buffer, 7);
}
// *** Datum ***
//DATUM NOG NIET VERWERKT!!!
//if (substr($buffer,0,6)=='2 DATE'){
// meerdere bronnen en adressen mogelijk????
//if (nradres>0 then AdresDatum[nradres]:=copy(buf,8,length(buf));
//}
}
// BK
//1 RESI
//2 DATE 01 DEC 1931
//2 PLAC AMSTERDAM-AMSTELDIJK 93/1
//2 NOTE Tijdens verloving.
//1 RESI
//2 DATE 10 JUL 1934
//2 PLAC AMSTERDAM-AMSTELDIJK 93/1
//2 NOTE Tijdens ondertrouw.
if (substr($buffer, 0, 6)=='1 RESI' AND $genprogramma!='Haza-Data'){
$verwerkt=1;
$nradres2++;
$adresplaats[$nradres2]="";
$adresdatum[$nradres2]="";
$adrestekst[$nradres2]="";
$adresbron[$nradres2]="";
}
// *** Woonplaats voor Aldfaer ***
//1 RESI
//2 ADDR Oosteind 44
//3 CONT Zwaag
//3 CITY Zwaag
if (substr($buffer, 0, 6)=='3 CITY'){
$verwerkt=1;
$adresplaats[$nradres2]= substr($buffer,7);
$pers_place_index=substr($buffer,7);
}
// *** Woonplaats voor BK ***
if (substr($buffer, 0, 6)=='2 PLAC'){
$verwerkt=1;
$adresplaats[$nradres2]= substr($buffer,7);
$pers_place_index=substr($buffer,7);
}
// *** Teksten bij woonplaats voor BK, Aldfaer ***
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $adrestekst[$nradres2]= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $adrestekst[$nradres2].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $adrestekst[$nradres2].=$this->conc(substr($buffer,7)); }
// *** Straat Pro-gen ***
//1 RESI
//2 ADDR Vogeleindestraat 18
//3 CITY Wellen (wordt al verwerkt)
//if (substr($buffer, 0, 6)=='2 ADDR'){
//$verwerkt=1;
//i.v.m. privacy nog niet aangezet:
//$plaats= $this->voegsamen3($plaats, substr($buffer,7));
//$pers_place_index=substr($buffer,7);
//}
// *** Datum bij woonplaats voor o.a. BK ***
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $adresdatum[$nradres2]=substr($buffer,7); }
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1; $adresbron[$nradres2]=$this->voegsamen($adresbron[$nradres2],substr($buffer, 7));
}
}
// *** Geboorte, doop, overleden, begraven ***
//LET OP: DIT ZIJN BRONNEN BIJ GEB, DOOP, OVL, BEGR, ETC!!!!!!!!!!!!!!
//PRO-GEN BRONNEN
//1 BIRT
//2 DATE 23 JUL 1921
//2 PLAC Borgloon
//2 SOUR bidprentje
//1 DEAT
//2 DATE 25 SEP 1980
//2 PLAC Hendrieken
//2 SOUR Jozef Cuyvers, Bevolking Eksel, deel 1, p.3
//3 REFN 5 ? aktenummer wordt niet gedrukt door HuMo
//3 TEXT Vrolingen, ongehuwd.
//4 CONC Annorim, caelebs, filia Lamberti Gilisen et Anna Maria Raets".
//Aldfaer BRONNEN
//1 BIRT
//2 DATE 01 JAN 1970
//2 PLAC gebplaats pipa
//2 _ALDFAER_TIME 11:30:00
//2 SOUR bron aangifte
//2 NOTE @NB4@
//1 CHR
//2 DATE 19 JAN 1970
//2 PLAC plaats doop pipa
//2 SOUR bron doop
//BIJ NIEUWERE VERSIES ALDFAER:
//2 SOUR @S7177@
// ***********************************************************************************************
// *** Geboorte ***
if ($level1=='BIRT'){
if (substr($buffer,0,6)=='1 BIRT'){ $verwerkt=1; }
// *** Datum ***
if (substr($buffer,0,6)=='2 DATE'){
$verwerkt=1;
//FTM programma ondersteund meerdere geboorte datums, nu wordt de 1e opgeslagen:
if (!$pers_birth_date){ $pers_birth_date=substr($buffer, 7); }
}
// *** Aldfaer tijd ***
// 2 _ALDFAER_TIME 08:00:00
if (substr($buffer,0,15)=='2 _ALDFAER_TIME'){ $verwerkt=1; $pers_birth_time=substr($buffer, 16); }
// *** Pro-gen tijd NIET GETEST ***
// 2 TIME 22.40
if (substr($buffer,0,6)=='2 TIME'){ $verwerkt=1; $pers_birth_time=substr($buffer, 7); }
// *** Plaats ***
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $pers_birth_place=substr($buffer, 7); }
// *** Teksten ***
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $pers_birth_text=substr($buffer, 7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $pers_birth_text.=$this->cont(substr($buffer, 7)); }
if (substr($buffer,0,6)=='3 CONC'){
$verwerkt=1;
// ===>> vervolg teksten bij bron overal nog uitsplitsen? <<=====
// *** Tekst bij geboorte, of tekst bij pers_birth_source ***
if ($level2=='SOUR'){
$pers_birth_source.=$this->conc(substr($buffer, 7));
}
else{
$pers_birth_text.=$this->conc(substr($buffer, 7));
}
}
// *** Verwerken bronnen o.a. Pro-gen en (oude versies) Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){ $verwerkt=1;
$pers_birth_source=$this->voegsamen($pers_birth_source,substr($buffer, 7)); }
// *** Doodgeboren kind ***
// 1 BIRT
// 2 TYPE stillborn
if (substr($buffer,0,16)=='2 TYPE stillborn'){ $verwerkt=1; $pers_lastname='doodgeboren kind'; $pers_firstname=""; }
}
// ***********************************************************************************************
// *** Doop ***
//FTW
//1 EVEN
//2 TYPE Doopgetuigen
//2 PLAC Petrus Verdeurmen, Judoca De Grauw
//if genprogramma='FTW' then begin
////if buf='2 TYPE Doopgetuigen' then buf:='1 CHR';
////if (level1='CHR') and (copy(buf,1,6)='2 PLAC') then buf:='2 WITN'+copy(buf,7,length(buf));
// if buf='2 TYPE Doopgetuigen' then buf:='1 XXX';
// if (level1='XXX') and (copy(buf,1,6)='2 PLAC') then doopgetuigen:=copy(buf,8,length(buf));
//end;
// *** BK & Aldfaer: 1 RELI RK ***
if (substr($buffer,0,6)=='1 RELI'){
//$level1='CHR';
//$buffer='2 RELI '.substr($buffer,7);
$verwerkt=1; $religie=substr($buffer, 7);
}
$buffer = str_replace("1 CHR ", "1 CHR", $buffer); //Voor o.a. Aldfaer
if ($level1=='CHR'){
if (substr($buffer, 0, 5)=='1 CHR'){ $verwerkt=1; }
// *** Datum ***
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $pers_bapt_date=substr($buffer, 7); }
// *** Plaats ***
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $pers_bapt_place=substr($buffer, 7); }
// *** Teksten ***
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $pers_bapt_text=substr($buffer, 7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $pers_bapt_text.=$this->cont(substr($buffer, 7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $pers_bapt_text.=$this->conc(substr($buffer, 7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){ $verwerkt=1; $pers_bapt_source=$this->voegsamen($pers_bapt_source,substr($buffer, 7)); }
//*** Doopgetuigen ***
//Pro-gen: 2 _WITN Anna van Wely
if (substr($buffer,2,5)=='_WITN'){ $buffer = str_replace("2 _WITN", "2 WITN", $buffer); }
//Haza-data heeft ook i.p.v.
//2 WITN Doopgetuige1//
//3 TYPE locum
//2 WITN Doopgetuige2//
if (substr($buffer,2,4)=='WITN'){
$verwerkt=1;
$buffer = str_replace("/", " ", $buffer);
$buffer = trim($buffer);
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='doopgetuige';
$vermelding[$nrvermelding]=substr($buffer,7);
$vermeldinggedcom[$nrvermelding]='WITN';
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
if (substr($buffer,0,12)=='3 TYPE locum'){
$verwerkt=1; $vermelding[$nrvermelding].=" i.p.v. ";
}
// *** Religie ***
if (substr($buffer,0,6)=='2 RELI'){ $verwerkt=1; $religie=substr($buffer, 7); }
}
// ***********************************************************************************************
// *** Overlijden ***
if ($level1=='DEAT'){
if (substr($buffer,0,6)=='1 DEAT'){ $verwerkt=1; }
//Bij Aldfaer DEAT mogelijk zonder data! Er staat dan een vinkje bij ovl.
if ($genprogramma=='ALDFAER') { $levend='Aldfaer_ovl'; }
// *** Datum ***
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $pers_death_date=substr($buffer, 7); }
// *** Aldfaer tijd ***
// 2 _ALDFAER_TIME 08:00:00
if (substr($buffer,0,15)=='2 _ALDFAER_TIME'){ $verwerkt=1; $pers_death_time=substr($buffer, 16); }
// *** Pro-gen tijd ***
// 2 TIME 22.40
if (substr($buffer,0,6)=='2 TIME'){ $verwerkt=1; $pers_death_time=substr($buffer, 7); }
// *** Plaats ***
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $pers_death_place=substr($buffer, 7); }
// *** Teksten ***
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $pers_death_text=substr($buffer, 7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $pers_death_text.=$this->cont(substr($buffer, 7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $pers_death_text.=$this->conc(substr($buffer, 7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){ $verwerkt=1; $pers_death_source=$this->voegsamen($pers_death_source,substr($buffer, 7)); }
// *** Overlijdens pers_death_cause ***
if (substr($buffer,0,6)=='2 CAUS'){ $verwerkt=1; $pers_death_cause=rtrim(substr($buffer, 7)); }
// *** Overlijdens pers_death_cause Haza-data ***
if (substr($buffer,0,6)=='2 TYPE'){ $verwerkt=1; $pers_death_cause=rtrim(substr($buffer, 7)); }
if ($pers_death_cause=='died single'){ $pers_death_cause='died unmarried'; }
}
// ***********************************************************************************************
// *** Begraven ***
//Pro-gen:
//1 CREM
//2 DATE 02 MAY 2003
//2 PLAC Schagen
if (substr($buffer, 0, 6)=='1 CREM'){ $level1='BURI'; $buffer='2 TYPE cremation'; }
if ($level1=='BURI'){
if (substr($buffer,0,6)=='1 BURI'){ $verwerkt=1; }
// *** Datum ***
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $pers_buried_date=substr($buffer, 7); }
// *** Plaats ***
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $pers_buried_place=substr($buffer, 7); }
// *** Teksten ***
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $pers_buried_text=substr($buffer, 7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $pers_buried_text.=$this->cont(substr($buffer, 7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $pers_buried_text.=$this->conc(substr($buffer, 7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1; $pers_buried_source=$this->voegsamen($pers_buried_source,substr($buffer, 7));
}
// *** Crematie ***
if (substr($buffer,0,16)=='2 TYPE cremation'){ $verwerkt=1; $pers_cremation='1'; }
}
// ***********************************************************************************************
// *** Aldfaer getuigen ***
// Aldfaer aangifte geboorte (staat bij de persoon die de aangifte deed)
// 1 _SORTCHILD
// 1 ASSO @I1281@
// 2 TYPE INDI
// 2 RELA birth registration
// Aldfaer aangifte doop (staat bij de persoon die de aangifte deed)
// 1 ASSO @I1281@
// 2 TYPE INDI
// 2 RELA baptize
// Aldfaer
// 1 ASSO @I1281@
// 2 TYPE INDI
// 2 RELA death registration
// Aldfaer
// 1 ASSO @I1281@
// 2 TYPE INDI
// 2 RELA burial
// Aldfaer Getuigen burgerlijk huwelijk:
// 1 ASSO @F2612@
// 2 TYPE FAM
// 2 RELA civil
// 3 NOTE INDI I1281
// Aldfaer getuigen kerkelijk huwelijk:
// 1 ASSO @F2612@
// 2 TYPE FAM
// 2 RELA religious
// 3 NOTE INDI I1281
if ($level1=='ASSO'){
if (substr($buffer, 0, 6)=='1 ASSO'){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=substr($buffer,8,-1);
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='getuige'; //geboorteaangifte - doopgetuige - trgetuige - kerktrgetuige
//$vermelding[$nrvermelding]=$gedcomnummer;
$vermelding[$nrvermelding]='@'.$gedcomnummer.'@';
$vermeldinggedcom[$nrvermelding]='ASSO';
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
if ($buffer=='2 TYPE INDI'){
$verwerkt=1;
}
if ($buffer=='2 TYPE FAM'){
$verwerkt=1;
$vermelding_gezin_id[$nrvermelding]=$vermelding_persoon_id[$nrvermelding];
$vermelding_persoon_id[$nrvermelding]='';
}
if ($buffer=='2 RELA birth registration'){
$verwerkt=1; $vermeldingsoort[$nrvermelding]='geboorteaangifte';
}
if ($buffer=='2 RELA baptize'){ $verwerkt=1; $vermeldingsoort[$nrvermelding]='doopgetuige'; }
if ($buffer=='2 RELA death registration'){
$verwerkt=1; $vermeldingsoort[$nrvermelding]='overlijdensaangifte';
}
if ($buffer=='2 RELA burial'){ $verwerkt=1; $vermeldingsoort[$nrvermelding]='begrafenisgetuige'; }
if ($buffer=='2 RELA civil'){ $verwerkt=1; $vermeldingsoort[$nrvermelding]='trgetuige'; }
if ($buffer=='2 RELA religious'){ $verwerkt=1; $vermeldingsoort[$nrvermelding]='kerktrgetuige'; }
}
// **********************************************************************************************
// *** Beroep(en) ***
if ($level1=='OCCU'){
if (substr($buffer, 0, 6)=='1 OCCU'){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='beroep';
$vermelding[$nrvermelding]=substr($buffer,7);
$vermeldinggedcom[$nrvermelding]='OCCU';
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
// *** Beroep(en), Haza-21 heeft lege OCCU vermeldingen... Gek hè? ***
// 1 OCCU lerares
if (substr($buffer, 0, 6)=='1 OCCU' AND substr($buffer,7)){
$verwerkt=1; $vermelding[$nrvermelding]=substr($buffer,7); }
// *** Lang beroep ***
if (substr($buffer, 0, 6)=='2 CONT'){
$verwerkt=1; $vermelding[$nrvermelding].=$this->cont(substr($buffer,7)); }
if (substr($buffer, 0, 6)=='2 CONC'){ $verwerkt=1; $vermelding[$nrvermelding].=$this->conc(substr($buffer,7)); }
// *** Extra tekst bij beroep ***
if (substr($buffer,0,6)=='2 NOTE'){
$verwerkt=1; $vermeldingtekst[$nrvermelding]=substr($buffer, 7); } // BK
if (substr($buffer,0,6)=='3 CONT'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->cont(substr($buffer, 7)); } // BK
if (substr($buffer,0,6)=='3 CONC'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->conc(substr($buffer, 7)); } // BK
if (substr($buffer,0,6)=='2 DATE'){
$verwerkt=1; $vermeldingdatum[$nrvermelding]=substr($buffer, 7); } // BK
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$vermeldingbron[$nrvermelding]=$this->voegsamen($vermeldingbron[$nrvermelding],substr($buffer, 7));
} // BK
}
// *** AFBEELDINGEN ********************************
// *** Afbeelding Haza-21 ***
// 1 OBJE H:\haza21v3\Scannen0001.jpg
// of:
// 1 OBJE H:\haza21v3\plaatjes\IM000247.jpg
// 2 QUAY 3
// 2 NOTE Ome Rein op verjaardagvisite bij zijn broer Dirk
// 3 CONC en nog meer tekst...
// *** Aldfaer foto's getest door: Jeroen Beemster ***
// *** Afbeeldingen Aldfaer EN gedcom 5.5 ***
// 1 OBJE
// 2 FORM jpg
// 2 FILE C:\Documents and Settings\frans schwartz\Mijn documenten\lammert en tetje.jpg
// 2 TITL lammert en tetje
// 2 FILE huub&lin.jpg
// 2 TITL Afbeelding titel
if ($level1=='OBJE'){
if (substr($buffer, 0, 6)=='1 OBJE'){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='afbeelding';
$vermelding[$nrvermelding]='';
$vermeldinggedcom[$nrvermelding]=trim(substr($buffer, 2, 5));
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
// *** Foto bij Haza-data ***
if (substr($buffer,7)){
$foto=substr($buffer,7);
// *** Basename lijkt in bij bepaalde providers niet te werken? ***
//$foto=basename ($foto);
// *** Pad alleen aanpassen als er een \ teken in het pad zit ***
if (strpos($foto,"\\")>0){ $foto=substr(strrchr($foto, "\\"), 1 ); }
$verwerkt=1;
$vermelding[$nrvermelding]=$foto;
}
}
if (substr($buffer, 0, 6)=='2 FILE'){
$verwerkt=1;
$foto=substr($buffer,7);
// *** Soms staat in Aldfaer: 2 FILE \bestand.jpg ***
// *** Basename lijkt bij bepaalde providers niet te werken? ***
//$foto=basename ($foto);
// *** Pad alleen aanpassen als er een \ teken in het pad zit ***
// *** Remove first \ character ***
//if (substr($foto,0,1)=="\\"){ $foto=substr($foto,1); }
// *** foto's met \b (html escapee code) werden ook niet goed verwerkt. De eerste \ wordt gezien als html escape teken ***
if (substr($foto,0,1)=="\\"){ $foto=substr($foto,2); }
// *** Remove first part of path ***
//if (strpos($foto,"\\")>0){ $foto=substr(strrchr($foto, "\\"), 1 ); }
//if (strpos($foto,"\\")>=0){ $foto=substr(strrchr($foto, "\\"), 1 ); }
if (strpos($foto,"\\")>0){ $foto=substr(strrchr($foto, "\\"), 1 ); }
$vermelding[$nrvermelding]=$foto;
}
if (substr($buffer, 0, 6)=='2 TITL'){
$verwerkt=1;
$vermeldingtekst[$nrvermelding]=substr($buffer,7);
}
// *** Tekst bij foto Haza-21 ***
if (substr($buffer, 0, 6)=='2 NOTE'){
$verwerkt=1;
$vermeldingtekst[$nrvermelding]=$this->voegsamen3($vermeldingtekst[$nrvermelding], substr($buffer,7));
}
if (substr($buffer, 0, 6)=='3 CONT'){
$verwerkt=1;
$vermeldingtekst[$nrvermelding].=$this->cont(substr($buffer, 7)) ;
}
if (substr($buffer, 0, 6)=='3 CONC'){
$verwerkt=1;
$vermeldingtekst[$nrvermelding].=$this->conc(substr($buffer, 7)) ;
}
if (substr($buffer,0,6)=='2 DATE'){
$verwerkt=1;
$vermeldingdatum[$nrvermelding]=substr($buffer, 7); }
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$vermeldingbron[$nrvermelding]=substr($buffer, 7); }
}
// *** Afbeeldingen Haza-data ***
//1 PHOTO @#Aplaatjes\beert&id.jpg jpg@
if ($level1=='PHOTO'){
if (substr($buffer, 0, 7)=='1 PHOTO'){
$verwerkt=1;
$foto=substr($buffer,11,-6);
$foto=substr(strrchr($foto, "\\"), 1 );
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='afbeelding';
$vermelding[$nrvermelding]=$foto;
$vermeldinggedcom[$nrvermelding]=trim(substr($buffer, 2, 5));
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
if (substr($buffer, 0, 6)=='2 DSCR' OR substr($buffer, 0, 6)=='2 NAME'){
$verwerkt=1;
$vermeldingtekst[$nrvermelding]=substr($buffer, 7);
}
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $vermeldingdatum[$nrvermelding]=substr($buffer, 7); }
}
// *** Sexe. F of M ***
if (substr($buffer,0,5)=='1 SEX'){ $verwerkt=1; $sexe=substr($buffer, 6); }
// **********************************************
// *** Gebeurtenissen en vermeldingen opslaan ***
// **********************************************
// *** Aldfaer ongehuwd ***
if ($buffer=='1 _NOPARTNER'){ $buffer='1 _NMAR'; $level1='_NMAR'; }
if (substr($buffer, 0, 6)=='1 ADOP'){ $verwerkt=1; $event='1';} //geadopteerd
if (substr($buffer, 0, 7)=='1 _ADPF'){ $verwerkt=1; $event='1';} //Adoptie door vader
if (substr($buffer, 0, 7)=='1 _ADPM'){ $verwerkt=1; $event='1';} //Adoptie door moeder
if (substr($buffer, 0, 6)=='1 BAPL'){ $verwerkt=1; $event='1';} //LDS gedoopt
if (substr($buffer, 0, 6)=='1 BARM'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 BASM'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 BLES'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 CENS'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 CHRA'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 CONF'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 CONL'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 EMIG'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 ENDL'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 FCOM'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 7)=='1 _FNRL'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 GRAD'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 IMMI'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 NATU'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 ORDN'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 PROB'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 RETI'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 SLGC'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 WILL'){ $verwerkt=1; $event='1';} //testament
if (substr($buffer, 0, 7)=='1 _YART'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 7)=='1 _INTE'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 7)=='1 _BRTM'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 7)=='1 _NLIV'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 7)=='1 _NMAR'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 NCHI'){ $verwerkt=1; $event="1";}
// BK
//1 _MILT militaire dienst Location: Amsterdam
//2 DATE 3 APR 1996
//2 NOTE Goedgekeurd.
//3 CONT 2e regel gebeurtenis bij persoon.
//3 CONT 3e regel.
if (substr($buffer, 0, 7)=='1 _MILT'){
$buffer = str_replace("_MILT", "MILI", $buffer); //Aldfaer nummers
$level1='MILI';
}
if (substr($buffer, 0, 6)=='1 MILI'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';
}
//RELI Religie
if (substr($buffer, 0, 6)=='1 EDUC'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 NATI'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 CAST'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
//REFN Ref. nr. (eigen code)
if (substr($buffer, 0, 5)=='1 AFN'){
if (substr($buffer, 6)){ $vermeldingtijdelijk=substr($buffer, 6); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 5)=='1 SSN'){
if (substr($buffer, 6)){ $vermeldingtijdelijk=substr($buffer, 6); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 7)=='1 _PRMN'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 IDNO'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 7)=='1 _HEIG'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 7)=='1 _WEIG'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 7)=='1 _EYEC'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 7)=='1 _HAIR'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 DSCR'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 7)=='1 _MEDC'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 NCHI'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 ANCI'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 DESI'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
if (substr($buffer, 0, 6)=='1 PROP'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';}
// *** Overige gebeurtenissen (geen BK?) ***
if (substr($buffer, 0, 6)=='1 ARVL'){ $verwerkt=1; $event='1';} //aangekomen
if (substr($buffer, 0, 6)=='1 BAPM'){ $verwerkt=1; $event='1';} //gedoopt als kind
if (substr($buffer, 0, 6)=='1 DIVF'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 DPRT'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 LEGI'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 SLGL'){ $verwerkt=1; $event="1";}
if (substr($buffer, 0, 6)=='1 TXPY'){ $verwerkt=1; $event="1";}
// *** Aldfaer, title by name: 1 TITL Ir. ***
if (substr($buffer, 0, 6)=='1 TITL'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event='1';
}
// *** Title in gedcom 5.5: 2 NPFX Prof. ***
if (substr($buffer, 0, 6)=='2 NPFX'){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='NPFX';
$vermelding[$nrvermelding]=substr($buffer, 7);;
$vermeldinggedcom[$nrvermelding]=$level1;
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
// *** gedcom 5.5 name addition: 2 NSFX Jr. ***
if (substr($buffer, 0, 6)=='2 NSFX'){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='NSFX';
$vermelding[$nrvermelding]=substr($buffer, 7);;
$vermeldinggedcom[$nrvermelding]=$level1;
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
// *** Haza-data ***
//1 EVEN
//2 TYPE living
if ($level1=='EVEN'){
if (substr($buffer, 0, 6)=='1 EVEN'){ $verwerkt=1; }
if (substr($buffer,0,13)=='2 TYPE living'){
$verwerkt=1; $levend='HZ_levend';
$event="";
$level1="";
}
}
// *** Aldfaer ***
// 1 EVEN Functie naam
// 2 TYPE functie
// 2 NOTE @N26@
// 2 DATE FROM 1 JAN 1990 TO 1 JAN 2001
// 2 SOUR @S14@
//
// 1 EVEN Onderscheiding naam
// 2 TYPE onderscheiding
// 2 NOTE @N28@
// 2 DATE FROM 1 JAN 1960 TO 12 DEC 1970
// 2 SOUR @S16@
//
// 1 EVEN Predikaat naam
// 2 TYPE predikaat
// 2 NOTE @N30@
// 2 DATE FROM 1 JAN 2001 TO 1 JAN 2004
// 2 SOUR @S18@
//if ($level1=='EVEN'){
if (substr($buffer, 0, 6)=='1 EVEN'){
if (substr($buffer, 7)){
//if (substr($buffer, 7)){
$vermeldingtijdelijk=substr($buffer, 7);
//}
$verwerkt=1; $event="1";
}
}
if ($event){
if ($event2){
$event2='';
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='gebeurtenis';
$vermelding[$nrvermelding]='';
$vermeldinggedcom[$nrvermelding]=$level1;
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
// *** Aldfaer, title by name: 1 TITL Ir. ***
if ($level1=='TITL'){ $vermeldingsoort[$nrvermelding]='titel'; }
//Voor tekst bij de gebeurtenis:
//1 _MILT militaire dienst Location: Amsterdam
if (isset($vermeldingtijdelijk)){
//$vermeldingtekst[$nrvermelding]=$this->voegsamen2 ($vermeldingtekst[$nrvermelding],$vermeldingtijdelijk);
$vermelding[$nrvermelding]=$this->voegsamen2 ($vermeldingtekst[$nrvermelding],$vermeldingtijdelijk);
$vermeldingtijdelijk='';
}
$vermeldingplaats[$nrvermelding]='';
}
// *** Type (soort) opslaan ***
if (substr($buffer,0,6)=='2 TYPE'){
// *** Voor Aldfaer deze gebeurtenissen wijzigen in ***
// 1 EVEN
// 2 TYPE birth registration
// 2 DATE 21 FEB 1965
// 2 SOUR @S9@
if ($buffer=='2 TYPE birth registration'){ $verwerkt=1; $vermeldingsoort[$nrvermelding]='geboorteaangifte'; }
if ($buffer=='2 TYPE death registration'){ $verwerkt=1; $vermeldingsoort[$nrvermelding]='overlijdensaangifte'; }
// *** Aldfaer predikaat bij naam ***
// 1 EVEN Jhr.
// 2 TYPE predikaat
if ($buffer=='2 TYPE predikaat'){ $verwerkt=1; $vermeldingsoort[$nrvermelding]='predikaat'; }
// *** Aldfaer, heerlijkheid na een naam: 1 PROP Heerlijkheid ***
if ($buffer=='2 TYPE heerlijkheid'){
$verwerkt=1; $vermeldingsoort[$nrvermelding]='heerlijkheid';
}
// *** HZ-21, ash dispersion ***
if ($buffer=='2 TYPE ash dispersion'){
$verwerkt=1; $vermeldingsoort[$nrvermelding]='ash dispersion';
}
}
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $vermeldingdatum[$nrvermelding]=substr($buffer, 7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $vermeldingplaats[$nrvermelding]=substr($buffer, 7); }
if (substr($buffer,0,6)=='2 NOTE'){
$verwerkt=1; $vermeldingtekst[$nrvermelding]=$this->voegsamen2( $vermeldingtekst[$nrvermelding], substr($buffer, 7) );
}
if (substr($buffer,0,6)=='3 CONT'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->cont(substr($buffer, 7)) ; }
if (substr($buffer,0,6)=='3 CONC'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->conc(substr($buffer, 7)); }
// *** Aldfaer heeft bron bij gebeurtenis: 2 SOUR @S9@
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$vermeldingbron[$nrvermelding]=$this->voegsamen($vermeldingbron[$nrvermelding],substr($buffer, 7));
}
}
// MOET op deze plaats i.v.m. 2 TYPE living
if ($buffer=='1 EVEN'){ $verwerkt=1; $event="1";}
//*** Person source ***
//Haza-data
//1 SOUR @S1@
//2 ROLE Persoonskaart
//2 DATE
if ($level1=='SOUR'){
if (substr($buffer,0,6)=='1 SOUR'){
$verwerkt=1;
$nrvermelding++;
$vermelding_persoon_id[$nrvermelding]=$gedcomnummer;
$vermelding_gezin_id[$nrvermelding]='';
$vermeldingsoort[$nrvermelding]='bron';
$vermelding[$nrvermelding]='';
$vermeldinggedcom[$nrvermelding]=trim(substr($buffer, 2, 5));
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]=substr($buffer, 7);
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
if (substr($buffer, 0, 6)=='2 ROLE'){
$verwerkt=1; $vermelding[$nrvermelding]=substr($buffer, 7);
}
// *** Date ***
if (substr($buffer,0,6)=='2 DATE'){
$verwerkt=1; $vermeldingdatum[$nrvermelding]=substr($buffer, 7);
}
}
// ********************************************************************************************
// *** Opslaan van niet verwerkte gedcom items ***
// ********************************************************************************************
if (isset($_POST['verwerkcontrole'])){
$buffer=trim($buffer);
//Onderstaande regels overslaan
if ($buffer=='0 TRLR'){ $verwerkt=1; }
//afbeelding o.a. Aldfaer
if (strtolower($buffer)=='2 form jpg'){ $verwerkt=1; }
if (substr($buffer,0,6)=='1 RIN '){ $verwerkt=1; }
if (substr($buffer,0,5)=='1 RFN'){ $verwerkt=1; }
// Aldfaer:
//1 _NEW
//2 TYPE 1
//2 DATE 9 APR 2006
//3 TIME 15:32:32
if ($level1=='_NEW'){ $verwerkt=1; }
if ($verwerkt==0){
$nietverwerkt[]="$level0</td><td>$level1<br></td><td>$level2<br></td><td>$buffer";
}
}
} //einde explode
//GEGEVENS OP SLAAN
// *** Sorteer regels voor pers_place_index ***
$pers_index_bapt='';
if ($pers_bapt_place){ $pers_index_bapt=$pers_bapt_place; }
if ($pers_birth_place){ $pers_index_bapt=$pers_birth_place; }
$pers_index_death='';
if ($pers_buried_place){ $pers_index_death=$pers_buried_place; }
if ($pers_death_place){ $pers_index_death=$pers_death_place; }
// *** SQL maken ***
$sql="INSERT INTO ".$_SESSION['tree_prefix']."person SET
pers_gedcomnumber='".$gedcomnummer."',
pers_tree_prefix='".$_SESSION['tree_prefix']."',
pers_fams='$fams',
pers_famc='$pers_famc',
pers_indexnr='$pers_indexnr', pers_index_bapt='$pers_index_bapt', pers_index_death='$pers_index_death',
pers_firstname='$pers_firstname', pers_lastname='$pers_lastname', pers_callname='$pers_callname',
pers_name_text='$pers_name_text', pers_name_source='$pers_name_source',
pers_prefix='".$persoon["pers_prefix"]."',
pers_patronym='".$persoon["pers_patronym"]."',
pers_place_index='$pers_place_index',
pers_text='".$persoon["tekst"]."',
pers_text_source='".$persoon["pers_text_source"]."',
pers_birth_date='$pers_birth_date', pers_birth_time='$pers_birth_time', pers_birth_place='$pers_birth_place',
pers_birth_text='$pers_birth_text', pers_birth_source='$pers_birth_source',
pers_bapt_date='$pers_bapt_date', pers_bapt_place='$pers_bapt_place',
pers_bapt_text='$pers_bapt_text', pers_bapt_source='$pers_bapt_source', pers_religion='$religie',
pers_death_date='$pers_death_date', pers_death_time='$pers_death_time',
pers_death_place='$pers_death_place',
pers_death_text='$pers_death_text', pers_death_source='$pers_death_source',
pers_buried_date='$pers_buried_date', pers_buried_place='$pers_buried_place',
pers_buried_text='$pers_buried_text', pers_buried_source='$pers_buried_source',
pers_cremation='$pers_cremation',
pers_death_cause='$pers_death_cause',
pers_sexe='$sexe',
pers_own_code='".$persoon["pers_own_code"]."',
pers_new_date='".$persoon["new_date"]."',
pers_new_time='".$persoon["new_time"]."',
pers_changed_date='".$persoon["changed_date"]."',
pers_changed_time='".$persoon["changed_time"]."',
pers_alive='".$levend."'";
// *** SQL verwerken ***
$result=mysql_query($sql) or die(mysql_error());
// *** STANDAARD adressen opslaan in aparte tabel ***
if (isset($adresplaats[1])){
for ($i=1; $i<=count($adresplaats); $i++){
$gebeurtsql="INSERT INTO ".$_SESSION['tree_prefix']."addresses SET
address_order='".$i."',
address_person_id='".$gedcomnummer."',
address_place='".$adresplaats[$i]."',
address_date='".$adresdatum[$i]."',
address_text='".$adrestekst[$i]."',
address_source='".$adresbron[$i]."'";
$result=mysql_query($gebeurtsql) or die(mysql_error());
}
}
// *** Vermeldingen opslaan in aparte tabel ***
if ($nrvermelding>0){
$event_order=0;
for ($i=1; $i<=$nrvermelding; $i++){
if ($i==1){ $event_kind=$vermeldingsoort[$i]; }
$event_order++;
if ( $event_kind!=$vermeldingsoort[$i] ){
$event_order=1;
$event_kind=$vermeldingsoort[$i];
}
$gebeurtsql="INSERT INTO ".$_SESSION['tree_prefix']."events SET
event_order='".$event_order."',
event_person_id='".$vermelding_persoon_id[$i]."',
event_family_id='".$vermelding_gezin_id[$i]."',
event_kind='".$vermeldingsoort[$i]."',
event_event='".$vermelding[$i]."',
event_gedcom='".$vermeldinggedcom[$i]."',
event_date='".$vermeldingdatum[$i]."',
event_text='".$vermeldingtekst[$i]."',
event_place='".$vermeldingplaats[$i]."',
event_source='".$vermeldingbron[$i]."'";
$result=mysql_query($gebeurtsql) or die(mysql_error());
}
}
} //einde persoon
// ************************************************************************************************
// *** Gezinnen verwerken ***
// ************************************************************************************************
function gezin($gezin_array){
global $genprogramma, $nietverwerkt;
$regel=$gezin_array;
$regel2=explode("\n",$regel);
//************************************************************************************************
// *** Gezin ***
//************************************************************************************************
// 0 @F1@ FAM
// 0 @F1389_1390@ FAM aldfaer
unset ($gezin); //Reset de hele array
$gezin["religie"]=""; $gezin["soort"]="";
$gezin["tekst"]=""; $gezin["fam_text_source"]="";
$gezin["fam_marr_church_notice_date"]=""; $gezin["fam_marr_church_notice_place"]="";
$gezin["fam_marr_church_notice_text"]=""; $gezin["fam_marr_church_notice_source"]="";
$gezin["fam_marr_church_date"]=""; $gezin["fam_marr_church_place"]="";
$gezin["fam_marr_church_text"]=""; $gezin["fam_marr_church_source"]="";
// *** Samenwonen ***
$gezin["fam_relation_date"]=""; $gezin["fam_relation_place"]="";
$gezin["fam_relation_text"]=""; $gezin["fam_relation_source"]="";
$gezin["fam_relation_end_date"]="";
$gezin["fam_marr_notice_date"]=""; $gezin["fam_marr_notice_place"]="";
$gezin["fam_marr_notice_text"]=""; $gezin["fam_marr_notice_source"]="";
$gezin["fam_marr_date"]=""; $gezin["fam_marr_place"]="";
$gezin["fam_marr_text"]=""; $gezin["fam_marr_source"]=""; $gezin["fam_marr_authority"]="";
$gezin["fam_div_date"]=""; $gezin["fam_div_place"]="";
$gezin["fam_div_text"]=""; $gezin["fam_div_source"]=""; $gezin["fam_div_authority"]="";
$gezin["new_date"]=""; $gezin["new_time"]=""; $gezin["changed_date"]=""; $gezin["changed_time"]="";
$kinderen=""; $man=0; $vrouw=0;
$event="";
$nrvermelding=0;
$nradres=0;
// *** 1e regel verwerken ***
$buffer=$regel2[0];
$gedcomnummer=substr($buffer,3,-5);
if (isset($_POST['verwerkweergave'])){ print "$gedcomnummer "; }
// *** Level0 opslaan ***
$level0=substr($buffer,2);
$level1="";
$level2="";
$tijdsoort=''; //soort huwelijk
// *** Overige regels verwerken ***
for ($z=1; $z<=count($regel2)-2; $z++){
$verwerkt=0;
//$buffer=addslashes($regel2[$z]);
$buffer=$regel2[$z];
$buffer=rtrim($buffer,"\n\r"); //newline strippen
// *** Strip starting spaces, for Pro-gen ***
if ($genprogramma=='PRO-GEN'){ $buffer=ltrim($buffer," "); }
//echo "BUFFER: ".$z."-".$buffer."!".count($regel2)."<br>";
// *** Level1 opslaan ***
if (substr($buffer, 0, 1)=='1'){
$level1=rtrim(substr($buffer,2,5)); //rtrim voor DIV_/ CHR_
$event='';
$event2='1';
$level2="";
}
// *** Level2 opslaan ***
if (substr($buffer, 0, 1)=='2'){ $level2=substr($buffer,2,4); }
// *** Datum opslaan in database ***
//1 _NEW
//2 DATE 04 AUG 2004
if ($level1=='_NEW'){
if (substr($buffer, 0, 6)=='1 _NEW'){ $verwerkt=1; }
if (substr($buffer, 0, 6)=='2 DATE'){ $verwerkt=1; $gezin["new_date"]=substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 TIME'){ $verwerkt=1; $gezin["new_time"]=substr($buffer,7); }
}
// *** Wijzigings datum opslaan in database ***
//1 CHAN
//2 DATE 04 AUG 2004
if ($level1=='CHAN'){
if (substr($buffer, 0, 6)=='1 CHAN'){ $verwerkt=1; }
if (substr($buffer, 0, 6)=='2 DATE'){ $verwerkt=1; $gezin["changed_date"]=substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 TIME'){ $verwerkt=1; $gezin["changed_time"]=substr($buffer,7); }
}
// *** Getuigen ***
//1 WITN Doeko/Mons/
//1 WITN Rene/Mansveld/
if (substr($buffer,0,6)=='1 WITN'){
$verwerkt=1;
$buffer = str_replace("/", " ", $buffer);
$buffer = trim($buffer);
$nrvermelding++;
$vermeldingsoort[$nrvermelding]='trgetuige';
$vermelding[$nrvermelding]=substr($buffer,7);
$vermeldinggedcom[$nrvermelding]='WITN';
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
// *** Type relatie algemeen (LAT etc.) ***
if (substr($buffer,0,6)=='1 TYPE'){ $verwerkt=1; $gezin["soort"]=substr($buffer,7); }
// *** Gedcomnummer man: 1 HUSB @I14@ ***
//if (substr($buffer,0,9)=='1 HUSB @I'){ $verwerkt=1; $man=substr($buffer,8,-1); }
if (substr($buffer,0,8)=='1 HUSB @'){ $verwerkt=1; $man=substr($buffer,8,-1); }
// *** Gedcomnummer vrouw: 1 WIFE @I14@ ***
//if (substr($buffer,0,9)=='1 WIFE @I'){ $verwerkt=1; $vrouw=substr($buffer,8,-1); }
if (substr($buffer,0,8)=='1 WIFE @'){ $verwerkt=1; $vrouw=substr($buffer,8,-1); }
// *** Gedcomnummers kinderen ***
// 1 CHIL @I13@
// 1 CHIL @I14@
//if (substr($buffer,0,9)=='1 CHIL @I'){ $verwerkt=1; $kinderen= $this->voegsamen($kinderen, substr($buffer,8,-1)); }
if (substr($buffer,0,8)=='1 CHIL @'){ $verwerkt=1; $kinderen= $this->voegsamen($kinderen, substr($buffer,8,-1)); }
// Haza-data
//1 MARB
//2 TYPE civil
//2 DATE 01 JAN 2002
//2 PLAC Alkmaar
//2 NOTE tekst ondertr wet
//3 CONT 2e regel
// *************************************************************************************************
// *** Ondertrouw kerk ***
// *** Ondertrouw Aldfaer ***
if ($level1=='MARL' AND $genprogramma=='ALDFAER'){
$level1="MARB";
if (substr($buffer,0,6)=='1 MARL'){ $verwerkt=1; }
}
if ($level1=='MARB' AND $tijdsoort=='religious'){
if (substr($buffer,0,6)=='1 MARB'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_marr_church_notice_date"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $gezin["fam_marr_church_notice_place"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $gezin["fam_marr_church_notice_text"]= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $gezin["fam_marr_church_notice_text"].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $gezin["fam_marr_church_notice_text"].=$this->conc(substr($buffer,7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$gezin["fam_marr_church_notice_source"]=$this->voegsamen($gezin["fam_marr_church_notice_source"],substr($buffer, 7));
}
}
// *************************************************************************************************
// *** Ondertrouw ***
if ($level1=='MARB' AND $tijdsoort!='religious'){
// *** Type huwelijk / relatie (civil of religious) ***
if (substr($buffer,0,6)=='2 TYPE'){ $verwerkt=1; $tijdsoort=strtolower(substr($buffer,7)); }
if (substr($buffer,0,6)=='1 MARB'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_marr_notice_date"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $gezin["fam_marr_notice_place"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $gezin["fam_marr_notice_text"]= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $gezin["fam_marr_notice_text"].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $gezin["fam_marr_notice_text"].=$this->conc(substr($buffer,7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$gezin["fam_marr_notice_source"]=$this->voegsamen($gezin["fam_marr_notice_source"],substr($buffer, 7));
}
}
// *******************************************************************************************
// *** Huwelijk kerk ***
if ($level1=='MARR'){
// *** Getuigen Pro-gen ***
//1 MARR
//2 DATE 21 MAY 1874
//2 PLAC Winsum
//2 _WITN Aam Pieter Borgman, oud 48 jaar, van beroep herbergier, wonende te
//3 CONT bla bla
//3 CONT bla bla
if ($level2=='_WIT'){
if (substr($buffer,0,7)=='2 _WITN'){
// nieuwe manier van opslaan nog niet getest.
$verwerkt=1;
$nrvermelding++;
$vermeldingsoort[$nrvermelding]='trgetuige';
$vermelding[$nrvermelding]=substr($buffer,8);
$vermeldinggedcom[$nrvermelding]='WITN';
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
if (substr($buffer,0,6)=='3 CONT'){
$verwerkt=1; $vermelding[$nrvermelding].=$this->cont(substr($buffer,7));
$buffer=""; //anders komt de tekst ook nog bij tekst huwelijk te staan!
}
if (substr($buffer,0,6)=='3 CONC'){
$verwerkt=1; $vermelding[$nrvermelding].=$this->conc(substr($buffer,7));
$buffer=""; //anders komt de tekst ook nog bij tekst huwelijk te staan!
}
}
// *** Religie ***
// Haza-data
//1 MARR
//2 TYPE religious
//2 RELI Hervormd
if (substr($buffer,0,6)=='2 RELI'){ $verwerkt=1; $gezin["religie"]=substr($buffer,7); }
// *** Haza-data trouw instantie ***
// 1 MARR
// 2 AGNC alkmaar gemeente wettelijk
if (substr($buffer,0,6)=='2 AGNC'){ $verwerkt=1; $gezin["fam_marr_authority"]=substr($buffer,7); }
// *** Type huwelijk / relatie (civil of religious) ***
if (substr($buffer,0,6)=='2 TYPE'){
$verwerkt=1; $tijdsoort=strtolower(substr($buffer,7));
// *** Type huwelijk opslaan in database, zodat bij een huwelijk ZONDER datum de juiste
// tekst wordt weergegeven (anders wordt het "relatie"). ***
if ($gezin["soort"]==''){ $gezin["soort"]=$tijdsoort; }
}
}
//Pro-gen en GensdataPro, kerkelijk huwelijk:
//1 ORDI
//2 DATE 01 JUN 1749
//2 PLAC Huizen
//if (substr($buffer,0,1)=='1'){
// $tijdsoort=""; //Om te voorkomen dat Pro-gen kerkelijk huwelijk geeft bij alle huwelijken
//}
if (substr($buffer,0,6)=='1 ORDI'){
$buffer = "1 MARR";
$tijdsoort="religious";
$level1='MARR';
}
if ($level1=='MARR' AND $tijdsoort=='religious'){
if (substr($buffer,0,6)=='1 MARR'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_marr_church_date"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $gezin["fam_marr_church_place"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $gezin["fam_marr_church_text"]= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $gezin["fam_marr_church_text"].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $gezin["fam_marr_church_text"].=$this->conc(substr($buffer,7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$gezin["fam_marr_church_source"]=$this->voegsamen($gezin["fam_marr_church_source"],substr($buffer, 7));
}
}
// **********************************************************************************************
// *** Huwelijk ***
if ($level1=='MARR' AND $tijdsoort!='religious'){
if (substr($buffer,0,6)=='1 MARR'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_marr_date"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $gezin["fam_marr_place"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $gezin["fam_marr_text"]= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $gezin["fam_marr_text"].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $gezin["fam_marr_text"].=$this->conc(substr($buffer,7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$gezin["fam_marr_source"]=$this->voegsamen($gezin["fam_marr_source"],substr($buffer, 7));
}
}
// ******************************************************************************************
// *** Samenwonen ***
// *** Pro-gen samenwonen: 1 _LIV ***
if (substr($buffer,0,6)=='1 _LIV'){ $verwerkt=1; $gezin["soort"]="living together"; }
//NIET GETEST *** BK samenwonen ***
if (substr($buffer,0,7)=='1 _COML'){ $verwerkt=1; $gezin["soort"]="living together"; }
// Samenwonen BK
// 0 @F4664@ FAM
// 1 HUSB @I12409@
// 1 WIFE @I12410@
// 1 CHIL @I1830@
// 1 _NMR
// 2 SOUR @S409@
// 3 PAGE Brief 2 october 2001
// 1 _MSTAT Partners
// *** LET OP de code _NMR komt TWEE keer voor in dit bestand ***
if (substr($buffer,0,6)=='1 _NMR'){ $verwerkt=1; $gezin["soort"]="non-marital"; }
// *** Gedcom 5.5: 1 NMR ***
if (substr($buffer,0,5)=='1 NMR'){ $verwerkt=1; $gezin["soort"]="non-marital"; }
if ($level1=='MARR'){
// *** Aldfaer samenwonen ***
if (substr($buffer,0,6)=='2 TYPE'){ $verwerkt=1; $tijdsoort=strtolower(substr($buffer,7)); }
// *** Aldfaer relatie ***
// 0 @F3027@ FAM
// 1 HUSB @I784@
// 1 WIFE @I258@
// 1 MARR
// 2 TYPE partners
if ($tijdsoort=='partners'){
$gezin["soort"]='partners';
$buffer='1 _LIV';
$level1='_LIV';
}
if ($tijdsoort=='registered'){
$gezin["soort"]='registered';
$buffer='1 _LIV';
$level1='_LIV';
}
if ($tijdsoort=='unknown'){
$gezin["soort"]='unknown';
$buffer='1 _LIV';
$level1='_LIV';
}
}
// Haza-data samenwonen met begin en eind datum
// 0 @F9@ FAM
// 1 TYPE non-marital
// 1 _STRT
// 2 DATE 01 JAN 2000
// 1 _END
// 2 DATE 02 FEB 2003
//Haza-data: 1 TYPE non-marital > omzetten naar '1 _LIV'
if (substr($buffer,0,18)=='1 TYPE non-marital'){
$buffer='1 _LIV';
$level1='_LIV';
}
// OF (Haza-data):
// 1 TYPE living together
// 1 _STRT
// 2 DATE SEP 2005
// 1 _END
// 2 DATE 2006
if ($level1=='_STRT'){
if (substr($buffer,0,7)=='1 _STRT'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_relation_date"]= substr($buffer,7); }
}
if ($level1=='_END'){
if (substr($buffer,0,6)=='1 _END'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_relation_end_date"]= substr($buffer,7); }
}
//PG : 1 _LIV
if ($level1=='_LIV'){
if (substr($buffer,0,6)=='1 _LIV'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_relation_date"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $gezin["fam_relation_place"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $gezin["fam_relation_text"]= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $gezin["fam_relation_text"].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $gezin["fam_relation_text"].=$this->conc(substr($buffer,7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$gezin["fam_relation_source"]=$this->voegsamen($gezin["fam_relation_source"],substr($buffer, 7));
}
}
// *****************************************************************************************
// *** Scheiding ***
// *** Scheiding bij BK ***
//1 _SEPR
//2 DATE 1933
//2 SOUR @S326@
//2 NOTE Hij verliet zijn gezin.
if (substr($buffer,0,7)=='1 _SEPR'){
$buffer = str_replace("1 _SEPR", "1 DIV", $buffer);
$level1='DIV';
}
if ($level1=='DIV'){
if (substr($buffer,0,5)=='1 DIV'){ $verwerkt=1; }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $gezin["fam_div_date"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $gezin["fam_div_place"]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $gezin["fam_div_text"]= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){
$verwerkt=1; $gezin["fam_div_text"].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){
$verwerkt=1; $gezin["fam_div_text"].=$this->conc(substr($buffer,7)); }
// *** Verwerken bronnen o.a. Pro-gen en Aldfaer ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$gezin["fam_div_source"]=$this->voegsamen($gezin["fam_div_source"],substr($buffer, 7));
}
// *** Haza-data scheidings instantie ***
// 1 DIV
// 2 AGNC alkmaar scheiding
if (substr($buffer,0,6)=='2 AGNC'){
$verwerkt=1; $gezin["fam_div_authority"]=substr($buffer,7); }
}
// **********************************************************************************************
// *** Tekst bij gezin ***
if ($level1=='NOTE'){
//if (substr($buffer, 0, 6)=='1 NOTE'){ $verwerkt=1; $gezin["tekst"].="<br>\n".substr($buffer,7); }
if (substr($buffer, 0, 6)=='1 NOTE'){
// *** Bij meerdere 1 NOTE teksten een nieuwe regel ***
//if ($gezin["tekst"]!=''){ $gezin["tekst"].="<br>\n"; }
if ($gezin["tekst"]!=''){ $gezin["tekst"].="\n"; }
$verwerkt=1; $gezin["tekst"].=substr($buffer,7);
}
if (substr($buffer, 0, 6)=='2 CONT'){ $verwerkt=1; $gezin["tekst"].=$this->cont(substr($buffer,7)); }
if (substr($buffer, 0, 6)=='2 CONC'){ $verwerkt=1; $gezin["tekst"].=$this->conc(substr($buffer,7)); }
// *** BK: source by family text ***
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$gezin["fam_text_source"]=$this->voegsamen($gezin["fam_text_source"],substr($buffer, 7));
}
}
// **********************************************************************************************
// *** Gebeurtenissen ************************************
//1 MILI
//2 TYPE militaire dienst
//2 DATE 01 JAN 1999
//2 NOTE test
//1 EVEN
//2 TYPE gebeurtenis
//2 DATE 01 JAN 2001
//2 PLAC Alkmaar
//2 NOTE gebeurtenis
if (substr($buffer,0,7)=='1 _MBON'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 MARC'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
// *** Bij Aldfaer is MARL ondertrouw! ***
if (substr($buffer,0,6)=='1 MARL' AND $genprogramma!='ALDFAER'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 MARS'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 DIVF'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 ANUL'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 ENGA'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 SLGS'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 CENS'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
// *** LET OP de code _NMR komt TWEE keer voor in dit bestand ***
if (substr($buffer,0,6)=='1 _NMR'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,7)=='1 _COML'){
if (substr($buffer, 8)){ $vermeldingtijdelijk=substr($buffer, 8); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 NCHI'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,5)=='1 RFN'){
if (substr($buffer, 6)){ $vermeldingtijdelijk=substr($buffer, 6); }
$verwerkt=1; $event="1";
}
if (substr($buffer,0,6)=='1 REFN'){
if (substr($buffer, 7)){ $vermeldingtijdelijk=substr($buffer, 7); }
$verwerkt=1; $event="1";
}
// Overige gebeurtenissen (geen BK?)
if ($buffer=='1 EVEN'){$verwerkt=1; $event="1";}
if ($buffer=='1 SLGL'){$verwerkt=1; $event="1";}
if ($event){
if ($event2){
$event2='';
$nrvermelding++;
$vermeldingsoort[$nrvermelding]='gebeurtenis';
$vermelding[$nrvermelding]='';
$vermeldinggedcom[$nrvermelding]=$level1;;
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]='';
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
if (isset($vermeldingtijdelijk)){
$vermeldingtekst[$nrvermelding]=$this->voegsamen2 ($vermeldingtekst[$nrvermelding],$vermeldingtijdelijk);
$vermeldingtijdelijk='';
}
}
// *** Soort opslaan ***
if (substr($buffer,0,6)=='2 TYPE'){ $verwerkt=1; $vermelding[$nrvermelding]=substr($buffer, 7); }
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $vermeldingdatum[$nrvermelding]=substr($buffer, 7); }
if (substr($buffer,0,6)=='2 PLAC'){ $verwerkt=1; $vermeldingplaats[$nrvermelding]=substr($buffer, 7); }
//if (copy(buf,1,6)='2 TYPE') AND (genprogramma='BROSKEEP') then gebeurttekst[nrgebeurtenis]:=gebeurttekst[nrgebeurtenis]+', '+copy(buf,8,length(buf)); //Voor BK!!!
if (substr($buffer,0,6)=='2 NOTE'){
$verwerkt=1; $vermeldingtekst[$nrvermelding]=$this->voegsamen2( $vermeldingtekst[$nrvermelding], substr($buffer, 7) );
}
if (substr($buffer,0,6)=='3 CONT'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->cont(substr($buffer, 7)) ;
}
if (substr($buffer,0,6)=='3 CONC'){
$verwerkt=1; $vermeldingtekst[$nrvermelding].=$this->conc(substr($buffer,7)) ;
}
}
//*** Family source ***
// BK:
//1 SOUR @S2@
//2 PAGE blad 5
//2 DATA
//3 TEXT citaat bron
//2 QUAY 2
//2 NOTE informatie citaat bron
//1 SOUR @S3@
if ($level1=='SOUR'){
if (substr($buffer,0,6)=='1 SOUR'){
$verwerkt=1;
$verwerkt=1;
$nrvermelding++;
$vermeldingsoort[$nrvermelding]='bron';
$vermelding[$nrvermelding]='';
$vermeldinggedcom[$nrvermelding]=trim(substr($buffer, 2, 5));
$vermeldingdatum[$nrvermelding]='';
$vermeldingbron[$nrvermelding]=substr($buffer, 7);
$vermeldingtekst[$nrvermelding]='';
$vermeldingplaats[$nrvermelding]='';
}
if (substr($buffer, 0, 6)=='2 ROLE'){
$verwerkt=1;
$vermelding[$nrvermelding]=substr($buffer, 7);
}
// *** Date ***
if (substr($buffer,0,6)=='2 DATE'){
$verwerkt=1; $vermeldingdatum[$nrvermelding]=substr($buffer, 7);
}
// *** Aldfaer TIJD ***
//2 _ALDFAER_TIME 08:00:00
//if (substr($buffer,0,15)=='2 _ALDFAER_TIME'){
//if (nrbron>0) then BronDatum[nrbron]:=copy(buf,8,length(buf));
//}
}
//Woonplaats bij gezin voor BK
//1 RESI
//2 ADDR Naam gezin
//3 CONT Adres ridderkerk
//2 PHON telefoon
//2 FAX fax
//2 EMAIL mail
//2 WWW website
if ($level1=='RESI'){
if (substr($buffer, 0, 6)=='1 RESI'){
$verwerkt=1;
$nradres++;
$adresplaats[$nradres]="";
$adresdatum[$nradres]="";
$adrestekst[$nradres]="";
$adresbron[$nradres]="";
}
// *** Woonplaats voor BK ***
if (substr($buffer, 0, 6)=='2 PLAC'){ $verwerkt=1; $adresplaats[$nradres]= substr($buffer,7); }
// *** Teksten bij woonplaats voor BK, Aldfaer ***
if (substr($buffer, 0, 6)=='2 ADDR'){ $verwerkt=1; $adrestekst[$nradres]= substr($buffer,7); }
if (substr($buffer,0,6)=='2 NOTE'){ $verwerkt=1; $adrestekst[$nradres].= substr($buffer,7); }
if (substr($buffer,0,6)=='3 CONT'){ $verwerkt=1; $adrestekst[$nradres].=$this->cont(substr($buffer,7)); }
if (substr($buffer,0,6)=='3 CONC'){ $verwerkt=1; $adrestekst[$nradres].=$this->conc(substr($buffer,7)); }
// *** Datum bij woonplaats voor o.a. BK ***
if (substr($buffer,0,6)=='2 DATE'){ $verwerkt=1; $adresdatum[$nradres]=substr($buffer,7); }
if (substr($buffer,0,6)=='2 SOUR'){
$verwerkt=1;
$adresbron[$nradres]=$this->voegsamen($adresbron[$nradres],substr($buffer, 7));
}
}
//************************************************************************************************
// *** Opslaan van niet verwerkte gedcom items ***
// ***********************************************************************************************
if (isset($_POST['verwerkcontrole'])){
//Onderstaande regels overslaan
if ($buffer=='2 ADDR'){ $verwerkt=1; }
if ($buffer=='1 RESI'){ $verwerkt=1; }
if ($buffer=='1 REPO'){ $verwerkt=1; }
if ($buffer=='0 TRLR'){ $verwerkt=1; }
if (substr($buffer,0,5)=='1 RFN'){ $verwerkt=1; }
if ($verwerkt==0){
$nietverwerkt[]="$level0</td><td>$level1<br></td><td>$level2<br></td><td>$buffer";
}
}
} //einde explode
//OPSLAAN
//Bij Pro-gen moeten vrouwen zonder man apart behandeld worden... :-)
if ($genprogramma=='PRO-GEN'){
if (!$man){ $gezin["soort"]="PRO-GEN"; }
}
$sql="INSERT INTO ".$_SESSION['tree_prefix']."family SET
fam_gedcomnumber='$gedcomnummer',
fam_man='$man', fam_woman='$vrouw', fam_children='$kinderen',
fam_religion='".$gezin["religie"]."',
fam_kind='".$gezin["soort"]."',
fam_text='".$gezin["tekst"]."',
fam_text_source='".$gezin["fam_text_source"]."',
fam_marr_church_notice_date='".$gezin["fam_marr_church_notice_date"]."',
fam_marr_church_notice_place='".$gezin["fam_marr_church_notice_place"]."',
fam_marr_church_notice_text='".$gezin["fam_marr_church_notice_text"]."',
fam_marr_church_notice_source='".$gezin["fam_marr_church_notice_source"]."',
fam_marr_church_date='".$gezin["fam_marr_church_date"]."',
fam_marr_church_place='".$gezin["fam_marr_church_place"]."',
fam_marr_church_text='".$gezin["fam_marr_church_text"]."',
fam_marr_church_source='".$gezin["fam_marr_church_source"]."',
fam_relation_date='".$gezin["fam_relation_date"]."',
fam_relation_place='".$gezin["fam_relation_place"]."',
fam_relation_text='".$gezin["fam_relation_text"]."',
fam_relation_source='".$gezin["fam_relation_source"]."',
fam_relation_end_date='".$gezin["fam_relation_end_date"]."',
fam_marr_notice_date='".$gezin["fam_marr_notice_date"]."',
fam_marr_notice_place='".$gezin["fam_marr_notice_place"]."',
fam_marr_notice_text='".$gezin["fam_marr_notice_text"]."',
fam_marr_notice_source='".$gezin["fam_marr_notice_source"]."',
fam_marr_date='".$gezin["fam_marr_date"]."',
fam_marr_place='".$gezin["fam_marr_place"]."',
fam_marr_text='".$gezin["fam_marr_text"]."',
fam_marr_source='".$gezin["fam_marr_source"]."',
fam_marr_authority='".$gezin["fam_marr_authority"]."',
fam_div_date='".$gezin["fam_div_date"]."',
fam_div_place='".$gezin["fam_div_place"]."',
fam_div_text='".$gezin["fam_div_text"]."',
fam_div_source='".$gezin["fam_div_source"]."',
fam_div_authority='".$gezin["fam_div_authority"]."',
fam_new_date='".$gezin["new_date"]."',
fam_new_time='".$gezin["new_time"]."',
fam_changed_date='".$gezin["changed_date"]."',
fam_changed_time='".$gezin["changed_time"]."'";
$result=mysql_query($sql) or die(mysql_error());
// *** STANDAARD adressen opslaan in aparte tabel ***
//if (isset($adresplaats[1])){
if ($nradres>0){
for ($i=1; $i<=$nradres; $i++){
$gebeurtsql="INSERT INTO ".$_SESSION['tree_prefix']."addresses SET
address_order='".$i."',
address_family_id='".$gedcomnummer."',
address_place='".$adresplaats[$i]."',
address_date='".$adresdatum[$i]."',
address_text='".$adrestekst[$i]."',
address_source='".$adresbron[$i]."'";
$result=mysql_query($gebeurtsql) or die(mysql_error());
}
}
// *** Vermeldingen opslaan in aparte tabel ***
if ($nrvermelding>0){
$event_order=0;
for ($i=1; $i<=$nrvermelding; $i++){
if ($i==1){ $event_kind=$vermeldingsoort[$i]; }
$event_order++;
if ( $event_kind!=$vermeldingsoort[$i] ){
$event_order=1;
$event_kind=$vermeldingsoort[$i];
}
$gebeurtsql="INSERT INTO ".$_SESSION['tree_prefix']."events SET
event_order='".$event_order."',
event_person_id='',
event_family_id='".$gedcomnummer."',
event_kind='".$vermeldingsoort[$i]."',
event_event='".$vermelding[$i]."',
event_gedcom='".$vermeldinggedcom[$i]."',
event_date='".$vermeldingdatum[$i]."',
event_text='".$vermeldingtekst[$i]."',
event_place='".$vermeldingplaats[$i]."',
event_source='".$vermeldingbron[$i]."'";
$result=mysql_query($gebeurtsql) or die(mysql_error());
}
}
}
// ************************************************************************************************
// *** Teksten verwerken ***
// ************************************************************************************************
function tekst($tekst_array){
global $nietverwerkt, $genprogramma;
$regel=$tekst_array;
$regel2=explode("\n",$regel);
$buffer=$regel2[0];
$text['text_text']='';
$text["new_date"]=''; $text["new_time"]=''; $text["changed_date"]=''; $text["changed_time"]='';
//0 @N954@ NOTE
$text['text_gedcomnr']=substr($buffer, 2, -5);
if (isset($_POST['verwerkweergave'])){ print str_replace("@", "", $text['text_gedcomnr'])." "; }
// *** Level0 opslaan ***
$level0=substr($buffer,2);
$level1="";
$level2="";
for ($z=1; $z<=count($regel2)-2; $z++){
$verwerkt=0;
$buffer=$regel2[$z];
$buffer=rtrim($buffer,"\n\r"); //newline strippen
// *** Strip starting spaces, for Pro-gen ***
if ($genprogramma=='PRO-GEN'){ $buffer=ltrim($buffer," "); }
// *** Level1 opslaan ***
if (substr($buffer, 0, 1)=='1'){
$level1=rtrim(substr($buffer,2,4)); //rtrim voor CHR_
$event='';
$event2='1';
$level2="";
}
// *** Level2 opslaan ***
if (substr($buffer, 0, 1)=='2'){ $level2=substr($buffer,2,4); }
if (substr($buffer,2,4)=='CONC'){ $verwerkt=1; $text['text_text']=$text['text_text'].substr($buffer,7); }
//if (substr($buffer,2,4)=='CONT'){ $verwerkt=1; $text['text_text']=$text['text_text']."<br>".substr($buffer,7); }
if (substr($buffer,2,4)=='CONT'){ $verwerkt=1; $text['text_text']=$text['text_text']."\n".substr($buffer,7); }
// *** New date/ time ***
//1 _NEW
//2 DATE 04 AUG 2004
if ($level1=='_NEW'){
if (substr($buffer, 0, 6)=='1 _NEW'){ $verwerkt=1; }
if (substr($buffer, 0, 6)=='2 DATE'){
$verwerkt=1; $text["new_date"]=substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 TIME'){
$verwerkt=1; $text["new_time"]=substr($buffer,7); }
}
// *** Changed date/ time ***
//1 CHAN
//2 DATE 04 AUG 2004
if ($level1=='CHAN'){
if (substr($buffer, 0, 6)=='1 CHAN'){ $verwerkt=1; }
if (substr($buffer, 0, 6)=='2 DATE'){ $verwerkt=1; $text["changed_date"]=substr($buffer,7); }
if (substr($buffer, 0, 6)=='3 TIME'){ $verwerkt=1; $text["changed_time"]=substr($buffer,7); }
}
//*******************************************************************************************
// *** Opslaan van niet verwerkte gedcom items ***
// ******************************************************************************************
if (isset($_POST['verwerkcontrole'])){
// *** Onderstaande regels overslaan ***
if ($buffer=='0 TRLR'){ $verwerkt=1; }
if ($verwerkt==0){
$nietverwerkt[]=@$level0."</td><td>".@$level1."<br></td><td>".@$level2."<br></td><td>$buffer";
}
}
} //einde explode
// *** Aldfaer e-mail adressen krijgen een dubbele @. ***
$text['text_text'] = str_replace('@@', '@', $text['text_text']);
// *** Tekst opslaan ***
$sql="INSERT INTO ".$_SESSION['tree_prefix']."texts SET
text_gedcomnr='".$text['text_gedcomnr']."',
text_text='".$text['text_text']."',
text_new_date='".$text['new_date']."',
text_new_time='".$text['new_time']."',
text_changed_date='".$text['changed_date']."',
text_changed_time='".$text['changed_time']."'
";
$result=mysql_query($sql) or die(mysql_error());
}
// ************************************************************************************************
// *** Bronnen verwerken ***
// ************************************************************************************************
function bron($bron_array){
global $nietverwerkt, $genprogramma;
$regel=$bron_array;
$regel2=explode("\n",$regel);
$buffer=$regel2[0];
unset ($bron); //Reset de hele array
$bron["titel"]="";
$bron["afkorting"]="";
$bron["datum"]="";
$bron["publicatie"]="";
$bron["plaats"]="";
$bron["pers_own_code"]="";
$bron["auteur"]="";
$bron["onderwerp"]="";
$bron["nummer"]="";
$bron["soort"]="";
$bron["tekst"]="";
$bron["afbeeldingen"]="";
$bron["bewaarplaats"]="";
$bron["archief"]="";
$bron["bladzijde"]="";
//0 @S1@ SOUR
$bron["id"]=substr($buffer,3,-6);
if (isset($_POST['verwerkweergave'])){ print substr($bron["id"],0,-1)." "; }
// *** Level0 opslaan ***
$level0=substr($buffer,2);
$level1="";
$level2="";
for ($z=1; $z<=count($regel2)-2; $z++){
$verwerkt=0;
//$buffer=addslashes($regel2[$z]);
$buffer=$regel2[$z];
$buffer=rtrim($buffer,"\n\r"); //newline strippen
//echo "BUFFER: ".$z."-".$buffer."!".count($regel2)."<br>";
// *** Strip starting spaces, for Pro-gen ***
if ($genprogramma=='PRO-GEN'){ $buffer=ltrim($buffer," "); }
// *** Level1 opslaan ***
if (substr($buffer, 0, 1)=='1'){
$level1=rtrim(substr($buffer,2,4)); //rtrim voor CHR_
$event='';
$event2='1';
$level2="";
}
// *** Level2 opslaan ***
if (substr($buffer, 0, 1)=='2'){ $level2=substr($buffer,2,4); }
// ***********************************************************************************************
// *** Bronnen 0 @S1@ SOUR ***
// ***********************************************************************************************
// *** Bron bij BK ***
//0 @S3@ SOUR
//1 AUTH Voornaam Achternaam
//1 TITL Test bron
//1 ABBR Bron afkorting
//1 PUBL 2007
//1 TEXT Tekst test bron
//2 CONT 2e regel
//2 CONT 3e regel
//1 NOTE Informatie test bron
//2 CONT 2e regel
//2 CONT 3e regel
//1 REPO @R8@
//2 CALN Lds nr.
//2 MEDI Other
// BK dit wordt NIET verwerkt (bewaarplaats of archief):
//0 @R8@ REPO
//1 NAME Plaats
//1 ADDR Straat 45
//2 CONT Plaats
//1 PHON telefoon
//1 FAX fax
//1 EMAIL mail
//1 WWW website
if (substr($buffer,2,4)=='DATE'){ $verwerkt=1; $bron["datum"]=substr($buffer,7); }
if (substr($buffer,2,4)=='TITL'){ $verwerkt=1; $bron["titel"]=substr($buffer,7); }
if (substr($buffer,2,4)=='PLAC'){ $verwerkt=1; $bron["plaats"]=substr($buffer,7); }
if (substr($buffer,2,4)=='REFN'){ $verwerkt=1; $bron["pers_own_code"]=substr($buffer,7); }
if (substr($buffer,2,4)=='PUBL'){ $verwerkt=1; $bron["publicatie"]=substr($buffer,7); } //Voor BK
if (substr($buffer,2,4)=='TEXT'){
$verwerkt=1; $bron["tekst"]=$this->voegsamen2($bron["tekst"],substr($buffer,7)); }
if (substr($buffer,2,4)=='NOTE'){
$verwerkt=1; $bron["tekst"]=$this->voegsamen2($bron["tekst"],substr($buffer,7)); }
if (substr($buffer,2,4)=='CONC'){ $verwerkt=1; $bron["tekst"].=$this->conc(substr($buffer,7)); }
if (substr($buffer,2,4)=='CONT'){ $verwerkt=1; $bron["tekst"].=$this->cont(substr($buffer,7)); }
if (substr($buffer,2,4)=='SUBJ'){ $verwerkt=1; $bron["onderwerp"]=substr($buffer,7); }
if (substr($buffer,2,4)=='AUTH'){ $verwerkt=1; $bron["auteur"]=substr($buffer,7); } //Voor BK
if (substr($buffer,2,4)=='ITEM'){ $verwerkt=1; $bron["nummer"]=substr($buffer,7); }
if (substr($buffer,2,4)=='KIND'){ $verwerkt=1; $bron["soort"]=substr($buffer,7); }
if (substr($buffer,2,4)=='ABBR'){ $verwerkt=1; $bron["afkorting"]=substr($buffer,7); } //Voor BK
//1 PHOTO @#APLAATJES\AKTEMONS.GIF GIF@
if (substr($buffer,0,7)=='1 PHOTO'){
$verwerkt=1; $bron["afbeeldingen"]=$this->voegsamen($bron["afbeeldingen"], substr($buffer,11,-5));
}
if (substr($buffer,2,4)=='REPO'){ $verwerkt=1; $bron["bewaarplaats"]=substr($buffer,7); }
if (substr($buffer,2,4)=='CALN'){ $verwerkt=1; $bron["archief"]=substr($buffer,7); }
if (substr($buffer,2,4)=='PAGE'){ $verwerkt=1; $bron["bladzijde"]=substr($buffer,7); }
////*** AFBEELDINGSTEKST ********************************
//if level1='PHOT' then begin //Foto omschrijving
// if copy(buf,1,6)='2 DSCR' then afbeeldtekst[nrafbeelding]:=copy(buf,8,length(buf));
// if copy(buf,1,6)='2 NAME' then afbeeldtekst[nrafbeelding]:=copy(buf,8,length(buf)); //VOOR ANDERE GEDCOM VERSIES!
//end;
//if (level1<>'PHOT') and (copy(buf,3,4)='NAME') then Naam:=copy(buf,8,length(buf));
//}
//********************************************************************************************
// *** Opslaan van niet verwerkte gedcom items ***
// *******************************************************************************************
if (isset($_POST['verwerkcontrole'])){
//Onderstaande regels overslaan
if ($buffer=='0 TRLR'){ $verwerkt=1; }
if ($buffer=='1 REPO'){ $verwerkt=1; }
if ($verwerkt==0){
$nietverwerkt[]="$level0</td><td>$level1<br></td><td>$level2<br></td><td>$buffer";
}
}
} //einde explode
// *** Soms staat er geen titel bij een BK stamboom ***
if ($bron["titel"]==''){
if ($bron["auteur"]){ $bron["titel"]=$bron["auteur"]; }
if ($bron["onderwerp"]){ $bron["titel"]=$bron["onderwerp"]; }
}
// *** Aldfaer bronnen hebben geen titel en geen onderwerp ***
if ($bron["titel"]=='' AND $bron["onderwerp"]=='' AND $bron["tekst"]){
$woorden = explode(" ", $bron["tekst"]);
// Controleren of er wel meerdere woorden in de tekst staan
$bron["titel"].=' '.$woorden[0];
if (isset($woorden[1])){ $bron["titel"].=' '.$woorden[1]; }
if (count($woorden)>2){ $bron["titel"].=' '.$woorden[2]; }
if (count($woorden)>3){ $bron["titel"].=' '.$woorden[3]; }
if (count($woorden)>2){ $bron["titel"].='...'; }
}
// *** Als toch nog de titel ontbreekt dan maar ... neer zetten ***
if ($bron["titel"]==''){ $bron["titel"]="..."; }
// *** Bronnen opslaan ***
$sql="INSERT INTO ".$_SESSION['tree_prefix']."sources SET
source_gedcomnr='".$bron["id"]."',
source_title='".$bron["titel"]."',
source_abbr='".$bron["afkorting"]."',
source_date='".$bron["datum"]."',
source_publ='".$bron["publicatie"]."',
source_place='".$bron["plaats"]."',
source_refn='".$bron["pers_own_code"]."',
source_auth='".$bron["auteur"]."',
source_subj='".$bron["onderwerp"]."',
source_item='".$bron["nummer"]."',
source_kind='".$bron["soort"]."',
source_text='".$bron["tekst"]."',
source_photo='".$bron["afbeeldingen"]."',
source_repo_name='".$bron["bewaarplaats"]."',
source_repo_caln='".$bron["archief"]."',
source_repo_page='".$bron["bladzijde"]."'";
$result=mysql_query($sql) or die(mysql_error());
}
// ************************************************************************************************
// *** Adressen verwerken ***
// ************************************************************************************************
function adres($adres_array){
global $nietverwerkt, $genprogramma;
$regel=$adres_array;
$regel2=explode("\n",$regel);
$buffer=$regel2[0];
// ***********************************************************************************************
// *** Adressen Haza-Plus ***
// ***********************************************************************************************
//0 @R1@ RESI
//1 ADDR Lange Houtstraat 100
//1 ZIP 1234 AB
//1 PLAC Amsterdam
//1 NOTE Bla bla.
//1 PHOTO @#Aplaatjes\w-brinke.jpg jpg@
//2 NAME Brinke
unset ($adres); //Reset de hele array
$adres["adres"]="";
$adres["zip"]="";
$adres["plaats"]="";
$adres["telefoon"]="";
$adres["tekst"]="";
$adres["afbeeldingen"]="";
$adres["gedcomnummer"]=substr($buffer,3,-6);
if (isset($_POST['verwerkweergave'])){ print substr($adres["id"],0,-1)." "; }
$level0=substr($buffer,2);
$level1="";
$level2="";
for ($z=1; $z<=count($regel2)-2; $z++){
$verwerkt=0;
//$buffer=addslashes($regel2[$z]);
$buffer=$regel2[$z];
$buffer=rtrim($buffer,"\n\r"); //newline strippen
//echo "BUFFER: ".$z."-".$buffer."!".count($regel2)."<br>";
// *** Strip starting spaces, for Pro-gen ***
if ($genprogramma=='PRO-GEN'){ $buffer=ltrim($buffer," "); }
// *** Level1 opslaan ***
if (substr($buffer, 0, 1)=='1'){
$level1=rtrim(substr($buffer,2,4)); //rtrim voor CHR_
$event='';
$event2='1';
$level2="";
}
// *** Level2 opslaan ***
if (substr($buffer, 0, 1)=='2'){ $level2=substr($buffer,2,4); }
if (substr($buffer,2,4)=='ADDR'){ $verwerkt=1; $adres["adres"]=substr($buffer,7); }
if (substr($buffer,2,4)=='ZIP '){ $verwerkt=1; $adres["datum"]=substr($buffer,7); } //Voor BK
if (substr($buffer,2,4)=='PLAC'){ $verwerkt=1; $adres["plaats"]=substr($buffer,7); }
if (substr($buffer,2,4)=='PHON'){ $verwerkt=1; $adres["telefoon"]=substr($buffer,7); }
if (substr($buffer,2,4)=='NOTE'){ $verwerkt=1; $adres["tekst"]=substr($buffer,7); }
if (substr($buffer,2,4)=='CONC'){ $verwerkt=1; $adres["tekst"].=$this->conc(substr($buffer,7)); }
if (substr($buffer,2,4)=='CONT'){ $verwerkt=1; $adres["tekst"].=$this->cont(substr($buffer,7)); }
//1 PHOTO @#APLAATJES\AKTEMONS.GIF GIF@
if (substr($buffer,0,7)=='1 PHOTO'){
$verwerkt=1; $adres["afbeeldingen"]=$this->voegsamen($adres["afbeeldingen"], substr($buffer,11,-5)); }
//********************************************************************************************
// *** Opslaan van niet verwerkte gedcom items ***
// *******************************************************************************************
if (isset($_POST['verwerkcontrole'])){
//Onderstaande regels overslaan
if ($buffer=='0 TRLR'){ $verwerkt=1; }
if ($verwerkt==0){
$nietverwerkt[]="$level0</td><td>$level1<br></td><td>$level2<br></td><td>$buffer";
}
}
} //einde explode
// *** Adressen opslaan ***
$sql="INSERT INTO ".$_SESSION['tree_prefix']."addresses SET
address_gedcomnr='".$adres["gedcomnummer"]."',
address_address='".$adres["adres"]."',
address_zip='".$adres["zip"]."',
address_place='".$adres["plaats"]."',
address_phone='".$adres["telefoon"]."',
address_text='".$adres["tekst"]."',
address_photo='".$adres["afbeeldingen"]."'";
$result=mysql_query($sql) or die(mysql_error());
}
} // einde class
?>