Merged from main
This commit is contained in:
		
							
								
								
									
										3
									
								
								.idea/.gitignore
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.idea/.gitignore
									
									
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,3 @@ | |||||||
|  | # Default ignored files | ||||||
|  | /shelf/ | ||||||
|  | /workspace.xml | ||||||
							
								
								
									
										1
									
								
								.idea/.name
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.idea/.name
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | |||||||
|  | neca.py | ||||||
							
								
								
									
										6
									
								
								.idea/inspectionProfiles/profiles_settings.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.idea/inspectionProfiles/profiles_settings.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | |||||||
|  | <component name="InspectionProjectProfileManager"> | ||||||
|  |   <settings> | ||||||
|  |     <option name="USE_PROJECT_PROFILE" value="false" /> | ||||||
|  |     <version value="1.0" /> | ||||||
|  |   </settings> | ||||||
|  | </component> | ||||||
							
								
								
									
										4
									
								
								.idea/misc.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								.idea/misc.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <project version="4"> | ||||||
|  |   <component name="ProjectRootManager" version="2" project-jdk-name="Python 3.10" project-jdk-type="Python SDK" /> | ||||||
|  | </project> | ||||||
							
								
								
									
										8
									
								
								.idea/modules.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.idea/modules.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <project version="4"> | ||||||
|  |   <component name="ProjectModuleManager"> | ||||||
|  |     <modules> | ||||||
|  |       <module fileurl="file://$PROJECT_DIR$/.idea/twitter-project.iml" filepath="$PROJECT_DIR$/.idea/twitter-project.iml" /> | ||||||
|  |     </modules> | ||||||
|  |   </component> | ||||||
|  | </project> | ||||||
							
								
								
									
										12
									
								
								.idea/twitter-project.iml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								.idea/twitter-project.iml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <module type="PYTHON_MODULE" version="4"> | ||||||
|  |   <component name="NewModuleRootManager"> | ||||||
|  |     <content url="file://$MODULE_DIR$" /> | ||||||
|  |     <orderEntry type="inheritedJdk" /> | ||||||
|  |     <orderEntry type="sourceFolder" forTests="false" /> | ||||||
|  |   </component> | ||||||
|  |   <component name="PyDocumentationSettings"> | ||||||
|  |     <option name="format" value="PLAIN" /> | ||||||
|  |     <option name="myDocStringFormat" value="Plain" /> | ||||||
|  |   </component> | ||||||
|  | </module> | ||||||
							
								
								
									
										6
									
								
								.idea/vcs.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.idea/vcs.xml
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | |||||||
|  | <?xml version="1.0" encoding="UTF-8"?> | ||||||
|  | <project version="4"> | ||||||
|  |   <component name="VcsDirectoryMappings"> | ||||||
|  |     <mapping directory="$PROJECT_DIR$" vcs="Git" /> | ||||||
|  |   </component> | ||||||
|  | </project> | ||||||
| @@ -46,7 +46,7 @@ def generate_tweet(ctx, e): | |||||||
|     # emit to outside world |     # emit to outside world | ||||||
|     emit('tweet', tweet) |     emit('tweet', tweet) | ||||||
|     for w in words(tweet['text']): |     for w in words(tweet['text']): | ||||||
|         emit('balk', { |         emit('pie', { | ||||||
|             'action': 'add', |             'action': 'add', | ||||||
|             'value': (str(w), 1) |             'value': (str(w), 1) | ||||||
|         }) |         }) | ||||||
|   | |||||||
| @@ -113,8 +113,10 @@ | |||||||
|                         <span class="material-symbols-outlined order-btn">arrow_downward</span> |                         <span class="material-symbols-outlined order-btn">arrow_downward</span> | ||||||
|                     </div> |                     </div> | ||||||
|                     <div class="popchart column"> |                     <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> |                 </div> | ||||||
|             </div> |             </div> | ||||||
| @@ -129,12 +131,13 @@ | |||||||
|     <script src="./lib/tweets.js"></script> |     <script src="./lib/tweets.js"></script> | ||||||
|     <script src="./js/code.js"></script> |     <script src="./js/code.js"></script> | ||||||
|     <script src="./js/events.js"></script> |     <script src="./js/events.js"></script> | ||||||
|  |     <script src="./lib/jquery.flot.pie.js"></script> | ||||||
|     <script> |     <script> | ||||||
|         block("#latest").tweets({ |         block("#latest").tweets({ | ||||||
|             memory: 20 |             memory: 20 | ||||||
|         }); |         }); | ||||||
|         block('#balk').barchart(); |         block('#pie').piechart(); | ||||||
|         events.connect('balk', '#balk'); |         events.connect('pie', '#pie'); | ||||||
|         events.connect("tweet", "#latest"); |         events.connect("tweet", "#latest"); | ||||||
|  |  | ||||||
|         // // create a rolling chart block |         // // create a rolling chart block | ||||||
|   | |||||||
| @@ -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,20 +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, [filters.sorted, filters.order]); |     tweets = sortTweets(tweets, [filters.sorted, filters.order]); | ||||||
|     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