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;
 }
Beispiel #3
0
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;
}
Beispiel #4
0
 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 '';
 }
Beispiel #5
0
 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 '';
 }
Beispiel #6
0
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;
}