Page 1 of 51

Advanced Report 6.4 - Updated 24/06/2014

Posted: Sat Jan 28, 2006 11:46 am
by trixmoto
This script makes an HTML file listing all of your artists. Click on an artist and it will take you to a list of their albums. Click on an album and it will take you to the list of tracks. All in one file! The script can be customised: there are masks for displaying the album and track details.

There is an installer available to download from my website. Unfortunately the code file is too large to post! :)

Code: Select all

'
' MediaMonkey Script
'
' NAME: AdvancedReport 6.4
'
' AUTHOR: trixmoto (http://trixmoto.net)
' DATE : 24/06/2014
'
' INSTALL: Copy to Scripts directory and add the following to Scripts.ini 
'          Don't forget to remove comments (') and set the order appropriately
'
' Thanks to: ZvezdanD for his modifications to Magic Nodes which ignore prefixes
'            Psyxonova for his expert SQL help
'            Buxfix for making the output XHTML and providing new stylesheet
'            Bex for his help with SQLite optimisation and filters and selected tracks
'            Tralla for her modified versions which I've taken many ideas from
'            Jn and Gege for letting me use their WebSearch Panels script
'
' [AdvancedReport]
' FileName=AdvancedReport.vbs
' ProcName=AdvancedReport
' Order=22
' DisplayName=Advanced Report
' Description=Advanced Report
' Language=VBScript
' ScriptType=1
'
' Album mask fields:
' 	<Name><Artist><Length><Tracks><Rating><Stars><Year><Bombs><Discs><Comment><Genre>
'
' Track mask fields:
' 	<Track#><Artist><Title><Album><Album Artist><Genre><Year><Bitrate><BPM>
'   <Composer><Custom 1><Custom 2><Custom 3><Filename><Length><Rating><Stars>
'   <Bombs><|><Band><Channels><MusicComposer><Conductor><Copyright><Custom 4><Custom 5>
'   <Disc#><Grouping><Lyricist><Mood><Occasion><Publisher><Quality><Tempo><Encoder>
'   <Link><ArtistLink><TitleLink><Comment><MediaIcon><Date><OrigYear><Lyrics>
'   <StartTime><StopTime><SkipCount><TrackType>
'   <Series><Director><Producer><Actors><ParentalRating><EpisodeNumber><SeasonNumber>
'
' Tooltip mask fields:
' 	<Track#><Artist><Title><Album><Album Artist><Genre><Year><Bitrate><BPM>
'   <Composer><Custom 1><Custom 2><Custom 3><Filename><Length><Rating>
'   <Band><Channels><MusicComposer><Conductor><Copyright><Custom 4><Custom 5>
'   <Disc#><Grouping><Lyricist><Mood><Occasion><Publisher><Quality><Tempo><Encoder>
'   <Comment><Date><OrigYear><Lyrics><StartTime><StopTime><SkipCount><TrackType>
'   <Series><Director><Producer><Actors><ParentalRating><EpisodeNumber><SeasonNumber>
'
' Artist mask fields:
'   <Name><Tracks><Albums><Authors><Conducts><Lyrics><Rating><Year><Stars><Bombs><Comment>
'
' FIXES: Made output HTML5 compliant and updated DOCTYPE
'        Fixed errors if prefixes contain an apostrophe
'

Posted: Tue Jan 31, 2006 10:17 am
by trixmoto
New version (1.1) includes album artwork! :D

:o NEW CODE BELOW :o

N.B. You can download a default image from here and place it in your Scripts folder.

Posted: Tue Feb 07, 2006 12:36 am
by mmfan
this is sweet i wanted something just like this, good work!

Posted: Wed Feb 08, 2006 7:04 am
by psyXonova
Trixmoto, i found a bug...
While script was creating the report (it had just started writing the albums) i got this error:
Overflow CInt ...... (line 392)
I wrote down the Album, it was "100 Superhits from the 80's"
This album has almost 13 hours of music (meaning 46800 sec) which is out of the limits that CInt can handle (-32,768 to 32,767).
The bug was coming out everytime.

I replaced CInt with Int (for the line 392) and the problem was solved..

Great output (a bit huge though, 50 MB incuding Album arts)!!!

Nice job, once more

Posted: Wed Feb 08, 2006 8:09 am
by trixmoto
Yes, the album art is large. But if you don't want the artwork, you can switch it off in the variable.

Just realised that if (like me) you have your image files separate on your computer then my report leaves the images there and links directly to them. However, this is not useful if you are wishing to zip up the report (with images) to give to a friend. So I will be adding an option to copy all images into the image folder in the next version.

Along with fixing the bug you found psyxonova. :)

Posted: Wed Feb 08, 2006 8:44 am
by onkel_enno
@Trixmoto
Really very helpful.
One Wish from my side: Could you please create a file (htm) for each artist. My report needs forever to load all the Album Arts from Network.
Would be nice :D

Great work

Posted: Thu Feb 09, 2006 11:24 am
by trixmoto
I don't really understand how this would work. If you had a separate .htm for each artist, where would the album listings go? Are you hoping that:

1) All the correpsonding albums would be featured at the bottom of each artist page (lots of repetition)

or

2) A separate page for each album as well?

Posted: Thu Feb 09, 2006 5:42 pm
by trixmoto
New version (2.0) has the option to copy all the local images to the image folder as well, making it easy to zip this folder to pass onto a friend. Or upload the whole folder to your website!

Also there is the option to create separate files for each artist and album. All the links are relative so this should make a good website too!

A couple of little bugs have been fixed as well. :)

N.B. Both these options are defaulted OFF, you need to set the appropriate variables to True.

:o NEW CODE BELOW :o

Posted: Fri Feb 10, 2006 1:27 am
by onkel_enno
@Trix
Exactly how you did it. Great :lol:

Three Things:
  • What about the ability to also click the Album Art to Enter the Album, not only the Album Title?
  • First Screen shows the Artist and when clicking them you enter the Albums. Shouldn't the first screen show the Album Artists? If I select Various, there are no Albums :cry: Or maybe it should show all Albums where the Selected Artist is <Artist> or <Album Artist> - you decide :lol:
  • Could you resize the copied images like you do for the tag-saved-images? (to save disc space)
I know, I always want more :lol:

I'll really use it often!
Thanks a lot.

Posted: Fri Feb 10, 2006 5:12 am
by trixmoto
Cheers for the comments. They will be taken into consideration for the next version! :)

An example website created entirely by this script can be found here: http://trixmoto.net/music

Posted: Mon Feb 13, 2006 11:54 am
by trixmoto
New version (2.1) now has the images as links as well as the titles. Also if an artist does not have any tracks on any albums (ie. Various Artists) then it is searched for as an album artist. I think this fixes the problem onkel_enno was having.

:o NEW CODE BELOW :o

Posted: Tue Feb 14, 2006 10:58 am
by trixmoto
New version (2.2) now converts all images to the correct size in the images folder. Also tracks with unknown artist or album are shown in the report.

:o NEW CODE BELOW :o

Posted: Tue Feb 14, 2006 11:10 am
by Teknojnky
A nifty tip, for this or any other webpage/report that includes images... you can save as .mht (web page,complete) and get a single file with all html and images embedded.

Posted: Thu Feb 16, 2006 2:40 pm
by MCSmarties
Trixmoto: Excellent script! I love it and have been playing around with it for a while.

A few comments:

I didn't really like the function you used to get the track time.
I prefer the time to be displayed as 0:00 (like it's used almost universally in players) instead of 0m0s, so I changed the function as follows:

Code: Select all

Function gettime(sec)
  Dim min
  min = 0
  sec = Int(sec)
  Do While sec > 59 
    sec = sec - 60
    min = min + 1
  Loop
  If sec < 10 Then
    sec = 0&sec
  End If
  gettime = min&":"&sec
End Function
Would it be possible to incorporate the <Rating> in your script?
Such as, it would show the average rating of all tracks in the "album" mask and the individual ratings in the "track" mask.

Also, why is <Year> part of the track mask? It would make more sense to use it in the album mask, don't you think?

The masks I would like to use are as follows:

Code: Select all

AlbumMask = "<Name> - <Artist> (<Year>) <Rating>"
TrackMask = "<Track#>. <Title> - <Artist> (<Length>) <Rating>"

Posted: Fri Feb 17, 2006 4:27 am
by trixmoto
I used the fields that are available in the Auto-Organise mask and then the available album properties. The year of the album is not actually stored, hence there's nothing to display. I could calculate the average year of all the tracks in the album though?

I will add rating both to the album and track - good suggestion! :)