<?php namespace AU\AnonymousComments; const PLUGIN_ID = 'AU_anonymous_comments'; const PLUGIN_VERSION = 20150918; require_once __DIR__ . '/lib/hooks.php'; require_once __DIR__ . '/lib/events.php'; require_once __DIR__ . '/lib/functions.php'; elgg_register_event_handler('init', 'system', __NAMESPACE__ . '\\init'); function init() { // Extend system CSS with our own styles elgg_extend_view('css/elgg','anonymous_comments/css'); // extend the form view to present a comment form to a logged out user elgg_extend_view('page/elements/comments', 'anonymous_comments/pre_comments', 0); elgg_extend_view('page/elements/comments', 'anonymous_comments/post_comments'); //add override for anonymous user profile elgg_extend_view('profile/details', 'profile/anon_user_details', 501); elgg_register_plugin_hook_handler('register', 'menu:user_hover', __NAMESPACE__ . '\\hover_menu_hook', 1000); elgg_register_plugin_hook_handler('view_vars', 'icon/user/default', __NAMESPACE__ . '\\user_icon_vars'); elgg_register_plugin_hook_handler('email', 'system', __NAMESPACE__ . '\\anon_email_hook', 0); elgg_register_plugin_hook_handler('register', 'menu:entity', __NAMESPACE__ . '\\comment_entity_menu', 1000); // override permissions for the specific context elgg_register_plugin_hook_handler('permissions_check', 'all', __NAMESPACE__ . '\\permissions_check'); // register plugin hook to monitor comment counts - return only the count of approved comments elgg_register_plugin_hook_handler('comments:count', 'all', __NAMESPACE__ . '\\comment_count_hook', 1000); //register action to approve/delete comments elgg_register_action("comments/moderate", __DIR__ . "/actions/comments/moderate.php"); //register action to save our anonymous comments elgg_register_action("comments/anon_add", __DIR__ . "/actions/comments/anon_add.php", 'public'); elgg_register_event_handler('pagesetup', 'system', __NAMESPACE__ . '\\pagesetup'); elgg_register_page_handler('auac', __NAMESPACE__ . '\\auac_pagehandler'); } function auac_pagehandler($page) { switch ($page[0]) { case 'approve': echo elgg_view('resources/anonymous_comments/approve', array( 'page' => $page )); break; case 'delete': echo elgg_view('resources/anonymous_comments/delete', array( 'page' => $page )); break; } return false; }