import { navigate } from '../router.js';
function escapeHtml(text) {
return String(text || '')
.replaceAll('&', '&')
.replaceAll('<', '<')
.replaceAll('>', '>')
.replaceAll('"', '"')
.replaceAll("'", ''');
}
export function openAuthRequiredModal({
title = 'Нужен вход',
text = 'Эта часть доступна после входа.',
} = {}) {
const root = document.getElementById('modal-root');
if (!(root instanceof HTMLElement)) {
window.alert(`${title}\n\n${text}`);
return;
}
root.innerHTML = `
${escapeHtml(title)}
${escapeHtml(text)}
`;
const close = () => { root.innerHTML = ''; };
root.querySelector('#auth-required-login')?.addEventListener('click', () => {
close();
navigate('login-view');
});
root.querySelector('#auth-required-register')?.addEventListener('click', () => {
close();
navigate('register-view');
});
root.querySelector('#auth-required-modal')?.addEventListener('click', (event) => {
if (event.target?.id === 'auth-required-modal') close();
});
}