From dab02c63d4f96b9756ddc209174763ff81d16dfb Mon Sep 17 00:00:00 2001 From: Anil ALCI Date: Sun, 5 Feb 2023 16:02:04 +0100 Subject: [PATCH] Display CSV As HTML Table #959 --- tinyfilemanager.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/tinyfilemanager.php b/tinyfilemanager.php index 5b57b7b..cf79ad0 100644 --- a/tinyfilemanager.php +++ b/tinyfilemanager.php @@ -1623,6 +1623,7 @@ if (isset($_GET['view'])) { $is_audio = false; $is_video = false; $is_text = false; + $is_csv = false; $is_onlineViewer = false; $view_title = 'File'; @@ -1646,6 +1647,9 @@ if (isset($_GET['view'])) { } elseif (in_array($ext, fm_get_video_exts())) { $is_video = true; $view_title = 'Video'; + } elseif ($ext == 'csv') { + $is_csv = true; + $view_title = "CSV File"; } elseif (in_array($ext, fm_get_text_exts()) || substr($mime_type, 0, 4) == 'text' || in_array($mime_type, fm_get_text_mimes())) { $is_text = true; $content = file_get_contents($file_path); @@ -1720,7 +1724,7 @@ if (isset($_GET['view'])) {     @@ -1763,6 +1767,15 @@ if (isset($_GET['view'])) { } elseif ($is_video) { // Video content echo '
'; + } elseif ($is_csv) { + $tableTheme = (FM_THEME == "dark") ? "text-white bg-dark table-dark" : "bg-white"; + echo ''; + $csvFilePointer = fopen($file_path, 'r'); + while ( ($csvRow = fgetcsv($csvFilePointer) ) !== FALSE ) { + echo ''; + } + fclose($csvFilePointer); + echo '
'. implode('', $csvRow). '
'; } elseif ($is_text) { if (FM_USE_HIGHLIGHTJS) { // highlight