Robin Ward
7533e5b541
UX: Use date picker on full page search
2017-11-21 12:52:23 -05:00
Joffrey JAFFEUX
39f3dbd945
Introduces select-kit
...
* renames `select-box-kit` into `select-kit`
* introduces `single-select` and `multi-select` as base components
* introduces {{search-advanced-category-chooser}} as a better component for selecting category in advanced search
* improves events handling in select-kit
* recreates color selection inputs using {{multi-select}} and a custom {{selected-color}} component
* replaces category-selector by a component using select-kit and based on multi-select
* improves positioning of wrapper
* removes the need for offscreen, and instead use `select-kit-header` as a base focus point for all select-kit based components
* introduces a formal plugin api for select-kit based components
* introduces a formal pattern for loading and updating select-kit based components:
```
computeValue()
computeContent()
mutateValue()
```
2017-11-21 11:53:09 +01:00
Guo Xiang Tan
edc4b30f82
Remove tests that are no longer being used.
2017-11-21 18:07:23 +08:00
Robin Ward
b9595966d4
FIX: Error applying quotes with blank lines in front
2017-11-20 13:46:19 -05:00
Neil Lalonde
b37e40eea9
FEATURE: show read time in last 60 days
2017-11-16 15:46:51 -05:00
Arpit Jalan
3831663fea
FEATURE: search logs page ( #5313 )
2017-11-15 11:13:50 +11:00
Joffrey JAFFEUX
680696fc04
Replaces delete flag modal by a dropdown
2017-11-14 07:55:08 -08:00
Sam
38c103c75e
correct spec
2017-11-13 18:09:24 +11:00
Robin Ward
1f14350220
Rename "Blocked" to "Silenced"
2017-11-10 14:10:27 -05:00
Joffrey JAFFEUX
6d3ed966cd
FEATURE: replace admin flags modal by a select-box
2017-11-09 12:33:36 -08:00
Michael Howell
38b8d68c68
FEATURE: Allow the user to select a custom home page ( #5268 )
...
* Add user_home configuration option
* Use the new user_home preference to actually show the right home page
* Fix trailing whitespace
* Update user_option_serializer.rb
* Fix JavaScript default homepage tests
* Use an object instead of a giant switch
* Remove trailing whitespace
* Make the default `user_home` set to `null` instead of `0`
* Rename user_home to homepage_id
2017-11-10 06:45:19 +11:00
Joffrey JAFFEUX
0da529010a
FEATURE: support for multi-combo-box
2017-11-09 10:57:53 -08:00
Robin Ward
3093074398
UX: Include the flagged person's username on the flagged post
2017-11-09 13:18:33 -05:00
Neil Lalonde
814502f7bb
FEATURE: add a Dismiss link to user menu that dismisses all notifications
2017-11-07 10:41:21 -05:00
Guo Xiang Tan
abdfac9cb5
FIX: Allow group members to freely exit group option incorrectly disabled.
...
https://meta.discourse.org/t/cannot-check-allow-members-to-leave-group-freely-when-group-is-configured-to-allow-users-to-send-membership-requests-to-group-owners/73400
2017-11-06 10:30:58 +08:00
ckeboss
93633865d9
Adds primary user group as a class to quote ( #5285 )
...
* Adds primary user group as a class to quote
This feature addition will add the class `group-PRIMARY_USER_GROUP` to
the quote `aside`. `PRIMARY_USER_GROUP` will be the primary user group
of the user being quoted. This is similar to the class that is added to
a `topic-post`.
* Remove trailing whitespace
* Fix avatar in test
* Address PR comments
* Fix trailing whitespace
2017-11-03 09:51:40 -04:00
Gerhard Schlager
c107e99138
clear localStorage after each test
2017-11-02 23:39:24 +01:00
Robin Ward
05a61fa8e1
FIX: CSS class names changed on group posts
2017-11-02 15:05:41 -04:00
Robin Ward
0a69f2bc77
REFACTOR: Remove many Discourse.Category.list()
calls
2017-11-01 15:25:35 -04:00
Neil Lalonde
7dc3671490
FEATURE: remove obsolete settings ga_tracking_code and ga_domain_name. Use ga_universal_tracking_code and ga_universal_domain_name instead.
2017-11-01 11:41:51 -04:00
OsamaSayegh
55095bc44e
FEATURE: Use ACE for badge queries ( #5269 )
...
* FEATURE: Use ACE for badge queries
* Forgot disabled
* When disabled, cursor should be `not-allowed`
* Tests + prefix custom attribute with `data-`
2017-10-30 18:07:49 +11:00
Robin Ward
fbd5f1e411
REFACTOR: Rename store:main
to service:store
so we can inject it
2017-10-27 13:59:45 -04:00
Joffrey JAFFEUX
ae1e4de286
[FIX] better control on value mutation
2017-10-20 13:40:56 -07:00
Régis Hanol
62156885ec
UX: remove 🔥 heading and ruler button from composer toolbar
2017-10-20 10:59:31 +02:00
Joffrey JAFFEUX
4d041d5b87
[FIX] Fix wizard spec
...
This commit introduces a mutation on input value given to select-box-kit when value is empty. The refactoring required to avoid this would be too heavy atm, but ultimately we would want to avoid this.
2017-10-19 17:34:56 -07:00
Joffrey JAFFEUX
d77ef05ee1
Fix broken tests
2017-10-19 14:32:37 -07:00
Joffrey JAFFEUX
ae1743c61f
[WIP] select-box-kit refactoring
2017-10-19 12:51:08 -07:00
Robin Ward
fb2e581b26
FIX: Headings must begin with heading--
to avoid some griefing
2017-10-16 11:53:47 -04:00
Robin Ward
5572d1d5f7
Refactor user summary page to use more components
2017-10-13 16:05:40 -04:00
Robin Ward
f4decf9193
The quote-other-topic
class has been removed
2017-10-06 15:16:06 -04:00
Guo Xiang Tan
91c5f928c2
FIX: Group#mentionable
and Group#messageable
not fully working.
2017-10-02 16:50:58 +08:00
Guo Xiang Tan
a370d7c7fd
FIX: Compatibility between Client and Server routing.
...
mend
2017-09-29 10:34:50 -04:00
Robin Ward
df81d109e5
The ability to attach attrs
when embedding widgets
2017-09-28 16:08:43 -04:00
Guo Xiang Tan
793ccd144e
Fix broken JS tests.
2017-09-26 16:15:25 +08:00
Robin Ward
b3ffa19f95
FIX: Make sure Post
records have access to Site
2017-09-25 13:18:26 -04:00
Robin Ward
09ed2ed749
Add Suspend User to flags page
2017-09-25 12:28:00 -04:00
Robin Ward
079f108ceb
UX: Improve interface for flagging with many flaggers
2017-09-25 12:28:00 -04:00
Robin Ward
6bce3004d9
UX: Nicer selection of suspend duration
2017-09-25 12:28:00 -04:00
Robin Ward
2a56cf8bb6
Tests + Refactoring for Suspension Modal
2017-09-25 12:26:06 -04:00
Robin Ward
6e48884274
Extract out common "cancel" link functionality from modals
2017-09-25 12:25:15 -04:00
Robin Ward
4020409bbf
Add support for suspension message
2017-09-25 12:25:14 -04:00
Robin Ward
daceeb9700
Refactor user suspension modal
2017-09-25 12:25:14 -04:00
Robin Ward
d7c37d9369
Add front end service for staff controls
2017-09-25 12:25:14 -04:00
Robin Ward
5cf50f0034
Adjust flagged posts to use the store
2017-09-25 12:25:14 -04:00
Robin Ward
cc1a461254
Convert flags admin to flexbox
2017-09-25 12:25:14 -04:00
Robin Ward
1af4acbb3d
Add tests to flagged topics
2017-09-25 12:25:14 -04:00
Robin Ward
40eba8cd93
FEATURE: View flags grouped by topic
2017-09-25 12:25:14 -04:00
Régis Hanol
8ed318c4fe
display 'similar to' earlier when composing a post
2017-09-16 01:03:29 +02:00
Joffrey JAFFEUX
e6385e4527
attempts to fix broken spec only on CI
2017-09-14 20:34:37 +02:00
Joffrey JAFFEUX
562e48dfb7
adds a dsl to simplify testing of the select-box
2017-09-14 19:50:32 +02:00
Robin Ward
8c2d6118ff
Remove some of the last few fa-icon
helpers
2017-09-14 11:20:36 -04:00
Robin Ward
4f9ba874a9
API so that you don't have to use a global variable for pretender
2017-09-13 11:55:58 -04:00
Joffrey JAFFEUX
c06c88b479
cleaner title attribute for select-box
2017-09-12 01:36:58 +02:00
Joffrey JAFFEUX
e924920bec
uses select-box for pinned-button
...
This commit also moves more logic in dropdown-select-box instead of
duplicating it for notifications-options and pinned-options
2017-09-11 19:14:22 +02:00
Joffrey JAFFEUX
7f9220a2cd
minor select-box fixes
...
- select row when using tab
- makes sure tab order is correct
- highlight first row when filtering
2017-09-11 00:38:32 +02:00
Joffrey JAFFEUX
a0f36a0401
fix broken spec
2017-09-10 21:07:13 +02:00
Joffrey JAFFEUX
4b558638c8
FEATURE: improves keyboard handling of select-box
...
- arrow keys
- escape key
2017-09-10 19:12:03 +02:00
Joffrey JAFFEUX
950b9e9eaf
FIX: keeps as much as possible the same api for select-box components
2017-09-09 20:29:07 +02:00
Joffrey JAFFEUX
cf6fb7622e
Replaces all notification-options like dropdowns with select-box
2017-09-08 20:47:39 +02:00
Joffrey JAFFEUX
dd27c0c80e
FIX: supports emojis in pinned topic excerpt
2017-09-07 11:06:04 +02:00
Joffrey JAFFEUX
ccf5005feb
FEATURE: uses select-box for topic-notifications-button component
...
- Introduces ComponentConnector to use a component inside a widget
- Use css to set size of components instead of properties
- Smarted positionning
- Style tweaks
2017-09-06 16:58:00 +02:00
Sam Saffron
46ebd0ee40
correct spec and allow for zero allowed iframes
2017-09-01 12:08:55 -04:00
Robin Ward
dffb1fc4ee
FEATURE: Use Glimmer compiler for widget templates
...
Widgets can now specify a template which is precompiled using Glimmer's
AST and then converted into our virtual dom code.
Example:
```javascript
createWidget('post-link-arrow', {
template: hbs`
{{#if attrs.above}}
<a class="post-info arrow" title={{i18n "topic.jump_reply_up"}}>
{{fa-icon "arrow-up"}}
</a>
{{else}}
<a class="post-info arrow" title={{i18n "topic.jump_reply_down"}}>
{{fa-icon "arrow-down"}}
</a>
{{/if}}
`,
click() {
DiscourseURL.routeTo(this.attrs.shareUrl);
}
});
```
2017-09-01 09:28:16 -04:00
Robin Ward
70706897f4
FIX: Test was failing on high DPI monitor
2017-08-30 15:32:58 -04:00
Robin Ward
3d95bac3fb
Migrate away from #discourse-modal
to .d-modal
2017-08-30 15:29:51 -04:00
Robin Ward
b100ea1baa
FIX: Broken acceptance test
2017-08-30 12:35:02 -04:00
Robin Ward
b210c801a4
FIX: Linting error
2017-08-30 11:30:57 -04:00
Joffrey JAFFEUX
746c5927e1
Replaces remaining {{category-chooser}} by {{category-select-box}}
...
To achieve replacement, this commit also adds support for:
- clearSelectionLabel which will allows to unselect any chosen category
- select-box inside a modal
- fixes minor css positioning issues
Note: {{category-chooser}} will be removed in the next weeks.
2017-08-30 17:04:17 +02:00
Guo Xiang Tan
0a53c589c4
Fix linting.
2017-08-30 15:36:45 +08:00
Joffrey JAFFEUX
1ea5205022
FIX: tests helper do not use es6
2017-08-29 16:16:51 +02:00
Joffrey JAFFEUX
1bcfa87d18
FIX: select-box broken spec
...
Introduces a test helper for selectBox to simplify these cases.
2017-08-29 15:51:25 +02:00
Joffrey JAFFEUX
f101fec19c
FIX: improves uncategorized support for category-select-box
2017-08-29 12:48:26 +02:00
Joffrey JAFFEUX
861dbe3b51
select-box refactoring
...
- more flexibility (allows custom title)
- less re-render
- more robustness
2017-08-29 12:25:54 +02:00
Joffrey JAFFEUX
b83c0747d9
FIX: select-box improvments
...
- more tests for category-select-box
- allows to clear selection
- fix positioning on safari
- focus on click
- do not display uncategorized if not allowed in settings
- fix component state impacting other specs
- better texts
- higher category-select-box on mobile
2017-08-28 14:34:04 +02:00
Joffrey JAFFEUX
14f06c2740
select-box minor fixes
2017-08-25 19:56:57 +02:00
Neil Lalonde
2c56f8df7c
FEATURE: show tags in search results
2017-08-25 11:52:59 -04:00
Joffrey JAFFEUX
d05df4a337
FIX: better headerText handling on select-box
2017-08-24 18:31:33 +02:00
Joffrey JAFFEUX
d52048ad34
Revert "Revert "FEATURE: improves select-box to support category selection on new topic""
...
This reverts commit 1d90f6016a
.
2017-08-24 16:04:47 +02:00
Robin Ward
16b67745d8
FIX: store:main
error when running QUnit tests checking disabled plugins
2017-08-23 19:34:31 -04:00
Joffrey JAFFEUX
1d90f6016a
Revert "FEATURE: improves select-box to support category selection on new topic"
...
This reverts commit 7b4e302677
.
2017-08-23 16:33:03 +02:00
Joffrey JAFFEUX
7b4e302677
FEATURE: improves select-box to support category selection on new topic
2017-08-23 15:08:19 +02:00
Guo Xiang Tan
93fe76fc02
Make eslint happy.
2017-08-21 21:56:22 +09:00
Guo Xiang Tan
9f11223250
Fix select-box
Qunit tests to use the proper Ember test helpers.
2017-08-16 09:35:56 +09:00
Joffrey JAFFEUX
cad6107624
refactors select-box
...
Note: this commit also now uses select-box for mobile topics controls
2017-08-16 00:41:56 +02:00
Neil Lalonde
d506e577a5
FEATURE: if full search returns no results, show google search form
2017-08-15 16:46:41 -04:00
Kyle Zhao
c3249f6e93
FEATURE: add full editing access to queued posts ( #5047 )
...
For pending new topics: the body of the post, title, categories
and the tags are editable.
For pending new replies: only the body is applicable and thus
editable
DISCUSSION: https://meta.discourse.org/t/66754
2017-08-15 12:44:05 -04:00
Joffrey JAFFEUX
482924b161
FEATURE: initial implementation of an ember native select
2017-08-13 14:34:50 +02:00
Régis Hanol
05a74d2534
FIX: navigation item counters weren't updating properly
2017-08-10 12:22:15 +02:00
Guo Xiang Tan
705f75dd8c
Merge pull request #5032 from xrav3nz/ux-hide-options-in-adv-search
...
UX: exclude irrelevant search filters for anonymous users
2017-08-09 18:21:44 +09:00
Kyle Zhao
9c6c4a7705
restructure search-test to test all filters w/ variable visibiltiy
2017-08-09 04:42:50 -04:00
Guo Xiang Tan
a9613163b5
FEATURE: Force user to enter reason when requesting for group membership.
2017-08-09 15:45:28 +09:00
Kyle Zhao
cea2a9fe53
UX: exclude irrelevant search filters for anonymous users
...
On the advanced search page, filters like "I've read", "I'm watch
-ing", etc, are irrelevant to anonymous users and should be hidden
2017-08-08 15:25:40 -04:00
Robin Ward
8dd7c0c984
UX: Convert buttons to d-button
2017-08-01 17:24:06 -04:00
Robin Ward
75d10a4098
UX: Add consistent classes to buttons
2017-08-01 17:24:06 -04:00
Neil Lalonde
ec85b41078
UX: Move watched words to the Logs section of admin
2017-07-31 17:06:50 -04:00
Sam
a13d146251
Correct post deletion spec so it is async
2017-07-28 10:50:18 -04: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
Robin Ward
5b590b9637
REFACTOR: Replace some fa-*
uses with helpers
2017-07-27 14:55:41 -04:00
Guo Xiang Tan
75374c76b3
UX: Display button to message group on group page.
...
https://meta.discourse.org/t/make-it-easier-to-send-a-message-to-groups/65065
2017-07-27 17:51:25 +09:00
Guo Xiang Tan
9c93a20cf1
Fix incorrect assertion in JS tests.
2017-07-27 17:05:08 +09:00
Neil Lalonde
24cb950432
FEATURE: Watched Words: when posts contain words, do one of flag, require approval, censor, or block
2017-07-26 11:01:09 -04:00
David Taylor
febd7621ea
Qunit plugin rake tasks ( #4985 )
...
* Allow running specific plugin tests using ENV variables
* Add a `rake plugin:qunit` task to match the existing `rake plugin:spec` task
* Improve docker.rake to allow running specific plugin qunit tests
* Purge cache before and after qunit tests
* Stop module auto-loader trying to auto-load tests
* Use URL query parameters to pass config into Qunit, avoiding caching issues
* Oops, searchParams doesn’t work in phantomJS. Parse the URL manually.
* Escape ampersands before passing URL to phantomJS, otherwise multiple parameters go wrong
2017-07-26 09:07:46 -04:00
Sam
17d56a4cb7
FEATURE: use Markdown for image pasted in as opposed to IMG tags
2017-07-25 15:11:38 -04:00
Joffrey JAFFEUX
22c5fb20b4
FIX: emoji-picker broken and skipped specs
2017-07-25 12:23:38 +02:00
Robin Ward
bc3a32385c
FIX: Empty lines should be selected for block quotes
2017-07-21 16:32:29 -04:00
Arpit Jalan
6d09fbde44
UX: use down chevron icon to expand "show more links.."
2017-07-22 00:10:37 +05:30
Joffrey JAFFEUX
c2db2c5c78
FIX: do not store scroll position in local storage
2017-07-21 20:18:32 +02:00
Joffrey JAFFEUX
e36d9f55c3
replaces links/imgs by buttons in the emoji-picker
2017-07-21 19:42:50 +02:00
Joffrey JAFFEUX
36b6ed7d8c
fix broken specs
2017-07-21 15:57:32 +02:00
Joffrey JAFFEUX
6754205c51
es-lints errors
2017-07-21 14:27:18 +02:00
Joffrey JAFFEUX
c906bd3f22
emoji-picker refactoring
2017-07-21 13:35:29 +02:00
Joffrey JAFFEUX
bb7241ccc2
simplify emoji-picker recent usage logic
2017-07-19 22:54:56 +02:00
Joffrey JAFFEUX
a7090c15ad
Skip emoji-picker tests
...
They are currently failing when using the rake task and not when
loading qunit directly from web ui
2017-07-19 17:07:53 +02:00
Joffrey JAFFEUX
be379596e6
skip random failures on travis ci
2017-07-19 16:48:23 +02:00
Joffrey JAFFEUX
7718141ee0
not applicable anymore
2017-07-19 16:48:23 +02:00
Joffrey JAFFEUX
c99a5bce8f
faster tests
2017-07-19 16:48:23 +02:00
Joffrey JAFFEUX
e5d81597b6
removes tests causing timeouts on travais
2017-07-19 16:48:23 +02:00
Joffrey JAFFEUX
6de258d4cf
FEATURE: Introduces new emoji-picker
2017-07-19 16:48:23 +02:00
Sam
d7d22554ca
correct js test
2017-07-17 18:06:11 -04:00
Robin Ward
cdb3706025
Track clicks on topics in search results
2017-07-17 15:42:32 -04:00
Sam Saffron
d0c5205a52
Feature: Change markdown engine to markdown it
...
This commit removes the old evilstreak markdownjs engine.
- Adds specs to WhiteLister and changes it to stop using globals
(Fixes large memory leak)
- Fixes edge cases around bbcode handling
- Removes mdtest which is no longer valid (to be replaced with
CommonMark)
- Updates MiniRacer to correct minor unmanaged memory leak
- Fixes plugin specs
2017-07-17 11:41:34 -04:00
Sam
79a084dd58
Revert "remove old markdown engine work-in-progress"
...
This reverts commit ee470b5317
.
2017-07-12 18:10:51 -04:00
Sam
bcbb9f208d
Revert "Integrate new engine, correct old specs"
...
This reverts commit f1b38ba4fb
.
2017-07-12 18:10:07 -04:00
Sam
8caaa6a56e
Revert "Remove mdtest, the plan is to use commonmark spec instead"
...
This reverts commit c64aabc964
.
2017-07-12 18:10:03 -04:00
Sam
c64aabc964
Remove mdtest, the plan is to use commonmark spec instead
2017-07-12 17:44:40 -04:00
Sam
f1b38ba4fb
Integrate new engine, correct old specs
...
corrects edge cases with
- full quotes
- [url] with nested tags
- engine overrides
- onebox applying to non http srcs
2017-07-12 17:44:40 -04:00
Sam Saffron
ee470b5317
remove old markdown engine work-in-progress
2017-07-12 17:44:40 -04:00
Robin Ward
754c1e5438
Upgrade to Babel 6
2017-07-05 15:25:23 -04:00
Sam Saffron
b8b4970481
correct some tests
2017-07-04 10:01:36 -04:00
Sam
e2f57a154b
FIX: blockquote button implementation
...
Previously clicking on blockquote in the middle of sentence
would result in incorrect formatting
2017-06-27 13:32:20 -04:00
Sam
8967d50dc2
Clean up sanitization code
...
- remove html table test, this is soon to be deprecated
- move sanitization tests into pretty text.rb
- fix up whitelister so it makes a copy of options
2017-06-26 15:21:47 -04:00
Sam
234694b50f
Feature: CommonMark support
...
This adds the markdown.it engine to Discourse.
https://github.com/markdown-it/markdown-it
As the migration is going to take a while the new engine is default
disabled. To enable it you must change the hidden site setting:
enable_experimental_markdown_it.
This commit is a squash of many other commits, it also includes some
improvements to autospec (ability to run plugins), and a dev dependency
on the og gem for html normalization.
2017-06-23 12:01:33 -04:00
Robin Ward
cc525b1a8d
Upgrade QUnit to latest version
2017-06-15 10:12:07 -04:00
Régis Hanol
f943efe1a9
remove use of soon-to-be-deprecated 'Discourse.SiteSettings' (cc @eviltrout)
2017-06-14 10:02:13 +02:00
Robin Ward
867cefc492
Ember.K was deprecated, so let's remove it.
2017-06-13 15:59:48 -04:00
Sam
826f332766
Merge pull request #4901 from jjaffeux/emoji-5.0
...
Emoji next
2017-06-13 11:12:41 -04:00
Régis Hanol
54e8fb0d89
FEATURE: new 'allow_staff_to_upload_any_file_in_pm' site setting
2017-06-12 22:41:29 +02:00
Arpit Jalan
b9c94aa234
FEATURE: add required user fields to invite accept form
...
UX: make "accept invitation" page consistent with sign up modal
2017-06-12 20:43:07 +05:30
Guo Xiang Tan
684b05f510
FIX: Strip zero-width characters from search terms.
2017-06-07 18:19:47 +09:00
Joffrey JAFFEUX
64336a8c75
Emoji 5.0 support
2017-06-05 14:06:23 +02:00
Robin Ward
e66fa82f3a
FIX: Don't load JS via SCRIPT tag in QUnit mode
2017-05-31 15:31:24 -04:00
Sam
febc2c571f
add a test for customize theme controller
2017-05-31 11:18:17 -04:00
Neil Lalonde
0c2a54dbb5
fix failing js test
2017-05-30 15:13:56 -04:00
Arpit Jalan
d2c2139da8
FEATURE: require name when accepting invite if 'full name required' setting is enabled
2017-05-29 21:46:43 +05:30
Robin Ward
2820cf2b50
FIX: Broken Acceptance test
2017-05-25 15:56:11 -04:00
Neil Lalonde
0a8e16d049
UX: show short flag descriptions in the flag modal on mobile
2017-05-19 15:35:10 -04:00
Neil Lalonde
019f954c44
fix js test failure
2017-05-18 13:36:45 -04:00
Neil Lalonde
dbb814ec6a
FIX: allow pasting links into title field that are longer than the max title length
2017-05-18 12:32:47 -04:00
Guo Xiang Tan
accd78cd8c
Make eslint happy.
2017-05-12 09:31:23 +08:00
Guo Xiang Tan
e63614024d
FIX: Users can't request to join group due to alias level restriction.
...
https://meta.discourse.org/t/request-to-join-group-not-working/62371
2017-05-12 09:26:26 +08:00