var IMG = {
hero: "tilda_assets/hero.webp",
bar: "tilda_assets/bar.webp",
hall_p: "tilda_assets/hall_p.webp",
hall: "tilda_assets/hall.webp",
guests: "tilda_assets/guests.webp",
banquet: "tilda_assets/banquet.webp",
dishes_p: "tilda_assets/dishes_p.webp",
table: "tilda_assets/table.webp",
caviar_p: "tilda_assets/caviar_p.webp",
oyster: "tilda_assets/oyster.webp",
shrimp: "tilda_assets/shrimp.webp",
cheese: "tilda_assets/cheese.webp",
duck: "tilda_assets/duck.webp",
fish: "tilda_assets/fish.webp",
pavlova: "tilda_assets/pavlova.webp"
};
(function(){
/* ============ НАСТРОЙКИ ============ */
var SETTINGS = {
phone: '+70000000000', // телефон для ссылки tel: (без пробелов)
telegram: 'https://t.me/your_username', // ссылка на Telegram
menu: '#', // ссылка на полное меню (PDF или страница)
route: 'https://yandex.ru/maps/?text=' + encodeURIComponent('Ваш город, ул. Название, 1')
};
/* ================================== */
var root = document.getElementById('rs');
if(!root) return;
// фото
root.querySelectorAll('[data-img]').forEach(function(el){
var k = el.getAttribute('data-img');
if(IMG[k]) el.src = IMG[k];
});
// ссылки
document.getElementById('rs-tel').href = 'tel:' + SETTINGS.phone;
document.getElementById('rs-tg').href = SETTINGS.telegram;
document.getElementById('rs-menu-link').href = SETTINGS.menu;
document.getElementById('rs-route').href = SETTINGS.route;
// плавный переход по якорям
var reduce = window.matchMedia && matchMedia('(prefers-reduced-motion: reduce)').matches;
root.querySelectorAll('[data-go]').forEach(function(a){
a.addEventListener('click', function(e){
var t = document.querySelector(a.getAttribute('href'));
if(!t) return;
e.preventDefault();
t.scrollIntoView({behavior: reduce ? 'auto' : 'smooth', block:'start'});
});
});
// шапка
var head = document.getElementById('rs-head');
function onScroll(){ head.classList.toggle('is-solid', window.scrollY > 60); }
window.addEventListener('scroll', onScroll, {passive:true}); onScroll();
// золотые нити
var box = document.getElementById('rs-threads');
function threads(){
box.innerHTML = '';
var n = Math.max(24, Math.round(box.clientWidth / 15)), seed = 7, frag = document.createDocumentFragment();
function rnd(){ seed = (seed * 9301 + 49297) % 233280; return seed / 233280; }
for(var i = 0; i < n; i++){
var t = document.createElement('i');
t.className = 'rs-thread';
t.style.left = (i / n * 100 + rnd() * 0.8) + '%';
t.style.height = (18 + rnd() * 82) + '%';
t.style.opacity = (0.35 + rnd() * 0.6).toFixed(2);
t.style.animationDelay = (rnd() * 0.9).toFixed(2) + 's';
frag.appendChild(t);
}
box.appendChild(frag);
}
threads();
var lastW = window.innerWidth;
window.addEventListener('resize', function(){ if(Math.abs(window.innerWidth - lastW) > 80){ lastW = window.innerWidth; threads(); } });
// меню: выбор блюда
var dishes = root.querySelectorAll('.rs-dish'), pics = root.querySelectorAll('.rs-stage img');
function pick(i){
dishes.forEach(function(d, k){
var on = k === i;
d.classList.toggle('is-on', on);
d.setAttribute('aria-pressed', on ? 'true' : 'false');
});
pics.forEach(function(p, k){ p.classList.toggle('is-on', k === i); });
}
dishes.forEach(function(d){
var i = +d.getAttribute('data-dish');
d.addEventListener('click', function(){ pick(i); });
d.addEventListener('mouseenter', function(){ if(window.matchMedia('(hover:hover)').matches) pick(i); });
});
})();