diff options
author | ThibG <thib@sitedethib.com> | 2019-09-29 22:58:01 +0200 |
---|---|---|
committer | Eugen Rochko <eugen@zeonfederated.com> | 2019-09-29 22:58:01 +0200 |
commit | 3babf8464b0903b854ec16d355909444ef3ca0bc (patch) | |
tree | ec5e2bd9217ac2ef69925827ed9c3ca614c31826 /app/services/activitypub | |
parent | cfe2d1cc4a3c531741fd769241593ebbe03b6711 (diff) |
Add voters count support (#11917)
* Add voters count to polls * Add ActivityPub serialization and parsing of voters count * Add support for voters count in WebUI * Move incrementation of voters count out of redis lock * Reword “voters” to “people”
Diffstat (limited to 'app/services/activitypub')
-rw-r--r-- | app/services/activitypub/process_poll_service.rb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/app/services/activitypub/process_poll_service.rb b/app/services/activitypub/process_poll_service.rb index 2fbce65b9..cb4a0d460 100644 --- a/app/services/activitypub/process_poll_service.rb +++ b/app/services/activitypub/process_poll_service.rb @@ -28,6 +28,8 @@ class ActivityPub::ProcessPollService < BaseService end end + voters_count = @json['votersCount'] + latest_options = items.map { |item| item['name'].presence || item['content'] } # If for some reasons the options were changed, it invalidates all previous @@ -39,7 +41,8 @@ class ActivityPub::ProcessPollService < BaseService last_fetched_at: Time.now.utc, expires_at: expires_at, options: latest_options, - cached_tallies: items.map { |item| item.dig('replies', 'totalItems') || 0 } + cached_tallies: items.map { |item| item.dig('replies', 'totalItems') || 0 }, + voters_count: voters_count ) rescue ActiveRecord::StaleObjectError poll.reload |