Esempio n. 1
0
 /**
  * Add additonal informations, as selected by the user which performs the CSV file import
  *
  * @return additional informations to inject
  **/
 function addAdditionalInformations()
 {
     $additional_infos = array();
     foreach ($this->model->getInfos() as $info) {
         if (isset($this->infos[$info->getValue()]) && PluginDatainjectionInfo::keepInfo($info, $this->infos[$info->getValue()])) {
             $additional_infos[$info->getInfosType()][$info->getValue()] = $this->infos[$info->getValue()];
         }
     }
     return $additional_infos;
 }
Esempio n. 2
0
 /**
  * @param $info      PluginDatainjectionInfo object
  * @param $value
  **/
 static function keepInfo(PluginDatainjectionInfo $info, $value)
 {
     $itemtype = $info->getInfosType();
     $injectionClass = PluginDatainjectionCommonInjectionLib::getInjectionClassInstance($itemtype);
     $options = $injectionClass->getOptions($itemtype);
     $option = PluginDatainjectionCommonInjectionLib::findSearchOption($options, $info->getValue());
     if ($option) {
         switch ($option['displaytype']) {
             default:
             case 'text':
             case 'multiline_text':
                 if ($value != PluginDatainjectionCommonInjectionLib::EMPTY_VALUE) {
                     return true;
                 }
                 return false;
             case 'dropdown':
             case 'user':
             case 'contact':
                 if ($value != PluginDatainjectionCommonInjectionLib::DROPDOWN_EMPTY_VALUE) {
                     return true;
                 }
                 return false;
         }
     }
 }
Esempio n. 3
0
 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;
 }
Esempio n. 4
0
 You should have received a copy of the GNU General Public License
 along with datainjection. If not, see <http://www.gnu.org/licenses/>.
 --------------------------------------------------------------------------
 @package   datainjection
 @author    the datainjection plugin team
 @copyright Copyright (c) 2010-2013 Datainjection plugin team
 @license   GPLv2+
            http://www.gnu.org/licenses/gpl.txt
 @link      https://forge.indepnet.net/projects/datainjection
 @link      http://www.glpi-project.org/
 @since     2009
 ---------------------------------------------------------------------- */
include '../../../inc/includes.php';
/* Update mappings */
if (isset($_POST["update"])) {
    PluginDatainjectionInfo::manageInfos($_POST['models_id'], $_POST);
} else {
    if (isset($_POST["delete"])) {
        $info = new PluginDatainjectionInfo();
        foreach ($_POST["item"] as $key => $val) {
            $input = array('id' => $key);
            if ($val == 1) {
                $info->check($key, 'w');
                $info->delete($input);
            }
        }
        Html::back();
    }
}
Session::setActiveTab('PluginDatainjectionModel', 'PluginDatainjectionModel$5');
Html::back();
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with datainjection. If not, see <http://www.gnu.org/licenses/>.
 --------------------------------------------------------------------------
 @package   datainjection
 @author    the datainjection plugin team
 @copyright Copyright (c) 2010-2013 Datainjection plugin team
 @license   GPLv2+
            http://www.gnu.org/licenses/gpl.txt
 @link      https://forge.indepnet.net/projects/datainjection
 @link      http://www.glpi-project.org/
 @since     2009
 ---------------------------------------------------------------------- */
// Direct access to file
if (strpos($_SERVER['PHP_SELF'], "dropdownSelectModel.php")) {
    include '../../../inc/includes.php';
    header("Content-Type: text/html; charset=UTF-8");
    Html::header_nocache();
}
Session::checkCentralAccess();
if (isset($_SESSION['datainjection']['models_id']) && $_SESSION['datainjection']['models_id'] != $_POST['models_id']) {
    PluginDatainjectionModel::cleanSessionVariables();
}
$_SESSION['datainjection']['step'] = PluginDatainjectionClientInjection::STEP_UPLOAD;
$model = new PluginDatainjectionModel();
if ($_POST['models_id'] > 0 && $model->can($_POST['models_id'], READ)) {
    PluginDatainjectionInfo::showAdditionalInformationsForm($model);
}