/** * @param $port NetworkPort object **/ static function showForNetworkPort(NetworkPort $port) { global $DB, $CFG_GLPI; $ID = $port->getID(); if (!$port->can($ID, READ)) { return false; } $canedit = $port->canEdit($ID); $rand = mt_rand(); $query = "SELECT `glpi_networkports_vlans`.id as assocID,\n `glpi_networkports_vlans`.tagged ,\n `glpi_vlans`.*\n FROM `glpi_networkports_vlans`\n LEFT JOIN `glpi_vlans`\n ON (`glpi_networkports_vlans`.`vlans_id` = `glpi_vlans`.`id`)\n WHERE `networkports_id` = '{$ID}'"; $result = $DB->query($query); $vlans = array(); $used = array(); if ($number = $DB->numrows($result)) { while ($line = $DB->fetch_assoc($result)) { $used[$line["id"]] = $line["id"]; $vlans[$line["assocID"]] = $line; } } if ($canedit) { echo "<div class='firstbloc'>\n"; echo "<form method='post' action='" . static::getFormURL() . "'>\n"; echo "<table class='tab_cadre_fixe'>\n"; echo "<tr><th colspan='4'>" . __('Associate a VLAN') . "</th></tr>"; echo "<tr class='tab_bg_1'><td class='right'>"; echo "<input type='hidden' name='networkports_id' value='{$ID}'>"; Vlan::dropdown(array('used' => $used)); echo "</td>"; echo "<td class='right'>" . __('Tagged') . "</td>"; echo "<td class='left'><input type='checkbox' name='tagged' value='1'></td>"; echo "<td><input type='submit' name='add' value='" . _sx('button', 'Associate') . "' class='submit'>"; echo "</td></tr>\n"; echo "</table>\n"; Html::closeForm(); echo "</div>\n"; } echo "<div class='spaced'>"; if ($canedit && $number) { Html::openMassiveActionsForm('mass' . __CLASS__ . $rand); $massiveactionparams = array('num_displayed' => $number, 'container' => 'mass' . __CLASS__ . $rand); Html::showMassiveActions($massiveactionparams); } echo "<table class='tab_cadre_fixehov'>"; $header_begin = "<tr>"; $header_top = ''; $header_bottom = ''; $header_end = ''; if ($canedit && $number) { $header_top .= "<th width='10'>"; $header_top .= Html::getCheckAllAsCheckbox('mass' . __CLASS__ . $rand) . "</th>"; $header_bottom .= "<th width='10'>"; $header_bottom .= Html::getCheckAllAsCheckbox('mass' . __CLASS__ . $rand) . "</th>"; } $header_end .= "<th>" . __('Name') . "</th>"; $header_end .= "<th>" . __('Entity') . "</th>"; $header_end .= "<th>" . __('Tagged') . "</th>"; $header_end .= "<th>" . __('ID TAG') . "</th>"; $header_end .= "</tr>"; echo $header_begin . $header_top . $header_end; $used = array(); foreach ($vlans as $data) { echo "<tr class='tab_bg_1'>"; if ($canedit) { echo "<td>"; Html::showMassiveActionCheckBox(__CLASS__, $data["assocID"]); echo "</td>"; } $name = $data["name"]; if ($_SESSION["glpiis_ids_visible"] || empty($data["name"])) { $name = sprintf(__('%1$s (%2$s)'), $name, $data["id"]); } echo "<td class='center b'>\n <a href='" . $CFG_GLPI["root_doc"] . "/front/vlan.form.php?id=" . $data["id"] . "'>" . $name . "</a>"; echo "</td>"; echo "<td class='center'>" . Dropdown::getDropdownName("glpi_entities", $data["entities_id"]); echo "</td><td class='center'>" . Dropdown::getYesNo($data["tagged"]) . "</td>"; echo "<td class='numeric'>" . $data["tag"] . "</td>"; echo "</tr>"; } if ($number) { echo $header_begin . $header_top . $header_end; } echo "</table>"; if ($canedit && $number) { $massiveactionparams['ontop'] = false; Html::showMassiveActions($massiveactionparams); Html::closeForm(); } echo "</div>"; }
/** * @see CommonDBTM::showSpecificMassiveActionsParameters() **/ function showSpecificMassiveActionsParameters($input = array()) { switch ($input['action']) { case "assign_vlan": Vlan::dropdown(); echo " " . __('Tagged') . " <input type='checkbox' name='tagged' value='1'>"; echo " <input type='submit' name='assign_vlan' class='submit' value='" . __s('Associate') . "'>"; return true; case "unassign_vlan": Vlan::dropdown(); echo " <input type='submit' name='unassign_vlan' class='submit' value='" . __s('Dissociate') . "'>"; return true; case "move_port": Dropdown::show('NetworkEquipment', array('name' => 'items_id')); echo " <input type='submit' name='move' class='submit' value=\"" . __s('Move') . "\">"; return true; default: return parent::showSpecificMassiveActionsParameters($input); } return false; }
function showForm($ID, $options = array()) { $this->initForm($ID, $options); $this->showTabs($options); $this->showFormHeader($options); echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Name') . "</td>"; echo "<td>"; Html::autocompletionTextField($this, "name"); echo "</td>"; echo "<td>" . __('State') . "</td><td>"; State::dropdown(array('name' => "states_id", 'value' => $this->fields["states_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Location') . "</td><td>"; $this->dropdownLocation($this, $ID); echo "</td>"; echo "<td>" . __('Group') . "</td><td>"; Group::dropdown(array('name' => "groups_id", 'value' => $this->fields["groups_id"], 'entity' => $this->fields["entities_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Childs', 'archires') . "</td>"; echo "<td>"; Dropdown::showYesNo("child", $this->fields["child"]); echo "</td>"; echo "<td>" . __('VLAN') . "</td><td>"; Vlan::dropdown(array('name' => "vlans_id", 'value' => $this->fields["vlans_id"])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Network') . "</td><td>"; Network::dropdown(array('name' => "networks_id", 'value' => $this->fields["networks_id"])); echo "</td>"; echo "<td>" . PluginArchiresView::getTypeName(1) . "</td><td>"; //View Dropdown::show('PluginArchiresView', array('name' => "plugin_archires_views_id", 'value' => $this->fields["plugin_archires_views_id"])); echo "</td></tr>"; $this->showFormButtons($options); $this->addDivForTabs(); return true; }