1<?php 2 3/** 4 * webtrees: online genealogy 5 * Copyright (C) 2023 webtrees development team 6 * This program is free software: you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation, either version 3 of the License, or 9 * (at your option) any later version. 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * You should have received a copy of the GNU General Public License 15 * along with this program. If not, see <https://www.gnu.org/licenses/>. 16 */ 17 18declare(strict_types=1); 19 20namespace Fisharebest\Webtrees\CustomTags; 21 22use Fisharebest\Webtrees\Contracts\CustomTagInterface; 23use Fisharebest\Webtrees\Contracts\ElementInterface; 24use Fisharebest\Webtrees\Elements\DescriptiveTitle; 25use Fisharebest\Webtrees\Elements\GeneatiqueAct; 26use Fisharebest\Webtrees\Elements\MultimediaFormat; 27use Fisharebest\Webtrees\Elements\NamePersonal; 28use Fisharebest\Webtrees\Elements\TimeValue; 29use Fisharebest\Webtrees\I18N; 30 31/** 32 * GEDCOM files created by Généatique 33 * 34 * @see https://www.geneatique.com/ 35 */ 36class Geneatique implements CustomTagInterface 37{ 38 /** 39 * The name of the application. 40 * 41 * @return string 42 */ 43 public function name(): string 44 { 45 return 'Généatique'; 46 } 47 48 /** 49 * Tags created by this application. 50 * 51 * @return array<string,ElementInterface> 52 */ 53 public function tags(): array 54 { 55 return [ 56 // Values for _ACT include "al" (acte en-ligne). Are there others? 57 'FAM:*:_ACT' => new GeneatiqueAct(I18N::translate('Certificate'), []), 58 'INDI:*:_ACT' => new GeneatiqueAct(I18N::translate('Certificate'), []), 59 'INDI:DEAT:DATE:TIME' => new TimeValue(I18N::translate('Time of death')), 60 'INDI:NAME:_AKA' => new NamePersonal(I18N::translate('Also known as'), []), 61 'INDI:NAME:_MARNM' => new NamePersonal(I18N::translate('Married name'), []), 62 'OBJE:FORM' => new MultimediaFormat(I18N::translate('Format')), 63 'OBJE:TITL' => new DescriptiveTitle(I18N::translate('Title')), 64 65 /* 66 Pour déclarer les témoins dans les actes de naissance 67 68 Balise GEDCOM non valide. INDI:BIRT:ASSO 69 INDI:BIRT:ASSO:TYPE 70 INDI:BIRT:ASSO:RELA 71 INDI:DEAT:PLAC:QUAY 72 INDI:BIRT:OBJE:QUAY 73 INDI:BIRT:SOUR:TEXT 74 75 Dans les mariages 76 77 FAM:MARR:ASSO 78 FAM:MARR:ASSO:TYPE 79 FAM:MARR:ASSO:RELA 80 FAM:MARR:WWW:QUAY 81 OBJE:WWW 82 OBJE:SOUR:TEXTHTTPS 83 OBJE:NOTE:WWW 84 SOUR:QUAY 85 SOUR:TYPE 86 */ 87 ]; 88 } 89} 90