Commit Graph

241 Commits

Author SHA1 Message Date
Mark VanLandingham
118fef2353
FIX: Hide pie legend when results are grouped (#8445) 2019-12-02 13:59:52 -06:00
Joffrey JAFFEUX
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
Mark VanLandingham
b92a8131c0
FEATURE: Pie chart option for poll results (#8352) 2019-11-25 11:51:01 -06:00
Rafael dos Santos Silva
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
Robin Ward
f518065654 FIX: computed is part of @ember/object not @ember/object/computed 2019-11-13 11:58:09 -05:00
Jarek Radosz
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
Robin Ward
e39d89ecd9 REFACTOR: Remove InputValidation which was simply an Ember.Object 2019-11-11 15:48:56 -05:00
Bianca Nenciu
690db4fd36
FIX: Show poll voters in Oneboxed posts. (#7768) 2019-10-24 14:00:25 +03:00
Robin Ward
6287eccb35 REFACTOR: Remove Ember.Controller in favor of import 2019-10-23 13:06:54 -04:00
Kris
b005377d0a UX: add newline after closing poll tag for poll builder 2019-10-16 21:40:42 -04:00
Sam Saffron
096f932ef2 Lint files
Both needed some prettier tlc
2019-08-16 13:06:51 +10:00
Blake Erickson
69498a58e9
FEATURE: Staff only poll results (#7984)
* FEATURE: Staff only poll results

These changes allow only staff to see the results of a poll.

Non-staff users will be shown a screen like this:

1b8bd76013.png

The "Votes are public" message has been removed from the info section,
and the button to show the votes has been replaced with a message
stating the results will only be shown to staff.

* Update PR based on feedback

* Update plugins/poll/app/models/poll.rb

make sure we return a boolean

Co-Authored-By: Régis Hanol <regis@hanol.fr>
2019-08-15 12:27:18 -06:00
Jarek Radosz
6a65e5312b FEATURE: Add a preview to the poll builder (#7988)
* FEATURE: Add a preview to the poll builder

* Use selectKit helper in the poll preview test

* Extract the mobile-specific poll builder form CSS
2019-08-13 09:49:40 -04:00
Penar Musaraj
78500fb770 UX: Improve layout of poll builder modal 2019-08-07 15:00:03 -04:00
Robin Ward
c322cccd53 FIX: Memory Leaks when decorating posts (#7749)
* Remove long-deprecated method

* FIX: Memory Leaks when decorating posts

Previously we'd keep creating mixins dynamically when decorating the
same class.

This code changes the API to recommend an `id` parameter for each
decorator which will avoid leaks. All plugins should be updated to
include this parameter, although if they don't in the meantime it'll
just mean a warning in the console (and a continued leak.)
2019-06-11 17:21:23 +02:00
Joffrey JAFFEUX
b98b994fe7
apply prettier on plugins (#7605) 2019-05-27 11:06:11 +02:00
Joffrey JAFFEUX
bfea922167
DEV: global s/this.get\("(\w+)"\)/this.$1 (#7592) 2019-05-27 10:15:39 +02:00
Joffrey JAFFEUX
1d784c7a18
FEATURE: adds support for dates in polls (#7450) 2019-04-29 10:01:19 +02:00
Bianca Nenciu
3cf922a58a FIX: URL to user profile in poll results. (#7315) 2019-04-03 22:17:05 +02:00
Kris
be5e889b1b UX: Poll style fix, button classes 2019-03-06 20:27:40 -05:00
Régis Hanol
0a708ba064 FIX: preload poll voters 2019-02-27 17:00:21 +01:00
Sam
79841cf7dd FEATURE: add missing autocomplete suppressions
Following 1f4ace4f add a couple more autocomplete suppressions (in polls
and invite ui)
2019-02-21 16:37:26 +11:00
Régis Hanol
cba6bdaf52 UX: use solid circle to indicate selected option in polls 2019-01-24 12:25:37 +01:00
Bianca Nenciu
d589c66f3e FIX: Fix URL to user profile. (#6881) 2019-01-23 18:27:21 +01:00
Joffrey JAFFEUX
80d42b4ea2
icons deprecations fixes (#6920) 2019-01-22 12:02:02 +01:00
Joffrey JAFFEUX
502b1316d0
DEV: s/this._super()/this._super(...arguments) (#6908) 2019-01-19 10:05:51 +01:00
Joffrey JAFFEUX
1a3655b787
DEV: s/Em/Ember (#6874) 2019-01-11 17:54:23 +01:00
Joffrey JAFFEUX
f9648de897
DEV: upgrades from Ember 2.13 to Ember 3.5.1 (#6808)
Co-Authored-By: Bianca Nenciu <nbianca@users.noreply.github.com>
Co-Authored-By: David Taylor <david@taylorhq.com>
2019-01-10 11:06:01 +01: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
285ff3bfbd FIX: Show every voter only once. (#6746)
Each voter is represented by an object and Set does not properly check for equality.
2018-12-11 14:00:28 +01:00
Penar Musaraj
03deda2147
Upgrade to FontAwesome 5 (take two) (#6673)
* Add missing icons to set

* Revert FA5 revert

 This reverts commit 42572ff

* use new SVG syntax in locales

* Noscript page changes (remove login button, center "powered by" footer text)

* Cast wider net for SVG icons in settings

- include any _icon setting for SVG registry (offers better support for plugin settings)

- let themes store multiple pipe-delimited icons in a setting

- also replaces broken onebox image icon with SVG reference in cooked post processor

* interpolate icons in locales

* Fix composer whisper icon alignment

* Add support for stacked icons

* SECURITY: enforce hostname to match discourse hostname

This ensures that the hostname rails uses for various helpers always matches
the Discourse hostname

* load SVG sprite with pre-initializers

* FIX: enable caching on SVG sprites

* PERF: use JSONP for SVG sprites so they are served from CDN

This avoids needing to deal with CORS for loading of the SVG

Note, added the svg- prefix to the filename so we can quickly tell in
dev tools what the file is

* Add missing SVG sprite JSONP script to CSP

* Upgrade to FA 5.5.0

* Add support for all FA4.7 icons

- adds complete frontend and backend for renamed FA4.7 icons

- improves performance of SvgSprite.bundle and SvgSprite.all_icons

* Fix group avatar flair preview

- adds an endpoint at /svg-sprites/search/:keyword

- adds frontend ajax call that pulls icon in avatar flair preview even when it is not in subset

* Remove FA 4.7 font files
2018-11-26 16:49:57 -05:00
Joffrey JAFFEUX
95d8a421be
fixes linting 2018-11-19 16:29:15 +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
Sam
42572ff138 Revert font awesome 5 changes
We are still pushing ahead on this 100% just need a bit longer to prepare
all plugins
2018-11-08 16:12:18 +11:00
Penar Musaraj
005e1ecb9b
FEATURE: Update Font Awesome to v5.4.1 and SVGs (#6557)
* First take on subsetting svg icons

* FontAwesome 5 svg subset WIP

* Include icons from plugins/badges into svg sprite subset

* add svg icon support to themes

* Add spec for SvgSprite

* Misc. SVG icon fixes

* Use FA5 svgs in local-dates plugin

* CSS adjustments, fix SVG icons in group flair

* Use SVG icons in poll plugin

* Add SVG icons to /wizard
2018-11-07 13:05:43 -05:00
Neil Lalonde
6e54af1091 FIX: error if decorateCooked is called without a helper for a post with a poll 2018-06-18 12:35:19 -04:00
Joffrey JAFFEUX
60ff0e9b8c
missing prettified files 2018-06-15 18:42:20 +02:00
Régis Hanol
5d445fb810 FIX: properly handle invalid auto close date for polls 2018-06-12 15:31:09 +02:00
Joe
733ffc4bbf
FIX: add classes to input groups and move tips 2018-05-30 21:02:06 +08:00
Guo Xiang Tan
c1fb111951 FIX: Show poll options when user is in a PM with a bot.
https://meta.discourse.org/t/discobot-dont-take-users-through-the-poll-tutorial-if-its-not-enabled/76604/9
2018-05-30 11:16:20 +08:00
Régis Hanol
ef87944a34 UX: show close date on automatically closed polls 2018-05-12 02:14:58 +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
Joffrey JAFFEUX
b295c03001
FIX: select single choice as default when building a poll 2018-01-03 09:23:15 +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
Eric Berry
ab22c8cad4 FIX: Infinite loop when poll step is zero (#5380)
* Fix infinite loop when poll step is zero

* Add test for step minimum and for breaking test

* Remove trailing spaces (eslint)

* Remove extra space (eslint)

* Removed test call .twice
2017-11-30 17:04:41 +01:00
Angus McLeod
c8a6e5cbb3 If there is a specific error it should be shown to the user (#5323)
e.g. post_is_deleted, or topic_must_be_open_to_vote
2017-11-17 12:12:13 +01:00
Robin Ward
e87125b63c FEATURE: Plugins can overwrite and add support for new icons 2017-07-26 13:21:17 -04:00
Sam
9b4f5710e6 api cleanup for before / after rules 2017-07-21 16:12:11 -04:00
Sam
b7f58fe880 regression polls could not be closed properly 2017-07-18 14:52:58 -04:00
Sam
1661a8745b correct issues with poll specs
fixes regression where an error message is missing from a poll
with one option
2017-07-17 17:44:48 -04:00
Sam
8921058c67 FIX: medium URL with @ incorrectly handled as mention
Also:

- remove unused code
- rename bbcode_ruler to bbcode.ruler
- add md.core.textPostProcess.ruler to apply at end of chain (excluding links)
2017-07-17 17:44:48 -04:00
Sam
5d139e461c FIX: multi option poll not working (new engine) 2017-07-11 14:43:34 -04:00
Sam
6200d7d6ab correct bug where only a single poll per topic worked 2017-06-28 15:36:19 -04:00
Sam
234694b50f Feature: CommonMark support
This adds the markdown.it engine to Discourse.
https://github.com/markdown-it/markdown-it

As the migration is going to take a while the new engine is default
disabled. To enable it you must change the hidden site setting:
enable_experimental_markdown_it.

This commit is a squash of many other commits, it also includes some
improvements to autospec (ability to run plugins), and a dev dependency
on the og gem for html normalization.
2017-06-23 12:01:33 -04:00
Robin Ward
8ae445766f Upgrade Ember to 2.13 2017-06-15 10:12:07 -04:00
Rafael dos Santos Silva
8b383bb26a FIX: Poll builder validation was incorrect 2017-04-05 00:15:39 -03:00
Bianca Nenciu
c423544208 Changed combo-box to number inputs for min, max and step values. 2017-03-15 10:56:11 +08:00
Guo Xiang Tan
0988420b48 Fix broken qunit tests. 2017-02-03 12:09:30 +08:00
Guo Xiang Tan
40fae186c9 Remove stray console.log. 2017-02-02 17:38:23 +08:00
Guo Xiang Tan
1bc87bca65 Remove debugging code. 2017-02-02 13:49:26 +08:00
Guo Xiang Tan
8bd8f07ce0 FIX: Public polls should not make a request per option. 2017-01-31 17:27:43 +08:00
Guo Xiang Tan
1da6fc8e3c UX: Highlight user's vote in polls. 2017-01-25 12:02:19 +08:00
Guo Xiang Tan
115a1c8680 FIX: Sort is destructive and that is not what we want. 2017-01-16 23:42:31 +08:00
Guo Xiang Tan
d4b2a635c7 FIX: Live updates for polls was broken. 2017-01-16 16:57:46 +08:00
Guo Xiang Tan
ed72920444 Make eslint happy. 2016-12-22 11:46:15 +08:00
Guo Xiang Tan
288e5faf6b FIX: Sort needs to be stable. 2016-12-22 11:45:41 +08:00
Robin Ward
e3301cd0c8 FIX: Don't load poll results while already loading 2016-12-21 21:26:57 -05:00
Robin Ward
f07443b488 Migrate Discourse Polls to use vdom instead of embedded ember 2016-12-09 10:42:56 -05:00
Robin Ward
ffae39912f FIX: Remove the old poll view before replacing it 2016-12-02 16:41:51 -05:00
Régis Hanol
28b7ef7142 FIX: rendering multiple polls in the same post was broken 2016-11-30 22:59:58 +01:00
Robin Ward
d8a69e6bb2 FIX: Use the register within the poll plugin 2016-11-25 11:58:06 -05:00
Robin Ward
054c428ba3 FIX: Don't modify variables when rendering 2016-11-24 11:34:14 -05:00
Robin Ward
28061316ad Migrate poll plugin to use components 2016-11-21 14:49:46 -05:00
Robin Ward
06254d3163 Remove the last of the ModalBodyView uses 2016-11-18 12:13:21 -05:00
Régis Hanol
71fa9541fa Merge pull request #4531 from rizka10/master
Improve summing of poll percentages to 100
2016-11-03 10:42:59 +01:00
rizka10
4ce99c998b Improve summing poll percentages to 100
My first JavaScript! I have little experience with C++ and even less with Java, but that was enough to figure out a way to solve the task. The solution is rather good, but there may be better ways. I'm going to start a pull request. Even if it gets rejected, an expert can use the idea.

NOTE: The code needs some serious testing before potential merging. I did some testing and it worked, but don't trust in my skills.
2016-11-03 11:11:17 +02:00
Robin Ward
fab36e6cf7 Fix more deprecations:
- Remove all `needs:` code
2016-10-21 17:28:37 -04:00
Robin Ward
be1d74d207 Split out common functions into discourse-common module 2016-09-22 09:52:19 -04:00
Guo Xiang Tan
1171936850 FIX: Don't escape strings from polls. 2016-07-29 16:35:57 +08:00
Guo Xiang Tan
e336e56153 FIX: Incorrect sort for poll results. 2016-07-29 14:42:55 +08:00
Guo Xiang Tan
32c962cfd8 UX: Remove button styles on polls. 2016-07-29 11:09:23 +08:00
Guo Xiang Tan
a7f2b2ded6 FEATURE: Allow poll results to be sorted. 2016-07-29 10:37:27 +08:00
Guo Xiang Tan
85a91c8b81 Remove unused property. 2016-07-28 21:28:49 +08:00
Guo Xiang Tan
33a628b0b0 UX: Vote now button to show up as primary once options have been selected. 2016-07-21 06:05:06 +08:00
Robin Ward
f38347400c FIX: currentUser can be null 2016-07-19 12:48:52 -04:00
Guo Xiang Tan
5f481ec097 Merge pull request #4328 from dachary/wip-poll-empty-lines
FIX: poll builder should ignore empty lines
2016-07-17 09:24:36 +08:00
Loic Dachary
f152900969 FIX: poll builder should ignore empty lines
Although pollOptionsCount skips empty lines, pollOutput inserts empty
lines. Skip them instead.

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-07-14 09:27:43 +02: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
Robin Ward
ff4e60808a FIX: Polls were broken server side 2016-07-11 12:57:05 -04:00
Robin Ward
b8125b3512 REFACTOR: Remove Discourse.Ajax 2016-07-11 12:57:05 -04:00
Robin Ward
56f07529bb REFACTOR: Migrate more legacy JS to ES6 2016-07-11 12:57:05 -04:00
Robin Ward
a546395397 REFACTOR: Migrate markdown functionality in ES6 2016-07-11 12:57:05 -04:00
Guo Xiang Tan
6e385f11b3 UX: Render polls within the same run loop.
* Rendering polls in a seperate run loops causes
our topic list page to be jumpy because of changing
heights after polls have been rendered.
2016-07-11 10:19:00 +08:00
Guo Xiang Tan
3cb8bbb851 UX: Automatically generate poll name for poll builder. 2016-07-05 22:15:52 +08:00
Guo Xiang Tan
a382d5d2d2
FIX: Don't reopen instance of controller. 2016-07-05 12:22:14 +08:00
Guo Xiang Tan
d102a079b1
FIX: Bump plugin API version. 2016-07-01 09:32:30 +08:00
Guo Xiang Tan
5ba12840e0 Merge pull request #4285 from tgxworld/fix_polls_not_cooked
FIX: Incorrect model for embedded post widget.
2016-06-27 13:31:03 +08:00