From: Hypolite Petovan Date: Sun, 1 Apr 2018 06:31:15 +0000 (-0400) Subject: [blockem] Use content_filter hook X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=31e55d6d5abc1559b7268e8fb851218bb162677a;p=friendica-addons.git [blockem] Use content_filter hook --- diff --git a/blockem/blockem.php b/blockem/blockem.php index 45272e00..2faa68b6 100644 --- a/blockem/blockem.php +++ b/blockem/blockem.php @@ -12,7 +12,7 @@ use Friendica\Core\PConfig; function blockem_install() { - Addon::registerHook('prepare_body', 'addon/blockem/blockem.php', 'blockem_prepare_body'); + Addon::registerHook('content_filter', 'addon/blockem/blockem.php', 'blockem_content_filter'); Addon::registerHook('display_item', 'addon/blockem/blockem.php', 'blockem_display_item'); Addon::registerHook('addon_settings', 'addon/blockem/blockem.php', 'blockem_addon_settings'); Addon::registerHook('addon_settings_post', 'addon/blockem/blockem.php', 'blockem_addon_settings_post'); @@ -23,6 +23,7 @@ function blockem_install() function blockem_uninstall() { + Addon::unregisterHook('content_filter', 'addon/blockem/blockem.php', 'blockem_content_filter'); Addon::unregisterHook('prepare_body', 'addon/blockem/blockem.php', 'blockem_prepare_body'); Addon::unregisterHook('display_item', 'addon/blockem/blockem.php', 'blockem_display_item'); Addon::unregisterHook('addon_settings', 'addon/blockem/blockem.php', 'blockem_addon_settings'); @@ -106,38 +107,33 @@ function blockem_enotify_store(&$a,&$b) { } } -function blockem_prepare_body(&$a,&$b) { - - if(! local_user()) +function blockem_content_filter(\Friendica\App $a, &$hook_data) +{ + if (!local_user()) { return; - - $words = null; - if(local_user()) { - $words = PConfig::get(local_user(),'blockem','words'); } - if($words) { - $arr = explode(',',$words); + + $profiles_string = null; + if (local_user()) { + $profiles_string = PConfig::get(local_user(), 'blockem', 'words'); } - else { + + if ($profiles_string) { + $profiles_array = explode(',', $profiles_string); + } else { return; } $found = false; - if(count($arr)) { - foreach($arr as $word) { - if(! strlen(trim($word))) { - continue; - } - - if(link_compare($b['item']['author-link'],$word)) { - $found = true; - break; - } + foreach ($profiles_array as $word) { + if (link_compare($hook_data['item']['author-link'], trim($word))) { + $found = true; + break; } } - if($found) { - $rnd = random_string(8); - $b['html'] = ''; + + if ($found) { + $hook_data['filter_reasons'][] = L10n::t('Filtered user: %s', $hook_data['item']['author-name']); } }