e5050a7c83
- app.py: add pool keys for stars 1-3, AUTO_REPLY_STARS_KEY/FILTER_KEY, _load_enabled_stars(), _load_filter_mode(), updated _has_review_content() with filter_mode param, new /auto-reply-settings POST route, index route passes enabled_stars/filter_mode/pools 1-5 to template - templates/index.html: remove reviews list & controls section, replace pool card with full settings card (star toggles, filter mode radios, dynamic per-star pool columns), update JS for all 5 stars - templates/login.html: fix ratings feature text (1-5★), update price to 7 ₽/день with corrected description - static/styles.css: login-promo fixed 300px width, logo 140px, add settings UI styles (star-toggles, filter-options, pool-columns, star-chips 1-3) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
90 lines
4.2 KiB
HTML
90 lines
4.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="ru">
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<title>Вход — WB Feedback</title>
|
|
<link rel="stylesheet" href="{{ url_for('static', filename='styles.css') }}" />
|
|
</head>
|
|
<body>
|
|
<div class="login-split">
|
|
|
|
<!-- Левая панель — маркетинг -->
|
|
<div class="login-promo">
|
|
<div class="login-promo__inner">
|
|
<img src="{{ url_for('static', filename='wb.png') }}" class="login-promo__logo" alt="WB Feedback">
|
|
|
|
<h1 class="login-promo__title">Автоответы на отзывы<br>Wildberries — на автопилоте</h1>
|
|
<p class="login-promo__sub">Сервис сам отвечает на отзывы покупателей пока вы занимаетесь бизнесом. Никаких ручных ответов, никаких пропущенных оценок.</p>
|
|
|
|
<ul class="login-features">
|
|
<li class="login-features__item">
|
|
<span class="login-features__icon">⚡</span>
|
|
<div>
|
|
<strong>Автоответы 24/7</strong>
|
|
<span>Настраивайте ответы для каждого рейтинга — от 1★ до 5★, с нужными шаблонами</span>
|
|
</div>
|
|
</li>
|
|
<li class="login-features__item">
|
|
<span class="login-features__icon">✏️</span>
|
|
<div>
|
|
<strong>Свои шаблоны</strong>
|
|
<span>Настройте уникальные ответы для каждой оценки — звучит как живой человек</span>
|
|
</div>
|
|
</li>
|
|
<li class="login-features__item">
|
|
<span class="login-features__icon">🏪</span>
|
|
<div>
|
|
<strong>Несколько магазинов</strong>
|
|
<span>Управляйте всеми аккаунтами WB из одного кабинета</span>
|
|
</div>
|
|
</li>
|
|
<li class="login-features__item">
|
|
<span class="login-features__icon">📋</span>
|
|
<div>
|
|
<strong>Журнал и очередь</strong>
|
|
<span>Видите каждый отправленный ответ с датой, оценкой и текстом</span>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
|
|
<div class="login-price">
|
|
<div class="login-price__amount">7 ₽<span>/день</span></div>
|
|
<div class="login-price__desc">За один магазин. Неограниченное количество отзывов</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Правая панель — форма -->
|
|
<div class="login-form-wrap">
|
|
<section class="auth-card">
|
|
<div class="auth-kicker">
|
|
<img src="{{ url_for('static', filename='wb.png') }}" class="auth-kicker-logo-img" alt="WB">
|
|
<span class="auth-kicker-text">WB Feedback</span>
|
|
</div>
|
|
<h2 class="login-form-title">Войдите в кабинет</h2>
|
|
|
|
{% if error_message %}
|
|
<div class="alert alert-error">{{ error_message }}</div>
|
|
{% endif %}
|
|
|
|
<form method="post" class="auth-form">
|
|
<label>
|
|
Логин
|
|
<input type="text" name="username" placeholder="Введите логин" required autofocus />
|
|
</label>
|
|
<label>
|
|
Пароль
|
|
<input type="password" name="password" placeholder="••••••••" required />
|
|
</label>
|
|
<button type="submit">Войти</button>
|
|
</form>
|
|
|
|
<p class="auth-footer">Нет аккаунта? <a href="{{ url_for('register') }}">Запросить доступ</a></p>
|
|
</section>
|
|
</div>
|
|
|
|
</div>
|
|
</body>
|
|
</html>
|