mirror of
https://git.friendi.ca/friendica/friendica-addons.git
synced 2024-11-23 23:03:42 +00:00
[cookienotice] Move user addon settings to admin page
- Reformat code - Remove uninstall function which doesn't include any specific uninstalling code besides hooks
This commit is contained in:
parent
582bec6415
commit
31e89b43fe
4 changed files with 41 additions and 69 deletions
|
@ -2,6 +2,8 @@ Cookie Notice
|
||||||
|
|
||||||
For server admins only.
|
For server admins only.
|
||||||
|
|
||||||
Configure, show and handle a simple cookie usage notice. This absolute annoying but eventually necessary notification about the usage of cookies. This kind of things you klick ok on but don't read.
|
Configure, show and handle a simple cookie usage notice.
|
||||||
|
This absolute annoying but eventually necessary notification about the usage of cookies.
|
||||||
|
This kind of things you click ok on but don't read.
|
||||||
|
|
||||||
Author: Peter liebetrau <https://socivitas.com/profile/peerteer>
|
Author: Peter Liebetrau <https://socivitas.com/profile/peerteer>
|
||||||
|
|
|
@ -5,70 +5,49 @@
|
||||||
* Description: Configure, show and handle a simple cookie notice
|
* Description: Configure, show and handle a simple cookie notice
|
||||||
* Version: 1.0
|
* Version: 1.0
|
||||||
* Author: Peter Liebetrau <https://socivitas/profile/peerteer>
|
* Author: Peter Liebetrau <https://socivitas/profile/peerteer>
|
||||||
*
|
|
||||||
*/
|
*/
|
||||||
use Friendica\Core\Hook;
|
|
||||||
|
use Friendica\App;
|
||||||
use Friendica\Core\Config;
|
use Friendica\Core\Config;
|
||||||
|
use Friendica\Core\Hook;
|
||||||
use Friendica\Core\L10n;
|
use Friendica\Core\L10n;
|
||||||
use Friendica\Core\Renderer;
|
use Friendica\Core\Renderer;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* cookienotice_install
|
* cookienotice_install
|
||||||
* registers hooks
|
* registers hooks
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function cookienotice_install()
|
function cookienotice_install()
|
||||||
{
|
{
|
||||||
Hook::register('page_content_top', __FILE__, 'cookienotice_page_content_top');
|
Hook::register('page_content_top', __FILE__, 'cookienotice_page_content_top');
|
||||||
Hook::register('page_end', __FILE__, 'cookienotice_page_end');
|
Hook::register('page_end', __FILE__, 'cookienotice_page_end');
|
||||||
Hook::register('addon_settings', __FILE__, 'cookienotice_addon_settings');
|
|
||||||
Hook::register('addon_settings_post', __FILE__, 'cookienotice_addon_settings_post');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* cookienotice_uninstall
|
* cookienotice_addon_admin
|
||||||
* unregisters hooks
|
|
||||||
*
|
|
||||||
* @return void
|
|
||||||
*/
|
|
||||||
function cookienotice_uninstall()
|
|
||||||
{
|
|
||||||
Hook::unregister('page_content_top', __FILE__, 'cookienotice_page_content_top');
|
|
||||||
Hook::unregister('page_end', __FILE__, 'cookienotice_page_end');
|
|
||||||
Hook::unregister('addon_settings', __FILE__, 'cookienotice_addon_settings');
|
|
||||||
Hook::unregister('addon_settings_post', __FILE__, 'cookienotice_addon_settings_post');
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* cookienotice_addon_settings
|
|
||||||
* addon_settings hook
|
|
||||||
* creates the admins config panel
|
* creates the admins config panel
|
||||||
*
|
*
|
||||||
* @param \Friendica\App $a
|
* @param App $a
|
||||||
* @param string $s The existing config panel html so far
|
* @param string $s The existing config panel html so far
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function cookienotice_addon_settings(\Friendica\App $a, &$s)
|
function cookienotice_addon_admin(App $a, &$s)
|
||||||
{
|
{
|
||||||
if (!is_site_admin()) {
|
if (!is_site_admin()) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Add our stylesheet to the page so we can make our settings look nice */
|
|
||||||
$stylesheetPath = 'addon/cookienotice/cookienotice.css';
|
|
||||||
$a->registerStylesheet($stylesheetPath);
|
|
||||||
|
|
||||||
$text = Config::get('cookienotice', 'text', L10n::t('This website uses cookies. If you continue browsing this website, you agree to the usage of cookies.'));
|
$text = Config::get('cookienotice', 'text', L10n::t('This website uses cookies. If you continue browsing this website, you agree to the usage of cookies.'));
|
||||||
$oktext = Config::get('cookienotice', 'oktext', L10n::t('OK'));
|
$oktext = Config::get('cookienotice', 'oktext', L10n::t('OK'));
|
||||||
|
|
||||||
$t = Renderer::getMarkupTemplate("settings.tpl", "addon/cookienotice/");
|
$t = Renderer::getMarkupTemplate('admin.tpl', __DIR__);
|
||||||
$s .= Renderer::replaceMacros($t, [
|
$s .= Renderer::replaceMacros($t, [
|
||||||
'$title' => L10n::t('"cookienotice" Settings'),
|
|
||||||
'$description' => L10n::t('<b>Configure your cookie usage notice.</b> It should just be a notice, saying that the website uses cookies. It is shown as long as a user didnt confirm clicking the OK button.'),
|
'$description' => L10n::t('<b>Configure your cookie usage notice.</b> It should just be a notice, saying that the website uses cookies. It is shown as long as a user didnt confirm clicking the OK button.'),
|
||||||
'$text' => ['cookienotice-text', L10n::t('Cookie Usage Notice'), $text, L10n::t('The cookie usage notice')],
|
'$text' => ['cookienotice-text', L10n::t('Cookie Usage Notice'), $text],
|
||||||
'$oktext' => ['cookienotice-oktext', L10n::t('OK Button Text'), $oktext, L10n::t('The OK Button text')],
|
'$oktext' => ['cookienotice-oktext', L10n::t('OK Button Text'), $oktext],
|
||||||
'$submit' => L10n::t('Save Settings')
|
'$submit' => L10n::t('Save Settings')
|
||||||
]);
|
]);
|
||||||
|
|
||||||
|
@ -76,16 +55,16 @@ function cookienotice_addon_settings(\Friendica\App $a, &$s)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* cookienotice_addon_settings_post
|
* cookienotice_addon_admin_post
|
||||||
* addon_settings_post hook
|
* addon_settings_post hook
|
||||||
* handles the post request from the admin panel
|
* handles the post request from the admin panel
|
||||||
*
|
*
|
||||||
* @param \Friendica\App $a
|
* @param App $a
|
||||||
* @param string $b
|
* @param string $b
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function cookienotice_addon_settings_post(\Friendica\App $a, &$b)
|
function cookienotice_addon_admin_post(App $a, &$b)
|
||||||
{
|
{
|
||||||
if (!is_site_admin()) {
|
if (!is_site_admin()) {
|
||||||
return;
|
return;
|
||||||
|
@ -102,16 +81,16 @@ function cookienotice_addon_settings_post(\Friendica\App $a, &$b)
|
||||||
* cookienotice_page_content_top
|
* cookienotice_page_content_top
|
||||||
* page_content_top hook
|
* page_content_top hook
|
||||||
* adds css and scripts to the <head> section of the html
|
* adds css and scripts to the <head> section of the html
|
||||||
*
|
*
|
||||||
* @param \Friendica\App $a
|
* @param App $a
|
||||||
* @param string $b unnused - the header html incl. nav
|
* @param string $b unused - the header html incl. nav
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function cookienotice_page_content_top(\Friendica\App $a, &$b)
|
function cookienotice_page_content_top(App $a, &$b)
|
||||||
{
|
{
|
||||||
$stylesheetPath = 'addon/cookienotice/cookienotice.css';
|
$stylesheetPath = __DIR__ . '/cookienotice.css';
|
||||||
$footerscriptPath = 'addon/cookienotice/cookienotice.js';
|
$footerscriptPath = __DIR__ . '/cookienotice.js';
|
||||||
|
|
||||||
$a->registerStylesheet($stylesheetPath);
|
$a->registerStylesheet($stylesheetPath);
|
||||||
$a->registerFooterScript($footerscriptPath);
|
$a->registerFooterScript($footerscriptPath);
|
||||||
|
@ -121,18 +100,18 @@ function cookienotice_page_content_top(\Friendica\App $a, &$b)
|
||||||
* cookienotice_page_end
|
* cookienotice_page_end
|
||||||
* page_end hook
|
* page_end hook
|
||||||
* ads our cookienotice box to the end of the html
|
* ads our cookienotice box to the end of the html
|
||||||
*
|
*
|
||||||
* @param \Friendica\App $a
|
* @param App $a
|
||||||
* @param string $b the page html
|
* @param string $b the page html
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
function cookienotice_page_end(\Friendica\App $a, &$b)
|
function cookienotice_page_end(App $a, &$b)
|
||||||
{
|
{
|
||||||
$text = (string) Config::get('cookienotice', 'text', L10n::t('This website uses cookies to recognize revisiting and logged in users. You accept the usage of these cookies by continue browsing this website.'));
|
$text = (string)Config::get('cookienotice', 'text', L10n::t('This website uses cookies to recognize revisiting and logged in users. You accept the usage of these cookies by continue browsing this website.'));
|
||||||
$oktext = (string) Config::get('cookienotice', 'oktext', L10n::t('OK'));
|
$oktext = (string)Config::get('cookienotice', 'oktext', L10n::t('OK'));
|
||||||
|
|
||||||
$page_end_tpl = Renderer::getMarkupTemplate("cookienotice.tpl", "addon/cookienotice/");
|
$page_end_tpl = Renderer::getMarkupTemplate('cookienotice.tpl', __DIR__);
|
||||||
|
|
||||||
$page_end = Renderer::replaceMacros($page_end_tpl, [
|
$page_end = Renderer::replaceMacros($page_end_tpl, [
|
||||||
'$text' => $text,
|
'$text' => $text,
|
||||||
|
|
6
cookienotice/templates/admin.tpl
Normal file
6
cookienotice/templates/admin.tpl
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
<p>{{$description nofilter}}</p>
|
||||||
|
{{include file="field_textarea.tpl" field=$text}}
|
||||||
|
{{include file="field_input.tpl" field=$oktext}}
|
||||||
|
<div class="settings-submit-wrapper" >
|
||||||
|
<input type="submit" id="cookienotice-submit" name="cookienotice-submit" class="settings-submit" value="{{$submit}}" />
|
||||||
|
</div>
|
|
@ -1,15 +0,0 @@
|
||||||
<span id="settings_cookienotice_inflated" class="settings-block fakelink" style="display: block;" onclick="openClose('settings_cookienotice_expanded'); openClose('settings_cookienotice_inflated');">
|
|
||||||
<h3>{{$title}}</h3>
|
|
||||||
</span>
|
|
||||||
<div id="settings_cookienotice_expanded" class="settings-block" style="display: none;">
|
|
||||||
<span class="fakelink" onclick="openClose('settings_cookienotice_expanded'); openClose('settings_cookienotice_inflated');">
|
|
||||||
<h3>{{$title}}</h3>
|
|
||||||
</span>
|
|
||||||
<p>{{$description nofilter}}</p>
|
|
||||||
{{include file="field_textarea.tpl" field=$text}}
|
|
||||||
{{include file="field_input.tpl" field=$oktext}}
|
|
||||||
<div class="settings-submit-wrapper" >
|
|
||||||
<input type="submit" id="cookienotice-submit" name="cookienotice-submit" class="settings-submit" value="{{$submit}}" />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="clear"></div>
|
|
Loading…
Reference in a new issue