Commit Graph

545 Commits

Author SHA1 Message Date
Blake Erickson
18dad4cfbd FIX: discobot inappropriate flag section
Ensure that the inappropriate flag is used and not some other flag
type. If some other flag is used a message will be posted letting the
user know they used the wrong flag and the original flag will be removed
so that they can try again.

Bug reported on meta: https://meta.discourse.org/t/-/157075
2020-08-03 19:48:45 -06:00
Guo Xiang Tan
75ad071899
FEATURE: Add hidden site settings for discobot to skip certain tutorials
Hidden for now because I'm undecided on whether this should be an
exposed interface.
2020-07-14 15:17:50 +08:00
Guo Xiang Tan
cb68493e89
DEV: Prefer fab! for discobot specs. 2020-07-14 15:17:50 +08:00
Guo Xiang Tan
753477e684
FIX: Slightly reduce fake delay of discobot user.
Previously it would sleep for either 2 or 3 seconds instead of sleeping
between a range of 2 to 3 seconds. Also, 2 to 3 seconds seems to be
excessivly long when I tried out discobot again.
2020-07-13 09:08:31 +08:00
Régis Hanol
44aaf4415d DEV: ensure discobot has a user_option & user_profile
When doing a migration, there might be some cases where the discobot user
doesn't have a user_option / user_profile record(s).

This ensures we always create one during the seed phase.
2020-07-07 18:24:31 +02:00
Régis Hanol
d234e0f922 SPEC: add spec to ensure discobot works in French
PERF: memoize cooked triggers

Follow-up to 3c31884b
2020-06-26 12:48:11 +02:00
Régis Hanol
3c31884b79 FIX: match discobot triggers on cooked version
In French, the help trigger has a raw content of "afficher l'aider" which is then cooked into "afficher l’aide" (note the different quote character).
Since we were checking the raw content of the trigger against the cooked version of the post, this trigger never worked in French.

This changes so that we cook the trigger before checking in against the cooked version of the post.

DEV: new 'discobot_username' method that is used everywhere instead of 'discobot_user.username' / 'discobot_user.username_lower'
2020-06-25 13:29:55 +02:00
Neil Lalonde
713298c622
FIX: advanced tutorial errors when all categories are secured (#10111)
The category hashtag step will fail with an error when all
categories aren't public. Choose a category that the user can see.
2020-06-24 15:45:50 +10:00
Guo Xiang Tan
3370ef188e
FEATURE: Remove deprecated uploads url site settings.
The site settings have been replaced with direct image upload since
Discourse 2.3.
2020-06-22 14:32:29 +08:00
Gerhard Schlager
390dc5c7a9 Update translations 2020-06-21 11:58:21 +02:00
Gerhard Schlager
36a3675e0a Update translations 2020-06-14 23:39:33 +02:00
Neil Lalonde
65dd8e2fa2
Update translations 2020-06-10 12:01:02 -04:00
Arpit Jalan
3094459cd9
FEATURE: multiple use invite links (#9813) 2020-06-09 20:49:32 +05:30
Neil Lalonde
72c09ab4ae
Update translations 2020-06-01 13:58:51 -04:00
Neil Lalonde
3d20a1143b
Update translations 2020-05-26 10:06:07 -04:00
Michael Brown
d9a02d1336
Revert "Revert "Merge branch 'master' of https://github.com/discourse/discourse""
This reverts commit 20780a1eee.

* SECURITY: re-adds accidentally reverted commit:
  03d26cd6: ensure embed_url contains valid http(s) uri
* when the merge commit e62a85cf was reverted, git chose the 2660c2e2 parent to land on
  instead of the 03d26cd6 parent (which contains security fixes)
2020-05-23 00:56:13 -04:00
Jeff Atwood
20780a1eee Revert "Merge branch 'master' of https://github.com/discourse/discourse"
This reverts commit e62a85cf6f, reversing
changes made to 2660c2e21d.
2020-05-22 20:25:56 -07:00
Ankur Dahiya
37128d71c7
Add rails_helper to spec (#9861) 2020-05-22 12:27:52 -04:00
Guo Xiang Tan
3aecc1990b
DEV: Review follow up to 234cd5c3e7. 2020-05-20 16:17:59 +08:00
Guo Xiang Tan
37983a7815
Fix lint. 2020-05-20 10:33:34 +08:00
Guo Xiang Tan
b7387d4611
DEV: Remove code unused code when seeding narrative bot. 2020-05-20 10:22:51 +08:00
Guo Xiang Tan
234cd5c3e7
FIX: Switch discobot to pull avatar from gravatar. 2020-05-20 10:20:08 +08:00
Guo Xiang Tan
96c02caba7
DEV: Change use of Redis flushall to flushdb.
FLUSHALL removes all keys from all databases. Instead we only want to
remove keys from the current Redis database.
2020-05-19 10:20:00 +08:00
Guo Xiang Tan
4a74f18e95
PERF: Move fetching of avatar into hijack for discobot certificate 2020-05-11 09:35:06 +08:00
Robin Ward
f5bdbd347e Revert "FIX: Discobot has not been created with our custom avatar."
This reverts commit 1062dbc3e9.

Looks like it's causing some errors on migration.

```
/var/www/discourse/lib/image_sizer.rb:6:in `resize'
/var/www/discourse/lib/upload_creator.rb:120:in `block in create_for'
/var/www/discourse/lib/distributed_mutex.rb:33:in `block in synchronize'
/var/www/discourse/lib/distributed_mutex.rb:29:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:29:in `synchronize'
/var/www/discourse/lib/distributed_mutex.rb:14:in `synchronize'
/var/www/discourse/lib/upload_creator.rb:37:in `create_for'
```
2020-05-06 11:28:42 -04:00
Guo Xiang Tan
1062dbc3e9 FIX: Discobot has not been created with our custom avatar.
Previously the image was imported from a Discourse hosted CDN but the
URL has since become invalid. However, it was not caught since all
errors are rescued. This commit fixes the issue by shipping the user
avatar with the plugin.
2020-05-06 09:25:01 +08:00
Krzysztof Kotlarek
9bff0882c3
FEATURE: Nokogumbo (#9577)
* FEATURE: Nokogumbo

Use Nokogumbo HTML parser.
2020-05-05 13:46:57 +10:00
Neil Lalonde
3cce608379
Update translations 2020-05-04 10:39:01 -04:00
Martin Brennan
ca539fdccf
FIX: Rename all instances of bookmarkWithReminder to just bookmark (#9579)
* Rename all instances of bookmarkWithReminder and bookmark_with_reminder to just bookmark
* Delete old bookmark code at the same time
* Add migration to remove the bookmarkWithReminder post menu item if people have it set in site settings
2020-04-30 10:09:22 +10:00
Joshua Rosenfeld
bc1f7bd659
UX: Improve discobot random menion copy
As suggested in https://meta.discourse.org/t/-/148336/10
2020-04-29 13:09:16 -04:00
Martin Brennan
6cf31f16f7
FIX: Change bookmarks-with-reminders URL back to bookmarks for user activity (#9566)
* Bookmarks with reminders is a core feature now, no need to have a separate URL
* Keep around the old /u/:username/activity/bookmarks-with-reminders route for backwards compat in Ember but just redirect to user activity bookmarks.
2020-04-29 10:53:37 +10:00
Gerhard Schlager
30cb5f7d86 Update translations 2020-04-24 15:16:29 +02:00
Martin Brennan
6df22638e1 FIX: Make sure new user narrative returns toggleBookmark promise
* the call to this.super() was not returned so there is no promise
  to chain .then() with, causing errors for bookmarks with reminders
2020-04-24 13:13:30 +10:00
Martin Brennan
628ba9d1e2
FEATURE: Promote bookmarks with reminders to core functionality (#9369)
The main thrust of this PR is to take all the conditional checks based on the `enable_bookmarks_with_reminders` away and only keep the code from the `true` path, making bookmarks with reminders the core bookmarks feature. There is also a migration to create `Bookmark` records out of `PostAction` bookmarks for a site.

### Summary

* Remove logic based on whether enable_bookmarks_with_reminders is true. This site setting is now obsolete, the old bookmark functionality is being removed. Retain the setting and set the value to `true` in a migration.
* Use the code from the rake task to create a database migration that creates bookmarks from post actions.
* Change the bookmark report to read from the new table.
* Get rid of old endpoints for bookmarks
* Link to the new bookmarks list from the user summary page
2020-04-22 13:44:19 +10:00
Martin Brennan
5a98869c5d
FIX: If bookmarking discobot posts, skip the reminder modal (#9505)
This is to streamline the new user narrative. only works when creating the bookmark, if editing/deleting the modal is shown. This is done via the plugin initializer.
2020-04-22 13:34:58 +10:00
Dax74
ffa0a18841
Update bookmark step
See https://dev.discourse.org/t/discobot-tutorial-for-bookmarks/27466 for details
2020-04-21 19:35:03 +02:00
Gerhard Schlager
82f9dcf301 Update translations 2020-04-20 11:37:59 +02:00
Blake Erickson
80a80ef2bd DEV: Use method instead of constant for discobot badge names
This change refactors the code a bit so that a plugin could easily
replace which badge is awarded when completing the discobot new user
tutorial and advanced tutorial.

By adding a static method and putting the BADGE_NAME constant inside of
that method we can simply call that method now instead of the constant.
A plugin could then `class_eval` that method and replace it with
whatever badge name they choose. This is way cleaner than having the
plugin change the frozen constant! eeek.
2020-04-09 20:46:51 -06:00
Martin Brennan
0cb40fe9ed
FIX: Narrative bot not working for bookmarks with reminders (#9289)
Reported https://meta.discourse.org/t/improved-bookmarks-with-reminders/144542/42?u=mjrbrennan

* There was no callback on the bookmark model to trigger the next step of the narrative bot on bookmark.
* Also the translation URL path was hardcoded, needs to be conditional based on whether the site setting is enabled.
2020-03-27 12:17:18 +10:00
Dan Ungureanu
0754c7c404
FIX: Various fixes to support posts with no user (#8877)
* Do not grant badges for posts with no user
* Ensure instructions are correct in Change Owner modal
* Hide user-dependent actions from posts with no user
* Make PostRevisor work with posts with no user
* Ensure posts with no user can be deleted
* discourse-narrative-bot should ignore posts with no user
* Skip TopicLink creation for posts with no user
2020-03-11 14:03:20 +02:00
Neil Lalonde
4b70719a48
Update translations 2020-03-05 12:45:42 -05:00
Dan Ungureanu
c62d5b139b
FIX: Allow users to create polls in PMs with non human users (#9055) 2020-03-02 14:29:40 -05:00
Dan Ungureanu
d461772661
FIX: Skip poll tutorial if user cannot create polls (#9058) 2020-02-27 16:01:59 +02:00
Neil Lalonde
b0675075f7 Update translations 2020-02-25 10:29:14 -05:00
Joffrey JAFFEUX
0ea11a9d49
FIX: ensures we don't attempt to create a new PM on an existing topic (#9029)
This fix attempts to both fix it at UI level and server side. A previous attempt related to this behavior has been made in commit: 49c750ca78
2020-02-24 08:55:12 -06:00
Neil Lalonde
637535fc6b Update translations 2020-02-13 15:00:16 -05:00
Neil Lalonde
2dd1ff79b4 Update translations 2020-01-20 11:00:44 -05:00
Arpit Jalan
91f8ada8e0 FIX: add missing translation key for narrative bot Italian locale. 2020-01-16 13:23:16 +05:30
Arpit Jalan
57081acc08 FIX: trigger commands are different for each locale, account for that. 2020-01-01 16:53:36 +05:30
Neil Lalonde
91b290c784 Update translations 2019-12-19 12:31:52 -05:00
romanrizzi
5431ae0a17 FIX: Don't raise an error if the user is not present 2019-12-11 11:03:31 -03:00
Neil Lalonde
50b98a47ac Update translations 2019-12-05 11:20:52 -05:00
Joffrey JAFFEUX
0d3d2c43a0
DEV: s/\$redis/Discourse\.redis (#8431)
This commit also adds a rubocop rule to prevent global variables.
2019-12-03 10:05:53 +01:00
Régis Hanol
455147cabe DEV: use DB.after_commit instead of delaying the job 2019-11-29 22:48:39 +01:00
Régis Hanol
5ae570a088 remove unnecessary symlink 2019-11-29 22:23:43 +01:00
Régis Hanol
3807484757 FIX: delay the 'send_advanced_tutorial_message' job to prevent race conditions
When a user accepts an invite with an email address that matches a group
which automatically awards its members Trust Level 2, a race condition might happen
when the 'send_advanced_tutorial_message' job runs.

That job is enqueued inside the 'user_promoted' event which is triggered inside a
transaction on the user record. If the job runs before the transaction is done,
the user record is invisible and this generates an exception.
2019-11-29 22:14:41 +01:00
David Taylor
22e713d2b0 FIX: Add skip_validations in one more place for narrative bot plugin
Followup to bbb814e58e
2019-11-20 15:43:42 +00:00
David Taylor
bbb814e58e FIX: Allow advanced tutorial when title emojis are disabled
We already skip validations for other uses of PostCreator in the narrative bot, so this commit adds it in the `reply_to` action as well
2019-11-20 15:29:06 +00:00
romanrizzi
f87d38fc7c Use correct variable name 2019-11-14 17:46:20 -03:00
Blake Erickson
73e33ce243 DEV: send url string to FileHelper and refactor another open-uri call
FileHelper.download requires a string not a URI. I also found another
instance of using open-uri directly and swapped it out to use
FileHelper.

I also updated it to not `read` a file if it comes back nil.

Follow up to: fe01099a38
2019-11-14 08:25:30 -07:00
Gerhard Schlager
f72730703a Update translations 2019-11-14 15:41:42 +01:00
Blake Erickson
fe01099a38 DEV: Be sure to read the file into string before base64
Follow up to: 08b4753843

If you don't use `read` base64 will error out with: "no implicit
conversion of Tempfile into String"
2019-11-14 05:55:36 -07:00
Blake Erickson
08b4753843 DEV: Use FileHelper instead for downloading narrative bot avatar
Follow up to

b69450bee2

Using FileHelper here allows us to not have to use another require for
open-uri and gives us all the benefits of FileHelper.
2019-11-14 05:23:51 -07:00
Blake Erickson
b69450bee2 FIX: need to require open-uri for discourse-narrative-bot plugin
By requiring open-uri this will fix the following error:

```
NoMethodError (private method `open' called for #<URI::Generic...
```

also switched to the shorter syntax and removed default options. Since
ruby 2.4 redirect is on by default.
2019-11-13 18:11:50 -07:00
Roman Rizzi
c63e84dc62
FEATURE: Send a message to new TL2 users and point them to the advanced tutorial (#8335)
* FEATURE: Send a message to new TL2 users and point them to the advanced tutorial

* DEV: Use a method to find the discobot user
2019-11-13 18:31:49 -03:00
Gerhard Schlager
94a34af702 Update translations 2019-11-05 16:52:48 +01:00
Robin Ward
7744b636e9 FIX: Handle nil case for avatar, just in case 2019-10-24 14:02:51 -04:00
Robin Ward
8b4e71cb21 FIX: Allow avatar downloads to follow redirects 2019-10-24 14:01:54 -04:00
Robin Ward
2c0efac25e FIX: Broken certificates 2019-10-24 12:39:58 -04:00
Roman Rizzi
835d2be4da
FIX: Rate limit and hijack certificate generation. (#8215)
To eliminate a DDOS attack vector, we're taking the following measures:

The endpoint will be rate-limited to 3 requests every 60 seconds (per user).
A 24 hours max-age cache header is sent with the response.
The route will be hijacked to generate the certificate in the background.
2019-10-21 13:14:15 -03:00
Robin Ward
74207ef03a Refactor search_answer to be dynamically inserted so it can be changed 2019-10-16 14:37:17 -04:00
Robin Ward
a37dafdd4d FIX: Use the quote generator in the example text
This way if a plugin customizes the quotes the example will match.
2019-10-16 13:40:44 -04:00
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
Neil Lalonde
930e70aba9 Update translations 2019-09-04 10:24:43 -04:00
Gerhard Schlager
8841563f8a Update translations 2019-08-26 14:36:46 +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
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
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
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
Neil Lalonde
5d7e34e0ad Update translations 2019-06-10 10:36:08 -04: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
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
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
Guo Xiang Tan
c00dab89e4 Fix the build take 2. 2019-05-13 11:22:48 +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
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
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
Kris
99efd12376 FIX: Url in Russian translation 2019-04-18 17:10:58 -04:00
Neil Lalonde
e7a6f0698d Update translations 2019-04-05 10:02:54 -04:00
Robin Ward
fd6513b516 FIX: Incorrect API in narrative bot 2019-03-28 14:29:33 -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
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
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
Neil Lalonde
aabc3375c6 Update translations 2019-03-01 11:28:07 -05: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
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
Neil Lalonde
024ba28525 Update translations 2019-01-28 10:27:20 -05: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
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
Neil Lalonde
d7656f30c3 Update translations 2019-01-02 12:32:38 -05: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
Neil Lalonde
124ae46763 Update translations 2018-12-14 10:34:12 -05:00
Neil Lalonde
d43d007929 Update translations 2018-11-29 10:51:16 -05:00
Claas Augner
52a5a5983a Update narrative bot copy 2018-11-21 00:04:54 +01: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
Gerhard Schlager
cbd6bd191a Add base path to relative links in 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
David Taylor
d963f96fa4 Update translations 2018-11-05 11:16:58 +00:00
Neil Lalonde
af39624d19 Update translations 2018-10-12 10:40:25 -04:00
Vinoth Kannan
9a0e4eec16 REFACTOR: discobot/TL4 :off_topic flag will hide the post 2018-10-11 17:12:35 +05:30
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
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
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
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
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
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
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
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
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
Neil Lalonde
072659c22a Update translations 2018-06-21 10:34:09 -04:00
Joffrey JAFFEUX
60ff0e9b8c
missing prettified files 2018-06-15 18:42:20 +02:00
Neil Lalonde
79854198c1 Update translations 2018-06-08 10:27:53 -04: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
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
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
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
Guo Xiang Tan
9f873fa66c FIX: Invalid setex expire time in DiscourseNarrativeBot::Actions#reset_rate_limits. 2018-05-25 16:02:15 +08:00
Gerhard Schlager
01b0d9d235 Update translations 2018-05-17 00:08:33 +02:00
Jeff Wong
19605e8b0b Feature: Hide plugins that ship with core from plugins panel 2018-05-15 15:50:17 -07:00
Neil Lalonde
8babf1c1e1 Update translations 2018-04-24 11:08:45 -04:00
Gerhard Schlager
4c53e81c69 Update translations 2018-04-06 14:51:09 +02:00
Michael Brown
b01a4c0ada lint: fix whitespace 2018-03-27 12:11:17 -04:00
Michael Brown
ed4d7ae1b9 FIX: discobot fails when max_emojis_in_title=0 (#5710)
* If discobot is enabled but max_emojis_in_title==0,
  try to strip emoji from the title when creating a new post
2018-03-27 18:00:29 +02:00
Régis Hanol
0187423c68
FIX: discobot certificate description wasn't escaped 2018-03-27 17:57:53 +02:00
Neil Lalonde
cd99ccdbf0 Update translations 2018-03-26 10:58:01 -04:00
Sam
ff6b47b0cf In development mode narrative bot breaks reload 2018-03-23 12:58:56 +11:00
Neil Lalonde
0c8df32903 Update translations, except ur because of errors 2018-03-07 14:11:56 -05:00
Neil Lalonde
2e5c18d130
Merge pull request #5652 from majakomel/add-slovenian-locale
Add Slovenian locale files
2018-03-06 15:59:01 -05:00
Maja Komel
e2a441ade9 Add Slovenian translations 2018-03-06 20:51:41 +01:00
Guo Xiang Tan
2f65393706 REFACTOR: Use Topic#private_message? to reduce duplication. 2018-03-05 15:39:22 +08:00
Neil Lalonde
32ad98161f Update translations 2018-02-15 16:36:03 -05:00
Neil Lalonde
f7042ecc85 Update translations 2018-01-31 11:19:21 -05:00
Gerhard Schlager
d9515c37b3 FIX: Show message from discobot when staged user signs up 2018-01-25 14:58:43 +01:00
Gerhard Schlager
e6fd7eb464 Remove misplaced translation files 2018-01-19 18:36:25 +01:00
AhmadF.Cheema
c4ffc85965 Fix typo in narrative-bot server.en.yml 2018-01-14 19:27:47 +01:00
Sam
7e3543d96f correct plugin specs 2018-01-12 14:42:05 +11:00
Jeff Atwood
dcbaf2f213 copyedit: personal, not private, message throughout 2018-01-11 16:04:14 -08:00
Neil Lalonde
e3965b4492 Update translations 2018-01-03 12:21:03 -05:00
Neil Lalonde
0567d523ee Update translations 2017-12-29 14:51:53 -05:00
Guo Xiang Tan
d80aca0484 FIX: Don't start discobot poll tutorial if polls are disabled.
https://meta.discourse.org/t/discobot-dont-take-users-through-the-poll-tutorial-if-its-not-enabled/76604/3
2017-12-22 15:46:46 +08:00
Guo Xiang Tan
32171ad286 FIX: Invalid logo in discobot's certificate when SiteSetting.logo_small_url is blank.
https://meta.discourse.org/t/broken-image-in-discobot-certificate-with-no-logo-small-url/76594/2
2017-12-22 09:36:53 +08:00
Guo Xiang Tan
ee1b90503c FIX: Error when an invalid date is passed to certificate generator.
https://meta.discourse.org/t/broken-image-in-discobot-certificate-with-no-logo-small-url/76594/2
2017-12-22 09:36:52 +08:00
Neil Lalonde
7e3c4b4b2f Update translations 2017-12-20 15:28:29 -05:00
blokovi
0df1c85fd3 FEATURE: Serbian translation (#5443) 2017-12-19 12:26:06 +01:00
Neil Lalonde
929aa98723 Update translations 2017-12-11 12:01:57 -05:00
Kyle Zhao
c52f747031 FEATURE: Catalan Translations (#5404) 2017-12-07 10:36:25 +01:00
Neil Lalonde
978cf9485f Update translations 2017-12-06 10:25:12 -05:00
Neil Lalonde
1603dcf0d1 Update translations 2017-11-30 15:32:15 -05:00
Régis Hanol
4bc2ce2f4d didn't mean to remove that seed 2017-11-23 17:00:47 +01:00
Régis Hanol
a38391a6bc FIX: ensure discobot always has a primary email 2017-11-23 16:54:40 +01:00
Quim Gil
e4464351a2
Changing misattributed Mahatma Gandhi's quote
As reported at https://meta.discourse.org/t/gandhi-misattributed/74022
2017-11-14 00:37:20 +01:00
Neil Lalonde
13c91fc7ec Update translations 2017-11-13 15:02:53 -05:00
Guo Xiang Tan
442d4bff85 Add onceoff job to remap bot images link.
https://meta.discourse.org/t/discobot-tutorial-broken-elipsis-and-bookmark-png-images-appear-to-be-missing-on-my-site/73294/12
2017-11-07 23:36:59 +08:00
Neil Lalonde
419d7daf4b Update translations 2017-10-30 10:58:17 -04:00
Sam
7ca08216bd FIX: ensure we have no dangling db connections on threads
This correct 10 second timeouts in dev mode, when reloader kicks in
2017-10-30 14:24:15 +11:00
Joffrey JAFFEUX
7bccd47315 remove mistakenly checked file 2017-10-20 07:07:51 -07:00
Joffrey JAFFEUX
ae1743c61f [WIP] select-box-kit refactoring 2017-10-19 12:51:08 -07:00
Robin Ward
838568cbc3 Refactor flag types for more customization 2017-10-19 13:55:23 -04:00
Neil Lalonde
0a31190254 Update translations 2017-10-13 09:58:41 -04:00
Guo Xiang Tan
6cb29e3e20 Remove custom symlinks in discourse-narrative-bot. 2017-10-10 13:46:58 +08:00
Neil Lalonde
3a29ba71a3 Update translations 2017-10-06 10:37:57 -04:00
Guo Xiang Tan
4ba5e678d8 Require dependencies to enable live reload in dev for Sidekiq. 2017-10-06 11:39:00 +08:00
Neil Lalonde
d2d272c5f1 Update translations 2017-09-28 13:37:19 -04:00
Guo Xiang Tan
23b787e0a6 Require dependency otherwise it causes Sidekiq to lock up in development. 2017-09-25 13:48:59 +08:00
Guo Xiang Tan
77d4c4d8dc Fix all the errors to get our tests green on Rails 5.1. 2017-09-25 13:48:58 +08:00
Gerhard Schlager
a1ee61ec25 handle empty locale file in Transifex pull script 2017-09-16 23:33:21 +02:00
Gerhard Schlager
de19c8e70c update translations 2017-09-16 22:42:28 +02:00
Régis Hanol
2a140b3848 update translations 2017-09-16 00:53:23 +02:00
Neil Lalonde
346442134e Update translations 2017-09-14 11:02:39 -04:00
Robin Ward
e41a828774 Update translations 2017-08-31 14:50:40 -04:00
Neil Lalonde
ea969d1ed0 FEATURE: add Thai language 2017-08-25 12:33:09 -04:00
Guo Xiang Tan
950fa9e3a8 FIX: Skip trigger match should be case insensitive.
https://meta.discourse.org/t/discobot-not-skipping-tutorial/68498
2017-08-22 07:45:46 +09:00
Neil Lalonde
3b7657e4b3 Update translations 2017-08-16 11:38:45 -04:00
Neil Lalonde
130ae2cd4b FEATURE: add Latvian language 2017-08-15 11:40:00 -04:00
Jeff Atwood
c1228dab25 improve discobot onebox link help 2017-08-10 14:15:30 -07:00
Guo Xiang Tan
3f24ed2b3e Can't revert due to incompatibility of new site setting types.
Revert "Revert "FEATURE: Site settings defaults per locale""

This reverts commit 439fe8ba24.
2017-08-07 10:43:09 +09:00
Guo Xiang Tan
439fe8ba24 Revert "FEATURE: Site settings defaults per locale"
This reverts commit 468a8fcd20.
2017-08-07 10:31:50 +09:00
Erick Guan
468a8fcd20 FEATURE: Site settings defaults per locale
This change-set allows setting different defaults for different locales. 

It also:

- Adds extensive testing around site setting validation

- raises deprecation error if site setting has the default property based on env

- relocated site settings for dev and tests in the initializer

- deprecated client_setting in the site setting's loading process

- ensure it raises when a enum site setting being set

- default_locale is promoted to `required` category.

- fixes incorrect default setting and validation

- fixes ensure type check for site settings

- creates a benchmark for site setting

- sets reasonable defaults for Chinese
2017-08-02 12:24:19 -04:00
Neil Lalonde
2feec43bd7 Update translations 2017-08-01 13:11:52 -04:00
Guo Xiang Tan
0eb7159e51 UX: Discobot advanced tutorial certificate does not work with dark theme.
https://meta.discourse.org/t/discobot-assets-certificate-svg/65523/11?u=tgxworld
2017-07-31 15:27:47 +09:00
Guo Xiang Tan
5012d46cbd Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
Arpit Jalan
d666b73893 Update translations. 2017-07-20 14:57:02 +05:30
Leo McArdle
d0b027d88d FEATURE: phase 1 of supporting multiple email addresses 2017-07-20 11:22:27 +09:00
Sam
14c2439473 correct specs so they run on latest 2017-07-18 15:45:23 -04:00
Guo Xiang Tan
78bb367b0a FIX: Discobot's certificate shouldn't blow up on non 200 response.
https://meta.discourse.org/t/discobot-assets-certificate-svg/65523/6
2017-07-14 15:16:29 +09:00
Guo Xiang Tan
f1141ee4f6 Revert "Convert emoji keywords in bot narrative to use native characters."
This reverts commit bfc4f15b93.

* Transifex doesn't like those unicode strings.
2017-07-14 11:27:15 +09:00
Guo Xiang Tan
bfc4f15b93 Convert emoji keywords in bot narrative to use native characters.
* Makes the narrative work even when emoji is disabled.
2017-07-13 16:04:35 +09:00
Guo Xiang Tan
c049e18203 FEATURE: Allow tutorials to declare prerequisite before it starts. 2017-07-13 15:12:45 +09:00
Neil Lalonde
d1d43ff5d9 FIX: report discobot messages as system messages instead of user-to-user 2017-07-12 16:00:18 -04:00
Robin Ward
f1a6449e4b SECURITY: Remove disposable invite feature 2017-07-07 20:24:39 -04:00
Arpit Jalan
25d70ec900 Update Translations 2017-07-05 11:35:35 +05:30
Neil Lalonde
febfe27669 Update translations 2017-06-26 14:56:22 -04:00
Guo Xiang Tan
a23ce56682 Update translations. 2017-06-19 12:39:30 +09:00
Guo Xiang Tan
e7571d1c5d Merge pull request #4933 from tgxworld/use_username_in_cert
FIX: Use username in bot's certificate.
2017-06-19 07:24:55 +09:00
Guo Xiang Tan
f8a46c510f FIX: Recover post tutorial does not work when SiteSetting.delete_removed_posts_after is 0. 2017-06-16 13:03:34 +09:00
Guo Xiang Tan
716b0235f9 FIX: Use username in bot's certificate.
* The default name generated can be weird sometimes.
2017-06-16 10:32:43 +09:00
Robin Ward
8ae445766f Upgrade Ember to 2.13 2017-06-15 10:12:07 -04:00
Arpit Jalan
4112c2b883 Update translations 2017-06-12 21:24:40 +05:30
Guo Xiang Tan
e888369f51 UX: Don't send emails for discobot notifications. 2017-06-12 17:00:27 +09:00
Guo Xiang Tan
a7ed6bd9e1 Use User#username_lower instead. 2017-06-12 10:58:31 +09:00
Robin Ward
d8ba1c66d5 FIX: Don't fail seed if avatar can't be downloaded 2017-06-09 11:01:48 -04:00
Régis Hanol
6997925a52 Merge pull request #4910 from jomaxro/patch-2
Add missing URL
2017-06-08 14:00:37 +02:00
Guo Xiang Tan
977bbb1f45 FIX: Bot mentioned check should be case insensitive. 2017-06-08 19:00:07 +09:00
jomaxro
dbaf7ad052 Add missing URL 2017-06-08 00:14:20 -04:00
Guo Xiang Tan
677fbc783d Fix randomly failing spec. 2017-06-08 05:47:44 +09:00
Arpit Jalan
d326784ecf Update translations 2017-06-07 20:13:54 +05:30
Guo Xiang Tan
17c29c972b Move the constant as well. 2017-06-06 15:38:26 +09:00
Guo Xiang Tan
c1dc6f6cd7 FIX: Track should only continue if user is alone with bot in a PM. 2017-06-06 09:47:00 +09:00
Guo Xiang Tan
30f2758404 FIX: Ensure that we cancel any timeout jobs when terminating a track. 2017-06-05 16:23:25 +09:00
Guo Xiang Tan
3621647fb5 FIX: Bot should only respond to regular posts. 2017-06-05 15:21:19 +09:00
Guo Xiang Tan
cd2869c767 Revert "Skip validations when Discobot creates new posts."
This reverts commit ca7e906774.

Post validations are already skipped for admin users. Skipping
validations cause polls to not work.
2017-06-03 07:18:23 +09:00
Guo Xiang Tan
418cb09713 Ensure that we skip validations when creating a post on behalf of a user. 2017-06-03 07:15:08 +09:00
Neil Lalonde
ceedec894d fix narrative bot for subfolder in translation files 2017-06-02 10:07:16 -04:00
Neil Lalonde
23dfddbfb4 FIX: narrative bot on subfolder installs 2017-06-01 15:15:34 -04:00
Guo Xiang Tan
edbb876d1b FIX: Discobot welcome post delay should start counting when a user logs in. 2017-06-01 21:02:29 +09:00
Guo Xiang Tan
ae5cc217cd Avoid monkey patching which causes weird reloading error in dev. 2017-06-01 12:06:25 +09:00
Neil Lalonde
e22d88c91d Add Franch and Slovak translations for narrative bot 2017-05-31 13:56:41 -04:00
Arpit Jalan
304090f759 Update translations 2017-05-31 22:36:20 +05:30
Guo Xiang Tan
ca7e906774 Skip validations when Discobot creates new posts. 2017-05-31 17:51:05 +09:00
Guo Xiang Tan
4144ea34a2 Rename a test file. 2017-05-31 06:38:38 +09:00
Arpit Jalan
da23c446c0 fix the build 2017-05-29 13:22:04 +05:30
Arpit Jalan
266acbcc6c Update Translations 2017-05-29 12:23:49 +05:30
Guo Xiang Tan
7ffdb6be75 Switch to a unicorn image that we know is free for commercial use.
* Source: https://pixabay.com/en/unicorn-galaxy-unicorn-galaxy-star-2007257/
2017-05-29 10:24:25 +08:00
Guo Xiang Tan
56f98de7b2 Use webmock to stub external web requests. 2017-05-26 15:19:09 +08:00
Guo Xiang Tan
144b810d0e Missed a spot when redefining a method. 2017-05-26 13:02:41 +08:00
Guo Xiang Tan
0ded5af616 Fix typo. 2017-05-26 11:13:45 +08:00
Guo Xiang Tan
18dac4ce9f UX: Remove restrictions on advanced user track. 2017-05-26 11:05:09 +08:00
Guo Xiang Tan
7028bdceed FIX: Allow users to rename discobot without having to rebuild. 2017-05-26 10:09:42 +08:00
Guo Xiang Tan
8268c98cf9 Remove unused image. 2017-05-26 09:47:36 +08:00
Guo Xiang Tan
9ee98a37b0 Revert "Remove unused image."
This reverts commit b7c49e77a8.
2017-05-26 09:45:54 +08:00
Guo Xiang Tan
b7c49e77a8 Remove unused image. 2017-05-26 09:29:38 +08:00
Neil Lalonde
bb208be822 Update translations 2017-05-25 09:55:55 -04:00
Guo Xiang Tan
ee23ce5acc FIX: Allow advanced tutorial to be started if badges are disabled. 2017-05-24 18:34:10 +08:00
Guo Xiang Tan
7f0561b621 Merge discourse-narrative-bot into core plugins. 2017-05-24 15:28:34 +08:00