243 lines
8.2 KiB
Markdown
243 lines
8.2 KiB
Markdown
|
|
# 📝 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
|
|||
|
|
|
|||
|
|
**Стало**:
|
|||
|
|
```javascript
|
|||
|
|
if (!DEBUG_MODE) {
|
|||
|
|
// Отправка реальной SMS
|
|||
|
|
$.ajax({ ... })
|
|||
|
|
} else {
|
|||
|
|
// Только консольный лог
|
|||
|
|
console.log('🔧 DEBUG MODE: SMS отключена. Код:', sended_code);
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### Изменение 2: Проверка кода в `.js-accept-sms`
|
|||
|
|
**Было**: Принимался только реальный код из SMS
|
|||
|
|
|
|||
|
|
**Стало**:
|
|||
|
|
```javascript
|
|||
|
|
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)
|
|||
|
|
```html
|
|||
|
|
<script src="debug-config.js"></script>
|
|||
|
|
```
|
|||
|
|
⚠️ **ВАЖНО**: Должен быть загружен **ДО** `common.js`
|
|||
|
|
|
|||
|
|
2. **HTML-индикатор режима отладки** (строки 44-47)
|
|||
|
|
```html
|
|||
|
|
<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
|
|||
|
|
<?php
|
|||
|
|
$debug_mode = ($_SERVER['HTTP_HOST'] === 'localhost') ? 'true' : 'false';
|
|||
|
|
?>
|
|||
|
|
<script>var DEBUG_MODE = <?= $debug_mode ?>;</script>
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🔧 Откат изменений (если нужно)
|
|||
|
|
|
|||
|
|
Если по какой-то причине нужно вернуть всё назад:
|
|||
|
|
|
|||
|
|
### 1. Удалить `debug-config.js`
|
|||
|
|
```bash
|
|||
|
|
rm /var/www/fastuser/data/www/crm.clientright.ru/erv_ticket/debug-config.js
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2. Убрать подключение из `index.php`
|
|||
|
|
Удалить строки:
|
|||
|
|
```html
|
|||
|
|
<!-- Конфигурация режима отладки -->
|
|||
|
|
<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
|
|||
|
|
|