From beaab428eb8b6e19ca6d413249f6307100d9b853 Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Fri, 14 Mar 2014 21:41:44 -0300 Subject: Squashed 'mod/saravea_theme/' content from commit daab1e0 git-subtree-dir: mod/saravea_theme git-subtree-split: daab1e0a1d564efeb637ecb2ce27ade44f45ac64 --- start.php | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 start.php (limited to 'start.php') diff --git a/start.php b/start.php new file mode 100644 index 000000000..b74541490 --- /dev/null +++ b/start.php @@ -0,0 +1,132 @@ +name, elgg_get_site_url()); + elgg_register_menu_item('topbar', $item); + elgg_register_plugin_hook_handler('register', 'menu:topbar', 'saravea_theme_topbar_menu'); + + elgg_register_simplecache_view('saravea_theme/landing'); + elgg_register_css('n1:landing_page', elgg_get_simplecache_url('css', 'saravea_theme/landing')); + + elgg_extend_view('css/elgg', 'saravea_theme/css'); + elgg_extend_view('js/elgg', 'saravea_theme/js'); + elgg_extend_view('page/elements/title', 'saravea_theme/header', 0); + // custom index widgets + foreach(array("custom_index", "edit_widgets", "index_2rbhh", "index_2rhhb", + "index", "index_2rbms", "index_2rmsb", + "index_1rsss", "index_2rbsm", "index_2rsmb") as $layout) { + elgg_extend_view('page/layouts/'.$layout, 'saravea_theme/landing', 0); + } + + if (elgg_is_active_plugin('pages')) { + // pages icon url override + elgg_register_plugin_hook_handler('entity:icon:url', 'object', 'saravea_theme_pages_icon_url_override'); + } +} + +function saravea_theme_topbar_menu($hook, $type, $returnvalue, $params){ + $user = elgg_get_logged_in_user_entity(); + + if (elgg_is_active_plugin('groups')) { + + $ia = elgg_set_ignore_access(TRUE); + $num_invitations = elgg_get_entities_from_relationship(array( + 'relationship' => 'invited', + 'relationship_guid' => $user->guid, + 'inverse_relationship' => TRUE, + 'limit' => 0, + 'count' => TRUE, + )); + elgg_set_ignore_access($ia); + + if ($num_invitations) { + $num_invitations = elgg_view('output/url', array( + 'text' => "$num_invitations", + 'href' => "groups/invitations/$user->username", + )); + } + + $returnvalue[] = ElggMenuItem::factory(array( + 'name' => 'groups', + 'href' => "groups/member/$user->username", + 'text' => elgg_view_icon('groups') . $num_invitations, + 'title' => elgg_echo('groups'), + 'priority' => 500, + )); + } + + if (elgg_is_admin_logged_in()) { + $returnvalue[] = ElggMenuItem::factory(array( + 'name' => 'administration', + 'href' => "admin", + 'text' => elgg_view_icon('settings'), + 'title' => elgg_echo('admin'), + 'priority' => 100, + 'section' => 'alt', + )); + } + + if (elgg_is_active_plugin('dashboard')) { + $returnvalue[] = ElggMenuItem::factory(array( + 'name' => 'dashboard', + 'href' => "dashboard", + 'text' => elgg_view_icon('home'), + 'title' => elgg_echo('dashboard'), + 'priority' => 200, + 'section' => 'alt', + )); + } + + $returnvalue[] = ElggMenuItem::factory(array( + 'name' => 'usersettings', + 'href' => "settings/user/{$user->username}", + 'text' => elgg_view_icon('settings-alt'), + 'title' => elgg_echo('settings'), + 'priority' => 500, + 'section' => 'alt', + )); + + $returnvalue[] = ElggMenuItem::factory(array( + 'name' => 'logout', + 'href' => "action/logout", + 'text' => elgg_echo('logout'), + 'title' => elgg_echo('logout'), + 'is_action' => TRUE, + 'priority' => 1000, + 'section' => 'alt', + )); + return $returnvalue; +} + +/** + * Override the default entity icon for pages and pads + * + * @return string Relative URL + */ +function saravea_theme_pages_icon_url_override($hook, $type, $returnvalue, $params) { + $entity = $params['entity']; + if (elgg_instanceof($entity, 'object', 'page_top') || + elgg_instanceof($entity, 'object', 'page')) { + $icon = 'pages'; + } elseif (elgg_instanceof($entity, 'object', 'etherpad') || + elgg_instanceof($entity, 'object', 'subpad')) { + $icon = 'pad'; + } else { + return $returnvalue; + } + switch ($params['size']) { + case 'topbar': + case 'tiny': + return "mod/saravea_theme/_graphics/icons/{$icon}_tiny.gif"; + break; + case 'small': + return "mod/saravea_theme/_graphics/icons/{$icon}_small.gif"; + break; + default: + return "mod/saravea_theme/_graphics/icons/{$icon}_lrg.gif"; + break; + } +} -- cgit v1.2.3