m3 Security Fixes

This commit is contained in:
Mark Gregory
2026-09-16 17:16:25 +01:00
parent d68687f062
commit 8f37245e13
64 changed files with 4247 additions and 4426 deletions
+9 -4
View File
@@ -14,6 +14,7 @@ class SpreadsheetExport
{
$path = storage_path('app/m3-exports/' . uniqid('', true) . '-' . basename($filename));
$this->write($rows, $path);
return response()->download($path, basename($filename))->deleteFileAfterSend(true);
}
@@ -25,16 +26,16 @@ class SpreadsheetExport
if ($disk && config("filesystems.disks.$disk")) {
Storage::disk($disk)->put($filename, file_get_contents($tmp));
@unlink($tmp);
return $filename;
}
return $tmp;
}
public function storeSheets(array $sheets, string $filename, ?string $disk = null): string
{
$book = new Spreadsheet();
$book = new Spreadsheet;
$book->removeSheetByIndex(0);
foreach ($sheets as $title => $rows) {
$sheet = $book->createSheet();
@@ -45,13 +46,17 @@ class SpreadsheetExport
}
}
$tmp = storage_path('app/m3-exports/' . uniqid('', true) . '-' . basename($filename));
if (! is_dir(dirname($tmp))) { mkdir(dirname($tmp), 0775, true); }
if (! is_dir(dirname($tmp))) {
mkdir(dirname($tmp), 0775, true);
}
(new Xlsx($book))->save($tmp);
if ($disk && config("filesystems.disks.$disk")) {
Storage::disk($disk)->put($filename, file_get_contents($tmp));
@unlink($tmp);
return $filename;
}
return $tmp;
}
@@ -61,7 +66,7 @@ class SpreadsheetExport
mkdir(dirname($path), 0775, true);
}
$sheet = (new Spreadsheet())->getActiveSheet();
$sheet = (new Spreadsheet)->getActiveSheet();
$array = $rows->map(fn ($row) => (array) $row)->values();
$headers = $array->first() ? array_keys($array->first()) : [];
if ($headers) {