Commit Graph

36 Commits

Author SHA1 Message Date
Sam Saffron
30990006a9 DEV: enable frozen string literal on all files
This reduces chances of errors where consumers of strings mutate inputs
and reduces memory usage of the app.

Test suite passes now, but there may be some stuff left, so we will run
a few sites on a branch prior to merging
2019-05-13 09:31:32 +08:00
Guo Xiang Tan
152238b4cf DEV: Prefer public_send over send. 2019-05-07 09:33:21 +08:00
Bianca Nenciu
e49bcebb35 FIX: Validate poll arguments. (#6740)
* FIX: Validate number poll.
* FEATURE: Poll's min can be 0.
* FIX: Fix URL to user profile.
2018-12-31 10:48:30 +01:00
Bianca Nenciu
c928386c3e FIX: Copy old status to new poll. (#6788) 2018-12-19 11:29:13 +01:00
Régis Hanol
aea2d8bbeb FIX: properly secure poll message bus
Co-authored-by: Sam <sam.saffron@gmail.com>
2018-12-05 21:27:49 +01:00
Régis Hanol
4459665dee
REFACTOR: use tables instead of custom fields for polls (#6359)
Co-authored-by: Guo Xiang Tan <tgx_world@hotmail.com>
2018-11-19 14:50:00 +01:00
Régis Hanol
f05ca02f13 FIX: unable to add new poll to post with a public poll 2018-06-05 15:49:21 +02:00
Régis Hanol
9ff2d540ba fix the build 2018-05-03 10:32:01 +02:00
Régis Hanol
ba14c80b9c FEATURE: automatically close a poll on a given date and time 2018-05-03 02:12:19 +02:00
Guo Xiang Tan
51657d3426 Allow polls to be added/renamed/removed as long as user can edit posts. 2018-03-14 11:00:57 +08:00
Guo Xiang Tan
b77553a635 FIX: Staff should be able to updates polls when edit window expires.
https://meta.discourse.org/t/moderators-cannot-remove-polls-from-posts/81804/7?u=tgxworld
2018-03-08 16:45:06 +08:00
Guo Xiang Tan
d02e2cbcca PERF: Avoid fetching a bunch of ids in polls updater. 2018-03-07 14:18:56 +08:00
Gerhard Schlager
7a2183e8ab FEATURE: rake task for merging users 2018-03-01 12:28:12 +01:00
Joffrey JAFFEUX
316d814130
FIX: staff should always be allowed to create polls if they are enabled 2017-12-05 00:03:56 +01:00
Joffrey JAFFEUX
76bc173d47
FEATURE: adds poll_allow_staff_to_create
This setting will bypass poll_minimum_trust_level_to_create if set to true
2017-12-04 18:12:17 +01:00
Joffrey JAFFEUX
63bab32816 FEATURE: introduces minimum trust level for polls (#5391)
* FEATURE: introduces minimum trust level for polls

This commit makes `poll_enabled` less misleading and introduces `poll_minimum_trust_level_to_create`. If poll are enabled they will always be cooked, and if you have the required trust level you can create polls. As a side effect, it also fixes a bug where rebaking a post created by staff member when `poll_enabled=false` would end up not cooking it.

It also adds more tests to ensure settings are respected.

* admins should be whitelisted

* checks for admin in post validation

* test for >= instead of == trust level
2017-12-04 14:47:11 +01:00
Sam
43c0111ca1 FIX: multichoice poll with more than 25 votes
In the past we would double up on avatars due to incorrect logic for
handling offset
2017-08-14 15:33:59 -04:00
Guo Xiang Tan
5012d46cbd Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
Sam Saffron
045a2abcec FEATURE: remove the timecop gem
We should only have one way of mocking time, misuse of timecop
was causing build stability issues
2017-07-24 12:11:10 -04:00
Guo Xiang Tan
e80a1dfa43 FIX: Post with multiple polls containing votes can not be edited.
https://meta.discourse.org/t/500-internal-server-error-when-editing-specific-poll-in-a-post-with-votes-editing-other-polls-works-fine/59684
2017-07-14 12:33:22 +09:00
Guo Xiang Tan
8c4dfdfa40 FIX: Votes lost when editing a poll option with votes. 2017-01-16 22:51:57 +08:00
Guo Xiang Tan
8213da20f2 Extract polls edit window to a site settings. 2016-08-10 15:17:16 +08:00
Guo Xiang Tan
c3cab98998 FEATURE: Admins should be able to create polls even when plugin is disabled. 2016-07-13 18:05:19 +08:00
Guo Xiang Tan
f53494f102 FIX: Polls with votes cannot be made public. 2016-06-09 12:10:27 +08:00
Guo Xiang Tan
8ecde35df3
FEATURE: Add public type to polls. 2016-06-08 16:19:13 +08:00
Guo Xiang Tan
5f92de8ede
Remove unnecessary for loop. 2016-06-07 16:50:45 +08:00
Guo Xiang Tan
2f14a81fa4
FIX: min setting should be greater than 0 for multiple type polls. 2016-06-07 10:48:06 +08:00
Guo Xiang Tan
a849fae5ee Add specs for polls (#4246)
* Extract validation logic into a service object.

* Extract logic for updating polls custom fields into a service object.

* Use `strip_heredoc` instead.

* FIX: Polls do not update when configuration has been changed.
2016-06-06 17:04:56 +02:00
Régis Hanol
d889f05480 changed default 'poll maximum options' to 20 2015-05-19 14:33:27 +02:00
Régis Hanol
43755a6fab keep closed status when migrating poll to new style 2015-05-13 22:30:27 +02:00
Régis Hanol
06643fb625 add support for all types of unordered lists in migrate_old_polls 2015-05-13 22:10:02 +02:00
Régis Hanol
4df868a420 FIX: update 'migrate_old_polls' rake task to support more cases
FIX: support list that uses double newlines
FIX: support list that uses spaces before the '-'
FIX: don't break lamentably when a poll wasn't created
2015-05-13 19:56:09 +02:00
Régis Hanol
0ded6434df FIX: migrate_old_polls should properly identify olds polls at the end of the post 2015-05-08 19:17:09 +02:00
Régis Hanol
9106331d4f FIX: 'migrate_old_poll' rake task to support options with HTML 2015-05-01 15:53:02 +02:00
Régis Hanol
e9b70ac9cb FIX: migrate old polls rake task 2015-04-30 17:08:44 +02:00
Régis Hanol
202b442b86 FEATURE: new 'poll:migrate_old_polls' rake task 2015-04-29 23:34:40 +02:00