getUnplayedAlbums(); $destination = "/share/meta_music/recent_albums"; $aPaths = array(); $badchars = "/[^-a-zA-Z0-9 ]/"; foreach( $aAlbums as $album ){ // Get album dir $dir = $album["path"]; if( preg_match( "/_odds_and_sods/", $dir ) ) continue; // Use last two dirs in path as dir name $aDirName = array(); $aDir = preg_split( "/\//", $dir ); $aDirName[] = array_pop( $aDir ); $aDirName[] = array_pop( $aDir ); $aDirName = array_reverse( $aDirName ); $link = join( " - ", $aDirName ); // $link = preg_replace( $badchars, "", $album["album"] ); if( !file_exists( $destination."/".$link ) ){ echo "Linking ".$dir." to ".$destination."/".$link."\n"; symlink( $dir, $destination."/".$link ); $jpg = $dir."/folder.jpg"; if( !file_exists( $jpg ) ){ $lfm->getAlbumArt( $jpg, $album["album"], $album["artist"] ); } } $aPaths[] = $link; } $dh = opendir( $destination ); while( $file = readdir( $dh ) ){ $file = trim( $file ); if( preg_match( "/^\.|\.m3u$/", $file ) ) continue; if( array_search( $file, $aPaths ) === false ){ // echo "Don't need $file anymore, unlinking\n"; unlink( $destination."/".$file ); } } // Make an m3u playlist $aPls = array(); $dh = opendir( $destination ); while( $dir = readdir( $dh ) ){ if( is_dir( $destination."/".$dir ) ){ $dh2 = opendir( $destination."/".$dir ); $aFolder = array(); while( $file = readdir( $dh2 ) ){ if( preg_match( "/\.mp3$/i", $file ) ){ $path = realpath( $destination."/".$dir."/".$file ); $inf = $db->getTrackByPath( $path ); if( $inf["play_count"] == 0 ) $aFolder[] = $dir."/".$file; } } sort( $aFolder ); $aPls = array_merge( $aPls, $aFolder ); } } file_put_contents( $destination."/00 Recent Unplayed Albums.m3u", join( "\n", $aPls ) ); ?>