/** * Print the page footer, using the theme * Note that popup windows are deprecated */ public function pageFooterPopupWindow() { echo Theme::theme()->footerContainerPopupWindow() . '<!--[if lt IE 9]><script src="' . WT_JQUERY_JS_URL . '"></script><![endif]-->' . '<!--[if gte IE 9]><!--><script src="' . WT_JQUERY2_JS_URL . '"></script><!--<![endif]-->' . '<script src="' . WT_JQUERYUI_JS_URL . '">"</script>' . '<script src="' . WT_WEBTREES_JS_URL . '">"</script>' . $this->getJavascript() . Theme::theme()->hookFooterExtraJavascript() . (WT_DEBUG_SQL ? Database::getQueryLog() : '') . '</body>' . '</html>' . PHP_EOL . '<!-- webtrees: ' . WT_VERSION . ' -->' . '<!-- Execution time: ' . I18N::number(microtime(true) - WT_START_TIME, 3) . ' seconds -->' . '<!-- Memory: ' . I18N::number(memory_get_peak_usage(true) / 1024) . ' KB -->' . '<!-- SQL queries: ' . I18N::number(Database::getQueryCount()) . ' -->'; }
/** * Handle AJAX requests - to generate the tab content */ public function ajaxRequest() { // Search engines should not make AJAX requests if (Auth::isSearchEngine()) { http_response_code(403); exit; } // Initialise tabs $tab = Filter::get('module'); // A request for a non-existant tab? if (array_key_exists($tab, $this->tabs)) { $mod = $this->tabs[$tab]; } else { http_response_code(404); exit; } header("Content-Type: text/html; charset=UTF-8"); // AJAX calls do not have the meta tag headers and need this set header("X-Robots-Tag: noindex,follow"); // AJAX pages should not show up in search results, any links can be followed though echo $mod->getTabContent(); if (WT_DEBUG_SQL) { echo Database::getQueryLog(); } }
/** * Print the page footer, using the theme */ public function pageFooter() { if (WT_DEBUG_SQL) { echo Database::getQueryLog(); } echo $this->getJavascript(); }