✨ 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!
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
|
||
|