v2: хакатон -> общее мероприятие

This commit is contained in:
yerzhan_assanov2 2026-09-15 11:08:47 +00:00
parent 9b1058c9c3
commit 9d8e94d5be
3 changed files with 37 additions and 56 deletions

View File

@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="viewport" content="width=device-width,initial-scale=1">
<title>Заявки — Хакатон Казахтелеком</title> <title>Заявки — Мероприятие Казахтелеком</title>
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>📋</text></svg>"> <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>📋</text></svg>">
<link rel="stylesheet" href="design-system/kt-ai-fonts.css"> <link rel="stylesheet" href="design-system/kt-ai-fonts.css">
<link rel="stylesheet" href="design-system/kt-ai-tokens.css"> <link rel="stylesheet" href="design-system/kt-ai-tokens.css">
@ -25,7 +25,7 @@
<header class="kt-ai-pagehead"> <header class="kt-ai-pagehead">
<div class="kt-ai-wrap kt-ai-pagehead-in"> <div class="kt-ai-wrap kt-ai-pagehead-in">
<strong>Хакатон Казахтелеком · Заявки</strong> <strong>Мероприятие Казахтелеком · Заявки</strong>
<span class="kt-ai-spacer"></span> <span class="kt-ai-spacer"></span>
<a class="kt-ai-btn" data-variant="ghost" href="index.html">← К форме</a> <a class="kt-ai-btn" data-variant="ghost" href="index.html">← К форме</a>
</div> </div>
@ -41,7 +41,7 @@
<div class="reg-table-wrap"> <div class="reg-table-wrap">
<table id="regTable"> <table id="regTable">
<thead> <thead>
<tr><th>ФИО</th><th>Email</th><th>Телефон</th><th>Город</th><th>Направление</th><th>Роль</th><th>Команда</th><th>Дата</th></tr> <tr><th>ФИО</th><th>Email</th><th>Телефон</th><th>Город</th><th>Формат</th><th>Статус</th><th>Компания</th><th>Дата</th></tr>
</thead> </thead>
<tbody id="tbody"></tbody> <tbody id="tbody"></tbody>
</table> </table>
@ -59,7 +59,7 @@ fetch("api/registrations").then(r => r.json()).then(function (items) {
items.forEach(function (i) { if (i.team) teams[i.team] = (teams[i.team] || 0) + 1; }); items.forEach(function (i) { if (i.team) teams[i.team] = (teams[i.team] || 0) + 1; });
kpi.innerHTML = kpi.innerHTML =
'<div class="kpi"><b>' + items.length + '</b><span>заявок</span></div>' + '<div class="kpi"><b>' + items.length + '</b><span>заявок</span></div>' +
'<div class="kpi"><b>' + Object.keys(teams).length + '</b><span>команд</span></div>'; '<div class="kpi"><b>' + Object.keys(teams).length + '</b><span>компаний</span></div>';
tbody.innerHTML = items.map(function (i) { tbody.innerHTML = items.map(function (i) {
return "<tr><td>" + esc(i.fio) + "</td><td>" + esc(i.email) + "</td><td>" + esc(i.phone) + return "<tr><td>" + esc(i.fio) + "</td><td>" + esc(i.email) + "</td><td>" + esc(i.phone) +
"</td><td>" + esc(i.city) + "</td><td>" + esc(i.track) + "</td><td>" + esc(i.role) + "</td><td>" + esc(i.city) + "</td><td>" + esc(i.track) + "</td><td>" + esc(i.role) +

View File

@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="viewport" content="width=device-width,initial-scale=1">
<title>Мой кабинет — Хакатон Казахтелеком</title> <title>Мой кабинет — Мероприятие Казахтелеком</title>
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>👤</text></svg>"> <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>👤</text></svg>">
<link rel="stylesheet" href="design-system/kt-ai-fonts.css"> <link rel="stylesheet" href="design-system/kt-ai-fonts.css">
<link rel="stylesheet" href="design-system/kt-ai-tokens.css"> <link rel="stylesheet" href="design-system/kt-ai-tokens.css">
@ -25,7 +25,7 @@
<header class="kt-ai-pagehead"> <header class="kt-ai-pagehead">
<div class="kt-ai-wrap kt-ai-pagehead-in"> <div class="kt-ai-wrap kt-ai-pagehead-in">
<strong>Хакатон Казахтелеком</strong> <strong>Мероприятие Казахтелеком</strong>
<span class="kt-ai-spacer"></span> <span class="kt-ai-spacer"></span>
<a class="kt-ai-btn" data-variant="ghost" href="index.html">Регистрация</a> <a class="kt-ai-btn" data-variant="ghost" href="index.html">Регистрация</a>
<a class="kt-ai-btn" data-variant="primary" href="admin.html">Список участников</a> <a class="kt-ai-btn" data-variant="primary" href="admin.html">Список участников</a>
@ -54,7 +54,7 @@
</section> </section>
<footer class="kt-ai-wrap kt-ai-pagefoot"> <footer class="kt-ai-wrap kt-ai-pagefoot">
<span>© 2026 АО «Казахтелеком» · Хакатон</span> <span>© 2026 АО «Казахтелеком» · Мероприятие</span>
<span class="kt-ai-spacer"></span> <span class="kt-ai-spacer"></span>
<a class="kt-ai-link" href="index.html">Регистрация</a> <a class="kt-ai-link" href="index.html">Регистрация</a>
</footer> </footer>
@ -87,10 +87,10 @@ form.addEventListener("submit", async function (e) {
'<div class="info-row"><span>Email</span><span>' + esc(r.email) + '</span></div>' + '<div class="info-row"><span>Email</span><span>' + esc(r.email) + '</span></div>' +
'<div class="info-row"><span>Телефон</span><span>' + esc(r.phone) + '</span></div>' + '<div class="info-row"><span>Телефон</span><span>' + esc(r.phone) + '</span></div>' +
'<div class="info-row"><span>Город</span><span>' + esc(r.city) + '</span></div>' + '<div class="info-row"><span>Город</span><span>' + esc(r.city) + '</span></div>' +
'<div class="info-row"><span>Направление</span><span>' + esc(r.track) + '</span></div>' + '<div class="info-row"><span>Формат участия</span><span>' + esc(r.track) + '</span></div>' +
'<div class="info-row"><span>Роль</span><span>' + esc(r.role) + '</span></div>' + '<div class="info-row"><span>Статус</span><span>' + esc(r.role) + '</span></div>' +
'<div class="info-row"><span>Команда</span><span>' + (r.team ? esc(r.team) : "—") + '</span></div>' + '<div class="info-row"><span>Компания / подразделение</span><span>' + (r.team ? esc(r.team) : "—") + '</span></div>' +
'<div class="info-row"><span>Статус</span><span>Заявка принята, ждём тебя на хакатоне!</span></div>'; '<div class="info-row"><span>Статус</span><span>Заявка принята, ждём тебя на мероприятии!</span></div>';
} }
result.hidden = false; result.hidden = false;
} catch (err) { } catch (err) {

View File

@ -3,7 +3,7 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="viewport" content="width=device-width,initial-scale=1">
<title>Регистрация — Хакатон АО «Казахтелеком»</title> <title>Регистрация — Мероприятие АО «Казахтелеком»</title>
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>💻</text></svg>"> <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>💻</text></svg>">
<link rel="stylesheet" href="design-system/kt-ai-fonts.css"> <link rel="stylesheet" href="design-system/kt-ai-fonts.css">
<link rel="stylesheet" href="design-system/kt-ai-tokens.css"> <link rel="stylesheet" href="design-system/kt-ai-tokens.css">
@ -25,7 +25,7 @@
<header class="kt-ai-pagehead"> <header class="kt-ai-pagehead">
<div class="kt-ai-wrap kt-ai-pagehead-in"> <div class="kt-ai-wrap kt-ai-pagehead-in">
<strong>Хакатон Казахтелеком</strong> <strong>Мероприятие Казахтелеком</strong>
<span class="kt-ai-spacer"></span> <span class="kt-ai-spacer"></span>
<a class="kt-ai-btn" data-variant="ghost" href="cabinet.html">Мой кабинет</a> <a class="kt-ai-btn" data-variant="ghost" href="cabinet.html">Мой кабинет</a>
<a class="kt-ai-btn" data-variant="primary" href="#register">Зарегистрироваться</a> <a class="kt-ai-btn" data-variant="primary" href="#register">Зарегистрироваться</a>
@ -35,11 +35,11 @@
<section class="kt-ai-hero" data-align="center"> <section class="kt-ai-hero" data-align="center">
<div class="kt-ai-wrap"> <div class="kt-ai-wrap">
<span class="kt-ai-chip">Регистрация открыта</span> <span class="kt-ai-chip">Регистрация открыта</span>
<h1>Хакатон АО «Казахтелеком»</h1> <h1>Мероприятие АО «Казахтелеком»</h1>
<p class="kt-ai-hero-sub">48 часов, реальные кейсы телеком-индустрии и команда единомышленников. Создай прототип, который увидит вся страна.</p> <p class="kt-ai-hero-sub">Встречаемся, чтобы поделиться опытом, познакомиться и обсудить будущее телеком-индустрии. Присоединяйся!</p>
<div class="kt-ai-hero-actions"> <div class="kt-ai-hero-actions">
<a class="kt-ai-btn" data-variant="primary" data-size="lg" href="#register">Зарегистрироваться</a> <a class="kt-ai-btn" data-variant="primary" data-size="lg" href="#register">Зарегистрироваться</a>
<a class="kt-ai-btn" data-size="lg" href="#case">Подробнее</a> <a class="kt-ai-btn" data-size="lg" href="#about">Подробнее</a>
</div> </div>
</div> </div>
</section> </section>
@ -47,30 +47,13 @@
<section id="about" class="kt-ai-section" data-divider="true"> <section id="about" class="kt-ai-section" data-divider="true">
<div class="kt-ai-wrap"> <div class="kt-ai-wrap">
<div class="kt-ai-section-head"> <div class="kt-ai-section-head">
<h2>Почему стоит участвовать</h2> <h2>Почему стоит прийти</h2>
<p>Соберём разработчиков, дизайнеров и аналитиков в одном месте — и за weekend превратим идеи в работающие продукты.</p> <p>Соберём коллег, партнёров и гостей в одном месте — будет интересно, полезно и по-доброму.</p>
</div> </div>
<div class="kt-ai-grid" style="margin-top:var(--kt-ai-space-9)"> <div class="kt-ai-grid" style="margin-top:var(--kt-ai-space-9)">
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">🏆</div><h3>Призовой фонд</h3><p>Награды лучшим командам и возможность трудоустройства в Казахтелеком.</p></article> <article class="kt-ai-tile"><div class="kt-ai-tile-icon">🎤</div><h3>Интересная программа</h3><p>Доклады, панельные дискуссии и ответы на вопросы от команд компании.</p></article>
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">🚀</div><h3>Реальные кейсы</h3><p>Задачи от продуктовых команд компании: ИИ,IoT, мобильные и digital-сервисы.</p></article> <article class="kt-ai-tile"><div class="kt-ai-tile-icon">🤝</div><h3>Нетворкинг</h3><p>Эксперты Казахтелекома, партнёры и коллеги — все в одном месте.</p></article>
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">🤝</div><h3>Нетворкинг</h3><p>Менторы из индустрии, эксперты Казахтелекома и будущие коллеги рядом.</p></article> <article class="kt-ai-tile"><div class="kt-ai-tile-icon">✨</div><h3>Атмосфера</h3><p>Приятное место, хорошая компания и новые знакомства.</p></article>
</div>
</div>
</section>
<section id="case" class="kt-ai-section" data-divider="true">
<div class="kt-ai-wrap">
<div class="kt-ai-section-head">
<h2>Кейс хакатона: Tender AI</h2>
<p>Tender AI — информационная система АО «Казахтелеком» для получения, анализа закупок и формирования ИИ-рекомендаций об участии. Система прошла приёмочные испытания и введена в опытную эксплуатацию — участникам хакатона предлагается решить реальные задачи её развития.</p>
</div>
<div class="kt-ai-grid" style="margin-top:var(--kt-ai-space-9)">
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">🎯</div><h3>Отбор и ранжирование закупок</h3><p>Повышение качества автоматического определения закупок, представляющих интерес для АО «Казахтелеком».</p></article>
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">🧠</div><h3>ИИ-анализ документации</h3><p>Повышение полноты и точности анализа технических спецификаций и закупочной документации, «Резюме ИИ» по закупке.</p></article>
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">💬</div><h3>Ассистент Tender AI</h3><p>Повышение качества ответов ассистента и расширение поддерживаемых пользовательских сценариев.</p></article>
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">🔗</div><h3>Интеграция с CRM 2.0</h3><p>Автоматизированная проверка технической возможности оказания услуг по предмету закупки.</p></article>
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">🔀</div><h3>Маршрутизация закупок</h3><p>Автоматическое определение заинтересованных подразделений и маршрутизация закупок на заключения и согласования.</p></article>
<article class="kt-ai-tile"><div class="kt-ai-tile-icon">⚙️</div><h3>Свое решение</h3><p>Есть идея, как улучшить Tender AI? Предложи собственное направление — комиссия рассмотрит любые смелые подходы.</p></article>
</div> </div>
</div> </div>
</section> </section>
@ -102,38 +85,36 @@
<input class="kt-ai-input" id="city" name="city" placeholder="Алматы" required> <input class="kt-ai-input" id="city" name="city" placeholder="Алматы" required>
</div> </div>
<div class="kt-ai-field"> <div class="kt-ai-field">
<label for="track">Направление *</label> <label for="track">Формат участия *</label>
<select class="kt-ai-select" id="track" name="track" required> <select class="kt-ai-select" id="track" name="track" required>
<option value="">Выберите направление</option> <option value="">Выберите формат</option>
<option>Отбор и ранжирование релевантных закупок</option> <option>Участник</option>
<option>ИИ-анализ закупочной документации</option> <option>Спикер</option>
<option>Развитие Ассистента Tender AI</option> <option>Волонтёр</option>
<option>Интеграция с CRM 2.0</option> <option>Гость</option>
<option>Маршрутизация закупок по подразделениям</option>
<option>Другое</option> <option>Другое</option>
</select> </select>
</div> </div>
</div> </div>
<div class="reg-row"> <div class="reg-row">
<div class="kt-ai-field"> <div class="kt-ai-field">
<label for="role">Роль в команде *</label> <label for="role">Статус *</label>
<select class="kt-ai-select" id="role" name="role" required> <select class="kt-ai-select" id="role" name="role" required>
<option value="">Выберите роль</option> <option value="">Выберите статус</option>
<option>Разработчик</option> <option>Сотрудник Казахтелеком</option>
<option>Дизайнер</option> <option>Партнёр</option>
<option>Аналитик</option> <option>Приглашённый гость</option>
<option>Тимлид</option>
<option>Другое</option> <option>Другое</option>
</select> </select>
</div> </div>
<div class="kt-ai-field"> <div class="kt-ai-field">
<label for="team">Название команды</label> <label for="team">Компания / подразделение</label>
<input class="kt-ai-input" id="team" name="team" placeholder="Если участвуешь командой"> <input class="kt-ai-input" id="team" name="team" placeholder="Если применимо">
</div> </div>
</div> </div>
<div class="kt-ai-field"> <div class="kt-ai-field">
<label for="experience">Опыт и мотивация *</label> <label for="experience">О себе *</label>
<textarea class="kt-ai-textarea" id="experience" name="experience" rows="4" placeholder="Расскажи коротко: чем занимаешься, был ли опыт хакатонов, почему хочешь участвовать" required></textarea> <textarea class="kt-ai-textarea" id="experience" name="experience" rows="4" placeholder="Расскажи коротко: чем занимаешься и почему хочешь прийти" required></textarea>
</div> </div>
<div> <div>
<button class="kt-ai-btn" data-variant="primary" data-size="lg" type="submit" id="submitBtn">Отправить заявку</button> <button class="kt-ai-btn" data-variant="primary" data-size="lg" type="submit" id="submitBtn">Отправить заявку</button>
@ -145,7 +126,7 @@
</section> </section>
<footer class="kt-ai-wrap kt-ai-pagefoot"> <footer class="kt-ai-wrap kt-ai-pagefoot">
<span>© 2026 АО «Казахтелеком» · Хакатон</span> <span>© 2026 АО «Казахтелеком» · Мероприятие</span>
<span class="kt-ai-spacer"></span> <span class="kt-ai-spacer"></span>
<a class="kt-ai-link" href="cabinet.html">Мой кабинет</a> <a class="kt-ai-link" href="cabinet.html">Мой кабинет</a>
<a class="kt-ai-link" href="admin.html">Список участников</a> <a class="kt-ai-link" href="admin.html">Список участников</a>