Vinoth Kannan
8430ea927e
FIX: Generate webhook payloads before destroy events ( #6325 )
2018-10-05 16:53:59 +08:00
Guo Xiang Tan
195bd02fce
FIX: Avoid race condition when enqueuing job.
2018-09-20 11:24:01 +08:00
Sam
243fc9d0f9
FIX: refreshing auto groups when min_username_length is long
2018-08-15 16:59:56 +10:00
Sam
5f64fd0a21
DEV: remove exec_sql and replace with mini_sql
...
Introduce new patterns for direct sql that are safe and fast.
MiniSql is not prone to memory bloat that can happen with direct PG usage.
It also has an extremely fast materializer and very a convenient API
- DB.exec(sql, *params) => runs sql returns row count
- DB.query(sql, *params) => runs sql returns usable objects (not a hash)
- DB.query_hash(sql, *params) => runs sql returns an array of hashes
- DB.query_single(sql, *params) => runs sql and returns a flat one dimensional array
- DB.build(sql) => returns a sql builder
See more at: https://github.com/discourse/mini_sql
2018-06-19 16:13:36 +10:00
Guo Xiang Tan
ad5082d969
Make rubocop happy again.
2018-06-07 13:28:18 +08:00
Guo Xiang Tan
467d91347a
Missing specs for Group
, Tag
, Category
and Flag
web hooks.
2018-05-21 17:29:58 +08:00
Guo Xiang Tan
ad833c4485
FIX: Don't downcase group name.
2018-05-07 14:02:11 +08:00
Guo Xiang Tan
c82b2dcc24
Remove admin group management pages.
2018-04-09 15:14:50 +08:00
Neil Lalonde
e33aef729f
FIX: unable to save groups with mixed case names
2018-04-06 16:12:35 -04:00
Guo Xiang Tan
2498403bc3
Revert "FIX: Username uniqueness check should not happen to current user_id"
...
This reverts commit f71a18facd
.
2018-04-03 00:44:04 +08:00
Vinoth Kannan
f71a18facd
FIX: Username uniqueness check should not happen to current user_id
2018-04-02 21:59:11 +05:30
Guo Xiang Tan
221503cd10
FIX: Add server side uniqueness validations for Group#name
and User#username
.
...
https://meta.discourse.org/t/groups-can-be-given-same-name-as-existing-username/74010
2018-04-02 18:19:18 +08:00
Vinoth Kannan
efb19dbdaf
Merge pull request #5705 from discourse/new_webhooks
...
FEATURE: Webhook for group and category events
2018-04-02 10:53:21 +05:30
Vinoth Kannan
e7407d0adc
FEATURE: Webhook for group and category events
2018-03-27 11:53:35 +05:30
Neil Lalonde
f2c060bdf2
FEATURE: option for tags in a tag group to be visible only to staff
2018-03-26 17:05:09 -04:00
Guo Xiang Tan
15bcfcd182
UX: Allow users to filter by different group types on groups page.
2018-03-20 17:38:11 +08:00
Guo Xiang Tan
0522aabaab
UX: Allow user_count on groups page to be sortable.
2018-03-19 16:15:13 +08:00
Robin Ward
b283bb2ba7
FIX: Don't include unlisted topic in groups/posts
2018-02-28 14:40:18 -05:00
Arpit Jalan
709f201bd4
FIX: update group user count when bulk adding users
2018-02-23 14:29:56 +05:30
Guo Xiang Tan
226ace1643
Update annotations.
2018-02-20 14:28:58 +08:00
Régis Hanol
4bcf9c5bf3
FIX: only count 'human' users in group.user_count
2018-01-31 21:55:01 +01:00
Guo Xiang Tan
b39d3a863d
FIX: moderators
group wasn't being updated to be messagable by everyone.
...
https://meta.discourse.org/t/custom-flag-not-showing-text/76244
2017-12-19 10:14:56 +08:00
Guo Xiang Tan
f2565f6c7e
SECURITY: Any group can be invited into a PM.
2017-12-14 14:57:48 +08:00
Arpit Jalan
daeb7694bc
update annotations
2017-12-05 21:03:20 +05:30
Guo Xiang Tan
d320f4840d
FIX: Unable to invite groups that are not public visible into pms.
...
https://meta.discourse.org/t/inviting-groups-broken-in-head/73346/6
2017-11-03 21:40:33 +08:00
Guo Xiang Tan
edf4af608e
FIX: Better match when searching for groups.
2017-11-02 10:20:14 +08:00
Robin Ward
076df104dc
FEATURE: Support filtering of groups page by category if in url
2017-10-31 17:50:06 -04:00
Robin Ward
00b190af75
Revert "A safe way to create class variables in a multisite environment."
...
The approach taken by this interface was flawed. We need a better
solution.
2017-09-29 11:06:12 -04:00
Arpit Jalan
d64853dfa0
FIX: update group.has_messages field weekly
2017-09-29 08:23:07 +05:30
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
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
Bianca Nenciu
6bc74ceb50
Split alias levels in mentionable and messageable levels. ( #5065 )
...
* Split alias levels in mentionable and messageable levels.
* Fixed some tests.
* Set messageable level to everyone by default.
* By defaults, groups are not mentionable or messageable.
* Made staff groups messageable by the system.
2017-08-28 12:32:08 -04:00
Sam
c68999e128
annotate models
...
WARNING annotators out there, be to run bin/annotate on RAILS_ENV=test on a clean db
2017-08-16 10:38:11 -04:00
Guo Xiang Tan
ed851dbfff
FIX: Avoid publishing a gigantic payload.
...
* Certain sites have way too many categories.
2017-08-16 11:38:30 +09:00
Régis Hanol
d182f0f2d1
Add support for preloaded custom_fields on Group
2017-08-08 15:45:27 +02:00
Guo Xiang Tan
4620dfe92d
FEATURE: Add group settngs to allow users to leave a group freely.
...
https://meta.discourse.org/t/split-join-leave-freely-setting-on-groups/65565
2017-07-28 15:00:25 +09:00
Guo Xiang Tan
5012d46cbd
Add rubocop to our build. ( #5004 )
2017-07-28 10:20:09 +09:00
Guo Xiang Tan
2442bba131
UX: Better group creation workflow.
...
* Owners and users can now be added to a group during creation.
https://meta.discourse.org/t/you-cannot-allow-membership-requests-without-any-owners/64760/3
2017-07-27 16:12:42 +09:00
Guo Xiang Tan
fd95c971ec
REFACTOR: Better variable name.
2017-07-27 16:10:53 +09:00
Guo Xiang Tan
917d186303
REFACTOR: Reduce number of queries sent to the DB.
2017-07-26 17:20:00 +09:00
Guo Xiang Tan
3a46ea8bad
Sanitize SQL arguments to prevent injections.
2017-07-26 17:20:00 +09:00
Guo Xiang Tan
2a17f1ccd7
FIX: Group owners should be able to invite users to their groups.
...
https://meta.discourse.org/t/group-owner-cannot-send-an-invite-to-a-group/60617/12
2017-07-21 23:48:25 +09:00
Leo McArdle
d0b027d88d
FEATURE: phase 1 of supporting multiple email addresses
2017-07-20 11:22:27 +09:00
Guo Xiang Tan
9792e03c63
FIX: Group name was being reverted to non-localized version.
...
https://meta.discourse.org/t/localized-staff-group-names-changed/65360/16
2017-07-14 14:15:33 +09:00
Sam
845170bd6b
FEATURE: add support for group visibility level
...
There are 4 visibility levels
- public (default)
- members only
- staff
- owners
Note, admins and group owners ALWAYS have visibility to groups
Migration treated old "non public" as "members only"
2017-07-03 15:26:57 -04:00
Guo Xiang Tan
5e156fbe85
FIX: Group.search
should look up Group#full_name
too.
...
https://meta.discourse.org/t/mentioning-group-by-full-name-doesnt-work/63437/3
2017-06-29 16:37:59 +09:00
Guo Xiang Tan
ac6c1acbed
FIX: Groups that do not have any owners should not allow membership requests.
2017-06-05 10:02:37 +09:00
Guo Xiang Tan
af3dc4e537
FIX: Publish group's categories to user when adding user to group.
...
https://meta.discourse.org/t/joining-a-group-doesnt-take-effect-unless-the-browser-is-hard-refreshed/57357/11?u=tgxworld
2017-06-02 17:38:14 +09:00
Régis Hanol
8bc47d0bae
fix build (cc @tgxworld)
2017-05-05 13:13:49 +02:00
Guo Xiang Tan
2b21e5ea7e
UX: Display translated group name for automatic groups.
2017-05-05 14:34:47 +08:00
Régis Hanol
301dd139ae
PERF: faster Group.refresh_automatic_group & Group.ensure_consistency
2017-04-24 23:00:21 +02:00
Sam
aec73d4003
correct the spec again
2017-04-20 17:41:35 -04:00
Sam
dcf9459b7c
staff should track
2017-04-20 17:32:05 -04:00
Sam
7a9eee1b71
FEATURE: default notification level for group messages
...
also fixes it so staff can amend other user's group notification level
2017-04-20 15:47:35 -04:00
Régis Hanol
0abe433495
Merge pull request #4736 from techAPJ/group-bulk-add
...
FIX: grant trust level when bulk adding users to group
2017-03-06 12:43:26 +01:00
Guo Xiang Tan
7d82a53dfe
FIX: Group#name
is case insensitive.
2017-03-06 17:24:03 +08:00
Arpit Jalan
d5bcc70e9c
FIX: grant trust level when bulk adding users to group
2017-03-06 14:39:53 +05:30
Guo Xiang Tan
61111a3f9b
FIX: Show groups that user is owner of on groups page.
2017-02-03 16:51:32 +08:00
Guo Xiang Tan
706b4f6b9f
FEATURE: Remap group mentions when group name has been changed.
2017-01-18 13:39:34 +08:00
Guo Xiang Tan
59dfb51a35
FIX: Don't change automatic group name if localized name has been taken.
2017-01-18 12:20:23 +08:00
Guo Xiang Tan
ed5fa20b0c
Revert "FIX: error during signup saying "Password is the same as your current password" due to automatic group membership granting a trust level"
...
This reverts commit 9c40657ba4
.
Calling this whenever a user is initialize is hurting us bad
on performance.
2017-01-16 09:44:10 +08:00
Neil Lalonde
9c40657ba4
FIX: error during signup saying "Password is the same as your current password" due to automatic group membership granting a trust level
2016-12-28 17:36:04 -05:00
Sam
c531f4ded5
remove rails-observers
...
Rails yanked out observers many many years ago, instead the functionality
was yanked out to a gem that is very lightly maintained.
For example: if we want to upgrade to rails 5 there is no published gem
Internally the usage of observers had quite a few problem.
The series of refactors renamed a bunch of classes to give us more clarity
and removed some magic.
2016-12-22 16:46:53 +11:00
Guo Xiang Tan
43ee9f884e
FEATURE: Add Group#full_name
.
2016-12-13 16:16:26 +08:00
Guo Xiang Tan
4a1340b14e
Update annotations.
2016-12-12 22:59:40 +08:00
Guo Xiang Tan
05f55dbc10
FEATURE: Group logs.
2016-12-12 17:29:54 +08:00
Guo Xiang Tan
78553151ea
Update annotations.
2016-12-12 17:00:30 +08:00
Guo Xiang Tan
adb7fcb6b3
FEATURE: Add bio to group page.
2016-12-05 16:58:04 +08:00
Guo Xiang Tan
31acd311e5
FEATURE: Allow group owners to edit group name and avatar flair.
2016-12-05 14:27:46 +08:00
Guo Xiang Tan
559918c6c6
PERF: Add endpoint to check if a group can be mentioned by user.
2016-11-26 02:20:46 +08:00
Arpit Jalan
e03c1e4cdf
annotate models
2016-10-31 15:02:11 +05:30
Régis Hanol
81e2a0099f
FIX: ensure the group 'everyone' is never shown when using a different locale
2016-10-24 10:53:31 +02:00
Sam
9a94d1b212
FIX: everyone is not a visible group
2016-10-24 13:03:22 +11:00
Erick Guan
9ce61b4586
FEATURE: Webhooks.
2016-09-05 18:44:00 +08:00
Neil Lalonde
2251104e32
FEATURE: avatar flair can be font awesome icons
2016-08-26 17:15:37 -04:00
Neil Lalonde
d079f69b7b
FEATURE: add flair to avatars using new settings in the groups admin UI
2016-08-17 15:13:15 -04:00
Robin Ward
cf5b756b1a
SECURITY: Cross-Site Scripting in Category and Group Settings
2016-07-28 11:57:59 -04:00
Robin Ward
adb3810f67
FIX: Allow longer TLDs
2016-04-08 12:15:21 -04:00
Régis Hanol
b00ea5dc92
fix Group.ensure_consistency!
2016-04-04 23:41:49 +02:00
Régis Hanol
79639e2dec
FIX: ensure group's users counters are kept in sync
2016-04-04 17:03:18 +02:00
Neil Lalonde
fd853e0776
FIX: error when sending a private message to a group in some cases
2016-03-23 16:20:31 -04:00
Régis Hanol
031146a821
FIX: ensure email in address insn't used it both Groups & Categories
2016-03-08 20:52:04 +01:00
Arpit Jalan
bfaa4cdb37
FEATURE: compose a new pre-filled private message to a group via URL
2016-03-03 00:19:06 +05:30
Régis Hanol
f7432d8ec9
FEATURE: add support for multiple incoming emails for groups & categories
2016-02-24 19:47:58 +01:00
Sam
32c681c96b
annotate models
2016-02-23 10:33:53 +11:00
Neil Lalonde
283ff4c7f8
move code for bulk adding users to a group from controller to model
2016-02-18 14:03:08 -05:00
Sam Saffron
c2e45c8377
Update annotate and annotate models
2016-01-11 17:30:56 +11:00
Sam
03ea0bfe22
FEATURE: allow users to archive messages
...
Messages are now in 3 buckets
- Inbox for all new messages
- Sent for all sent messages
- Archive for all messages you are done with
You can select messages from your Inbox or Sent and move them to your Archive,
you can move messages out of your Archive similarly
Similar concept applied to group messages, except that archiving and unarchiving
will apply to all group members
2015-12-23 11:09:30 +11:00
Régis Hanol
3aa5129f54
FEATURE: allow group members to see all messages on group page
2015-12-07 23:19:33 +01:00
Régis Hanol
1cde276656
FEATURE: ability to send emails to a group
2015-12-07 17:01:08 +01:00
Régis Hanol
578f606a1a
add 'incoming_email' to groups
2015-12-07 12:39:28 +01:00
Sam
7f60693b46
add missing filter
2015-12-02 16:16:19 +11:00
Sam
9899e8d4a5
FEATURE: First class messages to groups, you can select a group as a target of a message
2015-12-02 15:49:43 +11: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
Arpit Jalan
6354324f2f
FIX: validate automatic membership email domains
2015-11-27 12:35:33 +05:30
Sam Saffron
6dd4bc7d57
FEATURE: support group owner, capable of controlling group membership
...
Group owners are regular users that can add or remove users to a group
The Admin UX allows admins to appoint group owners
The public group UX will display group owners first and unlock UI to
add and remove members
Group owners can only be appointed on non automatic groups
Group owners may not appoint another group owner
2015-11-10 00:56:57 +11:00
Sam
181ab89485
PERF: introduce fragment caches in site serializer
2015-09-28 16:50:24 +10:00
Sam
c1ecd6f4ce
update annotations
2015-09-18 10:41:10 +10:00
Neil Lalonde
1bd0f5b015
FEATURE: group can grant a trust level when a user is added
2015-09-01 16:52:12 -04:00