[pageheader] Move user addon settings to admin page

- Reformat code
- Remove uninstall function that doesn't have any specific uninstall code besides hooks
pull/854/head
Hypolite Petovan 2019-05-08 00:45:34 -04:00
parent f93a1a45cc
commit f104bb0d78
3 changed files with 27 additions and 55 deletions

View File

@ -8,49 +8,31 @@
*
*/
use Friendica\App;
use Friendica\Core\Config;
use Friendica\Core\Hook;
use Friendica\Core\L10n;
use Friendica\Core\Renderer;
function pageheader_install() {
Hook::register('page_content_top', 'addon/pageheader/pageheader.php', 'pageheader_fetch');
Hook::register('addon_settings', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings');
Hook::register('addon_settings_post', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings_post');
Hook::register('page_content_top', __FILE__, 'pageheader_fetch');
}
function pageheader_uninstall() {
Hook::unregister('page_content_top', 'addon/pageheader/pageheader.php', 'pageheader_fetch');
Hook::unregister('addon_settings', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings');
Hook::unregister('addon_settings_post', 'addon/pageheader/pageheader.php', 'pageheader_addon_settings_post');
// hook moved, uninstall the old one if still there.
Hook::unregister('page_header', 'addon/pageheader/pageheader.php', 'pageheader_fetch');
}
function pageheader_addon_settings(&$a,&$s) {
if(! is_site_admin())
function pageheader_addon_admin(App &$a, &$s)
{
if(! is_site_admin()) {
return;
}
/* Add our stylesheet to the page so we can make our settings look nice */
$a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="' . $a->getBaseURL() . '/addon/pageheader/pageheader.css' . '" media="all" />' . "\r\n";
$stylesheetPath = __DIR__ . '/pageheader.css';
$a->registerStylesheet($stylesheetPath);
$words = Config::get('pageheader','text');
if(! $words)
$words = '';
$t = Renderer::getMarkupTemplate("settings.tpl", "addon/pageheader/");
$t = Renderer::getMarkupTemplate('admin.tpl', __DIR__);
$s .= Renderer::replaceMacros($t, [
'$title' => L10n::t('"pageheader" Settings'),
'$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)')],
@ -58,13 +40,13 @@ function pageheader_addon_settings(&$a,&$s) {
]);
return;
}
function pageheader_addon_settings_post(&$a, &$b) {
if(!is_site_admin())
function pageheader_addon_admin_post(App $a, &$b)
{
if(!is_site_admin()) {
return;
}
if(!empty($_POST['pageheader-submit'])) {
if (isset($_POST['pageheader-words'])) {
@ -74,19 +56,18 @@ function pageheader_addon_settings_post(&$a, &$b) {
}
}
function pageheader_fetch($a,&$b) {
function pageheader_fetch(App $a, &$b)
{
if(file_exists('pageheader.html')){
$s = file_get_contents('pageheader.html');
} else {
$s = Config::get('pageheader', 'text');
}
$a->page['htmlhead'] .= '<link rel="stylesheet" type="text/css" href="'
. $a->getBaseURL() . '/addon/pageheader/pageheader.css' . '" media="all" />' . "\r\n";
$stylesheetPath = __DIR__ .'/pageheader.css';
$a->registerStylesheet($stylesheetPath);
if(! $s)
$s = '';
if ($s != '')
if ($s) {
$b .= '<div class="pageheader">' . $s . '</div>';
}
}

View File

@ -0,0 +1,5 @@
{{include file="field_textarea.tpl" field=$phwords}}
<div class="settings-submit-wrapper" >
<input type="submit" id="pageheader-submit" name="pageheader-submit" class="settings-submit" value="{{$submit}}" />
</div>

View File

@ -1,14 +0,0 @@
<span id="settings_pageheader_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose('settings_pageheader_expanded'); openClose('settings_pageheader_inflated');">
<h3>{{$title}}</h3>
</span>
<div id="settings_pageheader_expanded" class="settings-block" style="display: none;">
<span class="fakelink" onclick="openClose('settings_pageheader_expanded'); openClose('settings_pageheader_inflated');">
<h3>{{$title}}</h3>
</span>
{{include file="field_textarea.tpl" field=$phwords}}
<div class="settings-submit-wrapper" >
<input type="submit" id="pageheader-submit" name="pageheader-submit" class="settings-submit" value="{{$submit}}" />
</div>
</div>
<div class="clear"></div>