Commit Graph

2699 Commits

Author SHA1 Message Date
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
Sam 374f951c65 fix live css changes on mobile 2015-06-22 14:35:11 +10:00
Neil Lalonde 56ec41cd83 Version bump to v1.4.0.beta3 2015-06-19 11:37:12 -04:00
Sam 1343d40558 PERF: deleting a post in huge topics was timing out
- add missing index to user actions for fast retrieval by post
- add missing indexes to users for fast retrieval of staff
- only refresh topic_users liked/bookmarked cache for affected users
2015-06-18 09:58:49 +10:00
Sam 0e4883a8ae correct regression where monitoring thread crashed out
add logging
2015-06-16 11:16:33 +10:00
Sam 1f9761e85d FEATURE: add a header to denote an anonymous req was cached
(X-Discourse-Cached)
2015-06-16 10:30:06 +10:00
Robin Ward fb8ba5e137 FIX: `PG::UniqueViolation` when trying to use the same embed code
Previously providing an embed code already in use would result in
a logged server error. After this commit the error is gracefully
bubbled up from the `PostCreator`
2015-06-15 12:09:59 -04:00
Sam 861cd5d9b0 FIX: ensure child demon is correctly terminated from parent on stop 2015-06-15 12:36:47 +10:00
Sam 69ad0358c2 FIX: incorrect logic in email blocker
if mail.com was blocked, email.com was automatically blocked
2015-06-15 11:28:50 +10:00
Régis Hanol 189cb3ff12 FEATURE: move migrate_to_new_scheme into a background job
- new hidden site setting 'migrate_to_new_scheme' (defaults to false)
- new rake tasks to toggle migration to new scheme
- FIX: migrate_to_new_scheme also works with CDN
- PERF: improve perf of the DbHelper.remap method
- REFACTOR: UrlHelper is now a class
2015-06-12 12:07:57 +02:00
Neil Lalonde 74e825fff2 Version bump to v1.4.0.beta2 2015-06-11 16:07:02 -04:00
Chris Jester-Young 15cfb73aef Fix module name for RestoreDisabledError and FilenameMissingError. 2015-06-11 02:42:01 -04:00
Neil Lalonde 611b5f996e FIX: unpinned topics shouldn't remain pinned on categories page 2015-06-10 14:36:55 -04:00
Régis Hanol 6c7e737294 FIX: truncate topic image_url 2015-06-10 18:53:14 +02:00
Régis Hanol c1cf602de2 FIX: uploads:backfill_shas rake task 2015-06-10 17:19:58 +02:00
Sam Saffron b7a0a295c0 FIX: s3 cdn would break cooking if <img> tag had no src 2015-06-10 19:28:21 +10:00
Sam Saffron 49ca248186 FEATURE: allow distributed cache to handle Set as value 2015-06-10 06:13:36 +10:00
Robin Ward 7b6d6b76eb FEATURE: Multiple embeddable hosts
- Also refactors two site settings components into one, with tests
2015-06-09 13:25:43 -04:00
Robin Ward 2da229cdaa Merge pull request #3528 from techAPJ/patch-3
FIX: staff should be immune to max_invites_per_day setting
2015-06-05 12:57:28 -04:00
Régis Hanol 6000a37ff1 new 'uploads:migrate_to_new_pattern' task 2015-06-05 18:37:34 +02:00
Robin Ward c6cd1928be Simple "cook" for email imports from mailing lists 2015-06-05 11:46:36 -04:00
Arpit Jalan 4d593d1c18 FIX: staff should be immune to max_invites_per_day setting 2015-06-05 10:22:41 +05:30
Neil Lalonde f1637fc11e FEATURE: plugins can register a custom admin quick start topic that will be seeded into new sites 2015-06-04 15:56:17 -04:00
Robin Ward fb7baeb7a2 Never enqueue posts from staff 2015-06-04 11:35:55 -04:00
Neil Lalonde 1151b01caf Version bump to v1.4.0.beta1 2015-06-03 16:56:55 -04:00
Régis Hanol 74b121beeb Merge pull request #3518 from techAPJ/patch-3
FIX: do not block registration for whitelisted IP address
2015-06-03 12:37:50 +02:00
Régis Hanol 4dfb1de77e FIX: letter avatars command line 2015-06-02 19:11:37 +02:00
Régis Hanol 1067cde0d0 FEATURE: new letter avatars algorithm 2015-06-02 16:33:18 +02:00
Arpit Jalan 79f5eff68b FIX: do not block registration for whitelisted IP address 2015-06-02 15:06:45 +05:30
Arpit Jalan b7ac8448c6 Improve IP blocking error message 2015-06-02 07:48:26 +05:30
Neil Lalonde 5735f3b861 Version bump to v1.3.0.beta11 2015-06-01 17:02:26 -04:00
Neil Lalonde b5e4fca539 Revert "Version bump to v1.4.0.beta1" 2015-06-01 16:50:13 -04:00