Guo Xiang Tan
30fa5379ce
Merge pull request #5195 from henrik/patch-1
...
100.years.ago -> Time.at(0)
2017-09-28 15:47:06 +08:00
Robin Ward
3e13becf33
A safe way to create class variables in a multisite environment.
...
This should allow plugins to set class variables that will not
stomp on other plugins.
2017-09-27 13:00:47 -04:00
Robin Ward
d7c37d9369
Add front end service for staff controls
2017-09-25 12:25:14 -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
Henrik Nyh
77cc33b231
100.years.ago -> Time.at(0)
...
A bit more robust ;)
2017-09-19 08:48:50 +01:00
Régis Hanol
797936d2c5
FIX: don't leak whisper count in user card
2017-09-14 20:08:16 +02:00
Gerhard Schlager
f3d3129113
FIX: Use default locale for edit reason when owner of post gets changed
2017-09-14 17:17:37 +02:00
David Taylor
1def49cf6c
SECURITY: Only publish PM reply messagebus notifications to allowed users
2017-09-08 14:12:15 -07:00
Erick Guan
1146772deb
Fix: unlinked topic search model ( #5044 )
2017-08-15 11:46:57 -04:00
Régis Hanol
4f09a5a7a5
Add 'Post.permitted_create_params' to allow plugins to add new params when creating a post
2017-08-12 04:10:45 +02:00
Neil Lalonde
15a74d6d3e
FIX: don't enforce newuser_spam_host_threshold on private messages
2017-08-10 17:19:08 -04:00
Guo Xiang Tan
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09: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
Guo Xiang Tan
982e3d04f6
PERF: Allow memory to be freed instead of fetching all the objects into memory at once.
...
```
MemoryProfiler.report do
Jobs::UserEmail.new.execute(type: :mailing_list, user_id: user.id)
end.pretty_print
```
Before:
```
Total allocated: 180096119 bytes (1962025 objects)
Total retained: 2194 bytes (16 objects)
allocated memory by gem
-----------------------------------
66979096 activerecord-4.2.8
43507184 nokogiri-1.7.1
43365188 mail-2.6.4
5960201 activesupport-4.2.8
5056267 discourse/lib
4835284 rack-mini-profiler-0.10.1
3825817 arel-6.0.4
2186088 i18n-0.8.1
1719330 discourse/app
```
After:
```
Total allocated: 161935975 bytes (1473940 objects)
Total retained: 2234 bytes (17 objects)
allocated memory by gem
-----------------------------------
45430264 activerecord-4.2.8
43568627 nokogiri-1.7.1
43430754 mail-2.6.4
11233878 rack-mini-profiler-0.10.1
5260825 activesupport-4.2.8
5054491 discourse/lib
2186088 i18n-0.8.1
1822494 arel-6.0.4
```
2017-05-03 17:01:57 +08:00
Robin Ward
bf9c4a7828
FEATURE: secure_email site setting to prevent data going out in email
2017-04-26 13:05:56 -04:00
Robin Ward
27a73c73f9
FIX: Error when calculating geometric mean of 0 for read timings
2017-03-27 12:45:34 -04:00
Guo Xiang Tan
d449f782a3
Revert "FIX: Don't skip callbacks when rebaking posts."
...
This reverts commit 06c651f8c9
.
If site settings are changed, there is a chance that the post
will fail PostValidator's validations.
2017-02-01 10:52:15 +08:00
Guo Xiang Tan
06c651f8c9
FIX: Don't skip callbacks when rebaking posts.
2017-01-25 17:47:13 +08:00
Guo Xiang Tan
32846aad2a
FIX: Toggling post's wiki status should not create a new version.
2017-01-20 15:42:33 +08:00
Neil Lalonde
e8307ac24c
FIX: mailing list mode digest emails included whispers
2017-01-13 13:46:33 -05:00
Sam
2f6a4cc6de
remove UserActionObserver, replace with after_save and service
...
interestingly there was some left over dead code from when stars
existed in the topic_users table
2016-12-22 16:46:53 +11:00
Sam
0a78ae739d
Remove SearchObserver, aim is to remove all observers
...
rails-observers gem is mostly unmaintained and is a pain to carry forward
new implementation contains significantly less magic as a bonus
2016-12-22 13:13:14 +11:00
Sam
c04d4171ff
FIX: whisper no longer experimental
...
- Regular users are not notified of whispers
- Regular users no longer have "stuck" topics in unread
- Additional tracking for staff highest post number
- Remove a bunch of unused columns in topics table
2016-12-02 17:03:31 +11:00
Arpit Jalan
382803cb05
FEATURE: include post image in OpenGraph image tag
2016-10-31 15:11:33 +05:30
Guo Xiang Tan
efea296c7a
FIX: Do not cook post if Post#raw
has not been changed.
2016-10-24 12:02:38 +08:00
Arpit Jalan
a590f35982
FEATURE: allow changing post owners without creating post revision
2016-08-19 23:34:21 +05:30
Robin Ward
19959c6092
Remove unneccessary return
2016-08-15 12:58:16 -04:00
Robin Ward
aef954784a
FIX: nofollow
was being added during post processing when it shouldn't
2016-08-12 15:35:13 -04:00
Régis Hanol
e55e2aff94
FIX: FirstReplyByEmail badge wasn't granted
...
DEPRECATED: PostProcess badge trigger
2016-08-10 19:24:01 +02:00
Arpit Jalan
a9207dafa7
FEATURE: configure session time via site setting for all the users ( #4343 )
2016-07-23 02:57:30 +05:30
Guo Xiang Tan
c3cab98998
FEATURE: Admins should be able to create polls even when plugin is disabled.
2016-07-13 18:05:19 +08:00
Neil Lalonde
487c20959c
FEATURE: max topics/replies per day for new users now starts counting from the first post, not signup date
2016-06-20 16:55:11 -04:00
Sam
852860de66
FEATURE: simpler and friendlier unsubscribe workflow
...
- All unsubscribes go to the exact same page
- You may unsubscribe from watching a category on that page
- You no longer need to be logged in to unsubscribe from a topic
- Simplified footer on emails
2016-06-17 11:28:49 +10:00
James Kiesel
feffe23cc5
FEATURE: More granular mailing list mode ( #4068 )
...
* Rearrange frontend to account for mailing list mode
* Allow update of user preference for mailing list frequency
* Add mailing list frequency estimate
* Simplify frequency estimate; disable activity summary for mailing list mode
* Remove combined updates
* Add specs for enqueue mailing list mode job
* Write mailing list method for mailer
* Fix linting error
* Account for stale topics
* Add translations for default mailing list setting
* One query for mailing list topics
* Fix failing spec
* WIP
* Flesh out html template
* First pass at text-based mailing list summary
* Add user avatar
* Properly format posts for mailing list
* Move make_all_links_absolute into Email::Styles
* Apply first_seen_at to user
* Send mailing list email summary hourly based on first_seen_at
* Branch and test cleanup
* Use existing mailing list mode estimate
* Fix failing specs
2016-05-21 15:17:54 +02:00
Régis Hanol
2194ccec6e
slightly better automatic flag reason messages
2016-04-25 23:03:17 +02:00
Arpit Jalan
ee7ef46b9e
FEATURE: support filter options for PM report
2016-04-21 14:52:41 +05:30
Régis Hanol
4960b62110
FEATURE: new 'block_auto_generated_emails' site setting
2016-04-20 21:29:27 +02:00
Guo Xiang Tan
6aa447816d
UX: Publish changes to TopicView when Topic is updated.
2016-04-07 16:29:01 +02:00
Arpit Jalan
6f0137dec9
FEATURE: disable post editing when the post has active flag
2016-03-30 23:28:49 +05:30
Sam
95076050f4
FEATURE: warn about mailing list mode if it is checked
2016-03-29 18:50:17 +11:00
Neil Lalonde
f36ff3d93b
Log as debug instead of warning: Blank post detected
2016-03-23 11:44:55 -04:00
Sam Saffron
8577b7e2cc
FIX: setting owner on topic should not bump topic
2016-03-17 08:32:56 +11:00
Sam Saffron
b300d60086
FIX: when changing owner of last post user list on topic incorrect
2016-03-16 23:49:54 +11:00
Neil Lalonde
091e7ef3ca
FIX: when a post is edited by someone other than the original author and a mention is added, the mention notification is from the person who edited
2016-03-08 15:26:12 -05:00
Sam
32c681c96b
annotate models
2016-02-23 10:33:53 +11:00
Sam
1bb485fca5
FIX: when a user got multiple replies to a topic, emails were missing
2016-01-27 12:20:08 +11:00
Robin Ward
1f8586168b
FIX: Incorrect subfolder urls when embedding
2016-01-12 12:38:49 -05:00
Régis Hanol
cf0558cd33
FEATURE: properly style whisper email notifications
2016-01-11 17:47:17 +01:00
Arpit Jalan
97e4f7f6d3
Enums that are used in tables need to be stable
2016-01-08 20:43:11 +05:30
Neil Lalonde
007326d3bd
FIX: hidden posts that are edited by the author and unhidden could not be flagged by the same users again
2015-12-29 16:59:36 -05:00
Sam
d1a5d8ea62
FEATURE: show group mentions and topics in groups page
2015-12-01 16:52:43 +11:00
Sam
e17978a203
FIX: do not notify in title if you created the post
2015-10-12 12:45:04 +11:00
Régis Hanol
54d6d24cbf
FIX: timing issue with edits and cook post processing
2015-09-29 18:51:26 +02:00
Sam
2422289c8b
FIX: whispers should not be revealed in reply to, or reply expansion
...
FEATURE: mark whisper as experimental
FIX: badges should never apply to whispers
2015-09-25 10:16:19 +10:00
Sam
613761d1cd
FEATURE: upgrade to Rails 4.2.4
2015-09-23 15:24:30 +10:00
Régis Hanol
4f7140fb32
FIX: properly filter whispers in user stream
2015-09-22 00:50:52 +02:00
Sam
c1ecd6f4ce
update annotations
2015-09-18 10:41:10 +10:00
Robin Ward
5af0f5f80e
FEATURE: Whisper posts
2015-09-11 14:05:21 -04:00
Guo Xiang Tan
cbb86f9bf6
FEATURE: Add a trigger for plugins to include their own jobs.
2015-09-04 22:59:39 +08:00
Sam
157b118559
FIX: pointless error in log when failing to save post
...
rate_limit gets fired for rollback on in which case there is not post_number
2015-08-19 16:28:04 +10:00
Sam
75b4972682
posts with no url should return a 404
2015-08-12 07:28:54 +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
Robin Ward
00ecec1ee4
FIX: Don't log empty bodies from moderation actions
2015-07-29 14:54:33 -04:00
Robin Ward
bb93a345eb
UX: Use smaller messages for moderator actions.
2015-07-27 10:09:21 -04:00
Kane York
61ea8c6f72
FIX: Allow to change ownership on deleted users' posts
2015-07-15 15:29:35 -07:00
Régis Hanol
f18098fd9b
FEATURE: category dropdown in admin reports
2015-06-24 15:19:39 +02:00
Robin Ward
c6cd1928be
Simple "cook" for email imports from mailing lists
2015-06-05 11:46:36 -04:00
Sam
803feefd54
MessageBus handles readonly redis now, no need to wrap it
2015-05-04 12:21:00 +10:00
Robin Ward
5b3f99aa50
Don't blow up if Redis switches to READONLY
2015-04-24 14:37:16 -04:00
Régis Hanol
80b2935e11
FIX: prevent DOS when fixing avatar in quotes
2015-04-24 11:14:10 +02:00
Régis Hanol
a737090442
- FEATURE: revamped poll plugin
...
- add User.staff scope
- inject MessageBus into Ember views (so it can be used by the poll plugin)
- REFACTOR: use more accurate is_first_post? method instead of post_number == 1
- FEATURE: add support for JSON-typed custom fields
- FEATURE: allow plugins to add validation
- FEATURE: add post_custom_fields to PostSerializer
- FEATURE: allow plugins to whitelist post_custom_fields
- FIX: don't bump when post did not save successfully
- FEATURE: polls are supported in any post
- FEATURE: allow for multiple polls in the same post
- FEATURE: multiple choice polls
- FEATURE: rating polls
- FEATURE: new dialect allowing users to preview polls in the composer
2015-04-23 19:33:29 +02:00
Tan Le
9fbc763902
Replace Hash#keys.each with Hash#each_key for some perf boost
2015-04-18 21:53:53 +10:00
Robin Ward
a5ee45ccbe
PostEnqueuer
object to handle validation of enqueued posts
2015-04-15 14:54:36 -04:00
Sam
5aa1272f05
clean up first day user definition and object model
2015-03-26 16:48:36 +11:00
Régis Hanol
1a070b16e4
FIX: use the 'post edit time limit' for topics too
2015-02-25 20:53:21 +01:00
riking
3c035dce7c
FIX: Don't expire ratelimits at midnight server time
2015-02-10 22:45:46 -08:00
Sam
06edfb85a9
annotations
2015-02-04 16:15:16 +11:00
Robin Ward
f15b0d205f
FIX: The "too similar" check happened when trying to make a post a wiki
2015-02-02 12:44:56 -05:00
Sam
52bc03b5e6
FIX: summary mode was broken and missing a bunch of posts
2015-01-30 17:19:42 +11:00
Sam
7e3df4287f
Add more logging for blank posts to detect culprit
2014-11-24 10:34:29 +11:00
Sam
6bed4e1bf0
add allowed_ips to api_keys
...
update annotations
2014-11-20 14:53:15 +11:00
Régis Hanol
a8a0be0b34
FIX: change the unlisted/invisible topic state only when unhiding the first post
2014-11-12 16:34:30 +01:00
Sam
d77f218122
Don't try to publish messages on broken posts
2014-11-10 21:24:54 +11:00
Robin Ward
fde5e739c9
Work in progress (up till about?)
2014-11-05 12:39:25 -05:00
Robin Ward
f47ab30b04
Use a site setting for maximum summary results
2014-10-28 16:03:43 -04:00
Robin Ward
3eb020c466
Max out summary filter at 100 posts.
2014-10-28 15:58:04 -04:00
Régis Hanol
e7f251c105
LOTS of changes to properly handle post/topic revisions
...
FIX: history revision can now properly be hidden
FIX: PostRevision serializer is now entirely dynamic to properly handle
hidden revisions
FIX: default history modal to "side by side" view on mobile
FIX: properly hiden which revision has been hidden
UX: inline category/user/wiki/post_type changes with the revision
details
FEATURE: new '/posts/:post_id/revisions/latest' endpoint to retrieve
latest revision
UX: do not show the hide/show revision button on mobile (no room for
them)
UX: remove CSS transitions on the buttons in the history modal
FIX: PostRevisor now handles all the changes that might create new
revisions
FIX: PostRevision.ensure_consistency! was wrong due to off by 1
mistake...
refactored topic's callbacks for better readability
extracted 'PostRevisionGuardian'
2014-10-27 22:06:43 +01:00
Sam
1cc37e32b9
FEATURE: add max_reply_history to limit number of replies
...
that can be expanded, when clicking "in-reply-to"
2014-10-27 09:44:42 +11:00
Arpit Jalan
2131a37811
FEATURE: show raw email for replies/topics created via email
2014-10-17 22:22:19 +05:30
Régis Hanol
70884d2436
FEATURE: automatically hide posts made by TL0 users when flagged by a TL3 user
2014-10-01 18:53:17 +02:00
Régis Hanol
0b13f6572f
FEATURE: staff option to unhide a post
2014-09-22 18:55:13 +02:00
Régis Hanol
18f8038015
FEATURE: add new 'convert to staff message' in post wrench menu
2014-09-10 23:08:33 +02:00
Sam
59d04c0695
Internal renaming of elder,leader,regular,basic to numbers
...
Changed internals so trust levels are referred to with
TrustLevel[1], TrustLevel[2] etc.
This gives us much better flexibility naming trust levels, these names
are meant to be controlled by various communities.
2014-09-05 15:20:52 +10:00
Jeff Atwood
fcca64c0cf
rename site settings for trust levels as numbers
2014-09-04 13:16:51 -07:00
Sam
22fbae8556
Merge pull request #2674 from akshaymohite/optimization-fixes
...
renamed unused variables properly
2014-09-02 08:22:43 +10:00
riking
3396e6fea3
Centralize MessageBus post updates
...
After this change, only two files directly publish to MessageBus with a
topic interpolated in the channel: Post and TopicUser.
2014-08-28 20:40:36 -07:00
Sam
898d86fd9b
correct annotations
2014-08-27 15:30:17 +10:00
Akshay
0862a65d4a
renamed unused variables properly
2014-08-20 23:44:19 +05:30
Sam
8737ffb272
Merge pull request #2658 from akshaymohite/optimization-fixes
...
Not initializing variable for looping if unused in loop
2014-08-18 14:42:52 +10:00