diff --git a/app/Http/Controllers/Dashboard/SettingController.php b/app/Http/Controllers/Dashboard/SettingController.php index 70e06c3..639c553 100644 --- a/app/Http/Controllers/Dashboard/SettingController.php +++ b/app/Http/Controllers/Dashboard/SettingController.php @@ -40,8 +40,15 @@ public function update(SettingRequest $request) 'app_icon' => $validFile['app_icon'] ?? $settings->app_icon, 'app_logo' => $validFile['app_logo'] ?? $settings->app_logo, 'contact_address' => $validatedData['contact_address'] ?? $settings->contact_address, + 'contact_address_link' => $validatedData['contact_address_link'] ?? $settings->contact_address_link, 'contact_phone' => $validatedData['contact_phone'] ?? $settings->contact_phone, 'contact_email' => $validatedData['contact_email'] ?? $settings->contact_email, + 'contact_facebook' => $validatedData['contact_facebook'] ?? $settings->contact_facebook, + 'contact_twitter' => $validatedData['contact_twitter'] ?? $settings->contact_twitter, + 'contact_instagram' => $validatedData['contact_instagram'] ?? $settings->contact_instagram, + 'contact_youtube' => $validatedData['contact_youtube'] ?? $settings->contact_youtube, + 'contact_whatsapp' => $validatedData['contact_whatsapp'] ?? $settings->contact_whatsapp, + 'contact_telegram' => $validatedData['contact_telegram'] ?? $settings->contact_telegram, 'about_us' => $validatedData['about_us'] ?? $settings->about_us, ]); diff --git a/app/Http/Requests/SettingRequest.php b/app/Http/Requests/SettingRequest.php index 4a32ec8..f475188 100644 --- a/app/Http/Requests/SettingRequest.php +++ b/app/Http/Requests/SettingRequest.php @@ -30,9 +30,35 @@ public function rules(): array 'app_icon' => ['nullable', 'file', 'mimes:png,jpg,jpeg', 'max:4096'], 'app_logo' => ['nullable', 'file', 'mimes:png,jpg,jpeg', 'max:4096'], 'contact_address' => ['nullable'], + 'contact_address_link' => ['nullable'], 'contact_phone' => ['nullable', 'regex:/^[0-9+\s-]+$/'], 'contact_email' => ['nullable', 'email', 'max:255'], + 'contact_facebook' => ['nullable', 'max:100'], + 'contact_twitter' => ['nullable', 'max:100'], + 'contact_instagram' => ['nullable', 'max:100'], + 'contact_youtube' => ['nullable', 'max:100'], + 'contact_whatsapp' => ['nullable', 'max:100'], + 'contact_telegram' => ['nullable', 'max:100'], 'about_us' => ['required', 'string'], ]; } + + protected function prepareForValidation() + { + $this->merge([ + 'app_icon' => filled($this->app_icon) ? $this->app_icon : null, + 'app_logo' => filled($this->app_logo) ? $this->app_logo : null, + 'contact_address' => filled($this->contact_address) ? $this->contact_address : null, + 'contact_address_link' => filled($this->contact_address_link) ? $this->contact_address_link : null, + 'contact_phone' => filled($this->contact_phone) ? $this->contact_phone : null, + 'contact_email' => filled($this->contact_email) ? $this->contact_email : null, + 'contact_facebook' => filled($this->contact_facebook) ? $this->contact_facebook : null, + 'contact_twitter' => filled($this->contact_twitter) ? $this->contact_twitter : null, + 'contact_instagram' => filled($this->contact_instagram) ? $this->contact_instagram : null, + 'contact_youtube' => filled($this->contact_youtube) ? $this->contact_youtube : null, + 'contact_whatsapp' => filled($this->contact_whatsapp) ? $this->contact_whatsapp : null, + 'contact_telegram' => filled($this->contact_telegram) ? $this->contact_telegram : null, + ]); + } + } diff --git a/app/Settings/AppSettings.php b/app/Settings/AppSettings.php index e03523a..549823c 100644 --- a/app/Settings/AppSettings.php +++ b/app/Settings/AppSettings.php @@ -20,10 +20,24 @@ class AppSettings extends Settings public ?string $contact_address; + public ?string $contact_address_link; + public ?string $contact_phone; public ?string $contact_email; + public ?string $contact_facebook; + + public ?string $contact_twitter; + + public ?string $contact_instagram; + + public ?string $contact_youtube; + + public ?string $contact_whatsapp; + + public ?string $contact_telegram; + public ?string $about_us; public static function group(): string diff --git a/database/settings/2025_02_27_064111_app_settings.php b/database/settings/2025_02_27_064111_app_settings.php index 6b14e67..e519787 100644 --- a/database/settings/2025_02_27_064111_app_settings.php +++ b/database/settings/2025_02_27_064111_app_settings.php @@ -13,9 +13,16 @@ public function up(): void $this->migrator->add('app.app_icon', 'simedkom-logo-circle.png'); $this->migrator->add('app.app_logo', 'simedkom-logo-full.png'); $this->migrator->add('app.contact_address', 'Jl. Ganda Negara No.25, Nagri Kidul, Kec. Purwakarta, Kabupaten Purwakarta, Jawa Barat 41111'); + $this->migrator->add('app.contact_address_link', 'https://www.google.com/maps/embed?pb=!1m18!1m12!1m3!1d3432.141752620895!2d107.44145707430351!3d-6.554894664077222!2m3!1f0!2f0!3f0!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x2e690e51c899aa9f%3A0x6005e63423ceedc8!2sDiskominfo%20Kab.%20Purwakarta!5e1!3m2!1sen!2sid!4v1743407107357!5m2!1sen!2sid'); $this->migrator->add('app.contact_phone', '0851-7513-8912'); $this->migrator->add('app.contact_email', 'simedkom.purwakarta@gmail.com'); + $this->migrator->add('app.contact_facebook', null); + $this->migrator->add('app.contact_twitter', null); + $this->migrator->add('app.contact_instagram', null); + $this->migrator->add('app.contact_youtube', null); + $this->migrator->add('app.contact_whatsapp', null); + $this->migrator->add('app.contact_telegram', null); $this->migrator->add('app.about_us', 'Sistem Media Komunikasi (SIMEDKOM) merupakan sebuah aplikasi berbasis digital untuk mempermudah bidang informasi dan komunikasi publik di Diskominfo Purwakarta dalam menjalankan monitoring media di Kabupaten Purwakarta. - Aplikasi ini digunakan untuk penertiban administrasi kerjasama antara media dan pemerintah kabupaten Purwakarta yang dikoordinir oleh Diskominfo Purwakarta, juga menjadi alat filter dalam proses monitoring isu konten media terkait pemberitaan di Kabupaten Purwakarta.'); + Aplikasi ini digunakan untuk penertiban administrasi kerjasama antara media dan pemerintah kabupaten Purwakarta yang dikoordinir oleh Diskominfo Purwakarta, juga menjadi alat filter dalam proses monitoring isu konten media terkait pemberitaan di Kabupaten Purwakarta.'); } }; diff --git a/resources/views/dashboard/setting/index.blade.php b/resources/views/dashboard/setting/index.blade.php index db83850..3941059 100644 --- a/resources/views/dashboard/setting/index.blade.php +++ b/resources/views/dashboard/setting/index.blade.php @@ -118,6 +118,72 @@ @enderror +
+
+ +
+ +
+ @error('contact_facebook') + {{$message}} + @enderror +
+
+
+
+ +
+ +
+ @error('contact_twitter') + {{$message}} + @enderror +
+
+
+
+ +
+ +
+ @error('contact_instagram') + {{$message}} + @enderror +
+
+
+
+ +
+ +
+ @error('contact_youtube') + {{$message}} + @enderror +
+
+
+
+ +
+ +
+ @error('contact_whatsapp') + {{$message}} + @enderror +
+
+
+
+ +
+ +
+ @error('contact_telegram') + {{$message}} + @enderror +
+
diff --git a/resources/views/homepage/about-us/index.blade.php b/resources/views/homepage/about-us/index.blade.php index 0b20c2b..d94b8aa 100644 --- a/resources/views/homepage/about-us/index.blade.php +++ b/resources/views/homepage/about-us/index.blade.php @@ -46,12 +46,12 @@ diff --git a/resources/views/homepage/announcements/read.blade.php b/resources/views/homepage/announcements/read.blade.php index efbb161..9da8e61 100644 --- a/resources/views/homepage/announcements/read.blade.php +++ b/resources/views/homepage/announcements/read.blade.php @@ -57,12 +57,12 @@ diff --git a/resources/views/homepage/contacts/index.blade.php b/resources/views/homepage/contacts/index.blade.php index 4c86e4f..f975cff 100644 --- a/resources/views/homepage/contacts/index.blade.php +++ b/resources/views/homepage/contacts/index.blade.php @@ -73,12 +73,12 @@ diff --git a/resources/views/homepage/index.blade.php b/resources/views/homepage/index.blade.php index ae97201..461f93f 100644 --- a/resources/views/homepage/index.blade.php +++ b/resources/views/homepage/index.blade.php @@ -152,12 +152,12 @@ diff --git a/resources/views/homepage/news/read.blade.php b/resources/views/homepage/news/read.blade.php index 17c6f69..0dcb176 100644 --- a/resources/views/homepage/news/read.blade.php +++ b/resources/views/homepage/news/read.blade.php @@ -72,37 +72,37 @@
Tetap Terkoneksi