function getSearchOptions() { $tab = parent::getSearchOptions(); $tab[11]['table'] = $this->getTable(); $tab[11]['field'] = 'is_helpdesk_visible'; $tab[11]['name'] = __('Last update'); $tab[11]['datatype'] = 'bool'; return $tab; }
function getFromDB($ID) { global $LANG; if ($ID == 0) { $this->fields = array('id' => 0, 'name' => $LANG['entity'][2], 'entities_id' => 0, 'completename' => $LANG['entity'][2], 'comment' => '', 'level' => 0, 'sons_cache' => '', 'ancestors_cache' => ''); return true; } return parent::getFromDB($ID); }
function getSearchOptions() { $tab = parent::getSearchOptions(); $tab[8]['table'] = $this->getTable(); $tab[8]['field'] = 'is_active'; $tab[8]['name'] = __('Active'); $tab[8]['datatype'] = 'bool'; return $tab; }
/** * Report if a dropdown have Child * Used to (dis)allow delete action **/ function haveChildren() { if (parent::haveChildren()) { return true; } $kb = new KnowbaseItem(); $fk = $this->getForeignKeyField(); $id = $this->fields['id']; return countElementsInTable($kb->getTable(), "`{$fk}`='{$id}'") > 0; }
function getSearchOptions() { $tab = parent::getSearchOptions(); $tab[14]['table'] = $this->getTable(); $tab[14]['field'] = 'short_name'; $tab[14]['name'] = __('Short name', 'resources'); $tab[14]['datatype'] = 'text'; $tab[17]['table'] = 'glpi_locations'; $tab[17]['field'] = 'completename'; $tab[17]['name'] = __('Location'); return $tab; }
function getSearchOptions() { global $LANG; $tab = parent::getSearchOptions(); $tab[70]['table'] = 'glpi_users'; $tab[70]['field'] = 'name'; $tab[70]['name'] = $LANG['common'][10]; $tab[71]['table'] = 'glpi_groups'; $tab[71]['field'] = 'name'; $tab[71]['name'] = $LANG['common'][35]; $tab[2]['table'] = $this->getTable(); $tab[2]['field'] = 'is_helpdeskvisible'; $tab[2]['name'] = $LANG['tracking'][39]; $tab[2]['datatype'] = 'bool'; return $tab; }
static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { if ($item->getType() == 'TicketTemplate') { self::showForTicketTemplate($item, $withtemplate); } return parent::displayTabContentForItem($item, $tabnum, $withtemplate); }
/** * Used to update tree by redefining other items ForeignKeyField * * @return nothing **/ function pre_deleteItem() { $this->alterElementInsideTree("delete"); return parent::pre_deleteItem(); }
function getSearchOptions() { $tab = parent::getSearchOptions(); if (AuthLdap::useAuthLdap()) { $tab[3]['table'] = $this->getTable(); $tab[3]['field'] = 'ldap_field'; $tab[3]['name'] = __('Attribute of the user containing its groups'); $tab[3]['datatype'] = 'string'; $tab[4]['table'] = $this->getTable(); $tab[4]['field'] = 'ldap_value'; $tab[4]['name'] = __('Attribute value'); $tab[4]['datatype'] = 'text'; $tab[5]['table'] = $this->getTable(); $tab[5]['field'] = 'ldap_group_dn'; $tab[5]['name'] = __('Group DN'); $tab[5]['datatype'] = 'text'; } $tab[11]['table'] = $this->getTable(); $tab[11]['field'] = 'is_requester'; $tab[11]['name'] = __('Requester'); $tab[11]['datatype'] = 'bool'; $tab[12]['table'] = $this->getTable(); $tab[12]['field'] = 'is_assign'; $tab[12]['name'] = __('Assigned to'); $tab[12]['datatype'] = 'bool'; $tab[18]['table'] = $this->getTable(); $tab[18]['field'] = 'is_manager'; $tab[18]['name'] = __('Can be manager'); $tab[18]['datatype'] = 'bool'; $tab[13]['table'] = $this->getTable(); $tab[13]['field'] = 'is_notify'; $tab[13]['name'] = __('Can be notified'); $tab[13]['datatype'] = 'bool'; $tab[17]['table'] = $this->getTable(); $tab[17]['field'] = 'is_itemgroup'; $tab[17]['name'] = sprintf(__('%1$s %2$s'), __('Can contain'), _n('Item', 'Items', Session::getPluralNumber())); $tab[17]['datatype'] = 'bool'; $tab[15]['table'] = $this->getTable(); $tab[15]['field'] = 'is_usergroup'; $tab[15]['name'] = sprintf(__('%1$s %2$s'), __('Can contain'), User::getTypeName(Session::getPluralNumber())); $tab[15]['datatype'] = 'bool'; $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[70]['table'] = 'glpi_users'; $tab[70]['field'] = 'name'; $tab[70]['name'] = __('Manager'); $tab[70]['datatype'] = 'dropdown'; $tab[70]['right'] = 'all'; $tab[70]['forcegroupby'] = true; $tab[70]['massiveaction'] = false; $tab[70]['joinparams'] = array('beforejoin' => array('table' => 'glpi_groups_users', 'joinparams' => array('jointype' => 'child', 'condition' => "AND NEWTABLE.`is_manager` = 1"))); $tab[71]['table'] = 'glpi_users'; $tab[71]['field'] = 'name'; $tab[71]['name'] = __('Delegatee'); $tab[71]['datatype'] = 'dropdown'; $tab[71]['right'] = 'all'; $tab[71]['forcegroupby'] = true; $tab[71]['massiveaction'] = false; $tab[71]['joinparams'] = array('beforejoin' => array('table' => 'glpi_groups_users', 'joinparams' => array('jointype' => 'child', 'condition' => "AND NEWTABLE.`is_userdelegate` = 1"))); return $tab; }
/** * @since version 0.85 * * @see commonDBTM::getRights() **/ function getRights($interface = 'central') { $values = parent::getRights(); $values[self::READHELPDESK] = array('short' => __('Read parameters'), 'long' => __('Read helpdesk parameters')); $values[self::UPDATEHELPDESK] = array('short' => __('Update parameters'), 'long' => __('Update helpdesk parameters')); return $values; }
static function pdfChildren(PluginPdfSimplePDF $pdf, CommonTreeDropdown $item) { global $DB; $ID = $item->getID(); $fields = $item->getAdditionalFields(); $nb = count($fields); $entity_assign = $item->isEntityAssign(); $fk = $item->getForeignKeyField(); $crit = array($fk => $item->getID(), 'ORDER' => 'name'); $pdf->setColumnsSize(100); $pdf->displayTitle(sprintf(__('Sons of %s'), '<b>' . $item->getNameID() . '</b>')); if ($item->haveChildren()) { if ($entity_assign) { if ($fk == 'entities_id') { $crit['id'] = $_SESSION['glpiactiveentities']; $crit['id'] += $_SESSION['glpiparententities']; } else { $crit['entities_id'] = $_SESSION['glpiactiveentities']; } $pdf->setColumnsSize(30, 30, 40); $pdf->displayTitle(__('Name'), __('Entity'), __('Comments')); } else { $pdf->setColumnsSize(45, 55); $pdf->displayTitle(__('Name'), __('Comments')); } foreach ($DB->request($item->getTable(), $crit) as $data) { if ($entity_assign) { $pdf->displayLine($data['name'], Html::clean(Dropdown::getDropdownName("glpi_entities", $data["entities_id"])), $data['comment']); } else { $pdf->displayLine($data['name'], $data['comment']); } } } else { $pdf->displayLine(__('No item found')); } $pdf->displaySpace(); }
/** * @see CommonDBTM::prepareInputForAdd() */ function prepareInputForAdd($input) { global $LANG; // Check for mandatory fields $mandatory_ok = true; if (!isset($input["plugin_customfields_dropdowns_id"]) || empty($input["plugin_customfields_dropdowns_id"])) { Session::addMessageAfterRedirect($LANG['plugin_customfields']['error'][1], false, ERROR); $mandatory_ok = false; } if (!$mandatory_ok) { return false; } return parent::prepareInputForAdd($input); }
/** * Get search function for the class * * @since version 0.85 * * @return array of search option **/ function getSearchOptions() { $tab = parent::getSearchOptions(); $tab[21]['table'] = $this->getTable(); $tab[21]['field'] = 'is_visible_computer'; $tab[21]['name'] = sprintf(__('%1$s - %2$s'), __('Visibility'), Computer::getTypeName(Session::getPluralNumber())); $tab[21]['datatype'] = 'bool'; $tab[22]['table'] = $this->getTable(); $tab[22]['field'] = 'is_visible_softwareversion'; $tab[22]['name'] = sprintf(__('%1$s - %2$s'), __('Visibility'), SoftwareVersion::getTypeName(Session::getPluralNumber())); $tab[22]['datatype'] = 'bool'; $tab[23]['table'] = $this->getTable(); $tab[23]['field'] = 'is_visible_monitor'; $tab[23]['name'] = sprintf(__('%1$s - %2$s'), __('Visibility'), Monitor::getTypeName(Session::getPluralNumber())); $tab[23]['datatype'] = 'bool'; $tab[24]['table'] = $this->getTable(); $tab[24]['field'] = 'is_visible_printer'; $tab[24]['name'] = sprintf(__('%1$s - %2$s'), __('Visibility'), Printer::getTypeName(Session::getPluralNumber())); $tab[24]['datatype'] = 'bool'; $tab[25]['table'] = $this->getTable(); $tab[25]['field'] = 'is_visible_peripheral'; $tab[25]['name'] = sprintf(__('%1$s - %2$s'), __('Visibility'), Peripheral::getTypeName(Session::getPluralNumber())); $tab[25]['datatype'] = 'bool'; $tab[26]['table'] = $this->getTable(); $tab[26]['field'] = 'is_visible_phone'; $tab[26]['name'] = sprintf(__('%1$s - %2$s'), __('Visibility'), Phone::getTypeName(Session::getPluralNumber())); $tab[26]['datatype'] = 'bool'; $tab[27]['table'] = $this->getTable(); $tab[27]['field'] = 'is_visible_networkequipment'; $tab[27]['name'] = sprintf(__('%1$s - %2$s'), __('Visibility'), NetworkEquipment::getTypeName(Session::getPluralNumber())); $tab[27]['datatype'] = 'bool'; return $tab; }
function defineTabs($options = array()) { $ong = parent::defineTabs($options); $this->addStandardTab('Netpoint', $ong, $options); $this->addStandardTab(__CLASS__, $ong, $options); return $ong; }
/** * @since version 0.84 * * @param $field * @param $name (default '') * @param $values (default '') * @param $options array **/ static function getSpecificValueToSelect($field, $name = '', $values = '', array $options = array()) { global $DB; if (!is_array($values)) { $values = array($field => $values); } $options['display'] = false; switch ($field) { case 'use_licenses_alert': case 'use_contracts_alert': case 'use_infocoms_alert': $options['name'] = $name; $options['value'] = $values[$field]; return Alert::dropdownYesNo($options); case 'cartridges_alert_repeat': case 'consumables_alert_repeat': $options['name'] = $name; $options['value'] = $values[$field]; return Alert::dropdown($options); case 'send_contracts_alert_before_delay': case 'send_infocoms_alert_before_delay': case 'send_licenses_alert_before_delay': $options['unit'] = 'day'; $options['never_string'] = __('No'); return Alert::dropdownIntegerNever($name, $values[$field], $options); case 'use_reservations_alert': $options['unit'] = 'hour'; return Alert::dropdownIntegerNever($name, $values[$field], $options); case 'notclosed_delay': $options['unit'] = 'hour'; return Alert::dropdownIntegerNever($name, $values[$field], $options); case 'auto_assign_mode': $options['name'] = $name; $options['value'] = $values[$field]; return self::dropdownAutoAssignMode($options); case 'tickettype': $options['value'] = $values[$field]; $options['toadd'] = array(self::CONFIG_PARENT => __('Inheritance of the parent entity')); return Ticket::dropdownType($name, $options); case 'autofill_buy_date': case 'autofill_order_date': case 'autofill_delivery_date': case 'autofill_use_date': $tab[0] = __('No autofill'); $tab[self::CONFIG_PARENT] = __('Inheritance of the parent entity'); foreach (getAllDatasFromTable('glpi_states') as $state) { $tab[Infocom::ON_STATUS_CHANGE . '_' . $state['id']] = sprintf(__('Fill when shifting to state %s'), $state['name']); } $tab[Infocom::COPY_WARRANTY_DATE] = __('Copy the start date of warranty'); if ($field != 'autofill_buy_date') { $tab[Infocom::COPY_BUY_DATE] = __('Copy the date of purchase'); if ($field != 'autofill_order_date') { $tab[Infocom::COPY_ORDER_DATE] = __('Copy the order date'); if ($field != 'autofill_delivery_date') { $options[Infocom::COPY_DELIVERY_DATE] = __('Copy the delivery date'); } } } $options['value'] = $values[$field]; return Dropdown::showFromArray($name, $tab, $options); case 'autofill_warranty_date': $tab = array(0 => __('No autofill'), Infocom::COPY_BUY_DATE => __('Copy the date of purchase'), Infocom::COPY_ORDER_DATE => __('Copy the order date'), Infocom::COPY_DELIVERY_DATE => __('Copy the delivery date'), self::CONFIG_PARENT => __('Inheritance of the parent entity')); $options['value'] = $values[$field]; return Dropdown::showFromArray($name, $tab, $options); case 'inquest_config': $typeinquest = array(self::CONFIG_PARENT => __('Inheritance of the parent entity'), 1 => __('Internal survey'), 2 => __('External survey')); $options['value'] = $values[$field]; return Dropdown::showFromArray($name, $typeinquest, $options); case 'default_contract_alert': $options['name'] = $name; $options['value'] = $values[$field]; return Contract::dropdownAlert($options); case 'default_infocom_alert': $options['name'] = $name; $options['value'] = $values[$field]; return Infocom::dropdownAlert($options); case 'entities_id_software': $options['toadd'] = array(self::CONFIG_NEVER => __('No change of entity')); // Keep software in PC entity $options['toadd'][self::CONFIG_PARENT] = __('Inheritance of the parent entity'); return self::dropdown($options); } return parent::getSpecificValueToSelect($field, $name, $values, $options); }
/** * Display content of Tab * * @param $ID of the item * @param $tab number of the tab * * @return true if handled (for class stack) **/ function showTabContent($ID, $tab) { if ($ID > 0 && !parent::showTabContent($ID, $tab)) { switch ($tab) { case 2: $this->showNetpoints($ID); return true; case -1: $this->showNetpoints($ID); return false; } } return false; }