Files
crm.clientright.ru/crm_extensions/docs/NEXTCLOUD_EDITOR.md

134 lines
5.1 KiB
Markdown
Raw Normal View History

# ✏️ Nextcloud Editor Integration
Интеграция редактора документов Nextcloud с vTiger CRM
## 🎯 Функциональность
### ✅ Что реализовано:
- **Кнопка "Редактировать"** в превью документов
- **Автоматическая подготовка** файлов для редактирования
- **Встроенный редактор** в модальном окне CRM
- **Синхронизация изменений** обратно в систему
- **Поддержка форматов**: DOC, DOCX, XLS, XLSX, PPT, PPTX, ODT, ODS, ODP, TXT
### 🔄 Workflow:
1. Пользователь нажимает "Редактировать" в CRM
2. Файл копируется в Nextcloud (если не там)
3. Создаётся ссылка для редактирования
4. Открывается встроенный редактор OnlyOffice/Collabora
5. После редактирования - синхронизация в 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` - настройки интеграции
## 🧪 Тестирование
### Автоматические тесты:
```bash
# Тест S3
php crm_extensions/tests/test_s3_simple.php
# Тест Nextcloud
php crm_extensions/tests/test_nextcloud.php
# Полный тест интеграции
открыть: /crm_extensions/tests/test_full_integration.html
```
### Ручное тестирование:
1. Откройте любой документ в CRM
2. Нажмите "Просмотр"
3. Должна появиться кнопка "Редактировать"
4. Нажмите кнопку - откроется редактор
5. Внесите изменения и синхронизируйте
## 🔧 Настройка
### Требования к Nextcloud:
- ✅ Nextcloud AIO установлен
- ✅ OnlyOffice или Collabora Online настроен
- ✅ Пользователь с правами WebDAV
- ✅ Папка `/CRM_Active_Files/` создана
### Переменные .env:
```bash
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
## 🚀 Использование
### Для пользователей:
1. Откройте документ в CRM
2. Нажмите "Просмотр"
3. Нажмите "Редактировать"
4. Редактируйте в браузере
5. Нажмите "Синхронизировать изменения"
### Для разработчиков:
```javascript
// Открытие редактора программно
openNextcloudEditor(recordId, fileName);
// Синхронизация изменений
syncFileChanges(recordId, fileName);
```
## 🔒 Безопасность
- ✅ Аутентификация через app password
- ✅ Временные ссылки для редактирования
- ✅ Контроль доступа через роли CRM
- ✅ Автоматическая очистка временных файлов
## 📈 Преимущества
### Для пользователей:
- **Совместное редактирование** документов
- **Версионирование** файлов
- **Онлайн редактирование** без скачивания
- **Интеграция с CRM** workflow
### Для бизнеса:
- **Повышение продуктивности** команды
- **Централизованное управление** документами
- **Соответствие требованиям** безопасности
- **Масштабируемость** решения
---
*Интеграция готова к использованию!*