Files
NodeBB/public/src/forum/account/topics.js

45 lines
1.1 KiB
JavaScript
Raw Normal View History

2014-04-03 12:42:40 -04:00
'use strict';
2014-05-17 17:55:51 -04:00
/* globals define, app, socket, utils */
2014-04-03 12:42:40 -04:00
define('forum/account/topics', ['forum/account/header', 'forum/infinitescroll'], function(header, infinitescroll) {
2014-05-17 17:55:51 -04:00
var AccountTopics = {};
2014-04-03 12:42:40 -04:00
AccountTopics.init = function() {
header.init();
2014-05-17 17:55:51 -04:00
infinitescroll.init(loadMore);
2014-04-03 12:42:40 -04:00
};
2014-05-17 17:55:51 -04:00
function loadMore(direction) {
if (direction < 0) {
return;
}
infinitescroll.loadMore('topics.loadMoreFromSet', {
2014-04-03 12:42:40 -04:00
set: 'uid:' + $('.account-username-box').attr('data-uid') + ':topics',
after: $('.user-topics').attr('data-nextstart')
2014-06-02 20:41:03 -04:00
}, function(data, done) {
2014-04-03 12:42:40 -04:00
if (data.topics && data.topics.length) {
2014-06-02 20:41:03 -04:00
onTopicsLoaded(data.topics, done);
2014-04-03 12:42:40 -04:00
$('.user-topics').attr('data-nextstart', data.nextStart);
2014-06-02 20:41:03 -04:00
} else {
done();
2014-04-03 12:42:40 -04:00
}
});
}
2014-06-02 20:41:03 -04:00
function onTopicsLoaded(topics, callback) {
2014-05-17 17:55:51 -04:00
infinitescroll.parseAndTranslate('account/topics', 'topics', {topics: topics}, function(html) {
$('#topics-container').append(html);
html.find('span.timeago').timeago();
app.createUserTooltips();
utils.makeNumbersHumanReadable(html.find('.human-readable-number'));
2014-06-02 20:41:03 -04:00
callback();
2014-04-03 12:42:40 -04:00
});
}
return AccountTopics;
2014-04-10 20:31:57 +01:00
});