diff --git a/controllers/internals/Tool.php b/controllers/internals/Tool.php index 1cdccb5..843d066 100644 --- a/controllers/internals/Tool.php +++ b/controllers/internals/Tool.php @@ -214,6 +214,7 @@ namespace controllers\internals; 'content' => 'Une erreur inconnue est survenue.', 'error_code' => $file['error'] ?? 99, 'mime_type' => false, + 'extension' => false, ]; if (UPLOAD_ERR_OK !== $file['error']) @@ -265,7 +266,8 @@ namespace controllers\internals; return $result; } - $result['mime_type'] = 'text/plain' === mime_content_type($tmp_filename) ? $file['type'] : mime_content_type($tmp_filename); + $result['extension'] = pathinfo($file['name'])['extension']; + $result['mime_type'] = mime_content_type($tmp_filename); $file_handler = fopen($tmp_filename, 'r'); $result['success'] = true; diff --git a/controllers/publics/Contact.php b/controllers/publics/Contact.php index 530520e..2e2b8b6 100644 --- a/controllers/publics/Contact.php +++ b/controllers/publics/Contact.php @@ -302,7 +302,18 @@ namespace controllers\publics; break; default: - $invalid_type = true; + if ($read_file['extension'] === 'csv') + { + $result = $this->internal_contact->import_csv($id_user, $read_file['content']); + } + elseif ($read_file['extension'] === 'json') + { + $result = $this->internal_contact->import_json($id_user, $read_file['content']); + } + else + { + $invalid_type = true; + } } if ($invalid_type)