From 110ee58b713950bbead36dac706ea80fd5e9db98 Mon Sep 17 00:00:00 2001 From: Nick Winter <livelily@gmail.com> Date: Thu, 22 Oct 2015 06:42:42 -0700 Subject: [PATCH] Fix 3126: campaigns not respecting i18n-coverage query --- server/campaigns/campaign_handler.coffee | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/server/campaigns/campaign_handler.coffee b/server/campaigns/campaign_handler.coffee index 6b40def2e..de5e06181 100644 --- a/server/campaigns/campaign_handler.coffee +++ b/server/campaigns/campaign_handler.coffee @@ -39,7 +39,13 @@ CampaignHandler = class CampaignHandler extends Handler get: (req, res) -> return @sendForbiddenError(res) if not @hasAccess(req) # We don't have normal text search or anything set up to make /db/campaign work, so we'll just give them all campaigns, no problem. - q = @modelClass.find {} + query = {} + projection = {} + if @modelClass.schema.uses_coco_translation_coverage and req.query.view is 'i18n-coverage' + query = i18nCoverage: {$exists: true} + if req.query.project + projection[field] = 1 for field in req.query.project.split(',') + q = @modelClass.find query, projection q.exec (err, documents) => return @sendDatabaseError(res, err) if err documents = (@formatEntity(req, doc) for doc in documents)