]> cat aescling's git repositories - mastodon.git/commit
Add buttons to block and unblock domain (#3127)
authorEugen Rochko <eugen@zeonfederated.com>
Fri, 19 May 2017 19:05:32 +0000 (21:05 +0200)
committerGitHub <noreply@github.com>
Fri, 19 May 2017 19:05:32 +0000 (21:05 +0200)
commitf1ab70649b00e717a00ac295d42ff99160aa713b
tree283147302494a44af53409ca71736ffc1bd6eda1
parent1548695c8300618d44efa8785f5c6eb7b3a86917
Add buttons to block and unblock domain (#3127)

* Add buttons to block and unblock domain

* Relationship API now returns "domain_blocking" status for accounts,
rename "block entire domain" to "hide entire domain", fix unblocking domain,
do not block notifications from domain-blocked-but-followed people, do
not send Salmons to domain blocked users

* Add test

* Personal domain blocks shouldn't affect Salmon after all, since in this
direction of communication the control is very thin when it comes to
public stuff. Best stay consistent and not affect federation in this way

* Ignore followers and follow request from domain blocked folks,
ensure account domain blocks are not created for empty domain,
and avoid duplicates in validation

* Purge followers when blocking domain (without soft-blocks, since they
are useless here)

* Add tests, fix local timeline being empty when having any domain blocks
46 files changed:
app/controllers/api/v1/accounts_controller.rb
app/controllers/api/v1/domain_blocks_controller.rb
app/javascript/mastodon/actions/domain_blocks.js [new file with mode: 0644]
app/javascript/mastodon/features/account/components/action_bar.js
app/javascript/mastodon/features/account_timeline/components/header.js
app/javascript/mastodon/features/account_timeline/containers/header_container.js
app/javascript/mastodon/locales/ar.json
app/javascript/mastodon/locales/bg.json
app/javascript/mastodon/locales/ca.json
app/javascript/mastodon/locales/de.json
app/javascript/mastodon/locales/defaultMessages.json
app/javascript/mastodon/locales/en.json
app/javascript/mastodon/locales/eo.json
app/javascript/mastodon/locales/es.json
app/javascript/mastodon/locales/fa.json
app/javascript/mastodon/locales/fi.json
app/javascript/mastodon/locales/fr.json
app/javascript/mastodon/locales/he.json
app/javascript/mastodon/locales/hr.json
app/javascript/mastodon/locales/hu.json
app/javascript/mastodon/locales/id.json
app/javascript/mastodon/locales/io.json
app/javascript/mastodon/locales/it.json
app/javascript/mastodon/locales/ja.json
app/javascript/mastodon/locales/nl.json
app/javascript/mastodon/locales/no.json
app/javascript/mastodon/locales/oc.json
app/javascript/mastodon/locales/pl.json
app/javascript/mastodon/locales/pt-BR.json
app/javascript/mastodon/locales/pt.json
app/javascript/mastodon/locales/ru.json
app/javascript/mastodon/locales/tr.json
app/javascript/mastodon/locales/uk.json
app/javascript/mastodon/locales/zh-CN.json
app/javascript/mastodon/locales/zh-HK.json
app/javascript/mastodon/reducers/relationships.js
app/models/account_domain_block.rb
app/models/concerns/account_interactions.rb
app/models/status.rb
app/services/block_domain_from_account_service.rb [new file with mode: 0644]
app/services/notify_service.rb
app/services/process_interaction_service.rb
app/services/send_interaction_service.rb
app/views/api/v1/accounts/relationship.rabl
spec/services/block_domain_from_account_service_spec.rb [new file with mode: 0644]
spec/services/notify_service_spec.rb