}, function(token, tokenSecret, profile, done) { log().trace({ 'tenant': tenant, 'profile': profile }, 'Received Twitter authentication callback.'); // Use the Twitter handle to register this user. // Unfortunately Twitter doesn't hand out the e-mail address. // See: https://dev.twitter.com/discussions/4019 var username = profile.username; var displayName = profile.displayName; var opts = { // Twitter uses Ruby on Rails timezone names, use a mapper to map them to TZInfo timezones timezone: TZ.getTimezoneFromRails(profile._json.time_zone) }; var picture = profile['_json']['profile_image_url_https']; if (picture) { opts.smallPictureUri = 'remote:' + picture; opts.mediumPictureUri = 'remote:' + picture; } var context = new Context(tenant, null); getOrCreateUser(context, AuthenticationConstants.providers.TWITTER, username, displayName, opts, done); });
}, function(token, tokenSecret, profile, done) { log().trace({ 'tenant': tenant, 'profile': profile }, 'Received Twitter authentication callback.'); // Use the Twitter handle to register this user. var username = profile.username; var displayName = profile.displayName; var opts = { // Twitter uses Ruby on Rails timezone names, use a mapper to map them to TZInfo timezones timezone: TZ.getTimezoneFromRails(profile._json.time_zone) }; var context = new Context(tenant, null); getOrCreateUser(context, AuthenticationConstants.providers.TWITTER, username, displayName, opts, done); });
it('verify proper rails conversion', function() { assert.equal(TZ.getTimezoneFromRails('Brussels'), 'Europe/Brussels'); assert.equal(TZ.getTimezoneFromRails('Pacific Time (US & Canada)'), 'America/Los_Angeles'); });
it('verify proper rails conversion', () => { assert.strictEqual(tz.getTimezoneFromRails('Brussels'), 'Europe/Brussels'); assert.strictEqual(tz.getTimezoneFromRails('Pacific Time (US & Canada)'), 'America/Los_Angeles'); });