/
Nikolai_123
/
GrapeBilding
Обзор
Документация
Войти
/
Nikolai_123
/
GrapeBilding
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
script.js
130 строк
6 KB
Nikolai_123
Update: script.js
12 авг 2026, 18:55
Верифицирован
12 авг 2026, 18:55
9f35a29
Код
Авторство
О чём код?
// База сортов (упрощённая) const varieties = [ { name: "Аркадия", zone: ["южная", "средняя"], seed: "with-seeds", color: "white", desc: "Ранний столовый сорт. Крупная ягода, высокая урожайность, хорошая транспортабельность." }, { name: "Кодрянка", zone: ["южная", "средняя"], seed: "with-seeds", color: "dark", desc: "Очень ранний сорт. Тёмная ягода, отличный вкус, устойчив к болезням." }, { name: "Кишмиш лучистый", zone: ["южная"], seed: "seedless", color: "pink", desc: "Бессемянный сорт. Красивая розовая ягода, сладкий вкус." }, { name: "Талисман", zone: ["южная", "средняя"], seed: "with-seeds", color: "white", desc: "Крупноплодный сорт. Хорошо переносит транспортировку." }, { name: "Преображение", zone: ["южная"], seed: "with-seeds", color: "pink", desc: "Крупная ягода розового цвета, ранний срок созревания." }, { name: "Юбилей Новочеркасска", zone: ["южная", "средняя"], seed: "with-seeds", color: "pink", desc: "Крупноплодный сорт с отличным товарным видом." }, { name: "Августин", zone: ["средняя", "северная"], seed: "with-seeds", color: "white", desc: "Устойчивый сорт для более прохладных регионов." }, { name: "Краса Никополя", zone: ["южная"], seed: "seedless", color: "dark", desc: "Бессемянный тёмный сорт, сладкий вкус." } ]; function determineZone() { const city = document.getElementById("city-input").value.trim().toLowerCase(); const resultBox = document.getElementById("zone-result"); if (!city) { alert("Введите город или регион"); return; } let zone = "южная"; let zoneName = "Южная зона (Краснодарский край, Крым, Ростовская область и т.п.)"; if (city.includes("москва") || city.includes("тула") || city.includes("рязань") || city.includes("тверь") || city.includes("ярославль") || city.includes("владимир")) { zone = "северная"; zoneName = "Северная зона (Москва и область, Центральная Россия)"; } else if (city.includes("воронеж") || city.includes("саратов") || city.includes("волгоград") || city.includes("тамбов") || city.includes("пенза") || city.includes("ульяновск")) { zone = "средняя"; zoneName = "Средняя зона"; } else if (city.includes("темрюк") || city.includes("краснодар") || city.includes("анапа") || city.includes("новороссийск") || city.includes("сочи") || city.includes("крым") || city.includes("ростов") || city.includes("таганрог")) { zone = "южная"; zoneName = "Южная зона (отлично подходит для большинства сортов)"; } // Сохраняем зону window.currentZone = zone; resultBox.style.display = "block"; resultBox.innerHTML = `<strong>Определена зона:</strong> ${zoneName}`; // Показываем следующий шаг document.getElementById("step-preferences").style.display = "block"; } function showRecommendations() { const seed = document.getElementById("seed-type").value; const color = document.getElementById("color").value; const zone = window.currentZone || "южная"; const filtered = varieties.filter(v => { const zoneOk = v.zone.includes(zone); const seedOk = seed === "any" || v.seed === seed; const colorOk = color === "any" || v.color === color; return zoneOk && seedOk && colorOk; }); const list = document.getElementById("results-list"); const section = document.getElementById("recommendations"); if (filtered.length === 0) { list.innerHTML = "<p>По вашим параметрам подходящих сортов не найдено. Попробуйте изменить фильтры.</p>"; } else { list.innerHTML = filtered.map(v => ` <div class="variety-card"> <h3>${v.name}</h3> <p>${v.desc}</p> <div class="tags"> <span class="tag">${v.seed === "seedless" ? "Без косточек" : "С косточками"}</span> <span class="tag">${v.color === "white" ? "Белый" : v.color === "pink" ? "Розовый" : "Тёмный"}</span> </div> </div> `).join(""); } section.style.display = "block"; section.scrollIntoView({ behavior: "smooth" }); }