419 Commits

Author SHA1 Message Date
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
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
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
mattwr18
5d5574b1b5 Blocked users cannot comment on my posts 2020-01-09 16:07:25 +01:00
mattwr18
ba3e9e1025 Rename blacklist/whitelist to mute/unmute
- Follow @roschaefer suggestion in issue
- This can be reverted if we decide otherwise
2020-01-08 18:04:26 +01:00
mattwr18
c297b83f87 Convert block/unblock to blacklist/whitelist
- at the moment, we have implemented blocked like we want the
blacklist/whitelistUserContent to be, with the exception that is should
not be both ways. If I blacklist a user's content, they still see my
content in their news feed.
2020-01-07 18:57:35 +01:00
mattwr18
303558d173 Merge branch 'master' of github.com:Human-Connection/Human-Connection into update_neo4j_driver 2020-01-07 11:38:01 +01:00
mattwr18
885fa8f1fc Parse xss before extracting mentions/hashtags 2020-01-06 15:39:26 +01:00
mattwr18
3ef04f8391 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1463-search-for-users 2019-12-19 17:16:48 +01:00
roschaefer
d7193ab3b6 Update neo4j-driver
Fix API changes. Also close the session in resolver only and refactor
userMiddleware to become a part of the resolver.
2019-12-17 20:20:16 +01:00
mattwr18
1f2216cd4f Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1463-search-for-users 2019-12-13 12:31:14 +01:00
mattwr18
307076771c Fix lint 2019-12-13 10:45:58 +01:00
mattwr18
dfd30cbaac Remove check for setting name to null or undefined
- this was making things more likely to fail from the frontend, we would
need to consider doing a db manipulation for users from the old alpha
who have user.name as null.
- it only protects against someone who bypasses our UI and sends a
message directly to the backend, but if they can do that we have bigger
problems.
2019-12-13 10:17:19 +01:00
mattwr18
d375ebe7d9 Write test/refactor tests/resolvers/middleware
- write tests for userMiddleware
- checks the functionality of nodes/locations middleware
- refactor to not allow users to update to remove their name
  debatable whether we want that or not, but we do not allow users to
create accounts with no name, so we should be consistent, before we were
using neode to validate this, but we have are removing neode from
production code, so we must validate ourselves
- collate UpdateUser mutations to one
2019-12-12 18:14:47 +01:00
mattwr18
3e15ecdfa2 Refactor tests, extract validation to middleware 2019-12-12 14:25:28 +01:00
mattwr18
c871ec2632 Refactor validationMiddleware 2019-12-11 16:29:20 +01:00
mattwr18
cc0a33ec7d Use transaction function in isUniqueFor 2019-12-11 13:26:18 +01:00
mattwr18
73a5b394d6 Refactor isAuthor to use transaction function 2019-12-11 12:56:49 +01:00
mattwr18
79d23cc6de Merge branch 'master' of github.com:Human-Connection/Human-Connection into 2412-favor-transaction-function 2019-12-11 10:56:42 +01:00
Moriz Wahl
72e4d0abbc Basic Search Is Working For Users And Posts
The story of SearchInput.vue throws errors because of line 81, dateTime. What must be included to fix this?
The search results shown by the frontend are sometimes differnt from the response of the backend. It shows no results found though there are results incoming.
Tests are not implemented yet.
2019-12-10 10:36:08 +01:00
Moriz Wahl
77cdc34bfd backend still not working 2019-12-10 10:36:08 +01:00
Moriz Wahl
4264bb2af7 Trying to get the backend working 2019-12-10 10:36:08 +01:00
mattwr18
0e757cf94f Refactor to fix test, DRY out code 2019-12-06 17:48:14 +01:00
mattwr18
da150e0b27 Refactor notificationsMiddleware
- Use transaction functions
- extract validations into validationsMiddleware
- break notifyUsers into notifyUsersOfMention/notifyUsersOfComment
2019-12-06 14:48:32 +01:00
mattwr18
132951c525 Update handleContentDataOfPost to return post
- fix tests, functionality
2019-12-06 13:03:05 +01:00
Robert Schäfer
df22f2a5b4
Update backend/src/middleware/hashtags/hashtagsMiddleware.spec.js
Co-Authored-By: mattwr18 <mattwr18@gmail.com>
2019-12-06 12:34:24 +01:00
roschaefer
8f0ce19f09 Implement getDriver() and getNeode() the same way
I want to introduce `neode` and `neo4j-graphql-js` to my students and
saw this.
2019-12-05 21:00:24 +01:00
Robert Schäfer
b7be0f100b
Merge pull request #2424 from Human-Connection/update-test-description
Update test description
2019-12-05 20:55:59 +01:00
mattwr18
1827889582 Refactor notificationsMiddleware/locations
- start refactoring
- locations does not have any automated tests, which makes it more
difficult to refactor and have confidence that functionality will not be
broken
- notificationsMiddleware in progress
2019-12-05 20:42:45 +01:00
mattwr18
de64f1dd4a Refactor hashtagsMiddleware updateHashtagsOfPost
- Favor transaction functions for production environment
- Use one transaction instead of two as we can use optional match to
delete potential previous relationships
2019-12-05 13:43:55 +01:00
mattwr18
5117a97b1c Use readTransaction for non-write transactions 2019-12-05 13:17:26 +01:00
mattwr18
ace7818eac Update test description
- the test clearly tests that the createdAt doesn't change, we changed
the implementation, but didn't change the test description
2019-12-04 19:56:49 +01:00
mattwr18
42540eb909 Remove dead code, code creep 2019-12-04 19:55:48 +01:00
mattwr18
085b59bf4d Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1710-list-and-protocol-moderation 2019-12-04 13:23:06 +01:00
mattwr18
b3640659bb Add missing unit tests/refactor code
- Refactoring without tests makes it riskier
- Move some tests from resolver to middleware unit tests to live closer
to where the validation happens, remove duplicate tests
- DRY out code
2019-12-03 17:59:59 +01:00
roschaefer
132c12a7d3 Close neo4j driver sessions
We had this error in our neo4j pod recently:

```
2019-12-02 08:29:42.680+0000 ERROR Unable to schedule bolt session 'bolt-1018230' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
2019-12-02 08:29:42.680+0000 ERROR Unable to schedule bolt session 'bolt-1018224' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
2019-12-02 08:29:42.681+0000 ERROR Unable to schedule bolt session 'bolt-1018352' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
2019-12-02 08:29:42.682+0000 ERROR Unable to schedule bolt session 'bolt-1018243' for execution since there are no available threads to serve it at the moment. You can retry at a later time or consider increasing max thread pool size for bolt connector(s).
```

Apparently the default is 400 threads. So we must have a leak somewhere.
2019-12-02 18:12:11 +01:00
mattwr18
c05065f684 Refactor backend
- update script
- use readTxResult for validateReview
- favor more verbose variables
- do not set review.closed as we close the report and the rule at the
moment is set to 'latestReviewUpdatedAtRules' rule, so it's clear the
last review must have been the one that closed the report
2019-12-02 13:38:35 +01:00
mattwr18
7441dbf28c Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1710-list-and-protocol-moderation 2019-11-29 20:43:09 +01:00
mattwr18
f5545e3976 Fix middleware/spec 2019-11-29 19:45:34 +01:00
mattwr18
5d63dda6ee Refactor validateReport/Review
- Don't throw error if a report already exists since we use MERGE and
that does not create a new resource if it exists. That is tested at the
neo4j(database) level.
- We also have a test to make in reports.spec.js that no duplicate is
created to ensure we didn't make some error on our part.
- Fix some faulty logic in validateReview
2019-11-29 18:47:41 +01:00
mattwr18
c0d9fe5257 Test validationMiddleware validateReport/Review 2019-11-29 18:43:24 +01:00
mattwr18
2e54a43417
Merge pull request #2333 from Human-Connection/remove_obsolete_invitation_code
refactor: Remove obsolete code about invitation codes
2019-11-29 13:45:46 +01:00
roschaefer
76414dbec7 Fix lint 2019-11-28 18:07:00 +01:00
mattwr18
9990fe2cb2 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1710-list-and-protocol-moderation 2019-11-28 16:14:23 +01:00
mattwr18
6865709210
Merge pull request #2334 from Human-Connection/refactor_is_author_permission
refactor: Close session in isAuthor permission
2019-11-27 18:13:48 +01:00
mattwr18
e6fdb70a07 Merge branch 'master' of github.com:Human-Connection/Human-Connection into 1710-list-and-protocol-moderation 2019-11-27 18:09:24 +01:00
mattwr18
2f249a73c5 Rename REPORTED Claim to FILED Report 2019-11-26 15:35:48 +01:00
mattwr18
f36ae9a63c Refactor softDeleteMiddleware spec
- We have been using http requests in our set up in this file, which can
be avoided. We are not trying to test that the report/review workflow
works properly here, we are trying to test that if a resource was
reported, and then disabled, some conditions are true. Certainly, we
will have tests that check that the report, review workflow works as
expected.
2019-11-25 17:05:04 +01:00
Wolfgang Huß
99af6cbf8a Implement displaying multiple claims in the frontend 2019-11-22 18:40:51 +01:00