Merged from main

This commit is contained in:
2022-11-03 14:32:24 +01:00
12 changed files with 64 additions and 10 deletions

View File

@@ -113,8 +113,10 @@
<span class="material-symbols-outlined order-btn">arrow_downward</span>
</div>
<div class="popchart column">
<span class="colheader chartheader">Sports Popularity Chart</span>
<div id="balk" style="height:300px; background-color: white;"></div>
<span class="colheader chartheader">Sports Popularity Filter</span>
<div id="pie" style="height:300px; background-color: white;"></div>
</div>
</div>
</div>
@@ -129,12 +131,13 @@
<script src="./lib/tweets.js"></script>
<script src="./js/code.js"></script>
<script src="./js/events.js"></script>
<script src="./lib/jquery.flot.pie.js"></script>
<script>
block("#latest").tweets({
memory: 20
});
block('#balk').barchart();
events.connect('balk', '#balk');
block('#pie').piechart();
events.connect('pie', '#pie');
events.connect("tweet", "#latest");
// // create a rolling chart block

View File

@@ -32,6 +32,8 @@ function tweetCell(tweet) {
<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-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>
<span class="tweet-text">${tweet.text}</span>
<div class="tweet-interactions">
@@ -54,7 +56,6 @@ function tweetCell(tweet) {
}
function filterTweets(tweets, bannedWords=[], searchWords=[], sorted, order) {
console.log(searchWords)
if(bannedWords.length > 0){
tweets = filterBannedWords(bannedWords, tweets)
}

View File

@@ -8,6 +8,10 @@ $(".sport").on("selected", function(e, selected, sports) {
window.addEventListener('DOMContentLoaded', (event) => {
window.sessionStorage.setItem('tweets', JSON.stringify([]));
// run code every 5 seconds
setInterval(function() {
$(window).trigger("filter");
}, 1000);
});
$(".sport").on("click", function() {
@@ -66,20 +70,26 @@ $(".logo").on("click", function() {
})
$(window).on("filter", function() {
console.log("called")
var parent = document.querySelector("#filtered")
parent.replaceChildren();
console.debug(filters);
console.log(filters);
tweets = window.sessionStorage.getItem('tweets');
tweets = JSON.parse(tweets);
console.log(tweets.length)
tweets = filterTweets(tweets, filters.blockedWords, filters.searchedWords.concat(filters.sports), filters.sorted, filters.order);
tweets = sortTweets(tweets, [filters.sorted, filters.order]);
for (i = 0; i < Math.min(tweets.length, 20); i++){
parent.append(tweetCell(tweets[i]));
var displayTweets = tweets.reverse().slice(0, 20).reverse();
for (i = 0; i < 19; i++){
console.log("FDS")
parent.prepend(tweetCell(displayTweets[i]));
console.log("FDS 2")
}
})
$(".order-btn").on("click", function() {
if($(this).html() == "arrow_downward") { // Descending to ascending
$(this).html("arrow_upward")

View File

@@ -74,10 +74,10 @@ block.fn.tweets = function(config) {
// store list for later
// var $list = $("div.tweetcontainer");
var $list = document.querySelector("#latest")
window.sessionStorage.setItem('tweets', JSON.stringify([]));
// register default handler for handling tweet data
this.actions(function(e, tweet){
$(window).trigger("filter");
tweets = window.sessionStorage.getItem('tweets');
tweets = JSON.parse(tweets);
tweets.push(tweet);