Commit Graph

2730 Commits

Author SHA1 Message Date
Gerhard Schlager 825be30844 FIX: I18n.exists? should use locale fallbacks 2015-09-19 23:33:11 +02:00
Gerhard Schlager 49dc470a28 Add spec to check locale files for duplicate keys 2015-09-19 00:14:26 +02:00
Robin Ward c1a9e32b48 FIX: When recovering a post, it should recreate user actions 2015-09-18 12:48:43 -04:00
Sam 681334701d FIX: Stop aggregating likes 2015-09-18 17:50:15 +10:00
Jeff Atwood a58b6c5ac0 Merge pull request #3785 from riking/410
FIX: Return 410 Gone for deleted topics you could otherwise see
2015-09-18 00:21:27 -07:00
Sam 664e2209e5 FIX: order latest was broken 2015-09-18 17:16:53 +10:00
Kane York c9e4745fe8 FIX: Return 410 Gone for deleted topics you could otherwise see 2015-09-18 00:14:43 -07:00
Sam c1ecd6f4ce update annotations 2015-09-18 10:41:10 +10:00
Sam ec4a1bb2c4 FIX: page tracking was not properly tracking transitions
PERF: move closure to self contained method so env is released earlier.
2015-09-17 11:06:33 +10:00
Robin Ward 23646494eb FIX: Don't return alternative post types in search queries 2015-09-16 14:51:20 -04:00
Neil Lalonde 9b543f65fb Version bump to v1.4.0.beta12 2015-09-16 11:32:31 -04:00
Régis Hanol 5277ec1ac0 FIX: ensure we have a bucket before enabling backups to S3 2015-09-16 15:55:26 +02:00
Sam a7b34cd16b rename to badge, better more consistent name 2015-09-16 08:51:28 +10:00
Sam 6496895096 FEATURE: search for all posts by a group 2015-09-15 17:39:14 +10:00
Sam 17d999ab12 FEATURE: search for all posts of users that have a badge
with_badge:"badge name" will allow you to search only
posts of users with a particular badge
2015-09-15 17:22:08 +10:00
Neil Lalonde db1820f39c make it possible for plugins to add methods to classes that don't follow naming conventions 2015-09-14 16:10:54 -04:00
Robin Ward 5af0f5f80e FEATURE: Whisper posts 2015-09-11 14:05:21 -04:00
Kane York 460243d7a3 FIX: Give 403 for deleted topics, +lots of tests 2015-09-11 08:29:44 -07:00
Régis Hanol 93f9dcfcec FIX: don't overwrite custom uploaded avatar when selecting gravatar
FIX: remove unecessary serialized fields
2015-09-11 15:10:56 +02:00
Arpit Jalan d73d4d4769 FIX: UserNameSuggester should not suggest usernames with a sequence of 2 or more special chars 2015-09-11 16:53:26 +05:30
Kane York aca70805f1 FIX: Discourse.BaseUri should not default to / 2015-09-10 17:34:08 -07:00
Régis Hanol e43034f08f Revert "FEATURE: SVG letter avatars (based on @eviltrout's spike)"
This reverts commit cd77465788.
2015-09-11 00:23:52 +02:00
Régis Hanol cd77465788 FEATURE: SVG letter avatars (based on @eviltrout's spike) 2015-09-11 00:11:48 +02:00
Sam 90ad943dd3 PERF: skip optimizing large letter avatar makes image bigger 2015-09-10 11:54:31 +10:00
Neil Lalonde 5b8917e578 Version bump to v1.4.0.beta11 2015-09-09 11:47:53 -04:00
Régis Hanol 3ee5cea9e2 fix the build 2015-09-09 15:34:53 +02:00
Régis Hanol 31e8309f05 FIX: ensure we never have a string when an enum is Fixnum - Take 2 2015-09-09 14:34:44 +02:00
Régis Hanol 9a999bfe84 FIX: ensure we never have a string when an enum is Fixnum 2015-09-09 12:59:49 +02:00
Régis Hanol d5a2029026 FIX: category permissions weren't properly loaded when /categories is the homepage
FIX: don't scope to a specific category when creating a new topic from /categories
2015-09-07 18:52:53 +02:00
Régis Hanol a501947d67 FEATURE: suppress categories from the homepage 2015-09-02 20:25:18 +02:00
Robin Ward da25abfcc9 Merge pull request #3714 from riking/live-settings
FEATURE: Live-update site settings
2015-09-01 12:03:30 -04:00
Robin Ward b41b176bc6 Support for `value_list` in site settings 2015-09-01 11:54:16 -04:00
Kane York d4c68f2096 FEATURE: Live-update site settings 2015-08-31 10:40:50 -07:00
kerryliu c85835afc3 FIX: rescale image during cooked_post_processor when only img height or width is specified 2015-08-29 15:23:25 -07:00
Robin Ward 42e510753d Support for Acceptance tests in plugins 2015-08-27 17:07:11 -04:00
Régis Hanol 96c23d51a2 FIX: don't break the message bus when restoring a backup 2015-08-27 20:02:13 +02:00
Régis Hanol 4ba89eec27 FIX: removing a default category wasn't working 2015-08-26 22:40:16 +02:00
Sam 1c6250bff8 FIX: if an enum is Fixnum do not allow strings to live in it 2015-08-26 16:39:09 +10:00
Neil Lalonde 3faeeca5c8 FIX: plugins that use models in their initialize section might fail when bootstrapping a new database 2015-08-25 16:38:25 -04:00
Neil Lalonde fd28d4c978 Version bump to v1.4.0.beta10 2015-08-25 15:06:01 -04:00
Régis Hanol e7e96eb8af fix the run-qunit scripts with backward compatible syntax 2015-08-25 17:37:36 +02:00
Guo Xiang Tan 6a31a5d52b Extract logic for censored-words so that it can be reused. 2015-08-25 22:26:01 +08:00
Régis Hanol 294669c856 FIX qunit test runner for phantomjs 2.0 2015-08-25 10:42:19 +02:00
Sam f85b59b6d4 FIX: you could not manually trigger jobs via sidekiq ui 2015-08-24 16:44:41 +10:00
Sam 88a5a676a7 lower error level on onebox failures 2015-08-24 10:43:07 +10:00
Régis Hanol bef80633b1 FEATURE: global admin override of most of the user preferences 2015-08-21 20:39:21 +02:00
Robin Ward 2b72bd3592 FIX: Missed incrementing `idx` 2015-08-21 11:39:40 -04:00
Robin Ward 37f2d8c73c Adds more helpers for plugin authors
`add_class_method` can be used to add a class method that only
executes when the plugin is enabled.

`add_model_callback` can be used to attach a callback to an
ActiveRecord model such as `before_save` that will only execute
when the plugin is enabled.
2015-08-21 11:29:45 -04:00
Kane York 2363897a25 FEATURE: Arbitrary validations for site settings 2015-08-20 18:27:19 -07:00
Sam 851c04478a Merge pull request #3682 from riking/dark-theme-fix
Dark theme fix, part 5
2015-08-21 10:32:10 +10:00
Kane York 7147c0e8af DEV: Replace sqrt() implementation with lib
Copied the needed functions out of https://github.com/terkel/mathsass
MIT license
2015-08-20 13:10:54 -07:00
Robin Ward d1c69189f3 FEATURE: Can edit category/host relationships for embedding 2015-08-20 15:56:04 -04:00
Robin Ward 320e4a83ac FIX: Don't cache translations in development mode 2015-08-20 12:05:15 -04:00
Robin Ward 00c9469fba FIX: Don't include admin in non-admin and vice versa 2015-08-19 15:12:15 -04:00
Robin Ward abd9b26642 Convert Badges / User Badges to ES6. 2015-08-19 12:09:10 -04:00
Sam 5f5d055a86 only if \u0000 is included for the perf 2015-08-19 12:32:45 +10:00
Sam 431def1f52 need to dup strings, some may be frozen 2015-08-19 12:32:45 +10:00
Sam 714f841f0a FIX: null bytes in user input should not cause post creation to fail 2015-08-19 12:15:38 +10:00
Sam b38a1309f7 FIX: add more quoting to avoid invalid terms 2015-08-19 09:27:47 +10:00
Sam 27b1ec2917 FIX: incorrect emoji stripping logic 2015-08-19 09:12:08 +10:00
Régis Hanol 1b44924cb0 replace 'open_uri_redirections' gem with a single freedom_patches file 2015-08-18 14:56:36 +02:00
Robin Ward 7eb32be4de Add support for plugins to declare ES6 in the admin bundle 2015-08-17 15:03:55 -04:00
Régis Hanol a3e76dc193 FIX: allow HTTP <-> HTTPS redirections when downloading images 2015-08-17 19:21:30 +02:00
Neil Lalonde 7581a7d869 move notification about low disk space into its own method 2015-08-14 17:46:15 -04:00
Régis Hanol 23a5c6444a FIX: move topic links and quoted posts extraction to the PostRevisor 2015-08-14 19:33:32 +02:00
Sam 23b8a408f7 FIX: serialize post processing
This avoids all sorts of nasty race conditions in job schedular
2015-08-14 13:05:13 +10:00
Sam ad2de1804e Correct bad where clause when no category/user found 2015-08-14 11:53:16 +10:00
Sam 1f044350f6 stop running exec_sql through active record
this avoids double logging
2015-08-14 10:01:38 +10:00
Robin Ward 9b7c4023e8 Run eslint instead of jshint, remove rbx 2015-08-13 15:22:33 -04:00
Robin Ward a89241f0b9 Don't include code in files for jshint anymore, eslint is run on command
line
2015-08-13 15:19:27 -04:00
Robin Ward b0541500b4 FIX: eslint deprecations 2015-08-13 15:14:08 -04:00
Robin Ward 946e34f65c Use eslint in `docker_test` 2015-08-13 14:55:53 -04:00
Robin Ward 22844b9e46 Ember 1.12 support 2015-08-13 11:14:16 -04:00
Robin Ward e2e3e7c0e0 Add ES6 support to more files 2015-08-13 10:49:08 -04:00
Neil Lalonde 766903c430 Version bump to v1.4.0.beta9 2015-08-13 10:41:03 -04:00
Sam 94a130a4e4 FIX: widen distributed mutex to avoid race condition 2015-08-13 18:53:30 +10:00
Sam ecac786f86 FIX: remove invalid chars from ts_query helper 2015-08-13 17:55:10 +10:00
Régis Hanol 6669a2d94d FEATURE: per-topic unsubscribe option in emails 2015-08-12 23:00:16 +02:00
Régis Hanol 3f71fa15c9 reduce log level when we can't reach an image while cooking a post 2015-08-12 16:10:42 +02:00
Régis Hanol ac8e90674b FIX: be more lenient when creating a post with a username that is no longer valid 2015-08-12 15:54:51 +02:00
Sam 4a75da4fa9 Extensibility: allow validation of topics to be extended
Add before_create_topic and after_validate_topic extensibility points
2015-08-11 15:46:32 +10:00
Sam 139314c213 FIX: search for 1.5 etc was broken
FEATURE: search by exact phrase

Use PG tokenizer to split up search phrase instead of relying on Ruby code
This produces much more accurate tokenization
2015-08-10 17:41:14 +10:00
Régis Hanol 485d9a5a52 Log an error when we can't reach an image to get its dimensions 2015-08-07 19:31:15 +02:00
Sam fd63d89753 FEATURE: simpler definition of enum types 2015-08-07 11:41:48 +10:00
Neil Lalonde 75ee523a83 Version bump to v1.4.0.beta8 2015-08-06 15:32:51 -04:00
Sam 11d39345b3 FIX: always allow tl1 through for typing speed tests 2015-08-06 10:07:18 +10:00
Régis Hanol 82d743a052 FIX: don't use emojis as topic image 2015-08-05 12:57:31 +02:00
Sam ca393bcc53 FEATURE: optional regex to be applied against first posts
for spam prevention you can add a regex to auto_block_first_post_regex
this will be applied against all first posts, if it matches post will go
into the approval queue and user will be blocked
2015-08-05 13:08:21 +10:00
Sam 6fdd53e3d6 FEATURE: auto block fast typers
if tl0 enter text too fast they get automatically blocked, configurable
2015-08-04 12:56:37 +10:00
Sam 01ad88f1ed FEATURE: min_first_post_typing_time
If a user spends less than 3 seconds typing
first post they will automatically enter the approval queue
2015-08-04 10:57:34 +10:00
Sam 7b8b96446e FEATURE: track statistics around post creation
- how long were people typing?
- how long was composer open?
- how many drafts were created?
- correct, draft saved to go away after you continue typing

store in Post.find(xyz).post_stat
2015-08-03 14:29:15 +10:00
Régis Hanol d7aa4e81d6 revert 8f435fcbf6 2015-07-31 15:22:30 +02:00
Neil Lalonde 3cfb1dedf3 Version bump to v1.4.0.beta7 2015-07-30 15:46:13 -04:00
Robin Ward 3c742918fe FIX: Transpile unicode to fix opera issue 2015-07-30 15:16:07 -04:00
Robin Ward 9911e92e24 Merge pull request #3609 from riking/patch-7
FEATURE: Localization fallbacks
2015-07-30 10:44:29 -04:00
Sam 5a0dc12733 correct regression 2015-07-30 17:02:28 +10:00
Sam 3ccae5ed32 FIX: CDN paths not respected for background category images 2015-07-30 10:25:36 +10:00
Kane York 13d56eb989 FEATURE: Add CommentMigration for db column comments
For documenting the database (will be used in discourse-data-explorer)
2015-07-28 13:14:07 -07:00
Robin Ward bb93a345eb UX: Use smaller messages for moderator actions. 2015-07-27 10:09:21 -04:00
Régis Hanol 2473a00b26 FIX: improve smoke tests 2015-07-27 11:07:42 +02:00
Sam 2876725e1b REFACTOR: remove hacky search from discovery 2015-07-27 16:47:06 +10:00
Sam 41ceff8430 UX: move search to its own route
previously search was bundled with discovery, something that makes stuff confusing internally
2015-07-27 16:47:06 +10:00
Régis Hanol d2b59bf7f2 Merge pull request #3628 from tgxworld/emoji_in_user_stream
FEATURE: Display emojis in user stream.
2015-07-25 15:53:54 +02:00
Sam 7a5a195dc0 FIX: properly support HTTPS CDN on HTTP site
Previously we changed all CDN links to schemaless.

This is desirable for non HTTPS sites, to ease migration to HTTPS.
It is not desirable for secure sites.

Once site is secure or CDN is secure a rebake should be required
to move it back to non-secure.
2015-07-24 14:08:32 +10:00
Robin Ward 33a5fce124 Importer for mbox format 2015-07-23 18:37:40 -04:00
Guo Xiang Tan 7c1e16da54 FEATURE: Display emojis in user stream. 2015-07-23 23:50:01 +08:00
Sam 940be8261a FIX: going to PM directly results in 500 error
regressed 1 day ago.
2015-07-23 09:57:42 +10:00
Sam 3a54923116 FIX: permalink normalization not applied at constraint
implement permalink import for lithium
2015-07-22 13:40:45 +10:00
Sam 90b85e5b23 FIX: missing category from title in non-js view 2015-07-22 10:26:58 +10:00
Kane York d6129001b9 FIX: Provide proper source map URLs with a CDN 2015-07-21 11:52:54 -07:00
Régis Hanol 0f480ac629 Merge pull request #3602 from lukegb/patch-1
Fix LocalStore.remove_file to not raise if source doesn't exist
2015-07-20 14:39:55 +02:00
Neil Lalonde a23a04a1e5 Version bump to v1.4.0.beta6 2015-07-17 21:31:16 -04:00
Neil Lalonde 5e38512b1b Version bump to v1.4.0.beta5 2015-07-17 11:23:12 -04:00
Sam 5db345705b allow views to be specified in import mode 2015-07-16 16:11:20 +10:00
Sam 3a60d96573 Merge pull request #3611 from riking/change-owner
FIX: Allow to change ownership on deleted users' posts
2015-07-16 08:41:28 +10:00
Kane York 61ea8c6f72 FIX: Allow to change ownership on deleted users' posts 2015-07-15 15:29:35 -07:00
Régis Hanol c17f8d1769 keep pretty_text in sync with client code 2015-07-16 00:01:00 +02:00
Kane York e3b778a23a fixup: support merging N languages (js) 2015-07-15 14:30:16 -07:00
Kane York 15905be788 Disable in development (js) 2015-07-15 14:25:24 -07:00
Kane York cb395662d0 Add JsLocaleHelper tests for i18n fallback 2015-07-15 14:23:41 -07:00
Kane York ecfa17b5a7 FEATURE: Localization fallbacks (server-side)
The FallbackLocaleList object tells I18n::Backend::Fallbacks what order the
languages should be attempted in. Because of the translate_accelerator patch,
the SiteSetting.default_locale is *not* guaranteed to be fully loaded after the
server starts, so a call to ensure_loaded! is added after the locale is set for
the current user.

The declarations of config.i18n.fallbacks = true in the environment files were
actually garbage, because the I18n.default_locale was
SiteSetting.default_locale, so there was nothing to fall back to. *derp*
2015-07-15 10:17:36 -07:00
Kane York 728845d008 FEATURE: Localization fallbacks (client)
This patch sets I18n.defaultLocale in the Discourse.start() script block (it
was formerly always 'en') to SiteSetting.default_locale, and patches
translate() to perform fallback to defaultLocale followed by english.
Additionally, when enable_verbose_localization() is called, no fallbacks will
be performed.

It also memoizes the file loading operations in JsLocaleHelper and strips out
translations from the fallbacks that are also present in a prefered language,
to minimize file size.
2015-07-15 10:17:28 -07:00
Régis Hanol b0802abae2 FIX: crop & optimize user background profile/card images 2015-07-15 17:15:43 +02:00
Robin Ward 8a9fa3e5bf FIX: Error reloading dev due to conditional require 2015-07-14 14:52:35 -04:00
Robin Ward 32a1610b5d FIX: Search had wrong preload store key 2015-07-14 11:58:42 -04:00
Arpit Jalan e9a81064e7 Revert "FIX: fixnum type site setting can't be more than 20000"
This reverts commit 636cc66e1f.
2015-07-13 22:53:44 +05:30
Arpit Jalan 636cc66e1f FIX: fixnum type site setting can't be more than 20000 2015-07-13 18:58:45 +05:30
Luke GB acc05dd3a5 Fix LocalStore.remove_file to not raise if source doesn't exist
FileUtils.move actually ends up raising an "unknown file type" error if the file doesn't exist instead of Errno::ENOENT.

It's possible to rescue this, but in the end it's easier to just ask move not to throw an error, since we're going to throw it away anyway.
2015-07-12 14:14:12 +01:00
Sam 4a5a2d869e FEATURE: search by user id or category id
FIX: more search results work if you open in new tab
FIX: carry context to full page search
2015-07-10 16:31:28 +10:00
Robin Ward 4706b77940 Backwards compatibility with deprecation for `Discourse.PostMenuView` 2015-07-07 15:18:19 -04:00
Neil Lalonde 86cd1a19cc FEATURE: page view stats for mobile view 2015-07-03 17:19:33 -04:00
Kane York af042ffe5e FEATURE: Per-plugin settings buttons, "Enabled" column
Also, added enabled_site_setting to the Poll plugin so it shows up properly.
2015-07-02 10:59:06 -07:00
Neil Lalonde 18613a8378 Version bump to v1.4.0.beta4 2015-07-01 17:12:12 -04:00
Guo Xiang Tan efff3351bf Update Disqus importer. 2015-07-01 21:51:19 +08:00
Robin Ward 7dbc2590a5 Support for auth plugins to freeze the username 2015-06-26 15:55:33 -04:00
Robin Ward b52e5d1536 FIX: `default_avatars` wasn't being used for some server side templates 2015-06-26 13:38:09 -04:00
Robin Ward 008dd96721 FIX: Embedding posts was broken 2015-06-26 11:45:56 -04:00
Sam 1408563a7f HACK: allow for multiple hits on same topic for search 2015-06-26 17:47:20 +10:00
Sam 9a23a0bbbd FEATURE: topic:TOPIC_ID to search within topic 2015-06-26 17:47:20 +10:00
Sam 5373413102 skip runner params changed 2015-06-26 14:02:17 +10:00
Sam d6d9a7fa09 FEATURE: per host regular jobs
These are jobs that will run on every host that is running discourse.

If you have multiple hosts running the same site you get independent
schedules
2015-06-26 13:37:05 +10:00
Robin Ward fc090b4568 FIX: With many stickies some latest posts got missed 2015-06-25 16:26:09 -04:00
Sam 8252f4e110 FEATURE: allow use of redis sentinel via redis_sentinels
Use: DISCOURSE_REDIS_SENTINELS and DISCOURSE_REDIS_HOST to configure redis
sentinel
2015-06-25 16:51:48 +10:00
Robin Ward 6422d5efbd Use the same component for similar topics as search results. 2015-06-24 15:08:22 -04:00
Robin Ward b4960d48b4 Better support for passing up errors when OmniAuth fails after auth 2015-06-24 12:12:43 -04:00
Sam 853553f329 FIX: in:bookmarks searching deleted bookmarks 2015-06-23 13:58:23 +10:00
Sam 63351d5629 FEATURE: in:first for searching first post 2015-06-23 13:39:40 +10:00
Sam e85df6b876 FEATURE: min_age and max_age search operators 2015-06-23 13:21:50 +10:00
Sam 13f1f90c67 REFACTOR: search improved so filters are extensible
- added posts_count filter
- fixed it so you can search with a filter only
2015-06-23 12:14:06 +10:00
Sam 41e427bd2e Work in progress, full page search 2015-06-22 18:09:08 +10:00