Files
crm.clientright.ru/erv_ticket/CHANGELOG_DEBUG_MODE.md
Fedor 9245768987 🚀 CRM Files Migration & Real-time Features
 Features:
- Migrated ALL files to new S3 structure (Projects, Contacts, Accounts, HelpDesk, Invoice, etc.)
- Added Nextcloud folder buttons to ALL modules
- Fixed Nextcloud editor integration
- WebSocket server for real-time updates
- Redis Pub/Sub integration
- File path manager for organized storage
- Redis caching for performance (Functions.php)

📁 New Structure:
Documents/Project/ProjectName_ID/file_docID.ext
Documents/Contacts/FirstName_LastName_ID/file_docID.ext
Documents/Accounts/AccountName_ID/file_docID.ext

🔧 Technical:
- FilePathManager for standardized paths
- S3StorageService integration
- WebSocket server (Node.js + Docker)
- Redis cache for getBasicModuleInfo()
- Predis library for Redis connectivity

📝 Scripts:
- Migration scripts for all modules
- Test pages for WebSocket/SSE/Polling
- Documentation (MIGRATION_*.md, REDIS_*.md)

🎯 Result: 15,000+ files migrated successfully!
2025-10-24 19:59:28 +03:00

8.2 KiB
Raw Permalink Blame History

📝 Changelog: Добавление режима отладки (DEBUG MODE)

Дата: 23 октября 2025
Задача: Отключить SMS-верификацию для экономии баланса во время разработки


Выполненные изменения

1. Создан файл конфигурации debug-config.js

Назначение: Централизованное управление режимом отладки

Функционал:

  • Глобальная переменная DEBUG_MODE
  • Визуальный индикатор на странице
  • Цветные логи в консоли браузера
  • Подробные комментарии для разработчиков

Расположение: /erv_ticket/debug-config.js


2. Модифицирован js/common.js

Изменение 1: Функция send_sms()

Было: SMS всегда отправлялась через SigmaSMS API

Стало:

if (!DEBUG_MODE) {
    // Отправка реальной SMS
    $.ajax({ ... })
} else {
    // Только консольный лог
    console.log('🔧 DEBUG MODE: SMS отключена. Код:', sended_code);
}

Изменение 2: Проверка кода в .js-accept-sms

Было: Принимался только реальный код из SMS

Стало:

if (DEBUG_MODE) {
    // Принимается любой 6-значный код
    isCodeValid = enteredCode.length === 6 && /^\d+$/.test(enteredCode);
} else {
    // Проверка реального кода
    isCodeValid = enteredCode == sended_code;
}

Расположение: /erv_ticket/js/common.js


3. Обновлён index.php

Добавлено:

  1. Подключение debug-config.js (строка 976)

    <script src="debug-config.js"></script>
    

    ⚠️ ВАЖНО: Должен быть загружен ДО common.js

  2. HTML-индикатор режима отладки (строки 44-47)

    <div id="debug-indicator" style="...">
        🔧 DEBUG MODE: SMS отключена
    </div>
    

Расположение: /erv_ticket/index.php


4. Создана документация

Файлы:

  1. DEBUG_MODE_README.md - Подробная инструкция по использованию
  2. CHANGELOG_DEBUG_MODE.md - Этот файл (список изменений)

🎯 Как это работает

В режиме DEBUG_MODE = true:

Пользователь → Вводит телефон → Нажимает "Отправить SMS"
                                          ↓
                            🔧 SMS НЕ отправляется
                            🔧 Код генерируется локально
                            🔧 Модалка открывается
                                          ↓
Пользователь → Вводит ЛЮБЫЕ 6 цифр (например: 123456)
                                          ↓
                            🔧 Код принимается
                            🔧 Доступ к форме открыт
                                          ✅

В режиме DEBUG_MODE = false:

Пользователь → Вводит телефон → Нажимает "Отправить SMS"
                                          ↓
                            ✉️ SMS отправляется через SigmaSMS API
                            ✉️ Код приходит на телефон
                            ✉️ Модалка открывается
                                          ↓
Пользователь → Вводит КОД ИЗ SMS
                                          ↓
                            ✅ Код проверяется
                            ✅ Если верный - доступ открыт

🔍 Проверка работы

1. Откройте форму в браузере

2. Проверьте визуальные индикаторы:

В правом верхнем углу должен быть оранжевый badge:

🔧 DEBUG MODE: SMS отключена

В консоли браузера (F12) должны быть сообщения:

🔧 DEBUG CONFIG загружен. DEBUG_MODE = true
🔧 ВНИМАНИЕ: Работает РЕЖИМ ОТЛАДКИ!
SMS не отправляются. Принимается любой 6-значный код.

3. Тестирование SMS-верификации:

  1. Введите любой телефон: 999 123-45-67
  2. Нажмите "Отправить SMS"
  3. В модалке увидите: 🔧 РЕЖИМ ОТЛАДКИ: Введите любой 6-значный код
  4. Введите 111111 (или любые 6 цифр)
  5. Нажмите "Подтвердить"
  6. Форма должна открыться!

📊 Экономический эффект

Без режима отладки (10 тестов в день):

10 тестов/день × 30 дней = 300 SMS
300 SMS × 5 руб. = 1500 руб./месяц

С режимом отладки:

0 SMS = 0 руб./месяц 💰

Экономия: 1500 руб./месяц (или больше при интенсивной разработке)


⚠️ Важные напоминания

Перед деплоем на ПРОДАКШЕН:

  1. Открыть debug-config.js
  2. Изменить var DEBUG_MODE = true;var DEBUG_MODE = false;
  3. Сохранить и залить на сервер
  4. Протестировать с реальным номером телефона
  5. Убедиться, что SMS приходит

Для разных окружений:

Вариант 1: Разные файлы конфигурации

debug-config.dev.js   → DEBUG_MODE = true
debug-config.prod.js  → DEBUG_MODE = false

Вариант 2: Переменная окружения в PHP

<?php
$debug_mode = ($_SERVER['HTTP_HOST'] === 'localhost') ? 'true' : 'false';
?>
<script>var DEBUG_MODE = <?= $debug_mode ?>;</script>

🔧 Откат изменений (если нужно)

Если по какой-то причине нужно вернуть всё назад:

1. Удалить debug-config.js

rm /var/www/fastuser/data/www/crm.clientright.ru/erv_ticket/debug-config.js

2. Убрать подключение из index.php

Удалить строки:

<!-- Конфигурация режима отладки -->
<script src="debug-config.js"></script>

3. Вернуть старую логику в common.js

Использовать версию из Git (до этих изменений)


📁 Затронутые файлы

Файл Тип изменения Описание
debug-config.js Создан Конфигурация режима отладки
js/common.js ✏️ Изменён Логика SMS с поддержкой DEBUG_MODE
index.php ✏️ Изменён Подключение конфига + индикатор
DEBUG_MODE_README.md Создан Инструкция по использованию
CHANGELOG_DEBUG_MODE.md Создан Этот файл (changelog)

🎉 Готово!

Теперь можно безопасно разрабатывать и тестировать форму без трат на SMS!

Следующие шаги:

  1. Протестировать форму в режиме отладки
  2. Провести все необходимые доработки
  3. Перед публикацией установить DEBUG_MODE = false
  4. Протестировать с реальной SMS
  5. Деплой на продакшен

Автор: AI Assistant
Дата создания: 23.10.2025
Версия: 1.0