diff --git a/.vs/PeerlessPlayer/FileContentIndex/17f18151-207c-4a56-a4f4-ff601f4c2005.vsidx b/.vs/PeerlessPlayer/FileContentIndex/17f18151-207c-4a56-a4f4-ff601f4c2005.vsidx deleted file mode 100644 index 26d7ebf..0000000 Binary files a/.vs/PeerlessPlayer/FileContentIndex/17f18151-207c-4a56-a4f4-ff601f4c2005.vsidx and /dev/null differ diff --git a/.vs/PeerlessPlayer/FileContentIndex/1d65612b-ab60-415f-93c8-13971df4766d.vsidx b/.vs/PeerlessPlayer/FileContentIndex/1d65612b-ab60-415f-93c8-13971df4766d.vsidx new file mode 100644 index 0000000..80abcf9 Binary files /dev/null and b/.vs/PeerlessPlayer/FileContentIndex/1d65612b-ab60-415f-93c8-13971df4766d.vsidx differ diff --git a/.vs/PeerlessPlayer/FileContentIndex/22f99465-dc37-40e6-a7a4-394cadb49d81.vsidx b/.vs/PeerlessPlayer/FileContentIndex/22f99465-dc37-40e6-a7a4-394cadb49d81.vsidx new file mode 100644 index 0000000..068b2ca Binary files /dev/null and b/.vs/PeerlessPlayer/FileContentIndex/22f99465-dc37-40e6-a7a4-394cadb49d81.vsidx differ diff --git a/.vs/PeerlessPlayer/FileContentIndex/352f442b-7075-442f-9d72-62aebd07c7dd.vsidx b/.vs/PeerlessPlayer/FileContentIndex/352f442b-7075-442f-9d72-62aebd07c7dd.vsidx deleted file mode 100644 index b878c32..0000000 Binary files a/.vs/PeerlessPlayer/FileContentIndex/352f442b-7075-442f-9d72-62aebd07c7dd.vsidx and /dev/null differ diff --git a/.vs/PeerlessPlayer/FileContentIndex/70c905dc-7a6a-41dc-909e-b4eef47d7e51.vsidx b/.vs/PeerlessPlayer/FileContentIndex/70c905dc-7a6a-41dc-909e-b4eef47d7e51.vsidx new file mode 100644 index 0000000..3ff2baf Binary files /dev/null and b/.vs/PeerlessPlayer/FileContentIndex/70c905dc-7a6a-41dc-909e-b4eef47d7e51.vsidx differ diff --git a/.vs/PeerlessPlayer/FileContentIndex/80537599-a02c-4b79-ba41-281ad839463b.vsidx b/.vs/PeerlessPlayer/FileContentIndex/80537599-a02c-4b79-ba41-281ad839463b.vsidx deleted file mode 100644 index cdc9367..0000000 Binary files a/.vs/PeerlessPlayer/FileContentIndex/80537599-a02c-4b79-ba41-281ad839463b.vsidx and /dev/null differ diff --git a/.vs/PeerlessPlayer/FileContentIndex/ca585f46-7f58-40db-833d-b68f3e2d9444.vsidx b/.vs/PeerlessPlayer/FileContentIndex/ca585f46-7f58-40db-833d-b68f3e2d9444.vsidx new file mode 100644 index 0000000..88ee180 Binary files /dev/null and b/.vs/PeerlessPlayer/FileContentIndex/ca585f46-7f58-40db-833d-b68f3e2d9444.vsidx differ diff --git a/.vs/PeerlessPlayer/FileContentIndex/fa37ef4b-3f39-4486-b562-94a6433e1459.vsidx b/.vs/PeerlessPlayer/FileContentIndex/fa37ef4b-3f39-4486-b562-94a6433e1459.vsidx deleted file mode 100644 index 7cd120f..0000000 Binary files a/.vs/PeerlessPlayer/FileContentIndex/fa37ef4b-3f39-4486-b562-94a6433e1459.vsidx and /dev/null differ diff --git a/.vs/PeerlessPlayer/v17/.wsuo b/.vs/PeerlessPlayer/v17/.wsuo index 3b26ff0..4db8e7e 100644 Binary files a/.vs/PeerlessPlayer/v17/.wsuo and b/.vs/PeerlessPlayer/v17/.wsuo differ diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json index 81e9a80..65045ac 100644 --- a/.vs/VSWorkspaceState.json +++ b/.vs/VSWorkspaceState.json @@ -3,10 +3,10 @@ "", "\\app", "\\app\\data", + "\\app\\html", "\\app\\js", - "\\docs", - "\\docs\\css" + "\\docs" ], - "SelectedNode": "\\app\\js\\index.js", + "SelectedNode": "\\docs\\index.html", "PreviewInSolutionExplorer": false } \ No newline at end of file diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite index 4c8a4e8..14fcf75 100644 Binary files a/.vs/slnx.sqlite and b/.vs/slnx.sqlite differ diff --git a/Errors.txt b/Errors.txt deleted file mode 100644 index 28b9d36..0000000 --- a/Errors.txt +++ /dev/null @@ -1,3 +0,0 @@ -1. Mumford & Sons: Sigh No More: track 6 missing -2. Bliss: Quiet Letters: 2 missing tracks -3. Mazzy Star: Among My Swan: track 11 missing \ No newline at end of file diff --git a/LICENSE.txt b/LICENSE.txt index 9227705..8b6158b 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -2,7 +2,7 @@ ISC License -Copyright (c) 2020, Geoff Peerless +Copyright (c) 2023, Geoff Peerless diff --git a/UPDATE LOG.txt b/UPDATE LOG.txt index 5a8ae46..0f12265 100644 --- a/UPDATE LOG.txt +++ b/UPDATE LOG.txt @@ -87,9 +87,12 @@ 6. Animation added when displaying large album artwork. 7. Minor bug fixes in playlist and search functions. -**** VERSION 0.4.1 UPDATES **** +**** VERSION 0.5.0 UPDATES **** 1. Bug fix when fetching album info from wikidata. 2. Database Edit Cancel button rerouted back to artist albums instead of homepage. 3. Link added from artists album page to display all songs for an artist. +4. Small redsign of the main menu. +5. Pi-PLayer functions added to the top menu bar. See the website for full details about the new Peerless-Pi-Player. + diff --git a/app/data/pi_data.json b/app/data/pi_data.json index d584a08..7c1f543 100644 --- a/app/data/pi_data.json +++ b/app/data/pi_data.json @@ -1 +1 @@ -{"artist":"Peerless-Pi-Player", "album":"It's Music To Your Ears", "track":"", "playTime":"", "favourite":" ", "timeStamp":"Mon May 15 2023 10:33:58 GMT+0100 (British Summer Time)"} \ No newline at end of file +{"artist":"Peerless-Pi-Player", "album":"It's Music To Your Ears", "track":"", "playTime":"", "favourite":" ", "timeStamp":"Sun May 28 2023 21:17:51 GMT+0100 (British Summer Time)"} \ No newline at end of file diff --git a/app/graphics/genres/Dance.gif b/app/graphics/genres/Dance.gif index db8720a..bb00bd5 100644 Binary files a/app/graphics/genres/Dance.gif and b/app/graphics/genres/Dance.gif differ diff --git a/app/graphics/genres/Folk.gif b/app/graphics/genres/Folk.gif index da2e8bb..29e3949 100644 Binary files a/app/graphics/genres/Folk.gif and b/app/graphics/genres/Folk.gif differ diff --git a/app/graphics/genres/Pop.gif b/app/graphics/genres/Pop.gif index 34c726a..999ff03 100644 Binary files a/app/graphics/genres/Pop.gif and b/app/graphics/genres/Pop.gif differ diff --git a/app/graphics/genres/Rock.gif b/app/graphics/genres/Rock.gif index fb4dbc8..0f3243b 100644 Binary files a/app/graphics/genres/Rock.gif and b/app/graphics/genres/Rock.gif differ diff --git a/app/graphics/genres/Soundtrack.gif b/app/graphics/genres/Soundtrack.gif index 70c645b..118a5f7 100644 Binary files a/app/graphics/genres/Soundtrack.gif and b/app/graphics/genres/Soundtrack.gif differ diff --git a/app/graphics/genres/Urban.gif b/app/graphics/genres/Urban.gif index 76eb4c3..20a3c8e 100644 Binary files a/app/graphics/genres/Urban.gif and b/app/graphics/genres/Urban.gif differ diff --git a/app/html/newreleases.html b/app/html/newreleases.html index 7145eb2..0a04227 100644 --- a/app/html/newreleases.html +++ b/app/html/newreleases.html @@ -22,7 +22,16 @@

+ +
+

Data supplied by spotify.com

+
+
+
+ + + \ No newline at end of file diff --git a/app/html/recommendations.html b/app/html/recommendations.html index aaf4add..19cffd4 100644 --- a/app/html/recommendations.html +++ b/app/html/recommendations.html @@ -14,6 +14,11 @@

+
+

Data supplied by spotify.com

+
+
+
\ No newline at end of file diff --git a/app/html/userguide.html b/app/html/userguide.html index 16da474..9681e21 100644 --- a/app/html/userguide.html +++ b/app/html/userguide.html @@ -22,6 +22,7 @@

Quick Menu

1. Getting Started

+

1.1 First Things First

  1. On the menu bar click on File and then Settings. This will take you to the Settings page where you can customise the app. @@ -336,6 +337,7 @@

    4.7 Smart Playlist

    5. Adding Music to Peerless Player

    +

    5.1 How to Add Music

    1. Add a ripped CD or music download to your Music directory with music files in .mp3 .m4a .flac or (.wav not recommended) format. If the artist is new to your music collection, add the artist folder containing the album folder or if the artist already exists, add the album folder to the existing artist folder in your music directory. @@ -380,6 +382,7 @@

      5. Adding Music to Peerless Player

      6. Editing Music in the Database

      +

      6.1 How to Edit Music

      1. To edit an album in the database, display the album and click on the Edit button next to the album artwork. @@ -409,6 +412,7 @@

        6. Editing Music in the Database

        7. Deleting Music from the Database

        +

        7.1 How to Delete Music

        1. To delete an album from the database, display the album and click on the Edit button next to the album artwork. @@ -434,6 +438,7 @@

          7. Deleting Music from the Database

          8. App Settings

          +

          8.1 Personalise Your Player

          1. From the File menu, click on Settings, to display the App Settings page. From here you can change the below settings. @@ -451,6 +456,7 @@

            8. App Settings

            9. Syncing External Music Directory

            +

            9.1 Sync Your Music

            1. Insert your SD card/USB drive and from the File menu or Database Functions click on Sync External Directory. diff --git a/app/js/index.js b/app/js/index.js index ef92a6d..d61df53 100644 --- a/app/js/index.js +++ b/app/js/index.js @@ -331,7 +331,7 @@ ipcRenderer.on('Help Release', (event) => { $('#okModalText').empty(); $(".modalFooter").empty(); $('.modalHeader').append('×

              Release Notes Version: ' + global_Version + '

              '); - $('#okModalText').append("

              1. Music recommendations added to artist page.
              2. New music releases function added to player menu.
              3. Back To Top button added to all pages once scrolled.
              4. Error handling added to ajax remote server requests.
              5. Smooth srcolling added to A - Z menu.
              6. Animation added when displaying large album artwork.
              7. Minor bug fixes in playlist and search functions.

              ");//
                + $('#okModalText').append("

              1. Bug fix when fetching album info from wikidata.
              2. Database Edit Cancel button rerouted back to artist albums instead of homepage.
              3. Link added from artists album page to display all songs for an artist.
              4. Small redsign of the main menu.
              5. Pi-Player functions added to the top menu bar. See the website for full details about the new Peerless-Pi-Player.

              ");//
                var buttons = $(""); $('.modalFooter').append(buttons); $("#btnOkModal").focus(); diff --git a/bin/Microsoft.NodejsTools.WebRole.dll b/bin/Microsoft.NodejsTools.WebRole.dll index 927d040..3b80979 100644 Binary files a/bin/Microsoft.NodejsTools.WebRole.dll and b/bin/Microsoft.NodejsTools.WebRole.dll differ diff --git a/docs/index.html b/docs/index.html index 2863afd..63709ae 100644 --- a/docs/index.html +++ b/docs/index.html @@ -65,7 +65,7 @@

              A desktop app to organise, listen and explore your off-line music collection
              - +
              diff --git a/docs/pages_news.html b/docs/pages_news.html index 972a7ff..4e16a5b 100644 --- a/docs/pages_news.html +++ b/docs/pages_news.html @@ -39,9 +39,22 @@

              Peerless Player News


              +

              Latest Release: Version 0.5.0

              +
              +
              +

              May 2023 - What's New

              +
              +

              Release Date: 29.05.2023

              +

              The Peerless-Pi-Player project has been completed and Peerless Player has been updated to connect to a Peerless-Pi-Player so you can view album art and track details of the current playing song in Peerless Player on a remote screen, such as your flat-screen TV or remote monitor using a Raspberry Pi. For more details please see the Pi-Player page of this website.


              +

              The number of songs on the artist's album page above the biography button has been linked to display a table of all the artist's songs. This table can be sorted and filtered as required.


              +

              There have been a few bug fixes and small changes. A bug while fetching album information from Wikidata has been fixed. There has been a small redesign of the main top menu and when editing the database, the cancel button will now take you back to the artist's album page instead of the home page.


              +

              Security updates. Sqlite3 bumped from 5.1.4 to 5.1.5 and http-cache-semantics bumped from 4.1.0 to 4.1.1.


              +
              +
              +
              +

              Peerless-Pi-Player


              -

              April 2023 - Coming Soon


              diff --git a/docs/pages_pi-player.html b/docs/pages_pi-player.html index bf76e1f..198f13f 100644 --- a/docs/pages_pi-player.html +++ b/docs/pages_pi-player.html @@ -82,7 +82,7 @@

              Hardware

            2. Raspberry Pi 3 or above.
            3. Official Raspberry Pi Power Supply.
            4. 16gb Micro SD Card or above.
            5. -
            6. A case of your choice. I have used the Pibow 3 A+ Coupé.
            7. +
            8. A case of your choice. I have used the Pibow 3 A+ Coupe.
            9. HDMI cable.
            10. diff --git a/docs/pages_userguide.html b/docs/pages_userguide.html index 19debae..5811163 100644 --- a/docs/pages_userguide.html +++ b/docs/pages_userguide.html @@ -786,7 +786,7 @@

              11.2 Menu Options

              Open Pi-Player. Click to open the Pi-Player in a full screen Chromium browser on your remote screen.

            11. - Re-Send Track data. Click if you need to resend data from Peerless player to the Pi-Player. For example if you open Pi-Player while a song is playing, it won’t update until the next song is played. + Re-Send Track data. Click if you need to resend data from Peerless player to the Pi-Player. For example if you open Pi-Player while a song is playing, it will not update until the next song is played.
            12. Close Pi-Player. Click to close the Pi-Player. diff --git a/main.js b/main.js index e7af0c6..e3d6c40 100644 --- a/main.js +++ b/main.js @@ -1022,9 +1022,6 @@ ipcMain.on('ssh_artworkfile', (event, data) => { var artworkFile; var newDate = Date().toLocaleString(); - // Location of file on HP Desktop - //const fileToReceive = "/Users/geoff/Documents/Tunes/pi-player/graphics/folder.jpg" - // Location of file on pi-player const fileToReceive = "/home/" + userName + "/Documents/pi-player/graphics/tempFolder.jpg" @@ -1046,7 +1043,9 @@ ipcMain.on('ssh_artworkfile', (event, data) => { fs.writeFileSync("./app/data/pi_data.json", jsonData) // Send art file first - sendFile([fileToSend, fileToReceive, ipAddress, userName, password]) + if (ipAddress) { + sendFile([fileToSend, fileToReceive, ipAddress, userName, password]) + } }); // Function to send files by sftp to pi-player @@ -1076,7 +1075,6 @@ function sendFile(data) { writeStream.on('close', function () { if (fileToReceive == "/home/" + userName + "/Documents/pi-player/graphics/tempFolder.jpg") { - console.log("Transfer folder.jpg complete") shellCommand(['mv /home/' + userName + '/Documents/pi-player/graphics/tempFolder.jpg /home/' + userName + '/Documents/pi-player/graphics/folder.jpg\n', ipAddress, userName, password]) conn.end(); } @@ -1123,7 +1121,6 @@ function shellCommand(data) { // Connection successful conn.on('ready', () => { - console.log('Shell Client Stream :: ready'); conn.shell(false, { pty: true }, function (err, stream) { if (err) throw err; stream.on('close', function () { @@ -1151,87 +1148,3 @@ function shellCommand(data) { password: password }); }; - - - - -/* -// Connect to remote server using SSH -const { Client } = require('ssh2'); -const conn = new Client(); - -// Connection error handling -conn.on('error', function (e) { - console.log("ERROR connecting :: " + e); -}); - -// Connection successful -conn.on('ready', () => { - conn.sftp(function (err, sftp) { - if (err) throw err; - // Get length of array of files to send - let filesToSendLength = filesToSend.length; - - var i = 0; - function sendFiles() { - setTimeout(function () { - - // Local directory path - var readStream = fs.createReadStream(filesToSend[i]); - // Remote directory location; include the file name - var writeStream = sftp.createWriteStream(filesToRecieve[i]); - - writeStream.on('close', function () { - console.log("- file transferred succesfully") - if (filesToRecieve[i - 1] == "/home/geoff/Documents/pi-player/graphics/tempFolder.jpg") { - console.log("Transfer folder.jpg complete") - shellCommand(['mv /home/geoff/Documents/pi-player/graphics/tempFolder.jpg /home/geoff/Documents/pi-player/graphics/folder.jpg\n', ipAddress, userName, password]) - } - }); - - writeStream.on('end', function () { - console.log("sftp connection closed"); - conn.close(); - }); - - // Initiate transfer of file - readStream.pipe(writeStream); - - i++; - if (i < filesToSendLength) { - sendFiles() - } - }, 600) - } - sendFiles() - - - // Loop through files to send to remote server - for (let i = 0; i < filesToSendLength; i++) { - // Local directory path - var readStream = fs.createReadStream(filesToSend[i]); - // Remote directory location; include the file name - var writeStream = sftp.createWriteStream(filesToRecieve[i]); - - writeStream.on('close', function () { - console.log("- file transferred succesfully"); - }); - - writeStream.on('end', function () { - console.log("sftp connection closed"); - conn.close(); - }); - - // Initiate transfer of file - readStream.pipe(writeStream); - } - - }); -// Connection details of remote server -}).connect({ - host: ipAddress, - port: 22, - username: userName, - password: password -}); -*/ diff --git a/package.json b/package.json index 269f473..e9d0251 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "peerless-player", - "version": "0.4.0", + "version": "0.5.0", "description": "Peerless Player - listen, discover, explore music", "main": "main.js", "scripts": { @@ -28,7 +28,7 @@ }, "devDependencies": { "electron": "^22.0.0", - "electron-builder": "^24.1.2", + "electron-builder": "^23.6.0", "electron-rebuild": "^3.2.5" }, "repository": {