Update code.js
JS to generate Tweet HTML
This commit is contained in:
		
							
								
								
									
										107
									
								
								dashboard_static/js/code.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										107
									
								
								dashboard_static/js/code.js
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,107 @@ | |||||||
|  | let root = document.documentElement // Used for css variables | ||||||
|  |  | ||||||
|  | let selectedSports = [] | ||||||
|  |  | ||||||
|  | $(".sport").on("click", function() { | ||||||
|  |     $(this).toggleClass("selected") | ||||||
|  |  | ||||||
|  |     let sportName = $(this).children()[1].innerHTML // 2nd element, which is the sport name | ||||||
|  |  | ||||||
|  |      | ||||||
|  |     let index = selectedSports.indexOf(sportName) | ||||||
|  |     if (index > -1 ) {  // If element is found in array | ||||||
|  |         selectedSports.splice(index, 1) // Remove sport at index | ||||||
|  |     } else { | ||||||
|  |         selectedSports.push(sportName)  // Add sport to array | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     $(this).trigger("selected", [selectedSports.includes(sportName), selectedSports]) // Trigger event | ||||||
|  | }) | ||||||
|  |  | ||||||
|  | function getCSSVariable(name) { | ||||||
|  |     return getComputedStyle(root).getPropertyValue(name) | ||||||
|  | } | ||||||
|  |  | ||||||
|  | function tweetCell(tweet, parent) { | ||||||
|  |     var cell = document.createElement("div"); | ||||||
|  |     cell.innerHTML = | ||||||
|  |         '<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
	 jacktjong
					jacktjong