This website works better with JavaScript.
Home
Explore
Help
Sign In
jyt94
/
closedSocialMastodon
forked from
closed-social/mastodon
Watch
1
Star
0
Fork
0
Code
Issues
0
Pull Requests
0
Projects
0
Releases
0
Wiki
Activity
Browse Source
Exclude blocked users from follow suggestions, fix tests
closed-social-v3
Eugen Rochko
8 years ago
parent
aa9d48343d
commit
67b35a601a
4 changed files
with
10 additions
and
3 deletions
Split View
Diff Options
Show Stats
Download Patch File
Download Diff File
+4
-1
.travis.yml
+4
-0
app/assets/javascripts/components/reducers/timelines.jsx
+1
-1
app/models/follow_suggestion.rb
+1
-1
spec/rails_helper.rb
+ 4
- 1
.travis.yml
View File
@ -6,6 +6,8 @@ env:
-
LOCAL_DOMAIN=cb6e6126.ngrok.io
-
LOCAL_HTTPS=true
-
RAILS_ENV=test
-
NEO4J_HOST=localhost
-
NEO4J_PORT=7575
addons:
postgresql
:
9.4
@ -20,8 +22,9 @@ bundler_args: --without development production --retry=3 --jobs=3
install:
-
npm install -g npm@3
-
npm install
-
npm install
-g yarn
-
bundle install
-
yarn install
before_script:
-
bundle exec rails db:create db:migrate
+ 4
- 0
app/assets/javascripts/components/reducers/timelines.jsx
View File
@ -164,6 +164,10 @@ function normalizeAccount(state, account, relationship) {
}
;
function
normalizeRelationship
(
state
,
relationship
)
{
if
(
state
.
get
(
'suggestions'
)
.
includes
(
relationship
.
get
(
'id'
)
)
&&
(
relationship
.
get
(
'following'
)
||
relationship
.
get
(
'blocking'
)
)
)
{
state
=
state
.
update
(
'suggestions'
,
list
=>
list
.
filterNot
(
id
=>
id
===
relationship
.
get
(
'id'
)
)
)
;
}
return
state
.
setIn
(
[
'relationships'
,
relationship
.
get
(
'id'
)
]
,
relationship
)
;
}
;
+ 1
- 1
app/models/follow_suggestion.rb
View File
@ -2,7 +2,7 @@ class FollowSuggestion
def
self
.
get
(
for_account_id
,
limit
=
6
)
neo
=
Neography
::
Rest
.
new
account_ids
=
neo
.
execute_query
(
'START a=node:account_index(Account={id}) MATCH (a)-[:follows]->(b)-[:follows]->(c) WHERE a <> c AND NOT (a)-[:follows]->(c) RETURN DISTINCT c.account_id'
,
id
:
for_account_id
)
Account
.
where
(
id
:
account_ids
[
'data'
]
.
map
(
&
:first
)
)
.
limit
(
limit
)
unless
account_ids
.
empty?
Account
.
where
(
id
:
account_ids
[
'data'
]
.
map
(
&
:first
)
-
Block
.
where
(
account_id
:
for_account_id
)
.
pluck
(
:target_account_id
)
)
.
limit
(
limit
)
unless
account_ids
.
empty?
rescue
Neography
::
NeographyError
,
Excon
::
Error
::
Socket
=
>
e
Rails
.
logger
.
error
e
[
]
+ 1
- 1
spec/rails_helper.rb
View File
@ -9,7 +9,7 @@ require 'webmock/rspec'
require
'paperclip/matchers'
ActiveRecord
::
Migration
.
maintain_test_schema!
WebMock
.
disable_net_connect!
WebMock
.
disable_net_connect!
(
allow
:
'localhost:7575'
)
Sidekiq
::
Testing
.
inline!
RSpec
.
configure
do
|
config
|
Write
Preview
Loading…
Cancel
Save