Merge branch 'main' into TweetCSS
This commit is contained in:
		
							
								
								
									
										19
									
								
								dashboard.py
									
									
									
									
									
								
							
							
						
						
									
										19
									
								
								dashboard.py
									
									
									
									
									
								
							| @@ -12,7 +12,7 @@ root_content_path = 'dashboard_static' | |||||||
| # the action will be called with the context and the event | # the action will be called with the context and the event | ||||||
| @event('init') | @event('init') | ||||||
| def setup(ctx, e): | def setup(ctx, e): | ||||||
|     start_offline_tweets('sports1.txt', event_name="sample") |     start_offline_tweets('sports1.txt', event_name="tweet", time_factor=0.1) | ||||||
|     ctx.count = 0 |     ctx.count = 0 | ||||||
|     # fire('sample', {'previous': 0.0}) |     # fire('sample', {'previous': 0.0}) | ||||||
|  |  | ||||||
| @@ -21,21 +21,14 @@ def setup(ctx, e): | |||||||
| def clip(lower, value, upper): | def clip(lower, value, upper): | ||||||
|     return max(lower, min(value, upper)) |     return max(lower, min(value, upper)) | ||||||
|  |  | ||||||
| @event('sample') | @event('tweet') | ||||||
| def generate_sample(ctx, e): | def generate_tweet(ctx, e): | ||||||
|     ctx.count += 1 |  | ||||||
|     if ctx.count % 50 == 0: |  | ||||||
|         emit('debug', {'text': 'Log message #'+str(ctx.count)+'!'}) |  | ||||||
|     tweet = e.data |     tweet = e.data | ||||||
|     # print(tweet) |  | ||||||
|     # base sample on previous one |     # base sample on previous one | ||||||
|     # sample = clip(-100, e.data['previous'] + random.uniform(+5.0, -5.0), 100) |     # sample = clip(-100, e.data['previous'] + random.uniform(+5.0, -5.0), 100) | ||||||
|     # emit to outside world |     # emit to outside world | ||||||
|     emit('sample',{ |     emit('tweet', tweet) | ||||||
|         'action': 'add', |  | ||||||
|         'value': tweet |  | ||||||
|     }) |  | ||||||
|  |  | ||||||
|     # chain event |     # # chain event | ||||||
|     fire('sample', {'previous': tweet}, delay=0.05) |     # fire('tweet', {'previous': tweet}, delay=0.05) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -13,8 +13,10 @@ | |||||||
|     <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0" /> |     <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0" /> | ||||||
|     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script> |     <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script> | ||||||
|     <link rel="icon" type="image/x-icon" href="./media/logo.png"> |     <link rel="icon" type="image/x-icon" href="./media/logo.png"> | ||||||
|  |      | ||||||
| </head> | </head> | ||||||
| <body> | <body> | ||||||
|  |     <div id="tweet" style="height: 200px;"></div> | ||||||
|     <div class="container"> |     <div class="container"> | ||||||
|         <div class="header"> |         <div class="header"> | ||||||
|             <div class="logo"> |             <div class="logo"> | ||||||
| @@ -97,25 +99,36 @@ | |||||||
|             </div> |             </div> | ||||||
|         </div>  |         </div>  | ||||||
|     </div> |     </div> | ||||||
|  |     <script src="/lib/jquery-2.1.1.min.js"></script> | ||||||
|  |     <script src="/lib/jquery.flot.min.js"></script> | ||||||
|  |     <script src="/lib/core.js"></script> | ||||||
|  |     <script src="/lib/charts.js"></script> | ||||||
|  |     <script src="/lib/log.js"></script> | ||||||
|  |     <script src="./lib/tweets.js"></script> | ||||||
|     <script src="./js/code.js"></script> |     <script src="./js/code.js"></script> | ||||||
|     <script src="./js/connection.js"></script> |     <script src="./js/connection.js"></script> | ||||||
| </body> |     <script> | ||||||
| <!-- <script> |         block("#tweet").tweets({ | ||||||
| // create a rolling chart block |             memory: 20 | ||||||
| block('#graph').rolling_chart({ |  | ||||||
|     memory: 150, |  | ||||||
|     chart: { |  | ||||||
|         yaxis: { |  | ||||||
|             min: -100, |  | ||||||
|             max: 100 |  | ||||||
|         }, |  | ||||||
|         xaxis: { |  | ||||||
|             show: false |  | ||||||
|         } |  | ||||||
|     } |  | ||||||
|         }); |         }); | ||||||
|  |         events.connect("tweet", "#tweet"); | ||||||
|          |          | ||||||
| // connect sample event to graph |         // // create a rolling chart block | ||||||
| events.connect('sample', '#graph'); |         // block('#graph').rolling_chart({ | ||||||
| </script> --> |         //     memory: 150, | ||||||
|  |         //     chart: { | ||||||
|  |         //         yaxis: { | ||||||
|  |         //             min: -100, | ||||||
|  |         //             max: 100 | ||||||
|  |         //         }, | ||||||
|  |         //         xaxis: { | ||||||
|  |         //             show: false | ||||||
|  |         //         } | ||||||
|  |         //     } | ||||||
|  |         // }); | ||||||
|  |          | ||||||
|  |         // // connect sample event to graph | ||||||
|  |         // events.connect('tweet', '#graph'); | ||||||
|  |         </script> | ||||||
|  | </body> | ||||||
| </html> | </html> | ||||||
| @@ -23,7 +23,85 @@ function getCSSVariable(name) { | |||||||
| } | } | ||||||
|  |  | ||||||
| function tweetCell(tweet, parent) { | function tweetCell(tweet, parent) { | ||||||
|     var cell = document.createElement("div") |     var cell = document.createElement("div"); | ||||||
|     cell.innerHTML = |     cell.innerHTML = | ||||||
|         "<div>" |     `<div class="tweet"> | ||||||
|  |         <img src="${tweet.user.profile_image_url}" alt="" class="tweet-profilepicture"> | ||||||
|  |         <div class="tweet-content">  | ||||||
|  |             <div class="tweet-name"> | ||||||
|  |                 <span class="tweet-nickname">${tweet.user.name}</span> | ||||||
|  |                 <span class="tweet-username">@${tweet.user.screen_name}</span> | ||||||
|  |             </div> | ||||||
|  |             <span class="tweet-text">${tweet.text}</span> | ||||||
|  |             <div class="tweet-interactions"> | ||||||
|  |                 <div class="tweet-interaction tweet-likes"> | ||||||
|  |                     <span class="material-symbols-outlined">favorite</span> | ||||||
|  |                     <span>${tweet.favorite_count}</span> | ||||||
|  |                 </div> | ||||||
|  |                 <div class="tweet-interaction tweet-retweets"> | ||||||
|  |                     <span class="material-symbols-outlined">repeat</span> | ||||||
|  |                     <span>${tweet.retweet_count}</span> | ||||||
|  |                 </div> | ||||||
|  |                 <div class="tweet-interaction tweet-replies"> | ||||||
|  |                     <span class="material-symbols-outlined">chat_bubble</span> | ||||||
|  |                     <span>${tweet.reply_count}</span> | ||||||
|  |                 </div> | ||||||
|  |             </div> | ||||||
|  |         </div> | ||||||
|  |     </div>` | ||||||
|  |     parent.append(cell); | ||||||
|  | } | ||||||
|  |  | ||||||
|  |  | ||||||
|  | var atweet = { | ||||||
|  |     "created_at": "Sat Nov 16 12:51:41 +0000 2019", | ||||||
|  |     "text": "@BobGreenburg @ONeill_Coffee Congrats to the excellent football program at Wilmington. One classy organization!", | ||||||
|  |     "source": "<a href=\"http:\/\/twitter.com\/download\/iphone\" rel=\"nofollow\">Twitter for iPhone<\/a>", | ||||||
|  |     "user": { | ||||||
|  |         "name": "Express Youngstown", | ||||||
|  |         "screen_name": "ExpressProsYO", | ||||||
|  |         "url": "http:\/\/apply.expresspros.com\/", | ||||||
|  |         "profile_image_url": "http:\/\/pbs.twimg.com\/profile_images\/775167844921188353\/fWquHsOK_normal.jpg", | ||||||
|  |     }, | ||||||
|  |     "quote_count": 0, | ||||||
|  |     "reply_count": 0, | ||||||
|  |     "retweet_count": 0, | ||||||
|  |     "favorite_count": 0, | ||||||
|  |     "entities": { | ||||||
|  |         "hashtags": [ | ||||||
|  |  | ||||||
|  |         ], | ||||||
|  |         "urls": [ | ||||||
|  |  | ||||||
|  |         ], | ||||||
|  |         "user_mentions": [ | ||||||
|  |             { | ||||||
|  |                 "screen_name": "BobGreenburg", | ||||||
|  |                 "name": "Bob Greenburg", | ||||||
|  |                 "id": 483881032, | ||||||
|  |                 "id_str": "483881032", | ||||||
|  |                 "indices": [ | ||||||
|  |                     0, | ||||||
|  |                     13 | ||||||
|  |                 ] | ||||||
|  |             }, | ||||||
|  |             { | ||||||
|  |                 "screen_name": "ONeill_Coffee", | ||||||
|  |                 "name": "O'NeillCoffeeCompany", | ||||||
|  |                 "id": 2804543925, | ||||||
|  |                 "id_str": "2804543925", | ||||||
|  |                 "indices": [ | ||||||
|  |                     14, | ||||||
|  |                     28 | ||||||
|  |                 ] | ||||||
|  |             } | ||||||
|  |         ], | ||||||
|  |         "symbols": [ | ||||||
|  |  | ||||||
|  |         ] | ||||||
|  |     }, | ||||||
|  | } | ||||||
|  |  | ||||||
|  | for (let i = 0; i < 2; i++) { | ||||||
|  |     tweetCell(atweet, $(".leftcol")); | ||||||
| } | } | ||||||
		Reference in New Issue
	
	Block a user
	 Tim Wijma
					Tim Wijma