summaryrefslogtreecommitdiff
path: root/expand_view.php
blob: 88ac1c380716b4c9a4fd185499e9ca4769fadfde (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<?php
// Used by AJAX to load the expanded view inside person boxes
//
// webtrees: Web based Family History software
// Copyright (C) 2011 webtrees development team.
//
// Derived from PhpGedView
// Copyright (C) 2002 to 2008 PGV Development Team. All rights reserved.
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// $Id$

define('WT_SCRIPT_NAME', 'expand_view.php');
require './includes/session.php';

header('Content-Type: text/html; charset=UTF-8');
$person = WT_Person::getInstance(safe_GET_xref('pid'));
if (!$person || !$person->canDisplayDetails()) {
	return WT_I18N::translate('Private');
}

$person->add_family_facts(false);
$events=$person->getIndiFacts();
sort_facts($events);

foreach ($events as $event) {
	if ($event->canShow()) {
		switch ($event->getTag()) {
		case 'SEX':
		case 'FAMS':
		case 'FAMC':
		case 'NAME':
		case 'TITL':
		case 'NOTE':
		case 'SOUR':
		case 'SSN':
		case 'OBJE':
		case 'HUSB':
		case 'WIFE':
		case 'CHIL':
		case 'ALIA':
		case 'ADDR':
		case 'PHON':
		case 'SUBM':
		case '_EMAIL':
		case 'CHAN':
		case 'URL':
		case 'EMAIL':
		case 'WWW':
		case 'RESI':
		case 'RESN':
		case '_UID':
		case '_TODO':
		case '_WT_OBJE_SORT':
			// Do not show these
			break;
		case 'ASSO':
			// Associates
			echo '<div><span class="details_label">', $event->getLabel(), '</span> ';
			echo print_asso_rela_record($event, $person), '</div>';
			break;
		default:
			// Simple version of print_fact()
			echo '<div>';
			echo '<span class="details_label">', $event->getLabel(), '</span> ';
			$details=$event->getDetail();
			if ($details!='Y' && $details!='N') {
				echo PrintReady($details);
			}
			echo format_fact_date($event, $person, false, false);
			// Show spouse/family for family events
			$spouse=WT_Person::getInstance($event->getSpouseId());
			if ($spouse) {
				echo ' <a href="', $spouse->getHtmlUrl(), '">', $spouse->getFullName(), '</a> - ';
			}
			$family=WT_Family::getInstance($event->getFamilyId());
			if ($family) {
				echo '<a href="', $family->getHtmlUrl(), '">', WT_I18N::translate('View Family'), '</a>';
			}
			echo ' ',format_fact_place($event, true, true);
			echo '</div>';
			break;
		}
	}
}