Обновленные файлы: - 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 файлы и тестовые директории не изменены
5.1 KiB
5.1 KiB
✏️ Nextcloud Editor Integration
Интеграция редактора документов Nextcloud с vTiger CRM
🎯 Функциональность
✅ Что реализовано:
- Кнопка "Редактировать" в превью документов
- Автоматическая подготовка файлов для редактирования
- Встроенный редактор в модальном окне CRM
- Синхронизация изменений обратно в систему
- Поддержка форматов: DOC, DOCX, XLS, XLSX, PPT, PPTX, ODT, ODS, ODP, TXT
🔄 Workflow:
- Пользователь нажимает "Редактировать" в CRM
- Файл копируется в Nextcloud (если не там)
- Создаётся ссылка для редактирования
- Открывается встроенный редактор OnlyOffice/Collabora
- После редактирования - синхронизация в S3 и CRM
🏗️ Архитектура
vTiger CRM Documents Module
↓
FileStorageManager
↓
┌─────────────────┬─────────────────┐
│ S3 Storage │ Nextcloud │
│ (Долгосрочное │ (Активное │
│ хранение) │ редактирование) │
└─────────────────┴─────────────────┘
📁 Файлы интеграции
PHP Backend:
file_storage/NextcloudClient.php- WebDAV клиентfile_storage/S3Client.php- S3 клиентfile_storage/FileStorageManager.php- координаторmodules/Documents/views/NextcloudEdit.php- vTiger представление
Frontend:
nextcloud_editor/js/nextcloud-editor.js- JavaScript интеграцияlayouts/v7/modules/Documents/FilePreview.tpl- модифицированный шаблон
Конфигурация:
.env- секретные данныеfile_storage/config.php- настройки интеграции
🧪 Тестирование
Автоматические тесты:
# Тест S3
php crm_extensions/tests/test_s3_simple.php
# Тест Nextcloud
php crm_extensions/tests/test_nextcloud.php
# Полный тест интеграции
открыть: /crm_extensions/tests/test_full_integration.html
Ручное тестирование:
- Откройте любой документ в CRM
- Нажмите "Просмотр"
- Должна появиться кнопка "Редактировать"
- Нажмите кнопку - откроется редактор
- Внесите изменения и синхронизируйте
🔧 Настройка
Требования к Nextcloud:
- ✅ Nextcloud AIO установлен
- ✅ OnlyOffice или Collabora Online настроен
- ✅ Пользователь с правами WebDAV
- ✅ Папка
/CRM_Active_Files/создана
Переменные .env:
NEXTCLOUD_URL=https://office.clientright.ru
NEXTCLOUD_USERNAME=admin
NEXTCLOUD_PASSWORD=ваш_app_password
Поддерживаемые форматы:
- Документы: .doc, .docx, .odt, .rtf, .txt
- Таблицы: .xls, .xlsx, .ods, .csv
- Презентации: .ppt, .pptx, .odp
- Текст: .txt, .md, .html
🚀 Использование
Для пользователей:
- Откройте документ в CRM
- Нажмите "Просмотр"
- Нажмите "Редактировать"
- Редактируйте в браузере
- Нажмите "Синхронизировать изменения"
Для разработчиков:
// Открытие редактора программно
openNextcloudEditor(recordId, fileName);
// Синхронизация изменений
syncFileChanges(recordId, fileName);
🔒 Безопасность
- ✅ Аутентификация через app password
- ✅ Временные ссылки для редактирования
- ✅ Контроль доступа через роли CRM
- ✅ Автоматическая очистка временных файлов
📈 Преимущества
Для пользователей:
- Совместное редактирование документов
- Версионирование файлов
- Онлайн редактирование без скачивания
- Интеграция с CRM workflow
Для бизнеса:
- Повышение продуктивности команды
- Централизованное управление документами
- Соответствие требованиям безопасности
- Масштабируемость решения
Интеграция готова к использованию!