modified: main_dc/valitovgaziz/html/scripts.js
add universal handler for button sendMessageTelegram
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
function saveContact() {
|
||||
// Создаем содержимое vCard (VCF)
|
||||
const vCardData = `BEGIN:VCARD
|
||||
// Создаем содержимое vCard (VCF)
|
||||
const vCardData = `BEGIN:VCARD
|
||||
VERSION:3.0
|
||||
FN:Валитов Газиз Камилевич
|
||||
N:Валитов;Газиз;Камилевич
|
||||
@@ -17,38 +17,38 @@ URL:https://vk.ru/id378105199
|
||||
BDAY:1985-10-27
|
||||
END:VCARD`;
|
||||
|
||||
// Создаем Blob (бинарный объект) с данными vCard
|
||||
const blob = new Blob([vCardData], { type: 'text/vcard' });
|
||||
// Создаем Blob (бинарный объект) с данными vCard
|
||||
const blob = new Blob([vCardData], { type: 'text/vcard' });
|
||||
|
||||
// Создаем URL для скачивания
|
||||
const url = URL.createObjectURL(blob);
|
||||
// Создаем URL для скачивания
|
||||
const url = URL.createObjectURL(blob);
|
||||
|
||||
// Создаем временную ссылку для скачивания
|
||||
const link = document.createElement('a');
|
||||
link.href = url;
|
||||
link.download = 'valitovgaziz.vcf'; // Имя файла
|
||||
link.click();
|
||||
// Создаем временную ссылку для скачивания
|
||||
const link = document.createElement('a');
|
||||
link.href = url;
|
||||
link.download = 'valitovgaziz.vcf'; // Имя файла
|
||||
link.click();
|
||||
|
||||
// Освобождаем память
|
||||
URL.revokeObjectURL(url);
|
||||
// Освобождаем память
|
||||
URL.revokeObjectURL(url);
|
||||
}
|
||||
|
||||
function loadTermSheet() {
|
||||
// Create a temporary anchor element
|
||||
const link = document.createElement('a');
|
||||
|
||||
|
||||
// Set correct relative path to the PDF file
|
||||
link.href = './assets/docs/TermSheet.pdf';
|
||||
|
||||
|
||||
// Set download attribute with filename
|
||||
link.download = 'TermSheet.pdf';
|
||||
|
||||
|
||||
// Append to body to make it work in some browsers
|
||||
document.body.appendChild(link);
|
||||
|
||||
|
||||
// Trigger the download
|
||||
link.click();
|
||||
|
||||
|
||||
// Clean up
|
||||
document.body.removeChild(link);
|
||||
}
|
||||
@@ -56,6 +56,13 @@ function loadTermSheet() {
|
||||
|
||||
// Обработчик для кнопки "Запросить презентацию"
|
||||
function sendMessageTelegram() {
|
||||
// Проверяем, поддерживает ли браузер диалоги
|
||||
if (typeof window.orientation !== 'undefined' && !window.confirm) {
|
||||
// Для мобильных браузеров без поддержки prompt - открываем Telegram напрямую
|
||||
window.open('https://t.me/valitovgaziz', '_blank');
|
||||
return;
|
||||
}
|
||||
|
||||
const message = prompt("Опишите, пожалуйста, ваше предложение или вопрос. Я свяжусь с вами в ближайшее время:");
|
||||
if (message) {
|
||||
const BOT_TOKEN = "8470085635:AAEPZcsN3n-3FkMdr7DzxbiQ3q8mXZTGwug";
|
||||
@@ -72,18 +79,54 @@ function sendMessageTelegram() {
|
||||
method: 'POST',
|
||||
body: formData
|
||||
})
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.ok) {
|
||||
alert("Сообщение успешно отправлено! Я свяжусь с вами в ближайшее время.");
|
||||
} else {
|
||||
console.error('Telegram API Error:', data);
|
||||
alert("Ошибка: " + (data.description || 'Неизвестная ошибка'));
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error("Ошибка:", error);
|
||||
alert("Произошла ошибка сети. Попробуйте позже или свяжитесь со мной напрямую.");
|
||||
});
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.ok) {
|
||||
alert("Сообщение успешно отправлено! Я свяжусь с вами в ближайшее время.");
|
||||
} else {
|
||||
console.error('Telegram API Error:', data);
|
||||
alert("Ошибка: " + (data.description || 'Неизвестная ошибка'));
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
console.error("Ошибка:", error);
|
||||
alert("Произошла ошибка сети. Попробуйте позже или свяжитесь со мной напрямую.");
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Универсальный обработчик для кнопок
|
||||
function setupButtonHandlers() {
|
||||
const buttons = document.querySelectorAll('button[onclick*="sendMessageTelegram"]');
|
||||
|
||||
buttons.forEach(button => {
|
||||
// Удаляем старые обработчики
|
||||
button.removeAttribute('onclick');
|
||||
|
||||
// Добавляем универсальные обработчики
|
||||
button.addEventListener('click', handleTelegramButtonClick);
|
||||
button.addEventListener('touchstart', handleTelegramButtonClick, { passive: true });
|
||||
});
|
||||
}
|
||||
|
||||
// Обработчик кликов для Telegram кнопок
|
||||
function handleTelegramButtonClick(event) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
|
||||
// Для touch-событий, предотвращаем повторное срабатывание
|
||||
if (event.type === 'touchstart') {
|
||||
const now = Date.now();
|
||||
if (this.lastTouch && (now - this.lastTouch) < 500) {
|
||||
return;
|
||||
}
|
||||
this.lastTouch = now;
|
||||
}
|
||||
|
||||
sendMessageTelegram();
|
||||
}
|
||||
|
||||
// Инициализация при загрузке страницы
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
setupButtonHandlers();
|
||||
});
|
||||
Reference in New Issue
Block a user