215 Commits

Author SHA1 Message Date
roschaefer
e4d57f80aa Fix #1333
Ok, so here are multiple issues:
1. In cypher, `NOT NULL` will return `NULL` not `FALSE`. If we want
`FALSE` to be set in the database import, we should use `COAELESCE`
to find the first not-null value.
See:
https://neo4j.com/docs/cypher-manual/current/syntax/working-with-null/
https://markhneedham.com/blog/2017/02/22/neo4j-null-values-even-work/

2. I removed the `disabled` and `deleted` checks on the commented
counter. With `neo4j-graphql-js` it is not possible to filter on the
join models (at least not without a lot of complexity) for disabled or
deleted items. Let's live with the fact that the list of commented posts
will include those posts, where the user has deleted his comment or where
the user's comment was disabled. It's being displayed as "not available"
so I think this is OK for now.

3. De-couple the pagination counters from the "commented", "shouted"
etc. counters. It might be that the list of posts is different for
different users. E.g. if the user has blocked you, the "posts" list
will be empty. The "shouted" or "commented" list will not have the
posts of the author. If you are a moderator, the list will include
disabled posts. So the counters are not in sync with the actual list
coming from the backend. Therefore I implemented "fetch and check if
resultSet < pageSize" instead of a global counter.
2019-08-28 12:57:32 +02:00
Wolfgang Huß
df4f0627b5 Merge branch 'master' of https://github.com/Human-Connection/Human-Connection into 1062-notification-about-comment-on-post
# Conflicts:
#	backend/src/middleware/index.js
2019-08-23 15:31:48 +02:00
Matt Rider
cd5e492569 Await relation be added 2019-08-23 12:18:53 +02:00
Matt Rider
773779e5f1 Fix UpdatePost resolver/validations 2019-08-23 10:57:11 +02:00
Wolfgang Huß
04fe6b0a8c Merge branch 'master' of https://github.com/Human-Connection/Human-Connection into 1062-notification-about-comment-on-post
# Conflicts:
#	backend/src/middleware/handleNotifications/handleNotificationsMiddleware.spec.js

Refactored there tests a little
2019-08-22 11:02:10 +02:00
Wolfgang Huß
3d2df56141 Backend tests 2019-08-21 14:27:32 +02:00
Wolfgang Huß
d98ebdd713 Merge branch 'master' of https://github.com/Human-Connection/Human-Connection into 1062-notification-about-comment-on-post 2019-08-21 08:37:43 +02:00
Matt Rider
ea923ae1dc Merge branch 'master' of github.com:Human-Connection/Human-Connection into post-needs-to-have-category#1222 2019-08-20 21:29:10 +02:00
Matt Rider
512bf32b0c Update cypress tests, fix broken comment reactivity 2019-08-20 21:27:00 +02:00
Matt Rider
8735045d11 Update cypress tests, post query 2019-08-20 20:13:29 +02:00
Robert Schäfer
89b377fee1
Merge pull request #1281 from Human-Connection/272-add_error_reporting
272 add error reporting
2019-08-20 19:07:49 +02:00
Matt Rider
a000719663 Merge branch 'master' of github.com:Human-Connection/Human-Connection into post-needs-to-have-category#1222 2019-08-20 16:13:38 +02:00
Matt Rider
29f39c4f45 Update backend tests
- Every test that created or updated a post needed to be updated to add categoryIds
2019-08-20 15:54:51 +02:00
Wolfgang Huß
83a538d345 Write backend tests
Rename files.

Co-Authored-By: mattwr18 <mattwr18@gmail.com>
2019-08-19 22:13:42 +02:00
roschaefer
58795ad990 Implement error reporting for the backend 2019-08-19 20:14:43 +02:00
Matt Rider
555c5254bc Add tests, validations for too many categories
- Co-authored-by: Joseph Ngugi <jngugi88@gmail.com>
2019-08-19 17:31:55 +02:00
Matt Rider
3b09c31cbb Merge branch 'master' of github.com:Human-Connection/Human-Connection into post-needs-to-have-category#1222 2019-08-19 16:55:29 +02:00
Matt Rider
caff74e58b Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1017-send-out-notifications-on-create-omment 2019-08-19 10:50:46 +02:00
Robert Schäfer
87461c21ca
Merge pull request #1280 from Human-Connection/refactor-graphql-queries
Refactor graphql queries
2019-08-19 09:58:38 +02:00
Wolfgang Huß
68c25b8d54 Merge branch 'master' of https://github.com/Human-Connection/Human-Connection into 1062-notification-about-comment-on-post
# Conflicts:
#	backend/src/middleware/handleNotifications/handleNotifications.spec.js
2019-08-19 08:42:00 +02:00
Wolfgang Huß
f653bac9e1 Merge branch 'master' of https://github.com/Human-Connection/Human-Connection into 1017-send-out-notifications-on-create-omment
# Conflicts:
#	backend/src/middleware/handleHtmlContent/handleContentData.spec.js
2019-08-16 18:22:36 +02:00
Matt Rider
dbaa8e687f Fix vue warnings, fix tests, refactor
- was throwing an error when trying to update commentsCount because of new implementation by @roschaefer which uses countResolver, but there was no related for commentsCount, it was r... also commentsCount is no longer needed anywhere in the code base, it is commentedCount now
2019-08-16 13:28:55 +02:00
roschaefer
51b734275a The name of the hashtag is now it's ID
`name` was just a redundant attribute
2019-08-16 01:49:29 +02:00
Wolfgang Huß
8acccc99d0 Implemented a reason in the Notification
Used this for displaying in the mentions menu in frontend.
Rewrite backend test.
2019-08-15 19:29:06 +02:00
kachulio1
314dfcf413 Throw error if no categories on post creation
Co-authored-by: mattwr18 <mattwr18@gmail.com>
2019-08-15 17:55:02 +03:00
Matt Rider
f0af231975 Merge branch '1017-send-out-notifications-on-create-omment' of github.com:Human-Connection/Human-Connection into 1017-send-out-notifications-on-create-omment 2019-08-15 12:14:22 +02:00
Wolfgang Huß
6ab9a3204b Fix the backend test 2019-08-15 11:07:57 +02:00
Wolfgang Huß
0d66cc4dcf Merge branch 'master' of https://github.com/Human-Connection/Human-Connection into 1017-send-out-notifications-on-create-omment
# Conflicts:
#	backend/src/middleware/handleHtmlContent/handleContentData.js
#	backend/src/schema/types/schema.gql
2019-08-15 10:16:33 +02:00
Matt Rider
569ace137b Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1017-send-out-notifications-on-create-omment 2019-08-15 10:14:47 +02:00
Wolfgang Huß
e8c1a5fe8d Write backend tests 2019-08-14 18:05:13 +02:00
Robert Schäfer
b6c96b7a57
Merge pull request #1261 from Human-Connection/1201-localise-categories
Localise categories
2019-08-14 17:44:21 +02:00
Matt Rider
ee93efd6d9 Localise categories 2019-08-14 13:57:39 +02:00
Wolfgang Huß
67f25104f4 Fixing lint 2019-08-14 13:22:01 +02:00
Wolfgang Huß
825a5f235a Merge branch 'master' of https://github.com/Human-Connection/Human-Connection into 1017-send-out-notifications-on-create-omment 2019-08-14 13:10:19 +02:00
roschaefer
6fb926e735 Fix Search.feature in a hacky way
Ok, we have no control what parameters are passed to the cypher query
generated by `neo4j-graphql-js`. So I'm re-using the `filter` param.
If the `$filter` param is `{}` then we can use COALESCE to turn that
into empty array. Ugh.
2019-08-13 16:46:52 +02:00
roschaefer
5103bdbc2a Fix tests 2019-08-13 11:50:33 +02:00
Robert Schäfer
bedbb21def Refactor notification spec
Wow this took me the entire day: If you run `createServer` multiple
times, more and more middlewares get added to the schema. That's why
the test would create 2^n notifications for n times you called
`createServer`. This is related to the following bug:

https://github.com/prisma/graphql-middleware/issues/63
2019-08-13 11:05:29 +02:00
Robert Schäfer
8de0195cf8 Keep existing filter params + same for text search 2019-08-13 11:05:29 +02:00
Robert Schäfer
5fb60d1132 Implement+test blocking a user on backend 2019-08-13 11:05:29 +02:00
Robert Schäfer
cc1f932803 Refactor tests with Post model 2019-08-13 11:05:29 +02:00
Robert Schäfer
7f509b3201 Implement block/unbock UI 2019-08-13 11:05:29 +02:00
Robert Schäfer
293054a05b Implement block+unblock basic features 2019-08-13 11:05:29 +02:00
Robert Schäfer
700bdcb8f1 Implement+test unblock mutation 2019-08-13 11:05:29 +02:00
Robert Schäfer
f5a59568ab Implement block except for the unfollow feature 2019-08-13 11:05:29 +02:00
Robert Schäfer
05aee24efd Implement+test User.blockedUsers resolver 2019-08-13 11:05:29 +02:00
Robert Schäfer
f8b37b5c1e Remove obsolete relationship 'BLACKLISTED' 2019-08-13 11:05:29 +02:00
Robert Schäfer
6950068a12 Sketch test for #1054 2019-08-13 11:05:29 +02:00
Robert Schäfer
963cbbef32 RemovePostEmotions should return deleted object
@mattwr18 I prefer (I believe it's even best practice) that a delete
mutation should return the deleted object. If you run the delete
mutation again, it should return `null` because there is no object like
that anymore. That way the client knows if a delete mutation has changed
any state in the database.

Also I fixed another bug in the resolver. If your graphql mutation looks
like this:

```gql
mutation {
  RemovePostEmotions(to:{ id:"p15"}, data:{emotion: angry}) {
    from {
      id
      name
    }
    to {
      id
      title
    }
    emotion
  }
}
```

Then you get errors because your resolver does not return the name for
the user or the title for the post anymore. Just use spread operator...
and it's fixed.
2019-08-08 23:51:26 +02:00
Robert Schäfer
f3e545a913 Fix bug: Only add emotions for authenticated user 2019-08-08 23:10:01 +02:00
Matt Rider
21aa729edb Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1017-send-out-notifications-on-create-omment 2019-08-08 09:10:18 +02:00