mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-02 03:55:55 +01:00
@@ -103,6 +103,7 @@ define(['taskbar', 'string'], function(taskbar, S) {
|
|||||||
module.bringModalToTop(chatModal);
|
module.bringModalToTop(chatModal);
|
||||||
checkOnlineStatus(chatModal);
|
checkOnlineStatus(chatModal);
|
||||||
taskbar.updateActive(uuid);
|
taskbar.updateActive(uuid);
|
||||||
|
scrollToBottom(chatModal.find('#chat-content'));
|
||||||
chatModal.find('#chat-message-input').focus();
|
chatModal.find('#chat-message-input').focus();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -153,10 +154,14 @@ define(['taskbar', 'string'], function(taskbar, S) {
|
|||||||
var date = new Date(parseInt(timestamp, 10));
|
var date = new Date(parseInt(timestamp, 10));
|
||||||
|
|
||||||
chatContent.append('[' + date.toLocaleTimeString() + '] ' + message);
|
chatContent.append('[' + date.toLocaleTimeString() + '] ' + message);
|
||||||
|
scrollToBottom(chatContent);
|
||||||
|
};
|
||||||
|
|
||||||
|
function scrollToBottom(chatContent) {
|
||||||
chatContent.scrollTop(
|
chatContent.scrollTop(
|
||||||
chatContent[0].scrollHeight - chatContent.height()
|
chatContent[0].scrollHeight - chatContent.height()
|
||||||
);
|
);
|
||||||
};
|
}
|
||||||
|
|
||||||
module.toggleNew = function(uuid, state) {
|
module.toggleNew = function(uuid, state) {
|
||||||
taskbar.toggleNew(uuid, state);
|
taskbar.toggleNew(uuid, state);
|
||||||
|
|||||||
@@ -104,6 +104,7 @@
|
|||||||
<strong>Post Delay</strong><br /> <input type="text" class="form-control" value="10000" data-field="postDelay"><br />
|
<strong>Post Delay</strong><br /> <input type="text" class="form-control" value="10000" data-field="postDelay"><br />
|
||||||
<strong>Minimum Title Length</strong><br /> <input type="text" class="form-control" value="3" data-field="minimumTitleLength"><br />
|
<strong>Minimum Title Length</strong><br /> <input type="text" class="form-control" value="3" data-field="minimumTitleLength"><br />
|
||||||
<strong>Minimum Post Length</strong><br /> <input type="text" class="form-control" value="8" data-field="minimumPostLength"><br />
|
<strong>Minimum Post Length</strong><br /> <input type="text" class="form-control" value="8" data-field="minimumPostLength"><br />
|
||||||
|
<strong>Chat Messages To Display</strong><br /> <input type="text" class="form-control" value="50" data-field="chatMessagesToDisplay"><br />
|
||||||
<div class="checkbox">
|
<div class="checkbox">
|
||||||
<label>
|
<label>
|
||||||
<input type="checkbox" data-field="allowGuestPosting"> <strong>Allow guests to post without logging in</strong>
|
<input type="checkbox" data-field="allowGuestPosting"> <strong>Allow guests to post without logging in</strong>
|
||||||
|
|||||||
@@ -233,6 +233,9 @@ var async = require('async'),
|
|||||||
}, {
|
}, {
|
||||||
field: 'maximumProfileImageSize',
|
field: 'maximumProfileImageSize',
|
||||||
value: 256
|
value: 256
|
||||||
|
}, {
|
||||||
|
field: 'chatMessagesToDisplay',
|
||||||
|
value: 50
|
||||||
}, {
|
}, {
|
||||||
field: 'theme:type',
|
field: 'theme:type',
|
||||||
value: 'local'
|
value: 'local'
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
var db = require('./database'),
|
var db = require('./database'),
|
||||||
async = require('async'),
|
async = require('async'),
|
||||||
user = require('./user');
|
user = require('./user'),
|
||||||
|
meta = require('./meta');
|
||||||
|
|
||||||
|
|
||||||
(function(Messaging) {
|
(function(Messaging) {
|
||||||
@@ -38,7 +39,7 @@ var db = require('./database'),
|
|||||||
Messaging.getMessages = function(fromuid, touid, callback) {
|
Messaging.getMessages = function(fromuid, touid, callback) {
|
||||||
var uids = sortUids(fromuid, touid);
|
var uids = sortUids(fromuid, touid);
|
||||||
|
|
||||||
db.getListRange('messages:' + uids[0] + ':' + uids[1], 0, -1, function(err, mids) {
|
db.getListRange('messages:' + uids[0] + ':' + uids[1], -((meta.config.chatMessagesToDisplay || 50) - 1), -1, function(err, mids) {
|
||||||
if (err) {
|
if (err) {
|
||||||
return callback(err, null);
|
return callback(err, null);
|
||||||
}
|
}
|
||||||
@@ -49,6 +50,9 @@ var db = require('./database'),
|
|||||||
|
|
||||||
|
|
||||||
user.getUserField(touid, 'username', function(err, tousername) {
|
user.getUserField(touid, 'username', function(err, tousername) {
|
||||||
|
if(err) {
|
||||||
|
return callback(err, null);
|
||||||
|
}
|
||||||
|
|
||||||
var messages = [];
|
var messages = [];
|
||||||
|
|
||||||
@@ -78,7 +82,7 @@ var db = require('./database'),
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
};
|
||||||
|
|
||||||
Messaging.updateChatTime = function(uid, toUid, callback) {
|
Messaging.updateChatTime = function(uid, toUid, callback) {
|
||||||
db.sortedSetAdd('uid:' + uid + ':chats', Date.now(), toUid, function(err) {
|
db.sortedSetAdd('uid:' + uid + ':chats', Date.now(), toUid, function(err) {
|
||||||
@@ -90,11 +94,11 @@ var db = require('./database'),
|
|||||||
|
|
||||||
Messaging.getRecentChats = function(uid, callback) {
|
Messaging.getRecentChats = function(uid, callback) {
|
||||||
db.getSortedSetRevRange('uid:' + uid + ':chats', 0, 9, function(err, uids) {
|
db.getSortedSetRevRange('uid:' + uid + ':chats', 0, 9, function(err, uids) {
|
||||||
if (!err) {
|
if(err) {
|
||||||
user.getMultipleUserFields(uids, ['username', 'picture', 'uid'], callback);
|
return callback(err);
|
||||||
} else {
|
|
||||||
callback(err);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
user.getMultipleUserFields(uids, ['username', 'picture', 'uid'], callback);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user