Add Last.fm and config
This commit is contained in:
		
					parent
					
						
							
								41efcbfbe5
							
						
					
				
			
			
				commit
				
					
						45defd706e
					
				
			
		
					 2 changed files with 70 additions and 0 deletions
				
			
		
							
								
								
									
										5
									
								
								inc/config.example.inc.php
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								inc/config.example.inc.php
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,5 @@ | ||||||
|  | <?php | ||||||
|  | // Create a constant array with config variables
 | ||||||
|  | const CONF = array( | ||||||
|  |     "lastfm_key" => "key" | ||||||
|  | ); | ||||||
							
								
								
									
										65
									
								
								inc/lastfm.inc.php
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										65
									
								
								inc/lastfm.inc.php
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,65 @@ | ||||||
|  | <h1>Last.fm</h1> | ||||||
|  | <?php | ||||||
|  | require('inc/config.inc.php'); | ||||||
|  | 
 | ||||||
|  | $curl_current = curl_init(); | ||||||
|  | 
 | ||||||
|  | curl_setopt_array($curl_current, [ | ||||||
|  |   CURLOPT_URL => "https://ws.audioscrobbler.com/2.0/?method=user.getrecenttracks&user=".CONF['lastfm_user']."&nowplaying=true&format=json&api_key=".CONF['lastfm_key'], | ||||||
|  |   CURLOPT_RETURNTRANSFER => true, | ||||||
|  |   CURLOPT_ENCODING => "", | ||||||
|  |   CURLOPT_MAXREDIRS => 10, | ||||||
|  |   CURLOPT_TIMEOUT => 30, | ||||||
|  |   CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, | ||||||
|  |   CURLOPT_CUSTOMREQUEST => "GET", | ||||||
|  | ]); | ||||||
|  | 
 | ||||||
|  | $current_response = curl_exec($curl_current); | ||||||
|  | $err = curl_error($curl_current); | ||||||
|  | 
 | ||||||
|  | curl_close($curl_current); | ||||||
|  | 
 | ||||||
|  | if ($err) { | ||||||
|  |   die("cURL Error #:" . $err); | ||||||
|  | } | ||||||
|  | $current_response = json_decode($current_response, true); | ||||||
|  | $nowplaying = $current_response['recenttracks']['track'][0]; | ||||||
|  | 
 | ||||||
|  | echo '        <b>Now Playing:</b> <a href="'.$nowplaying['url'].'">'.$nowplaying['name'].' • '.$nowplaying['artist']['#text'].'</a>'.PHP_EOL; | ||||||
|  | 
 | ||||||
|  | $tracks_to_show = 10; | ||||||
|  | 
 | ||||||
|  | $curl = curl_init(); | ||||||
|  | 
 | ||||||
|  | curl_setopt_array($curl, [ | ||||||
|  |   CURLOPT_URL => "https://ws.audioscrobbler.com/2.0/?method=user.gettoptracks&user=".CONF['lastfm_user']."&format=json&period=7day&api_key=".CONF['lastfm_key'], | ||||||
|  |   CURLOPT_RETURNTRANSFER => true, | ||||||
|  |   CURLOPT_ENCODING => "", | ||||||
|  |   CURLOPT_MAXREDIRS => 10, | ||||||
|  |   CURLOPT_TIMEOUT => 30, | ||||||
|  |   CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, | ||||||
|  |   CURLOPT_CUSTOMREQUEST => "GET", | ||||||
|  | ]); | ||||||
|  | 
 | ||||||
|  | $toptracks_response = curl_exec($curl); | ||||||
|  | $err = curl_error($curl); | ||||||
|  | 
 | ||||||
|  | curl_close($curl); | ||||||
|  | 
 | ||||||
|  | if ($err) { | ||||||
|  |   die("cURL Error #:" . $err); | ||||||
|  | } | ||||||
|  | echo '        <h2>Top '.$tracks_to_show.' Tracks (Last 7 days) <small><a href="https://www.last.fm/user/floppydisk_">Profile</a></small></h2>'.PHP_EOL; | ||||||
|  | echo '        <ol>'.PHP_EOL; | ||||||
|  | $toptracks_response = json_decode($toptracks_response, true); | ||||||
|  | $tracks = $toptracks_response['toptracks']['track']; | ||||||
|  | $count = 0; | ||||||
|  | foreach ($tracks as $track) { | ||||||
|  |   echo '            <li>'.PHP_EOL; | ||||||
|  |   echo '              <a href="'.$track['url'].'">'.$track['name'].' • '.$track['artist']['name'].'</a>'.PHP_EOL; | ||||||
|  |   echo '              <small>('.$track['playcount'].' plays)</small>'.PHP_EOL; | ||||||
|  |   echo '            </li>'.PHP_EOL; | ||||||
|  |   if ($count >= $tracks_to_show - 1) break; | ||||||
|  |   $count++; | ||||||
|  | } | ||||||
|  | echo '        </ol>'; | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Frankie B
				Frankie B