/** * Wrapper function to check if todos is enabled to user/group * * @param ElggEntity $container the user/group to check * * @return bool */ function todos_enabled_for_container(ElggEntity $container) { if (empty($container) || !elgg_instanceof($container)) { return false; } if (elgg_instanceof($container, 'group')) { return todos_group_enabled($container); } return todos_personal_enabled(); }
/** * Adds the menu items to the owner_block of a user * * @param string $hook name of the hook * @param string $type type of the hook * @param ElggMenuItem[] $return return value * @param array $params hook parameters * * @return ElggMenuItem[] */ function todos_user_owner_block_menu_register($hook, $type, $return, $params) { $user = elgg_get_logged_in_user_entity(); if (empty($user)) { return $return; } if (empty($params) || !is_array($params)) { return $return; } $entity = elgg_extract('entity', $params); if (empty($entity) || !elgg_instanceof($entity, 'user')) { return $return; } if ($entity->getGUID() !== $user->getGUID()) { return $return; } if (!todos_personal_enabled()) { return $return; } $return[] = ElggMenuItem::factory(array('name' => 'todos', 'text' => elgg_echo('todos:owner_block:user'), 'href' => "todos")); return $return; }
/** * Page setup function for todos plugin * * @return void */ function todos_pagesetup() { if (todos_personal_enabled()) { $item = new ElggMenuItem('todos', elgg_echo('todos'), 'todos'); elgg_register_menu_item('site', $item); } }