feat: Обновлены все URL Nextcloud с office.klientprav.tech на office.clientright.ru

Обновленные файлы:
- crm_extensions/nextcloud_api.php (2 места)
- modules/Documents/actions/NcPrepareEdit.php
- crm_extensions/nextcloud_editor/js/nextcloud-editor.js
- crm_extensions/file_storage/api/get_edit_urls.php
- crm_extensions/file_storage/api/simple_edit.php
- crm_extensions/README.md
- NEXTCLOUD_EDIT_BUTTON_IMPLEMENTATION.md
- crm_extensions/docs/NEXTCLOUD_EDITOR.md
- test_syntax_check.html
- crm_extensions/tests/test_edit_button.html

Все ссылки теперь указывают на новый сервер office.clientright.ru
Backup файлы и тестовые директории не изменены
This commit is contained in:
Fedor
2025-10-20 17:17:34 +03:00
parent 0f32f271d5
commit 75d3f7942b
62 changed files with 3502 additions and 15 deletions

128
TEST_PARSER_UPGRADE.md Normal file
View File

@@ -0,0 +1,128 @@
# Как протестировать улучшенный парсер
## ✅ Шаг 1: Проверка что ничего не сломалось
**Протестируй на РЕГИОНАЛЬНОМ суде (существующая функциональность):**
1. Возьми проект с ссылкой вида: `https://example--region.sudrf.ru/...`
2. Запусти парсинг через дизайнер процессов как обычно
3. Проверь что:
- ✅ Скрипт отработал без ошибок
- ✅ Данные сохранились в БД
- ✅ Вернулся корректный JSON ответ
4. Проверь лог `logs/parser.log`:
```
[timestamp] Режим парсера: НОВЫЙ (универсальный)
[timestamp] Выбран парсер: RegionalCourtParser
```
**Если что-то пошло не так:**
- Посмотри полный лог в `logs/parser.log`
- Должен быть fallback: "Переключаемся на старый парсер (fallback)..."
- Если fallback сработал - всё равно должно работать!
---
## 🆕 Шаг 2: Проверка московских судов
**Протестируй на МОСКОВСКОМ суде (новая функциональность):**
1. Возьми проект со ссылкой вида: `https://mos-gorsud.ru/...`
2. Запусти парсинг через дизайнер процессов
3. Проверь лог `logs/parser.log`:
```
[timestamp] Режим парсера: НОВЫЙ (универсальный)
[timestamp] Выбран парсер: MoscowCourtParser
[timestamp] Старт парсинга ... (МОСКОВСКИЙ СУД)
```
**Важно:**
- Если данные не извлеклись - это нормально для первого раза
- Московские суды могут иметь разную структуру HTML
- Посмотри в логах что именно было найдено
- Пришли мне пример ссылки и лог - доработаю парсер
---
## 🔧 Шаг 3: Тестирование fallback механизма
**Принудительно отключи новый парсер:**
Добавь параметр в POST запрос:
```
use_new_parser=0
```
Проверь что:
- ✅ Скрипт работает как раньше
- ✅ В логе: "Режим парсера: СТАРЫЙ (legacy)"
- ✅ Всё работает как до обновления
---
## 📊 Что проверять в логах
### Успешный парсинг (региональный суд):
```
[2025-10-17 10:00:00] ========================================
[2025-10-17 10:00:00] Режим парсера: НОВЫЙ (универсальный)
[2025-10-17 10:00:00] Выбран парсер: RegionalCourtParser
[2025-10-17 10:00:01] Найдено строк (tr) в div с id 'cont2': 5
[2025-10-17 10:00:01] Найдено событие: Предварительное судебное заседание, Дата: 16.10.2025...
[2025-10-17 10:00:01] Данные успешно записаны в таблицу subject для события: ...
```
### Успешный парсинг (московский суд):
```
[2025-10-17 10:00:00] ========================================
[2025-10-17 10:00:00] Режим парсера: НОВЫЙ (универсальный)
[2025-10-17 10:00:00] Выбран парсер: MoscowCourtParser
[2025-10-17 10:00:01] Найдено строк (tr) в таблице событий: 8
[2025-10-17 10:00:01] Найдено событие (МСК): Название: ..., Дата: 16.10.2025...
```
### Fallback сработал:
```
[2025-10-17 10:00:00] ОШИБКА в новом парсере: ...
[2025-10-17 10:00:00] Переключаемся на старый парсер (fallback)...
[2025-10-17 10:00:01] Старт парсинга ... (СТАРЫЙ ПАРСЕР)
```
---
## 🐛 Что делать если нашёл баг
1. **Скопируй ссылку** на дело которое не парсится
2. **Скопируй логи** из `logs/parser.log`
3. **Скопируй JSON ответ** скрипта
4. Пришли мне - я исправлю!
---
## 📞 Быстрый откат
Если что-то пошло совсем не так:
```bash
cd /var/www/fastuser/data/www/crm.clientright.ru
cp parscourt_backup_* parscourt.php
```
Или просто добавь в POST параметры:
```
use_new_parser=0
```
---
## ✅ Контрольный список
- [ ] Протестировал на региональном суде - работает
- [ ] Протестировал на московском суде - работает (или понял почему нет)
- [ ] Проверил что fallback работает (use_new_parser=0)
- [ ] Проверил логи - всё понятно
- [ ] Проверил БД - данные сохраняются
**Готово! 🎉**