Commit Graph

664 Commits

Author SHA1 Message Date
330102fd20 FEATURE: Show votes in an "on voted" poll to the creator
This required properly plumbing the guardian into the serializer.

Notably, the default state in the client was not changed - if you haven't voted in
the poll, you need to click the button to view the results instead of the results
being immediately visible on page load.

Implements https://meta.discourse.org/t/-/138108
2020-03-20 13:36:42 -07:00
5e4cf244a5 FIX: Show time input in poll builder (#9128) 2020-03-16 13:25:45 +01:00
29b35aa64c DEV: Improve flaky time-sensitive specs (#9141) 2020-03-10 22:13:17 +01:00
48ba65f406 DEV: Clean up Ember imports (#8979)
Includes:
* Import `computed` helpers
* Import `@ember/application`
* Import `isBlank` from `@ember/utils`
* Import `A` from `@ember/array`
* Import `EmberArray` from `@ember/array`
* Import `ArrayProxy` from `@ember/array/proxy`
* Import `warn` from `@ember/debug`
* Import `EmberObject` from `@ember/object`
* Import `Application` from `@ember/application`
* Import `EmberRouter` from `@ember/routing/router`
* Import `isPresent` from `@ember/utils`
* Import `computed` from `@ember/object`
* Import `guidFor` from `@ember/object`
* Import `isArray` from `@ember/array`
* Import `TextField` from `@ember/component`
* Import `TextArea` from `@ember/component`
* Import `Promise` from `rsvp`
* Import `Evented` from `@ember/object/evented`
* Replace deprecated `ember-addons/ember-computed-decorators` imports
2020-03-06 23:49:28 +01:00
763a065df9 FIX: Correctly format select options for group poll by fields (#9131) 2020-03-06 12:58:59 -06:00
4b70719a48 Update translations 2020-03-05 12:45:42 -05:00
c62d5b139b FIX: Allow users to create polls in PMs with non human users (#9055) 2020-03-02 14:29:40 -05:00
a4fc6ccc12 UX: prevents jumpyness when displaying poll voters (#9054) 2020-02-27 11:09:54 +01:00
b0675075f7 Update translations 2020-02-25 10:29:14 -05:00
59db2811b0 FIX: Disable poll options if user groups do not allow them (#8987) 2020-02-18 12:13:19 +02:00
72b6f908f4 UX: minor tweaks to poll builder UI (#8985) 2020-02-17 11:02:44 -05:00
82b307cd52 FIX: Use correct translation string 2020-02-17 13:49:43 +02:00
2c7d32e783 FIX: prevents everyone group to show as group option for polls (#8957) 2020-02-14 14:11:34 +01:00
637535fc6b Update translations 2020-02-13 15:00:16 -05:00
0772a4338b FIX: Remove pie draw animation (#8940) 2020-02-12 07:09:40 -08:00
daaa0a657f FIX: Render HTML for pie chart options (#8912) 2020-02-11 10:02:54 -06:00
8ca9ad887d FIX: replaces fake null value by clearable option (#8875) 2020-02-06 08:30:26 +01:00
5d97286fa7 FEATURE: Allow single option polls (#8853) 2020-02-05 08:03:27 -06:00
0431942f3d DEV: select-kit 2 (#7998)
This new iteration of select-kit focuses on following best principales and disallowing mutations inside select-kit components. A best effort has been made to avoid breaking changes, however if you content was a flat array, eg: ["foo", "bar"] You will need to set valueProperty=null and nameProperty=null on the component.

Also almost every component should have an `onChange` handler now to decide what to do with the updated data. **select-kit will not mutate your data by itself anymore**
2020-02-03 14:22:14 +01:00
07222af7ab FEATURE: Add 'groups' option to polls (#8469)
This options can be used to restrict polls to certain groups.
2020-01-28 14:30:04 +02:00
2dd1ff79b4 Update translations 2020-01-20 11:00:44 -05:00
fe588cc7f8 DEV: Fix function prototype deprecations (#8681)
* DEV: Fix the function prototype observers deprecation

DEPRECATION: Function prototype extensions have been deprecated, please migrate from function(){}.observes('foo') to observer('foo', function() {}). [deprecation id: function-prototype-extensions.observes] See https://deprecations.emberjs.com/v3.x/#toc_function-prototype-extensions-observes for more details.

* DEV: Fix the function prototype event listeners deprecation

DEPRECATION: Function prototype extensions have been deprecated, please migrate from function(){}.on('foo') to on('foo', function() {}). [deprecation id: function-prototype-extensions.on] See https://deprecations.emberjs.com/v3.x/#toc_function-prototype-extensions-on for more details.

* DEV: Simplify `default as` imports

Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com>
2020-01-16 18:56:53 +01:00
9e3fc1111d FIX: Add a blank poll options validation (#8652)
Before, saving a post with a blank poll option resulted in error 500.
2020-01-03 15:09:36 +01:00
8c2e27790c FIX: everyone can see poll results when on_vote and closed (#8613)
The bug was mentioned here: https://meta.discourse.org/t/poll-name/136436

I added specs to cover existing behaviour and refactored can_see_results method.

Guard condition should apply only if the poll result setting is set to `staff_only`.

In other cases, user can see results when the poll result setting is set to `always` or user voted or poll is closed.
2019-12-24 08:04:35 +11:00
91b290c784 Update translations 2019-12-19 12:31:52 -05:00
44612f900e FIX: Remove 'staff_only' results option for non-staff (#8565) 2019-12-17 13:43:15 -08:00
dfb9fa3b98 Update translations 2019-12-10 13:10:55 +01:00
dbee72e92b FIX: Export poll UI should only show for admins 2019-12-05 17:03:06 -03:00
50b98a47ac Update translations 2019-12-05 11:20:52 -05:00
118fef2353 FIX: Hide pie legend when results are grouped (#8445) 2019-12-02 13:59:52 -06:00
87a298a59b FIX: Poll pie container was too large (#8444) 2019-12-02 11:51:06 -06:00
dd8fe1a9e7 DEV: Update annotations 2019-11-29 15:49:08 +00:00
0807751390 REFACTOR: poll-pie-chart widget (#8415)
This commit mostly get rid of the later() call and encapsulate all pie chart display logic inside discourse-poll-pie-canvas widget instead of sharing it between discourse-poll-pie-chart and discourse-poll-pie-canvas
2019-11-27 00:10:43 +01:00
a3157f0e38 FIX: The build; ran prettier (#8412) 2019-11-25 12:12:44 -06:00
b92a8131c0 FEATURE: Pie chart option for poll results (#8352) 2019-11-25 11:51:01 -06:00
c75ebfee57 UX: Rename 'Hide results' to 'Show vote' in polls (#8403)
For various reasons, users may want to change their response to a poll.
Currently they have permission to do so, however it is hidden behind the 'Hide
results' button. Since what this button does is take the user back to the vote
panel, it seems more appropriate to name it 'Show vote', where it becomes
obvious that it can be modified and re-submitted.

As discussed here [1], there are mulitple users, myself included, who assumed
that editing a misclick response was impossible. This improves the label to make
it more descriptive of the action actually being taken.

[1] https://meta.discourse.org/t/ability-to-remove-my-choice-in-a-poll/53642/6
2019-11-25 12:26:19 +01:00
fd0025a735 FEATURE: Add export poll button (#8370)
This PR aims to make poll results easily exportable to staff in a CSV format, so they can be analyzed in external software.

It also makes the export data easily customizable by allowing users to leverage any data explorer query to generate the report. By default, we use a query that ships with data explorer, but user can change the ID in settings or use 0 to disable this feature.

One potential upgrade is using the recent work that allows arbitrary group to run data explorer and allow all the groups with access to the configured query to also export polls, but that can be added later.

Co-Authored-By: Joffrey JAFFEUX <j.jaffeux@gmail.com>
2019-11-22 16:06:39 -03:00
20f5a062f4 Fix Prettier in poll plugin 2019-11-15 11:01:22 -05:00
f72730703a Update translations 2019-11-14 15:41:42 +01:00
f518065654 FIX: computed is part of @ember/object not @ember/object/computed 2019-11-13 11:58:09 -05:00
5ff84be8cc FIX: do not strip nil string 2019-11-13 16:58:14 +05:30
5d4b240453 DEV: Provide radix argument to parseInt (#8281)
* DEV: Provide radix 10 argument to parseInt

* DEV: Provide radix 16 argument to parseInt

* DEV: Remove unnecessary parseInt calls

* Fix year formatting

parseInt was used here to convert decimals to ints
2019-11-12 10:47:42 +01:00
e39d89ecd9 REFACTOR: Remove InputValidation which was simply an Ember.Object 2019-11-11 15:48:56 -05:00
94a34af702 Update translations 2019-11-05 16:52:48 +01:00
690db4fd36 FIX: Show poll voters in Oneboxed posts. (#7768) 2019-10-24 14:00:25 +03:00
6287eccb35 REFACTOR: Remove Ember.Controller in favor of import 2019-10-23 13:06:54 -04:00
4338515a85 fix poll test 2019-10-16 21:53:37 -04:00
b005377d0a UX: add newline after closing poll tag for poll builder 2019-10-16 21:40:42 -04:00
3dfe9f3b8d Update translations 2019-10-08 12:25:24 +02:00
427d54b2b0 DEV: Upgrading Discourse to Zeitwerk (#8098)
Zeitwerk simplifies working with dependencies in dev and makes it easier reloading class chains. 

We no longer need to use Rails "require_dependency" anywhere and instead can just use standard 
Ruby patterns to require files.

This is a far reaching change and we expect some followups here.
2019-10-02 14:01:53 +10:00