addExternalJavascript(WT_JQUERY_COOKIE_URL); // We use this to record the sidebar state
if ($controller->record && $controller->record->canShow()) {
if (WT_Filter::get('action')=='ajax') {
$controller->ajaxRequest();
exit;
}
// Generate the sidebar content *before* we display the page header,
// as the clippings cart needs to have write access to the session.
$sidebar_html=$controller->getSideBarContent();
$controller->pageHeader();
if ($controller->record->isOld()) {
if (WT_USER_CAN_ACCEPT) {
echo
'
',
/* I18N: %1$s is “accept”, %2$s is “reject”. These are links. */ WT_I18N::translate(
'This individual has been deleted. You should review the deletion and then %1$s or %2$s it.',
'' . WT_I18N::translate_c('You should review the deletion and then accept or reject it.', 'accept') . '',
'' . WT_I18N::translate_c('You should review the deletion and then accept or reject it.', 'reject') . ''
),
' ', help_link('pending_changes'),
'
';
} elseif (WT_USER_CAN_EDIT) {
echo
'',
WT_I18N::translate('This individual has been deleted. The deletion will need to be reviewed by a moderator.'),
' ', help_link('pending_changes'),
'
';
}
} elseif ($controller->record->isNew()) {
if (WT_USER_CAN_ACCEPT) {
echo
'',
/* I18N: %1$s is “accept”, %2$s is “reject”. These are links. */ WT_I18N::translate(
'This individual has been edited. You should review the changes and then %1$s or %2$s them.',
'' . WT_I18N::translate_c('You should review the changes and then accept or reject them.', 'accept') . '',
'' . WT_I18N::translate_c('You should review the changes and then accept or reject them.', 'reject') . ''
),
' ', help_link('pending_changes'),
'
';
} elseif (WT_USER_CAN_EDIT) {
echo
'',
WT_I18N::translate('This individual has been edited. The changes need to be reviewed by a moderator.'),
' ', help_link('pending_changes'),
'
';
}
}
} elseif ($controller->record && $controller->record->canShowName()) {
// Just show the name.
$controller->pageHeader();
echo '', $controller->record->getFullName(), '
';
echo '', WT_I18N::translate('The details of this individual are private.'), '
';
exit;
} else {
header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found');
$controller->pageHeader();
echo '', WT_I18N::translate('This individual does not exist or you do not have permission to view it.'), '
';
exit;
}
$controller->addInlineJavascript('
var WT_INDIVIDUAL = (function () {
var instance,
jQseparator = jQuery("#separator"),
jQsidebar = jQuery ("#sidebar");
function init() {
jQuery ("#header_accordion1").accordion ({
active: 0,
heightStyle: "content",
collapsible: true
});
jQuery ("#tabs").tabs ({
// If url has a hash (e.g #stories) then don\'t set an active tab - it overrides the hash
// otherwise use cookie
active: location.hash ? null : jQuery.cookie ("indi-tab"),
activate: function (event, ui) {
jQuery.cookie ("indi-tab", jQuery ("#tabs").tabs ("option", "active"));
},
// Only load each tab once
beforeLoad: function (event, ui) {
if (ui.tab.data ("loaded")) {
event.preventDefault ();
return;
}
jQuery (ui.panel.selector).append (\'\');
ui.jqXHR.success (function () {
ui.tab.data ("loaded", true);
});
}
});
if (jQsidebar.length) { // Have we got a sidebar ?
// toggle sidebar visibility
jQuery ("#main").on ("click", "#separator", function (e) {
e.preventDefault ();
jQsidebar.animate ({width: "toggle"}, {
duration: 300,
done: function () {
jQuery.cookie ("hide-sb", jQsidebar.is (":hidden"));
jQseparator.toggleClass("separator-hidden separator-visible");
}
});
});
// Set initial sidebar state
if (jQuery.cookie ("hide-sb") === "true") {
jQsidebar.hide ();
jQseparator.addClass("separator-hidden");
} else {
jQsidebar.show ();
jQseparator.addClass("separator-visible");
}
}
}
return {
getInstance: function () {
if (!instance) {
instance = init ();
}
return instance;
}
};
}) ();
WT_INDIVIDUAL.getInstance ();
');
// ===================================== header area
echo
'', //overall page container
'
',
'';// close #indi_header
// ===================================== main content tabs
foreach ($controller->tabs as $tab) {
echo $tab->getPreLoadContent();
}
echo '
';
echo '
';
foreach ($controller->tabs as $tab) {
if ($tab->hasTabContent()) {
if (!$tab->canLoadAjax()) {
echo '
', $tab->getTabContent(), '
';
}
}
}
echo
'
', // close #tabs
'
'; //close indi_left
if ($sidebar_html) {
echo '
' . //clickable element to open/close sidebar
$sidebar_html;
}
echo '
'; // close #main