All ordering implemented (I think)

This commit is contained in:
jacktjong
2022-11-03 14:10:01 +01:00
parent d1bcb2be83
commit d896c1d6dd
2 changed files with 38 additions and 22 deletions

View File

@@ -93,26 +93,41 @@ function searchForWords(searchWords, tweets){
return filteredTweets.reverse()
}
function sortTweets(tweets, likesDes=null, retweetsDes=null, repliesDes=null, dateDes=null){
if(likesDes && likesDes!=null){
tweets.sort(function(a,b){return b.favorite_count-a.favorite_count})
} else if (!likesDes && likesDes!=null){
tweets.sort(function(a,b){return a.favorite_count-b.favorite_count})
function sortTweets(tweets, sort){
if(typeof sort.sortby == 'undefined'){
return tweets
}
if(retweetsDes && retweetsDes!=null){
tweets.sort(function(a,b){return b.retweet_count-a.retweet_count})
} else if (!retweetsDes && retweetsDes!=null){
tweets.sort(function(a,b){return a.retweet_count-b.retweet_count})
if(typeof sort.order == 'undefined'){
sort.order = 'asc'
}
if(repliesDes && repliesDes!=null){
tweets.sort(function(a,b){return b.reply_count-a.reply_count})
} else if (!repliesDes && repliesDes!=null){
tweets.sort(function(a,b){return a.reply_count-b.reply_count})
if(sort.sortby == "likes"){
if(sort.order == 'asc'){
tweets.sort(function(a,b){return b.favorite_count-a.favorite_count})
} else{
tweets.sort(function(a,b){return a.favorite_count-b.favorite_count})
}
}
if(dateDes && dateDes!=null){
tweets.sort(function(a,b){return Date(b.created_at)-Date(a.reply_count)})
} else if (!dateDes && dateDes!=null){
tweets.sort(function(a,b){return Date(a.created_at)-Date(b.reply_count)})
if(sort.sortby == "retweets"){
if(sort.order == 'asc'){
tweets.sort(function(a,b){return b.retweet_count-a.retweet_count})
} else{
tweets.sort(function(a,b){return a.retweet_count-b.retweet_count})
}
}
if(sort.sortby == "replies"){
if(sort.order == 'asc'){
tweets.sort(function(a,b){return b.reply_count-a.reply_count})
} else {
tweets.sort(function(a,b){return a.reply_count-b.reply_count})
}
}
if (sort.sortby == "date"){
if(sort.order == 'asc'){
tweets.sort(function(a,b){return Date(b.created_at)-Date(a.reply_count)})
} else{
tweets.sort(function(a,b){return Date(a.created_at)-Date(b.reply_count)})
}
}
return tweets
}

View File

@@ -74,21 +74,21 @@ $(window).on("filter", function() {
tweets = window.sessionStorage.getItem('tweets');
tweets = JSON.parse(tweets);
tweets = filterTweets(tweets, filters.blockedWords, filters.searchedWords.concat(filters.sports), filters.sorted, filters.order);
tweets = sortTweets(tweets);
tweets = sortTweets(tweets, [filters.sorted, filters.order]);
for (i = 0; i < Math.min(tweets.length, 20); i++){
parent.append(tweetCell(tweets[i]));
}
})
$(".order-btn").on("click", function() {
if($(this).html() == "arrow_downward") { // Descending to ascending
$(this).html("arrow_upward")
// trigger an event called ascending
$(window).trigger("ascending")
filters.order = 'asc'
} else { // Ascending to descending
$(this).html("arrow_downward")
// trigger an event called descending
$(window).trigger("descending")
filters.order = 'desc'
}
$(window).trigger("filter")
})
function updateSearched(searched){
@@ -104,6 +104,7 @@ function updateBlocked(blocked){
}
function updateSort(sort){
sortarray = []
filters.sorted = sort;
$(window).trigger("filter");
}