File tree Expand file tree Collapse file tree 3 files changed +51
-1
lines changed Expand file tree Collapse file tree 3 files changed +51
-1
lines changed Original file line number Diff line number Diff line change
1
+ <?php
2
+
3
+ namespace Yajra \DataTables \Commands ;
4
+
5
+ use Illuminate \Console \Command ;
6
+ use Illuminate \Support \Facades \Storage ;
7
+
8
+ class DataTablesPurgeExportCommand extends Command
9
+ {
10
+ /**
11
+ * The name and signature of the console command.
12
+ *
13
+ * @var string
14
+ */
15
+ protected $ signature = 'datatables:purge-export ' ;
16
+
17
+ /**
18
+ * The console command description.
19
+ *
20
+ * @var string
21
+ */
22
+ protected $ description = 'Remove exported files that datatables-export generate. ' ;
23
+
24
+ /**
25
+ * Execute the console command.
26
+ *
27
+ * @return void
28
+ */
29
+ public function handle ()
30
+ {
31
+ collect (Storage::listContents ('exports ' ))
32
+ ->each (function ($ file ) {
33
+ if ($ file ['timestamp ' ] < now ()->subDay (config ('datatables-export.purge.days ' ))->getTimestamp ()) {
34
+ Storage::delete ($ file ['path ' ]);
35
+ }
36
+ });
37
+
38
+ $ this ->info ('The command was successful. Export files are cleared! ' );
39
+ }
40
+ }
Original file line number Diff line number Diff line change 5
5
use Illuminate \Support \ServiceProvider ;
6
6
use Livewire \Livewire ;
7
7
use Maatwebsite \Excel \ExcelServiceProvider ;
8
+ use Yajra \DataTables \Commands \DataTablesPurgeExportCommand ;
8
9
use Yajra \DataTables \Generators \DataTablesHtmlCommand ;
9
10
use Yajra \DataTables \Generators \DataTablesMakeCommand ;
10
11
use Yajra \DataTables \Generators \DataTablesScopeCommand ;
@@ -48,5 +49,7 @@ protected function publishAssets()
48
49
public function register ()
49
50
{
50
51
$ this ->mergeConfigFrom (__DIR__ . '/config/datatables-export.php ' , 'datatables-export ' );
52
+
53
+ $ this ->commands ([DataTablesPurgeExportCommand::class]);
51
54
}
52
55
}
Original file line number Diff line number Diff line change 35
35
NumberFormat::FORMAT_DATE_XLSX17 ,
36
36
NumberFormat::FORMAT_DATE_YYYYMMDD2 ,
37
37
NumberFormat::FORMAT_DATE_YYYYMMDDSLASH ,
38
- ]
38
+ ],
39
+
40
+ /**
41
+ * Purge all exported by purge.days old files.
42
+ */
43
+ 'purge ' => [
44
+ 'days ' => 1 ,
45
+ ],
39
46
];
You can’t perform that action at this time.
0 commit comments