v1.18.x
barisusakli 11 years ago
parent 0f258859a7
commit 63a7766ac1

@ -42,8 +42,8 @@ define('forum/category', ['composer', 'forum/pagination', 'forum/infinitescroll'
var clickedTid = $(this).parents('li.category-item[data-tid]').attr('data-tid'); var clickedTid = $(this).parents('li.category-item[data-tid]').attr('data-tid');
$('#topics-container li.category-item').each(function(index, el) { $('#topics-container li.category-item').each(function(index, el) {
if($(el).offset().top - $(window).scrollTop() > 0) { if($(el).offset().top - $(window).scrollTop() > 0) {
localStorage.setItem('category:bookmark', $(el).attr('data-tid')); localStorage.setItem('category:' + cid + ':bookmark', $(el).attr('data-tid'));
localStorage.setItem('category:bookmark:clicked', clickedTid); localStorage.setItem('category:' + cid + ':bookmark:clicked', clickedTid);
return false; return false;
} }
}); });
@ -84,45 +84,53 @@ define('forum/category', ['composer', 'forum/pagination', 'forum/infinitescroll'
$(window).on('action:popstate', function(ev, data) { $(window).on('action:popstate', function(ev, data) {
if(data.url.indexOf('category/') === 0) { if(data.url.indexOf('category/') === 0) {
var bookmark = localStorage.getItem('category:bookmark'); var cid = data.url.match(/^category\/(\d+)/);
var clicked = localStorage.getItem('category:bookmark:clicked'); if (cid && cid[1]) {
cid = cid[1];
}
if (!cid) {
return;
}
if (bookmark) { var bookmark = localStorage.getItem('category:' + cid + ':bookmark');
var clicked = localStorage.getItem('category:' + cid + ':bookmark:clicked');
if(config.usePagination) { if (!bookmark) {
socket.emit('topics.getTidPage', bookmark, function(err, page) { return;
if(err) { }
return;
}
if(parseInt(page, 10) !== pagination.currentPage) {
pagination.loadPage(page);
} else {
Category.scrollToTopic(bookmark, clicked, 400);
}
});
} else {
socket.emit('topics.getTidIndex', bookmark, function(err, index) { if(config.usePagination) {
if(err) { socket.emit('topics.getTidPage', bookmark, function(err, page) {
return; if (err) {
} return;
}
if(parseInt(page, 10) !== pagination.currentPage) {
pagination.loadPage(page);
} else {
Category.scrollToTopic(bookmark, clicked, 400);
}
});
} else {
socket.emit('topics.getTidIndex', bookmark, function(err, index) {
if (err) {
return;
}
if(index === 0) { if (index === 0) {
Category.highlightTopic(clicked); Category.highlightTopic(clicked);
return; return;
} }
if (index < 0) { if (index < 0) {
index = 0; index = 0;
} }
$('#topics-container').empty(); $('#topics-container').empty();
loadTopicsAfter(index, function() { loadTopicsAfter(index, function() {
Category.scrollToTopic(bookmark, clicked, 0); Category.scrollToTopic(bookmark, clicked, 0);
});
}); });
} });
} }
} }
}); });

@ -6,7 +6,7 @@ define('alerts', function() {
module.alert = function (params) { module.alert = function (params) {
params.alert_id = 'alert_button_' + (params.alert_id ? params.alert_id : new Date().getTime()); params.alert_id = 'alert_button_' + (params.alert_id ? params.alert_id : new Date().getTime());
params.title = params.title.trim() || ''; params.title = params.title ? params.title.trim() || '' : '';
params.message = params.message.trim(); params.message = params.message.trim();
params.location = params.location || 'right-top'; params.location = params.location || 'right-top';

Loading…
Cancel
Save