Commit Graph

1324 Commits

Author SHA1 Message Date
Krzysztof Kotlarek e2f9b7dd6f FIX: Narrative Bot certificates are ERB templates (#8174)
There are at least two ways of rendering templates outside of the controller. The first one is Rails way enabled with Rails 5 https://evilmartians.com/chronicles/new-feature-in-rails-5-render-views-outside-of-actions
The downside of this method is that all variables need to be passed as params (I could find a way to pass the whole context)

Another way is to use instance_eval described in Erubi documentation
https://github.com/jeremyevans/erubi#usage - it works perfectly fine, however, I didn't feel very confident about using eval unless necessary.

An additional benefit of using `ApplicationController.render` is that if Rails would change the ERB engine in the future, this code should still work.

If you want to test it on your local, you need to be signed in and then that two URLs are generating certificates:
http://localhost:3000/discobot/certificate.svg?date=Oct+07+2019&type=standard&user_id=1
http://localhost:3000/discobot/certificate.svg?date=Oct+07+2019&type=advanced&user_id=1

Dev: https://dev.discourse.org/t/discourse-narrative-bot-should-not-be-storing-giant-strings/17130
2019-10-09 17:45:01 +11:00
Gerhard Schlager 3dfe9f3b8d Update translations 2019-10-08 12:25:24 +02:00
Robin Ward f5d391a48a
REFACTOR: Move `app-events:main` to `service:app-events` (#8152)
AppEvents was always a service object in disguise, so we should move it
to the correct place in the application. Doing this allows other service
objects to inject it easily without container access.

In the future we should also deprecate `this.appEvents` without an
explicit injection too.
2019-10-04 10:06:08 -04:00
Vinoth Kannan 5a919c2211 DEV: use 'user_created' discourse event instead of 'after_commit' model callback. 2019-10-04 10:48:49 +05:30
Krzysztof Kotlarek 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
Rafael dos Santos Silva 45ff119f27 FIX: Try to match advanced tutorial reset first (#8048)
Advanced trigger is currently broken on:

    ca
    es
    et
    fr
    he
    it
    pt_BR

And that is because the translation levels for the plugin are kinda low, so I would guess it's broken for half the languages.

Since we have only two tracks for a while now, a quick fix to me is inverting the selectors.

This patch works because the advanced key is "larger" than the new user one.
2019-10-02 11:55:47 +10:00
Gerhard Schlager 8adec48b33 Update translations 2019-09-26 04:29:44 +02:00
Bianca Nenciu 0d22beb81d
FIX: Improve Onebox detection (#8019)
Follow-up to 7c83d2eeb2.
2019-09-10 13:59:48 +03:00
Joe 27f7bd4273
UX: adjusts RTL composer presence avatar alignment
context: https://meta.discourse.org/t/user-is-typing-misaligned-and-mixed-with-reply-choices-with-rtl/127963

This commit adds a temporary fix for presence avatar overlap in the composer for RTL.

More context on TMP here: https://meta.discourse.org/t/moving-the-voting-box-to-the-right-side-of-the-screen/126752
2019-09-09 20:47:29 +08:00
Neil Lalonde 930e70aba9 Update translations 2019-09-04 10:24:43 -04:00
romanrizzi 1e89939383 DEV: Added wrapper to signal that NewPostManager#add_plugin_payload_attribute is part of the public API 2019-08-29 11:58:19 -03:00
Gerhard Schlager 8841563f8a Update translations 2019-08-26 14:36:46 +02:00
Joffrey JAFFEUX bf05a8da96
FEATURE: adds countdown attribute to [date] (#8037)
When used, dates will be displayed as a countdown in a human friendly way.
2019-08-24 11:39:20 -05:00
Arpit Jalan 6b621ceb06 DEV: consistent plugin nomenclature. 2019-08-22 11:08:06 +05:30
Arpit Jalan 75f37ac16a Rename `lazyYT` plugin directory name to `lazy-yt` 2019-08-21 14:35:14 +05:30
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
Roman Rizzi 79957706b1
FIX: Store custom attributes that are needed by plugins in queuedpost payload (#8009) 2019-08-14 15:02:59 -03:00
Régis Hanol c628166bb4 FIX: replace model usage with SQL query
Follow-up to b500ef77
2019-08-13 18:32:24 +02: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
Eduardo Poleo b500ef77d7 Poll migration is not idempotent (#7964)
The migration script is not idempotent due to database constrains on the
poll related objects, namely:

polls: index_polls_on_post_id_and_name (post_id,name) UNIQUE
poll_options: index_poll_options_on_poll_id_and_digest  (poll_id,digest) UNIQUE
poll_votes:  index_poll_votes_on_poll_id_and_poll_option_id_and_user_id  (poll_id,poll_option_id,user_id) UNIQUE

This change skips a particular poll migration if it's already found on
the db.
2019-08-08 18:48:53 +02:00
Guo Xiang Tan 636b6c3a5a FIX: Wrong discobot tutorial started for certain locales.
If a locale has triggers that start with the same word, our regexp will
always end up matching the first trigger. For example,

`start tutorial` and `start tutorial advanced`

To support the change, we have to make the match on triggers more
restrictive. `@discobot quote here` will no longer work like `@discobot
quote`.
2019-08-08 10:53:58 +08:00
Guo Xiang Tan b574276e6e DEV: Correct hardcoded value in discobot tests. 2019-08-08 10:53:58 +08:00
Penar Musaraj 78500fb770 UX: Improve layout of poll builder modal 2019-08-07 15:00:03 -04:00
Joffrey JAFFEUX f4543ff02a
FIX: ensures pikaday picker is showing in UTC (#7968) 2019-08-06 08:41:38 +02:00
Gerhard Schlager a68d8de72f UX:UX: Use shorter weekday labels in local-dates plugin 2019-08-05 14:21:59 +02:00
Guo Xiang Tan 1267185a07 DEV: Remove unused option.
Follow up to 18ed03e044.
2019-07-30 21:12:13 +08:00
Ned Batchelder 18ed03e044 Clarify how to start a tutorial
https://meta.discourse.org/t/does-the-advanced-user-tutorial-still-exist/123661/14
2019-07-30 21:10:22 +08:00
Joe a0df4c3757
UX: prevents cooked dates from wrapping (#7954) 2019-07-30 14:04:30 +08:00
Joffrey JAFFEUX c1d2fb115c
DEV: prevents staff computed property to be overridden (#7931) 2019-07-24 22:01:08 +02:00
Neil Lalonde 97e9599ecc Update translations 2019-07-15 09:43:22 -04:00
AhmadF.Cheema bfbd97d3b5 Remove extra whitespaces from locale files
Co-authored-by: Gerhard Schlager <mail@gerhard-schlager.at>
2019-07-04 13:48:17 +02:00
Gerhard Schlager a5e80079d6 FEATURE: Add Belarusian language 2019-07-04 11:37:37 +02:00
Bianca Nenciu 463db22928 DEV: Add test.
Follow-up to bccd090ced.
2019-06-26 16:37:01 +03:00
Bianca Nenciu bccd090ced SECURITY: Escape email text for posts containing [details]. 2019-06-26 16:28:31 +03:00
Neil Lalonde 7e884cce6b Update translations 2019-06-25 10:57:18 -04:00
Neil Lalonde dbc59cfe61 Update translations 2019-06-17 13:25:37 -04:00
Joffrey JAFFEUX 32cd9ba59b
FIX: ensures local-dates modal is not taking full height on mobile (#7772) 2019-06-16 08:48:07 +02:00
Robin Ward a8793d0d9a REFACTOR: Test Memory Usage Fixes (#7769)
* Calling `Discourse.reset()` creates a new container
We should run our de-initializers only after acceptance tests,
since initializers are not run outside of acceptance tests anyway,
and the container at this point can be passed properly to the
`teardown()` method.

* Remove `Discourse.reset` from tests
This would cause a new container to be created which leaks many objects.

* `updateCurrentUser` is more accurate than `replaceCurrentUser`
2019-06-14 14:54:20 +02: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
Neil Lalonde 5d7e34e0ad Update translations 2019-06-10 10:36:08 -04:00
Régis Hanol 84e5d58a0d DEV: make prettier 💅 happy 2019-06-06 12:28:41 +02:00
Régis Hanol c131903e56 FIX: clone dateTime before changing timezone 2019-06-06 11:16:58 +02:00
Joffrey JAFFEUX b339d67401
DEV: refactors select-kit helper to prevent it to leak into global state (#7708) 2019-06-06 10:47:10 +02:00
Guo Xiang Tan 70b73c2159 DEV: Use proper heredoc name. 2019-06-04 16:31:18 +08:00
Bianca Nenciu 63e3d49508 DEV: Add test for poll plugin reduce_excerpt. 2019-06-04 16:30:15 +08:00
Neil Lalonde dbfdce95c9 Update translations 2019-05-30 10:40:16 -04:00
Jeff Atwood dc43828905 add trust level blog link to discobot PM welcome 2019-05-29 18:19:35 -07:00
Régis Hanol 0df5349dbf
FIX: ensure the post url is present
Also don't interpolate a string
2019-05-30 00:05:53 +02:00
Régis Hanol a188d15b08
FIX: reduce poll when post is nil 2019-05-30 00:02:33 +02:00
Bianca Nenciu 227c45107d FEATURE: Implement Onebox for posts including polls. (#7539) 2019-05-29 17:05:52 +02:00
Sam Saffron 1efed6e527 DEV: amend test for anonymous handling to use real data
Previously we relied on fabrication on anonymous, we can not get the
transaction commit pipeline to work as it does in production, cleanly

This amends it so our anonymous user is created using the core APIs

Signed-off-by: Sam Saffron <sam.saffron@gmail.com>
2019-05-29 15:05:37 +10:00
Bianca Nenciu 3a1d99577e FIX: Replace details content with instruction. 2019-05-29 08:36:04 +08: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
Gerhard Schlager edc6ac0c66 Update translations 2019-05-21 00:04:37 +02:00
Gerhard Schlager 0afcad148a DEV: Always use %{count} in pluralized strings 2019-05-20 23:26:22 +02:00
Gerhard Schlager b788948985 FEATURE: English locale with international date formats
Makes en_US the new default locale
2019-05-20 13:47:20 +02:00
Gerhard Schlager a58aa9b4bf Update translations 2019-05-20 13:42:05 +02:00
Sam Saffron 3c1fa3910f DEV: track the correct channel in specs
These tests are erratically failing due to distributed cache messages that
can land between tests

Ensure we are only looking for the correct messages
2019-05-20 18:27:09 +10:00
Sam Saffron aeb7143aff DEV: correct flaky poll specs
They were relying on a pristine message bus, however current implementation
still uses redis, stuff can get held up and we can end up publishing
distributed cache messages in the middle invalidating the tests
2019-05-17 16:16:02 +10:00
David Taylor 5605dba85c DEV: Automatically annotate plugin models alongside core models 2019-05-13 16:37:47 +01:00
Guo Xiang Tan c00dab89e4 Fix the build take 2. 2019-05-13 11:22:48 +08:00
Guo Xiang Tan 9059a8ca90 Fix the build. 2019-05-13 10:16:26 +08:00
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 41f4f9302d UX: Rename discobot tutorial triggers.
We found the previous triggers less straight forward than just calling
it tutorial.

`start new user` -> `start tutorial`
`start new advanced user` -> `start advanced tutorial`
2019-05-10 09:08:16 +08:00
Joffrey JAFFEUX f3a346464e
FIX: allTimezonesd was mistakenly removed (#7513) 2019-05-09 10:22:54 +02:00
Guo Xiang Tan c72f16d927 Follow up to 329969ea20. 2019-05-08 15:36:12 +08:00
Guo Xiang Tan 329969ea20 FIX: Discobot mention tutorial should be case insensitive. 2019-05-07 10:54:22 +08:00
Guo Xiang Tan 61cc0f8c5f Follow up to 152238b4cf. 2019-05-07 09:57:27 +08:00
Guo Xiang Tan 152238b4cf DEV: Prefer `public_send` over `send`. 2019-05-07 09:33:21 +08:00
Joffrey JAFFEUX 1d784c7a18
FEATURE: adds support for dates in polls (#7450) 2019-04-29 10:01:19 +02:00
Tim Lange d5d784b9f2 FIX: Narration Bot now gets site setting for automatic post deletion (#7432) 2019-04-25 07:29:20 +08:00
Joffrey JAFFEUX 0284910125
Update translations 2019-04-24 15:02:04 +02:00
Robin Ward 21b975e71a FIX: Broken plugin spec 2019-04-23 15:29:26 -04:00
Kris 99efd12376 FIX: Url in Russian translation 2019-04-18 17:10:58 -04:00
Joffrey JAFFEUX 5c8213ffd3
removes debugging statement (#7362) 2019-04-11 15:02:38 +02:00
Joffrey JAFFEUX 7dd684744c
UX: sets min date on calendar when initial date is set (#7361) 2019-04-11 14:37:39 +02:00
Joffrey JAFFEUX 46dc38e5a5
UX: minor local-dates form improvements (#7360) 2019-04-11 14:03:53 +02:00
Joffrey JAFFEUX 7226240df3
UX: full revamp of local-dates form (#7357) 2019-04-11 11:14:34 +02:00
Joffrey JAFFEUX ad5edc8bb1
UX: copy and formating improvements to local-dates form (#7343) 2019-04-09 10:33:01 +02:00
Penar Musaraj e50e4b6cc6 Make Prettier happy 2019-04-08 12:03:41 -04:00
Tarek Khalil 5957991340 FIX: Remove quoted post text and block realtime replies from ignored users (#7336) 2019-04-08 17:44:42 +02:00
Joffrey JAFFEUX 5e68c5f851
UX: moves local-dates from popupMenu to toolbar (#7335) 2019-04-08 15:52:09 +02:00
Neil Lalonde e7a6f0698d Update translations 2019-04-05 10:02:54 -04:00
Bianca Nenciu 3cf922a58a FIX: URL to user profile in poll results. (#7315) 2019-04-03 22:17:05 +02:00
Joffrey JAFFEUX b360d4289e
UX: get rid of preview_for (#7314) 2019-04-03 10:09:25 +02:00
Joffrey JAFFEUX 02d8931425
UX: more compact local-dates preview (#7305) 2019-04-02 14:39:20 +02:00
Joffrey JAFFEUX d81f3ee2c2
FIX: improves DST support of dates when recurrence is used (#7297) 2019-04-01 12:19:09 +02:00
Robin Ward fd6513b516 FIX: Incorrect API in narrative bot 2019-03-28 14:29:33 -04:00
Robin Ward c44371b4ac FIX: Broken spec 2019-03-28 13:55:04 -04:00
Robin Ward b58867b6e9 FEATURE: New 'Reviewable' model to make reviewable items generic
Includes support for flags, reviewable users and queued posts, with REST API
backwards compatibility.

Co-Authored-By: romanrizzi <romanalejandro@gmail.com>
Co-Authored-By: jjaffeux <j.jaffeux@gmail.com>
2019-03-28 12:45:10 -04:00
Joffrey JAFFEUX 9a56b398a1
UX: improves local-dates form (#7268) 2019-03-28 16:34:56 +01:00
Neil Lalonde 4a7e83d880 Update translations 2019-03-28 10:07:51 -04:00
Gerhard Schlager d43f4206c7 FEATURE: Add Armenian language 2019-03-28 14:24:14 +01:00
Sam Saffron b5e32cfe2a DEV: correct spec to test for correct fidelity
This is due to 9ebabc1d
2019-03-28 17:45:36 +11:00
Joffrey JAFFEUX 4874cf742b
FIX: better styling with popover (#7259) 2019-03-26 16:34:27 +01:00
Joffrey JAFFEUX 52332ccd72
FIX: uses aria-label instead of title as it's useless with popover (#7258) 2019-03-26 16:31:48 +01:00
Joffrey JAFFEUX 8fb63b2706
FEATURE: unified popover implementation (#7244) 2019-03-26 15:43:27 +01:00
Robin Ward 34b871a86c Missing translation key 2019-03-19 12:51:10 -04:00
Penar Musaraj 9334d2f4f7
FEATURE: add more granular user option levels for email notifications (#7143)
Migrates email user options to a new data structure, where `email_always`, `email_direct` and `email_private_messages` are replace by

* `email_messages_level`, with options: `always`, `only_when_away` and `never` (defaults to `always`)
* `email_level`, with options: `always`, `only_when_away` and `never` (defaults to `only_when_away`)
2019-03-15 10:55:11 -04:00
Robin Ward fa5a158683 REFACTOR: Move `queue_jobs` out of `SiteSetting`
It is not a setting, and only relevant in specs. The new API is:

```
Jobs.run_later!        # jobs will be thrown on the queue
Jobs.run_immediately!  # jobs will run right away, avoid the queue
```
2019-03-14 10:47:38 -04:00
Guo Xiang Tan b0c8fdd7da FIX: Properly support defaults for upload site settings. 2019-03-13 16:36:57 +08:00
Robin Ward d1d9a4f128 Add new `run_jobs_synchronously!` helper for tests
Previously if you wanted to have jobs execute in test mode, you'd have
to do `SiteSetting.queue_jobs = false`, because the opposite of queue
is to execute.

I found this very confusing, so I created a test helper called
`run_jobs_synchronously!` which is much more clear about what it does.
2019-03-11 16:58:35 -04:00
Neil Lalonde 9c54447ca7 Update translations 2019-03-11 13:55:45 -04:00
Jeff Wong 44a43878a5 FIX: lightbox wrapper within open details should show. 2019-03-08 15:07:22 -08:00
Tim Lange 6420b73c33 FIX: Changed poll age message to upcase (#7124) 2019-03-07 11:04:17 +01:00
Kris be5e889b1b UX: Poll style fix, button classes 2019-03-06 20:27:40 -05:00
Neil Lalonde aabc3375c6 Update translations 2019-03-01 11:28:07 -05:00
Régis Hanol 6b006c383b FIX: polls acceptance tests 2019-02-27 19:16:24 +01:00
Régis Hanol 0a708ba064 FIX: preload poll voters 2019-02-27 17:00:21 +01:00
Penar Musaraj 9bf11a7c02
FEATURE: Add localized timezone names (#7004)
Uses github.com/discourse/moment-timezone-names-translations to translate timezone names.
Plugins can also provide their own timezone name translations.
2019-02-25 14:40:02 -05:00
Joffrey JAFFEUX 5952a6c0ad
DEV: uses find() helper instead of this.$() in js tests (#7062) 2019-02-25 16:04:55 +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
Joffrey JAFFEUX c08b2ddecf
FIX: stricter matching on local-dates (#7023) 2019-02-18 22:39:45 +01:00
Robin Ward c719658f9f `human?` helper method on a user
This is cleaner than hard coding `id > 0` in ruby code.
2019-02-08 13:34:54 -05:00
Neil Lalonde 55cc5ab4b8 Update translations 2019-02-07 09:49:57 -05:00
Joe a342d2f150 UX: reduces white-space in polls (#6956)
* reduces white-space in polls and uses font-size variables
2019-02-05 10:47:22 +01:00
Neil Lalonde 6bfd2b6eaf Update translations 2019-01-31 16:27:07 -05:00
Penar Musaraj 3c5fbd3ce1 FIX: do not send welcome message to staged users 2019-01-30 18:03:16 -05:00
Régis Hanol f7b7bc8abe DEV: move 'default_scope' to default sort on 'has_many' relation 2019-01-30 17:45:50 +01:00
Neil Lalonde 024ba28525 Update translations 2019-01-28 10:27:20 -05:00
Régis Hanol 671ff4243f
FIX: discourse-poll-option test wasn't working 2019-01-24 14:55:36 +01: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
Penar Musaraj ba5e17a7a9 FIX: IE11 layout glitches
IE11 requires a unit on the third parameter (flex-basis) of the flex property
2019-01-21 13:40:55 -05:00
Jeff Atwood 444bc466b0 for docs, normalize on space after code fence when specifying lang 2019-01-21 01:19:28 -08:00
Gerhard Schlager 90823eaca6 Update translations 2019-01-19 23:41:52 +01:00
Joffrey JAFFEUX 502b1316d0
DEV: s/this._super()/this._super(...arguments) (#6908) 2019-01-19 10:05:51 +01:00
Penar Musaraj 78730062de Fix prettier offence in local-dates plugin 2019-01-17 14:22:35 -05:00
Joffrey JAFFEUX 9703fa2abc
UX: improves dates display in emails (#6805) 2019-01-16 12:53:41 +01:00
Neil Lalonde 81953339f2 Update translations 2019-01-14 12:23:49 -05:00
Jeff Atwood 098b6d9364 remove bullets on discobot oneboxing step 2019-01-13 04:33:32 -08:00
Joffrey JAFFEUX 1a3655b787
DEV: s/Em/Ember (#6874) 2019-01-11 17:54:23 +01:00
Kris 5f75da6f61 FIX: Prensence was overlapping with full-screen icon 2019-01-10 21:02:02 -05: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
Neil Lalonde d7656f30c3 Update translations 2019-01-02 12:32:38 -05:00
Régis Hanol b478984f60 make eslint happy 2018-12-31 12:38:45 +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
Joffrey JAFFEUX 6578d56308
fix prettier offense (#6830) 2018-12-28 23:47:16 +01:00
Joffrey JAFFEUX 72afefe211
FIX: calendar range was too wide (#6829) 2018-12-28 22:56:49 +01:00
Joffrey JAFFEUX 608abd4c08
FIX: uses `flex: 1 0 0;` instead of `flex: 1;` for better browser compat (#6826) 2018-12-28 20:21:32 +01:00
Joffrey JAFFEUX 523e0248e1
FIX: recurrence was not applied when selected in the form (#6820) 2018-12-28 12:36:49 +01:00
Joffrey JAFFEUX 8ce76460ed
FIX: dates should also store recurring (#6814) 2018-12-26 23:35:10 +01:00
Jeff Atwood 6db19e494d remove emoji from default discobot greeting PM 2018-12-21 16:39:25 -08:00
Gerhard Schlager fbd92916e5 FIX: Narrative bot should ignore action on deleted post 2018-12-21 17:43:52 +01:00
Bianca Nenciu c928386c3e FIX: Copy old status to new poll. (#6788) 2018-12-19 11:29:13 +01:00
Bianca Nenciu 5bda4d26b4 FIX: Rescue errors in job. (#6745) 2018-12-17 15:28:57 +01:00
Neil Lalonde 124ae46763 Update translations 2018-12-14 10:34:12 -05:00
Guo Xiang Tan 71ce9ced47 FIX: Incorrect arguments were being passed to `Jobs::ClosePoll`.
Also fix spec that wasn't testing anything.
2018-12-13 16:46:00 +08: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
Guo Xiang Tan dcf9c6da59 DEV: Don't publish post messages to non-human users. 2018-12-06 08:24:13 +08: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 f1050350ed FIX: clamp integers to prevent 'PG::NumericValueOutOfRange' errors 2018-12-04 22:51:56 +01:00
Régis Hanol 3c9c95ac83 Update Rubocop to 0.60 2018-12-04 10:48:16 +01:00
Neil Lalonde d43d007929 Update translations 2018-11-29 10:51:16 -05:00
Joffrey JAFFEUX 6b433b66f5
FIX: always prepend watching user timezone to previews (#6695) 2018-11-29 12:02:27 +01:00
Joffrey JAFFEUX 4237ece065
FIX: positioning issues with local-dates (#6693) 2018-11-28 16:38:47 +01:00
Joffrey JAFFEUX eb1607bd98
DEV: local-dates refactoring (#6692) 2018-11-28 16:19:25 +01:00
Joffrey JAFFEUX 04558b6ca4
FIX: makes sure we have a zone (#6686) 2018-11-27 16:42:23 +01:00
Joffrey JAFFEUX 3e116bb14e
FIX: better handling of same offset timezones (#6680) 2018-11-27 15:17:23 +01:00
Joffrey JAFFEUX 75dac31323
FIX: compares timezones on utc offset and not name (#6672) 2018-11-27 12:36:19 +01:00
Joffrey JAFFEUX d461794fbf
FIX: removes country from timezone indicator (#6677) 2018-11-27 11:52:02 +01:00
Joffrey JAFFEUX ac556298ca
FIX: resets timezone default after callback (#6675) 2018-11-27 09:56:31 +01:00
Guo Xiang Tan 9cf9dee4cc DEV: Locale dates test needs to set default moment timzone.
The tests were breaking on a machine configured to use SGT timezone.
2018-11-27 13:50:57 +08: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 b0d08b5a8c
FEATURE: refactoring and better handling of special cases (#6666) 2018-11-26 14:20:32 +01:00
Régis Hanol ed400a90fe
FIX: properly migrate polls/votes stored as array 2018-11-24 17:14:03 +01:00
Régis Hanol 5142911012 FIX: auto-closing poll wasn't working 2018-11-23 17:42:57 +01:00
Régis Hanol f402d0d74f FIX: couldn't delete users who voted on a poll 2018-11-23 11:45:53 +01:00
Régis Hanol 606faa2ee5 FIX: ensure poll options keep their order 2018-11-23 10:37:05 +01:00
Joffrey JAFFEUX 3ff3bb6e2a
FIX: improves code, tests and utc handling of local-dates (#6644) 2018-11-22 17:19:24 +01:00
Guo Xiang Tan 439b3fe10a Fix `MigratePollsData` failing when poll-votes have duplicated options. 2018-11-21 10:52:21 +08:00
Claas Augner 52a5a5983a Update narrative bot copy 2018-11-21 00:04:54 +01:00
Régis Hanol 92100f82eb FIX: properly disable serializable attributes when poll plugin is disabled 2018-11-20 17:28:41 +01: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
Joffrey JAFFEUX c4ed353fae DEV: removes _.map from codebase (#6616) 2018-11-19 10:46:46 +01:00
Joe 9c5b5243fc
UX: don't show 0 vote count in crawler or print view 2018-11-15 17:40:01 +08:00
Guo Xiang Tan 6fde58ff90 FIX: Make Discobot image tutorial accept URL that points to images. 2018-11-15 10:52:18 +08:00
Guo Xiang Tan 44391ee8ab
FEATURE: Upload Site Settings. (#6573) 2018-11-14 15:03:02 +08:00
Kris c09a407f65 composer alignment fixes 2018-11-13 11:12:58 -05:00
Gerhard Schlager cbd6bd191a Add base path to relative links in translations 2018-11-08 23:31:05 +00:00
Gerhard Schlager 42f693adfa Update translations 2018-11-08 23:31:05 +00:00
Gerhard Schlager 24e5be3f0c FIX: Relative links in translations should work with subfolder 2018-11-08 23:31:05 +00: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 52440415c5 Fix SVG icon in local-dates 2018-11-07 13:22:23 -05: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
David Taylor d963f96fa4 Update translations 2018-11-05 11:16:58 +00:00
Sam df62b48d51 UX: remove "at" word from relative dates in local dates
Previously we would render "Today at 2:42 PM"
Now we render "Today 2:42 PM"

This also introduces new strings so it can be properly translated

Finally it introduces tests so we can make sure this keeps working
2018-10-31 11:55:43 +11:00
Kris c219a5fb1e
Add btn-default class to all default buttons (#6521) 2018-10-24 16:09:36 -04:00
Sam 29fdb50338 FIX: if poll has not options do not break serializer
Note: we have a proper rewrite of this plugin in progress
it will address this issue in a proper way
2018-10-24 10:04:17 +11:00
Vinoth Kannan bfa25487eb FIX: Support for local-date email preview without time attribute 2018-10-16 16:19:43 +05:30
Vinoth Kannan 2c8c1bf188 Rename timezone attribute and add it to local date details field 2018-10-16 05:04:55 +05:30
Joe a552a39f53
UX: presence-users overlaps with composer toggles 2018-10-15 16:25:28 +08:00
Guo Xiang Tan a4aa4a9be4 DEV: Remove the use of mocks in our tests. 2018-10-15 10:38:02 +08:00
Neil Lalonde af39624d19 Update translations 2018-10-12 10:40:25 -04:00
Vinoth Kannan 5550f405d3 minor css tweaks 2018-10-12 13:44:37 +05:30
Vinoth Kannan f07bece17f FIX: Make time attribute as optional for local-dates bbcode 2018-10-12 05:44:00 +05:30
Vinoth Kannan 2502a3f780 FIX: email preview content not updated in second local date 2018-10-12 03:56:35 +05:30
Vinoth Kannan f38caf30fb Add qunit test and fix the rspec method 2018-10-12 03:32:38 +05:30
Vinoth Kannan f54052d796 minor css tweak on local dates style 2018-10-12 03:15:42 +05:30
Vinoth Kannan ee9d4f5516 UX: Make time attribute optional and set default timezones 2018-10-12 03:11:57 +05:30
Vinoth Kannan 8cb59b9757 UX: Use dashed underline for local dates 2018-10-12 02:32:44 +05:30
Vinoth Kannan b54d940182 FIX: Do not use force timezone value in display timezone 2018-10-11 19:49:40 +05:30
Vinoth Kannan 6a444eee56
Merge pull request #6476 from vinothkannans/tl4-flag
FEATURE: automatically hide non-TL4 posts when flagged by a TL4 user
2018-10-11 17:13:26 +05:30
Vinoth Kannan 9a0e4eec16 REFACTOR: discobot/TL4 :off_topic flag will hide the post 2018-10-11 17:12:35 +05:30
Robin Ward a566ed42ae FEATURE: Option to disable user presence and profile
This allows users who are privacy conscious to disable the presence
features of the forum as well as their public profile.
2018-10-10 17:34:33 -04:00
Vinoth Kannan 6b7bb543af SPEC: Check data-email-preview existance on cooked 2018-10-10 11:50:05 +05:30
Vinoth Kannan e8e5276f30 Remove extra semicolon 2018-10-10 04:29:34 +05:30
Vinoth Kannan c877058a24
Merge pull request #6470 from vinothkannans/local-date-text
DEV: Use simple UTC datetime format for local date inner text
2018-10-10 03:52:58 +05:30
Vinoth Kannan 98865e86da DEV: Use simple UTC datetime format for local date inner text 2018-10-10 03:49:49 +05:30
Penar Musaraj 753d39f30d Fix NoMethodError in polls#voters 2018-10-09 12:51:49 -04:00
Vinoth Kannan 7a6c227fa4 UX: Use local timezone for insert date modal result 2018-10-09 20:15:32 +05:30
Joe 9d2f855790
UX: changes CSS class added to local dates 2018-10-09 15:04:42 +08:00
Risto 38b48997fc Fix typo in narrative-bot plugin (#6434) 2018-09-30 21:43:46 +02:00
Gerhard Schlager b0a383561e FEATURE: Add Lithuanian locale 2018-09-27 05:26:38 +02:00
Neil Lalonde a530606da7 fix narrative bot spec to include base_uri key in translations 2018-09-21 12:37:35 -04:00
Neil Lalonde 5705e5c00e FIX: links in narrative bot messages for subfolder installs 2018-09-21 12:16:59 -04:00
Vinoth Kannan 16d7132ba1 SPEC: Check date and time values separately 2018-09-17 18:39:59 +05:30
Vinoth Kannan b13b6e30d6 DEV: Skip converting local dates as json 2018-09-17 18:18:43 +05:30
Guo Xiang Tan 53d34c69fc Fix lint. 2018-09-17 10:26:48 +08:00
Joffrey JAFFEUX 4b3c2490c3 FIX: allowes forcing timezone displayed in local-dates
Use case being you might want to always display a specific timezone, but still have the possibility to show the tooltip with various timezones.
2018-09-17 10:06:57 +08:00
Neil Lalonde a147a856f8 Update translations 2018-09-14 11:43:14 -04:00
Neil Lalonde 6afc86398c Update translations 2018-09-10 13:29:07 -04:00
Guo Xiang Tan 89e5d91f0a FIX: Tooltip should use format option instead of defaulting to "LLL". 2018-09-07 11:32:44 +08:00
Guo Xiang Tan def4fbaf01 UX: Join dates in tooltips using line breaks. 2018-09-07 11:24:05 +08:00
Guo Xiang Tan b5b4e2602a Formatting fixes. 2018-09-07 10:21:11 +08:00
Guo Xiang Tan c1c9637b39 Skip Discobot flag tutorial if `allow_flagging_staff` is disabled.
https://meta.discourse.org/t/interacting-with-discobot/96574
2018-09-07 08:33:27 +08:00
Vinoth Kannan e894f895d4 DEV: Extract dates before post_process_cooked event 2018-09-07 00:31:45 +05:30
Vinoth Kannan f0dab5a5e4 DEV: Add local_dates post custom field 2018-09-06 23:43:24 +05:30
Gerhard Schlager e22bf8ff28 Update German translations 2018-09-05 00:47:39 +02:00
Neil Lalonde 5a4d6f9656 Update translations 2018-08-30 09:40:31 -04:00
Joffrey JAFFEUX 3ed9533066
FEATURE: adds support for seconds in local-dates (#6339) 2018-08-30 12:38:05 +02:00
Joffrey JAFFEUX 5afb09ebbe
FEATURE: displays "today" if event is... today (#6336) 2018-08-30 11:25:36 +02:00
Joshua Rosenfeld 34a5ac2fd8
Add 'discobot' to site setting description
https://meta.discourse.org/t/where-exactly-can-i-disable-discobot/95920/3
2018-08-29 18:29:16 -04:00
Kris 6ec43f3472 FIX: poll avatar spacing too large 2018-08-29 09:11:03 -04:00
Kris d6144c6d60 UX: More compact polls on mobile 2018-08-27 16:53:35 -04:00
Joffrey JAFFEUX 89e7d95cc7
SECURITY: prevents XSS in local-dates 2018-08-27 11:19:30 +02:00
Joe aa5a993935
UX: Youtube embed title overlaps with select-kit 2018-08-24 14:32:22 +08:00
Guo Xiang Tan ff0979553d Skip discobot mention tutorial if mentions are disabled. 2018-08-23 14:58:07 +08:00
Neil Lalonde 6d79be29f2 Update translations 2018-08-21 11:28:13 -04:00
Neil Lalonde 0cf98f1ad9 Revert "Update translations" 2018-08-21 11:17:53 -04:00
Neil Lalonde 3c6d5c8241 Update translations 2018-08-21 10:36:59 -04:00
Arpit Jalan 7cbf2c182f FIX: do not hide YouTube embeds inside details tag 2018-08-21 13:42:59 +05:30
Sam f939bdbf44 FIX: if user is logged off return 404 instead of 500
Return correct error when attempting to publish presence for
a logged out user.
2018-08-21 11:22:40 +10:00
Guo Xiang Tan 038de4e037 FIX: Incorrect title on new user narrative cert. 2018-08-20 11:26:20 +08:00
Guo Xiang Tan 07d07c7b5f FIX: Make Discobot certificate route require login. 2018-08-20 11:22:59 +08:00
Sam a71fe16647 workaround, we need another lazy operator here
Data can be pretty inconsistent here till our big refactor is done
2018-08-20 10:37:06 +10:00
Sam eacb2593ee workaround badly denormalized data in polls 2018-08-17 11:15:29 +10:00
Joffrey JAFFEUX 10a3499d68
uses emoji versions for specs (#6276) 2018-08-16 13:45:30 +02:00
Peter Borsa a6820d8767 Add Hungarian locale (#6260) 2018-08-13 01:02:35 +02:00
Neil Lalonde 5c248e3a7a Update translations 2018-08-07 12:05:45 -04:00
Sam f3549291a3 DEV: use unicorn in development
This commit also cleans up a bunch of pointless noise each time we boot app

- narrative was loading i18n cause redefinition of consts
- discourse.rb was loaded twice as was auth
- bin/unicorn now does all the smart things and boots unicron in dev
- bin/rails s will boot unicorn with no params
- remove bin/puma which only causes confusion
2018-08-07 17:13:47 +10:00
Kris 97af6e070f FIX: email summary expansion button should use theme colors 2018-08-06 11:44:37 -04:00
Kris 84d822959a Reducing some specificity, color fix 2018-08-03 17:44:22 -04:00
Maja Komel 04baddf731 DEV: migrate tests to async/await 2018-07-30 12:21:05 +02:00
Neil Lalonde 58ecc84d61 Update translations, excluding Japanese and config/locales/client.zh_TW.yml due to errors 2018-07-26 13:01:39 -04:00
Gerhard Schlager d3e04daa95 Add Swahili language 2018-07-16 18:11:38 +02:00
Joffrey JAFFEUX c580a39d49
FIX: infers time from tz creator to ensure day shown is the one expected 2018-07-16 01:04:50 +02:00
Kris b79fedd540 Streamlining some breakpoint mixins 2018-07-12 16:39:16 -04:00
Joffrey JAFFEUX 6e3a2197f8
FIX: removes UTC conversion when date and no time 2018-07-05 10:58:53 +02:00
Joffrey JAFFEUX d12194c438
FIX: uses a non cooked to emoji arrow for local dates ranges 2018-07-04 23:56:56 +02:00
Jeff Wong 61955d2aa1 FIX: only change to time format when dealing with today's time 2018-07-02 16:50:15 -07:00
Joe 27c018e75c
FIX: makes large images in polls responsive 2018-07-01 13:20:00 +08:00
Joffrey JAFFEUX acd1693dac
FEATURE: simplifies the same day hour to hour use case in local dates 2018-06-25 22:16:07 +02:00
Neil Lalonde 072659c22a Update translations 2018-06-21 10:34:09 -04: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
Joffrey JAFFEUX 41b71b58a9
UX: experimental ranges for local dates 2018-06-11 13:16:03 +02:00
Neil Lalonde 79854198c1 Update translations 2018-06-08 10:27:53 -04:00
Joffrey JAFFEUX 174d392e5a
DEV: adds prettier (#5956)
Run `prettier --write "app/assets/stylesheets/**/*.scss" "plugins/**/*.scss"` after making sure you installed it with `yarn`

It's recommended to configure your editor to run prettier on file save.
2018-06-08 11:49:31 +02:00
Sam 8b88b71309 Attempt very aggressively to clear cache 2018-06-07 20:10:52 +10:00
Sam 3291f2c0eb move plugin fixture to the front of the queue 2018-06-07 19:56:07 +10:00
Guo Xiang Tan 3a8f69c3d2 DEV: Assert for 200 response code to avoid changing magic helper in the future. 2018-06-07 16:11:09 +08:00
Guo Xiang Tan 49f39ca64d Fix another failing spec. 2018-06-07 15:07:39 +08:00
Guo Xiang Tan 610510ebad Fix broken discourse narrative bot spec after upgrade. 2018-06-07 15:03:09 +08:00
Sam e806e6e96f correct specs 2018-06-07 16:13:15 +10:00
Guo Xiang Tan ad5082d969 Make rubocop happy again. 2018-06-07 13:28:18 +08:00
Joffrey JAFFEUX a58fb817c0
FIX: removes buggy/unnecessary local-dates margin 2018-06-06 15:28:56 +02: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
Neil Lalonde dee9af2877 Update translations 2018-05-31 17:03:38 -04:00
Guo Xiang Tan 7fc8a36529 DEV: Take 2 Queue jobs in tests by default.
On my machine this cuts the time taken to run our test suite
from ~11mins to ~9mins.
2018-05-31 16:23:23 +08:00
Guo Xiang Tan 56e9ff6853 Revert "DEV: Queue jobs in tests by default."
Too risky for now

This reverts commit be28154d3b.
2018-05-31 15:34:46 +08:00
Guo Xiang Tan be28154d3b DEV: Queue jobs in tests by default. 2018-05-31 14:45:47 +08:00
Joffrey JAFFEUX e32ccde72d
FIX: uses mixin instead of mobile file for local-dates modal 2018-05-30 19:14:31 +02:00
Joffrey JAFFEUX 0c3a0b59cd
unused code 2018-05-30 19:07:08 +02:00
Joffrey JAFFEUX c3ec758107
UX: improves local-dates modal form UI 2018-05-30 19:05:41 +02:00
Joffrey JAFFEUX 8128cbd7db
UX: adds subtitle support for modals 2018-05-30 17:14:00 +02:00
Joe 733ffc4bbf
FIX: add classes to input groups and move tips 2018-05-30 21:02:06 +08:00
Joe ec7f597274
FIX: update poll-builder to new modal design 2018-05-30 21:00:54 +08:00
Joe 47a9b3427b
FIX: input tip causes modal to change width when present 2018-05-30 14:26: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
Gerhard Schlager b7bf0e96aa Update translations 2018-05-29 22:01:57 +02:00
Gerhard Schlager 864ada835b FEATURE: Add Bulgarian language 2018-05-29 21:07:17 +02:00
Joffrey JAFFEUX 42b2bfe262
FIX: adds quotes around format when creating a local date 2018-05-28 11:05:37 +02:00
Guo Xiang Tan 9f873fa66c FIX: Invalid setex expire time in `DiscourseNarrativeBot::Actions#reset_rate_limits`. 2018-05-25 16:02:15 +08:00
Joffrey JAFFEUX 54a9073d94
FIX: do not cook local date without attributes 2018-05-24 10:56:04 +02:00