diff --git a/platform/search/src/services/GenericSearchProvider.js b/platform/search/src/services/GenericSearchProvider.js index 251b0d98ff..cc93655f45 100644 --- a/platform/search/src/services/GenericSearchProvider.js +++ b/platform/search/src/services/GenericSearchProvider.js @@ -121,9 +121,13 @@ define([ provider = this; mutationTopic.listen(function (mutatedObject) { - var id = mutatedObject.getId(), - model = mutatedObject.getModel(); - provider.index(id, model); + var status = mutatedObject.getCapability('status'); + if (!status || !status.get('editing')) { + provider.index( + mutatedObject.getId(), + mutatedObject.getModel() + ); + } }); }; diff --git a/platform/search/test/services/GenericSearchProviderSpec.js b/platform/search/test/services/GenericSearchProviderSpec.js index 9934d5130a..97f12966b1 100644 --- a/platform/search/test/services/GenericSearchProviderSpec.js +++ b/platform/search/test/services/GenericSearchProviderSpec.js @@ -101,7 +101,11 @@ define([ it('re-indexes when mutation occurs', function () { var mockDomainObject = - jasmine.createSpyObj('domainObj', ['getId', 'getModel']), + jasmine.createSpyObj('domainObj', [ + 'getId', + 'getModel', + 'getCapability' + ]), testModel = { some: 'model' }; mockDomainObject.getId.andReturn("some-id"); mockDomainObject.getModel.andReturn(testModel);