feat(faqs): migrate FAQ management to information section and update routing

This commit is contained in:
Yoga Pangestu 2025-11-21 23:14:45 +07:00
parent d6f26163f6
commit d0c41e9d89
6 changed files with 21 additions and 21 deletions

View File

@ -1,6 +1,6 @@
<?php
namespace App\Livewire\Datatable\Studio\Manage;
namespace App\Livewire\Datatable\Studio\Information;
use App\Models\Faq;
use App\Traits\Datatable\WithConfiguration;
@ -71,14 +71,14 @@ public function columns(): array
$actions .= view('components.datatables.edit-modal', [
'id' => $row->hash,
'method' => 'update',
'modalTitle' => 'Ubah Kategori',
'modalTitle' => 'Ubah FAQs',
])->render();
}
if (auth()->user()->can('delete faq')) {
$actions .= view('components.datatables.delete', [
'id' => $row->hash,
'deleteRoute' => route('studio.manage.faq.delete', $row->hash),
'deleteRoute' => route('studio.information.faq.delete', $row->hash),
])->render();
}

View File

@ -1,6 +1,6 @@
<?php
namespace App\Livewire\Forms\Studio\Manage;
namespace App\Livewire\Forms\Studio\Information;
use App\Models\Faq;
use Livewire\Form;

View File

@ -1,8 +1,8 @@
<?php
namespace App\Livewire\Studio\Manage;
namespace App\Livewire\Studio\Information;
use App\Livewire\Forms\Studio\Manage\FaqForm;
use App\Livewire\Forms\Studio\Information\FaqForm;
use App\Models\Faq as FaqModel;
use App\Traits\Notification\WithSubscribeNotification;
use App\Traits\WithAuthorization;
@ -93,7 +93,7 @@ public function sortOrder(FaqModel $faq, string $direction)
public function render()
{
return view('livewire.studio.manage.faqs', [
return view('livewire.studio.information.faqs', [
'pageTitle' => 'FAQs',
]);
}

View File

@ -169,13 +169,6 @@ public function boot(): void
'match' => 'studio.manage.article.*',
'can' => 'view article',
],
[
'label' => 'FAQs',
'icon' => 'question-mark-circle',
'route' => 'studio.manage.faq.index',
'match' => 'studio.manage.faq.*',
'can' => 'view faq',
],
],
],
[
@ -196,6 +189,13 @@ public function boot(): void
'can' => 'view price request',
'badge' => $priceRequestCount,
],
[
'label' => 'FAQs',
'icon' => 'question-mark-circle',
'route' => 'studio.information.faq.index',
'match' => 'studio.information.faq.*',
'can' => 'view faq',
],
],
],
[

View File

@ -15,7 +15,7 @@
</div>
<div class="mt-6">
<livewire:datatable.studio.manage.faqs-table />
<livewire:datatable.studio.information.faqs-table />
</div>
@include('components.confirmation.delete')

View File

@ -21,6 +21,7 @@
use App\Livewire\Studio\Finance\Expense as ExpenseComponent;
use App\Livewire\Studio\Finance\Payroll as PayrollComponent;
use App\Livewire\Studio\Information\Broadcast as BroadcastComponent;
use App\Livewire\Studio\Information\Faq as FaqComponent;
use App\Livewire\Studio\Information\PriceRequest as PriceRequestComponent;
use App\Livewire\Studio\Loyalty\Customer as CustomerComponent;
use App\Livewire\Studio\Loyalty\Tier as TierComponent;
@ -30,7 +31,6 @@
use App\Livewire\Studio\Manage\Article\Create as ArticleCreate;
use App\Livewire\Studio\Manage\Article\Edit as ArticleEdit;
use App\Livewire\Studio\Manage\Article\Index as ArticleIndex;
use App\Livewire\Studio\Manage\Faq as FaqComponent;
use App\Livewire\Studio\Manage\Order\Create as OrderCreate;
use App\Livewire\Studio\Manage\Order\Index as OrderIndex;
use App\Livewire\Studio\Manage\Order\Show as OrderShow;
@ -172,11 +172,6 @@
Route::get('/{article}/edit', ArticleEdit::class)->name('edit')->middleware('can:update article');
Route::delete('/{article}/delete', ArticleCreate::class)->name('delete')->middleware('can:delete article');
});
Route::prefix('faqs')->name('faq.')->group(function () {
Route::get('/', FaqComponent::class)->name('index')->middleware('can:view faq');
Route::delete('/{faq}/delete', FaqComponent::class)->name('delete')->middleware('can:delete faq');
});
});
Route::prefix('information')->name('studio.information.')->group(function () {
@ -187,6 +182,11 @@
Route::patch('/{priceRequest}/approve', PriceRequestComponent::class)->name('approve')->middleware('can:approve price request');
Route::patch('/{priceRequest}/reject', PriceRequestComponent::class)->name('reject')->middleware('can:reject price request');
});
Route::prefix('faqs')->name('faq.')->group(function () {
Route::get('/', FaqComponent::class)->name('index')->middleware('can:view faq');
Route::delete('/{faq}/delete', FaqComponent::class)->name('delete')->middleware('can:delete faq');
});
});
Route::prefix('feature')->name('studio.feature.')->group(function () {