/** * */ public static function load_import_mapping($po_opts = null) { require_once __CA_MODELS_DIR__ . "/ca_data_importers.php"; if (!($vs_file_path = $po_opts->getOption('file'))) { CLIUtils::addError(_t("You must specify a file")); return false; } if (!file_exists($vs_file_path)) { CLIUtils::addError(_t("File '%1' does not exist", $vs_file_path)); return false; } $vs_log_dir = $po_opts->getOption('log'); $vn_log_level = CLIUtils::import_getLogLevel($po_opts); if (!($t_importer = ca_data_importers::loadImporterFromFile($vs_file_path, $va_errors, array('logDirectory' => $vs_log_dir, 'logLevel' => $vn_log_level)))) { CLIUtils::addError(_t("Could not import '%1': %2", $vs_file_path, join("; ", $va_errors))); return false; } else { CLIUtils::addMessage(_t("Created mapping %1 from %2", CLIUtils::textWithColor($t_importer->get('importer_code'), 'yellow'), $vs_file_path), array('color' => 'none')); return true; } }
/** * * * */ public function UploadImporters() { $va_response = array('uploadMessage' => '', 'skippedMessage' => ''); $va_errors = array(); foreach ($_FILES as $vs_param => $va_file) { foreach ($va_file['name'] as $vn_i => $vs_name) { if ($t_importer = ca_data_importers::loadImporterFromFile($va_file['tmp_name'][$vn_i], $va_errors, array('logDirectory' => $this->request->config->get('batch_metadata_import_log_directory'), 'logLevel' => KLogger::INFO, 'originalFilename' => $vs_name))) { $va_response['copied'][$vs_name] = true; } else { $va_response['skipped'][$vs_name] = true; } } } $va_response['uploadMessage'] = ($vn_upload_count = sizeof($va_response['copied'])) == 1 ? _t('Uploaded %1 worksheet', $vn_upload_count) : _t('Uploaded %1 worksheets', $vn_upload_count); if (is_array($va_response['skipped']) && ($vn_skip_count = sizeof($va_response['skipped'])) && !$va_response['error']) { $va_response['skippedMessage'] = $vn_skip_count == 1 ? _t('Skipped %1 worksheet', $vn_skip_count) : _t('Skipped %1 worksheet', $vn_skip_count); } $this->view->setVar('response', $va_response); $this->render('mediaimport/file_upload_response_json.php'); }