4 * Description: Inserts a page header
6 * Author: Keith Fernie <http://friendika.me4.it/profile/keith>
7 * Hauke Altmann <https://snarl.de/profile/tugelblend>
10 use Friendica\Core\Addon;
11 use Friendica\Core\Config;
12 use Friendica\Core\L10n;
14 function pageheader_install() {
15 Addon::registerHook('page_content_top', 'addon/pageheader/pageheader.php', 'pageheader_fetch');
16 Addon::registerHook('addon_settings', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings');
17 Addon::registerHook('addon_settings_post', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings_post');
22 function pageheader_uninstall() {
23 Addon::unregisterHook('page_content_top', 'addon/pageheader/pageheader.php', 'pageheader_fetch');
24 Addon::unregisterHook('addon_settings', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings');
25 Addon::unregisterHook('addon_settings_post', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings_post');
27 // hook moved, uninstall the old one if still there.
28 Addon::unregisterHook('page_header', 'addon/pageheader/pageheader.php', 'pageheader_fetch');
36 function pageheader_addon_settings(&$a,&$s) {
42 /* Add our stylesheet to the page so we can make our settings look nice */
44 $a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="' . $a->get_baseurl() . '/addon/pageheader/pageheader.css' . '" media="all" />' . "\r\n";
47 $words = Config::get('pageheader','text');
51 $t = get_markup_template("settings.tpl", "addon/pageheader/");
52 $s .= replace_macros($t, [
53 '$title' => L10n::t('"pageheader" Settings'),
54 '$phwords' => ['pageheader-words', L10n::t('Message'), $words, L10n::t('Message to display on every page on this server (or put a pageheader.html file in your docroot)')],
55 '$submit' => L10n::t('Save Settings')
62 function pageheader_addon_settings_post(&$a,&$b) {
67 if($_POST['pageheader-submit']) {
68 Config::set('pageheader','text',trim(strip_tags($_POST['pageheader-words'])));
69 info(L10n::t('pageheader Settings saved.') . EOL);
73 function pageheader_fetch($a,&$b) {
75 if(file_exists('pageheader.html')){
76 $s = file_get_contents('pageheader.html');
78 $s = Config::get('pageheader', 'text');
81 $a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="'
82 . $a->get_baseurl() . '/addon/pageheader/pageheader.css' . '" media="all" />' . "\r\n";
87 $b .= '<div class="pageheader">' . $s . '</div>';