1116 Commits

Author SHA1 Message Date
mattwr18
409150813d Update to use PubSub in development
- for some reason RedisPubSub works locally, but with docker it tries to
  connect to Redis and therefore it doesn't pass the build. PubSub is
imported from graphql-subscriptions which is a dependency of
apollo-server-express, and suitable for dev purposes.
2020-02-10 17:19:19 +01:00
mattwr18
6271b53b30 Set up Subscriptions with RedisPubSub 2020-02-07 14:48:55 +01:00
mattwr18
0851ad4c50 Add end line 2020-02-06 10:33:56 +01:00
mattwr18
7ac973f9a1 Refactor cypher statement to simplify
- it's questionable whether this simplifies it or not, and actually adds
  one line of code, but now it looks more similiar to the code in the
notifications query
2020-02-05 20:45:56 +01:00
mattwr18
6cf067937d Clean up
- remove the code for subscriptions to Post as we won't implement this
  at this time... I've created a new branch with the code that can be
built on later
- remove unused subscription path
- add possibility to use websockets uri for production env.
2020-02-05 20:24:23 +01:00
mattwr18
1c6a5503db Get subscriptions working with notifyUserOfComment
- Co-Authored-By: Tirokk <wolle.huss@pjannto.com>
2020-02-05 19:06:55 +01:00
mattwr18
110165691a Refactor out transformReturnType function
- we have introduced a better way to return all the info we want without
  needing to make multiple database queries. It was introduced by
@roschaefer in the PR for the notifications query, but we hadn't
refactored markAsRead yet.
- Now that we are subscribing to notifications, we need to have the same
  return info as the notification query.

- Co-authored-by: Tirokk <wolle.huss@pjannto.com>
2020-02-05 18:42:31 +01:00
mattwr18
2f43069ea0 Subscribe to notifications/remove polling
- We want to publish when a notification occurs for a specific user, not
  have the client poll the backend for ever user every minute.

- Co-authored-by: @Tirokk <wolle.huss@pjannto.com>
2020-02-05 17:37:38 +01:00
mattwr18
04f0467d2d Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1703-add-vue-apollo-subsriptions 2020-02-05 14:33:57 +01:00
mattwr18
5931e363ef
Use original createdAt for merged users/emails (#2969)
- Also, use original verifiedAt date for emails. These users only have
  newly created accounts/emails because of our blunder. Their nodes
should reflect when they became members/verified their emails.
2020-02-03 19:17:48 +01:00
mattwr18
701411e270 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1680-Direct_answer_on_Comment 2020-01-31 13:08:31 +01:00
mattwr18
60cd593826 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1724-block-users 2020-01-30 10:47:50 +01:00
mattwr18
bcc1ab167e Improve styling per @alina-beck review 2020-01-30 10:46:43 +01:00
Robert Schäfer
65811e2d8b
Merge pull request #2898 from Human-Connection/add_underline_menu_button
feat(editor): Underline markup for posts+comments
2020-01-28 22:34:30 +01:00
mattwr18
d6a2f2d9e3 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1680-Direct_answer_on_Comment 2020-01-27 20:08:37 +01:00
mattwr18
d6a5b7ce65 Update post factories with guard clause 2020-01-27 17:32:09 +01:00
mattwr18
b48b93dd0d Set up cypress test for direct reply to comment 2020-01-27 15:07:32 +01:00
mattwr18
37178fd6ba Add migration for muted relationship 2020-01-27 13:28:12 +01:00
roschaefer
789c40c34e feat(editor): Underline markup for posts+comments
We had tiptap's underline and never used it. A user has asked for it, so
why not implement it right away?

Suggested by `@raimundo@human-connection.social`:
https://human-connection.social/post/612bf465-91ce-4be8-906e-3bde63617346/hcsocial-dein-netzwerk-news-mit-dennis-and-robert-1#commentId-b864d04f-1e8c-48c4-9ed0-98aefaed1c02
2020-01-26 20:39:52 +01:00
mattwr18
a28eb8c91f Start subscriptions for notifications 2020-01-24 18:23:59 +01:00
roschaefer
3be5dee08b Draft: Setup subsriptions for backend+frontend
Please clean up this commit and squash it later on.
2020-01-24 17:25:45 +01:00
mattwr18
1057ac4cbe Merge branch 'neo4j_data_migrations' of github.com:Human-Connection/Human-Connection into neo4j_data_migrations 2020-01-23 20:43:10 +01:00
mattwr18
f8f62cc71f Merge branch 'master' of github.com:Human-Connection/Human-Connection into neo4j_data_migrations 2020-01-23 20:42:44 +01:00
Mike Aono
d49afc25cf test(cypress): Cover "Pinned post" feature
* Implement cypress tests

- Start implementation of cypress tests for pinned posts

* Test that Admin can pin a post

- Tests the process of an admin pinning a post

* Resolve failing tests

- Fix ordering of posts immediately after pinning posts by reloading page
- Check that tests are pinned posts are displayed first for role user

* Refactor to seperate the initialization

- Of the post data created in the database during setup

* Fix toaster test

* test(cypress): Add missing parts for pin feature

* docs(cucumber): Link to admin 🥒 folder

* Follow @mattwr18's suggestions

* test(backend): Order pinned posts like frontend

@mattwr18 I think this was a false negative.

Co-authored-by: Robert Schäfer <git@roschaefer.de>
2020-01-23 20:30:12 +01:00
mattwr18
bbb4dd56cd Follow review suggestions/add button to unblock
- @roschaefer gave several suggestions
- we have a button to unblock/unmute users on profile page
2020-01-23 19:18:12 +01:00
roschaefer
e343701057 Reverted a couple changes by @mattwr18
We have to figure out if `mergeRels: true` is actually avoiding
duplicate relationships 🤔.

Before:
(l1)-[:IS_IN]->(l2)
(l1)-[:IS_IN]->(l3)

After:
(l1)-[:IS_IN]->(new)
(l1)-[:IS_IN]->(new)
2020-01-23 17:38:31 +01:00
mattwr18
28dae1f854 Update docs, follow @roschaefer suggestions
- create command should be run with --date-format to be more human
  readable, and --template-file to use our template instead of migrate's
default
- rename migrations
- rename createdAt to migratedAt to remove ambiguity
- do not merge relationships for Location nodes as we don't want to
  create duplicate relationships
- use singular locationId as it's iterating one at a time
2020-01-23 15:44:34 +01:00
mattwr18
8accc62f18 Merge branch 'master' of github.com:Human-Connection/Human-Connection into neo4j_data_migrations 2020-01-22 15:23:11 +01:00
mattwr18
0ab19dde2a Insert missing closing parantheses breaking search 2020-01-22 13:55:57 +01:00
mattwr18
c6bfca312c Favor createdAt over timestamp
- it's more human readable and consistent with all other nodes in
  production
2020-01-22 13:31:48 +01:00
mattwr18
561889c530 Add migration to merge duplicate Locations
- having duplicate Location nodes in the production database blocks us
  from adding a unique constraint, so that Locations are not created
which have the same id.
2020-01-22 13:19:38 +01:00
mattwr18
1de99511db Include BLOCKED users in search results 2020-01-22 10:43:30 +01:00
mattwr18
3354174a53 Fix muted user can still see my posts 2020-01-22 10:34:10 +01:00
mattwr18
e639358557 Test drive to get the functionality how we'd like 2020-01-21 21:16:42 +01:00
mattwr18
704b8c2d57 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1724-block-users 2020-01-21 21:15:03 +01:00
mattwr18
bcae52180e Remove filter on posts for BLOCKED 2020-01-21 19:28:03 +01:00
mattwr18
c7ee90e980 Follow @roschaefer PR suggestions
- As blocking is now reciprocal, we do not need another query, we can
  use neo4j-graphql-js magic to query for a BLOCKED relationship between
the postAuthor and the currentUser
2020-01-21 18:50:46 +01:00
mattwr18
8fe6ad77e0
Merge pull request #2686 from Human-Connection/279-blacklist-users-content
feat: Convert block/unblock to mute/unmute
2020-01-21 17:05:09 +01:00
roschaefer
a86b26a756 Various fixes for data migrations
* Add unique index for `Migration`s
* Fix proper use of `next` callback. First argument is potential error.
* Update migration template
2020-01-20 17:25:36 +01:00
roschaefer
98a4521ecc Add back missing search constraint 2020-01-20 11:28:36 +01:00
roschaefer
b063847849 refactor: Make db:setup init stage of migrate 2020-01-20 11:00:52 +01:00
roschaefer
daf2c40cae Implement Neo4J store for migrate 2020-01-20 10:59:15 +01:00
roschaefer
30268dec09 build(deps): Add migrate for neo4j data migrations
Implement a migration to merge duplicate user accounts with reactive
programming. Those duplicate user accounts existed, because around 40
users have decided to register again while we experienced a bug
related to normalized emails in our database.
2020-01-20 10:59:15 +01:00
roschaefer
c0e2675912 refactor(neo4j) Setup constraints with neode 2020-01-20 10:58:33 +01:00
roschaefer
178143dfb7 refactor(modules): Various import fixes
* DRY schema stitching code
* Use same `.env` configuration file for cypress tests

That last part I couldn't improve a lot. I thought it might be possible
with cypress to import all files from a folder. But since it must be
browser compatible and our backend is not using webpack or anything,
it remains a goal unreached.

close #2773
close #2774
2020-01-17 15:59:19 +01:00
mattwr18
d682ee1ec6 Fix lint 2020-01-14 10:47:32 +01:00
mattwr18
84e475fd8a Merge branch 'master' of github.com:Human-Connection/Human-Connection into 279-blacklist-users-content 2020-01-13 21:22:58 +01:00
mattwr18
1f06a862e7
Merge pull request #2262 from Human-Connection/1463-search-for-users
🍰 Search For Users
2020-01-10 13:59:44 +01:00
Moriz Wahl
8c7079cf81 changes requested by reviews 2020-01-10 09:23:56 +01:00
mattwr18
5d5574b1b5 Blocked users cannot comment on my posts 2020-01-09 16:07:25 +01:00