Files
Virtnet.bond/extensions/Others/ContactPage/ContactPage.php
2025-11-30 11:57:22 +01:00

70 lines
2.6 KiB
PHP

<?php
namespace Paymenter\Extensions\Others\ContactPage;
use Exception;
use Livewire\Livewire;
use App\Classes\Extension\Extension;
use Illuminate\Support\Facades\Artisan;
use Illuminate\Support\Facades\Event;
use Illuminate\Support\Facades\View;
use Illuminate\Support\HtmlString;
use Paymenter\Extensions\Others\ContactPage\Livewire\Contact\ContactForm;
use Paymenter\Extensions\Others\ContactPage\Livewire\Abuse\AbuseForm;
use Paymenter\Extensions\Others\ContactPage\Models\ContactMessage;
use Paymenter\Extensions\Others\ContactPage\Models\AbuseReport;
use Paymenter\Extensions\Others\ContactPage\Admin\Resources\ContactMessageResource;
use Paymenter\Extensions\Others\ContactPage\Admin\Resources\AbuseReportResource;
class ContactPage extends Extension
{
public function getConfig($values = [])
{
try {
return [
[
'name' => 'Notice',
'type' => 'placeholder',
'label' => new HtmlString(
'Use this extension to create contact and abuse reporting pages for your customers.
<br><br><small><i>Need support? Join our Discord at <a href="https://discord.gg/DP3atuhnsB">https://discord.gg/DP3atuhnsB</a></small></i>'
),
],
];
} catch (Exception $e) {
return [
[
'name' => 'Notice',
'type' => 'placeholder',
'label' => new HtmlString(
'You need to enable this extension before using it.
<br><br><small><i>Need support? Join our Discord at <a href="https://discord.gg/DP3atuhnsB">https://discord.gg/DP3atuhnsB</a></small></i>'
),
],
];
}
}
public function enabled()
{
Artisan::call('migrate', [
'--path' => 'extensions/Others/ContactPage/database/migrations',
'--force' => true
]);
}
public function boot()
{
View::addNamespace('contactpage', __DIR__ . '/resources/views');
require __DIR__ . '/routes/web.php';
Livewire::component('contact.form', ContactForm::class);
Livewire::component('abuse.form', AbuseForm::class);
if (class_exists(\Filament\Filament::class)) {
\Filament\Filament::registerResources([
ContactMessageResource::class,
AbuseReportResource::class,
]);
}
}
}