Nikita Kiselev 7a5eebec91 feat: добавлена функциональность политики конфиденциальности и согласия на обработку ПД
Основные изменения:

Backend:
- Добавлена миграция для поля privacy_consented_at в таблицу telecart_customers
- Создан PrivacyPolicyHandler с методами:
  * checkIsUserPrivacyConsented - проверка наличия согласия пользователя
  * userPrivacyConsent - сохранение согласия пользователя
- Обновлен TelegramService для извлечения userId из initData
- Обновлен TelegramServiceProvider для внедрения зависимостей
- Добавлены новые маршруты в routes.php
- Обновлен SettingsHandler для возврата privacy_policy_link
- Обновлен TelegramCustomersHandler для включения privacy_consented_at в ответы
- Обновлены тесты TelegramServiceTest

Frontend (SPA):
- Создан компонент PrivacyPolicy.vue для отображения запроса согласия
- Добавлена проверка согласия при инициализации приложения (main.js)
- Обновлен App.vue для отображения компонента PrivacyPolicy
- Добавлены функции checkIsUserPrivacyConsented и userPrivacyConsent в ftch.js
- Обновлен SettingsStore для хранения privacy_policy_link и is_privacy_consented

Frontend (Admin):
- Добавлено поле privacy_policy_link в настройки (settings.js)
- Добавлена настройка ссылки на политику конфиденциальности в GeneralView.vue
- Обновлен CustomersView.vue:
  * Добавлена колонка privacy_consented_at с отображением даты согласия
  * Добавлена поддержка help-текста для колонок с иконкой вопроса и tooltip
  * Добавлены help-тексты для колонок last_seen_at, privacy_consented_at, created_at
  * Улучшено форматирование кода
2025-11-23 23:19:15 +03:00
2025-07-09 20:55:29 +03:00
2025-07-09 20:55:29 +03:00
2025-11-18 15:40:21 +03:00
2025-11-18 16:52:33 +03:00
2025-11-11 00:22:57 +03:00

TeleCart

CI/CD License PHP Version Vue.js Docker OpenCart

Telegram магазин на базе OpenCart. Позволяет создать полноценный интернет-магазин в виде Telegram Mini App.

🚀 Возможности

  • 📱 Telegram Mini App интерфейс
  • 🛒 Полноценная корзина и оформление заказов
  • 🎨 Адаптивный дизайн с поддержкой темной/светлой темы
  • 📊 Административная панель для управления настройками
  • 🔍 Поиск и фильтрация товаров
  • 📦 Интеграция с OpenCart

🛠 Технологии

  • Backend: PHP (OpenCart), Composer
  • Frontend: Vue.js 3, Vite, Tailwind CSS, Pinia
  • Инфраструктура: Docker, Docker Compose
  • Тестирование: PHPUnit, Vitest

📦 Структура проекта

telecart/
├── frontend/
│   ├── admin/      # Административная панель
│   └── spa/        # Telegram Mini App
├── module/         # Модуль OpenCart
├── docker/         # Docker конфигурации
└── src/            # Исходный код OpenCart

🚀 Быстрый старт

Требования

  • Docker и Docker Compose
  • PHP >= 7.4
  • Node.js >= 20.19.0 или >= 22.12.0

Установка

# Клонировать репозиторий
git clone git@github.com:telecart-labs/telecart.git
cd telecart

# Настроить проект
make setup

# Запустить в режиме разработки
make dev

Доступные команды

  • make setup - Первоначальная настройка проекта
  • make start - Запустить контейнеры
  • make stop - Остановить контейнеры
  • make dev - Запустить в режиме разработки
  • make dev-admin - Запустить админ-панель в режиме разработки
  • make test - Запустить тесты
  • make lint - Проверить код линтером

📝 Лицензия

Это коммерческий платный модуль. Все права защищены. Использование модуля возможно только после приобретения лицензии.

🤝 Вклад в проект

Мы приветствуем вклад в развитие проекта! Пожалуйста, создавайте issue и pull request'ы.

📄 Документация

Дополнительная документация находится в папке docs/.

Description
No description provided
Readme 22 MiB
Languages
PHP 46.4%
Vue 26.6%
JavaScript 25.3%
Shell 0.7%
CSS 0.4%
Other 0.5%