diff --git a/app/Http/Controllers/Dashboard/CompanyController.php b/app/Http/Controllers/Dashboard/CompanyController.php
index 9e78cad..f76ef91 100644
--- a/app/Http/Controllers/Dashboard/CompanyController.php
+++ b/app/Http/Controllers/Dashboard/CompanyController.php
@@ -22,7 +22,7 @@ class CompanyController extends Controller
public function index(Request $request){
if(is_role(['1'])){
return view('dashboard.companies.admin.index',[
- 'title' => 'Perusahaan',
+ 'title' => 'Data Perusahaan',
'status' => $request->input('status', null),
'edit_status' => $request->input('edit_status', null),
'address' => $request->input('address', null),
diff --git a/app/Http/Controllers/Dashboard/DatatableController.php b/app/Http/Controllers/Dashboard/DatatableController.php
index 8313bc3..4c01ee2 100644
--- a/app/Http/Controllers/Dashboard/DatatableController.php
+++ b/app/Http/Controllers/Dashboard/DatatableController.php
@@ -976,6 +976,8 @@ public function media(Request $request){
->addColumn('action', function ($data) {
$showUrl = route('dashboard.media.show', ['id' => encrypt_id($data->user->id), 'type' => 'media']);
+ $printUrl = route('dashboard.media.data.print', ['id' => encrypt_id($data->id)]);
+
$deleteUrl = route('dashboard.media.destroy', ['id' => encrypt_id($data->id)]);
$processEditRequestCompanyUrl = route('dashboard.media.process', ['id' => encrypt_id($data->user->id), 'type' => 'media', 'category' => 'edit-request']);
@@ -986,6 +988,10 @@ public function media(Request $request){
- Detail
';
+ if (is_role([1])) {
+ $dropdown .= '- Cetak
';
+ }
+
if (is_role([1]) && $data->edit_status === '1' && $data->user->status === '1') {
$dropdown .= '- Proses peremohonan Edit
';
}
diff --git a/app/Http/Controllers/Dashboard/MediaController.php b/app/Http/Controllers/Dashboard/MediaController.php
index efc0e9e..870a583 100644
--- a/app/Http/Controllers/Dashboard/MediaController.php
+++ b/app/Http/Controllers/Dashboard/MediaController.php
@@ -9,6 +9,7 @@
use App\Models\Media;
use App\Models\Role;
use App\Models\User;
+use Barryvdh\DomPDF\Facade\Pdf;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
@@ -270,4 +271,14 @@ public function filter(Request $request){
return redirect()->route('dashboard.media.index', $filterField);
}
+
+ public function printData($id){
+
+ $media = Media::with(['user.role', 'company'])->findOrFail(decrypt_id($id));
+
+
+ $pdf = Pdf::loadView('dashboard.media.print', compact('media'));
+
+ return $pdf->stream('media-'.slugify($media->name).'.pdf');
+ }
}
diff --git a/resources/views/dashboard/companies/print.blade.php b/resources/views/dashboard/companies/print.blade.php
index 036b5f2..39e5a3f 100644
--- a/resources/views/dashboard/companies/print.blade.php
+++ b/resources/views/dashboard/companies/print.blade.php
@@ -177,10 +177,6 @@
Status
{{ get_user_status($company->user->status) }}
-
-
Status Edit
-
{{ get_edit_status($company->edit_status) }}
-
{{-- Dokumen --}}
diff --git a/resources/views/dashboard/media/print.blade.php b/resources/views/dashboard/media/print.blade.php
new file mode 100644
index 0000000..72348a4
--- /dev/null
+++ b/resources/views/dashboard/media/print.blade.php
@@ -0,0 +1,192 @@
+
+
+
+
+ Data Media - {{ $media->name }}
+
+
+
+
+
+
 }})
+
+
+
+
+
+
+
+
Perusahaan
+
{{ $media->company->name }}
+
+
+
Alamat
+
{{ $media->address }}
+
+
+
+
Jenis Media
+
{{ ucfirst($media->type) }}
+
+
+
Klasifikasi
+
{{ ucfirst($media->classification) }}
+
+
+
Organisasi Jurnalistik
+
{{ $media->journalism_organization ?? 'Tidak Ada' }}
+
+
+
Sertifikat Dewan Pers
+
{{ $media->press_council_certificate ?? 'Tidak Ada' }}
+
+ @if ($media->edit_status == 3 && $media->edit_rejection_reason)
+
+
Alasan Penolakan
+
{{ $media->edit_rejection_reason }}
+
+ @endif
+
+
+ {{-- Dokumen --}}
+
+
Dokumen
+
+ @php
+ $documents = [
+ 'Organisasi Jurnalistik' => $media->journalism_organization_doc,
+ 'Sertifikat Dewan Pers' => $media->press_council_certificate_doc,
+ ];
+ @endphp
+
+ @foreach($documents as $label => $doc)
+
+
{{ $label }}
+ @if($doc)
+ @php
+ $ext = pathinfo($doc, PATHINFO_EXTENSION);
+ @endphp
+ @if(in_array(strtolower($ext), ['jpg', 'jpeg', 'png', 'gif', 'webp']))
+
 }})
+ @elseif(strtolower($ext) === 'pdf')
+
Lihat Dokumen PDF
+ @else
+ File tidak dikenali.
+ @endif
+ @else
+ Tidak Ada Dokumen
+ @endif
+
+ @endforeach
+
+
+
+
+
+
diff --git a/routes/web.php b/routes/web.php
index f02edfb..ff7fb43 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -293,6 +293,7 @@
Route::post('/export', 'export')->name('export');
Route::post('/filter', 'filter')->name('filter');
+ Route::get('/{id}/print', 'printData')->name('data.print');
});
Route::get('/data', [DatatableController::class, 'media'])->name('data');