From cd134a7375a63c7d622769d93bdd54db97dc3854 Mon Sep 17 00:00:00 2001 From: Ahmad Afandi Date: Mon, 28 Sep 2026 15:44:34 +0700 Subject: [PATCH 1/2] support video dari provider seperti google drive dan youtube --- app/Enums/TipeMedia.php | 90 ++++ .../Publikasi/GaleriController.php | 32 +- app/Http/Middleware/SecurityHeaders.php | 5 +- app/Http/Requests/GaleriRequest.php | 31 +- app/Models/Galeri.php | 85 +++- app/Services/MediaLinkService.php | 408 ++++++++++++++++++ app/Support/CspPolicy.php | 129 ++++++ app/ValueObjects/MediaLink.php | 90 ++++ ...000001_add_media_type_to_galeris_table.php | 36 ++ public/js/custom.js | 75 ++++ .../views/components/galeri-media.blade.php | 42 ++ .../views/publikasi/galeri/_form.blade.php | 54 ++- .../views/publikasi/galeri/index.blade.php | 13 +- .../galeri/parts/media-cell.blade.php | 1 + .../Api/Frontend/GaleriControllerTest.php | 120 ++++++ tests/Feature/GaleriControllerTest.php | 208 +++++++++ tests/Feature/PublikasiGaleriPublikTest.php | 65 +++ tests/Unit/Models/GaleriTest.php | 134 ++++++ tests/Unit/Services/MediaLinkServiceTest.php | 248 +++++++++++ tests/Unit/Support/CspPolicyTest.php | 53 +++ .../views/pages/publikasi/galeri.blade.php | 46 +- .../pages/publikasi/galeri_detail.blade.php | 29 +- 22 files changed, 1933 insertions(+), 61 deletions(-) create mode 100644 app/Enums/TipeMedia.php create mode 100644 app/Services/MediaLinkService.php create mode 100644 app/Support/CspPolicy.php create mode 100644 app/ValueObjects/MediaLink.php create mode 100644 database/migrations/2026_09_28_000001_add_media_type_to_galeris_table.php create mode 100644 resources/views/components/galeri-media.blade.php create mode 100644 resources/views/publikasi/galeri/parts/media-cell.blade.php create mode 100644 tests/Feature/Api/Frontend/GaleriControllerTest.php create mode 100644 tests/Feature/PublikasiGaleriPublikTest.php create mode 100644 tests/Unit/Models/GaleriTest.php create mode 100644 tests/Unit/Services/MediaLinkServiceTest.php create mode 100644 tests/Unit/Support/CspPolicyTest.php diff --git a/app/Enums/TipeMedia.php b/app/Enums/TipeMedia.php new file mode 100644 index 0000000000..ca0b7aadd2 --- /dev/null +++ b/app/Enums/TipeMedia.php @@ -0,0 +1,90 @@ + + * - video : dirender sebagai