Commit Graph

159 Commits

Author SHA1 Message Date
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
ad5082d969 Make rubocop happy again. 2018-06-07 13:28:18 +08:00
467d91347a Missing specs for Group, Tag, Category and Flag web hooks. 2018-05-21 17:29:58 +08:00
ad833c4485 FIX: Don't downcase group name. 2018-05-07 14:02:11 +08:00
c82b2dcc24 Remove admin group management pages. 2018-04-09 15:14:50 +08:00
e33aef729f FIX: unable to save groups with mixed case names 2018-04-06 16:12:35 -04:00
2498403bc3 Revert "FIX: Username uniqueness check should not happen to current user_id"
This reverts commit f71a18facd72768646e2c34a11446160dc2db177.
2018-04-03 00:44:04 +08:00
f71a18facd FIX: Username uniqueness check should not happen to current user_id 2018-04-02 21:59:11 +05:30
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
efb19dbdaf Merge pull request #5705 from discourse/new_webhooks
FEATURE: Webhook for group and category events
2018-04-02 10:53:21 +05:30
e7407d0adc FEATURE: Webhook for group and category events 2018-03-27 11:53:35 +05:30
f2c060bdf2 FEATURE: option for tags in a tag group to be visible only to staff 2018-03-26 17:05:09 -04:00
15bcfcd182 UX: Allow users to filter by different group types on groups page. 2018-03-20 17:38:11 +08:00
0522aabaab UX: Allow user_count on groups page to be sortable. 2018-03-19 16:15:13 +08:00
b283bb2ba7 FIX: Don't include unlisted topic in groups/posts 2018-02-28 14:40:18 -05:00
709f201bd4 FIX: update group user count when bulk adding users 2018-02-23 14:29:56 +05:30
226ace1643 Update annotations. 2018-02-20 14:28:58 +08:00
4bcf9c5bf3 FIX: only count 'human' users in group.user_count 2018-01-31 21:55:01 +01:00
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
f2565f6c7e SECURITY: Any group can be invited into a PM. 2017-12-14 14:57:48 +08:00
daeb7694bc update annotations 2017-12-05 21:03:20 +05:30
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
edf4af608e FIX: Better match when searching for groups. 2017-11-02 10:20:14 +08:00
076df104dc FEATURE: Support filtering of groups page by category if in url 2017-10-31 17:50:06 -04:00
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
d64853dfa0 FIX: update group.has_messages field weekly 2017-09-29 08:23:07 +05:30
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
77d4c4d8dc Fix all the errors to get our tests green on Rails 5.1. 2017-09-25 13:48:58 +08:00
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
ed851dbfff FIX: Avoid publishing a gigantic payload.
* Certain sites have way too many categories.
2017-08-16 11:38:30 +09:00
d182f0f2d1 Add support for preloaded custom_fields on Group 2017-08-08 15:45:27 +02:00
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
5012d46cbd Add rubocop to our build. (#5004) 2017-07-28 10:20:09 +09:00
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
fd95c971ec REFACTOR: Better variable name. 2017-07-27 16:10:53 +09:00
917d186303 REFACTOR: Reduce number of queries sent to the DB. 2017-07-26 17:20:00 +09:00
3a46ea8bad Sanitize SQL arguments to prevent injections. 2017-07-26 17:20:00 +09:00
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
d0b027d88d FEATURE: phase 1 of supporting multiple email addresses 2017-07-20 11:22:27 +09:00
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
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
ac6c1acbed FIX: Groups that do not have any owners should not allow membership requests. 2017-06-05 10:02:37 +09:00
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
8bc47d0bae fix build (cc @tgxworld) 2017-05-05 13:13:49 +02:00
2b21e5ea7e UX: Display translated group name for automatic groups. 2017-05-05 14:34:47 +08:00
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