getSearchOptionsToAdd() 정적인 공개 메소드

static public getSearchOptionsToAdd ( )
예제 #1
0
 function getSearchOptions()
 {
     // Only use for History (not by search Engine)
     $tab = array();
     $tab['common'] = __('Characteristics');
     $tab[1]['table'] = $this->getTable();
     $tab[1]['field'] = 'name';
     $tab[1]['name'] = __('Name');
     $tab[1]['datatype'] = 'itemlink';
     $tab[1]['massiveaction'] = false;
     $tab[2]['table'] = $this->getTable();
     $tab[2]['field'] = 'id';
     $tab[2]['name'] = __('ID');
     $tab[2]['massiveaction'] = false;
     $tab[2]['datatype'] = 'number';
     $tab += Location::getSearchOptionsToAdd();
     $tab[16]['table'] = $this->getTable();
     $tab[16]['field'] = 'comment';
     $tab[16]['name'] = __('Comments');
     $tab[16]['datatype'] = 'text';
     $tab[62]['table'] = 'glpi_softwarecategories';
     $tab[62]['field'] = 'completename';
     $tab[62]['name'] = __('Category');
     $tab[62]['datatype'] = 'dropdown';
     $tab[19]['table'] = $this->getTable();
     $tab[19]['field'] = 'date_mod';
     $tab[19]['name'] = __('Last update');
     $tab[19]['datatype'] = 'datetime';
     $tab[19]['massiveaction'] = false;
     $tab[121]['table'] = $this->getTable();
     $tab[121]['field'] = 'date_creation';
     $tab[121]['name'] = __('Creation date');
     $tab[121]['datatype'] = 'datetime';
     $tab[121]['massiveaction'] = false;
     $tab[23]['table'] = 'glpi_manufacturers';
     $tab[23]['field'] = 'name';
     $tab[23]['name'] = __('Publisher');
     $tab[23]['datatype'] = 'dropdown';
     $tab[24]['table'] = 'glpi_users';
     $tab[24]['field'] = 'name';
     $tab[24]['linkfield'] = 'users_id_tech';
     $tab[24]['name'] = __('Technician in charge of the hardware');
     $tab[24]['datatype'] = 'dropdown';
     $tab[24]['right'] = 'own_ticket';
     $tab[49]['table'] = 'glpi_groups';
     $tab[49]['field'] = 'completename';
     $tab[49]['linkfield'] = 'groups_id_tech';
     $tab[49]['name'] = __('Group in charge of the hardware');
     $tab[49]['condition'] = '`is_assign`';
     $tab[49]['datatype'] = 'dropdown';
     $tab[70]['table'] = 'glpi_users';
     $tab[70]['field'] = 'name';
     $tab[70]['name'] = __('User');
     $tab[70]['datatype'] = 'dropdown';
     $tab[70]['right'] = 'all';
     $tab[71]['table'] = 'glpi_groups';
     $tab[71]['field'] = 'completename';
     $tab[71]['name'] = __('Group');
     $tab[71]['condition'] = '`is_itemgroup`';
     $tab[71]['datatype'] = 'dropdown';
     $tab[61]['table'] = $this->getTable();
     $tab[61]['field'] = 'is_helpdesk_visible';
     $tab[61]['name'] = __('Associable to a ticket');
     $tab[61]['datatype'] = 'bool';
     $tab[63]['table'] = $this->getTable();
     $tab[63]['field'] = 'is_valid';
     //TRANS: Indicator to know is all licenses of the software are valids
     $tab[63]['name'] = __('Valid licenses');
     $tab[63]['datatype'] = 'bool';
     $tab += SoftwareLicense::getSearchOptionsToAdd();
     $tab[80]['table'] = 'glpi_entities';
     $tab[80]['field'] = 'completename';
     $tab[80]['name'] = __('Entity');
     $tab[80]['massiveaction'] = false;
     $tab[80]['datatype'] = 'dropdown';
     $tab[72]['table'] = 'glpi_computers_softwareversions';
     $tab[72]['field'] = 'id';
     $tab[72]['name'] = _x('quantity', 'Number of installations');
     $tab[72]['forcegroupby'] = true;
     $tab[72]['usehaving'] = true;
     $tab[72]['datatype'] = 'count';
     $tab[72]['nometa'] = true;
     $tab[72]['massiveaction'] = false;
     if (Session::getLoginUserID()) {
         $tab[72]['joinparams'] = array('jointype' => 'child', 'condition' => "AND NEWTABLE.`is_deleted_computer` = '0'\n                                                          AND NEWTABLE.`is_deleted` = '0'\n                                                          AND NEWTABLE.`is_template_computer` = '0'\n                                                          " . getEntitiesRestrictRequest('AND', 'NEWTABLE'), 'beforejoin' => array('table' => 'glpi_softwareversions', 'joinparams' => array('jointype' => 'child')));
     }
     $tab[86]['table'] = $this->getTable();
     $tab[86]['field'] = 'is_recursive';
     $tab[86]['name'] = __('Child entities');
     $tab[86]['datatype'] = 'bool';
     $tab[86]['massiveaction'] = false;
     $tab['versions'] = _n('Version', 'Versions', Session::getPluralNumber());
     $tab[5]['table'] = 'glpi_softwareversions';
     $tab[5]['field'] = 'name';
     $tab[5]['name'] = __('Version name');
     $tab[5]['forcegroupby'] = true;
     $tab[5]['massiveaction'] = false;
     $tab[5]['joinparams'] = array('jointype' => 'child');
     $tab[5]['datatype'] = 'dropdown';
     $tab[31]['table'] = 'glpi_states';
     $tab[31]['field'] = 'completename';
     $tab[31]['name'] = __('Status');
     $tab[31]['datatype'] = 'dropdown';
     $tab[31]['forcegroupby'] = true;
     $tab[31]['massiveaction'] = false;
     $tab[31]['joinparams'] = array('beforejoin' => array('table' => 'glpi_softwareversions', 'joinparams' => array('jointype' => 'child')));
     $tab[170]['table'] = 'glpi_softwareversions';
     $tab[170]['field'] = 'comment';
     $tab[170]['name'] = __('Version comments');
     $tab[170]['forcegroupby'] = true;
     $tab[170]['datatype'] = 'text';
     $tab[170]['massiveaction'] = false;
     $tab[170]['joinparams'] = array('jointype' => 'child');
     $tab[4]['table'] = 'glpi_operatingsystems';
     $tab[4]['field'] = 'name';
     $tab[4]['datatype'] = 'dropdown';
     $tab[4]['name'] = __('Operating system');
     $tab[4]['forcegroupby'] = true;
     $tab[4]['joinparams'] = array('beforejoin' => array('table' => 'glpi_softwareversions', 'joinparams' => array('jointype' => 'child')));
     // add objectlock search options
     $tab += ObjectLock::getSearchOptionsToAdd(get_class($this));
     $tab += Notepad::getSearchOptionsToAdd();
     return $tab;
 }