]> git.mxchange.org Git - friendica-addons.git/blobdiff - newmemberwidget/newmemberwidget.php
audon/lang/C/messages.po aktualisiert
[friendica-addons.git] / newmemberwidget / newmemberwidget.php
index 21cb482fc294c90faab5e1a612e24ad1d28c2c45..01977d0c3a7b605b76d089674654f49212f6fa1e 100644 (file)
@@ -1,77 +1,69 @@
 <?php
 /***
  * Name: New Member Widget
- * Description: Adds a widget for new members into the sidebar of the network page. The widget will be displayed for the 1st 14days of a account existance and contains a link to the new member page and a free-form text the admin can define.
+ * Description: Adds a widget for new members into the sidebar of the network page. The widget will be displayed for the first 14 days of an account's existence and contains a link to the new member page and free-form text the admin can define.
  * Version: 1
  * Author: Tobias Diekershoff <https://f.diekershoff.de/profile/tobias>
  ***/
 
+use Friendica\App;
 use Friendica\Content\Text\BBCode;
-use Friendica\Core\Config;
 use Friendica\Core\Hook;
 use Friendica\Core\Logger;
 use Friendica\Core\Renderer;
 use Friendica\DI;
-use Friendica\Util\Strings;
+use Friendica\Model\User;
 
 function newmemberwidget_install()
 {
        Hook::register( 'network_mod_init', 'addon/newmemberwidget/newmemberwidget.php', 'newmemberwidget_network_mod_init');
-       Logger::log('newmemberwidget installed');
+       Logger::notice('newmemberwidget installed');
 }
 
-function newmemberwidget_uninstall()
-{
-       Hook::unregister( 'network_mod_init', 'addon/newmemberwidget/newmemberwidget.php', 'newmemberwidget_network_mod_init');
-}
-
-function newmemberwidget_network_mod_init ($a, $b)
+function newmemberwidget_network_mod_init ($b)
 {
        if (empty($_SESSION['new_member'])) {
                return;
        }
 
-       $t = '<div id="newmember_widget" class="widget">'.EOL;
-       $t .= '<h3>'.DI::l10n()->t('New Member').'</h3>'.EOL;
-       $t .= '<a href="newmember" id="newmemberwidget-tips">' . DI::l10n()->t('Tips for New Members') . '</a><br />'.EOL;
+       $t = '<div id="newmember_widget" class="widget">';
+       $t .= '<h3>'.DI::l10n()->t('New Member').'</h3>';
+       $t .= '<a href="newmember" id="newmemberwidget-tips">' . DI::l10n()->t('Tips for New Members') . '</a><br />';
 
        if (DI::config()->get('newmemberwidget','linkglobalsupport', false)) {
-               $t .= '<a href="https://forum.friendi.ca/profile/helpers" target="_new">'.DI::l10n()->t('Global Support Forum').'</a><br />'.EOL;
+               $t .= '<a href="https://forum.friendi.ca/profile/helpers" target="_new">' . DI::l10n()->t('Global Support Group') . '</a><br />';
        }
 
        if (DI::config()->get('newmemberwidget','linklocalsupport', false)) {
-               $t .= '<a href="'.DI::baseUrl()->get().'/profile/'.DI::config()->get('newmemberwidget','localsupport').'" target="_new">'.DI::l10n()->t('Local Support Forum').'</a><br />'.EOL;
+               $t .= '<a href="' . DI::baseUrl() . '/profile/' . DI::config()->get('newmemberwidget', 'localsupport') . '" target="_new">' . DI::l10n()->t('Local Support Group') . '</a><br />';
        }
 
        $ft = DI::config()->get('newmemberwidget','freetext', '');
        if (!empty($ft)) {
-               $t .= '<p>'.BBCode::convert(trim($ft)).'</p>';
+               $t .= '<p>'.BBCode::convertForUriId(User::getSystemUriId(), trim($ft)).'</p>';
        }
 
        $t .= '</div><div class="clear"></div>';
        DI::page()['aside'] = $t . DI::page()['aside'];
 }
 
-function newmemberwidget_addon_admin_post(&$a)
+function newmemberwidget_addon_admin_post()
 {
-       $ft = (!empty($_POST['freetext']) ? trim($_POST['freetext']) : "");
-       $lsn = (!empty($_POST['localsupportname']) ? Strings::escapeTags(trim($_POST['localsupportname'])) : "");
-       $gs = intval($_POST['linkglobalsupport']);
-       $ls = intval($_POST['linklocalsupport']);
-       Config::set('newmemberwidget', 'freetext',           trim($ft));
-       Config::set('newmemberwidget', 'linkglobalsupport',  $gs);
-       Config::set('newmemberwidget', 'linklocalsupport',   $ls);
-       Config::set('newmemberwidget', 'localsupport',       trim($lsn));
+       DI::config()->set('newmemberwidget', 'freetext',           (!empty($_POST['freetext']) ? trim($_POST['freetext']) : ""));
+       DI::config()->set('newmemberwidget', 'linkglobalsupport',  intval($_POST['linkglobalsupport']));
+       DI::config()->set('newmemberwidget', 'linklocalsupport',   intval($_POST['linklocalsupport']));
+       DI::config()->set('newmemberwidget', 'localsupport',       trim($_POST['localsupportname'] ?? ''));
 }
 
-function newmemberwidget_addon_admin(&$a, &$o)
+function newmemberwidget_addon_admin(string &$o)
 {
        $t = Renderer::getMarkupTemplate('admin.tpl', 'addon/newmemberwidget');
+
        $o = Renderer::replaceMacros($t, [
-       '$submit' => DI::l10n()->t('Save Settings'),
-       '$freetext' => [ "freetext", DI::l10n()->t("Message"), DI::config()->get("newmemberwidget", "freetext"), DI::l10n()->t("Your message for new members. You can use bbcode here.")],
-       '$linkglobalsupport' => [ "linkglobalsupport", DI::l10n()->t('Add a link to global support forum'), DI::config()->get('newmemberwidget', 'linkglobalsupport'), DI::l10n()->t('Should a link to the global support forum be displayed?')." (<a href='https://forum.friendi.ca/profile/helpers'>@helpers</a>)"],
-       '$linklocalsupport' => [ "linklocalsupport", DI::l10n()->t('Add a link to the local support forum'), DI::config()->get('newmemberwidget', 'linklocalsupport'), DI::l10n()->t('If you have a local support forum and want to have a link displayed in the widget, check this box.')],
-       '$localsupportname' => [ "localsupportname", DI::l10n()->t('Name of the local support group'), DI::config()->get('newmemberwidget', 'localsupport'), DI::l10n()->t('If you checked the above, specify the <em>nickname</em> of the local support group here (i.e. helpers)')],
+               '$submit' => DI::l10n()->t('Save Settings'),
+               '$freetext' => ["freetext", DI::l10n()->t("Message"), DI::config()->get("newmemberwidget", "freetext"), DI::l10n()->t("Your message for new members. You can use bbcode here.")],
+               '$linkglobalsupport' => ["linkglobalsupport", DI::l10n()->t('Add a link to global support group'), DI::config()->get('newmemberwidget', 'linkglobalsupport'), DI::l10n()->t('Should a link to the global support group be displayed?')." (<a href='https://forum.friendi.ca/profile/helpers'>@helpers</a>)"],
+               '$linklocalsupport' => ["linklocalsupport", DI::l10n()->t('Add a link to the local support group'), DI::config()->get('newmemberwidget', 'linklocalsupport'), DI::l10n()->t('If you have a local support group and want to have a link displayed in the widget, check this box.')],
+               '$localsupportname' => ["localsupportname", DI::l10n()->t('Name of the local support group'), DI::config()->get('newmemberwidget', 'localsupport'), DI::l10n()->t('If you checked the above, specify the <em>nickname</em> of the local support group here (i.e. helpers)')],
        ]);
 }