. * --------------------------------------------------------------------- */ /** * @since 9.2 */ if (!defined('GLPI_ROOT')) { die("Sorry. You can't access this file directly"); } class Line extends CommonDropdown { // From CommonDBTM public $dohistory = true; static $rightname = 'line'; protected $usenotepad = true; static function getTypeName($nb = 0) { return _n('Line', 'Lines', $nb); } /** * @see CommonDBTM::useDeletedToLockIfDynamic() * * @since 0.84 **/ function useDeletedToLockIfDynamic() { return false; } function defineTabs($options = []) { $ong = []; $this->addDefaultFormTab($ong); $this->addImpactTab($ong, $options); $this->addStandardTab('Infocom', $ong, $options); $this->addStandardTab('Contract_Item', $ong, $options); $this->addStandardTab('Document_Item', $ong, $options); $this->addStandardTab('Notepad', $ong, $options); $this->addStandardTab('Log', $ong, $options); return $ong; } /** * Print the contact form * * @param $ID integer ID of the item * @param $options array of possible options: * - target for the Form * - withtemplate : template or basic item * * @return void **/ function showForm($ID, $options = []) { $rowspan = 3; if ($ID > 0) { $rowspan++; } $this->initForm($ID, $options); $this->showFormHeader($options); echo ""; echo "".__('Name').""; echo ""; Html::autocompletionTextField($this, "name"); echo ""; echo "".__('Status').""; echo ""; State::dropdown(['value' => $this->fields["states_id"], 'entity' => $this->fields["entities_id"], 'condition' => ['is_visible_line' => 1]]); echo ""; echo ""; echo "".Location::getTypeName(1).""; echo ""; Location::dropdown(['value' => $this->fields["locations_id"], 'entity' => $this->fields["entities_id"]]); echo ""; echo "".LineType::getTypeName(1).""; echo ""; LineType::dropdown(['value' => $this->fields["linetypes_id"], 'entity' => $this->fields["entities_id"]]); echo ""; echo ""; echo "".__('Caller number').""; echo ""; Html::autocompletionTextField($this, "caller_num"); echo ""; echo "".__('Forfait').""; echo ""; Html::autocompletionTextField($this, "caller_name"); echo ""; echo ""; $randDropdown = mt_rand(); echo ""; echo ""; User::dropdown(['value' => $this->fields["users_id"], 'entity' => $this->fields["entities_id"], 'right' => 'all', 'rand' => $randDropdown]); echo ""; $rowspan = 3; echo "" . __('Comments').""; echo " "; echo ""; echo ""; $randDropdown = mt_rand(); echo ""; echo ""; Group::dropdown(['value' => $this->fields["groups_id"], 'entity' => $this->fields["entities_id"], 'right' => 'all', 'rand' => $randDropdown]); echo ""; echo ""; $randDropdown = mt_rand(); echo ""; echo ""; LineOperator::dropdown(['value' => $this->fields["lineoperators_id"], 'entity' => $this->fields["entities_id"], 'right' => 'all', 'rand' => $randDropdown]); echo ""; $this->showFormButtons($options); return true; } function rawSearchOptions() { $tab = parent::rawSearchOptions(); $tab = array_merge($tab, Location::rawSearchOptionsToAdd()); $tab[] = [ 'id' => '4', 'table' => 'glpi_linetypes', 'field' => 'name', 'name' => LineType::getTypeName(1), 'datatype' => 'dropdown', ]; $tab[] = [ 'id' => '31', 'table' => 'glpi_states', 'field' => 'completename', 'name' => __('Status'), 'datatype' => 'dropdown', 'condition' => ['is_visible_line' => 1] ]; $tab[] = [ 'id' => '70', 'table' => 'glpi_users', 'field' => 'name', 'name' => User::getTypeName(1), 'datatype' => 'dropdown', 'right' => 'all' ]; $tab[] = [ 'id' => '71', 'table' => 'glpi_groups', 'field' => 'completename', 'name' => Group::getTypeName(1), 'condition' => ['is_itemgroup' => 1], 'datatype' => 'dropdown' ]; $tab[] = [ 'id' => '184', 'table' => 'glpi_lineoperators', 'field' => 'name', 'name' => LineOperator::getTypeName(1), 'massiveaction' => true, 'datatype' => 'dropdown' ]; $tab[] = [ 'id' => '185', 'table' => $this->getTable(), 'field' => 'caller_num', 'name' => __('Caller number'), 'datatype' => 'string', 'autocomplete' => true, ]; $tab[] = [ 'id' => '186', 'table' => $this->getTable(), 'field' => 'caller_name', 'name' => __('Forfait'), 'datatype' => 'string', 'autocomplete' => true, ]; return $tab; } static function getIcon() { return "fas fa-phone"; } }