Merge branch 'main' into FiltersCSS
This commit is contained in:
@@ -74,4 +74,82 @@ function tweetCell(tweet) {
|
|||||||
</div>
|
</div>
|
||||||
</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