Files
crm.clientright.ru/crm_extensions/docs/NEXTCLOUD_EDITOR.md
Fedor 75d3f7942b 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 файлы и тестовые директории не изменены
2025-10-20 17:17:34 +03:00

5.1 KiB
Raw Blame 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 - настройки интеграции

🧪 Тестирование

Автоматические тесты:

# Тест 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:

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. Нажмите "Синхронизировать изменения"

Для разработчиков:

// Открытие редактора программно
openNextcloudEditor(recordId, fileName);

// Синхронизация изменений
syncFileChanges(recordId, fileName);

🔒 Безопасность

  • Аутентификация через app password
  • Временные ссылки для редактирования
  • Контроль доступа через роли CRM
  • Автоматическая очистка временных файлов

📈 Преимущества

Для пользователей:

  • Совместное редактирование документов
  • Версионирование файлов
  • Онлайн редактирование без скачивания
  • Интеграция с CRM workflow

Для бизнеса:

  • Повышение продуктивности команды
  • Централизованное управление документами
  • Соответствие требованиям безопасности
  • Масштабируемость решения

Интеграция готова к использованию!