static function displayInvalidList() { global $DB; $query = "SELECT DISTINCT `TYPE`\n FROM `glpi_plugin_ocsinventoryng_networkports`"; $type_results = $DB->request($query); echo "<br>\n<div class ='center'><table class='tab_cadrehov'>"; if ($type_results->numrows() > 0) { echo "<tr class='tab_bg_2'><th colspan='4'>" . self::getTypeName(2) . "</th></tr>"; foreach ($type_results as $type) { $query = "SELECT `TYPEMIB`, `TYPE`,\n GROUP_CONCAT(DISTINCT `speed` SEPARATOR '#') AS speed\n FROM `glpi_plugin_ocsinventoryng_networkports`\n WHERE `TYPE` = '" . $type['TYPE'] . "'\n GROUP BY `TYPEMIB`"; $typemib_results = $DB->request($query); echo "<tr class='tab_bg_1'>"; echo "<td rowspan='" . $typemib_results->numrows() . "'>" . self::getTextualType($type['TYPE']) . "</td>"; $first = True; foreach ($typemib_results as $typemib) { if (!$first) { echo "<tr class='tab_bg_1'>"; } else { $first = False; } echo "<td>" . self::getTextualType($typemib['TYPEMIB']) . "</td>"; // Normalize speeds ... $speeds = array(); foreach (explode('#', $typemib['speed']) as $speed) { $speed = NetworkPortEthernet::transformPortSpeed($speed, false); if ($speed !== false and !in_array($speed, $speeds)) { $speeds[] = $speed; } } asort($speeds); $printable_speeds = array(); foreach ($speeds as $speed) { $printable_speeds[] = NetworkPortEthernet::transformPortSpeed($speed, true); } $typemib['speed'] = implode(', ', $printable_speeds); echo "<td>" . $typemib['speed'] . "</td>"; echo "<td>" . PluginOcsinventoryngNetworkPortType::getLinkToCreateFromTypeAndTypeMIB($typemib) . "</td>"; echo "</tr>"; } } } else { echo "<tr class='tab_bg_2'><th>" . __('No unknown network port type from OCS !', 'ocsinventoryng') . "</th></tr>"; } echo "</table></div>"; }