Computer::showForm PHP Method

showForm() public method

Print the computer form
public showForm ( $ID, $options = [] ) : Nothing
$ID integer ID of the item
$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;
    }

Usage Example

Exemplo n.º 1
0
            $computer->check($_POST['id'], 'd');
            if ($computer->restore($_POST)) {
                Event::log($_POST["id"], "computers", 4, "inventory", sprintf(__('%s restores an item'), $_SESSION["glpiname"]));
            }
            $computer->redirectToList();
        } else {
            if (isset($_POST["purge"])) {
                $computer->check($_POST['id'], 'd');
                if ($computer->delete($_POST, 1)) {
                    Event::log($_POST["id"], "computers", 4, "inventory", sprintf(__('%s purges an item'), $_SESSION["glpiname"]));
                }
                $computer->redirectToList();
                //update a computer
            } else {
                if (isset($_POST["update"])) {
                    $computer->check($_POST['id'], 'w');
                    $computer->update($_POST);
                    Event::log($_POST["id"], "computers", 4, "inventory", sprintf(__('%s updates an item'), $_SESSION["glpiname"]));
                    Html::back();
                    // Disconnect a computer from a printer/monitor/phone/peripheral
                } else {
                    //print computer information
                    Html::header(Computer::GetTypeName(2), $_SERVER['PHP_SELF'], "inventory", "computer");
                    //show computer form to add
                    $computer->showForm($_GET["id"], array('withtemplate' => $_GET["withtemplate"]));
                    Html::footer();
                }
            }
        }
    }
}