function smarty_function_notifications($params, &$smarty) { $user = array_required_var($params, 'user', true, 'IUser'); $activity_logs = NotificationsActivityLogs::findRecent($user); $interface = array_var($params, 'interface', AngieApplication::getPreferedInterface(), true); $id = isset($params['id']) && $params['id'] ? $params['id'] : HTML::uniqueId('activity_log'); $wrapper = '<div id="' . $id . '" class="quick_view_item">'; $wrapper .= '</div>'; list($authors, $subjects, $targets) = ActivityLogs::loadRelatedDataFromActivities($activity_logs, $user); // Load related data, so we can pass it to callbacks return $wrapper .= '<script type="text/javascript">$("#' . $id . '").activityLog(' . JSON::encode(array('entries' => $activity_logs, 'authors' => $authors, 'subjects' => $subjects, 'targets' => $targets, 'callbacks' => ActivityLogs::getCallbacks(), 'decorator' => ActivityLogs::getDecorator($interface), 'interface' => $interface)) . ');</script>'; }
/** * Handle wireframe updates even * * @param array $wireframe_data * @param array $response_data * @param User $user */ function frosso_mail_notify_handle_on_wireframe_updates(&$wireframe_data, &$response_data, &$user) { $response_data['status_bar_badges']['frosso_mn_updates'] = NotificationsActivityLogs::countSinceLastVisit($user); }
/** * Register status bar items * * @param StatusBar $status_bar * @param IUser $logged_user */ function frosso_mail_notify_handle_on_status_bar(StatusBar &$status_bar, IUser &$user) { $status_bar->add('frosso_mn_updates', lang('Notifications'), Router::assemble('frosso_mail_notify'), AngieApplication::getImageUrl('icons/12x12/my-subscriptions.png', FROSSO_MAILN_MODULE), array('group' => StatusBar::GROUP_RIGHT, 'badge' => NotificationsActivityLogs::countSinceLastVisit($user))); }
/** * Provide ajax functionality for menu badge */ function count_new_messages() { $this->renderText(NotificationsActivityLogs::countSinceLastVisit($this->logged_user)); }