From 69a2ad626bf2f265f546feff547212f54e8bd5d1 Mon Sep 17 00:00:00 2001 From: Joffrey JAFFEUX Date: Fri, 21 Feb 2020 22:14:24 +0100 Subject: [PATCH] FIX: ensures group automatic membership dropdown works (#9022) This commit also fixes a deprecation warning as the previous component was overriding a computed property from the group model. Finally a test has been added as this is the only place where we use list-setting outside of the settings, this was highly subject to regressions. --- .../components/groups-form-membership-fields.js.es6 | 9 ++++++++- .../components/groups-form-membership-fields.hbs | 7 ++++++- .../acceptance/group-manage-membership-test.js.es6 | 8 ++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/discourse/components/groups-form-membership-fields.js.es6 b/app/assets/javascripts/discourse/components/groups-form-membership-fields.js.es6 index 304f3d808d..78903d6c5a 100644 --- a/app/assets/javascripts/discourse/components/groups-form-membership-fields.js.es6 +++ b/app/assets/javascripts/discourse/components/groups-form-membership-fields.js.es6 @@ -46,9 +46,16 @@ export default Component.extend({ return allowMembershipRequests || visibility_level > 1; }, + emailDomains: computed("model.emailDomains", function() { + return this.model.emailDomains.split(this.tokenSeparator).filter(Boolean); + }), + actions: { onChangeEmailDomainsSetting(value) { - this.set("model.emailDomains", value.join(this.tokenSeparator)); + this.set( + "model.automatic_membership_email_domains", + value.join(this.tokenSeparator) + ); } } }); diff --git a/app/assets/javascripts/discourse/templates/components/groups-form-membership-fields.hbs b/app/assets/javascripts/discourse/templates/components/groups-form-membership-fields.hbs index 7d1e05cb58..3b1a41304a 100644 --- a/app/assets/javascripts/discourse/templates/components/groups-form-membership-fields.hbs +++ b/app/assets/javascripts/discourse/templates/components/groups-form-membership-fields.hbs @@ -8,9 +8,14 @@ {{list-setting name="automatic_membership" - settingValue=model.emailDomains class="group-form-automatic-membership-automatic" + value=emailDomains + choices=emailDomains + settingName="name" + nameProperty=null + valueProperty=null onChange=(action "onChangeEmailDomainsSetting") + options=(hash allowAny=true) }}