121 Commits

Author SHA1 Message Date
Robert Schäfer
00da9e8ecb
feat(backend): resize images with imagor (#8558)
* feat(backend): resize images with imagor

Open questions:
* Do we have external URLs for images? E.g. we have them for seeds. But
  in production?

* Do we want to apply image transformations on these as well? My current
implementation does not apply image transformations as of now. If we
want to do that, we will also expose internal URLs in the kubernetes
Cluster to the S3 endpoint to the client.

TODOs:
* The chat component is using a fixed size for all avatars at the moment.
Maybe we can pair-program on this how to implement responsive images in
this component library.

Commits:
* do not replace upload domain url in the database

* fix all webapp specs

* refactor: remove behaviour we won't need

We don't want to apply image transformations on files, right?

* refactor: replace the domain on read not on write

* wip: webapp fixes

* refactor(backend): add another url to config

I've given up. There seems to be no nice way to tell the minio to return
a location which differs from it's host name.

* refactor: add test for s3Service

* refactor(backend): proxy minio via backend in local development

Commits:
* provide tests for message attachments
* remove S3_PUBLIC_URL config value

* refactor: follow @ulfgebhardt's review

* add missing environment variable

---------

Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>
2025-08-19 10:11:12 +02:00
Max
a8de785783
Fix video player in Safari (#8711)
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-06-25 15:27:32 +00:00
Max
4a42d22692
fix(webapp): better chat upload ui (#8693)
* Fix date formatting of transmitting message

* Avoid duplicate key; fix formatting
2025-06-20 20:10:23 +02:00
Max
252b4a037f
fix(webapp): show hint that message is being saved (#8690)
* Show hint that message is being saved

* Translate transmitting message
2025-06-19 14:40:11 +02:00
Max
915091286a
Keep correct file extension for audio captures (voice chat) (#8687)
Problem:
When audio is directly recorded to chat, it has the correct file extension in its name ("audio.mp3"). The file object we get doesn't have an extension property though, so the file name after our modification would be "audio.mp3.undefined". Safari doesn't accept this as audio source, and I hate to say it, but I agree.

So if there is no extension, keep the existing one. Problem solved.
2025-06-19 11:03:22 +00:00
6956473ea5
fix(webapp): filenames for chat files (#8680)
* filenames for chat files

* remove console log
2025-06-15 09:13:14 +00:00
a0c205b379
feat(backend): file upload chat backend (#8657)
* Prepare image uploads in chat

* files instead of images

* Fix file type and query

* Add dummy data to resolver

* fix graphql types

* Fix file upload, remove unncessary code

* Re-add fetch

* Fix room order after sent message

* Update backend/src/graphql/queries/messageQuery.ts

* Move room to top of list when a message is received

* working prototype chat file upload

* remove console

* allow to upload all kinds of files

* multiple images

* revert changes in S3 Images

* tag mimetype

* accept any file

* lint fix

* remove snapshot flakyness

* remove whitelist test

* fix messages spec

* fix query

* more query fixes

* fix seed

* made message resolver tests independent

* lint

* started specc for attachments

* more tests & fixes

* fix empty room error

* remove console logs

* fix tests

* fix createRoom last Messsage error properly

* lint fixes

* reduce changeset

* simplify config check

* reduce changeset

* missing change

* allow speech capture

* Fix file download

* Implement proper download

---------

Co-authored-by: Maximilian Harz <maxharz@gmail.com>
2025-06-13 19:02:37 +00:00
sebastian2357
ff366a4075
fix(webapp): mobile optimization (#8516)
* - optimized header
- added possibility of extra mobile logo

* - changed behavior of NotificationMenu link get directly open for mobile

* - moved notification links to the top of the menu

* - optimized chat view for mobile

* - added logo branding structure

* - added logo branding structure

* - fixed chat height

* - fixed paddings for internal pages

* Fix linting

* Fix linting

---------

Co-authored-by: Sebastian Stein <sebastian@codepassion.de>
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-09 17:04:06 +00:00
entermex
bd688ecd6b Fix: proxyApiUrl in chat rooms for the avatars 2023-08-18 11:43:28 +02:00
Wolfgang Huß
d345bf0bba Merge branch 'master' of github.com:Ocelot-Social-Community/Ocelot-Social into 6669-fix-having-wrong-chat-font-as-default-in-network 2023-08-11 12:34:42 +02:00
Wolfgang Huß
5b954197dc Remove font 'Quicksand' from the chat
- Set style of chat component to 'scoped'
2023-08-11 12:27:21 +02:00
Wolfgang Huß
2c123313ed Fix 'm.avatar is null' error message 2023-08-11 11:14:47 +02:00
7e697d7f9d
lint fixes 2023-08-08 22:22:11 +02:00
5c1ab88012
conditional url replacement 2023-08-08 22:21:24 +02:00
elweyn
b591820eb6 Fix avatar in Room. 2023-08-08 07:56:02 +02:00
6f43321aba
try to fix avatars 2023-08-07 15:56:56 +02:00
Markus
f1fc2e07f7 fixed linting 2023-07-28 14:36:32 +02:00
Markus
9849a13999 [fix] @ mentions in chat now redirect to user page 2023-07-28 14:35:43 +02:00
elweyn
d07dbe14a9 Change click event layer from div to button. 2023-07-26 14:21:05 +02:00
elweyn
ad74448696 Fix linting. 2023-07-26 14:00:59 +02:00
elweyn
790ce71122 Change the button style to small, change position. 2023-07-26 13:43:51 +02:00
elweyn
618e4c7a67 Change icons to base-buttons 2023-07-26 12:59:25 +02:00
fbd2b08737
Merge branch 'master' into fix-security-subscriptions 2023-07-20 17:11:20 +02:00
Wolfgang Huß
b26e454562 Fix linting 2023-07-20 15:42:40 +02:00
elweyn
074711dd90 Fix: order createdAt_desc & lastMessageAt_desc 2023-07-20 14:31:57 +02:00
elweyn
21124bcd71 Fix: Order of rooms. 2023-07-20 14:18:25 +02:00
f7c381efd8
subscription chatMessageAdded security fix 2023-07-20 13:44:04 +02:00
70a1c52165
lint fixes 2023-07-20 13:10:25 +02:00
01fb28da3c
unify function to fix room result, propose order fix(not 100%) 2023-07-20 13:09:38 +02:00
624f379677
fix new room mechanic 2023-07-20 12:57:18 +02:00
elweyn
0b64fce5aa Add selectedRoom equaling the createdRoom 2023-07-20 12:19:32 +02:00
Wolfgang Huß
883d7d89ab Fix linting 2023-07-20 12:04:37 +02:00
Wolfgang Huß
dee77df5f6 Cleanup 2023-07-20 12:02:24 +02:00
elweyn
13da3ba3f4 Add returned properties to the CreateRoom mutation, add emit to change the roomID. 2023-07-20 11:35:06 +02:00
elweyn
a82d245f63 Change toast error to error.message. 2023-07-20 11:03:20 +02:00
elweyn
b76802f59f Add close button and style the headline of the UserSearch. 2023-07-20 11:01:18 +02:00
Wolfgang Huß
858e3fdee8 Rename 'addRoom' to 'toggleUserSearch' in chat component 2023-07-20 10:40:04 +02:00
elweyn
6659238fa1 Add fetchRooms option & check null on content. 2023-07-20 10:15:15 +02:00
Hannes Heine
b126347aee
Merge branch 'master' into 6592-chat-component-+-button-open-search 2023-07-20 06:40:44 +02:00
Wolfgang Huß
20e6fb5122 Change headline for search user for new chat on chat page 2023-07-19 17:59:20 +02:00
Wolfgang Huß
4192612293 Fix linting 2023-07-19 17:51:05 +02:00
Wolfgang Huß
3d9a9cd5a0 Create the chat room on user search in chats function 2023-07-19 17:47:56 +02:00
Markus
74dceb82f0 Merge branch '6588-chat-link-to-chat-page' of github.com:Ocelot-Social-Community/Ocelot-Social into 6588-chat-link-to-chat-page 2023-07-19 17:27:05 +02:00
Markus
45dba25a7a [fix] changed css rule for single chat icon 2023-07-19 17:24:37 +02:00
Wolfgang Huß
26282c67b7 Make user search in chats function – second step 2023-07-19 16:41:23 +02:00
Hannes Heine
e87078c2fc
Merge branch 'master' into 6588-chat-link-to-chat-page 2023-07-19 16:25:01 +02:00
Markus
5bae7cbd94 [feature] open chat page via link from single chat window and open the used room after loading 2023-07-19 15:54:31 +02:00
Wolfgang Huß
ffe51a0743 Separate 'ds-select' of 'AddGroupMember' into separate component 'SelectUserSearch' 2023-07-19 15:48:05 +02:00
ea368cd0f3
lint fixes 2023-07-19 15:09:13 +02:00
2f76d0b502
fix lastMessage to contain proper values 2023-07-19 14:38:23 +02:00