[RELEASE] MovieSets (Video) Addon - Show Movie Sets Info Sets for Skins / Skinners

  Thread Rating:
  • 6 Votes - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
FrostBox Offline
Skilled Python Coder
Posts: 100
Joined: Nov 2005
Reputation: 6
Location: Quebec City
Thumbs Up  [RELEASE] MovieSets (Video) Addon - Show Movie Sets Info Sets for Skins / Skinners
Post: #1
Hi,
Add-on Library for showing details of Movie Sets.
You've dreamed of this! And me, I had nightmares for this!
All infos is retrieved from your database. Not scraping website.

Remember:
This addon run in background if window "VideoNav" is Active. On window close, the add-on will close by itself.
I recommend closing the window before leaving XBMC. Because is possible XBMC crash.

Developed and tested only with (XBMC SVN r35717; Windows XP)

Download : http://passion-xbmc.org/addons/?Page=Vie....moviesets
Sources : http://passion-xbmc.googlecode.com/svn/t....moviesets


Minimum required, "button" for launch and "container".
Parameter button XBMC.RunScript(script.moviesets[,containerId,windowId,busy])
Code:
- containerId : [opt] - id 7000 is default
-    windowId : [opt] - id 10025 is default
-        busy : [opt] - (if you want show dialog busy on retrieving info. add "busy" on argument 3 )
Example of use:

MyVideoNav.xml:
PHP Code:
<defaultcontrol always="true">7777</defaultcontrol>
        <!-- 
MINIMAL REQUIRED FOR ADDON MOVIE SETS -->
        <include>
MovieSetsAddonButton7777</include>
        <include>
MovieSetsContainer</include> 
includes.xml:
PHP Code:
<!-- REQUIRED FOR SETUP INFOS OF MOVIE SETS -->
    <include 
name="MovieSetsAddonButton7777">
        <include 
condition="System.HasAddon(script.moviesets)">MovieSetsStartButton</include>
        <
control type="button" id="7777">
            <
description>Don't Run Movie Sets</description>
            <include>MovieSetsBaseButton</include>
            <include condition="System.HasAddon(script.moviesets)">MovieSetsIsAliveCondition</include>
        </control>
    </include>
    <include name="MovieSetsStartButton">
        <!-- XBMC.RunScript(script.moviesets[,containerId,windowId,busy]) -->
        <!-- containerId : [opt] - id 7000 is default -->
        <!--    windowId : [opt] - id 10025 is default -->
        <!--        busy : [opt] - (if you want show dialog busy on retrieving info. add "busy" on argument 3 ) -->
        <control type="button" id="7777">
            <description>Run Movie Sets</description>
            <onfocus>XBMC.RunScript(script.moviesets,,,busy)</onfocus>
            <include>MovieSetsBaseButton</include>
            <visible>IsEmpty(Window(10025).Property(MovieSets.IsAlive))</visible>
        </control>
    </include>
    <include name="MovieSetsIsAliveCondition">
        <visible>!IsEmpty(Window(10025).Property(MovieSets.IsAlive))</visible>
    </include>
    <include name="MovieSetsBaseButton">
        <hitrect x="0" y="0" w="0" h="0" />
        <posx>0</posx>
        <posy>0</posy>
        <width>1</width>
        <height>1</height>
        <onfocus>SetFocus(50)</onfocus>
        <texturenofocus>-</texturenofocus>
        <texturefocus>-</texturefocus>
        <label>-</label>
        <font>-</font>
    </include>

    <!-- REQUIRED CONTAINER, CONTAINS ALL MOVIE SET INFO -->
    <include name="MovieSetsContainer">
        <control type="list" id="7000">
            <description>Container Movie Sets</description>
            <hitrect x="0" y="0" w="0" h="0" />
            <posx>0</posx>
            <posy>0</posy>
            <width>1</width>
            <height>1</height>
            <onleft>50</onleft>
            <onright>50</onright>
            <onup>50</onup>
            <ondown>50</ondown>
            <pagecontrol>-</pagecontrol>
            <itemlayout height="1" width="1" />
            <focusedlayout height="1" width="1" />
            <visible>System.HasAddon(script.moviesets)</visible>
        </control>
    </include> 
MOVIESETS INFOLABELS AND WINDOW PROPERTIES

Legend: (*) if not exists return empty

WINDOW PROPERTIES AVAILABLE:
Code:
- Window([id]).Property(MovieSets.IsAlive) -> [ return true or empty, if addon is running ]
- Window([id]).Property(Content.MovieSets) -> [ return true or empty, if Container.FolderPath is videodb://1/7/ ]
INFOLABELS AVAILABLE:
Code:
- Container(id).ListItem([offset]) ----> [ first item is empty/dummy item ]( eg: Container(7000).ListItem.Label )

   - .Label ---->   [ Title of Set ] -> [ first item : "Movie Sets" ]
   - .Label2 --->   [ idSet ] --------> [ first item : "Total of MovieSets in your db" ]

   - .Icon -----> * [ return cached icon of set, if user has created with xbmc ]
   - .Path ----->   [ ActivateWindow(10025,videodb://1/7/[idSet]/) ]
   - .Title ---->   [ Same as .Label ]
   - .Genre ---->   [ return all genres of movies in set ]
   - .Plot ----->   [ return all plot of movies in set ]
   - .Duration ->   [ return total time in minutes of all movies in set ]
   - .Rating --->   [ return sum of rating divided by total movies in set ]( eg: (5.6 + 7.5) / 2 movies )
   - .Votes ---->   [ return sum of votes for all movie in set ]

   - .Property(HasMovieSets) ---->   [ return true or empty, if item currently selected is movieset ]
   - .Property(WatchedMovies) --->   [ Shows the number of watched movies for the currently selected movieset ]
   - .Property(UnWatchedMovies) ->   [ Shows the number of unwatched movies for the currently selected movieset ]
   - .Property(TotalMovies) ----->   [ Shows the number of total movies for the currently selected movieset ]
   - .Property(ExtraFanart) -----> * [ return first folder "../extrafanart" of movies for the currently selected movieset ]( eg: moviepath/../extrafanart )
   - .Property(Fanart_Image) ----> * [ return first fanart of movieset sorted by sortTitle tag ]

Properties of each movie for the currently selected movieset
base property "movie.ID." Possible ID ( 1 - 10 or more )

   - .Property(movie.ID.Title) ------->   [ return title of ID ]
   - .Property(movie.ID.sortTitle) --->   [ return sort title of ID ] http://wiki.xbmc.org/index.php?title=Movie_Sets#Editing_the_.NFO_file
   - .Property(movie.ID.Filename) ---->   [ return filename of ID ]
   - .Property(movie.ID.Path) -------->   [ return path of ID ]
   - .Property(movie.ID.Plot)--------->   [ return plot of ID ]
   - .Property(movie.ID.Icon) --------> * [ return cached icon of ID ]
   - .Property(movie.ID.Fanart) ------> * [ return cached fanart of ID ]
   - .Property(movie.ID.ExtraFanart) -> * [ return folder "extrafanart" of ID ]( eg: moviepath/extrafanart )
Now Shows Info:
For More ;-) look file: "/script.moviesets/resources/skins/skin.confluence/720p/ViewsMovieSets.xml"
PHP Code:
<label>$INFO[Container(7000).ListItem.Title]</label>
<
label>$INFO[Container(7000).ListItem.Plot]</label>
<
label>$INFO[Container(7000).ListItem.Duration,, $LOCALIZE[12391]]</label>
<
texture>$INFO[Container(7000).ListItem.Icon]</texture>
<
texture>$INFO[Container(7000).ListItem.Property(movie.1.icon)]</texture>
<
texture>$INFO[Container(7000).ListItem.Property(movie.5.icon)]</texture>
<
texture background="true">$INFO[Container(7000).ListItem.Property(Fanart_Image)]</texture>
<
visible>ListItem.IsFolder + !IsEmpty(Container(7000).ListItem.Property(HasMovieSets))</visible
Shows Info Only on "Video - Library -> Movies -> Sets" Listing:
PHP Code:
<visible>!IsEmpty(Window(10025).Property(Content.MovieSets))</visible>
<
visible>StringCompare(Container.FolderPath,videodb://1/7/)</visible>

<control type="list" id="7700">
    <
viewtype label="Saga Info">list</viewtype>
    <
visible>!IsEmpty(Window(10025).Property(Content.MovieSets)) | StringCompare(Container.FolderPath,videodb://1/7/)</visible>
    
...
</
control
Any suggestions are welcome or if I failed to put useful information. Ask me or submit a path.

If you want my mod for Confluence, but not all view as info for saga only list ( Saga Info and Fanart )
copy folder in addon from "script.moviesets/resources/skins/skin.confluence" to "XBMC/addons/skin.confluence"

Cheers And Happy New Year!
Frost

Previews:
List View: "Video - Library -> Movies -> Title"
[Image: 1293817551-screenshot005.png]


List View: "Video - Library -> Movies -> Sets"
[Image: 1293817653-screenshot000.png]
[Image: 1293817693-screenshot001.png]
[Image: 1293817731-screenshot002.png]
[Image: 1293817774-screenshot003.png]
[Image: 1293817814-screenshot004.png]

For my bad English, sorry. I am French Canadian.
Admin @ Passion-XBMC.org
find quote
ubuntuf4n Offline
Posting Freak
Posts: 788
Joined: Jan 2010
Reputation: 2
Post: #2
Does this currently only work with Confluence ?

.
Cheers
ubuntuf4n
find quote
blacklist Offline
Posting Freak
Posts: 814
Joined: Jul 2009
Reputation: 1
Location: Atlanta, Ga, USA
Post: #3
I think this is a great idea, and I would like to be able to incorporate it in to Paper Street since there is little support for editing sets from within XBMC. Without knowing a lot about he interaction between scripts and XBMC - my basic use for this would be:

a) create a new movie set
b) add movies to an existing set
c) remove movies from an existing set
d) change the set poster and fanart

I'll see how we can encorporate this into our existing schema. Thanks!
find quote
igotdvds Offline
Skilled Skinner
Posts: 1,616
Joined: Jul 2009
Reputation: 11
Post: #4
Can you describe in more detail exactly what it does?
find quote
stoli Offline
Skilled Skinner
Posts: 2,409
Joined: Nov 2008
Reputation: 31
Location: Florida
Post: #5
Looks pretty slick at first glace - may have to spend some time this weekend integrating it...

@igotdvds - from a quick glance, it provides the ability to get details on all movies in a set at the set/top level. Currently if you hit "I"nfo on the top of a set, nothing happens...you have to open the set and then get info on each item.

Good work FrostBox!
find quote
robweber Offline
Posting Freak
Posts: 812
Joined: Sep 2009
Reputation: 26
Post: #6
i've often wished xbmc would have more set details when selecting a set in the list. seems to me that this type of functionality may be better off added to the core rather than an addon. just my two cents though.
find quote
igotdvds Offline
Skilled Skinner
Posts: 1,616
Joined: Jul 2009
Reputation: 11
Post: #7
I got it wokring in Simplicity but it crashes quite a bit. This would be useful as an add-on. Something that the user can execute to view all movie sets, see whats in them and see the info. The loading everytime you enter Movies or Tv Shows is a bummer as well. Maybe I can find a way to make this an add-on as opposed to another view.
find quote
castortray Offline
Fan
Posts: 501
Joined: May 2009
Reputation: 0
Post: #8
Hi,

I have installed latest version 1.0.4
and successfully create collection but there is no total time/sum of votes/numer watched&unwatched of all movies in selected movieset Sad

I use [MOD] Customizable Confluence but also test it on default Confluence and skin.confluence.moviesets

[Image: pM6Rs.png]

[Image: vdJJk.png]

Many thanks for any tips.
find quote
ashe Offline
Junior Member
Posts: 13
Joined: Jan 2011
Reputation: 0
Post: #9
I'm encountering the same problem, no details and no saga view. All I did was load the add-on, I'm not skilled enough in XML to figure all of it out
find quote
yiarkyiark Offline
Senior Member
Posts: 130
Joined: Nov 2008
Reputation: 2
Location: Paris
Post: #10
Big Grin This great addon is now include in Influence .
http://forum.xbmc.org/showthread.php?tid=84990
find quote
Japaja Offline
Fan
Posts: 513
Joined: May 2010
Reputation: 2
Location: Croatia
Post: #11
deleted
(This post was last modified: 2011-02-10 02:56 by Japaja.)
find quote
iDVB Offline
Junior Member
Posts: 20
Joined: Feb 2009
Reputation: 0
Post: #12
XBMC 10.0 r35648
Confluence

Can someone lead a hand in how to set this up?

1) I have installed the addon using xbmc.
2) I updated the $home/.xbmc/userdata/keymaps/keyboard.xml
Code:
<MyVideoLibrary>
<keyboard>
<o mod="i">RunScript(script.moviesets,moviesetinfo)</o>
</keyboard>
</MyVideoLibrary>

When I go to Movies and over top of a set I hit the "I" or "O" buttons on the keyboard, nothing happens.

What am I missing?

=========================
XBMC Frodo v12.2
Win7 x64
Core i5 3.3GHz
GeForce GTX 580
8 GB RAM
=========================
find quote
mcborzu Offline
Skilled Skinner
Posts: 3,381
Joined: Feb 2009
Reputation: 15
Location: dsf
Post: #13
iDVB Wrote:XBMC 10.0 r35648
Confluence

Can someone lead a hand in how to set this up?

1) I have installed the addon using xbmc.
2) I updated the $home/.xbmc/userdata/keymaps/keyboard.xml
Code:
<MyVideoLibrary>
<keyboard>
<o mod="i">RunScript(script.moviesets,moviesetinfo)</o>
</keyboard>
</MyVideoLibrary>

When I go to Movies and over top of a set I hit the "I" or "O" buttons on the keyboard, nothing happens.

What am I missing?

I believe it need skin support...

[Image: widget]

Check out The Carmichael - A Skin For XBMC

Check out Night - A Skin For XBMC

Check out Unfinished - A Skin For XBMC
find quote
FrostBox Offline
Skilled Python Coder
Posts: 100
Joined: Nov 2005
Reputation: 6
Location: Quebec City
Post: #14
iDVB Wrote:When I go to Movies and over top of a set I hit the "I" or "O" buttons on the keyboard, nothing happens.
Hi, not "I" or "O", but "I+O"


Quote:What am I missing?
This

VV
mcborzu Wrote:I believe it need skin support...

Actually, only this skin as support of MovieSets
- http://passion-xbmc.org/addons/?Page=Vie....moviesets
- and Influence here http://forum.xbmc.org/showthread.php?tid=84990

On skin Influence the "I+O" is not required, it has a button on the left panel for show dialog info

[Image: 1297860216-screenshot000.png]
[Image: 1297860265-screenshot001.png]

For my bad English, sorry. I am French Canadian.
Admin @ Passion-XBMC.org
find quote
tboooe Offline
Fan
Posts: 456
Joined: Dec 2010
Reputation: 0
Post: #15
This is way too cool! I am going to have to try out the Influence skin just for this addon!
find quote
Post Reply