<?php
/**
* Plugin Name: My Awedesk Extension
* Description: Example extension for Awedesk.
* Version: 0.1.0
*/
defined('ABSPATH') || exit;
add_action('plugins_loaded', function (): void {
if (!class_exists('ALSP')) {
return;
}
require_once __DIR__ . '/includes/class-my-awedesk-extension.php';
My_Awedesk_Extension::boot();
});
<?php
final class My_Awedesk_Extension {
public static function boot(): void {
add_action('alsp_ticket_new', [__CLASS__, 'ticket_created'], 10, 2);
add_filter('alsp_frontend_data', [__CLASS__, 'frontend_data']);
}
public static function ticket_created(int $ticket_id, int $message_id): void {
error_log(sprintf('Awedesk ticket %d was created with message %d', $ticket_id, $message_id));
}
public static function frontend_data(array $data): array {
$data['my_extension'] = [
'enabled' => current_user_can('read'),
];
return $data;
}
}