onlyoffice / onlyoffice-drupal
The ONLYOFFICE module enables users to edit files in the Media module from Drupal using ONLYOFFICE Docs packaged as Document Server
Installs: 17
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 9
Forks: 2
Open Issues: 1
Type:drupal-module
Requires
- drupal/core: ^9 || ^10
- firebase/php-jwt: ^4.0 | ^5.0
Requires (Dev)
- drupal/coder: ^8.3
This package is not auto-updated.
Last update: 2024-10-31 15:35:45 UTC
README
Contents of this file
- Introduction
- Requirements
- Installation
- Configuration
- Usage
- Installing ONLYOFFICE Docs
- Known issues
Introduction
The ONLYOFFICE module enables users to edit files in the Media module from Drupal using ONLYOFFICE Docs packaged as Document Server - Community or Enterprise Edition.
The module allows to:
- Edit text documents, spreadsheets, and presentations.
- Preview files on public pages.
- Collaborate on documents using two co-editing modes (real-time and paragraph-locking).
Supported formats:
-
For editing: DOCX, XLSX, PPTX.
-
For viewing only: DJVU, DOC, DOCM, DOT, DOTM, DOTX, EPUB, FB2, FODT, HTML, MHT, ODT, OTT, OXPS, PDF, RTF, TXT, XPS, XML, CSV, FODS, ODS, OTS, XLS, XLSM, XLT, XLTM, XLTX, FODP, ODP, OTP, POT, POTM, POTX, PPS, PPSM, PPSX, PPT, PPTM.
-
For a full description of the module, visit the project page: https://www.drupal.org/project/onlyoffice
-
To submit bug reports and feature suggestions, or track changes: https://www.drupal.org/project/issues/onlyoffice . Alternatively, you can contact ONLYOFFICE team on forum.onlyoffice.com.
Requirements
This module requires no modules outside of Drupal core.
Installation
Step 1: Add the module
First way: Add a module using Drupal's User Interface (easy).
- On the Admin toolbar project page on drupal.org (https://www.drupal.org/project), scroll to the Downloads section at the bottom of the page.
- Copy the address of the tar.gz link. Depending on your device and browser, you might do this by right clicking and selecting Copy link address.
- In the Manage administrative menu, navigate to Extend (admin/modules). The Extend page appears.
- Click Install new module. The Install new module page appears.
- In the field Install from a URL, paste the copied download link.
- Click Install to upload and unpack the new module on the server. The files are being downloaded to the modules directory.
Second way: Add a module with Composer.
Enter the following command at the root of your site:
composer require onlyoffice/onlyoffice-drupal
Step 2: Enable the module
First way: Using the Drupal User Interface (easy).
- Navigate to the Extend page (admin/modules) via the Manage administrative menu.
- Locate the ONLYOFFICE Connector module and check the box.
- Click Install to enable.
Second way: Using the command line (advanced, but very efficient).
- Run the following Drush command, giving the project name as a parameter:
drush pm:enable onlyoffice
- Follow the instructions on the screen.
Configuration
In Drupal, open the ~/config/system/onlyoffice-settings
page with
administrative settings for ONLYOFFICE section.
Enter the address to connect ONLYOFFICE Document Server:
https://<documentserver>/
Where documentserver is the name of the server with the ONLYOFFICE Document Server installed. The address must be accessible for the user browser and from the Drupal server. The Drupal server address must also be accessible from ONLYOFFICE Document Server for correct work.
Starting from version 7.2, JWT is enabled by default and the secret key is generated automatically to restrict the access to ONLYOFFICE Docs and for security reasons and data integrity. Specify your own Secret key in the Drupal administrative configuration. In the ONLYOFFICE Docs config file, specify the same secret key and enable the validation.
Usage
Edit files already uploaded to Drupal
All office files added to Media can be opened for editing. In the last table column, call the drop-down list and select the Edit in ONLYOFFICE action. The editor opens in the same tab. Users with Administrator rights are able to co-edit files using ONLYOFFICE Docs. All changes are saved in the same file.
Create new posts
When creating a post, you can add the new ONLYOFFICE element.
-
Go to Structure -> Content types -> Manage fields. On the opened page, click Add field. Add a new field: File or Media. Set the label and save.
-
For the added File field, specify the file extensions. Go to Structure -> Content types -> Manage fields. In the Allowed file extensions field, specify the file formats that will be shown in the editors (docx,xlsx,pptx).
For the added Media field, click the Document checkbox.
-
Go to Structure -> Media types -> Document -> Manage display.
For the Document field, specify the ONLYOFFICE Preview format. By clicking on the gear symbol, you can specify the dimensions of the embedded editor window.
When you are done with the pre-settings, you can create posts on the Content tab. Click on the Add Content button and select the created content.
Specify title and select a file (if the content contains File fields).
For Media section, specify the name of the previously uploaded file.
Your site visitors will also be able to view the created page (People -> Permissions -> View published content).
Installing ONLYOFFICE Docs
You will need an instance of ONLYOFFICE Docs (Document Server) that is resolvable and connectable both from Drupal and any end clients. ONLYOFFICE Document Server must also be able to POST to Drupal directly.
You can install free Community version of ONLYOFFICE Docs or scalable Enterprise Edition.
To install free Community version, use Docker (recommended) or follow these instructions for Debian, Ubuntu, or derivatives.
To install Enterprise Edition, follow the instructions here.
ONLYOFFICE Docs packaged as Document Server:
- Community Edition (
onlyoffice-documentserver
package) - Enterprise Edition (
onlyoffice-documentserver-ee
package)
The table below will help you make the right choice.
* If supported by DMS.
Known issues
Setting HTTPS via proxy (callback URL 308 error)
Drupal is designed in such a way that if you configure HTTPS via proxy, Drupal will still replace links with http. Therefore, links to callback
and fileUrl
are sent to the config in the http format. As a result, ONLYOFFICE Document Server receives the 308 Permanent Redirect response to the callback request.
To fix it, adjust the Drupal settings in your settings.php
file:
$settings['reverse_proxy'] = TRUE;
$settings['reverse_proxy_addresses'] = array($_SERVER['REMOTE_ADDR']);