##// END OF EJS Templates
Caching all threads on the page, on every one of them separately.
Caching all threads on the page, on every one of them separately.

File last commit:

r126:cf0891c7 default
r191:844d6cfb default
Show More
refmaps.js
38 lines | 1.2 KiB | application/javascript | JavascriptLexer
function addRefLinkMap() {
var postByNum = [], refMap = [];
$('.post').each(function() {
var self = $(this);
var postNum = self.attr('id');
//add post by id
postByNum[postNum] = self;
//add ref link
self.find('p').children('a').each(function() {
if($(this).text().indexOf('>>') == 0) {
var refNum = $(this).text().match(/\d+/);
if(postByNum[refNum]) {
if(!refMap[refNum])
refMap[refNum] = [];
//if !exist
if((',' + refMap[refNum].toString() + ',').indexOf(',' + postNum + ',') < 0) {
refMap[refNum].push(postNum);
};
}
}
});
});
var label_replies = gettext('Replies') + ':';
for(var pNum in refMap) {
if(typeof refMap[pNum] === 'object') {
//append refmap panel
if(!$("#refmap_"+pNum).length) {
var data = label_replies + refMap[pNum].toString().replace(/(\d+)/g, ' <a href="/jump/$1/">>>$1</a>');
$('#'+pNum+'').find('.message').after($('<div class="refmap" id="refmap_'+pNum+'">'+data+'</div>'));
}
}
}
}