/** * Print the computer form * * @param $ID integer ID of the item * @param $options array * - target for the Form * - withtemplate template or basic computer * *@return Nothing (display) **/ function showForm($ID, $options = array()) { global $CFG_GLPI, $DB; $this->initForm($ID, $options); $this->showFormHeader($options); echo "<tr class='tab_bg_1'>"; //TRANS: %1$s is a string, %2$s a second one without spaces between them : to change for RTL echo "<td>" . sprintf(__('%1$s%2$s'), __('Name'), isset($options['withtemplate']) && $options['withtemplate'] ? "*" : "") . "</td>"; echo "<td>"; $objectName = autoName($this->fields["name"], "name", isset($options['withtemplate']) && $options['withtemplate'] == 2, $this->getType(), $this->fields["entities_id"]); Html::autocompletionTextField($this, 'name', array('value' => $objectName)); echo "</td>"; echo "<td>" . __('Status') . "</td>"; echo "<td>"; State::dropdown(array('value' => $this->fields["states_id"], 'entity' => $this->fields["entities_id"], 'condition' => "`is_visible_computer`")); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Location') . "</td>"; echo "<td>"; Location::dropdown(array('value' => $this->fields["locations_id"], 'entity' => $this->fields["entities_id"])); echo "</td>"; echo "<td>" . __('Type') . "</td>"; echo "<td>"; ComputerType::dropdown(array('value' => $this->fields["computertypes_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Technician in charge of the hardware') . "</td>"; echo "<td>"; User::dropdown(array('name' => 'users_id_tech', 'value' => $this->fields["users_id_tech"], 'right' => 'own_ticket', 'entity' => $this->fields["entities_id"])); echo "</td>"; echo "<td>" . __('Manufacturer') . "</td>"; echo "<td>"; Manufacturer::dropdown(array('value' => $this->fields["manufacturers_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Group in charge of the hardware') . "</td>"; echo "<td>"; Group::dropdown(array('name' => 'groups_id_tech', 'value' => $this->fields['groups_id_tech'], 'entity' => $this->fields['entities_id'], 'condition' => '`is_assign`')); echo "</td>"; echo "<td>" . __('Model') . "</td>"; echo "<td>"; ComputerModel::dropdown(array('value' => $this->fields["computermodels_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; //TRANS: Number of the alternate username echo "<td>" . __('Alternate username number') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'contact_num'); echo "</td>"; echo "<td>" . __('Serial number') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'serial'); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Alternate username') . "</td>"; echo "<td>"; Html::autocompletionTextField($this, 'contact'); echo "</td>"; echo "<td>" . sprintf(__('%1$s%2$s'), __('Inventory number'), isset($options['withtemplate']) && $options['withtemplate'] ? "*" : "") . "</td>"; echo "<td>"; $objectName = autoName($this->fields["otherserial"], "otherserial", isset($options['withtemplate']) && $options['withtemplate'] == 2, $this->getType(), $this->fields["entities_id"]); Html::autocompletionTextField($this, 'otherserial', array('value' => $objectName)); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('User') . "</td>"; echo "<td>"; User::dropdown(array('value' => $this->fields["users_id"], 'entity' => $this->fields["entities_id"], 'right' => 'all')); echo "</td>"; echo "<td>" . __('Network') . "</td>"; echo "<td>"; Network::dropdown(array('value' => $this->fields["networks_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Group') . "</td>"; echo "<td>"; Group::dropdown(array('value' => $this->fields["groups_id"], 'entity' => $this->fields["entities_id"], 'condition' => '`is_itemgroup`')); echo "</td>"; // Display auto inventory informations $rowspan = 10; $inventory_show = false; if (!empty($ID) && Plugin::haveImport() && $this->fields["is_dynamic"]) { $inventory_show = true; $rowspan -= 4; } echo "<td rowspan='{$rowspan}'>" . __('Comments') . "</td>"; echo "<td rowspan='{$rowspan}' class='middle'>"; echo "<textarea cols='45' rows='" . ($rowspan + 3) . "' name='comment' >" . $this->fields["comment"]; echo "</textarea></td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Domain') . "</td>"; echo "<td >"; Domain::dropdown(array('value' => $this->fields["domains_id"], 'entity' => $this->fields["entities_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Operating system') . "</td>"; echo "<td>"; OperatingSystem::dropdown(array('value' => $this->fields["operatingsystems_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Service pack') . "</td>"; echo "<td >"; OperatingSystemServicePack::dropdown(array('value' => $this->fields["operatingsystemservicepacks_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Version of the operating system') . "</td>"; echo "<td >"; OperatingSystemVersion::dropdown(array('value' => $this->fields["operatingsystemversions_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Product ID of the operating system') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'os_licenseid'); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Serial of the operating system') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'os_license_number'); echo "</td>"; if ($inventory_show) { echo "<td rowspan='4' colspan='2'>"; Plugin::doHook("autoinventory_information", $this); echo "</td>"; } echo "</tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('UUID') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'uuid'); echo "</td>"; echo "</tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>"; if ((!isset($options['withtemplate']) || $options['withtemplate'] == 0) && !empty($this->fields['template_name'])) { echo "<span class='small_space'>"; printf(__('Created from the template %s'), $this->fields['template_name']); echo "</span>"; } else { echo " "; } echo "</td><td>"; if (isset($options['withtemplate']) && $options['withtemplate']) { //TRANS: %s is the datetime of insertion printf(__('Created on %s'), Html::convDateTime($_SESSION["glpi_currenttime"])); } else { //TRANS: %s is the datetime of update printf(__('Last update on %s'), Html::convDateTime($this->fields["date_mod"])); } echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Update Source') . "</td>"; echo "<td >"; AutoUpdateSystem::dropdown(array('value' => $this->fields["autoupdatesystems_id"])); echo "</td></tr>"; $this->showFormButtons($options); return true; }
/** Generate bigdump : generate global dropdowns **/ function generateGlobalDropdowns() { global $MAX, $DB; $items = array("CD", "CD-RW", "DVD-R", "DVD+R", "DVD-RW", "DVD+RW", "ramette papier", "disk'ette", "ZIP"); $dp = new ConsumableItemType(); for ($i=0 ; $i<$MAX['consumable_type'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type d' consommable $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("phone d'power"); $dp = new PhonePowerSupply(); for ($i=0 ; $i<$MAX['phone_power'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "power ' $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Grand", "Moyen", "Mic'ro", "1U", "5U"); $dp = new DeviceCaseType(); for ($i=0 ; $i<$MAX['case_type'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "power ' $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Laser", "Jet d'Encre", "Encre Solide"); $dp = new CartridgeItemType(); for ($i=0 ; $i<$MAX['cartridge_type'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type d' cartouche $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Technicien", "Commercial", "Technico-Commercial", "President", "Secretaire", "Directeur d'agence"); $dp = new ContactType(); for ($i=0 ; $i<$MAX['contact_type'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type d' contact $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Maintenance", "Support", "Location", "Adhesion"); $dp = new ContractType(); for ($i=0 ; $i<$MAX['contract_type'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type d' crontact $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Fournisseur", "Transporteur", "SSII", "Revendeur d'", "Assembleur", "SSLL", "Financeur", "Assureur"); $dp = new SupplierType(); for ($i=0 ; $i<$MAX['enttype'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type d'entreprise $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("H.07.02", "I.07.56", "P51", "P52", "1.60", "4.06", "43-4071299", "1.0.14", "3.0.1", "rev 1.0", "rev 1.1", "rev 1.2", "rev 1.2.1", "rev 2.0", "rev 3.0"); $dp = new NetworkEquipmentFirmware(); for ($i=0 ; $i<$MAX['firmware'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "firmware $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Fire'wire"); $dp = new InterfaceType(); for ($i=0 ; $i<$MAX['interface'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type d' disque dur $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("100 Base TX", "100 Base T4", "10 base T", "1000 Base SX", "1000 Base LX", "1000 Base T", "ATM", "802.3 10 Base 2", "IEEE 803.3 10 Base 5"); $dp = new NetworkInterface(); for ($i=0 ; $i<$MAX['iface'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type carte reseau $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Non", "Oui - generique", "Oui - specifique d'entite"); $dp = new AutoUpdateSystem(); for ($i=0 ; $i<$MAX['auto_update'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type de mise a jour '$i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Assemble", "Latitude C600", "Latitude C700", "VAIO FX601", "VAIO FX905P", "VAIO TR5MP", "L5000C", "A600K", "PowerBook G4"); $dp = new ComputerModel(); for ($i=0 ; $i<$MAX['model'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "Modele $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment' $val"))); } $items = array("4200 DTN", "4200 DN", "4200 N", "8400 ADP", "7300 ADP", "5550 DN", "PIXMA iP8500", "Stylus Color 3000", "DeskJet 5950"); $dp = new PrinterModel(); for ($i=0 ; $i<$MAX['model_printers'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "modele imprimante $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("LS902UTG", "MA203DT", "P97F+SB", "G220F", "10-30-75", "PLE438S-B0S", "PLE481S-W", "L1740BQ", "L1920P", "SDM-X73H"); $dp = new MonitorModel(); for ($i=0 ; $i<$MAX['model_monitors'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "modele moniteur $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("HP 4108GL", "HP 2524", "HP 5308", "7600", "Catalyst 4500", "Catalyst 2950", "Catalyst 3750", "Catalyst 6500"); $dp = new NetworkEquipmentModel(); for ($i=0 ; $i<$MAX['model_networking'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "modele materiel reseau $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("DCS-2100+", "DCS-2100G", "KD-P35B", "Optical 5000", "Cordless", "ASR 600", "ASR 375", "CS21", "MX5020", "VS4121", "T3030", "T6060"); $dp = new PeripheralModel(); for ($i=0 ; $i<$MAX['model_peripherals'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "modele peripherique $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Alcatel Temporis 22", "Aastra 5370ip", "Alcatel-Lucent 400 DECT Handset", "BlackBerry Curve 9300"); $dp = new PhoneModel(); for ($i=0 ; $i<$MAX['model_phones'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "modele phone $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment' $val"))); } $items = array("SIC", "LMS", "LMP", "LEA", "SP2MI", "STIC", "MATH", "ENS-MECA", "POUBELLE", "WIFI"); $dp = new Network(); for ($i=0 ; $i<$MAX['network'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "reseau $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Windows XP Pro SP2", "Linux (Debian)", "Mac OS X", "Linux (Mandriva 2006)", "Linux (Redhat)", "Windows 98", "Windows 2000", "Windows XP Pro SP1", "LINUX (Suse)", "Linux (Mandriva 10.2)"); $dp = new OperatingSystem(); for ($i=0 ; $i<$MAX['os'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "os $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("XP Pro", "XP Home", "10.0", "10.1", "10.2", "2006", "Sarge"); $dp = new operatingSystemVersion(); for ($i=0 ; $i<$MAX['os_version'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "osversion $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Service Pack 1", "Service Pack 2", "Service Pack 3", "Service Pack 4"); $dp = new OperatingSystemServicePack(); for ($i=0 ; $i<$MAX['os_sp'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "ossp $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("DDR2"); $dp = new DeviceMemoryType(); for ($i=0 ; $i<$MAX['ram_type'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type de ram $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment' $val"))); } $items = array('Bureautique', 'Calcul', "logiciel d'antivirus", 'Multimédia'); $dp = new SoftwareCategory(); for ($i=0 ; $i<max(1,pow($MAX['softwarecategory'],1/2)) ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "category $i"; } $newID = $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); for ($j=0 ; $j<mt_rand(0,pow($MAX['softwarecategory'],1/2)) ; $j++) { $newID2 = $dp->add(toolbox::addslashes_deep(array('name' => "s-category '$j", 'comment' => "comment d' $val s-category $j", 'softwarecategories_id' => $newID))); } } $MAX['rubdocs'] = getMaxItem('glpi_softwarecategories'); $dp = new SoftwareLicenseType(); for ($i=0 ; $i<$MAX['licensetype'] ; $i++) { $val = "type ' $i"; $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("SIC", "LMS", "LMP", "LEA", "SP2MI", "STIC", "MATH", "ENS-MECA", "POUBELLE", "WIFI"); $dp = new Vlan(); for ($i=0 ; $i<$MAX['vlan'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "VLAN $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val", 'tag' => $i))); } $items = array("Portable", "Desktop", "Tour"); $dp = new ComputerType(); for ($i=0 ; $i<$MAX['type_computers'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type ordinateur $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Laser A4", "Jet d'Encre", "Laser A3", "Encre Solide A4", "Encre Solide A3"); $dp = new PrinterType(); for ($i=0 ; $i<$MAX['type_printers'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type d'imprimante $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("TFT 17", "TFT 19", "TFT 21", "CRT 17", "CRT 19", "CRT 21", "CRT 15"); $dp = new MonitorType(); for ($i=0 ; $i<$MAX['type_monitors'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type ecran $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Switch", "Routeur", "Hub", "Borne Wifi", "borne d'accueil"); $dp = new NetworkEquipmentType(); for ($i=0 ; $i<$MAX['type_networking'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type de materiel reseau '$i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Clavier", "Souris", "Webcam", "Enceintes", "Scanner", "Clef USB", "d'autres"); $dp = new PeripheralType(); for ($i=0 ; $i<$MAX['type_peripherals'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type de peripheriques '$i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Analogique", "IP", ); $dp = new PhoneType(); for ($i=0 ; $i<$MAX['type_phones'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "type de phone $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("DELL", "HP", "IIYAMA", "CANON", "EPSON", "LEXMARK", "ASUS", "MSI"); $dp = new Manufacturer(); for ($i=0 ; $i<$MAX['manufacturer'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "manufacturer $i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment '$val"))); } $items = array("Ingénieur", "Stagiaire", "Secrétaire", "ouvrier d'atelier"); $dp = new UserCategory(); for ($i=0 ; $i<$MAX['user_type'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "user type d'$i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Président", "Agent Comptable", "Directeur d'agence"); $dp = new UserTitle(); for ($i=0 ; $i<$MAX['user_title'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "user type '$i"; } $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); } $items = array("Documentation", "Facture", "Bon Livraison", "Bon commande", "Capture d'Ecran", "Dossier Technique"); $dp = new DocumentCategory(); for ($i=0 ; $i<max(1,pow($MAX['rubdocs'],1/2)) ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "category $i"; } $newID = $dp->add(toolbox::addslashes_deep(array('name' => $val, 'comment' => "comment $val"))); for ($j=0 ; $j<mt_rand(0,pow($MAX['rubdocs'],1/2)) ; $j++) { $newID2 = $dp->add(toolbox::addslashes_deep( array('name' => "s-category '$j", 'comment' => "comment d' $val s-category $j", 'documentcategories_id' => $newID))); } } $MAX['rubdocs'] = getMaxItem('glpi_documentcategories'); $dp = new ItilCategory(); // GLobal ticket categories : also specific ones by entity for ($i=0 ; $i<max(1,pow($MAX['tracking_category'],1/3)) ; $i++) { $newID = $dp->add(toolbox::addslashes_deep( array('name' => "category '$i", 'comment' => "comment ' category $i", 'is_recursive' => 1, 'tickettemplates_id_incident' => 1, 'tickettemplates_id_demand' => 1))); for ($j=0 ; $j<mt_rand(0,pow($MAX['tracking_category'],1/2)) ; $j++) { $newID2 = $dp->add(toolbox::addslashes_deep( array('name' => "s-category '$j", 'comment' => "comment 'category $i s-category $j", 'is_recursive' => 1, 'tickettemplates_id_incident' => 1, 'tickettemplates_id_demand' => 1, 'itilcategories_id' => $newID))); for ($k=0 ; $k<mt_rand(0,pow($MAX['tracking_category'],1/2)) ; $k++) { $newID3 = $dp->add(toolbox::addslashes_deep( array('name' => "ss-category' $k", 'comment' => "comment ' category $i s-category $j ss-category $k", 'is_recursive' => 1, 'tickettemplates_id_incident' => 1, 'tickettemplates_id_demand' => 1, 'itilcategories_id' => $newID2))); } } } $query = "OPTIMIZE TABLE `glpi_itilcategories`"; $DB->query($query) or die("PB REQUETE ".$query); regenerateTreeCompleteName("glpi_itilcategories"); $MAX['tracking_category'] = getMaxItem('glpi_itilcategories'); // DEVICE $items = array("Textorm 6A19", "ARIA", "SLK3000B-EU", "Sonata II", "TA-212", "TA-551", "TA-581", "TAC-T01", "CS-512", "Li PC-60891", "STT-TJ02S"); $dp = new DeviceCase(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "case $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment '$val", 'devicecasetypes_id' => mt_rand(0,$MAX["case_type"]), 'manufacturers_id' => mt_rand(1,$MAX['manufacturer'])))); } $items = array("Escalade 8006-2LP", "Escalade 8506-4LP", "2810SA", "1210SA", "DuoConnect", "DU-420", "DUB-A2", "FastTrak SX4100B", "DC-395U", "TFU-H33PI"); $dp = new DeviceControl(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "control $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment ' $val", 'interfacetypes_id' => mt_rand(0,$MAX["interface"]), 'manufacturers_id' => mt_rand(1,$MAX['manufacturer'])))); } $items = array("DUW1616", "DRW-1608P", "DW1625", "GSA-4160B", "GSA-4165B", "GSA-4167RBB", "SHW-16H5S", "SOHW-1673SX", "DVR-110D", "PX-716AL", "PX-755A"); $dp = new DeviceDrive(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "drive $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment '$val", 'is_writer' => mt_rand(0,1), 'speed' => mt_rand(0,60), 'interfacetypes_id' => mt_rand(0,$MAX["interface"]), 'manufacturers_id' => mt_rand(1,$MAX['manufacturer'])))); } $items = array("A9250/TD", "AX550/TD", "Extreme N5900", "V9520-X/TD", "All-In-Wonder X800 GT", "GV-NX66256D", "GV-RX80256DE", "Excalibur 9600XT", "X1300 IceQ", "WinFast PX6200 TD", "Millenium 750","NX6600GT"); $dp = new DeviceGraphicCard(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "gfxcard $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment ' $val", 'interfacetypes_id' => mt_rand(0,$MAX["interface"]), 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'memory_default' => 256*mt_rand(0,8)))); } $items = array("Deskstar 7K500", "Deskstar T7K250", "Atlas 15K II", "DiamondMax Plus", "SpinPoint P - SP2514N", "Barracuda 7200.9", "WD2500JS", "WD1600JB", "WD1200JD"); $dp = new DeviceHardDrive(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "hdd $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment' $val", 'interfacetypes_id' => mt_rand(0,$MAX["interface"]), 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'capacity_default' => mt_rand(0,300), 'rpm' => mt_rand(0,15000), 'cache' => 51200*mt_rand(0,10)))); } $items = array("DFE-530TX", "DFE-538TX", "PWLA8492MF", "PWLA8492MT", "USBVPN1", "GA311", "FA511", "TEG-PCBUSR", "3C996-SX", "3C996B-T", "3C905C-TX-M"); $dp = new DeviceNetworkCard(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "iface $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment' $val", 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'bandwidth' => mt_rand(0,1000)))); } $items = array("AW8-MAX", "NV8", "AK86-L", "P4V88", "A8N-SLI", "A8N-VM", "K8V-MX", "K8N4-E", "P5LD2", "GA-K8NE", "GA-8I945P Pro", "D945PBLL", "SE7525GP2", "865PE Neo3-F", "K8N Neo4-F", "Thunder i7520 (S5360G2NR)", "Thunder K8SR - S2881UG2NR", "Tiger K8QS Pro - S4882UG2NR", "Tomcat i875PF (S5105G2NR)"); $dp = new DeviceMotherBoard(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "moboard $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment' $val", 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'chipset' => 'chipset '.mt_rand(0,1000)))); } $items = array("Instant TV Cardbus", "WinTV Express", "WinTV-NOVA-S-Plus", "WinTV-NOVA-T", "WinTV-PVR-150"); $dp = new DevicePci(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "pci $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment '$val", 'manufacturers_id' => mt_rand(1,$MAX['manufacturer'])))); } $items = array("DB-Killer PW335", "DB-Killer PW385", "NeoHE 380", "NeoHE 450", "Phantom 500-PEC", "TruePower 2.0 550", "Master RS-380", "EG375AX-VE-G-SFMA", "EG495AX"); $dp = new DevicePowerSupply(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "power $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment '$val", 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'power' => mt_rand(0,500).'W', 'is_atx' => mt_rand(0,1)))); } $items = array("Athlon 64 FX-57", "Athlon 64 FX-55", "Sempron 2400+", "Sempron 2600+", "Celeron D 325", "Celeron D 330J", "Pentium 4 530J", "Pentium 4 631", "Pentium D 830", "Pentium D 920"); $dp = new DeviceProcessor(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "processor $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment' $val", 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'frequence' => mt_rand(1000,3000), 'frequency_default' => 1000+200*mt_rand(0,10), 'nbcores_default' => mt_rand(1,8), 'nbthreads_default' => mt_rand(1,4), ))); } $items = array("CM2X256A-5400C4", "CMX1024-3200C2", "CMXP512-3200XL", "TWIN2X1024-4300C3PRO", "KTD-DM8400/1G", "KTH8348/1G", "KTD4400/256", "D6464D30A", "KTA-G5400/512", "KVR667D2N5/1G", "KVR133X64C3/256"); $dp = new DeviceMemory(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "ram $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment' $val", 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'frequence' => 100*mt_rand(0,10), 'size_default' => 1024*mt_rand(0,6), 'devicememorytypes_id' => mt_rand(1,$MAX['ram_type'])))); } $items = array("DDTS-100", "Audigy 2 ZS Platinum", "Audigy SE", "DJ Console Mk2", "Gamesurround Muse Pocket USB", "Phase 22", "X-Fi Platinum", "Live! 24-bit", "X-Fi Elite Pro"); $dp = new DeviceSoundCard(); for ($i=0 ; $i<$MAX['device'] ; $i++) { if (isset($items[$i])) { $val = $items[$i]; } else { $val = "sndcard $i"; } $dp->add(toolbox::addslashes_deep( array('designation' => $val, 'is_recursive' => 1, 'comment' => "comment '$val", 'manufacturers_id' => mt_rand(1,$MAX['manufacturer']), 'type' => 'type '.mt_rand(0,100)))); } } // Fin generation global dropdowns
/** * Get comments for host * $id, host id * default is current host instance * */ function getComments($id=-1) { global $CFG_GLPI; if ($id == -1) { $pm_Host = $this; } else { $pm_Host = new PluginMonitoringHost(); $pm_Host->getFromDB($id); } // Toolbox::logInFile("pm", "Host getcomments : $id : ".$pm_Host->getID()."\n"); $comment = ""; $toadd = array(); // associated computer ... $item = new $pm_Host->fields['itemtype']; $item->getFromDB($pm_Host->fields['items_id']); if ($pm_Host->getField('itemtype') == 'Computer') { if ($item->isField('completename')) { $toadd[] = array('name' => __('Complete name'), 'value' => nl2br($item->getField('completename'))); } $type = new ComputerType(); if ($item->getField("computertypes_id")) { $type->getFromDB($item->getField("computertypes_id")); $type = $type->getName(); if (! empty($type)) { $toadd[] = array('name' => __('Type'), 'value' => nl2br($type)); } } else { return $comment; } $model = new ComputerModel(); if ($item->getField("computermodels_id")) { $model->getFromDB($item->getField("computermodels_id")); $model = $model->getName(); if (! empty($model)) { $toadd[] = array('name' => __('Model'), 'value' => nl2br($model)); } } $state = new State(); $state->getFromDB($item->fields["states_id"]); $state = $state->getName(); if (! empty($state)) { $toadd[] = array('name' => __('State'), 'value' => nl2br($state)); } $entity = new Entity(); $entity->getFromDB($item->fields["entities_id"]); $entity = $entity->getName(); if (! empty($entity)) { $toadd[] = array('name' => __('Entity'), 'value' => nl2br($entity)); } $location = new Location(); $location->getFromDB($item->fields["locations_id"]); $location = $location->getName(array('complete' => true)); if (! empty($location)) { $toadd[] = array('name' => __('Location'), 'value' => nl2br($location)); } if (! empty($item->fields["serial"])) { $toadd[] = array('name' => __('Serial'), 'value' => nl2br($item->fields["serial"])); } if (! empty($item->fields["otherserial"])) { $toadd[] = array('name' => __('Inventory number'), 'value' => nl2br($item->fields["otherserial"])); } if (($pm_Host instanceof CommonDropdown) && $pm_Host->isField('comment')) { $toadd[] = array('name' => __('Comments'), 'value' => nl2br($pm_Host->getField('comment'))); } if (count($toadd)) { foreach ($toadd as $data) { $comment .= sprintf(__('%1$s: %2$s')."<br>", "<span class='b'>".$data['name'], "</span>".$data['value']); } } } else { $toadd[] = array('name' => __('Host type'), 'value' => nl2br($item->getTypeName())); if ($item->isField('completename')) { $toadd[] = array('name' => __('Complete name'), 'value' => nl2br($item->getField('completename'))); } } if (!empty($comment)) { return Html::showToolTip($comment, array('display' => false)); } }
public function signup() { $firstname = Input::get('firstname'); $lastname = Input::get('lastname'); $username = Input::get('username'); $email = Input::get('email'); $password = Input::get('password'); $cpassword = Input::get('confirmpassword'); $at = Input::get('accounttype'); $parentusername = Input::get('parentusername'); $contact = Input::get('contact'); $picture = ""; if ($password == $cpassword) { //check if username is already in database $user_check = UserModel::where('username', '=', $username)->first(); if ($user_check == "") { $userid = bin2hex(mcrypt_create_iv(22, MCRYPT_DEV_URANDOM)) . "=" . $username . "+" . $at; if ($at == "Parent") { if (Input::hasFile('file')) { //upload profile picture and set filename to a variale to save to db $file = Input::file('file'); $filename = bin2hex(mcrypt_create_iv(10, MCRYPT_DEV_URANDOM)) . "" . $username . "-" . $file->getClientOriginalName(); $file->move('public/profilepics', $filename); $picture = $filename; } else { //set picture to null $picture = "images/user.png"; } //save as parent account //$pw=Hash::make($password); $pw = md5($password); $user = new UserModel(); $user->userid = $userid; $user->firstname = $firstname; $user->lastname = $lastname; $user->username = $username; $user->password = $pw; $user->email = $email; $user->contact = $contact; $user->accttype = $at; $user->picture = $picture; $user->occupation = 'Please specify'; $user->gender = 'Please specify'; $user->birthday = 'Please specify'; $user->city = 'Please specify'; $user->home = 'Please specify'; $user->save(); $parentid = bin2hex(mcrypt_create_iv(10, MCRYPT_DEV_URANDOM)) . "+" . $userid; $membership = ""; $membership_status = ""; $parent = new ParentModel(); $parent->userid = $userid; $parent->parentid = $parentid; $parent->membership = $membership; $parent->membership_status = $membership_status; $parent->save(); $message = "Parent Registration Successful!"; return View::make('content.entry')->with('message', $message)->with('background', '#A9F5A9')->with('sets', $this->sets); } elseif ($at == "Child") { $temp_at = ""; //setting $temp_at as null in default. //check if parentusername in database $user = UserModel::where('username', '=', $parentusername)->first(); $temp_at = $user['accttype']; if ($temp_at == "" or $temp_at == "Child") { //return Redirect::intended('http://localhost:8000/#toregister'); $return_sets = array('firstname' => $firstname, 'lastname' => $lastname, 'username' => $username, 'email' => $email, 'contact' => $contact); //return Redirect::to('http://localhost:8000/#toregister')->with('message', 'Parent Username not found!')->with('sets', $return_sets); return Redirect::intended('http://localhost:8000/#toregister')->with('message', 'Parent Username not found!')->with('sets', $return_sets); } else { if (Input::hasFile('file')) { //upload profile picture and set filename to a variale to save to db $file = Input::file('file'); $filename = bin2hex(mcrypt_create_iv(10, MCRYPT_DEV_URANDOM)) . "" . $username . "-" . $file->getClientOriginalName(); $file->move('public/profilepics', $filename); $picture = $filename; } else { //set picture to null $picture = "images/user.png"; } $pw = md5($password); //For User Database $user = new UserModel(); $user->userid = $userid; $user->firstname = $firstname; $user->lastname = $lastname; $user->username = $username; $user->password = $pw; $user->email = $email; $user->contact = $contact; $user->accttype = $at; $user->picture = $picture; $user->occupation = 'Please specify'; $user->gender = 'Please specify'; $user->birthday = 'Please specify'; $user->city = 'Please specify'; $user->home = 'Please specify'; $user->save(); $childid = bin2hex(mcrypt_create_iv(15, MCRYPT_DEV_URANDOM)) . "+" . $userid; $computerid = bin2hex(mcrypt_create_iv(10, MCRYPT_DEV_URANDOM)) . "computer" . bin2hex(mcrypt_create_iv(10, MCRYPT_DEV_URANDOM)) . "*" . $username; $status = ""; //For Child database $child = new ChildModel(); $child->userid = $userid; $child->childid = $childid; $child->computerid = $computerid; $child->parentusername = $parentusername; $child->status = $status; $child->save(); //For Computer Database $os_username = ""; $domain_name = ""; $sid = ""; $computer = new ComputerModel(); $computer->computerid = $computerid; $computer->username = $os_username; $computer->domainname = $domain_name; $computer->sid = $sid; $computer->save(); $message = "Parent Registration Successful!"; return View::make('content.entry')->with('message', $message)->with('background', '#A9F5A9')->with('sets', $this->sets); } } //end of elseif(child) } elseif ($user_check != "") { $return_sets = array('firstname' => $firstname, 'lastname' => $lastname, 'username' => $username, 'email' => $email, 'contact' => $contact); return Redirect::intended('http://localhost:8000/#toregister')->with('message', 'Username is already taken!')->with('sets', $return_sets); } } //end of if($password=$cpassword) }
/** * Print the computer form * * @param $ID integer ID of the item * @param $options array * - target for the Form * - withtemplate template or basic computer * *@return Nothing (display) **/ function showForm($ID, $options = array()) { global $CFG_GLPI, $DB; $this->initForm($ID, $options); $this->showFormHeader($options); echo "<tr class='tab_bg_1'>"; //TRANS: %1$s is a string, %2$s a second one without spaces between them : to change for RTL echo "<td>" . sprintf(__('%1$s%2$s'), __('Name'), isset($options['withtemplate']) && $options['withtemplate'] ? "*" : "") . "</td>"; echo "<td>"; $objectName = autoName($this->fields["name"], "name", isset($options['withtemplate']) && $options['withtemplate'] == 2, $this->getType(), $this->fields["entities_id"]); Html::autocompletionTextField($this, 'name', array('value' => $objectName)); echo "</td>"; echo "<td>" . __('Status') . "</td>"; echo "<td>"; State::dropdown(array('value' => $this->fields["states_id"], 'entity' => $this->fields["entities_id"], 'condition' => "`is_visible_computer`")); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Location') . "</td>"; echo "<td>"; Location::dropdown(array('value' => $this->fields["locations_id"], 'entity' => $this->fields["entities_id"])); echo "</td>"; echo "<td>" . __('Type') . "</td>"; echo "<td>"; ComputerType::dropdown(array('value' => $this->fields["computertypes_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Technician in charge of the hardware') . "</td>"; echo "<td>"; User::dropdown(array('name' => 'users_id_tech', 'value' => $this->fields["users_id_tech"], 'right' => 'own_ticket', 'entity' => $this->fields["entities_id"])); echo "</td>"; echo "<td>" . __('Manufacturer') . "</td>"; echo "<td>"; Manufacturer::dropdown(array('value' => $this->fields["manufacturers_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Group in charge of the hardware') . "</td>"; echo "<td>"; Group::dropdown(array('name' => 'groups_id_tech', 'value' => $this->fields['groups_id_tech'], 'entity' => $this->fields['entities_id'], 'condition' => '`is_assign`')); echo "</td>"; echo "<td>" . __('Model') . "</td>"; echo "<td>"; ComputerModel::dropdown(array('value' => $this->fields["computermodels_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; //TRANS: Number of the alternate username echo "<td>" . __('Alternate username number') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'contact_num'); echo "</td>"; echo "<td>" . __('Serial number') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'serial'); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Alternate username') . "</td>"; echo "<td>"; Html::autocompletionTextField($this, 'contact'); echo "</td>"; echo "<td>" . sprintf(__('%1$s%2$s'), __('Inventory number'), isset($options['withtemplate']) && $options['withtemplate'] ? "*" : "") . "</td>"; echo "<td>"; $objectName = autoName($this->fields["otherserial"], "otherserial", isset($options['withtemplate']) && $options['withtemplate'] == 2, $this->getType(), $this->fields["entities_id"]); Html::autocompletionTextField($this, 'otherserial', array('value' => $objectName)); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('User') . "</td>"; echo "<td>"; User::dropdown(array('value' => $this->fields["users_id"], 'entity' => $this->fields["entities_id"], 'right' => 'all')); echo "</td>"; echo "<td>" . __('Network') . "</td>"; echo "<td>"; Network::dropdown(array('value' => $this->fields["networks_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Group') . "</td>"; echo "<td>"; Group::dropdown(array('value' => $this->fields["groups_id"], 'entity' => $this->fields["entities_id"], 'condition' => '`is_itemgroup`')); echo "</td>"; // Display auto inventory informations $rowspan = 4; echo "<td rowspan='{$rowspan}'>" . __('Comments') . "</td>"; echo "<td rowspan='{$rowspan}' class='middle'>"; echo "<textarea cols='45' rows='" . ($rowspan + 3) . "' name='comment' >" . $this->fields["comment"]; echo "</textarea></td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Domain') . "</td>"; echo "<td >"; Domain::dropdown(array('value' => $this->fields["domains_id"], 'entity' => $this->fields["entities_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('UUID') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'uuid'); echo "</td>"; echo "</tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Update Source') . "</td>"; echo "<td >"; AutoUpdateSystem::dropdown(array('value' => $this->fields["autoupdatesystems_id"])); echo "</td></tr>"; // Display auto inventory informations if (!empty($ID) && Plugin::haveImport() && $this->fields["is_dynamic"]) { echo "<tr class='tab_bg_1'><td colspan='4'>"; Plugin::doHook("autoinventory_information", $this); echo "</td></tr>"; } $this->showFormButtons($options); return true; }
/** * @test */ public function prepareDB() { global $DB; $DB->connect(); $_SESSION['glpiactive_entity'] = 0; $_SESSION["plugin_fusioninventory_entity"] = 0; $_SESSION["glpiname"] = 'Plugin_FusionInventory'; $rule = new Rule(); $ruleCriteria = new RuleCriteria(); $ruleAction = new RuleAction(); // * computer model assign $input = array('entities_id' => 0, 'sub_type' => 'PluginFusioninventoryCollectRule', 'name' => 'computer model', 'match' => 'AND'); $rules_id = $rule->add($input); $input = array('rules_id' => $rules_id, 'criteria' => 'filename', 'condition' => 6, 'pattern' => "/latitude(.*)/"); $ruleCriteria->add($input); $input = array('rules_id' => $rules_id, 'action_type' => 'assign', 'field' => 'computermodels_id', 'value' => 1); $this->ruleactions_id = $ruleAction->add($input); // * computer model regex $input = array('entities_id' => 0, 'sub_type' => 'PluginFusioninventoryCollectRule', 'name' => 'computer model 2', 'match' => 'AND'); $rules_id = $rule->add($input); $input = array('rules_id' => $rules_id, 'criteria' => 'filename', 'condition' => 6, 'pattern' => "/longitude(.*)/"); $ruleCriteria->add($input); $input = array('rules_id' => $rules_id, 'action_type' => 'regex_result', 'field' => 'computermodels_id', 'value' => '#0'); $this->ruleactions_id = $ruleAction->add($input); // * user regex $input = array('entities_id' => 0, 'sub_type' => 'PluginFusioninventoryCollectRule', 'name' => 'user', 'match' => 'AND'); $rules_id = $rule->add($input); $input = array('rules_id' => $rules_id, 'criteria' => 'filename', 'condition' => 6, 'pattern' => "/user (.*)/"); $ruleCriteria->add($input); $input = array('rules_id' => $rules_id, 'action_type' => 'regex_result', 'field' => 'user', 'value' => '#0'); $this->ruleactions_id = $ruleAction->add($input); // * softwareversion regex $input = array('entities_id' => 0, 'sub_type' => 'PluginFusioninventoryCollectRule', 'name' => 'softwareversion 3.0', 'match' => 'AND'); $rules_id = $rule->add($input); $input = array('rules_id' => $rules_id, 'criteria' => 'filename', 'condition' => 6, 'pattern' => "/version (.*)/"); $ruleCriteria->add($input); $input = array('rules_id' => $rules_id, 'action_type' => 'regex_result', 'field' => 'softwareversion', 'value' => '#0'); $this->ruleactions_id = $ruleAction->add($input); // * otherserial regex $input = array('entities_id' => 0, 'sub_type' => 'PluginFusioninventoryCollectRule', 'name' => 'otherserial', 'match' => 'AND'); $rules_id = $rule->add($input); $input = array('rules_id' => $rules_id, 'criteria' => 'filename', 'condition' => 6, 'pattern' => "/other (.*)/"); $ruleCriteria->add($input); $input = array('rules_id' => $rules_id, 'action_type' => 'regex_result', 'field' => 'otherserial', 'value' => '#0'); $this->ruleactions_id = $ruleAction->add($input); // * otherserial regex $input = array('entities_id' => 0, 'sub_type' => 'PluginFusioninventoryCollectRule', 'name' => 'otherserial assign', 'match' => 'AND'); $rules_id = $rule->add($input); $input = array('rules_id' => $rules_id, 'criteria' => 'filename', 'condition' => 6, 'pattern' => "/serial (.*)/"); $ruleCriteria->add($input); $input = array('rules_id' => $rules_id, 'action_type' => 'assign', 'field' => 'otherserial', 'value' => 'ttuujj'); $this->ruleactions_id = $ruleAction->add($input); // * create items $computerModel = new ComputerModel(); $input = array('name' => '6430u'); $computerModel->add($input); }
/** * Print the computer form * * @param $ID integer ID of the item * @param $options array * - target for the Form * - withtemplate template or basic computer * *@return Nothing (display) **/ function showForm($ID, $options = array()) { global $CFG_GLPI, $DB; $this->initForm($ID, $options); $this->showFormHeader($options); echo "<tr class='tab_bg_1'>"; //TRANS: %1$s is a string, %2$s a second one without spaces between them : to change for RTL echo "<td>" . sprintf(__('%1$s%2$s'), __('Name'), isset($options['withtemplate']) && $options['withtemplate'] ? "*" : "") . "</td>"; echo "<td>"; $objectName = autoName($this->fields["name"], "name", isset($options['withtemplate']) && $options['withtemplate'] == 2, $this->getType(), $this->fields["entities_id"]); Html::autocompletionTextField($this, 'name', array('value' => $objectName)); echo "</td>"; echo "<td>" . __('Status') . "</td>"; echo "<td>"; State::dropdown(array('value' => $this->fields["states_id"], 'entity' => $this->fields["entities_id"], 'condition' => "`is_visible_computer`")); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Location') . "</td>"; echo "<td>"; Location::dropdown(array('value' => $this->fields["locations_id"], 'entity' => $this->fields["entities_id"])); echo "</td>"; echo "<td>" . __('Type') . "</td>"; echo "<td>"; ComputerType::dropdown(array('value' => $this->fields["computertypes_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Technician in charge of the hardware') . "</td>"; echo "<td>"; User::dropdown(array('name' => 'users_id_tech', 'value' => $this->fields["users_id_tech"], 'right' => 'own_ticket', 'entity' => $this->fields["entities_id"])); echo "</td>"; echo "<td>" . __('Manufacturer') . "</td>"; echo "<td>"; Manufacturer::dropdown(array('value' => $this->fields["manufacturers_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Group in charge of the hardware') . "</td>"; echo "<td>"; Group::dropdown(array('name' => 'groups_id_tech', 'value' => $this->fields['groups_id_tech'], 'entity' => $this->fields['entities_id'], 'condition' => '`is_assign`')); echo "</td>"; echo "<td>" . __('Model') . "</td>"; echo "<td>"; ComputerModel::dropdown(array('value' => $this->fields["computermodels_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; //TRANS: Number of the alternate username echo "<td>" . __('Alternate username number') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'contact_num'); echo "</td>"; echo "<td>" . __('Serial number') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'serial'); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Alternate username') . "</td>"; echo "<td>"; Html::autocompletionTextField($this, 'contact'); echo "</td>"; echo "<td>" . sprintf(__('%1$s%2$s'), __('Inventory number'), isset($options['withtemplate']) && $options['withtemplate'] ? "*" : "") . "</td>"; echo "<td>"; $objectName = autoName($this->fields["otherserial"], "otherserial", isset($options['withtemplate']) && $options['withtemplate'] == 2, $this->getType(), $this->fields["entities_id"]); Html::autocompletionTextField($this, 'otherserial', array('value' => $objectName)); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('User') . "</td>"; echo "<td>"; User::dropdown(array('value' => $this->fields["users_id"], 'entity' => $this->fields["entities_id"], 'right' => 'all')); echo "</td>"; echo "<td>" . __('Network') . "</td>"; echo "<td>"; Network::dropdown(array('value' => $this->fields["networks_id"])); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Group') . "</td>"; echo "<td>"; Group::dropdown(array('value' => $this->fields["groups_id"], 'entity' => $this->fields["entities_id"], 'condition' => '`is_itemgroup`')); echo "</td>"; // Display auto inventory informations $rowspan = 7; $inventory_show = false; if (!empty($ID) && Plugin::haveImport() && $this->fields["is_dynamic"]) { $inventory_show = true; $rowspan -= 5; } echo "<td rowspan='{$rowspan}'>" . __('Comments') . "</td>"; echo "<td rowspan='{$rowspan}' class='middle'>"; echo "<textarea cols='45' rows='" . ($rowspan + 3) . "' name='comment' >" . $this->fields["comment"]; echo "</textarea></td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Domain') . "</td>"; echo "<td >"; Domain::dropdown(array('value' => $this->fields["domains_id"], 'entity' => $this->fields["entities_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Operating system') . "</td>"; echo "<td>"; OperatingSystem::dropdown(array('value' => $this->fields["operatingsystems_id"])); echo "<br /><a href='#' id='toggle_os_information'>" . __("More information") . "</a>"; echo "</td>"; if ($inventory_show) { echo "<td rowspan='4' colspan='2'>"; Plugin::doHook("autoinventory_information", $this); echo "</td>"; } echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Version of the operating system') . "</td>"; echo "<td >"; OperatingSystemVersion::dropdown(array('value' => $this->fields["operatingsystemversions_id"])); echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'><td colspan='2'>"; echo Html::scriptBlock("\n \$(document).ready(function(){\n \$('#os_information').hide();\n\n \$('#toggle_os_information').on('click',function() {\n \$('#os_information').dialog({\n width:'auto',\n resizable: false,\n appendTo: '#os_information_parent',\n position: {\n my : 'left top',\n at : 'left bottom',\n of: \$('#toggle_os_information')\n }\n })\n })\n });"); // group os advanced information in a single bloc (who can be toggled) echo "<div id='os_information_parent'>"; echo "<div id='os_information' title=\"" . __('Operating system') . "\">"; echo "<table>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Service pack') . "</td>"; echo "<td >"; OperatingSystemServicePack::dropdown(array('value' => $this->fields["operatingsystemservicepacks_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Operating system architecture') . "</td>"; echo "<td >"; OperatingSystemArchitecture::dropdown(array('value' => $this->fields["operatingsystemarchitectures_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Kernel version of the operating system') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'os_kernel_version'); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Product ID of the operating system') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'os_licenseid'); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Serial of the operating system') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'os_license_number'); echo "</td>"; echo "</table>"; echo "</div>"; echo "</div>"; echo "</td>"; echo "</tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('UUID') . "</td>"; echo "<td >"; Html::autocompletionTextField($this, 'uuid'); echo "</td>"; echo "</tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Update Source') . "</td>"; echo "<td >"; AutoUpdateSystem::dropdown(array('value' => $this->fields["autoupdatesystems_id"])); echo "</td></tr>"; $this->showFormButtons($options); return true; }
function CreateComputerDropdownList() { $computerModel = new ComputerModel(); $result = "<form action = '' method = 'post' width = '200px'>\n Please select a type: \n <select name = 'types' >\n <option value = '%' >All</option>\n " . $this->CreateOptionValues($computerModel->GetComputerDescription()) . "</select>\n <input type = 'submit' value = 'Search' />\n </form>"; return $result; }