/** * @param $model PluginDatainjectionModel object **/ static function showAdditionalInformationsForm(PluginDatainjectionModel $model) { $infos = getAllDatasFromTable('glpi_plugin_datainjection_infos', "`models_id` = '" . $model->getField('id') . "'"); $table = false; $modeltype = PluginDatainjectionModel::getInstance($model->getField('filetype')); $modeltype->getFromDBByModelID($model->getField('id')); if (count($infos) || $modeltype->haveSample() || $model->fields['comment']) { echo "<table class='tab_cadre_fixe'>"; echo "<tr><th colspan='2'>" . sprintf(__('%1$s (%2$s)'), __('Complementary information', 'datainjection'), __('Choose a file', 'datainjection')); echo "</th></tr>\n"; $table = true; } if ($modeltype->haveSample()) { echo "<tr class='tab_bg_1'>"; echo "<td colspan='2' class='center'>"; echo "<a href='" . $model->getFormURL() . "?sample="; echo $model->getField('id') . "' class='vsubmit'>" . __('Download file sample', 'datainjection'); echo "</a></td></tr>\n"; } if ($model->fields['comment']) { echo "<tr class='tab_bg_2'>"; echo "<td colspan='2' class='center'>" . nl2br($model->fields['comment']) . "</td></tr>\n"; } if (count($infos)) { $info = new PluginDatainjectionInfo(); foreach ($infos as $tmp) { $info->fields = $tmp; echo "<tr class='tab_bg_1'>"; self::displayAdditionalInformation($info, isset($_SESSION['datainjection']['infos']) ? $_SESSION['datainjection']['infos'] : array()); echo "</tr>"; } } if ($table) { echo "</table><br>"; } $options['models_id'] = $model->getField('id'); $options['confirm'] = 'process'; PluginDatainjectionClientInjection::showUploadFileForm($options); //Store models_id in session for future usage $_SESSION['datainjection']['models_id'] = $model->getField('id'); }
static function displayTabContentForItem(CommonGLPI $item, $tabnum = 1, $withtemplate = 0) { if ($item->getType() == __CLASS__) { switch ($tabnum) { case 1: $item->showAdvancedForm($item->getID()); break; case 3: $options['confirm'] = 'creation'; $options['models_id'] = $item->fields['id']; $options['add_form'] = true; $options['submit'] = __('Load this file', 'datainjection'); PluginDatainjectionClientInjection::showUploadFileForm($options); break; case 4: PluginDatainjectionMapping::showFormMappings($item); break; case 5: if ($item->fields['step'] > self::MAPPING_STEP) { PluginDatainjectionInfo::showFormInfos($item); } break; case 6: if ($item->fields['step'] > self::MAPPING_STEP) { $item->showValidationForm(); } break; } } return true; }