/** * prevent emails to our anonymous user * * @param type $hook * @param type $type * @param type $returnvalue * @param type $params * @return boolean */ function anon_email_hook($hook, $type, $returnvalue, $params) { $anon_user = get_anon_user(); if ($anon_user && $anon_user->email == $params['to']) { return FALSE; } return $returnvalue; }
/** * page setup - protect anon user owned pages */ function pagesetup() { $user = get_anon_user(); $page_owner = elgg_get_page_owner_entity(); if ($user->guid == $page_owner->guid) { // admin could log in as the anon user to set some things if ($user->guid != elgg_get_logged_in_user_guid()) { admin_gatekeeper(); } } }
if ($aInfo['http_code'] === 200) { $data = json_decode($contents); $ip_frequency = $data->ip->frequency; if ($ip_frequency != 0) { // spammer register_error(elgg_acho('AU_anonymous_comments:stopforumspam_fail')); forward(REFERER); } } // Create a new comment on the target entity $entity = get_entity($entity_guid); if (!$entity) { register_error(elgg_echo("generic_comment:notfound")); forward(REFERER); } $user = get_anon_user(); // custom context for write permissions elgg_push_context("AU_anonymous_comments_permissions"); $comment_text .= "\n\n- " . $anon_name; $comment = new \ElggComment(); $comment->description = $comment_text; $comment->owner_guid = $user->getGUID(); $comment->container_guid = $entity->getGUID(); $comment->access_id = $entity->access_id; $guid = $comment->save(); if (!$guid) { register_error(elgg_echo("generic_comment:failure")); forward(REFERER); } if (!is_moderated($entity)) { $owner = $entity->getOwnerEntity();