I am very interested in the future of this script but am seriously lacking in skills to continue tweaking it on my own. I did manage to fix a little bug that has been bothering me (see bottom of this post) but am ashamed to say that after spending literally hours poring over the code, I couldn't figure out how to make the changes and additions I wanted.
So, who wants to help, since kanski has no further plans to continue development on this?
While I wouldn't refuse ready-made solutions
![;-)](./images/smilies/icon_wink.gif)
, what I am really looking for is some help to get me started on my issues. I am afraid that I must not understand how this script works at a fundamental level...
Please PM me if you are willing to help!
Anyway, I'm posting my "wishlist" below. I divided it into 3 'priorities', sorted not only by what I would like to have fixed or improved first but also by (to my naive eye perhaps) increasing complexity.
Other thoughts, additions, comments would be most welcome, thanks!
BUGS
- at least for me (see my report
here), the Content menu doesn't work using Internet Explorer. Is this a bug or did I do something wrong? Both style.xls and style_IE.xls are uploaded.
- Content pages starting with non-standard characters (for example Ç, Ö, Ü...) give a 404 error even though they appear in the drop-down menu
- table widths should depend on the available window size/resolution
(if the browser window is maximized, the tables should take up all available space, not be remain 'squished' into the top left corner)
ADDITIONS
PRIORITY 1
- add active links for Genre and Year when added to track view
(leading to the 'Albums by (Genre)' and 'Albums by (Year)' tables)
- add fields that exist in the track mask also to the album mask, particularly <Album Artist>, <Custom 1>, <Custom 2>, <Custom 3> (use some 'averaging method' for the custom fields, similar to the one used for 'Genre')
- add <Original Year> to track mask
PRIORITY 2
- an option to make individual 'album by field' pages for the <Custom> fields (like the existing Albums by Genre and Albums by Year) and add links to them in both the Albums pages and Tracks pages
- merge <Year> and <Original Year> for the 'Years' statistics and 'Year' pages (so you can view all albums "related to" a particular year regardless whether that year is used in a <year> or <original year> tag)
PRIORITY 3
- make separate tabs for 'TOP 10' statistics and 'Total' statistics (instead of just one statistics page)
Ex:
'TOP 10' tab would contain 'TOP 10 Albums, TOP 10 Artists, TOP 10 Years...
'Total' tab opens a drop-down menu (like the 'content' tab) with links to a table with ALL years, one with ALL genres, one with ALL albums (Albums Art list) etc...
- add the option to make individual pages for EACH song, accessible by clicking on the track title.
These pages would contain most importantly the comments and lyrics for that song, but also the fields in MMs 'detail' view (composer, lyricist, original artist...)
I'm aware the challenge will be to keep the size of these pages as small as possible (using plain TXT maybe?) to keep the overall report size manageable!
- make the script compatible with MM3. I'm particularly thinking about a way to support the upcoming multiple entry fields (artists, genres, albums...)
So there you are, these are my grand plans
The one thing I did manage to fix (after taking a hard look at the Magic Nodes script for inspiration) was the missing 'custom fields' information. Currently, the script displays "custom 1" etc. instead of the NAME of these fields (as entered in the Mediamonkey options).
Custom Field names fix
First, add the following function:
Code: Select all
Function CN(i)
CN = SDB.IniFile.StringValue("CustomFields","Fld" & i & "Name")
End Function
Then search and replace all instances of "Custom 1 Name", "Custom 2 Name", "Custom 3 Name" with CN(1), CN(2), CN(3) respectively, for example:
Code: Select all
CreateStatisticTable SQL, "TOP 10 Custom 1 Name", "Custom 1 Name"
becomes
Code: Select all
CreateStatisticTable SQL, "TOP 10 " & CN(1), CN(1)
Finally, replace in the tracks table:
Code: Select all
gettrack = Replace(gettrack,"<Custom 1>","<td>Custom 1</td>")
gettrack = Replace(gettrack,"<Custom 2>","<td>Custom 2</td>")
gettrack = Replace(gettrack,"<Custom 3>","<td>Custom 3</td>")
with
Code: Select all
gettrack = Replace(gettrack,"<Custom 1>", "<td>"&CN(1)&"</td>")
gettrack = Replace(gettrack,"<Custom 2>", "<td>"&CN(2)&"</td>")
gettrack = Replace(gettrack,"<Custom 3>", "<td>"&CN(3)&"</td>")