mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-12-24 01:10:31 +01:00
* fix: #7038, autoLocale logic not playing nicely with no-refresh auths - on login, req.query.lang is deleted (since it seems to be left over) - on logout, the middleware.autoLocale is executed, which resets req.query.lang - middleware.autoLocale is new, just refactored existing logic in webserver.js into new middleware method. * style: tests, use lodash * fix: timeago strings not switching languages on login or out
This commit is contained in:
@@ -9,17 +9,20 @@ var meta = require('../src/meta');
|
||||
|
||||
describe('Language detection', function () {
|
||||
it('should detect the language for a guest', function (done) {
|
||||
meta.config.autoDetectLang = 1;
|
||||
request(nconf.get('url') + '/api/config', {
|
||||
headers: {
|
||||
'Accept-Language': 'de-DE,de;q=0.5',
|
||||
},
|
||||
}, function (err, res, body) {
|
||||
meta.configs.set('autoDetectLang', 1, function (err) {
|
||||
assert.ifError(err);
|
||||
assert.ok(body);
|
||||
request(nconf.get('url') + '/api/config', {
|
||||
headers: {
|
||||
'Accept-Language': 'de-DE,de;q=0.5',
|
||||
},
|
||||
json: true,
|
||||
}, function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.ok(body);
|
||||
|
||||
assert.strictEqual(JSON.parse(body).userLang, 'de');
|
||||
done();
|
||||
assert.strictEqual(body.userLang, 'de');
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -30,11 +33,12 @@ describe('Language detection', function () {
|
||||
headers: {
|
||||
'Accept-Language': 'de-DE,de;q=0.5',
|
||||
},
|
||||
json: true,
|
||||
}, function (err, res, body) {
|
||||
assert.ifError(err);
|
||||
assert.ok(body);
|
||||
|
||||
assert.strictEqual(JSON.parse(body).userLang, 'en-GB');
|
||||
assert.strictEqual(body.userLang, 'en-GB');
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user