22
33namespace Martin \Forms \Controllers ;
44
5- use Response ;
6- use BackendMenu ;
75use SplTempFileObject ;
86use League \Csv \AbstractCsv ;
97use Backend \Classes \Controller ;
108use Martin \Forms \Models \Record ;
9+ use Backend \Facades \BackendMenu ;
1110use League \Csv \Writer as CsvWriter ;
1211
1312class Exports extends Controller
@@ -53,7 +52,7 @@ public function csv()
5352 }
5453
5554 // FILTER DELETED
56- if ($ deleted = post ('Record.options_deleted ' )) {
55+ if (post ('Record.options_deleted ' )) {
5756 $ records ->withTrashed ();
5857 }
5958
@@ -89,11 +88,14 @@ public function csv()
8988 $ record = $ filteredRecords ->first ();
9089 $ headers = array_merge ($ headers , array_keys ($ record ->form_data_arr ));
9190
91+ // ADD FILES HEADER
92+ $ headers [] = e (trans ('martin.forms::lang.controllers.records.columns.files ' ));
93+
9294 // ADD HEADERS
9395 $ csv ->insertOne ($ headers );
9496
9597 // WRITE CSV LINES
96- foreach ($ records ->get ()-> toArray () as $ row ) {
98+ foreach ($ records ->get () as $ row ) {
9799 $ data = (array ) json_decode ($ row ['form_data ' ]);
98100
99101 // IF DATA IS ARRAY CONVERT TO JSON STRING
@@ -108,6 +110,11 @@ public function csv()
108110 array_unshift ($ data , $ row ['id ' ], $ row ['group ' ], $ row ['ip ' ], $ row ['created_at ' ]);
109111 }
110112
113+ // ADD ATTACHED FILES
114+ if (count ($ row ->files ) > 0 ) {
115+ $ data [] = $ row ->filesList ();
116+ }
117+
111118 $ csv ->insertOne ($ data );
112119 }
113120
0 commit comments