Jakub Macina
eaec35d230
Fix tag related advanced search tests into one context. Fix dynamic locale and select clause in search by all tags. Fix separator for all tags to plus sign.
2017-06-02 12:39:07 +02:00
Guo Xiang Tan
bd486100c0
Remove stubs on DiscourseEvent in tests.
2017-06-01 16:21:00 +09:00
Jakub Macina
6d1fafaff6
Add rspec tests for advanced search by tags.
2017-05-30 13:01:17 +02:00
Sam
0aed2533ac
Revert unread optimisation, has too many edge cases
2017-05-26 09:04:13 -04:00
Guo Xiang Tan
56f98de7b2
Use webmock to stub external web requests.
2017-05-26 15:19:09 +08:00
Guo Xiang Tan
f8f1548fd4
Revert "FIX: Use Excon to do its own stubbing"
...
This reverts commit 80af54460a
.
2017-05-26 13:04:25 +08:00
Sam
29fac1ac18
PERF: improve performance of unread queries
...
Figuring out what unread topics a user has is a very expensive
operation over time.
Users can easily accumulate 10s of thousands of tracking state rows
(1 for every topic they ever visit)
When figuring out what a user has that is unread we need to join
the tracking state records to the topic table. This can very quickly
lead to cases where you need to scan through the entire topic table.
This commit optimises it so we always keep track of the "first" date
a user has unread topics. Then we can easily filter out all earlier
topics from the join.
We use pg functions, instead of nested queries here to assist the
planner.
2017-05-25 15:07:30 -04:00
Robin Ward
cdbe027c1c
Refactor `FileHelper` to use keyword arguments.
2017-05-24 13:54:26 -04:00
Sam
f12490eae0
FIX: order:latest not working for search within topic
...
FEATURE: use 'l' as a shorthand for order:latest
2017-05-24 11:24:41 -04:00
Robin Ward
3b0cbf7013
FIX: Always allow downloads from CDN
2017-05-23 16:32:54 -04:00
Robin Ward
b81e7be9a1
FEATURE: Rate limit how often we'll crawl a destination IP
2017-05-23 15:03:04 -04:00
Robin Ward
36e477750c
FIX: Use same code path for downloading images
2017-05-23 14:51:30 -04:00
Robin Ward
e5e7a15a85
SECURITY: Never crawl by IP
2017-05-23 13:07:18 -04:00
Robin Ward
93a5fc62bf
FEATURE: A site setting to prevent crawling on private IP blocks
2017-05-23 11:56:06 -04:00
Robin Ward
80af54460a
FIX: Use Excon to do its own stubbing
2017-05-22 18:19:20 -04:00
Robin Ward
b51126dd5e
FIX: Reset the WebMock after before every test
2017-05-22 17:52:31 -04:00
Régis Hanol
9dddb81cf6
FIX: remove memoization on class method used in a job
2017-05-22 23:35:41 +02:00
Blake Erickson
4e8beda332
Merge pull request #4866 from JaredReisinger/admin-user-pagination
...
Add pagination to /admin/users/list API
2017-05-22 15:12:59 -06:00
Robin Ward
d4b16b487e
FIX: Another onebox head request
2017-05-22 17:00:19 -04:00
Robin Ward
a8d1e44943
FIX: Onebox will do a HEAD request first for redirects
2017-05-22 16:52:26 -04:00
Robin Ward
4c690f7089
Use `FinalDestination` to ensure public redirects for onebox
2017-05-22 16:42:49 -04:00
Robin Ward
b23fc2bf84
Helper to find the final destination for a URL
2017-05-22 15:52:41 -04:00
Régis Hanol
a7f337fa93
FIX: CDN wasn't properly applied to category background images when using S3
2017-05-22 18:37:01 +02:00
Robin Ward
28f486cb7a
FIX: Regular users shouldn't be able to invite to PMs if disabled
2017-05-19 12:57:21 -04:00
Régis Hanol
4fb335f1f0
FIX: don't process the same incoming email more than once
2017-05-18 16:43:07 +02:00
Régis Hanol
a1b8a3b52b
FIX: supports bare <li> when converting html to markdown
2017-05-17 15:05:11 +02:00
Jared Reisinger
645f648ea7
Merge remote-tracking branch 'upstream/master' into admin-user-pagination
2017-05-16 13:36:47 -07:00
Neil Lalonde
7821400141
FEATURE: staff can set a timer to remind them about a topic
2017-05-16 14:49:50 -04:00
Robin Ward
dd0cb6a117
FIX: Add missing test
2017-05-15 16:57:09 -04:00
Jared Reisinger
1dcd61fa34
Add pagination to /admin/users/list API
...
Prior to this, only the first 100 active/new/etc. users were available
via the `/admin/users/list` API. This change adds support for a
`page=#` querystring parameter so that *all* of the users can be
retrieved. Requests for pages past the last user result in an
empty-list response; requests for negative pages (or zero) just return
the first page.
Added tests to cover pagination.
2017-05-12 13:28:35 -07:00
Robin Ward
1fb08d24d9
FIX: Latest onebox adds more attributes to links for security
2017-05-12 15:49:56 -04:00
Neil Lalonde
8b9799507c
fix deploy problems due to renamed table
2017-05-12 15:17:25 -04:00
Sam
47ce674798
PERF: bypass wizard check after 15 topics are created
2017-05-12 10:18:43 -04:00
Neil Lalonde
55b61e9bea
rename topic_status_update to topic_timer
2017-05-11 18:27:53 -04:00
Sam
52ae63d5d7
FIX: when searching PMs also search group PMs
...
Users belonging to a group could not search for PMs unless explicitly added
to the PM unless admin
2017-05-11 15:59:03 -04:00
Sam
9b84cd832c
confirm in:private works for non staff
2017-05-11 15:06:45 -04:00
Robin Ward
b57b635d30
FIX: Extract `div` tags within `span`s
2017-05-09 12:33:54 -04:00
Robin Ward
addc85cd08
FIX: Don't let users edit wiki posts unless they can reply
2017-05-08 16:23:11 -04:00
Robin Ward
009e120e13
FIX: Don't raise an error when the img attribute cannot be found
2017-05-08 15:35:31 -04:00
Robin Ward
96c59c5b82
FIX: Don't notify or return flags on system users
2017-05-08 13:13:35 -04:00
Sam
7a15b44ac3
rename on_remove, on_drop
2017-05-04 14:03:17 -04:00
Sam
6a6eed4ed2
DEV: column dropper class for cleaner removal of superflous columns
...
Also fixes issues during deploy cause target column was renamed in
theme_fields
2017-05-04 10:15:41 -04:00
Guo Xiang Tan
4101db8b36
FIX: Invalid creation of `Theme` in wizard builder.
2017-05-04 11:44:23 +08:00
Régis Hanol
bf322281e3
Improve handling of inlined images in incoming emails
2017-05-03 23:02:02 +02:00
Régis Hanol
768c63c103
Add 'keep_cid_imgs' option to HTML to Markdown converter to improve incoming email parsing
2017-05-03 23:01:55 +02:00
Régis Hanol
e38014772b
FIX: skip hidden <img> (no tracking for you)
2017-05-03 19:40:34 +02:00
Régis Hanol
c8044c6956
FIX: skip hidden nodes when converting from HTML to Markdown
2017-05-03 19:34:03 +02:00
Régis Hanol
bff36de130
FIX: HtmlToMarkdown should not convert empty/bad <img> tags
2017-05-03 18:29:25 +02:00
Régis Hanol
c880af8120
FIX: properly trim whitespaces (including those pesky html entities)
2017-05-03 18:04:31 +02:00
Sam
342ef5f81a
FEATURE: out-of-the-box dark/light user selectable themes
2017-05-03 11:31:33 -04:00
Régis Hanol
edbf12622b
FIX: HtmlToMarkdown should not convert empty/bad <a> tags
2017-05-03 16:42:37 +02:00
Sam
946f25098f
Refactor theme fields so they support custom theme defined vars
...
This paves the way to allowing themes to specify uploads and so on.
2017-05-02 16:02:14 -04:00
Sam
ba9339b8d7
FIX: missing image-url helper
2017-05-01 15:32:02 -04:00
Robin Ward
b99aedeccc
Merge pull request #4838 from vinothkannans/fix/read
...
FIX: 'read' filter in top menu showing new topics
2017-05-01 11:21:13 -04:00
Claus Strasburger
e9bb9a167b
Fix reply-by-mail for 8-bit transfer encodings
...
The mail class seems to handle mails sent with Content-Transfer-Encoding: 8bit
somewhat weirdly: It decodes them (to utf-8), changes the raw source to base64,
and does not modify the Content-Type:charset= header.
This leads to Discourse trying the message encoding (in my example ISO-8859-1)
first, and if that does not contain any unparseable characters, it uses that.
Sadly, in ISO-8859-1, every byte sequence is valid.
Fix this by always trying to decode as UTF-8 first. The probability of someone
using another encoding that cleanly (but wrongly) decodes as UTF-8 should be
fairly low.
2017-04-30 23:30:40 +02:00
Vinoth Kannan
1241660c2c
FIX: 'read' filter in top menu showing new topics
2017-04-29 14:37:45 +05:30
Régis Hanol
aba76bace6
add support to keep img tags when converting to html
2017-04-28 22:14:46 +02:00
Régis Hanol
51ee49aad2
FIX: properly support HTML document when converting to markdown
2017-04-28 22:02:20 +02:00
Régis Hanol
0ec15af970
restore the 'incoming_email_prefer_html' site setting
2017-04-27 14:31:11 +02:00
Guo Xiang Tan
59b906ab0d
FEATURE: Disable minimum post length check when in PM with non human users.
...
https://meta.discourse.org/t/discourse-narrative-bot-beta-feedback/58621/65?u=tgxworld
2017-04-27 16:00:22 +08:00
Régis Hanol
b76674f640
FEATURE: convert incoming emails in HTML to markdown
...
- remove incoming_email_prefer_html site setting
- remove HtmlCleaner class
2017-04-26 16:49:06 +02:00
Guo Xiang Tan
aef89c4850
REFACTOR: Load `Post` records in batches when destroying stubs.
2017-04-25 10:19:21 +08:00
Régis Hanol
d5630d6160
HtmlToMarkdown library
...
Small library to transform HTML to Discourse-flavored markdown (mostly used for imports)
2017-04-24 22:01:41 +02:00
Arpit Jalan
dad2024094
FIX: do not impose default min/max validation on hidden site setting
2017-04-22 12:08:39 +05:30
Sam
b077335a30
make stat socket much more robust
2017-04-21 17:12:29 -04:00
Arpit Jalan
b0151ab66a
Merge pull request #4826 from techAPJ/site-setting-max-value
...
FIX: all basic integer settings should have min & max value validation
2017-04-21 20:21:10 +05:30
Sam
52306c393a
FEATURE: basic implementation of stats socket
2017-04-21 10:24:43 -04:00
cpradio
20c2c66dd4
FEATURE: Add normal as a preference for topic subscription state when replying to a topic
2017-04-20 22:33:10 -04:00
Arpit Jalan
9eff4f0807
FIX: all basic integer settings should have max value validation
2017-04-21 07:09:41 +05:30
Sam
e119c6e01e
FIX: embedded comments not working when theme is missing
2017-04-20 10:31:33 -04:00
Robin Ward
1363988cd7
Support for an HTML builder that can create dynamic HTML
2017-04-17 17:32:55 -04:00
Guo Xiang Tan
04016f0dec
Support Ruby 2.4.
2017-04-15 12:29:00 +08:00
Sam
a3e8c3cd7b
FEATURE: Native theme support
...
This feature introduces the concept of themes. Themes are an evolution
of site customizations.
Themes introduce two very big conceptual changes:
- A theme may include other "child themes", children can include grand
children and so on.
- A theme may specify a color scheme
The change does away with the idea of "enabled" color schemes.
It also adds a bunch of big niceties like
- You can source a theme from a git repo
- History for themes is much improved
- You can only have a single enabled theme. Themes can be selected by
users, if you opt for it.
On a technical level this change comes with a whole bunch of goodies
- All CSS is now compiled using a custom pipeline that uses libsass
see /lib/stylesheet
- There is a single pipeline for css compilation (in the past we used
one for customizations and another one for the rest of the app
- The stylesheet pipeline is now divorced of sprockets, there is no
reliance on sprockets for CSS bundling
- CSS is generated with source maps everywhere (including themes) this
makes debugging much easier
- Our "live reloader" is smarter and avoid a flash of unstyled content
we run a file watcher in "puma" in dev so you no longer need to run
rake autospec to watch for CSS changes
2017-04-12 10:53:49 -04:00
Guo Xiang Tan
24d3c77d19
Fix the build.
2017-04-12 10:38:17 -04:00
Guo Xiang Tan
3861bd2793
FIX: Quotes should be ignored when parsing for onebox source.
2017-04-11 15:22:21 +08:00
Guo Xiang Tan
0a4c30bce3
FIX: Handle cases where `alt` and `title` tag is blank when parsing excerpt.
2017-04-11 14:18:27 +08:00
Guo Xiang Tan
e49f3a408e
FEATURE: Add option for `ExcerptParser` to keep onebox source.
2017-04-10 16:11:58 +08:00
Robin Ward
17f2974d0a
SECURITY: Confirm new administrator accounts via email
2017-04-04 15:59:01 -04:00
Guo Xiang Tan
f4758a4c4d
FEATURE: Allow admins to schedule a topic to be published in the future.
2017-04-04 11:16:05 +08:00
Guo Xiang Tan
34b7bee568
FEATURE: Allow admin to auto reopen at topic.
...
* This commit also introduces a `TopicStatusUpdate`
model to support other forms of deferred topic
status update in the future.
2017-03-31 11:14:18 +08:00
Robin Ward
14410b71fb
Convert server side paths to use `/u/`
2017-03-30 10:23:24 -04:00
Yana Agun Siswanto
cd2d2f16e5
Allow to order search results by the topic creation date
...
based on: https://meta.discourse.org/t/allow-to-order-search-results-by-the-topic-creation-date/38544
2017-03-30 01:18:38 +07:00
Arpit Jalan
8bf12502bd
Merge pull request #4780 from techAPJ/send-statistics
...
FEATURE: Send anonymized usage statistics to Discourse if "Discourse Hub" can't reach the site
2017-03-28 10:02:05 +05:30
Arpit Jalan
f3cd5f61c5
FEATURE: Send anonymized usage statistics to Discourse if Discourse Hub can't reach the site
2017-03-28 09:07:23 +05:30
Régis Hanol
dd1cc23caf
fix randomly failing specs
2017-03-27 22:47:41 +02:00
Arpit Jalan
3449339fea
FIX: admin locales were not getting converted to message format
2017-03-25 01:12:23 +05:30
Guo Xiang Tan
b87c5eb1b6
Fix randomly failing spec.
2017-03-24 15:46:42 +08:00
Arpit Jalan
1853a4852c
FIX: use email prefix only in subject
2017-03-21 20:29:57 +05:30
Guo Xiang Tan
5169ef8814
Fix broken specs.
2017-03-16 15:05:28 +08:00
Guo Xiang Tan
6312b8b7e4
Fix failing specs.
2017-03-14 14:58:22 +08:00
Guo Xiang Tan
1a7e954e09
FIX: Store custom emojis as uploads.
...
* Depending on a hardcoded directory was a flawed design
which made it impossible to debug when custom emojis go
missing.
2017-03-14 13:07:18 +08:00
Sam
82ca0e368e
FEATURE: stop escaping special chars in title prettify
...
This feature is confusting and just leads to inconsistency
2017-03-13 10:02:20 -04:00
Sam
6ebddc42d1
FIX: include children categories when searching a category
2017-03-10 15:58:47 -05:00
Guo Xiang Tan
c623951306
FEATURE: Search can be scoped to posts that the current user has seen/unseen.
...
https://meta.discourse.org/t/advanced-search-posts-that-i-have-seen/57966
2017-03-09 01:01:33 +08:00
Régis Hanol
ee9d621d9c
FIX: surround the FROM alias with " in order to support the @ character
2017-03-07 23:37:21 +01:00
Sam
99f4d5082b
FIX: Improve token rotation and increase logging
...
- avoid access denied on bad cookie, instead just nuke it
- avoid marking a token unseen for first minute post rotation
- log path in user auth token logs
2017-03-07 13:27:43 -05:00
Neil Lalonde
0661cebbcf
fix intermittent failing spec
2017-03-07 11:59:05 -05:00
Guo Xiang Tan
a28704bcee
FIX: Can't recover a post when its user has been deleted.
...
https://meta.discourse.org/t/moving-posts-to-new-topic/58436
2017-03-06 14:29:06 +08:00
Guo Xiang Tan
76dd6933d2
Revert "Revert "Revert "SECURITY: Ensure oAuth authenticated email is the same as created user's email."""
...
This reverts commit e6d75f6844
.
This is why we should not be pushing directly to master.
2017-03-01 10:16:59 +08:00
Robin Ward
d27575176a
Enforce a minimum amount of posters in a topic for `get_a_room`
2017-02-28 16:47:16 -05:00