Commit graph

6172 commits

Author SHA1 Message Date
ThibG 45e4c90a23
Merge pull request #953 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2019-03-11 13:23:54 +01:00
Thibaut Girka 9c620fc5c8 [Glitch] Add support for poll ending notifications
Port front-end parts of 3a92885a86 to glitch-soc
2019-03-11 13:08:21 +01:00
Thibaut Girka 7d026aa079 Do not leak instance-local polls to remote followers 2019-03-11 13:08:20 +01:00
ash lea f534f4869e add local setting to auto reveal media behind cw 2019-03-11 12:14:45 +01:00
Kirishima21 1bf035fb67 fix poll fotter layout
画面の幅が充分でないときに
表示外にまでボタンが拡大されてしまわないように修正。
2019-03-11 12:09:30 +01:00
Thibaut Girka 89bee860cd Merge branch 'master' into glitch-soc/merge-upstream
Conflicts:
- app/services/post_status_service.rb
  Small conflict due to handling of instance-local toots.
  A subsequent change is required to ensure instance-local polls are not leaked
  through Update.
2019-03-11 11:23:50 +01:00
ThibG 5506b9406d Avoid race conditions when creating backups (#10234)
Under load, multiple backups for a single user could be planned, which
is very expensive.
2019-03-11 00:50:31 +01:00
ThibG 3a92885a86 Support pushing and receiving updates to poll tallies (#10209)
* Process incoming poll tallies update

* Send Update on poll vote

* Do not send Updates for a poll more often than once every 3 minutes

* Include voters in people to notify of results update

* Schedule closing poll worker on poll creation

* Add new notification type for ending polls

* Add front-end support for ended poll notifications

* Fix UpdatePollSerializer

* Fix Updates not being triggered by local votes

* Fix tests failure

* Fix web push notifications for closing polls

* Minor cleanup

* Notify voters of both remote and local polls when those close

* Fix delivery of poll updates to mentioned accounts and voters
2019-03-11 00:49:31 +01:00
Thibaut Girka dfe7322922 Merge branch 'master' into glitch-soc/merge-upstream 2019-03-10 16:48:44 +01:00
ThibG c11dff5049 Reject existing Follows when suspending a remote account (#10230)
* Reject existing Follows when suspending a remote account

Partial fix to #10229

* Add tests
2019-03-10 16:18:58 +01:00
Aditoo17 6c0a96912a Change joinmastodon.org to joinmastodon.org/#getting-started for sign up on another server (#10224) 2019-03-09 17:07:59 +01:00
ThibG 42cc93e892
Merge pull request #947 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
2019-03-08 20:43:51 +01:00
Thibaut Girka 93daa97fc3 Fix min/max duration poll limits being inverted 2019-03-08 20:43:18 +01:00
Thibaut Girka 674fe32f97 Merge branch 'master' into glitch-soc/merge-upstream 2019-03-08 20:15:57 +01:00
ThibG 3f4a6d44fe Fix setting up fields of a previously suspended account (#10222)
Fix #10177 for real
2019-03-08 19:59:08 +01:00
Eugen Rochko ca45198ccb [Glitch] Fix NaN in Poll component
Port 75cb93676b to glitch-soc
2019-03-08 01:01:19 +01:00
Eugen Rochko 6fe48dd050 [Glitch] Fix public timelines being broken by new toots when they are not mounted
Port be1c634b2b to glitch-soc
2019-03-08 01:00:14 +01:00
Thibaut Girka 5528719bc9 Merge branch 'master' into glitch-soc/merge-upstream 2019-03-08 00:57:13 +01:00
ThibG 3aaac4f134 Do not allow adding votes to expired polls (#10214)
* Do not allow adding votes to expired polls

* Only validate expires_at on create
2019-03-08 00:54:50 +01:00
Eugen Rochko 054bbb3da2
Immediately display poll results to poll author (#10187)
* Immediately display poll results to poll author

* Refactor Poll#loaded_options and add Poll#voted? to improve DRYness
2019-03-07 22:53:47 +01:00
Eugen Rochko 75cb93676b
Fix NaN in Poll component (#10213) 2019-03-07 22:18:05 +01:00
Eugen Rochko be1c634b2b
Fix public timelines being broken by new toots when they are not mounted (#10131) 2019-03-07 22:17:52 +01:00
ThibG 09c042aa10 Handle StaleObjectError when retrieving polls (#10208) 2019-03-07 15:52:38 +01:00
Thibaut Girka 9c5e7805cc Merge branch 'master' into glitch-soc/merge-upstream 2019-03-07 13:24:30 +01:00
marcin mikołajczak 44475bbc9c i18n:🇵🇱 (#10199)
Signed-off-by: Marcin Mikołajczak <me@m4sk.in>
2019-03-07 02:52:43 +01:00
ThibG 34f261e6af Avoid unnecessarily fetching the replies collection when it is empty (#10201) 2019-03-07 01:50:37 +01:00
rinsuki f44091d653 Fix #10202 (#10203) 2019-03-07 01:49:42 +01:00
Thibaut Girka 84c807a0dc Allow setting whether this is a single choice poll or multiple choices one 2019-03-06 23:56:53 +01:00
Thibaut Girka cb6e351f4d Disable file upload when there is a poll 2019-03-06 23:56:53 +01:00
Thibaut Girka 235be596bc Use server-provided poll limits instead of hardcoded ones
Also does not enable polls if no limits are provided by the server
2019-03-06 23:56:53 +01:00
Thibaut Girka 3b1390dc78 Serialize poll limits in instance serializer and initial state 2019-03-06 23:56:53 +01:00
Thibaut Girka 8fe86cebaa [Glitch] Port polls creation UI from upstream 2019-03-06 23:56:53 +01:00
ThibG 6e295beab2 [Glitch] Disable the underlying button element when an ItemButton is disabled
Port b3668a79ec to glitch-soc
2019-03-06 22:40:17 +01:00
Thibaut Girka cf4fd8bcfe Merge branch 'master' into glitch-soc/merge-upstream 2019-03-06 22:39:22 +01:00
ThibG 96f905f409 Add optimistic lock to avoid race conditions when handling votes (#10196)
* Add optimistic lock to avoid race conditions when handling votes

* Force-reload polls when getting `ActiveRecord::StaleObjectError`
2019-03-06 19:53:57 +01:00
ThibG b3668a79ec Disable the underlying button element when an ItemButton is disabled (#10194)
Fixes #10191
2019-03-06 15:10:32 +01:00
ThibG cb217444b8 Disable file upload when there is a poll (#10195) 2019-03-06 15:09:18 +01:00
Thibaut Girka 1bb23100b1 Add an icon to highlight polls behind a Content Warning 2019-03-06 13:01:27 +01:00
Eugen Rochko 94a0149ff3 Fix poll options not rendering text after vote/refresh
Port fd128b9c7a to glitch-soc
2019-03-06 11:44:27 +01:00
Eugen Rochko 94f1a751bf Avoid line breaks in poll options
Port 57643557b6 to glitch-soc
2019-03-06 11:43:14 +01:00
Eugen Rochko 7f32d675b0 Render unicode emoji in polls using emoji pack
Port 4407f07014 to glitch-soc
2019-03-06 11:42:25 +01:00
Thibaut Girka 4806232997 Merge branch 'master' into glitch-soc/merge-upstream 2019-03-06 11:29:06 +01:00
Eugen Rochko fd128b9c7a
Fix poll options not rendering text after vote/refresh (#10189)
* Fix poll options not rendering text after vote/refresh

* Fix poll options not showing up on public pages

* Fix code style issue
2019-03-06 05:35:52 +01:00
Eugen Rochko 57643557b6
Avoid line breaks in poll options (#10188) 2019-03-06 04:54:32 +01:00
Eugen Rochko 5996be994d
Fix poll validation issues (#10186)
- Fix missing interpolation argument in PollValidator
- Fix PollValidator rejecting exact allowed min/max durations
2019-03-06 04:54:11 +01:00
Eugen Rochko d97cbb0da6
Add UI for creating polls (#10184)
* Add actions and reducers for polls

* Add poll button

* Disable media upload if poll enabled

* Add poll form

* Make delete & redraft work with polls
2019-03-06 04:53:37 +01:00
Eugen Rochko 4407f07014
Render unicode emoji in polls using emoji pack (#10185) 2019-03-06 03:57:46 +01:00
Thibaut Girka e80fabfd84 Fix toots opening in dynamic column when trying to interact with them
This fixes inline preview cards and polls, preventing them from opening
the toot in detailed view when clicking on an interactive element.
2019-03-06 00:20:43 +01:00
Thibaut Girka f108c6a042 Merge branch 'master' into glitch-soc/merge-upstream 2019-03-06 00:03:46 +01:00
ThibG efd0fb8088 Fix newlines in OStatus and RSS serializations (#10183) 2019-03-05 23:58:58 +01:00