Ejemplo n.º 1
0
function messages_init()
{
    // register a library of helper functions
    elgg_register_library('elgg:messages', elgg_get_plugins_path() . 'messages/lib/messages.php');
    // add page menu items
    if (elgg_is_logged_in()) {
        elgg_register_menu_item('page', array('name' => 'messages:inbox', 'text' => elgg_echo('messages:inbox'), 'href' => "messages/inbox/" . elgg_get_logged_in_user_entity()->username, 'context' => 'messages'));
        elgg_register_menu_item('page', array('name' => 'messages:sentmessages', 'text' => elgg_echo('messages:sentmessages'), 'href' => "messages/sent/" . elgg_get_logged_in_user_entity()->username, 'context' => 'messages'));
    }
    elgg_register_event_handler('pagesetup', 'system', 'messages_notifier');
    // Extend system CSS with our own styles, which are defined in the messages/css view
    elgg_extend_view('css/elgg', 'messages/css');
    elgg_extend_view('js/elgg', 'messages/js');
    // Register a page handler, so we can have nice URLs
    elgg_register_page_handler('messages', 'messages_page_handler');
    // Register a URL handler
    elgg_register_entity_url_handler('object', 'messages', 'messages_url');
    // Extend avatar hover menu
    elgg_register_plugin_hook_handler('register', 'menu:user_hover', 'messages_user_hover_menu');
    // Register a notification handler for site messages
    register_notification_handler("site", "messages_site_notify_handler");
    elgg_register_plugin_hook_handler('notify:entity:message', 'object', 'messages_notification_msg');
    register_notification_object('object', 'messages', elgg_echo('messages:new'));
    // ecml
    elgg_register_plugin_hook_handler('get_views', 'ecml', 'messages_ecml_views_hook');
    // permission overrides
    elgg_register_plugin_hook_handler('permissions_check:metadata', 'object', 'messages_can_edit_metadata');
    elgg_register_plugin_hook_handler('permissions_check', 'object', 'messages_can_edit');
    elgg_register_plugin_hook_handler('container_permissions_check', 'object', 'messages_can_edit_container');
    // Register actions
    $action_path = elgg_get_plugins_path() . 'messages/actions/messages';
    elgg_register_action("messages/send", "{$action_path}/send.php");
    elgg_register_action("messages/delete", "{$action_path}/delete.php");
    elgg_register_action("messages/process", "{$action_path}/process.php");
}
/**
 * Messages initialisation
 *
 * These parameters are required for the event API, but we won't use them:
 * 
 * @param unknown_type $event
 * @param unknown_type $object_type
 * @param unknown_type $object
 */
function messages_init()
{
    // Load system configuration
    global $CONFIG;
    //add submenu options
    if (get_context() == "messages") {
        add_submenu_item(elgg_echo('messages:compose'), $CONFIG->wwwroot . "mod/messages/send.php");
        add_submenu_item(elgg_echo('messages:inbox'), $CONFIG->wwwroot . "pg/messages/" . $_SESSION['user']->username);
        add_submenu_item(elgg_echo('messages:sentmessages'), $CONFIG->wwwroot . "mod/messages/sent.php");
    }
    // Extend system CSS with our own styles, which are defined in the shouts/css view
    extend_view('css', 'messages/css');
    // Extend the elgg topbar
    extend_view('elgg_topbar/extend', 'messages/topbar');
    // Register a page handler, so we can have nice URLs
    register_page_handler('messages', 'messages_page_handler');
    // Register a URL handler for shouts posts
    register_entity_url_handler('messages_url', 'object', 'messages');
    // Extend hover-over and profile menu
    extend_view('profile/menu/links', 'messages/menu');
    // Register a notification handler for site messages
    register_notification_handler("site", "messages_site_notify_handler");
    register_plugin_hook('notify:entity:message', 'object', 'messages_notification_msg');
    if (is_callable('register_notification_object')) {
        register_notification_object('object', 'messages', elgg_echo('messages:new'));
    }
    // Shares widget
    //  add_widget_type('messages',elgg_echo("messages:recent"),elgg_echo("messages:widget:description"));
    // Override metadata permissions
    register_plugin_hook('permissions_check:metadata', 'object', 'messages_can_edit_metadata');
}
Ejemplo n.º 3
0
/**
 * initialize the phpmailer gmail plugin
 */
function phpmailer_gmail_init()
{
    if (elgg_get_plugin_setting('phpmailer_gmail_override', 'phpmailer_gmail') != 'disabled') {
        register_notification_handler('email', 'phpmailer_gmail_notify_handler');
        elgg_register_plugin_hook_handler('email', 'system', 'phpmailer_gmail_mail_override');
    }
}
Ejemplo n.º 4
0
function messages_init()
{
    // register a library of helper functions
    elgg_register_library('elgg:messages', elgg_get_plugins_path() . 'messages/lib/messages.php');
    //Display notification of new messages in topbar is moved into zhaohu_theme
    //elgg_register_event_handler('pagesetup', 'system', 'messages_notifier');
    // Extend system CSS with our own styles, which are defined in the messages/css view
    elgg_extend_view('css/elgg', 'messages/css');
    elgg_extend_view('js/elgg', 'messages/js');
    // Register a page handler, so we can have nice URLs
    elgg_register_page_handler('messages', 'messages_page_handler');
    // Register a URL handler
    elgg_register_entity_url_handler('object', 'messages', 'messages_url');
    // Extend avatar hover menu
    elgg_register_plugin_hook_handler('register', 'menu:user_hover', 'messages_user_hover_menu');
    // Register a notification handler for site messages
    register_notification_handler("site", "messages_site_notify_handler");
    elgg_register_plugin_hook_handler('notify:entity:message', 'object', 'messages_notification_msg');
    register_notification_object('object', 'messages', elgg_echo('messages:new'));
    // ecml
    elgg_register_plugin_hook_handler('get_views', 'ecml', 'messages_ecml_views_hook');
    // permission overrides
    elgg_register_plugin_hook_handler('permissions_check:metadata', 'object', 'messages_can_edit_metadata');
    elgg_register_plugin_hook_handler('permissions_check', 'object', 'messages_can_edit');
    elgg_register_plugin_hook_handler('container_permissions_check', 'object', 'messages_can_edit_container');
    // Register actions
    $action_path = elgg_get_plugins_path() . 'messages/actions/messages';
    elgg_register_action("messages/send", "{$action_path}/send.php");
    elgg_register_action("messages/delete", "{$action_path}/delete.php");
    elgg_register_action("messages/process", "{$action_path}/process.php");
}
Ejemplo n.º 5
0
function html_email_handler_init()
{
    // do we need to overrule default email notifications
    if (elgg_get_plugin_setting("notifications", "html_email_handler") == "yes") {
        // notification handler for nice From part
        register_notification_handler("email", "html_email_handler_notification_handler");
        // register hook to handle the rest of the email being send
        elgg_register_plugin_hook_handler("email", "system", "html_email_handler_email_hook");
    }
    // register page_handler for nice URL's
    elgg_register_page_handler("html_email_handler", "html_email_handler_page_handler");
    // register html converter library
    elgg_register_library("emogrifier", dirname(__FILE__) . "/vendors/emogrifier/emogrifier.php");
}
/**
 * Correctly initialise notifications and register the email handler.
 *
 * @return void
 * @access private
 */
function notification_init()
{
    // Register a notification handler for the default email method
    register_notification_handler("email", "email_notify_handler");
    // Add settings view to user settings & register action
    elgg_extend_view('forms/account/settings', 'core/settings/account/notifications');
    elgg_register_plugin_hook_handler('usersettings:save', 'user', 'notification_user_settings_save');
}
/**
 * Correctly initialise notifications and register the email handler.
 *
 */
function notification_init()
{
    // Register a notification handler for the default email method
    register_notification_handler("email", "email_notify_handler");
    // Add settings view to user settings & register action
    extend_elgg_settings_page('notifications/settings/usersettings', 'usersettings/user');
    register_plugin_hook('usersettings:save', 'user', 'notification_user_settings_save');
    //register_action("notifications/settings/usersettings/save");
}
Ejemplo n.º 8
0
<?php

register_notification_handler('site', 'hj_inbox_site_notify_handler');
/**
 * Notification handler
 *
 * @param ElggEntity $from
 * @param ElggUser   $to
 * @param string     $subject
 * @param string     $message
 * @param array      $params
 * @return bool
 */
function hj_inbox_site_notify_handler(ElggEntity $from, ElggUser $to, $subject, $message, array $params = array())
{
    if (!$from) {
        throw new NotificationException(elgg_echo('NotificationException:MissingParameter', array('from')));
    }
    if (!$to) {
        throw new NotificationException(elgg_echo('NotificationException:MissingParameter', array('to')));
    }
    return hj_inbox_send_message($from->guid, $to->guid, $subject, $message, HYPEINBOX_NOTIFICATION, $params);
}
/**
 * initialize the phpmailer plugin
 */
function phpmailer_init()
{
    register_notification_handler('email', 'phpmailer_notify_handler');
}
Ejemplo n.º 10
0
/**
 * Correctly initialise notifications and register the email handler.
 *
 */
function notification_init()
{
    // Register a notification handler for the default email method
    register_notification_handler("email", "email_notify_handler");
    // Add settings view to user settings & register action
    extend_elgg_settings_page('notifications/settings/usersettings', 'usersettings/user');
    register_plugin_hook('usersettings:save', 'user', 'notification_user_settings_save');
    //register_action("notifications/settings/usersettings/save");
    // Register some APIs
    expose_function('user.notification.get', 'get_user_notification_settings', array('user_guid' => array('type' => 'int')), elgg_echo('user.notification.get'));
    expose_function('user.notification.set', 'set_user_notification_settings', array('user_guid' => array('type' => 'int'), 'method' => array('type' => 'string'), 'value' => array('type' => 'bool')), elgg_echo('user.notification.set'));
}
Ejemplo n.º 11
0
/**
 * initialize the phpmailer plugin
 */
function phpmailer_init()
{
    if (get_plugin_setting('phpmailer_override', 'phpmailer') != 'disabled') {
        register_notification_handler('email', 'phpmailer_notify_handler');
    }
}