Commit Graph
249 Commits
Author SHA1 Message Date
Florian Schade 8b922127b8 feat: move the collaboration mentioning api to graph 2026-08-17 15:44:04 +02:00
Florian Schade 8a3d8fea4d fix(collaboration): check the requester's access before a mention goes out 2026-08-17 15:44:04 +02:00
Florian Schade 26bd26f998 build(deps): bump github.com/opencloud-eu/libre-graph-api-go to 387da64db0b1 2026-08-17 12:29:18 +02:00
Viktor Scharf 5accb6056b set 7.3.0 version placeholder (#3132) 2026-07-14 18:12:24 +02:00
Jörn Friedrich Dreyer 48e40a385c update collaboration readme
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2026-07-14 16:29:57 +02:00
Benedikt Kulmann de5257ece9 fix: add warning to log if events endpoint unconfigured 2026-06-25 10:12:05 +02:00
Florian Schade 435b446a6a fix: make the collaboration service events optional 2026-06-23 17:31:39 +02:00
Jörn Friedrich Dreyer 81fd00043e Merge pull request #2063 from opencloud-eu/nats-tls-options
add tls support for all nats connections
2026-06-16 13:21:22 +02:00
Florian Schade 84b96f6f8c fix: duplicated fontFS initialization 2026-06-11 09:28:37 +02:00
Benedikt Kulmann 35766b37d7 fix: missing returns 2026-06-11 09:28:37 +02:00
Florian Schade f1208cfa32 enhancement: make collaboration mention functionality public 2026-06-11 09:28:37 +02:00
Florian Schade 159785a3b5 enhancement: make collaboration font management functionality public 2026-06-11 09:28:37 +02:00
Jörn Friedrich Dreyer 77fd4fca69 add tls support for all nats connections
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2026-06-10 17:04:18 +02:00
Pedro Pinto Silva e9c6e3f17a feat: enable EnableRemoteLinkPicker WOPI flag for Collabora Online
Set EnableRemoteLinkPicker: true in CheckFileInfo response so
Collabora Online exposes its "Smart Picker" UI for link
insertion. Clicking it sends a UI_PickLink postMessage to the WOPI
host, which is expected to reply with Action_InsertLink carrying the
URL of the selected file. Follows the same pattern as the existing
EnableInsertRemoteImage / EnableInsertRemoteFile flags.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2026-05-11 15:58:21 +02:00
Florian Schade 288e67cc39 chore: replace interface with any 2026-04-23 09:31:11 +02:00
Jörn Friedrich Dreyer 5683e0d441 Merge pull request #2560 from pedropintosilva/feat/add-userextrainfo-to-checkfileinfo
feat(collaboration): add UserExtraInfo with avatar and mail to CheckFileInfo
2026-04-15 16:07:42 +02:00
Michael Barz 35aaf92384 test: add tests for new features 2026-04-15 12:14:24 +02:00
Michael Barz 940bfe5d65 fix: use libregraph client 2026-04-15 08:00:35 +02:00
Michael Barz d05db011e5 refactor: move implementation to fileconnector 2026-04-14 17:46:45 +02:00
Pedro Pinto Silva 864e20028f feat(collaboration): add UserExtraInfo with avatar and mail to CheckFileInfo
Add UserExtraInfo (avatar + mail) to the WOPI CheckFileInfo response for
authenticated, non-public-share users.

UserExtraInfo format (per Collabora SDK):
https://sdk.collaboraonline.com/docs/advanced_integration.html#userextrainfo

```json
{
  "avatar": "http://url/to/user/avatar",
  "mail": "user@server.com"
}
```

After this change, CheckFileInfo returns:

```json
{
  "BaseFileName": "Pedro-filled-hazcom.docx",
  "UserFriendlyName": "Admin",
  "UserId": "346364...39323030",
  "UserCanWrite": true,
  "UserCanRename": true,
  "IsAdminUser": true,
  "EnableInsertRemoteImage": true,
  "EnableInsertRemoteFile": true,
  "EnableOwnerTermination": true,
  "UserExtraInfo": {
    "avatar": "https://host:9300/wopi/avatars/{userID}?access_token={wopiToken}",
    "mail": "admin@example.org"
  },
  "PostMessageOrigin": "https://localhost:9200",
  "message": "CheckFileInfo: success"
}
```

Avatars are served via a new /wopi/avatars/{userID} endpoint on the
collaboration service, authenticated by the WOPI token. The endpoint
calls the Graph service directly (bypassing the proxy) using the reva
access token via x-access-token header.

All tests pass:
go test ./services/collaboration/... ./services/graph/... ./services/proxy/...

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2026-04-09 09:08:26 +02:00
Pedro Pinto Silva a4809da471 feat: enable EnableInsertRemoteFile WOPI flag for Collabora
Set EnableInsertRemoteFile: true in CheckFileInfo response so Collabora
shows "Insert Multimedia" and "Compare Document" menu entries. This
triggers UI_InsertFile postMessages to the WOPI host, following the same
pattern as the existing EnableInsertRemoteImage flag.

Signed-off-by: Pedro Pinto Silva <pedro.silva@collabora.com>
2026-03-31 15:25:55 +02:00
Michael Barz f0836c54fb feat: add userid to spans (#2536) 2026-03-30 10:32:24 +02:00
Christian Richter cb9815acb1 fix yaml mappings
Signed-off-by: Christian Richter <c.richter@opencloud.eu>
2026-01-08 14:16:31 +01:00
Christian Richter e41f6c34b6 consolidate log config in collaboration
Signed-off-by: Christian Richter <c.richter@opencloud.eu>
2026-01-08 12:42:15 +01:00
Florian Schade 151ccb1609 fix: remove unsupported service binary entrypoints 2025-12-23 12:23:41 +01:00
Christian Richter 7be33b0607 refactor interims DefaultAppCobra to DefaultApp
Signed-off-by: Christian Richter <c.richter@opencloud.eu>
2025-12-15 16:40:26 +01:00
Christian Richter e6114853ea migrate collaboration from urfave/cli to spf13/cobra
Signed-off-by: Christian Richter <c.richter@opencloud.eu>
2025-12-15 16:40:25 +01:00
Jörn Friedrich Dreyer 10913ca00a Merge pull request #1918 from opencloud-eu/otlp-tracing
update otlp tracing
2025-11-27 12:57:26 +01:00
Jörn Friedrich Dreyer a3ef7f6d79 update otlp tracing
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2025-11-27 12:28:15 +01:00
fschade 60501659c5 chore: bump %%NEXT%% 2025-11-27 10:53:59 +01:00
Ralf Haferkamp a2f9cadd9f feat(collaboration): Set IsAnonymousUser flag for Collabora
Closes: #796
2025-11-04 16:45:08 +01:00
Ralf Haferkamp 30ef495c92 feat(collaboration): Set IsAdminUser property for Collabora
This set the 'IsAdminUser' Property correctly in the CheckFileInfo
Response. For that a new Permission 'WebOffice.Manage' is introduced. By
default this permission is only assigned to the Admin role.
User with this permission get access to certain admin features in
Collabora (e.g. the 'Server Audit' dashboard)

Closes: #796
2025-11-04 16:45:08 +01:00
Ralf Haferkamp 589cee4ab3 collaboration: Enable InsertRemoteImage option
Related: https://github.com/opencloud-eu/web/issues/704
2025-11-04 16:01:00 +01:00
Michael Barz 4a0cc1004f Fix collaboration service name (#1577)
* fix: collaboration service name

* change: do not use app name in service name

* feat: make collaboration service name configurable

* test: fix test config
2025-09-29 10:06:05 +02:00
Michael Barz e7b7ceafd5 feat: make it possible to start the collaboration service in the single process (#1569)
* feat: make it possible to start the collaboration service in the single process

* feat: add proxy policy
2025-09-26 09:08:20 +02:00
Jörn Friedrich Dreyer 314390f302 introduce AppURLs helper for atomic backgroud updates
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2025-09-23 12:54:05 +02:00
Roman Perekhod c597dfb917 set default timeouts and clean up 2025-09-12 12:18:47 +02:00
Roman Perekhod 9a3fc08dd4 to separate controll ower the http and grpc driven services 2025-09-12 12:18:47 +02:00
Juan Pablo Villafáñez 9e1b80a1be feat: use runners to startup the services 2025-09-12 12:18:47 +02:00
Florian Schade e96a0b8c5e Merge pull request #1035 from fschade/collaboration-app-provider-re-reigistration
fix(collaboration): re register app providers in a configurable interval
2025-07-04 09:46:13 +02:00
Benedikt Kulmann c61392138c feat: re-enable Save As and Export in collabora 2025-06-26 11:46:46 +02:00
Alex 89b46a0035 fix: collabora use metrics instead of imperial metric system (#1086)
* fix: collabora use metrics instead of imperial metric system

* fix unit tests
2025-06-23 10:14:27 +02:00
06kellyjac 2a3a20693a build: Modify mockery config to work with v3
Maintaining the positioning of the files from v2 to reduce cognitive
load.
Indentation of yaml files now matches `.editorconfig`.
All mock files regenerated.
Added empty `{}` following convention from `mockery init` etc.
Removed directory specification where it would already match.
2025-06-19 16:25:39 +01:00
Florian Schade e226efa4fb fix(collaboration): re register app providers in a configurable interval 2025-06-10 16:53:52 +02:00
Alex 6a62068c2a feat: hide close button in collabora (#828)
* feat: hide close button in collabora
2025-05-22 14:51:26 +02:00
Ralf Haferkamp 96684df32d Adjust to new tablewriter release 2025-05-19 19:26:38 +02:00
Jörn Friedrich Dreyer 3c38a3e3ed fix mockery warnings
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2025-04-29 11:01:17 +02:00
Ralf Haferkamp 24da3687d9 Makefile: remove unneeded recursion.mk
The MAKE_DEPTH variable is not used anywhere anymore.
2025-04-22 16:57:17 +02:00
7dcdc53127 [full-ci] fix(collaboration): hide SaveAs and ExportAs buttons in web office (#471)
* fix(collaboration): hide SaveAs and ExportAs buttons in collabora

---------

Co-authored-by: Viktor Scharf <v.scharf@opencloud.eu>
Co-authored-by: Viktor Scharf <scharf.vi@gmail.com>
2025-03-26 15:06:30 +01:00
Michael Barz 22fb783724 test: extract go bin 2025-03-13 14:04:14 +01:00