73 Commits

Author SHA1 Message Date
ad4b6e0d79
refactor(webapp): remove email normalization (#8580)
* remove email normalization from webapp

* missing change

* fix error when email is not defined

* fix lint

* remove obsolete test

* remove obsolete tests

* fix password reset

---------

Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-25 15:58:41 +02:00
2b0d38fdff
feat(backend): autoselect badges when rewarding and the user still have free slots (#8577)
* autoselect badges when rewarding and the suer still have free slots

* improve semantics

---------

Co-authored-by: Hendrik-cpu <62690517+Hendrik-cpu@users.noreply.github.com>
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-25 14:43:38 +02:00
Robert Schäfer
497dabdef9
build(backend): upgrade outdated S3 client (#8463)
I think we can merge this already. The S3 client dependency is outdated
and since the code is behind a feature flag it doesn't get executed. Why
not merge it then?
2025-05-22 14:29:17 +00:00
Moriz Wahl
35729dfb6a
fix(backend): user role in group in notifications (#8552)
Co-authored-by: Max <maxharz@gmail.com>
2025-05-20 06:54:10 +00:00
a9ac75cf0c
fix statistics: reports (#8576) 2025-05-19 11:24:24 +00:00
34c0e5166f
fix(backend): fix statistics and introduce new values (#8550)
* fix statistics and introduce new values

* fix locales
2025-05-12 17:51:15 +00:00
2278a9e311
fix(backend): fix registration with invite code (#8513)
* fix registration with invite code

* save one db call

* fix
2025-05-09 11:20:56 +00:00
989d5ff781
fix(backend): invite codes - hotfix 1 (#8508)
* hotfix invite codes

* fix tests & ensure correct behaviour
2025-05-08 22:57:55 +00:00
3f4d648562
feat(backend): group invite codes (#8499)
* invite codes refactor

typo

* lint fixes

* remove duplicate initeCodes on User

* fix typo

* clean permissionMiddleware

* dummy permissions

* separate validateInviteCode call

* permissions group & user

* test validateInviteCode + adjustments

* more validateInviteCode fixes

* missing test

* generatePersonalInviteCode

* generateGroupInviteCode

* old tests

* lint fixes

* more lint fixes

* fix validateInviteCode

* fix redeemInviteCode, fix signup

* fix all tests

* fix lint

* uniform types in config

* test & fix invalidateInviteCode

* cleanup test

* fix & test redeemInviteCode

* permissions

* fix Group->inviteCodes

* more cleanup

* improve tests

* fix code generation

* cleanup

* order inviteCodes result on User and Group

* lint

* test max invite codes + fix

* better description of collision

* tests: properly define group ids

* reused old group query

* reuse old Groupmembers query

* remove duplicate skip

* update comment

* fix uniqueInviteCode

* fix test
2025-05-08 19:18:40 +00:00
Robert Schäfer
290a176407
refactor(backend): types for global config (#8485)
* refactor(backend): types for global config

I saw merge conflicts in these files for #8463 so let's get some parts of this PR into `master` already.

I believe this fixes a small bug. They guard clause didn't ensure that all of REDIS_ configurations were set.

* remove old email mechanism

* refactor(backend: react to @ulfgebhardt's review

See: https://github.com/Ocelot-Social-Community/Ocelot-Social/pull/8485#pullrequestreview-2813528327

* build(backend): optional commit

@ulfgebhardt this is how I tested the configurations. We don't need to include this commit but I wouldn't expect to send out real emails from a `docker-compose` setup.

---------

Co-authored-by: Moriz Wahl <moriz.wahl@gmx.de>
2025-05-07 15:57:35 +02:00
Moriz Wahl
65f764f6d9
feat(backend): signup email localized (#8459)
* localized registration email

* localized email verification email

* localized reset password email
2025-05-05 20:44:14 +02:00
Robert Schäfer
fac818a3e4
refactor(backend): types for context + slug (#8486)
Also these changes saw merge conflicts in #8463 so let's get them merged already.

Co-authored-by: mahula <lenzmath@posteo.de>
2025-05-04 07:44:31 +08:00
c69cef47a1
refactor(backend): refactor context (#8434)
* type for neo4j and neode

* fix build

* remove flakyness

* wait for neode to install schema

* remove flakyness

* explain why we wait for a non-promise

* refactor context

missing change

missing change

* adjust test setup

proper cleanup after test

* lint fixes

* fix failing test to use new context
2025-05-03 09:43:08 +00:00
68edc47f65
remove all helpers on src/helpers (#8469)
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-02 13:57:37 +00:00
edce234745
move models into database folder (#8471)
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-02 11:34:43 +00:00
839ffb29ee
refactor(backend): move resolvers into graphql folder (#8470)
* move resolvers into graphql folder

* lint fixes
2025-05-02 07:47:39 +00:00
f8864a779c
move distanceToMe onto Location (#8464) 2025-05-01 10:33:53 +02:00
21f343b8cf
feat(backend): distanceToMe (#8462)
* calculate distance between current user and queried user

* fix query for unset location

* use database to calculate distance

* rename distance to distance to me, 100% calculation done in DB

* distanceToMe tests

* lint fixes
2025-04-30 18:12:20 +00:00
5883818b91
refactor(backend): default badges, always return a badge (#8430)
* default badges, always return a badge

- default badges for trophy and verification
- always return a badge instead of null
- isDefault field on Badge

lint fixes

* default_verification svg

* add default-trophy

Co-authored-by: Sebastian Stein <sebastian@codepassion.de>

---------

Co-authored-by: Sebastian Stein <sebastian@codepassion.de>
2025-04-23 17:12:24 +00:00
873cd6cd34
refactor(backend): allow to set selected badge-slot to null (#8421)
* allow to set selected badgeslot to null

Free a specific badge slot by setting it to null

* Update backend/src/schema/resolvers/users.ts

Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>

---------

Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
Co-authored-by: Max <maxharz@gmail.com>
2025-04-23 18:21:06 +02:00
7592fe29be
move graphql types into graphql folder (#8420) 2025-04-22 13:28:01 +00:00
6f4d347f69
refactor(backend): separate queries (#8358)
* separate all queries into one file each

* fix merge error

* fix lint

---------

Co-authored-by: mahula <lenzmath@posteo.de>
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-04-21 11:47:12 +00:00
Moriz Wahl
538f409086
feat(backend): observe posts (#8292)
* After creating the post, the author of it automatically observes it to get notifications when there are interactions

* a user that comments a post, automatically observes that post to get notifications when there are more interactions on that post

* mutation that switches the state of the observation of a post on and off
2025-03-26 22:16:06 +01:00
Wolfgang Huß
64f276e56c Fix divers links etc. in diverse readmes 2023-10-26 19:04:51 +02:00
f9dad608c7
Merge branch 'master' into chat-last-messages 2023-07-18 15:22:56 +02:00
cca020b6b3
aligned backend and frontend queries, show last message and unread count in room list 2023-07-18 11:14:06 +02:00
98cad5b568
changed order of room to lastMessageAt 2023-07-18 10:47:56 +02:00
Moriz Wahl
c05d39f4e6
Merge branch 'master' into new-room-properties 2023-07-17 14:11:33 +02:00
mahula
58e25e6361
Merge branch 'master' into chat-order-by-indexid 2023-07-17 13:36:52 +02:00
Moriz Wahl
1ac3553200
Merge branch 'master' into new-room-properties 2023-07-17 13:06:35 +02:00
Moriz Wahl
edaf72b674 add room query pagination 2023-07-17 11:56:58 +02:00
1e77e9aec0
Merge branch 'master' into unread-rooms-query 2023-07-17 10:23:56 +02:00
661c2f1b71
implement room order 2023-07-15 12:51:33 +02:00
5f4a973e2a
backend allow room filter by id for single rooms 2023-07-15 10:38:35 +02:00
Moriz Wahl
3d4def7c10
Merge branch 'master' into new-room-properties 2023-07-14 19:56:42 +02:00
Moriz Wahl
09be4d3442 test unread rooms query 2023-07-14 14:40:38 +02:00
Moriz Wahl
4310b3fa48 create message mutation returns full message object 2023-07-14 12:51:54 +02:00
Moriz Wahl
1fd67aa581 add unreadCount property 2023-07-14 12:34:12 +02:00
Moriz Wahl
2fe93892a1 full room object for create room mutation 2023-07-14 12:21:40 +02:00
Moriz Wahl
1d92b40f50 lastMessage in room working 2023-07-14 11:52:51 +02:00
54cf5b37a5
order by indexId instead of createdAt 2023-07-14 11:09:04 +02:00
a9ad8c34c8
Merge branch 'master' into message-pagination 2023-07-14 09:13:40 +02:00
Moriz Wahl
032bca1b64 add last message at, use cypher statements for roomName and avatar 2023-07-13 19:09:17 +02:00
06b15dcd5c
expect specific order of elements when querying, fix pagination query 2023-07-13 12:18:05 +02:00
a82e76f366
test message ordering & pagination 2023-07-13 11:13:06 +02:00
Moriz Wahl
9f1f028454 handle seen prop 2023-07-12 11:53:49 +02:00
Moriz Wahl
2ea77b784d add saved, distributed and seen props. Handle distributed 2023-07-12 11:01:17 +02:00
aaa033c6a3
lint fixes 2023-06-21 16:43:18 +02:00
Moriz Wahl
02ffdda69d
Merge branch 'master' into message-properties 2023-06-20 20:24:28 +02:00
Moriz Wahl
6a3ec44f4d feat(backend): message properties 2023-06-20 19:19:54 +02:00