function showAdvancedForm($ID, $options = array()) { if ($ID > 0) { $this->check($ID, READ); } else { // Create item $this->check(-1, UPDATE); $this->getEmpty(); echo Html::hidden('step', array('value' => 1)); } echo "<form name='form' method='post' action='" . Toolbox::getItemTypeFormURL(__CLASS__) . "'>"; echo "<div class='center' id='tabsbody'>"; echo "<table class='tab_cadre_fixe'>"; echo "<tr><th colspan='2'>" . self::getTypeName() . "</th>"; echo "<th colspan='2'>" . PluginDatainjectionDropdown::getStatusLabel($this->fields['step']) . "</th></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td><input type='hidden' name='users_id' value='" . Session::getLoginUserID() . "'>" . __('Name') . "</td>"; echo "<td>"; Html::autocompletionTextField($this, "name"); echo "</td>"; echo "<td colspan='2'></td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td colspan='4' class='center'>"; Dropdown::showPrivatePublicSwitch($this->fields["is_private"], $this->fields["entities_id"], $this->fields["is_recursive"]); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Comments') . "</td>"; echo "<td colspan='3' class='middle'>"; echo "<textarea cols='45' rows='5' name='comment' >" . $this->fields["comment"] . "</textarea>"; echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Type of datas to import', 'datainjection') . "</td>"; echo "<td>"; if ($this->fields['step'] == '' || $this->fields['step'] == self::INITIAL_STEP) { //Get only the primary types PluginDatainjectionInjectionType::dropdown($this->fields['itemtype'], true); } else { $itemtype = new $this->fields['itemtype'](); echo $itemtype->getTypeName(); } echo "</td><td colspan='2'></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Allow lines creation', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showYesNo("behavior_add", $this->fields['behavior_add']); echo "</td><td>" . __('Allow lines update', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showYesNo("behavior_update", $this->fields['behavior_update']); echo "</td></tr>"; echo "<tr class='tab_bg_1'><th colspan='4'>" . __('Advanced options', 'datainjection') . "</th></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Allow creation of dropdowns', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showYesNo("can_add_dropdown", $this->fields['can_add_dropdown']); echo "</td>"; echo "<td>" . __('Dates format', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showFromArray('date_format', PluginDatainjectionDropdown::dateFormats(), array('value' => $this->fields['date_format'])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Allow update of existing fields', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showYesNo("can_overwrite_if_not_empty", $this->fields['can_overwrite_if_not_empty']); echo "</td>"; echo "<td>" . __('Float format', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showFromArray('float_format', PluginDatainjectionDropdown::floatFormats(), array('value' => $this->fields['float_format'])); echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Try to establish network connection is possible', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showYesNo("perform_network_connection", $this->fields['perform_network_connection']); echo "</td>"; echo "<td>" . __('Port unicity criteria', 'datainjection') . "</td>"; echo "<td>"; Dropdown::showFromArray('port_unicity', PluginDatainjectionDropdown::portUnicityValues(), array('value' => $this->fields['port_unicity'])); echo "</td></tr>"; if ($ID > 0) { $tmp = self::getInstance('csv'); $tmp->showAdditionnalForm($this); } $this->showFormButtons($options); return true; }
/** * @param $options array **/ static function showUploadFileForm($options = array()) { $add_form = isset($options['add_form']) && $options['add_form']; $confirm = isset($options['confirm']) && $options['confirm']; $url = $confirm == 'creation' ? Toolbox::getItemTypeFormURL('PluginDatainjectionModel') : Toolbox::getItemTypeFormURL(__CLASS__); if ($add_form) { echo "<form method='post' name='form' action='" . $url . "' enctype='multipart/form-data'>"; } echo "<table class='tab_cadre_fixe'>"; //Show file selection echo "<tr><th colspan='2'>" . __('File to inject', 'datainjection') . "</th></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('Choose a file', 'datainjection') . "</td>"; echo "<td><input type='file' name='filename'>"; echo "<input type='hidden' name='id' value='" . $options['models_id'] . "'>"; echo "</td></tr>"; echo "<tr class='tab_bg_1'>"; echo "<td>" . __('File encoding', 'datainjection') . "</td><td>"; PluginDatainjectionDropdown::dropdownFileEncoding(); echo "</td></tr>\n"; echo "<tr class='tab_bg_1'>"; echo "<td colspan='2' class='center'>"; if ($confirm) { if ($confirm == 'creation') { $message = __('Warning : existing data will be overridden', 'datainjection'); } else { $message = __("Watch out, you're about to inject datas into GLPI. Are you sure you want to do it ?", 'datainjection'); } $alert = "OnClick='return window.confirm(\"{$message}\");'"; } if (!isset($options['submit'])) { $options['submit'] = __('Launch the import', 'datainjection'); } echo "<input type='submit' class='submit' name='upload' value='" . htmlentities($options['submit'], ENT_QUOTES, 'UTF-8') . "' {$alert}>"; echo " <input type='submit' class='submit' name='cancel' value=\"" . _sx('button', 'Cancel') . "\">"; echo "</td></tr>\n"; echo "</table><br>"; if ($add_form) { Html::closeForm(); } }