Skip to content

Commit b3176af

Browse files
committed
add option to renameing file downloads
1 parent db56853 commit b3176af

File tree

5 files changed

+14
-7
lines changed

5 files changed

+14
-7
lines changed

app/Helpers/Cetak.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,10 @@ class Cetak
1616
*
1717
* @param string $jenis kak|spj|sk|st|dpr|spd|bon
1818
* @param collection $model
19+
* @param string $filename
1920
* @return string
2021
*/
21-
public static function cetak($jenis, $models)
22+
public static function cetak($jenis, $models, $filename)
2223
{
2324
$index = 0;
2425
$mainXml = '';
@@ -34,7 +35,7 @@ public static function cetak($jenis, $models)
3435
$index++;
3536
}
3637
$mainTemplate->settempDocumentMainPart($mainXml);
37-
$filename = uniqid().'.docx';
38+
$filename = $filename.'.docx';
3839
$mainTemplate->saveAs(Storage::path('public/'.$filename));
3940

4041
return $filename;

app/Nova/Actions/Download.php

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
use Laravel\Nova\Actions\Action;
1010
use Laravel\Nova\Fields\ActionFields;
1111
use Laravel\Nova\Http\Requests\NovaRequest;
12+
use Laravel\Nova\Fields\Text;
1213

1314
class Download extends Action
1415
{
@@ -37,7 +38,7 @@ public function name()
3738
*/
3839
public function handle(ActionFields $fields, Collection $models)
3940
{
40-
$filename = Cetak::cetak($this->jenis, $models);
41+
$filename = Cetak::cetak($this->jenis, $models, $fields->filename);
4142

4243
return Action::redirect(route('dump-download', [
4344
'filename' => $filename,
@@ -52,6 +53,11 @@ public function handle(ActionFields $fields, Collection $models)
5253
*/
5354
public function fields(NovaRequest $request)
5455
{
55-
return [];
56+
return [
57+
Text::make('Nama File', 'filename')
58+
->rules('required')
59+
->help('tanpa extensi file')
60+
->default(fn () => uniqid()),
61+
];
5662
}
5763
}

app/Nova/HonorSurvei.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ public function actions(NovaRequest $request)
277277
->showInline()
278278
->showOnDetail()
279279
->exceptOnIndex()
280-
->withoutConfirmation()
280+
->confirmButtonText('Unduh')
281281
->canSee(function ($request) {
282282
if ($request instanceof ActionRequest) {
283283
return true;

app/Nova/KerangkaAcuan.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,8 @@ public function actions(NovaRequest $request)
139139
Download::make('kak', 'Unduh KAK')
140140
->showInline()
141141
->showOnDetail()
142-
->exceptOnIndex()
143-
->withoutConfirmation();
142+
->confirmButtonText('Unduh')
143+
->exceptOnIndex();
144144
}
145145
return $actions;
146146
}

0 commit comments

Comments
 (0)