✅ Что реализовано:
- SSL/HTTPS для Nextcloud (Let's Encrypt R13)
- Redis кэширование для производительности
- Collabora Online редактор документов
- WOPI allow list настроен (0.0.0.0/0)
- Динамическое получение fileId через WebDAV
- Поддержка файлов из S3 и локальных файлов
- Автоматическое извлечение имени файла из URL
- Промежуточная страница для обхода CSRF
🚀 Как работает:
1. JavaScript передает recordId и fileName
2. PHP получает fileId через WebDAV PROPFIND
3. PHP делает редирект на рабочий URL Nextcloud
4. Файл открывается в редакторе Collabora
📁 Файлы:
- layouts/v7/lib/nextcloud-editor.js - JavaScript интеграция
- crm_extensions/file_storage/api/open_file.php - PHP редирект
- modules/Documents/actions/NcPrepareEdit.php - API подготовка
- crm_extensions/docs/ - документация
🎯 Результат: Каждый документ в CRM открывает СВОЙ файл в Nextcloud редакторе!
Обновленные файлы:
- crm_extensions/nextcloud_editor/js/nextcloud-editor.js (5 путей)
- crm_extensions/file_storage/api/get_edit_urls.php (6 путей)
- modules/Documents/actions/NcPrepareEdit.php (2 пути)
- crm_extensions/file_storage/api/prepare_edit.php (1 путь)
- crm_extensions/file_storage/NextcloudClient.php (1 путь)
- data/CRMEntity.php (nc_path для новых файлов)
Все пути теперь используют /crm/ вместо /crm2/ для соответствия новому External Storage на office.clientright.ru
- Реализована функция createTicketNotification() в HelpDeskHandler
- Автоматическое создание уведомлений при создании новой заявки
- Уведомления отправляются ответственному за заявку
- Умная дедупликация - обновление существующих непрочитанных уведомлений
- Формат заголовка: 'Новая заявка ЗАЯВКА_XXX - [название]'
- Ссылка ведет на заявку в CRM
- Протестировано и работает корректно