use Friendica\App;
use Friendica\BaseModule;
-use Friendica\Core\Addon;
-use Friendica\Core\Config;
-use Friendica\Core\L10n;
+use Friendica\Core\Hook;
+use Friendica\Core\Logger;
+use Friendica\Core\Renderer;
use Friendica\Database\DBA;
-use Friendica\Util\Security;
+use Friendica\DI;
+use Friendica\Util\ConfigFileLoader;
+use Friendica\Util\Strings;
/**
* Installs the addon hook
*/
function gravatar_install() {
- Addon::registerHook('load_config', 'addon/gravatar/gravatar.php', 'gravatar_load_config');
- Addon::registerHook('avatar_lookup', 'addon/gravatar/gravatar.php', 'gravatar_lookup');
+ Hook::register('load_config', 'addon/gravatar/gravatar.php', 'gravatar_load_config');
+ Hook::register('avatar_lookup', 'addon/gravatar/gravatar.php', 'gravatar_lookup');
- logger("registered gravatar in avatar_lookup hook");
+ Logger::log("registered gravatar in avatar_lookup hook");
}
-/**
- * Removes the addon hook
- */
-function gravatar_uninstall() {
- Addon::unregisterHook('load_config', 'addon/gravatar/gravatar.php', 'gravatar_load_config');
- Addon::unregisterHook('avatar_lookup', 'addon/gravatar/gravatar.php', 'gravatar_lookup');
-
- logger("unregistered gravatar in avatar_lookup hook");
-}
-
-function gravatar_load_config(App $a)
+function gravatar_load_config(App $a, ConfigFileLoader $loader)
{
- $a->loadConfigFile(__DIR__. '/config/gravatar.ini.php');
+ $a->getConfigCache()->load($loader->loadAddonConfig('gravatar'));
}
/**
* @param &$b array
*/
function gravatar_lookup($a, &$b) {
- $default_avatar = Config::get('gravatar', 'default_avatar');
- $rating = Config::get('gravatar', 'rating');
+ $default_avatar = DI::config()->get('gravatar', 'default_avatar');
+ $rating = DI::config()->get('gravatar', 'rating');
// setting default value if nothing configured
if(! $default_avatar)
* Display admin settings for this addon
*/
function gravatar_addon_admin (&$a, &$o) {
- $t = get_markup_template( "admin.tpl", "addon/gravatar/" );
+ $t = Renderer::getMarkupTemplate( "admin.tpl", "addon/gravatar/" );
- $default_avatar = Config::get('gravatar', 'default_avatar');
- $rating = Config::get('gravatar', 'rating');
+ $default_avatar = DI::config()->get('gravatar', 'default_avatar');
+ $rating = DI::config()->get('gravatar', 'rating');
// set default values for first configuration
if(! $default_avatar)
// Available options for the select boxes
$default_avatars = [
- 'mm' => L10n::t('generic profile image'),
- 'identicon' => L10n::t('random geometric pattern'),
- 'monsterid' => L10n::t('monster face'),
- 'wavatar' => L10n::t('computer generated face'),
- 'retro' => L10n::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'),
];
$ratings = [
'g' => 'g',
DBA::escape('libravatar')
);
if (count($r)) {
- $o = '<h5>' .L10n::t('Information') .'</h5><p>' .L10n::t('Libravatar addon is installed, too. Please disable Libravatar addon or this Gravatar addon.<br>The Libravatar addon will fall back to Gravatar if nothing was found at Libravatar.') .'</p><br><br>';
+ $o = '<h5>' .DI::l10n()->t('Information') .'</h5><p>' .DI::l10n()->t('Libravatar addon is installed, too. Please disable Libravatar addon or this Gravatar addon.<br>The Libravatar addon will fall back to Gravatar if nothing was found at Libravatar.') .'</p><br><br>';
}
// output Gravatar settings
$o .= '<input type="hidden" name="form_security_token" value="' . BaseModule::getFormSecurityToken("gravatarsave") .'">';
- $o .= replace_macros( $t, [
- '$submit' => L10n::t('Save Settings'),
- '$default_avatar' => ['avatar', L10n::t('Default avatar image'), $default_avatar, L10n::t('Select default avatar image if none was found at Gravatar. See README'), $default_avatars],
- '$rating' => ['rating', L10n::t('Rating of images'), $rating, L10n::t('Select the appropriate avatar rating for your site. See README'), $ratings],
+ $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 at Gravatar. See README'), $default_avatars],
+ '$rating' => ['rating', DI::l10n()->t('Rating of images'), $rating, DI::l10n()->t('Select the appropriate avatar rating for your site. See README'), $ratings],
]);
}
function gravatar_addon_admin_post (&$a) {
BaseModule::checkFormSecurityToken('gravatarsave');
- $default_avatar = ((x($_POST, 'avatar')) ? notags(trim($_POST['avatar'])) : 'identicon');
- $rating = ((x($_POST, 'rating')) ? notags(trim($_POST['rating'])) : 'g');
- Config::set('gravatar', 'default_avatar', $default_avatar);
- Config::set('gravatar', 'rating', $rating);
- info(L10n::t('Gravatar settings updated.') .EOL);
+ $default_avatar = (!empty($_POST['avatar']) ? Strings::escapeTags(trim($_POST['avatar'])) : 'identicon');
+ $rating = (!empty($_POST['rating']) ? Strings::escapeTags(trim($_POST['rating'])) : 'g');
+ DI::config()->set('gravatar', 'default_avatar', $default_avatar);
+ DI::config()->set('gravatar', 'rating', $rating);
}