fix: defer referral operations page initialization
This commit is contained in:
@@ -52,13 +52,23 @@ trait UsersMenusReferral {
|
||||
</div>
|
||||
<script>
|
||||
(() => {
|
||||
const init = () => {
|
||||
const root = document.getElementById('aksrt-referral-ops');
|
||||
if (!root || root.dataset.aksrtReferralReady === '1') return;
|
||||
|
||||
const endpoint = <?php echo wp_json_encode($endpoint); ?>;
|
||||
const nonce = <?php echo wp_json_encode($nonce); ?>;
|
||||
const rows = document.getElementById('aksrt-ref-rows');
|
||||
const pages = document.getElementById('aksrt-ref-pages');
|
||||
const notice = document.getElementById('aksrt-ref-notice');
|
||||
const search = document.getElementById('aksrt-ref-search');
|
||||
const status = document.getElementById('aksrt-ref-status');
|
||||
const rows = root.querySelector('#aksrt-ref-rows');
|
||||
const pages = root.querySelector('#aksrt-ref-pages');
|
||||
const notice = root.querySelector('#aksrt-ref-notice');
|
||||
const search = root.querySelector('#aksrt-ref-search');
|
||||
const status = root.querySelector('#aksrt-ref-status');
|
||||
const filter = root.querySelector('#aksrt-ref-filter');
|
||||
if (!rows || !pages || !notice || !search || !status || !filter) {
|
||||
console.error('[AKSRT] Referral operations could not initialize: required page elements are missing.');
|
||||
return;
|
||||
}
|
||||
root.dataset.aksrtReferralReady = '1';
|
||||
let currentPage = 1;
|
||||
|
||||
const escapeHtml = (value) => String(value ?? '').replace(/[&<>'"]/g, (char) => ({
|
||||
@@ -119,9 +129,9 @@ trait UsersMenusReferral {
|
||||
}
|
||||
};
|
||||
|
||||
document.getElementById('aksrt-ref-filter').addEventListener('click', () => load(1));
|
||||
filter.addEventListener('click', () => load(1));
|
||||
search.addEventListener('keydown', (event) => { if (event.key === 'Enter') load(1); });
|
||||
document.getElementById('aksrt-ref-ops').addEventListener('click', async (event) => {
|
||||
root.addEventListener('click', async (event) => {
|
||||
const pageButton = event.target.closest('[data-ref-page]');
|
||||
if (pageButton) return load(Number(pageButton.dataset.refPage));
|
||||
const button = event.target.closest('[data-ref-action]');
|
||||
@@ -137,6 +147,13 @@ trait UsersMenusReferral {
|
||||
}
|
||||
});
|
||||
load();
|
||||
};
|
||||
|
||||
if (document.readyState === 'loading') {
|
||||
document.addEventListener('DOMContentLoaded', init, { once: true });
|
||||
} else {
|
||||
init();
|
||||
}
|
||||
})();
|
||||
</script>
|
||||
<?php
|
||||
|
||||
Reference in New Issue
Block a user