| @@ -75,3 +75,81 @@ function tweetCell(tweet) { | |||||||
|     </div>` |     </div>` | ||||||
|     return cell |     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 = window.sessionStorage.getItem('tweets'); | ||||||
|         tweets = JSON.parse(tweets); |         tweets = JSON.parse(tweets); | ||||||
|         tweets.push(tweet); |         tweets.push(tweet); | ||||||
|         if(tweets.length >= options.memory) { |         var localMemory = 100; | ||||||
|  |         if(tweets.length >= localMemory) { | ||||||
|             tweets.shift(); |             tweets.shift(); | ||||||
|         } |         } | ||||||
|         window.sessionStorage.setItem('tweets', JSON.stringify(tweets)); |         window.sessionStorage.setItem('tweets', JSON.stringify(tweets)); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 GitHub
						GitHub