12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- <?php
- // Copyright (C) 2010-2012 Combodo SARL
- //
- // This file is part of iTop.
- //
- // iTop is free software; you can redistribute it and/or modify
- // it under the terms of the GNU Affero General Public License as published by
- // the Free Software Foundation, either version 3 of the License, or
- // (at your option) any later version.
- //
- // iTop is distributed in the hope that it will be useful,
- // but WITHOUT ANY WARRANTY; without even the implied warranty of
- // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- // GNU Affero General Public License for more details.
- //
- // You should have received a copy of the GNU Affero General Public License
- // along with iTop. If not, see <http://www.gnu.org/licenses/>
- // Add the standard menus
- /*
- * +--------------------+
- * | Welcome |
- * +--------------------+
- * Welcome To iTop
- * +--------------------+
- * | Tools |
- * +--------------------+
- * CSV Import
- * +--------------------+
- * | Admin Tools | << Only present if the user is an admin
- * +--------------------+
- * User Accounts
- * Profiles
- * Notifications
- * Run Queries
- * Export
- * Data Model
- * Universal Search
- */
- class ItopWelcome extends ModuleHandlerAPI
- {
- public static function OnMenuCreation()
- {
- // Add the admin menus
- if (UserRights::IsAdministrator())
- {
- $oAdminMenu = new MenuGroup('AdminTools', 80 /* fRank */);
- new OQLMenuNode('UserAccountsMenu', 'SELECT User', $oAdminMenu->GetIndex(), 1 /* fRank */,true);
- new OQLMenuNode('ProfilesMenu', 'SELECT URP_Profiles', $oAdminMenu->GetIndex(), 2 /* fRank */);
- new WebPageMenuNode('NotificationsMenu', utils::GetAbsoluteUrlAppRoot().'pages/notifications.php', $oAdminMenu->GetIndex(), 3 /* fRank */);
- new OQLMenuNode('AuditCategories', 'SELECT AuditCategory', $oAdminMenu->GetIndex(), 4 /* fRank */);
- new WebPageMenuNode('RunQueriesMenu', utils::GetAbsoluteUrlAppRoot().'pages/run_query.php', $oAdminMenu->GetIndex(), 8 /* fRank */);
- new OQLMenuNode('QueryMenu', 'SELECT Query', $oAdminMenu->GetIndex(), 8.5 /* fRank */, true);
- new WebPageMenuNode('ExportMenu', utils::GetAbsoluteUrlAppRoot().'webservices/export-v2.php?interactive=1', $oAdminMenu->GetIndex(), 9 /* fRank */);
- new WebPageMenuNode('DataModelMenu', utils::GetAbsoluteUrlAppRoot().'pages/schema.php', $oAdminMenu->GetIndex(), 10 /* fRank */);
- new WebPageMenuNode('UniversalSearchMenu', utils::GetAbsoluteUrlAppRoot().'pages/UniversalSearch.php', $oAdminMenu->GetIndex(), 11 /* fRank */);
- new OQLMenuNode('DataSources', 'SELECT SynchroDataSource', $oAdminMenu->GetIndex(), 12 /* fRank */, true);
- }
- }
- }
- /**
- * Direct end-users to the standard Portal application
- */
- class MyPortalURLMaker implements iDBObjectURLMaker
- {
- public static function MakeObjectURL($sClass, $iId)
- {
- if (strpos(MetaModel::GetConfig()->Get('portal_tickets'), $sClass) !== false)
- {
- $sAbsoluteUrl = utils::GetAbsoluteUrlAppRoot();
- $sUrl = "{$sAbsoluteUrl}portal/index.php?operation=details&class=$sClass&id=$iId";
- }
- else
- {
- $sUrl = '';
- }
- return $sUrl;
- }
- }
- ?>
|