Initial dev export (exclude uploads/runtime)
This commit is contained in:
36
plugins/support/plugin.php
Normal file
36
plugins/support/plugin.php
Normal file
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
use Core\Http\Router;
|
||||
use Core\Services\Shortcodes;
|
||||
use Plugins\Support\SupportController;
|
||||
|
||||
require_once __DIR__ . '/SupportController.php';
|
||||
|
||||
Shortcodes::register('support-link', static function (array $attrs = []): string {
|
||||
$label = trim((string)($attrs['label'] ?? 'Support'));
|
||||
if ($label === '') {
|
||||
$label = 'Support';
|
||||
}
|
||||
return '<a class="ac-shortcode-link ac-shortcode-link-support" href="/contact">' . htmlspecialchars($label, ENT_QUOTES, 'UTF-8') . '</a>';
|
||||
});
|
||||
|
||||
return function (Router $router): void {
|
||||
$controller = new SupportController();
|
||||
|
||||
$router->get('/contact', [$controller, 'contactForm']);
|
||||
$router->post('/contact', [$controller, 'contactSubmit']);
|
||||
|
||||
$router->get('/admin/support', [$controller, 'adminIndex']);
|
||||
$router->post('/admin/support/install', [$controller, 'adminInstall']);
|
||||
$router->get('/admin/support/settings', [$controller, 'adminSettings']);
|
||||
$router->post('/admin/support/settings', [$controller, 'adminSaveSettings']);
|
||||
$router->post('/admin/support/settings/regenerate-key', [$controller, 'adminRegenerateCronKey']);
|
||||
$router->post('/admin/support/settings/test-imap', [$controller, 'adminTestImap']);
|
||||
$router->post('/admin/support/settings/run-sync', [$controller, 'adminRunImapSync']);
|
||||
$router->get('/support/imap-sync', [$controller, 'cronImapSync']);
|
||||
$router->get('/admin/support/ticket', [$controller, 'adminTicket']);
|
||||
$router->post('/admin/support/ticket/reply', [$controller, 'adminReply']);
|
||||
$router->post('/admin/support/ticket/status', [$controller, 'adminSetStatus']);
|
||||
$router->post('/admin/support/ticket/delete', [$controller, 'adminDeleteTicket']);
|
||||
};
|
||||
Reference in New Issue
Block a user