mirror of
https://github.com/NodeBB/NodeBB.git
synced 2026-03-03 11:01:20 +01:00
test: fix username test
move cover:url code to user/data.js like uploadedpicture
This commit is contained in:
@@ -119,13 +119,6 @@ helpers.getUserDataByUserSlug = async function (userslug, callerUID, query = {})
|
|||||||
userData.signature = escape(userData.signature);
|
userData.signature = escape(userData.signature);
|
||||||
userData.birthday = validator.escape(String(userData.birthday || ''));
|
userData.birthday = validator.escape(String(userData.birthday || ''));
|
||||||
userData.moderationNote = validator.escape(String(userData.moderationNote || ''));
|
userData.moderationNote = validator.escape(String(userData.moderationNote || ''));
|
||||||
|
|
||||||
if (userData['cover:url']) {
|
|
||||||
userData['cover:url'] = userData['cover:url'].startsWith('http') ? userData['cover:url'] : (nconf.get('relative_path') + userData['cover:url']);
|
|
||||||
} else {
|
|
||||||
userData['cover:url'] = require('../../coverPhoto').getDefaultProfileCover(userData.uid);
|
|
||||||
}
|
|
||||||
|
|
||||||
userData['cover:position'] = validator.escape(String(userData['cover:position'] || '50% 50%'));
|
userData['cover:position'] = validator.escape(String(userData['cover:position'] || '50% 50%'));
|
||||||
userData['username:disableEdit'] = !userData.isAdmin && meta.config['username:disableEdit'];
|
userData['username:disableEdit'] = !userData.isAdmin && meta.config['username:disableEdit'];
|
||||||
userData['email:disableEdit'] = !userData.isAdmin && meta.config['email:disableEdit'];
|
userData['email:disableEdit'] = !userData.isAdmin && meta.config['email:disableEdit'];
|
||||||
|
|||||||
@@ -7,6 +7,11 @@ const db = require('../database');
|
|||||||
const plugins = require('../plugins');
|
const plugins = require('../plugins');
|
||||||
const utils = require('../utils');
|
const utils = require('../utils');
|
||||||
const translator = require('../translator');
|
const translator = require('../translator');
|
||||||
|
const coverPhoto = require('../coverPhoto');
|
||||||
|
|
||||||
|
const relative_path = nconf.get('relative_path');
|
||||||
|
|
||||||
|
const prependRelativePath = url => url.startsWith('http') ? url : relative_path + url;
|
||||||
|
|
||||||
const intFields = [
|
const intFields = [
|
||||||
'createtime', 'memberCount', 'hidden', 'system', 'private',
|
'createtime', 'memberCount', 'hidden', 'system', 'private',
|
||||||
@@ -81,17 +86,13 @@ function modifyGroup(group, fields) {
|
|||||||
|
|
||||||
group['cover:thumb:url'] = group['cover:thumb:url'] || group['cover:url'];
|
group['cover:thumb:url'] = group['cover:thumb:url'] || group['cover:url'];
|
||||||
|
|
||||||
if (group['cover:url']) {
|
group['cover:url'] = group['cover:url'] ?
|
||||||
group['cover:url'] = group['cover:url'].startsWith('http') ? group['cover:url'] : (nconf.get('relative_path') + group['cover:url']);
|
prependRelativePath(group['cover:url']) :
|
||||||
} else {
|
coverPhoto.getDefaultGroupCover(group.name);
|
||||||
group['cover:url'] = require('../coverPhoto').getDefaultGroupCover(group.name);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (group['cover:thumb:url']) {
|
group['cover:thumb:url'] = group['cover:thumb:url'] ?
|
||||||
group['cover:thumb:url'] = group['cover:thumb:url'].startsWith('http') ? group['cover:thumb:url'] : (nconf.get('relative_path') + group['cover:thumb:url']);
|
prependRelativePath(group['cover:thumb:url']) :
|
||||||
} else {
|
coverPhoto.getDefaultGroupCover(group.name);
|
||||||
group['cover:thumb:url'] = require('../coverPhoto').getDefaultGroupCover(group.name);
|
|
||||||
}
|
|
||||||
|
|
||||||
group['cover:position'] = validator.escape(String(group['cover:position'] || '50% 50%'));
|
group['cover:position'] = validator.escape(String(group['cover:position'] || '50% 50%'));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,9 +9,12 @@ const meta = require('../meta');
|
|||||||
const plugins = require('../plugins');
|
const plugins = require('../plugins');
|
||||||
const activitypub = require('../activitypub');
|
const activitypub = require('../activitypub');
|
||||||
const utils = require('../utils');
|
const utils = require('../utils');
|
||||||
|
const coverPhoto = require('../coverPhoto');
|
||||||
|
|
||||||
const relative_path = nconf.get('relative_path');
|
const relative_path = nconf.get('relative_path');
|
||||||
|
|
||||||
|
const prependRelativePath = url => url.startsWith('http') ? url : relative_path + url;
|
||||||
|
|
||||||
const intFields = [
|
const intFields = [
|
||||||
'uid', 'postcount', 'topiccount', 'reputation', 'profileviews',
|
'uid', 'postcount', 'topiccount', 'reputation', 'profileviews',
|
||||||
'banned', 'banned:expire', 'email:confirmed', 'joindate', 'lastonline',
|
'banned', 'banned:expire', 'email:confirmed', 'joindate', 'lastonline',
|
||||||
@@ -257,12 +260,18 @@ module.exports = function (User) {
|
|||||||
parseGroupTitle(user);
|
parseGroupTitle(user);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (user.picture && user.picture === user.uploadedpicture) {
|
if (user.uploadedpicture || user.picture) {
|
||||||
user.uploadedpicture = user.picture.startsWith('http') ? user.picture : relative_path + user.picture;
|
const source = (user.picture && user.picture === user.uploadedpicture) ? user.picture : user.uploadedpicture;
|
||||||
user.picture = user.uploadedpicture;
|
if (source) {
|
||||||
} else if (user.uploadedpicture) {
|
user.uploadedpicture = prependRelativePath(source);
|
||||||
user.uploadedpicture = user.uploadedpicture.startsWith('http') ? user.uploadedpicture : relative_path + user.uploadedpicture;
|
user.picture = user.uploadedpicture;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
user['cover:url'] = user['cover:url'] ?
|
||||||
|
prependRelativePath(user['cover:url']) :
|
||||||
|
coverPhoto.getDefaultProfileCover(user.uid);
|
||||||
|
|
||||||
if (meta.config.defaultAvatar && !user.picture) {
|
if (meta.config.defaultAvatar && !user.picture) {
|
||||||
user.picture = User.getDefaultAvatar();
|
user.picture = User.getDefaultAvatar();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -176,7 +176,7 @@ describe('User', () => {
|
|||||||
await assert.rejects(User.create({
|
await assert.rejects(User.create({
|
||||||
username: '-.-', // slug becomes .
|
username: '-.-', // slug becomes .
|
||||||
password: '123456',
|
password: '123456',
|
||||||
}), { message: '[[error:invalid-username, -.-]]' });
|
}), { message: '[[error:invalid-username]]' });
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should create user with valid slug (-.-.- => .-.)', async () => {
|
it('should create user with valid slug (-.-.- => .-.)', async () => {
|
||||||
|
|||||||
Reference in New Issue
Block a user