37 Commits

Author SHA1 Message Date
Moriz Wahl
9a4f7326c1
fix(webapp): no distance to me on own profile (#8907)
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-09-22 23:59:18 +02:00
Wolfgang Huß
c1a05bc73b
feat(webapp): add location distance in group profile (#8846)
* Add distance to group profile if location is defined

* Fix snapshot tests in 'webapp/pages/groups/_id/_slug.spec.js'

* Fix prop Vue warning in test 'webapp/pages/groups/_id/_slug.spec.js'

* reuse locationFragement for groups

* use better order on locationFragement parameters

* moved LocationInfo Component to correct place as its used in Group & User related context

* use size prop

* reduce changeset

* update snapshots

* remove computed property & simplify component

* more tests & updated snapshots

---------

Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>
2025-08-26 10:34:30 +02:00
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
sebastian2357
a81ec214f1
fix(webapp): added option for slug (#8659) 2025-07-02 12:20:21 +00:00
sebastian2357
2b457a5823
fix(webapp): added timer (#8658) 2025-06-19 11:37:03 +00:00
e5b692e753
fix(webapp): hotfix dropdown menu placement (#8594)
* hotfix dropdown menu placement

* update snapshots

---------

Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
2025-05-25 17:10:18 +00:00
sebastian2357
a69006873d
fix(webapp): notifications - UI Improvements (#8559)
* Notifications view:
- restructured broken layout
- joined several columns for mobile view
- moved button from footer to header
- set alternating colors for the table rows

UserTeaser
- added injectedText
- added injectedDate
- fixed padding

* fixed race-condition with default behavior of browser

* - fixed: jumping menu / menu should get closed by click on notification
- fixed: NotificationList replaced by NotificationTable

* - fixed: menu gets closed when cursor leaves content area, but it is still within popup

* - fixed: menu top buttons should be next to each other

* - fixed: popup background overlay remains after NotificationMenu disappeared after viewport change to mobile

* - fixed lint errors

* - fixed tests + snapshots

* - fixed e2e test

* fix lint error

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

* Fix locale identifier to have single quotes 'notifications.reason.on_date'

---------

Co-authored-by: Sebastian Stein <sebastian@codepassion.de>
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>
2025-05-25 16:44:33 +00:00
Max
7ea8107ed0
fix(webapp): fix popover flickering (#8555)
Add boundary to v-popover to avoid random flickering when hovering a user teaser
Preload user data to avoid resizing (and sometimes repositioning) of popover after data has been loaded
2025-05-20 07:21:22 +00:00
Max
33274e5b9a
feat(webapp): user teaser popover (#8450)
* 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

* remove comments

* Show user teaser popover with badges, Desktop

* Refactor UserTeaser and add mobile popover support

* Avoid click propagation (WIP)

* Prevent event propagation

* Adjust alignment and font sizes

* More spacing for statistics

* Add distance, simplify user link

* Refactor location info into own component

* Add tests for UserTeaserPopup

* Refactor and test LocationInfo

* Query distanceToMe, rename distance to distanceToMe

* Update test

* Improve tests for UserTeaser, WIP

* Fix tests

* DistanceToMe on User instead of Location

* Revert "DistanceToMe on User instead of Location"

This reverts commit 96c9db00a44cd120e47bfe9534d3e066a194744c.

* Fix notifications

* Refactor UserTeaser and fix location info

* Fix group member crash

* Show 0 distance

* Fit in popover on small screens

* Allow access to profile on desktop

* Revert backend changes

* Load user teaser popover data only when needed

* Fix type mismatch

* Refactor for clarity and accessibility

* Litte refactorings and improvements

* Fix popover test

* Adapt and fix tests

* Fix tests and bugs

* Add placeholder

* cypress: adapt user teaser locator to changes

* Remove delays and scrolling

* Disable popovers in notification list and fix layout

* Remove flickering

* Make overlay catch all pointer events on touch devices

* Re-add attribute for E2E test

* Fix test, return to mouseover

* fix snapshot

---------

Co-authored-by: Ulf Gebhardt <ulf.gebhardt@webcraft-media.de>
Co-authored-by: Wolfgang Huß <wolle.huss@pjannto.com>
Co-authored-by: mahula <lenzmath@posteo.de>
2025-05-05 23:54:13 +00:00
8cf405c549
feat(backend): badges (#8391)
* delete all old badges

* reward/unrewardBadge

* verification Badges

* name all badged accordingly

* more tests, lint

* seed badges

* profileBadge mechanic

* badgesUnusedCount

* seed profileBadges set

* configure profile badge count

* insert badges db:data:badges:default

* seed commands to seed default badges and allow to seed branding data

* copy data migrations when building docker

* typo

* correct data:branding command & document it

* test new functionality

* Update backend/src/db/seed/badges.ts

Co-authored-by: Max <maxharz@gmail.com>

* Update backend/src/db/seed/badges.ts

Co-authored-by: Max <maxharz@gmail.com>

* Update backend/src/db/seed/badges.ts

Co-authored-by: Max <maxharz@gmail.com>

* naming coventions

* final naming fix

lint

fix build

fix badge type in test

renamed badge_ to trophy_

lint fixes

small renameing

fixes

fix users spec

fix webapp queries

fix display

* expose badge description

---------

Co-authored-by: Max <maxharz@gmail.com>
2025-04-17 23:08:54 +00:00
mahula
fb56539dff
Merge branch 'master' into 6979-make-relative-date-configurable 2024-02-07 09:56:58 +01:00
Wolfgang Huß
4fa8ecf772 Implement config for 'date-time' format 2024-02-05 17:41:44 +01:00
Markus
3707fade72 [feature] redesigned post teaser date info 2024-02-01 10:03:41 +01:00
Markus
85e68795a3 [fix] all group related pages are now under one route, so link highlighting works 2023-07-19 10:09:04 +02:00
Moriz Wahl
0d160c0280 add modal to add group member confrimation 2022-11-22 12:24:02 +01:00
Wolfgang Huß
1421973a9f Fix Cypress test 'I_click_on_the_author.js' 2022-10-22 08:41:27 +02:00
Wolfgang Huß
294da3048f Refine 'in' text between user slug and group slug in user teaser 2022-10-21 11:11:03 +02:00
56850f7790
include in between user and group link -> @user in &group 2022-10-20 12:54:07 +02:00
Wolfgang Huß
fc32a5f1aa Add new user teaser options to storybook 2022-10-19 18:59:26 +02:00
Wolfgang Huß
731f3a51aa Add group to user teaser, on post page, and on news feed 2022-10-17 18:45:02 +02:00
Wolfgang Huß
5f43a51c6a Rename prop 'user' of 'profile-avatar' to 'profile' 2022-08-29 18:39:51 +02:00
Wolfgang Huß
615ee2991a Rename Component from 'UserAvatar' as 'user-avatar' to 'ProfileAvatar' as 'profile-avatar' 2022-08-29 18:21:50 +02:00
Wolfgang Huß
077a63aca7 Rename class 'user-avatar' to 'profile-avatar' 2022-08-29 18:09:51 +02:00
roschaefer
276ea79e8f Update prettier to v2 2020-03-24 21:11:11 +01:00
Robert Schäfer
512ef672bf
feat: Introduce graphql image type (#3043)
* refactor(graphql): Introduce image type

* Undo changes to .travis.yml

* chore: Upgrade travis to node LTS

- URL is available since v10

* chore: use lts

Co-authored-by: mattwr18 <mattwr18@gmail.com>
2020-03-16 15:32:19 +01:00
Alina Beck
701564c708 Merge branch 'master' into migrate-styleguide-card 2020-02-20 00:37:07 +01:00
abdellani
e3c95cbbf5 fixes linter error 2020-02-17 15:04:16 +01:00
Alina Beck
ad385490bc follow @mattwr18 PR review
- replace magic numbers with tokens
- remove unused name attribute
- use slot shorthand (for the slots added in this PR)
2020-02-17 10:44:52 +01:00
abdellani
cd62bb457b Removes popover menu 2020-02-13 00:46:50 +01:00
Alina Beck
7c090cc3ed set z-index for UserTeaser only on PostCard 2020-01-22 18:09:44 +03:00
Alina Beck
0392826211 set avatar size to small in AvatarMenu and for Anonymous users 2020-01-22 18:05:00 +03:00
mattwr18
769c0cd105 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 2675-migrate-avatar-component-2 2020-01-21 17:08:51 +01:00
Alina Beck
e93332b173 display username below slug when there is no date-time 2020-01-21 17:00:20 +03:00
Alina Beck
c5af2dbfb4 truncate overflowing user name 2020-01-21 11:58:54 +03:00
mattwr18
7b73c990ec Remove unintended changes to class name/comment 2020-01-20 10:19:39 +01:00
mattwr18
77ef3b0406 Fix failing tests 2020-01-20 10:07:02 +01:00
mattwr18
fdf00fc0c6 Follow @alina-beck's PR review suggestions
- Update styling
- Avoid nested tags
- Rename components with two names
- Add story

- Co-authored-by: Alina Beck <alina.beck@mail.com>
2020-01-20 10:04:30 +01:00