From 1b5b95ca4304e059a55ecd33ecb666d7f4db8cd3 Mon Sep 17 00:00:00 2001 From: Lucas Hrabovsky Date: Thu, 20 Oct 2016 14:31:11 -0400 Subject: [PATCH] Fix Intercom email can't be blank error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The below started appearing when intercom messenger was upgraded several weeks ago. The root cause is user resource would send `email:‘’` which fails validation on Intercom's API server. If we instead allow email to default to undefined, no empty string is sent to intercom’s server and validation passes. After this is merged, we’ll also need to change models/user.js in Compass. ``` Failed to load resource: the server responded with a status of 400 (Bad Request) Uncaught (in promise {"type":"error.list","request_id":"anscsvqg0eamtn7i98t0","errors":[{"cod e":"parameter_invalid","message":"Email can't be blank"}]} ``` --- package.json | 2 +- src/app/models/user.js | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 5c7b3596004..4f27f39c466 100644 --- a/package.json +++ b/package.json @@ -130,7 +130,7 @@ "mongodb-explain-plan-model": "^0.2.1", "mongodb-extended-json": "^1.7.0", "mongodb-instance-model": "^3.1.7", - "mongodb-js-metrics": "^1.5.0", + "mongodb-js-metrics": "^1.5.2", "mongodb-language-model": "^0.3.3", "mongodb-ns": "^1.0.3", "mongodb-schema": "^5.0.0", diff --git a/src/app/models/user.js b/src/app/models/user.js index 78ffdf85a8a..d93dfc4c412 100644 --- a/src/app/models/user.js +++ b/src/app/models/user.js @@ -22,7 +22,12 @@ var User = Model.extend(storageMixin, { } }, name: 'string', - email: 'string', + email: { + type: 'any', + default: undefined, + required: false, + allowNull: true + }, createdAt: 'date', lastUsed: 'date', avatarUrl: 'string',