nextcloud / nextcloud/richdocuments
Add file open endpoint for Collabora Office
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 453
- Forks
- 147
- Avg merge
- 14h 54m
- Merged PRs (30d)
- 83
Description
The idea is to have a button inside of Collabora Online / LibreOffice that allows the user to switch to editing online by clicking it.
Richdocuments would:
- Provide an endpoint with a path parameter to open the file for the user
- It should be enough to get the file id and redirect to the files app with the openfile parameter
- Expose the endpoint URL through capabilities, so that it can be picked up by the client
The desktop client would expose a .editonline.ini (naming could change) file in the root sync folder which contains the edit url as well as the userid and relative path, which can then be read by Collabora Office.
- https://github.com/nextcloud/desktop/issues/4880
- Fetch the endpoint from the capabilities
- For each sync folder put a .ini file in the root, containing the format below
Example 1
The Nextcloud root is synced to ~/Nextcloud, there would be a ~/Nextcloud/.editonline.ini:
[editserver]
endpoint = https://nextcloud.example.com/index.php/apps/richdocuments/editfromlocal
userid = admin
relativepath = /
Considering a file Document.odt is opened, Collabora Office could then construct url to open in the browser:
https://nextcloud.example.com/index.php/apps/richdocuments/editfromlocal?user=admin&path=/Document.odt
Example 2
The Nextcloud subdirectory /Engineering is synced to ~/Nextcloud, there would be a ~/Nextcloud/.editonline.ini:
[editserver]
endpoint = https://nextcloud.example.com/index.php/apps/richdocuments/editfromlocal
userid = admin
relativepath = /Engineering
Considering a file Document.odt is opened, Collabora Office could then construct url to open in the browser:
https://nextcloud.example.com/index.php/apps/richdocuments/editfromlocal?user=admin&path=/Engineering/Document.odt
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the endpoint and capabilities requirements in this issue, then read nextcloud/desktop#4880 for the remaining client-side work. Done means the client can obtain the endpoint from capabilities and create the specified .editonline.ini file for each sync folder.
Written by the indexing model from the issue text.
Assessment
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100