diff --git a/app/Http/Controllers/ImportController.php b/app/Http/Controllers/ImportController.php index c8aa9c70dbdf..ee953dcf35eb 100644 --- a/app/Http/Controllers/ImportController.php +++ b/app/Http/Controllers/ImportController.php @@ -170,20 +170,27 @@ class ImportController extends Controller return $data; } - public function detectDelimiter($csvfile) + /** + * Returns the best delimiter + * + * @param string $csvfile + * @return string + */ + public function detectDelimiter($csvfile): string { $delimiters = [',', '.', ';']; $bestDelimiter = ' '; $count = 0; foreach ($delimiters as $delimiter) { - + if (substr_count(strstr($csvfile, "\n", true), $delimiter) >= $count) { - $count = substr_count($csvfile, $delimiter); - $bestDelimiter = $delimiter; + $count = substr_count(strstr($csvfile, "\n", true), $delimiter); + $bestDelimiter = $delimiter; } } + return $bestDelimiter; } } diff --git a/app/Http/Requests/Import/PreImportRequest.php b/app/Http/Requests/Import/PreImportRequest.php index 7f23b64fcfe4..9e959ac882db 100644 --- a/app/Http/Requests/Import/PreImportRequest.php +++ b/app/Http/Requests/Import/PreImportRequest.php @@ -28,9 +28,10 @@ class PreImportRequest extends Request public function rules() { return [ - 'files.*' => 'file|mimes:csv,txt', + 'files.*' => 'file|mimetypes:text/csv,text/plain,application/octet-stream', 'files' => 'required|array|min:1|max:6', 'import_type' => 'required', ]; } + }