mirror of
https://github.com/TryGhost/Ghost.git
synced 2025-03-11 02:12:21 -05:00
🐛 Ensured webhooks are created once (#12075)
refs #12074 Since we've split members settings into multiple keys the reconfiguration of the members-api has been happening in quick succession as the stripe_connect_* settings are all set at once. This debounces the call to reconfigure the members-api so that we only need to instantiate it once.
This commit is contained in:
parent
415696a3f9
commit
69080824de
1 changed files with 14 additions and 7 deletions
|
@ -9,6 +9,7 @@ const urlUtils = require('../../../shared/url-utils');
|
|||
const settingsCache = require('../settings/cache');
|
||||
const config = require('../../../shared/config');
|
||||
const ghostVersion = require('../../lib/ghost-version');
|
||||
const _ = require('lodash');
|
||||
|
||||
const membersConfig = new MembersConfigProvider({
|
||||
config,
|
||||
|
@ -21,6 +22,18 @@ const membersConfig = new MembersConfigProvider({
|
|||
let membersApi;
|
||||
let membersSettings;
|
||||
|
||||
function reconfigureMembersAPI() {
|
||||
const reconfiguredMembersAPI = createMembersApiInstance(membersConfig);
|
||||
reconfiguredMembersAPI.bus.on('ready', function () {
|
||||
membersApi = reconfiguredMembersAPI;
|
||||
});
|
||||
reconfiguredMembersAPI.bus.on('error', function (err) {
|
||||
logging.error(err);
|
||||
});
|
||||
}
|
||||
|
||||
const debouncedReconfigureMembersAPI = _.debounce(reconfigureMembersAPI, 600);
|
||||
|
||||
// Bind to events to automatically keep subscription info up-to-date from settings
|
||||
events.on('settings.edited', function updateSettingFromModel(settingModel) {
|
||||
if (![
|
||||
|
@ -39,13 +52,7 @@ events.on('settings.edited', function updateSettingFromModel(settingModel) {
|
|||
return;
|
||||
}
|
||||
|
||||
const reconfiguredMembersAPI = createMembersApiInstance(membersConfig);
|
||||
reconfiguredMembersAPI.bus.on('ready', function () {
|
||||
membersApi = reconfiguredMembersAPI;
|
||||
});
|
||||
reconfiguredMembersAPI.bus.on('error', function (err) {
|
||||
logging.error(err);
|
||||
});
|
||||
debouncedReconfigureMembersAPI();
|
||||
});
|
||||
|
||||
const membersService = {
|
||||
|
|
Loading…
Add table
Reference in a new issue