<?php /** * List most recent bookmarks on group profile page * * @package Bookmarks */ $group = elgg_get_page_owner_entity(); if ($group->bookmarks_enable == "no") { return true; } $all_link = elgg_view('output/url', array('href' => "bookmarks/group/{$group->guid}/all", 'text' => elgg_echo('link:view:all'), 'is_trusted' => true)); elgg_push_context('widgets'); $options = array('type' => 'object', 'subtype' => 'bookmarks', 'container_guid' => elgg_get_page_owner_guid(), 'limit' => 6, 'full_view' => false, 'pagination' => false); $content = elgg_list_entities($options); elgg_pop_context(); if (!$content) { $content = '<p>' . elgg_echo('bookmarks:none') . '</p>'; } $new_link = null; if (!community_spam_is_new_user()) { $new_link = elgg_view('output/url', array('href' => "bookmarks/add/{$group->guid}", 'text' => elgg_echo('bookmarks:add'), 'is_trusted' => true)); } echo elgg_view('groups/profile/module', array('title' => elgg_echo('bookmarks:group'), 'content' => $content, 'all_link' => $all_link, 'add_link' => $new_link));
/** * Filter content based on common spam terms and ban spammers */ function community_spam_content_filter($event, $type, $object) { if (!community_spam_is_new_user()) { return; } $blacklist = elgg_get_plugin_setting('profile_blacklist', 'community_spam_tools'); $blacklist = explode(",", $blacklist); $blacklist = array_map('trim', $blacklist); $terms = array(); foreach ($blacklist as $term) { if (stripos($object->description, $term) !== false) { $terms[] = $term; } } if (count($terms) < 2) { // Allow the content to be created return; } $spammer = elgg_get_logged_in_user_entity(); $spammer->annotate('banned', 1); // this integrates with ban plugin $terms = implode(', ', $terms); $spammer->ban("Used the following blacklisted terms: {$terms}"); return false; }
/** * Filter based on common spam terms */ function community_spam_messages_filter($event, $type, $object) { if ($object->getSubtype() !== 'messages') { return; } if (!community_spam_is_new_user()) { return; } $terms = array('yahoo', 'hotmail', 'miss', 'love', 'email address', 'dear', 'picture', 'profile', 'interest'); $count = 0; foreach ($terms as $term) { if (stripos($object->description, $term) !== false) { $count++; } } if ($count > 3) { return false; } }