function plugin_init_simcard() { global $PLUGIN_HOOKS, $CFG_GLPI, $LANG; $PLUGIN_HOOKS['csrf_compliant']['simcard'] = true; $plugin = new Plugin(); if ($plugin->isInstalled('simcard') && $plugin->isActivated('simcard')) { //load changeprofile function $PLUGIN_HOOKS['change_profile']['simcard'] = array('PluginSimcardProfile', 'changeProfile'); $PLUGIN_HOOKS['assign_to_ticket']['simcard'] = true; $PLUGIN_HOOKS['pre_item_purge']['simcard'] = array('Profile' => array('PluginSimcardsProfile', 'purgeProfiles')); $PLUGIN_HOOKS['plugin_datainjection_populate']['simcard'] = 'plugin_datainjection_populate_simcard'; $PLUGIN_HOOKS['item_purge']['simcard'] = array(); foreach (PluginSimcardSimcard_Item::getClasses() as $type) { $PLUGIN_HOOKS['item_purge']['simcard'][$type] = 'plugin_item_purge_simcard'; } Plugin::registerClass('PluginSimcardSimcard_Item', array('addtabon' => PluginSimcardSimcard_Item::getClasses())); Plugin::registerClass('PluginSimcardProfile', array('addtabon' => 'Profile')); // Params : plugin name - string type - number - class - table - form page Plugin::registerClass('PluginSimcardSimcard', array('linkgroup_types' => true, 'linkuser_types' => true, 'document_types' => true, 'contract_types' => true, 'ticket_types' => true, 'helpdesk_visible_types' => true, 'infocom_types' => true, 'unicity_types' => true, 'reservation_types' => true)); array_push($CFG_GLPI['state_types'], 'PluginSimcardSimcard'); //if glpi is loaded if (Session::getLoginUserID()) { // Display a menu entry ? //if (Session::haveRight("simcard", "r")) { if (PluginSimcardSimcard::canCreate() || PluginSimcardSimcard::canUpdate() || PluginSimcardSimcard::canDelete() || PluginSimcardSimcard::canView()) { //menu entry //$PLUGIN_HOOKS['menu_entry']['simcard'] = 'front/simcard.php'; $PLUGIN_HOOKS['menu_toadd']['simcard'] = array('assets' => 'PluginSimcardSimcard'); //search link //$PLUGIN_HOOKS['submenu_entry']['simcard']['options']['simcard']['links']['search'] // = '/plugins/simcard/front/simcard.php'; //add simcard to items details $PLUGIN_HOOKS['headings']['simcard'] = 'plugin_get_headings_simcard'; $PLUGIN_HOOKS['headings_action']['simcard'] = 'plugin_headings_actions_simcard'; $PLUGIN_HOOKS['headings_actionpdf']['simcard'] = 'plugin_headings_actionpdf_simcard'; } //if (Session::haveRight("simcard", "w")) { if (PluginSimcardSimcard::canCreate()) { //add link // $PLUGIN_HOOKS['submenu_entry']['simcard']['options']['simcard']['links']['add'] // = '/front/setup.templates.php?itemtype=PluginSimcardSimcard&add=1'; // $PLUGIN_HOOKS['submenu_entry']['simcard']['options']['simcard']['links']['template'] // = '/front/setup.templates.php?itemtype=PluginSimcardSimcard&add=0'; //use massiveaction in the plugin $PLUGIN_HOOKS['use_massive_action']['simcard'] = 1; } // Import from Data_Injection plugin $PLUGIN_HOOKS['migratetypes']['simcard'] = 'plugin_datainjection_migratetypes_simcard'; $PLUGIN_HOOKS['menu']['simcard'] = true; $PLUGIN_HOOKS['post_init']['simcard'] = 'plugin_simcard_postinit'; } } }
static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { if (in_array(get_class($item), PluginSimcardSimcard_Item::getClasses())) { self::showForItem($item); } elseif (get_class($item) == 'PluginSimcardSimcard') { self::showForSimcard($item); } return true; }
function plugin_simcard_getAddSearchOptions($itemtype) { global $LANG; $sopt = array(); $reservedTypeIndex = PluginSimcardConfig::RESERVED_TYPE_RANGE_MIN; if (in_array($itemtype, PluginSimcardSimcard_Item::getClasses())) { if (PluginSimcardSimcard::canView()) { $sopt[$reservedTypeIndex]['table'] = 'glpi_plugin_simcard_simcards'; $sopt[$reservedTypeIndex]['field'] = 'name'; $sopt[$reservedTypeIndex]['name'] = _sn('SIM card', 'SIM cards', 2, 'simcard') . " - " . __s('Name'); $sopt[$reservedTypeIndex]['forcegroupby'] = true; $sopt[$reservedTypeIndex]['massiveaction'] = false; $sopt[$reservedTypeIndex]['datatype'] = 'itemlink'; $sopt[$reservedTypeIndex]['itemlink_type'] = 'PluginSimcardSimcard'; $sopt[$reservedTypeIndex]['joinparams'] = array('beforejoin' => array('table' => 'glpi_plugin_simcard_simcards_items', 'joinparams' => array('jointype' => 'itemtype_item'))); $reservedTypeIndex++; $sopt[$reservedTypeIndex]['table'] = 'glpi_plugin_simcard_simcards'; $sopt[$reservedTypeIndex]['field'] = 'phonenumber'; $sopt[$reservedTypeIndex]['name'] = _sn('SIM card', 'SIM cards', 2, 'simcard') . " - " . __s('Phone number', 'simcard'); $sopt[$reservedTypeIndex]['massiveaction'] = false; $sopt[$reservedTypeIndex]['forcegroupby'] = true; $sopt[$reservedTypeIndex]['joinparams'] = array('beforejoin' => array('table' => 'glpi_plugin_simcard_simcards_items', 'joinparams' => array('jointype' => 'itemtype_item'))); $reservedTypeIndex++; $sopt[$reservedTypeIndex]['table'] = 'glpi_plugin_simcard_simcards'; $sopt[$reservedTypeIndex]['field'] = 'serial'; $sopt[$reservedTypeIndex]['name'] = _sn('SIM card', 'SIM cards', 2, 'simcard') . " - " . __s('IMSI', 'simcard'); $sopt[$reservedTypeIndex]['massiveaction'] = false; $sopt[$reservedTypeIndex]['forcegroupby'] = true; $sopt[$reservedTypeIndex]['joinparams'] = array('beforejoin' => array('table' => 'glpi_plugin_simcard_simcards_items', 'joinparams' => array('jointype' => 'itemtype_item'))); } } return $sopt; }
function getTabNameForItem(CommonGLPI $item, $withtemplate = 0) { global $LANG; if (in_array(get_class($item), PluginSimcardSimcard_Item::getClasses()) || get_class($item) == 'Profile') { return array(1 => _sn('SIM card', 'SIM cards', 2, 'simcard')); } elseif (get_class($item) == __CLASS__) { return _sn('SIM card', 'SIM cards', 2, 'simcard'); } return ''; }
function getTabNameForItem(CommonGLPI $item, $withtemplate = 0) { global $LANG; if (in_array(get_class($item), PluginSimcardSimcard_Item::getClasses()) || get_class($item) == 'Profile') { return array(1 => $LANG['plugin_simcard']['profile'][1]); } elseif (get_class($item) == __CLASS__) { return $LANG['plugin_simcard']['profile'][1]; } return ''; }
function plugin_simcard_getAddSearchOptions($itemtype) { global $LANG; $sopt = array(); if (in_array($itemtype, PluginSimcardSimcard_Item::getClasses())) { if (Session::haveRight("simcard", "r")) { $sopt[1710]['table'] = 'glpi_plugin_simcard_simcards'; $sopt[1710]['field'] = 'name'; $sopt[1710]['name'] = $LANG['plugin_simcard']['profile'][1] . " - " . $LANG['common'][16]; $sopt[1710]['forcegroupby'] = true; $sopt[1710]['massiveaction'] = false; $sopt[1710]['datatype'] = 'itemlink'; $sopt[1710]['itemlink_type'] = 'PluginSimcardSimcard'; $sopt[1710]['joinparams'] = array('beforejoin' => array('table' => 'glpi_plugin_simcard_simcards_items', 'joinparams' => array('jointype' => 'itemtype_item'))); $sopt[1711]['table'] = 'glpi_plugin_simcard_simcards'; $sopt[1711]['field'] = 'phonenumber'; $sopt[1711]['name'] = $LANG['plugin_simcard']['profile'][1] . " - " . $LANG['plugin_simcard'][1]; $sopt[1711]['massiveaction'] = false; $sopt[1711]['forcegroupby'] = true; $sopt[1711]['joinparams'] = array('beforejoin' => array('table' => 'glpi_plugin_simcard_simcards_items', 'joinparams' => array('jointype' => 'itemtype_item'))); } } return $sopt; }