Working live tweets and filtering tweets
This commit is contained in:
Binary file not shown.
@@ -32,6 +32,8 @@ function tweetCell(tweet) {
|
|||||||
<div class="tweet-name">
|
<div class="tweet-name">
|
||||||
<a class="tweet-nickname" href = "https://www.twitter.com/${tweet.user.screen_name}" target = "_blank">${tweet.user.name}</a>
|
<a class="tweet-nickname" href = "https://www.twitter.com/${tweet.user.screen_name}" target = "_blank">${tweet.user.name}</a>
|
||||||
<a class="tweet-username" href = "https://www.twitter.com/${tweet.user.screen_name}" target = "_blank">@${tweet.user.screen_name}</a>
|
<a class="tweet-username" href = "https://www.twitter.com/${tweet.user.screen_name}" target = "_blank">@${tweet.user.screen_name}</a>
|
||||||
|
<!-- add tweet date called created_at-->
|
||||||
|
<p class="tweet-date">${tweet.created_at}</p>
|
||||||
</div>
|
</div>
|
||||||
<span class="tweet-text">${tweet.text}</span>
|
<span class="tweet-text">${tweet.text}</span>
|
||||||
<div class="tweet-interactions">
|
<div class="tweet-interactions">
|
||||||
@@ -54,7 +56,6 @@ function tweetCell(tweet) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function filterTweets(tweets, bannedWords=[], searchWords=[], sorted, order) {
|
function filterTweets(tweets, bannedWords=[], searchWords=[], sorted, order) {
|
||||||
console.log(searchWords)
|
|
||||||
if(bannedWords.length > 0){
|
if(bannedWords.length > 0){
|
||||||
tweets = filterBannedWords(bannedWords, tweets)
|
tweets = filterBannedWords(bannedWords, tweets)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,10 @@ $(".sport").on("selected", function(e, selected, sports) {
|
|||||||
|
|
||||||
window.addEventListener('DOMContentLoaded', (event) => {
|
window.addEventListener('DOMContentLoaded', (event) => {
|
||||||
window.sessionStorage.setItem('tweets', JSON.stringify([]));
|
window.sessionStorage.setItem('tweets', JSON.stringify([]));
|
||||||
|
// run code every 5 seconds
|
||||||
|
setInterval(function() {
|
||||||
|
$(window).trigger("filter");
|
||||||
|
}, 1000);
|
||||||
});
|
});
|
||||||
|
|
||||||
$(".sport").on("click", function() {
|
$(".sport").on("click", function() {
|
||||||
@@ -66,19 +70,26 @@ $(".logo").on("click", function() {
|
|||||||
})
|
})
|
||||||
|
|
||||||
$(window).on("filter", function() {
|
$(window).on("filter", function() {
|
||||||
|
console.log("called")
|
||||||
var parent = document.querySelector("#filtered")
|
var parent = document.querySelector("#filtered")
|
||||||
parent.replaceChildren();
|
parent.replaceChildren();
|
||||||
|
|
||||||
console.debug(filters);
|
console.log(filters);
|
||||||
|
|
||||||
tweets = window.sessionStorage.getItem('tweets');
|
tweets = window.sessionStorage.getItem('tweets');
|
||||||
tweets = JSON.parse(tweets);
|
tweets = JSON.parse(tweets);
|
||||||
|
console.log(tweets.length)
|
||||||
tweets = filterTweets(tweets, filters.blockedWords, filters.searchedWords.concat(filters.sports), filters.sorted, filters.order);
|
tweets = filterTweets(tweets, filters.blockedWords, filters.searchedWords.concat(filters.sports), filters.sorted, filters.order);
|
||||||
tweets = sortTweets(tweets);
|
tweets = sortTweets(tweets);
|
||||||
for (i = 0; i < Math.min(tweets.length, 20); i++){
|
var displayTweets = tweets.reverse().slice(0, 20).reverse();
|
||||||
parent.append(tweetCell(tweets[i]));
|
for (i = 0; i < 19; i++){
|
||||||
|
console.log("FDS")
|
||||||
|
parent.prepend(tweetCell(displayTweets[i]));
|
||||||
|
console.log("FDS 2")
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
$(".order-btn").on("click", function() {
|
$(".order-btn").on("click", function() {
|
||||||
if($(this).html() == "arrow_downward") { // Descending to ascending
|
if($(this).html() == "arrow_downward") { // Descending to ascending
|
||||||
$(this).html("arrow_upward")
|
$(this).html("arrow_upward")
|
||||||
|
|||||||
@@ -74,10 +74,10 @@ block.fn.tweets = function(config) {
|
|||||||
// store list for later
|
// store list for later
|
||||||
// var $list = $("div.tweetcontainer");
|
// var $list = $("div.tweetcontainer");
|
||||||
var $list = document.querySelector("#latest")
|
var $list = document.querySelector("#latest")
|
||||||
|
window.sessionStorage.setItem('tweets', JSON.stringify([]));
|
||||||
|
|
||||||
// register default handler for handling tweet data
|
// register default handler for handling tweet data
|
||||||
this.actions(function(e, tweet){
|
this.actions(function(e, tweet){
|
||||||
$(window).trigger("filter");
|
|
||||||
tweets = window.sessionStorage.getItem('tweets');
|
tweets = window.sessionStorage.getItem('tweets');
|
||||||
tweets = JSON.parse(tweets);
|
tweets = JSON.parse(tweets);
|
||||||
tweets.push(tweet);
|
tweets.push(tweet);
|
||||||
|
|||||||
Reference in New Issue
Block a user