X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=libravatar%2Flibravatar.php;h=c49ac5c5960c95b67482d33ad928a91e7c8ff20a;hb=b5759d24ee8db7e558fb1214e01fd26c105f4391;hp=bba5a88197fba24ef1bfed022d55b6d750a71538;hpb=c6e5bc3429c9c610895ba826d841cddd8c0f378b;p=friendica-addons.git diff --git a/libravatar/libravatar.php b/libravatar/libravatar.php index bba5a881..c49ac5c5 100644 --- a/libravatar/libravatar.php +++ b/libravatar/libravatar.php @@ -5,30 +5,40 @@ * Version: 1.1 * Author: Klaus Weidenbach */ -use Friendica\Core\Addon; -use Friendica\Core\Config; + +use Friendica\App; +use Friendica\BaseModule; +use Friendica\Core\Hook; +use Friendica\Core\Logger; +use Friendica\Core\Renderer; +use Friendica\Database\DBA; +use Friendica\DI; +use Friendica\Util\ConfigFileLoader; +use Friendica\Util\Strings; /** * Installs the addon hook */ -function libravatar_install() { - if (! version_compare(PHP_VERSION, '5.3.0', '>=')) { - info(t('Could NOT install Libravatar successfully.
It requires PHP >= 5.3') .EOL); - // avoid registering the hook - return false; - } - Addon::registerHook('avatar_lookup', 'addon/libravatar/libravatar.php', 'libravatar_lookup'); - - logger("registered libravatar in avatar_lookup hook"); +function libravatar_install() +{ + Hook::register('load_config', 'addon/libravatar/libravatar.php', 'libravatar_load_config'); + Hook::register('avatar_lookup', 'addon/libravatar/libravatar.php', 'libravatar_lookup'); + Logger::log("registered libravatar in avatar_lookup hook"); } /** * Removes the addon hook */ -function libravatar_uninstall() { - Addon::unregisterHook('avatar_lookup', 'addon/libravatar/libravatar.php', 'libravatar_lookup'); +function libravatar_uninstall() +{ + Hook::unregister('load_config', 'addon/libravatar/libravatar.php', 'libravatar_load_config'); + Hook::unregister('avatar_lookup', 'addon/libravatar/libravatar.php', 'libravatar_lookup'); + Logger::log("unregistered libravatar in avatar_lookup hook"); +} - logger("unregistered libravatar in avatar_lookup hook"); +function libravatar_load_config(App $a, ConfigFileLoader $loader) +{ + $a->getConfigCache()->load($loader->loadAddonConfig('libravatar')); } /** @@ -37,15 +47,17 @@ function libravatar_uninstall() { * @param $a array * @param &$b array */ -function libravatar_lookup($a, &$b) { - $default_avatar = Config::get('libravatar', 'default_img'); +function libravatar_lookup($a, &$b) +{ + $default_avatar = DI::config()->get('libravatar', 'default_avatar'); if (! $default_avatar) { // if not set, look up if there was one from the gravatar addon - $default_avatar = Config::get('gravatar', 'default_img'); + $default_avatar = DI::config()->get('gravatar', 'default_avatar'); // setting default avatar if nothing configured - if (! $default_avatar) + if (!$default_avatar) { $default_avatar = 'identicon'; // default image will be a random pattern + } } require_once 'Services/Libravatar.php'; @@ -61,56 +73,58 @@ function libravatar_lookup($a, &$b) { /** * Display admin settings for this addon */ -function libravatar_addon_admin (&$a, &$o) { - $t = get_markup_template( "admin.tpl", "addon/libravatar" ); +function libravatar_addon_admin(&$a, &$o) +{ + $t = Renderer::getMarkupTemplate("admin.tpl", "addon/libravatar"); - $default_avatar = Config::get('libravatar', 'default_img'); + $default_avatar = DI::config()->get('libravatar', 'default_avatar'); // set default values for first configuration - if(! $default_avatar) + if (!$default_avatar) { $default_avatar = 'identicon'; // pseudo-random geometric pattern based on email hash + } // Available options for the select boxes $default_avatars = [ - 'mm' => t('generic profile image'), - 'identicon' => t('random geometric pattern'), - 'monsterid' => t('monster face'), - 'wavatar' => t('computer generated face'), - 'retro' => t('retro arcade style face'), + 'mm' => DI::l10n()->t('generic profile image'), + 'identicon' => DI::l10n()->t('random geometric pattern'), + 'monsterid' => DI::l10n()->t('monster face'), + 'wavatar' => DI::l10n()->t('computer generated face'), + 'retro' => DI::l10n()->t('retro arcade style face'), ]; // Show warning if PHP version is too old if (! version_compare(PHP_VERSION, '5.3.0', '>=')) { - $o = '
' .t('Warning') .'

'; - $o .= sprintf(t('Your PHP version %s is lower than the required PHP >= 5.3.'), PHP_VERSION); - $o .= '
' .t('This addon is not functional on your server.') .'


'; + $o = '

' .DI::l10n()->t('Warning') .'

'; + $o .= DI::l10n()->t('Your PHP version %s is lower than the required PHP >= 5.3.', PHP_VERSION); + $o .= '
' .DI::l10n()->t('This addon is not functional on your server.') .'


'; return; } // Libravatar falls back to gravatar, so show warning about gravatar addon if enabled $r = q("SELECT * FROM `addon` WHERE `name` = '%s' and `installed` = 1", - dbesc('gravatar') + DBA::escape('gravatar') ); if (count($r)) { - $o = '

' .t('Information') .'

' .t('Gravatar addon is installed. Please disable the Gravatar addon.
The Libravatar addon will fall back to Gravatar if nothing was found at Libravatar.') .'



'; + $o = '
' .DI::l10n()->t('Information') .'

' .DI::l10n()->t('Gravatar addon is installed. Please disable the Gravatar addon.
The Libravatar addon will fall back to Gravatar if nothing was found at Libravatar.') .'



'; } // output Libravatar settings - $o .= ''; - $o .= replace_macros( $t, [ - '$submit' => t('Save Settings'), - '$default_avatar' => ['avatar', t('Default avatar image'), $default_avatar, t('Select default avatar image if none was found. See README'), $default_avatars], + $o .= ''; + $o .= Renderer::replaceMacros( $t, [ + '$submit' => DI::l10n()->t('Save Settings'), + '$default_avatar' => ['avatar', DI::l10n()->t('Default avatar image'), $default_avatar, DI::l10n()->t('Select default avatar image if none was found. See README'), $default_avatars], ]); } /** * Save admin settings */ -function libravatar_addon_admin_post (&$a) { - check_form_security_token('libravatarrsave'); +function libravatar_addon_admin_post(&$a) +{ + BaseModule::checkFormSecurityToken('libravatarrsave'); - $default_avatar = ((x($_POST, 'avatar')) ? notags(trim($_POST['avatar'])) : 'identicon'); - Config::set('libravatar', 'default_img', $default_avatar); - info(t('Libravatar settings updated.') .EOL); + $default_avatar = (!empty($_POST['avatar']) ? Strings::escapeTags(trim($_POST['avatar'])) : 'identicon'); + DI::config()->set('libravatar', 'default_avatar', $default_avatar); + info(DI::l10n()->t('Libravatar settings updated.') .EOL); } -?>