From f6525cb09444cdc65ea55b1dedd1e729e2dcd147 Mon Sep 17 00:00:00 2001 From: Dauren777 Date: Mon, 1 Jun 2026 12:12:32 +0000 Subject: [PATCH] =?UTF-8?q?v23=20=E2=80=94=20=D1=8F=D0=B2=D0=BD=D1=8B?= =?UTF-8?q?=D0=B5=20=D0=BF=D0=BE=D0=B4=D1=81=D0=BA=D0=B0=D0=B7=D0=BA=D0=B8?= =?UTF-8?q?=20=D0=BD=D0=B0=20=D0=BA=D0=B0=D0=B6=D0=B4=D0=BE=D0=BC=20=D1=88?= =?UTF-8?q?=D0=B0=D0=B3=D0=B5=20=D1=80=D0=B5=D0=B3=D0=B8=D1=81=D1=82=D1=80?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B2=D0=BC=D0=B5=D1=81=D1=82=D0=BE?= =?UTF-8?q?=20=D0=98=D0=98-=D1=87=D0=B0=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 104 ++++++----------------------------------------------- 1 file changed, 10 insertions(+), 94 deletions(-) diff --git a/index.html b/index.html index aa16bd7..a2d769e 100644 --- a/index.html +++ b/index.html @@ -132,13 +132,6 @@ label.file-btn{display:inline-block;background:#1a2332;padding:12px 20px;border- label.file-btn:active{background:#2a3342} input[type=file]{display:none} -.ai-helper{position:fixed;bottom:16px;right:16px;z-index:350;width:280px;max-width:90vw;background:var(--ink);border:1px solid #2a3342;border-radius:16px;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.5);transition:transform .3s} -.ai-helper.minimized{transform:translateY(calc(100% - 44px))} -.ai-helper .ai-hdr{background:var(--cyan);color:var(--ink);padding:8px 14px;font-weight:700;font-size:13px;display:flex;justify-content:space-between;align-items:center;cursor:pointer} -.ai-helper .ai-hdr button{background:none;border:none;color:var(--ink);font-size:16px;cursor:pointer} -.ai-helper .ai-body{padding:10px;max-height:200px;overflow-y:auto;display:flex;flex-direction:column;gap:6px} -.ai-helper .ai-msg{background:#1a2332;color:var(--cyan);padding:6px 10px;border-radius:10px;font-size:12px;line-height:1.4;animation:fadeIn .4s} -@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}} /* ROLE BUTTONS */ @@ -216,6 +209,7 @@ input[type=file]{display:none}

🔑 Придумай логин и пароль

Логин — твоё имя в приложении. Пароль — секрет.

+
🤖 Подсказка: Логин — латиница, без пробелов. Пароль — минимум 3 символа.
@@ -227,6 +221,7 @@ input[type=file]{display:none}

🏊 Твой вид спорта

Выбери из списка олимпийских видов

+
🤖 Подсказка: Выбери свой вид спорта. В списке — все 39 олимпийских видов.
@@ -238,6 +233,7 @@ input[type=file]{display:none}

👤 Кто ты?

Выбери свою роль в спорте

+
🤖 Подсказка: Кто ты? Спортсмен, тренер или родитель? Если родитель — укажи имя ребёнка.
@@ -254,6 +250,7 @@ input[type=file]{display:none}

🎂 Дата рождения

Возраст посчитается автоматически

+
🤖 Подсказка: Дата рождения — возраст посчитается сам. Выбери аватарку или загрузи фото.

📷 Выбери аватарку:

@@ -278,6 +275,7 @@ input[type=file]{display:none}

🌍 Где ты?

Страна и город

+
🤖 Подсказка: Сначала выбери страну, потом город.
@@ -290,6 +288,7 @@ input[type=file]{display:none}

🏫 Клуб и тренер

Где и с кем ты тренируешься

+
🤖 Подсказка: Укажи клуб, тренера и разряд. Цель — твоя главная мечта.
@@ -303,6 +302,7 @@ input[type=file]{display:none}

📱 Контакты

Телефон и email — чтобы тренер и родители могли связаться

+
🤖 Подсказка: Телефон ОБЯЗАТЕЛЕН (формат +77011234567). Email нужен для связи.
@@ -311,16 +311,7 @@ input[type=file]{display:none}
- -
-
- 🤖 Твой помощник - -
-
-
👋 Привет! Я помогу заполнить профиль.
-
-
+
@@ -329,17 +320,6 @@ input[type=file]{display:none}
- -
-
- 🤖 Помощник - -
-
-
👋 Я здесь! Нажми на раздел — подскажу.
-
-
-
@@ -501,52 +481,6 @@ const LS=(k)=>{try{return JSON.parse(localStorage.getItem('g_'+k))}catch{return const SS=(k,v)=>{try{localStorage.setItem('g_'+k,JSON.stringify(v))}catch{toast('Память полна!')}}; let currentUser=null, currentPage='profile', currentChat=null, chatFilter='all'; -function toggleAI(helperId, btnId) { - const ai = document.getElementById(helperId); - const btn = document.getElementById(btnId); - if (!ai) return; - ai.classList.toggle('minimized'); - btn.textContent = ai.classList.contains('minimized') ? '\u25B2' : '\u25BC'; -} - -function aiSay(msg, target) { - const body = document.getElementById(target || 'aiAppBody') || document.getElementById('aiRegBody'); - if (!body) return; - const div = document.createElement('div'); - div.className = 'ai-msg'; - div.innerHTML = msg; - body.appendChild(div); - body.scrollTop = body.scrollHeight; -} - -function showAIForTab(tab) { - const tips = { - profile: '👤 Это твой профиль. Здесь значки, достижения, данные. Добавь достижение или скачай отчёт для тренера!', - diary: '📖 Дневник тренировок. Записывай каждую! Через месяц увидишь прогресс.', - calendar: '📅 Календарь соревнований. Добавляй турниры и сборы — не пропустишь ни одного старта!', - chat: '💬 Чаты с другими спортсменами, тренерами и родителями. Жми 🎮 чтобы поиграть!', - tools: '⚙ Инструменты: нормативы, сравнение с чемпионами, анализ видео, витамины, рейтинг.', - students: '👥 Твои ученики. Здесь их дневники и прогресс.', - child: '👶 Профиль твоего ребёнка. Смотри тренировки, значки, цели.' - }; - if (tips[tab]) aiSay(tips[tab], 'aiAppBody'); -} - -// Registration AI hints -function aiRegHint(step) { - const hints = { - 1: '✏ Напиши фамилию, имя и отчество полностью. Например: Кайрат Гали Аскарович.', - 2: '🔑 Придумай логин (латиница) и пароль. Пароль — минимум 3 символа. Смотри на индикатор силы!', - 3: '🏊 Выбери свой вид спорта. Все варианты — олимпийские!', - 4: '👤 Кто ты в спорте? Спортсмен, тренер или родитель? Если родитель — введи имя ребёнка.', - 5: '🎂 Дата рождения. Возраст посчитается сам! Выбери аватарку или загрузи фото.', - 6: '🌍 Где ты живёшь? Выбери страну — появятся города.', - 7: '🏫 Твой клуб, тренер, разряд и главная цель. Это важно!', - 8: '📱 Телефон и email ОБЯЗАТЕЛЬНЫ! Телефон в формате +7... Без них нельзя завершить регистрацию.' - }; - if (hints[step]) aiSay(hints[step], 'aiRegBody'); -} - // Show AI assistant on login @@ -593,12 +527,6 @@ function backToLogin(){ document.getElementById('regScreen').classList.remove('active'); document.getElementById('loginScreen').classList.add('active'); // Show AI helper on login - setTimeout(() => { - const ai = document.getElementById('aiAppHelper'); - if(ai) ai.classList.add('show'); - const aiReg = document.getElementById('aiRegHelper'); - if(aiReg) aiReg.classList.add('show'); - }, 500); } function showRegStep(n){ regStep=n; @@ -607,7 +535,7 @@ function showRegStep(n){ if(step){step.classList.add('active');step.querySelector('input,select')?.focus()} document.getElementById('stepNum').textContent=n; updateStepDots(); - setTimeout(() => aiRegHint(n), 200); + } function buildStepDots(){ let h=''; for(let i=1;i<=8;i++)h+=`
`; @@ -743,7 +671,7 @@ function showPage(page){ currentPage=page; document.querySelectorAll('.nav-item').forEach(n=>n.classList.toggle('active',n.dataset.page===page)); renderPage(); - setTimeout(() => showAIForTab(page), 300); + } function renderPage(){ if(isAdmin()){ @@ -1500,12 +1428,6 @@ function doLogout(){ document.getElementById('appScreen').classList.remove('active'); document.getElementById('loginScreen').classList.add('active'); // Show AI helper on login - setTimeout(() => { - const ai = document.getElementById('aiAppHelper'); - if(ai) ai.classList.add('show'); - const aiReg = document.getElementById('aiRegHelper'); - if(aiReg) aiReg.classList.add('show'); - }, 500); document.getElementById('lUser').value='';document.getElementById('lPass').value=''; } @@ -1529,12 +1451,6 @@ function renderAll(){ if('serviceWorker'in navigator)navigator.serviceWorker.register('sw.js').catch(()=>{}); document.getElementById('loginScreen').classList.add('active'); // Show AI helper on login - setTimeout(() => { - const ai = document.getElementById('aiAppHelper'); - if(ai) ai.classList.add('show'); - const aiReg = document.getElementById('aiRegHelper'); - if(aiReg) aiReg.classList.add('show'); - }, 500);