From 18d6ad4f62b889128d6d01223c3a3ae657d96e94 Mon Sep 17 00:00:00 2001 From: Hedgehog Date: Sun, 30 Mar 2014 20:28:38 +0400 Subject: [PATCH] sort DM thread list by date sort DM thread list by date --- js/twister_directmsg.js | 18 +++++++++++++++++- js/twister_formatpost.js | 3 ++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/js/twister_directmsg.js b/js/twister_directmsg.js index d4a358f..48d1153 100644 --- a/js/twister_directmsg.js +++ b/js/twister_directmsg.js @@ -19,8 +19,24 @@ function processDMsnippet(dmUsers, dmThreadList) { for( var u in dmUsers ) { if( dmUsers.hasOwnProperty(u) ) { + // convert snipped to html and add it to date-sorted list var dmItem = dmDataToSnippetItem(dmUsers[u][0], u); - dmThreadList.append(dmItem); + var timeDmItem = parseInt(dmItem.attr("data-time")); + var existingItems = dmThreadList.children(); + var j = 0; + for( j = 0; j < existingItems.length; j++) { + var streamItem = existingItems.eq(j); + var timeExisting = streamItem.attr("data-time"); + if( timeExisting == undefined || + timeDmItem > parseInt(timeExisting) ) { + // this post in stream is older, so post must be inserted above + streamItem.before(dmItem); + break; + } + } + if( j == existingItems.length ) { + dmThreadList.append(dmItem); + } } } $.MAL.dmThreadListLoaded(); diff --git a/js/twister_formatpost.js b/js/twister_formatpost.js index 36a5468..f85f630 100644 --- a/js/twister_formatpost.js +++ b/js/twister_formatpost.js @@ -118,7 +118,8 @@ function dmDataToSnippetItem(dmData, remoteUser) { dmItem.removeAttr('id'); dmItem.attr("data-dm-screen-name",remoteUser); dmItem.attr("data-last_id", dmData.id); - + dmItem.attr("data-time", dmData.time); + dmItem.find(".post-info-tag").text("@" + remoteUser); dmItem.find("a.post-info-name").attr("href", $.MAL.userUrl(remoteUser)); dmItem.find("a.dm-chat-link").attr("href", $.MAL.dmchatUrl(remoteUser));