From 99b661000f2ab244aff893628df8f315028b0f31 Mon Sep 17 00:00:00 2001 From: Kavalar Date: Fri, 20 Mar 2026 19:56:10 +0300 Subject: [PATCH] resume detail SEO --- templates/resume_detail.html | 334 +++++++++-------------------------- 1 file changed, 82 insertions(+), 252 deletions(-) diff --git a/templates/resume_detail.html b/templates/resume_detail.html index 732b6ec..e22a7fc 100644 --- a/templates/resume_detail.html +++ b/templates/resume_detail.html @@ -4,10 +4,10 @@ - + Резюме | Rabota.Today - + @@ -35,27 +35,21 @@ - - - - - + QR-код резюме ${decodedName} + +

${escapeHtml(decodedName)}

${escapeHtml(decodedPosition)}

${window.location.origin}/resume/${resumeId}
- - + `); printWindow.document.close(); printWindow.focus(); @@ -1379,46 +1232,23 @@ END:VCARD`; const url = window.location.origin + '/resume/' + resumeId; const decodedName = decodeHtmlEntities(currentResume.full_name || ''); const text = `Резюме ${decodedName} на Rabota.Today`; - let shareUrl = ''; - switch(platform) { - case 'whatsapp': shareUrl = `https://wa.me/?text=${encodeURIComponent(text + ' ' + url)}`; break; - case 'telegram': shareUrl = `https://t.me/share/url?url=${encodeURIComponent(url)}&text=${encodeURIComponent(text)}`; break; - case 'email': shareUrl = `mailto:?subject=${encodeURIComponent('Резюме ' + decodedName)}&body=${encodeURIComponent(text + '\n\n' + url)}`; break; - } + if (platform === 'whatsapp') shareUrl = `https://wa.me/?text=${encodeURIComponent(text + ' ' + url)}`; + else if (platform === 'telegram') shareUrl = `https://t.me/share/url?url=${encodeURIComponent(url)}&text=${encodeURIComponent(text)}`; + else if (platform === 'email') shareUrl = `mailto:?subject=${encodeURIComponent('Резюме ' + decodedName)}&body=${encodeURIComponent(text + '\n\n' + url)}`; if (shareUrl) window.open(shareUrl, '_blank'); } - function contactCandidate() { - showNotification('Функция связи будет доступна в ближайшее время', 'info'); - } - + function contactCandidate() { showNotification('Функция связи будет доступна в ближайшее время', 'info'); } function saveToFavorites() { const token = localStorage.getItem('accessToken'); - if (!token) { - if (confirm('Для добавления в избранное нужно войти в систему. Перейти на страницу входа?')) { - window.location.href = '/login'; - } - return; - } + if (!token) { if (confirm('Для добавления в избранное нужно войти в систему. Перейти на страницу входа?')) { window.location.href = '/login'; } return; } showNotification('Резюме добавлено в избранное', 'success'); } - function shareResume() { const url = window.location.href; - if (navigator.share) { - navigator.share({ title: document.title, url: url }).catch(() => copyResumeLink()); - } else { - copyResumeLink(); - } - } - - function showNotification(message, type = 'info') { - const notification = document.getElementById('notification'); - notification.className = `notification ${type}`; - notification.innerHTML = message; - notification.style.display = 'block'; - setTimeout(() => { notification.style.display = 'none'; }, 3000); + if (navigator.share) { navigator.share({ title: document.title, url: url }).catch(() => copyResumeLink()); } + else { copyResumeLink(); } } window.onclick = function(event) {