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
Arpit Jalan
26964a72ca
FIX: editing user title was deleting location
2016-05-03 22:25:43 +05:30
Régis Hanol
8e611ec7a1
FEATURE: handle bounced emails
2016-05-02 23:15:32 +02:00
Régis Hanol
2194ccec6e
slightly better automatic flag reason messages
2016-04-25 23:03:17 +02:00
Sam
72849e65de
FIX: when granting old badges that are bronze, do not notify
2016-04-12 22:08:38 +10:00
Arpit Jalan
8da446c8bc
FIX: do not raise error if topic not found while logging
2016-04-11 09:32:37 +05:30
Robin Ward
526573074c
Add one off job to grant the emoji badge retroactively
2016-04-07 13:49:44 -04:00
Guo Xiang Tan
fe54ece35e
Merge pull request #4114 from tgxworld/better_logging_for_backfilling_badges
...
FIX: Better logging when badges fail to backfill.
2016-04-07 13:31:50 +08:00
Sam
a130cb8305
FEATURE: move more urgent emails notifications to critical queue
...
Move signup, admin login and password change email notifications
to critical queue
2016-04-07 14:39:01 +10:00
Robin Ward
c30d327b77
FEATURE: Two new badges - First Emoji and First Mention
2016-04-05 15:17:41 -04:00
Guo Xiang Tan
6f16896a2c
FIX: Better logging when badges fail to backfill.
2016-03-24 10:10:53 +08:00
Sam
f9e5c49350
FIX: blue notification instead of green for replies/mentions in PMs
2016-03-22 14:28:14 +11:00
Régis Hanol
f15d463eb8
FIX: user 'UserBlocker' when blocking a new user
2016-03-18 12:16:37 +01:00
Sam
180888c020
Merge pull request #4087 from jeremylan/bug_40489
...
Fixed anonymizer when 'full name required' setting is on
2016-03-18 12:29:51 +11:00
Neil Lalonde
213950e4cf
FEATURE: add option to include topics from trust level 0 users in digest emails
2016-03-17 17:35:23 -04:00
jeremylan
d95728dd16
Fixed anonymizer when 'full name required' setting is on
...
When the setting 'full name required' is on the anonymizer was trying to set the user name to nil and this caused the user name and email to remain not anonymized.
Now in this scenario the user name is set to the anonimized username and the email is anonymized correctly.
2016-03-17 17:50:04 +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
Régis Hanol
74e4251aff
FIX: collapse 'replied', 'quoted' and 'posted' to the same notification
2016-03-07 21:56:33 +01:00
Sam
af577a5854
FEATURE: like notification frequency of never
2016-03-06 09:12:59 +11:00
Sam Saffron
8b1772ac0f
FIX: if user undos like, and relikes notify
...
FEATURE: roll up likes for notify on all likes
2016-03-04 22:56:27 +11:00
Arpit Jalan
36f82aa68c
FEATURE: enforce admin password validation when signing up via developer email
2016-03-04 00:28:47 +05:30
Sam
5a6c34fb8a
regression, unable to edit posts
2016-03-03 16:00:14 +11:00
Guo Xiang Tan
9d24a00f2e
Merge pull request #4055 from tgxworld/fix_topic_view_not_working_in_redis_readonly
...
FIX: Topic view not working when Redis is readonly.
2016-03-03 08:48:31 +08:00
Guo Xiang Tan
5f8e20aa1d
FIX: Topic view not working when Redis is readonly.
2016-03-03 08:26:45 +08:00
Neil Lalonde
c1aea91d63
FEATURE: More digest email frequency options. Digests can be sent as often as every 30 minutes.
2016-03-02 15:43:47 -05:00
Sam Saffron
5f4075a6cf
FEATURE: users can select how frequently they are notified on likes
...
- first time
- first time and daily (default)
- always
2016-03-02 23:16:52 +11:00
Arpit Jalan
43e3182a79
add IP address in backup log
2016-02-28 08:44:27 +05:30
Arpit Jalan
8f62a0caa8
FEATURE: log backup operation
2016-02-27 23:33:18 +05:30
Sam Saffron
820a435af8
FEATURE: add "email in-reply-to user option"
...
We no longer include previous replies as "context", instead
we include and excerpt of the post being replied to at the bottom
of notifications, this information was previously missing.
Users may opt in to emailing previous replies if they wish
or opt out of "in-reply-to" which makes sense in some email clients that
are smarter about displaying a tree of replies.
2016-02-26 00:05:59 +11:00
Guo Xiang Tan
e7cfbfeabb
FIX: `Array#first` with block will return the first element if nothing matches.
2016-02-24 22:34:40 +08:00
Régis Hanol
8d1da9cedd
FEATURE: keep original title when sending email notifications about a PM
2016-02-23 01:34:16 +01:00
Sam
ab06f86fbe
FEATURE: allow users to control how many previous replies they get
...
- always means we always send previous replies with every email
- never means we do not
- "unless previously sent" ... is the default, in which we only email you each reply once
The default_email_previous_replies site setting can control this toggle
2016-02-19 13:57:07 +11:00
Sam
f0e942f647
PERF: move 3 more option columns out of the user table
2016-02-18 16:57:22 +11:00
Sam
3829c78526
PERF: shift most user options out of the user table
...
As it stands we load up user records quite frequently on the topic pages,
this in turn pulls all the columns for the users being selected, just to
discard them after they are loaded
New structure keeps all options in a discrete table, this is better organised
and allows us to easily add more column without worrying about bloating the
user table
2016-02-17 18:08:25 +11:00
Arpit Jalan
8a7868be07
FIX: validate user website
2016-02-06 02:19:48 +05:30
Régis Hanol
12051f79a8
FIX: don't send empty email notifications for small_actions
2016-02-01 19:12:10 +01:00
Sam Saffron
4099823efe
FIX: batch badge assigner was not including full info in notification
...
(missing drilldown link in notification)
2016-02-01 18:27:07 +11:00
Sam
5ed21e8767
filter out archived correctly
2016-01-28 00:14:26 +11:00
Sam
b75353c26f
correct specs
2016-01-27 23:40:45 +11:00
Sam
50a63a491c
don't alert for inbox count of 0
2016-01-27 23:13:37 +11:00
Sam Saffron
a764cc3a42
FEATURE: by default users track a group (as opposed to watch)
...
FEATURE: a rollup counting number of messages in the group inbox to tracking users
2016-01-27 21:38:33 +11:00
Arpit Jalan
74f22f95da
FEATURE: log admin/moderator grant/revoke action
2016-01-27 15:39:04 +05:30
Régis Hanol
3083657358
FEATURE: better email in support
...
FEATURE: new incoming_email model
FEATURE: infinite scrolling in emails admin
FEATURE: new 'emails:import' rake task
2016-01-19 00:57:55 +01:00
Arpit Jalan
cf1bd35fc6
FIX: while changing site text, old and new values can be nil
2016-01-18 20:56:14 +05:30
Sam
e6c1f1db52
FEATURE: link to filtered badge list from notification
...
When notified on a badge link to the badge page filtered on username
2016-01-18 18:20:16 +11:00
Neil Lalonde
1aa68e085e
don't hide all a user's posts when staff manually blocks them
2016-01-14 15:20:26 -05:00
Neil Lalonde
b8299a2710
log when staff blocks/unblocks someone
2016-01-14 15:05:11 -05:00
Sam
cba76db53b
FIX: if people link own post, watchers not notified
2015-12-31 10:51:58 +11:00
Régis Hanol
e89d8e796e
FIX: group messages notifications
...
Prevent double notifications when watching a group
Make sure mentions/quotes/replies in a group message shows up
2015-12-18 16:32:53 +01:00
Arpit Jalan
4c967d11b4
FEATURE: log site text changes
2015-12-18 19:42:06 +05:30
Régis Hanol
e53f110c83
Revert "FIX: prevent double notifications when replying to a group message"
...
This reverts commit e82dc21083
.
2015-12-16 22:20:38 +01:00
Régis Hanol
e82dc21083
FIX: prevent double notifications when replying to a group message
2015-12-16 17:41:54 +01:00
Régis Hanol
15c229195f
FEATURE: notification_level on a per-group basis
2015-12-14 23:17:09 +01:00
Guo Xiang Tan
8b6b3cf858
FIX: Admin logging should not log permissions if none has been set.
2015-12-06 15:29:13 +08:00
Sam
d1a5d8ea62
FEATURE: show group mentions and topics in groups page
2015-12-01 16:52:43 +11:00
Sam
ad3dd161e7
FEATURE: first class group mentions built in
...
If you allow a group to be mentioned it can be mentioned with the @ symbol.
Keep in mind as a safety mechanism max_users_notified_per_group_mention is set to 100
2015-11-30 17:08:43 +11:00
Neil Lalonde
84342ecdef
FIX: anonymized user's preferences should have system assigned avatar chosen
2015-11-27 14:37:30 -05:00
Régis Hanol
0d54c18c8b
new hidden 'allow_staged_accounts' setting
2015-11-26 18:31:23 +01:00
Régis Hanol
92ba6125c4
FEATURE: new 'automatically_unpin_topics' user preference
2015-11-17 18:21:40 +01:00
Robin Ward
3939331dec
FIX: Staff was getting 500 when editing post in deleted topic
2015-11-13 11:35:23 -05:00
Guo Xiang Tan
d9fe78da20
FIX: Topic#last_posted_at was not being set when changing topic timestamp.
2015-10-20 10:12:52 +08:00
Robin Ward
eacd75bcf8
SECURITY: Unread post notifications should respect whispers
2015-10-19 16:32:10 -04:00
Sam
1754fcccf7
PERF: instead of N redis operations perform in bulk
2015-10-02 15:00:51 +10:00
Gerhard Schlager
445bd033d2
FIX: Use correct badge slug within notifications
2015-09-24 00:49:13 +02:00
Gerhard Schlager
25e9aa7653
FIX: Use user's locale for badge notifications
2015-09-24 00:33:33 +02:00
Guo Xiang Tan
f39b9124b6
FEATURE: Log staff actions for Category changes.
2015-09-18 10:53:08 +08:00
Arpit Jalan
10b8e43a92
FIX: send new email activation token if the original token expired
2015-08-24 12:00:00 +05:30
Sam
94f05a40de
FIX: when destroying users we were leaving drafts behind
2015-08-24 16:05:08 +10:00
Guo Xiang Tan
c7a21b7c23
FEATURE: Allow admin to change timestamp of topic.
2015-08-17 00:00:05 +08:00
Sam
5ee4d3ba8c
FIX: log post deletion even if user is deleted.
2015-08-14 13:57:02 +10:00
Robin Ward
bb93a345eb
UX: Use smaller messages for moderator actions.
2015-07-27 10:09:21 -04:00
Kane York
acbf82d8db
FIX: Change post owner of deleted post, take 3
2015-07-21 16:43:52 -07:00
Kane York
61ea8c6f72
FIX: Allow to change ownership on deleted users' posts
2015-07-15 15:29:35 -07:00
Kane York
8796760825
FIX: Allow changing ownership of posts with deleted users
2015-07-14 21:15:34 -07:00
Arpit Jalan
03665e8466
FIX: mark user as approved if an invite is already present
2015-06-26 01:57:29 +05:30
Sam
5ab7f7e88d
FIX: double like notification
...
If you got a like -> edit/quote/etc -> like you would get a
double notification
2015-06-19 12:31:36 +10:00
Sam
1e4c7dfbe7
FIX: invalid plan generation when % in query on badge definition UI
2015-05-28 16:06:22 +10:00
Robin Ward
ee129edf25
FIX: mentions were not working in PMs
2015-05-25 13:15:00 -04:00
Régis Hanol
8d967d9065
FEATURE: move all uploads to a single endpoint + defer upload creation in a background thread
2015-05-20 16:45:48 +02:00
Régis Hanol
d4974b7093
FIX: anonymous mode don't work when names are required
2015-05-15 14:20:15 +02:00
riking
28f32aff66
FEATURE: Multiple notifications at once (1/topic)
2015-05-13 18:23:42 -07:00
Sam
3d6cfc6421
fix typo
2015-05-11 18:05:18 +10:00
Sam
f180aba492
stop random hostname for anon
2015-05-11 17:48:54 +10:00
Sam
4dfc1907ac
Simplify desktop notifications, only include if mention/reply/pm/link
...
Include post excerpt in the notification
2015-05-04 13:49:32 +10:00
Sam
803feefd54
MessageBus handles readonly redis now, no need to wrap it
2015-05-04 12:21:00 +10:00
Robin Ward
151b559e4c
FIX: If you delete a user, delete their queued posts as well.
2015-04-24 16:04:44 -04:00
Robin Ward
5b3f99aa50
Don't blow up if Redis switches to READONLY
2015-04-24 14:37:16 -04: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
Robin Ward
5990ab855b
PERF: Move post alerting into async
2015-04-20 13:34:57 -04:00
Robin Ward
13de577568
FIX: Error alerting tracking users of PM when replying in general
2015-04-17 15:38:44 -04:00
Sam
4bfca12b11
FEATURE: anonymous_account_duration_minutes , cycle anon accounts after N minutes from last post
...
fixes it so anon users can not like stuff
2015-04-08 12:30:02 +10:00
Sam
f5d89169e2
FEATURE: initial implemenation of anonymous posting mode
2015-04-07 18:05:31 +10:00
Régis Hanol
7ce2dea33e
Merge pull request #3306 from riking/badge-rescue
...
FIX: Don't stop the badge grant after the first failure
2015-04-06 11:12:20 +02:00
Sam
c6a5081763
FEATURE: reorder participants in topic so always chronological
...
FEATURE: tie breaker for same number of posts is last post date
UX: highlight for latest poster when it is OP
2015-04-06 17:27:05 +10:00
Régis Hanol
eec1921ba9
FIX: notifications inconsistencies + never notify system user
2015-04-01 11:55:59 +02:00
Sam
14741b5dac
FIX: only ONE user on site could have a list of muted users
2015-03-31 10:16:23 +11:00
riking
6ce26ab4d8
FIX: Don't stop the badge grant after the first failure
2015-03-28 18:36:05 -07:00
Sam
cfa511e35d
FIX: correctly mute likers
...
FEATURE: disallow all muting of staff
2015-03-26 12:08:04 +11:00
Sam
92e371f0b3
FEATURE: civilized mute
...
Allow user to mute all notifications generated by specific users
2015-03-24 11:55:22 +11:00
Sam
1601211617
Revert "FEATURE: allow end users to opt out of getting any private messages"
...
This reverts commit 229ecc4f8a
.
2015-03-23 17:21:58 +11:00
Sam
229ecc4f8a
FEATURE: allow end users to opt out of getting any private messages
2015-03-23 15:50:45 +11:00
Sam
fb41816003
smarter clear cache to help tests
2015-03-12 10:47:32 +11:00
Neil Lalonde
dece5a351a
more fixes for post ownership change and user deletion
2015-03-11 15:54:20 -04:00
Neil Lalonde
608647d02f
FEATURE: Anonymize User. A way to remove a user but keep their topics and posts.
2015-03-10 11:59:08 -04:00
Sam
f432b9f5b7
correct spec failure, only test code was affected
2015-03-03 10:21:01 +11:00
Neil Lalonde
1bf4f34049
FIX: topic and post counts are not updated when ownership of a post is changed
2015-03-02 12:13:21 -05:00
Robin Ward
3c3e08147b
Fix some weird indentation
2015-02-27 10:33:39 -05:00
Sam
ea40dd08e6
correct tests
2015-02-27 09:41:08 +11:00
Régis Hanol
8c5d8715cd
FIX: staff action logs not logging all changes
2015-02-25 17:18:22 +01:00
Sam
b760d22460
PERF: avoid expensive order by random for suggested topics
2015-02-25 17:19:12 +11:00
riking
06f02ce9fc
FIX: 🈂️ Allow closing polls in multi-locale sites
2015-02-05 19:55:03 -08:00
Robin Ward
4e64d16a47
FEATURE: Allow plugins to log staff actions
2015-02-05 15:26:34 -05:00
Régis Hanol
2fcd199f48
FIX: send a PM to moderators when a post has been flagged as sockpuppet
2015-02-05 19:58:49 +01:00
riking
03fd275b45
FIX: Respect user locale for reply notifications
2015-01-17 23:17:50 -08:00
riking
1ab0d6bd82
FEATURE: Log username changes by staff
...
Also fix the tests for changing username
2015-01-17 02:26:12 -08:00
Régis Hanol
bfbc49ef6f
FIX: log only 1 'show email' record
2014-12-29 11:50:36 +01:00
Sam
f23eb475a4
FEATURE: remove override stylesheet option, too confusing
2014-12-23 13:03:48 +11:00
Robin Ward
b2e2a99898
FIX: Don't raise an error when trying to log nothing
2014-12-15 14:14:12 -05:00
Régis Hanol
4e735e8aab
FIX: roll up staff action wasn't working
2014-11-27 01:12:56 +01:00
Régis Hanol
7b0ae702e7
FEATURE: log a new staff action when rolling up banned IP addresses
2014-11-24 19:48:54 +01:00
Régis Hanol
0398ab7514
FIX: when adding an IP to the spammer list, check the broader ban list
...
first
FEATURE: allow admins to search users using IP ranges
2014-11-21 18:16:06 +01:00
Régis Hanol
7641d88224
FEATURE: new 'maximum new user accounts per registration IP' site setting
2014-11-17 12:04:29 +01:00
Régis Hanol
bb2d538194
FEATURE: log impersonations
2014-11-06 10:58:47 +01:00
Régis Hanol
b09ad87098
FIX: add 'show emails' button from moderators in user admin section
2014-11-03 12:46:08 +01: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
Régis Hanol
10094a0bcd
FIX: resolve flags as good when deleting a spam user
2014-10-20 16:59:06 +02:00
Sam
be48dfbb8c
correct badge title revocation query
2014-10-09 22:01:08 +11:00
Sam
0e7be81e60
FIX: badge granted titles were not being revoked when badge was revoked
2014-10-08 10:26:18 +11:00
Sam
0378dca66f
FIX: dismissed banner topic returned after saving user profile
2014-10-07 16:11:19 +11:00
Sam
836bc0f935
FIX: incorrect edit notification in user stream
...
FIX: missing edit notifications when post edited by multiple users
2014-10-07 15:57:48 +11:00
Régis Hanol
98b6b9821a
FEATURE: log topic/post deletions from staff members
2014-10-01 17:40:13 +02:00
Robin Ward
edb34c178a
FEATURE: Show user fields when the user is signing up
2014-09-30 10:45:18 -04:00
Régis Hanol
7e309a21cf
FEATURE: hide emails behind a button for staff members
2014-09-29 22:31:05 +02:00
Neil Lalonde
384d8f25e4
fix broken build
2014-09-22 13:23:33 -04:00
Neil Lalonde
ef436a5775
use && instead of and
2014-09-22 12:17:17 -04:00
Neil Lalonde
d6a562658a
FIX: update user preferences was failing if custom_fields is blank string
2014-09-17 13:09:39 -04:00
Robin Ward
56eda5abf9
FIX: Don't allow profile bios longer than 3k chars
2014-09-08 15:23:21 -04: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
Sam
1792941098
Merge pull request #2740 from riking/badges_disabled
...
FIX: Do not perform grants if badges are disabled
2014-09-03 22:19:51 +10:00
riking
3cf493eb4f
FIX: Apply contract checks when first creating a badge
2014-09-02 19:09:51 -07:00
riking
ee812eb447
FIX: Do not perform grants if badges are disabled
2014-09-02 13:12:27 -07:00
riking
808460a28f
Fix magic numbers, extra param references
2014-08-31 19:36:31 -07:00
riking
1833b43ae2
FEATURE: Badge query validation, preview results, and EXPLAIN
...
Upon saving a badge or requesting a badge result preview,
BadgeGranter.contract_checks! will examine the provided badge SQL for
some contractual obligations - namely, the returned columns and use of
trigger parameters.
Saving the badge is wrapped in a transaction to make this easier, by
raising ActiveRecord::Rollback on a detected violation.
On the client, a modal view is added for the badge query sample run
results, named admin-badge-preview.
The preview action is moved up to the route.
The save action, on failure, triggers a 'saveError' action (also in the
route).
The preview action gains a new parameter, 'explain', which will give the
output of an EXPLAIN query for the badge sql, which can be used by forum
admins to estimate the cost of their badge queries.
The preview link is replaced by two links, one which omits (false) and
includes (true) the EXPLAIN query.
The Badge.save() method is amended to propogate errors.
Badge::Trigger gets some utility methods for use in the
BadgeGranter.contract_checks! method.
Additionally, extra checks outside of BadgeGranter.contract_checks! are
added in the preview() method, to cover cases of null granted_at
columns.
An uninitialized variable path is removed in the backfill() method.
TODO - it would be nice to be able to get the actual names of all
columns the provided query returns, so we could give more errors
2014-08-31 11:25:44 -07:00
Sam
87d2be3ecf
FIX: ensure triggered badges are never triggered if filter is missing
2014-08-27 18:02:13 +10:00
Neil Lalonde
d273374f1a
FIX: before nuking a user, do a real count of posts instead of relying on user_stat record
2014-08-18 12:07:29 -04:00
Akshay
7ef61144e7
Avoid using to_s when performing String Interpolation
2014-08-14 23:55:27 +05:30
Sam
1baa55fe45
FIX: preview bust when no params
2014-08-13 12:25:56 +10:00
Sam
22cd259687
FIX: remove faulty "ensure consistency" badge job
2014-08-11 09:21:06 +10:00
Sam
e6f0b94b3a
FIX: bust preview
...
FIX: safeguard for huge delta backfill
2014-08-09 09:33:00 +10:00
Sam
953d3f2151
PERF: add optional delta badge filtering
...
This is tricky and optional, some badges are very expensive to calculate
pass in :backfill , :post_ids and :user_ids to all badge queries so they
can do pre-filtering, if you do it after the sub-query it is too late
2014-08-08 10:02:43 +10:00