| @@ -75,3 +75,81 @@ function tweetCell(tweet) { | ||||
|     </div>` | ||||
|     return cell | ||||
| } | ||||
|  | ||||
| function filter(tweets, bannedWords=[], searchWords=[], likesTop=null, likesBottom=null, retweetsTop=null, retweetsBottom=null, repliesTop=null, repliesBottom=null) { | ||||
|     if(bannedWords.length > 0){ | ||||
|         tweets = filterBannedWords(bannedWords, tweets) | ||||
|     } | ||||
|     if(searchWords.length > 0){ | ||||
|         tweets = searchForWords(searchWords, tweets) | ||||
|     } | ||||
|     if(likesTop != null || likesBottom != null){ | ||||
|         tweets = filterLikes(likesTop, likesBottom, tweets) | ||||
|     } | ||||
|     if(retweetsTop != null || retweetsBottom != null){ | ||||
|         tweets = filterRetweets(retweetsTop, retweetsBottom, tweets) | ||||
|     } | ||||
|     if(repliesTop != null || repliesBottom != null){ | ||||
|         tweets = filterReplies(repliesTop, repliesBottom, tweets) | ||||
|     } | ||||
|     return tweets | ||||
| } | ||||
|  | ||||
| function filterBannedWords(bannedWords, tweets){ | ||||
|     for (let i = 0; i < tweets.length; i++) { | ||||
|         var tweet = tweets[i] | ||||
|         for(let j=0; j < bannedWords.length; j++){ | ||||
|             if (tweet.text.toLowerCase().includes(bannedWords[j].toLowerCase())){ | ||||
|                 tweets.splice(i, 1) | ||||
|                 break | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|     return tweets | ||||
| } | ||||
|  | ||||
| function searchForWords(searchWords, tweets){ | ||||
|     for (let i = 0; i < tweets.length; i++) { | ||||
|         var tweet = tweets[i] | ||||
|         for(let i=0; i < searchWords.length; i++){ | ||||
|             if (!tweet.text.toLowerCase().includes(searchWords[i].toLowerCase())) { | ||||
|                 tweets.splice(i, 1) | ||||
|                 break | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|     return tweets | ||||
| } | ||||
|  | ||||
| function filterLikes(likesTop, likesBottom, tweets){ | ||||
|     for (let i = 0; i < tweets.length; i++) { | ||||
|         var tweet = tweets[i] | ||||
|         if(tweet.favorite_count >= likesTop || tweet.favorite_count <= likesBottom){ | ||||
|             tweets.splice(i, 1) | ||||
|             break | ||||
|         } | ||||
|     } | ||||
|     return tweets | ||||
| } | ||||
|  | ||||
| function filterRetweets(retweetsTop, retweetsBottom, tweets){ | ||||
|     for (let i = 0; i < tweets.length; i++) { | ||||
|         var tweet = tweets[i] | ||||
|         if(tweet.retweet_count >= retweetsTop || tweet.retweet_count <= retweetsBottom){ | ||||
|             tweets.splice(i, 1) | ||||
|             break | ||||
|         } | ||||
|     } | ||||
|     return tweets | ||||
| } | ||||
|  | ||||
| function filterReplies(repliesTop, repliesBottom, tweets){ | ||||
|     for (let i = 0; i < tweets.length; i++) { | ||||
|         var tweet = tweets[i] | ||||
|         if(tweet.reply_count >= repliesTop || tweet.reply_count <= repliesBottom){ | ||||
|             tweets.splice(i, 1) | ||||
|             break | ||||
|         } | ||||
|     } | ||||
|     return tweets | ||||
| } | ||||
|   | ||||
| @@ -79,7 +79,8 @@ block.fn.tweets = function(config) { | ||||
|         tweets = window.sessionStorage.getItem('tweets'); | ||||
|         tweets = JSON.parse(tweets); | ||||
|         tweets.push(tweet); | ||||
|         if(tweets.length >= options.memory) { | ||||
|         var localMemory = 100; | ||||
|         if(tweets.length >= localMemory) { | ||||
|             tweets.shift(); | ||||
|         } | ||||
|         window.sessionStorage.setItem('tweets', JSON.stringify(tweets)); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 GitHub
						GitHub