Kodi Community Forum

Full Version: Custom edits to Estuary for music ratings
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Currently the default skin Estuary only shows the user track rating Sad

I'd love it to show the overallrating(rating DB field) and the userrating(userrating db field)

Image

Image

Any skinners here know what I should be looking at? Seems like a trivial change to bring it up to par with how video works.
OK worked it out....

On line 127 of C:\Program Files (x86)\Kodi\addons\skin.estuary\xml\Variables.xml

Code:
<value condition="String.IsEqual(listitem.dbtype,song)">$INFO[ListItem.Genre,[COLOR button_focus]$LOCALIZE[515]: [/COLOR],[CR]]$INFO[ListItem.Duration,[COLOR button_focus]$LOCALIZE[180]: [/COLOR],[CR]]$INFO[ListItem.Playcount,[COLOR button_focus]$LOCALIZE[567]: [/COLOR],[CR]]</value>

Change to:

Code:
<value condition="String.IsEqual(listitem.dbtype,song)">$INFO[ListItem.Genre,[COLOR button_focus]$LOCALIZE[515]: [/COLOR],[CR]]$INFO[ListItem.Duration,[COLOR button_focus]$LOCALIZE[180]: [/COLOR],[CR]]$INFO[ListItem.rating,[COLOR button_focus]Average Rating: [/COLOR],[CR]]$INFO[ListItem.Playcount,[COLOR button_focus]$LOCALIZE[567]: [/COLOR],[CR]]</value>

Image
There are lots of little changes like this that would improve how Estuary presents music. It could be usefully raised as a PR (for the skinners to approve of course).
Yep thats the plan, i'm a bit confused about the translation system though but i'm sure I will work it out.

A little more progress I have managed to show the userrating next to the track length.

Add this after line 141 of the focucused container in C:\Program Files (x86)\Kodi\addons\skin.estuary\xml\View_55_Widelist.xml
Code:
<control type="label">
    <visible>!String.IsEmpty(ListItem.UserRating)</visible>
    <left>40</left>
    <height>80</height>
    <right>130</right>
    <align>right</align>
    <aligny>center</aligny>
    <label>($INFO[ListItem.UserRating])</label>
    <textcolor>grey</textcolor>
    <shadowcolor>text_shadow</shadowcolor>
</control>

And then add this after line 171 to the unfocused container
Code:
<control type="label">
    <visible>!String.IsEmpty(ListItem.UserRating)</visible>
    <left>40</left>
    <height>80</height>
    <right>130</right>
    <align>right</align>
    <aligny>center</aligny>
    <label>($INFO[ListItem.UserRating])</label>
    <textcolor>grey</textcolor>
    <shadowcolor>text_shadow</shadowcolor>
</control>

Image

Then you can remove the star rating from the album picture by deleting line 174-178 from view_50_list.xml

Code:
<control type="group">
    <left>273</left>
    <top>590</top>
    <include>UserRatingCircle</include>
</control>

Now to work out how to turn that into graphical stars Smile
Ok last one today as i'm off to the pub

I couldn't quite work out how to show 5 horizontal stars with half ones for the rating, but I think its possible. I will settle for this for now:

Add this after Line 110 of includes.xml

Code:
<!-- User rating circle custom -->
    <include name="UserRatingCircle2">
        <param name="size">44</param>
        <param name="font">Font12</param>    
        <definition>
            <control type="group">
                <visible>!String.IsEmpty(ListItem.UserRating)</visible>

                <control type="image">
                    <width>$PARAM[size]</width>
                    <height>$PARAM[size]</height>
                    <aspectratio aligny="bottom">scale</aspectratio>
                    <texture colordiffuse="button_focus">overlays/circle.png</texture>
                </control>
                <control type="label">
                    <align>center</align>
                    <aligny>center</aligny>
                    <width>$PARAM[size]</width>
                    <height>$PARAM[size]</height>
                    <font>$PARAM[font]</font>
                    <textcolor>white</textcolor>
                    <label>$INFO[ListItem.UserRating]</label>
                </control>
            </control>
        </definition>
    </include>

Then replace the 2 edits from post 4 with this instead:

Code:
<control type="group">
    <left>1154</left>
    <top>26</top>
    <include content="UserRatingCircle">
        <param name="animation" value="False" />
    </include>
</control>

Image
I updated it a bit to show the star ratings properly Smile

Image