add sample vacation data
This commit is contained in:
parent
2b179697f5
commit
45a4773eec
82
script.js
82
script.js
@ -1,4 +1,65 @@
|
||||
let vacations = [];
|
||||
let vacations = [
|
||||
{
|
||||
id: 1,
|
||||
country: 'Турция',
|
||||
city: 'Анталья',
|
||||
dateFrom: '2026-09-15',
|
||||
dateTo: '2026-09-25',
|
||||
budget: 1200,
|
||||
hotel: 'Rixos Sungate 5*',
|
||||
tickets: 'Рейс TK-412, Турецкие авиалинии'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
country: 'Таиланд',
|
||||
city: 'Пхукет',
|
||||
dateFrom: '2026-11-10',
|
||||
dateTo: '2026-11-24',
|
||||
budget: 2100,
|
||||
hotel: 'JW Marriott Phuket 5*',
|
||||
tickets: 'Рейс SU-270, Аэрофлот + TG-2203'
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
country: 'ОАЭ',
|
||||
city: 'Дубай',
|
||||
dateFrom: '2026-12-20',
|
||||
dateTo: '2026-12-30',
|
||||
budget: 2800,
|
||||
hotel: 'Atlantis The Palm 5*',
|
||||
tickets: 'Рейс FZ-654, FlyDubai'
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
country: 'Мальдивы',
|
||||
city: 'Мале',
|
||||
dateFrom: '2027-01-15',
|
||||
dateTo: '2027-01-25',
|
||||
budget: 4500,
|
||||
hotel: 'Conrad Maldives Rangali 5*',
|
||||
tickets: 'Рейс QR-234, Qatar Airways + гидросамолёт'
|
||||
},
|
||||
{
|
||||
id: 5,
|
||||
country: 'Италия',
|
||||
city: 'Римини',
|
||||
dateFrom: '2026-07-01',
|
||||
dateTo: '2026-07-14',
|
||||
budget: 1600,
|
||||
hotel: 'Grand Hotel Rimini 5*',
|
||||
tickets: 'Рейс AZ-596, ITA Airways'
|
||||
},
|
||||
{
|
||||
id: 6,
|
||||
country: 'Испания',
|
||||
city: 'Барселона',
|
||||
dateFrom: '2026-08-05',
|
||||
dateTo: '2026-08-15',
|
||||
budget: 1400,
|
||||
hotel: 'W Barcelona 5*',
|
||||
tickets: 'Рейс VY-3124, Vueling'
|
||||
}
|
||||
];
|
||||
|
||||
document.getElementById('vacationForm').addEventListener('submit', function(e) {
|
||||
e.preventDefault();
|
||||
@ -35,11 +96,12 @@ function renderCards() {
|
||||
grid.innerHTML = vacations.map(v => {
|
||||
const days = calculateDays(v.dateFrom, v.dateTo);
|
||||
const dates = formatDateRange(v.dateFrom, v.dateTo);
|
||||
const flag = getCountryFlag(v.country);
|
||||
|
||||
return `
|
||||
<div class="vacation-card">
|
||||
<div class="card-location">
|
||||
<div class="flag-icon">🌍</div>
|
||||
<div class="flag-icon">${flag}</div>
|
||||
<div class="location-info">
|
||||
<h3>${escapeHtml(v.country)}</h3>
|
||||
<p>${escapeHtml(v.city)}</p>
|
||||
@ -127,6 +189,22 @@ function escapeHtml(text) {
|
||||
return div.innerHTML;
|
||||
}
|
||||
|
||||
function getCountryFlag(country) {
|
||||
const flags = {
|
||||
'Турция': '🇹🇷',
|
||||
'Таиланд': '🇹🇭',
|
||||
'ОАЭ': '🇦🇪',
|
||||
'Мальдивы': '🇲🇻',
|
||||
'Италия': '🇮🇹',
|
||||
'Испания': '🇪🇸',
|
||||
'Грузия': '🇬🇪',
|
||||
'Египет': '🇪🇬',
|
||||
'Греция': '🇬🇷',
|
||||
'Кипр': '🇨🇾'
|
||||
};
|
||||
return flags[country] || '🌍';
|
||||
}
|
||||
|
||||
function exportToExcel() {
|
||||
if (vacations.length === 0) {
|
||||
alert('Сначала добавьте варианты отпуска');
|
||||
|
||||
Loading…
Reference in New Issue
Block a user