const HabitTrackerApp = { elements: { habitGrid: null, addHabitForm: null, addHabbitButton: null }, init: function() { this.loadElements(); this.render(); }, setupEventListeners: function() { this.elements.addHabbitButton.addEventListener('click', () => { this.elements.addHabitForm.style.display = 'block'; }); }, loadElements: function() { this.elements.habitGrid = document.getElementById('habits-grid'); this.elements.addHabitForm = document.getElementById('add-habit-form'); this.elements.addHabbitButton = document.getElementById('add-habbit-button'); }, render: function() { const habitsHTML = HabitManager.habits.map(habit => { const cardClass = `habit-card ${habit.isCompleted ? 'habit-card--completed' : ''}`; const progress = (habit.currentCount / habit.targetCount) * 100; return `
💧

${habit.name}

${habit.description}

Прогресс ${progress}%
` }).join(''); this.elements.habitGrid.innerHTML = habitsHTML; } } HabitTrackerApp.loadFromLocalStorage = function() { HabitManager.loadFromLocalStorage(); if (HabitManager.habits.length == 0) { HabitManager.createHabit('Учить js', 'Писать не менее 1000000000 строк кода в день', 8); } } document.addEventListener('DOMContentLoaded', () => { HabitTrackerApp.loadFromLocalStorage(); HabitTrackerApp.init(); });