Initial commit: Grav CMS setup with HTML reference material
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
/**
|
||||
* Scheduler Admin JavaScript
|
||||
* Handles dynamic loading of scheduler status in admin panel
|
||||
*/
|
||||
|
||||
(function() {
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* Test scheduler webhook
|
||||
*/
|
||||
window.testSchedulerWebhook = function() {
|
||||
const token = document.querySelector('input[name="data[scheduler][modern][webhook][token]"]')?.value;
|
||||
|
||||
if (!token) {
|
||||
alert('Please set a webhook token first');
|
||||
return;
|
||||
}
|
||||
|
||||
const baseUrl = window.schedulerBaseUrl || window.location.origin;
|
||||
const webhookUrl = baseUrl + '/scheduler/webhook';
|
||||
|
||||
fetch(webhookUrl, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'Authorization': 'Bearer ' + token,
|
||||
'Accept': 'application/json'
|
||||
}
|
||||
})
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.success) {
|
||||
alert('Webhook test successful! Jobs run: ' + (data.jobs_run || 0));
|
||||
} else {
|
||||
alert('Webhook test failed: ' + (data.message || 'Unknown error'));
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
alert('Webhook test error: ' + error.message);
|
||||
});
|
||||
};
|
||||
|
||||
/**
|
||||
* Generate secure token
|
||||
*/
|
||||
window.generateSchedulerToken = function() {
|
||||
const tokenField = document.querySelector('input[name="data[scheduler][modern][webhook][token]"]');
|
||||
|
||||
if (!tokenField) {
|
||||
return;
|
||||
}
|
||||
|
||||
// Generate random token (32 bytes = 64 hex chars)
|
||||
const array = new Uint8Array(32);
|
||||
crypto.getRandomValues(array);
|
||||
const token = Array.from(array, byte => byte.toString(16).padStart(2, '0')).join('');
|
||||
|
||||
tokenField.value = token;
|
||||
|
||||
// Trigger change event
|
||||
const event = new Event('change', { bubbles: true });
|
||||
tokenField.dispatchEvent(event);
|
||||
};
|
||||
|
||||
})();
|
||||
Reference in New Issue
Block a user