[RELEASE] RecentlyAdded Script (RecentlyAdded.py) Recently Added for Skins / Skinners

  Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
Nuka1195 Offline
Skilled Python Coder
Posts: 3,916
Joined: Dec 2004
Reputation: 17
Thumbs Up  [RELEASE] RecentlyAdded Script (RecentlyAdded.py) Recently Added for Skins / Skinners Post: #1
Here is a new version of RecentlyAdded.py

http://xbmc-addons.googlecode.com/svn/pa...lyAdded.py

*new: "alarm" parameter.
most skins run this script whenever you enter home. with the new alarm parameter, if you have a control in home.xml to execute the script, you can set <defaultcontrol always="false"> then the script does not have to run everytime you enter home. if you can have the control in startup.xml. the bad thing about startup.xml, if you have a setting to enable this. you will have to restart xbmc once enabled.

you can pass the following optional parameters:
PHP Code:
limit=#                ; # to limit returned results (default=5)
partial=True         True to returned only items unfinished (default=False)
albums=True        True to return albums instead of songs (default=False)
unplayed=True      True to return only items that have not been played (default=False)
totals=True          True to return database totals (default=False)
trailer=True          True to play the trailer (if available) (default=False)
alarm=#              ; every # minutes run script (default=0, no alarm) 

* when alums=True, only one song is still played (developers any help)

separate parameters with "&amp;" minus quotes

example (the setproperty and visible is for aeon, when the main menu loses focus control 8999 can gain focus with navigating. you skin may not need this):
PHP Code:
<defaultcontrol always="false">8999</defaultcontrol>
 
 
        <
control type="button" id="8999">
            <
posx>-100</posx>
            <
posy>-100</posy>
            <
width>0</width>
            <
height>0</height>
   <
onfocus>XBMC.RunScript(special://skin/extras/RecentlyAdded.py,limit=5&amp;alarm=30&amp;albums=True&amp;unplayed=True&amp;totals=$INFO[Skin.HasSetting(WidgetLatestAddedTotals)])</onfocus>
            
<onfocus>SetFocus(300)</onfocus>
        </
control


properties available:

totals:
PHP Code:
"Movies.Count"
"Movies.Watched"
"Movies.UnWatched"
"Movies.LastWatchedTitle"
"Movies.LastWatchedYear"
"Movies.LastWatchedRuntime"
"Movies.LastWatchedGenre"
"Movies.LastWatchedDate"
 
"MusicVideos.Count"
"MusicVideos.Watched"
"MusicVideos.UnWatched"
 
"TVShows.Count"
"TVShows.Watched"
"TVShows.UnWatched"
"Episodes.Count"
"Episodes.Watched"
"Episodes.UnWatched"
 
"Music.SongsCount"
"Music.AlbumsCount"
"Music.ArtistsCount" 

movies %d=1 to LIMIT:
PHP Code:
"LatestMovie.%d.Title"
"LatestMovie.%d.Rating"
"LatestMovie.%d.Year"
"LatestMovie.%d.RunningTime"
"LatestMovie.%d.Path"
"LatestMovie.%d.Trailer"
"LatestMovie.%d.Fanart"
"LatestMovie.%d.Thumb" 

tv shows %d=1 to LIMIT:
PHP Code:
"LatestEpisode.%d.ShowTitle"
"LatestEpisode.%d.EpisodeTitle"
"LatestEpisode.%d.EpisodeNo"
"LatestEpisode.%d.Rating"
"LatestEpisode.%d.Path"
"LatestEpisode.%d.Fanart"
"LatestEpisode.%d.Thumb" 

music %d=1 to LIMIT:
PHP Code:
"LatestSong.%d.Title"
"LatestSong.%d.Year"
"LatestSong.%d.Artist"
"LatestSong.%d.Album"
"LatestSong.%d.Path"
"LatestSong.%d.Fanart"
"LatestSong.%d.Thumb" 

For python coding questions first see http://mirrors.xbmc.org/docs/python-docs/
(This post was last modified: 2009-08-06 19:55 by Nuka1195.)
find quote
FourTwentySmilz Offline
Fan
Posts: 356
Joined: Jul 2008
Reputation: 0
Location: N. Carolina
Post: #2
So if I replace the recently_added.py i already have, with this one it should work fine without me having to change code in my Home.xml?
find quote
Jezz_X Offline
Team-XBMC Skinner
Posts: 5,264
Joined: Jun 2006
Reputation: 55
Location: Earth
Post: #3
got to admit I'm confused too you saying we don't have to run it anymore ? or that we still have to run it but the script decides if it needs to bother updating or not ?

Skins I have done....
[Image: skinsq.png]
And others in the past...

Want to know what I'm working on currently? Check me out on Google+
find quote
ronie Offline
Team-XBMC Member
Posts: 8,254
Joined: Jan 2009
Reputation: 108
Post: #4
you're not alone. ;-)

if i use alarm=30, does this counter keep running if i navigate away from the homescreen?
or does it only update the recently added stuff if you stay on the homepage for half an hour?

edit:
i also can't seem to see the logic in this:
Code:
<onfocus>SetProperty(LastAddedRun,1)</onfocus>
<visible>IsEmpty(Window(Home).Property(LastAddedRun))</visible>

Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not PM or e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
(This post was last modified: 2009-08-06 00:12 by ronie.)
find quote
Jezz_X Offline
Team-XBMC Skinner
Posts: 5,264
Joined: Jun 2006
Reputation: 55
Location: Earth
Post: #5
I think it means that you just run it once in startup.xml for example and then it sets a xbmc internal alarm to rerun the script every X amount of minutes if you have it set.

I wonder what effect this would have if it decided to fire off the script while your using another like the full AMT script (since I heard about issues running 2 scripts at once)

Skins I have done....
[Image: skinsq.png]
And others in the past...

Want to know what I'm working on currently? Check me out on Google+
find quote
Nuka1195 Offline
Skilled Python Coder
Posts: 3,916
Joined: Dec 2004
Reputation: 17
Post: #6
no the script doesn't decide. the script starts an AlarmClock()

you still need to run the script "once". if you pass alarm=30, then the script will run every 30 minutes. so then there is no need to run it everytime you enter the home menu. (which i don't like). you enter movies back out and the script runs again.

as i said in the first post you can set always="false" for you're control so it only runs once. right?

was the example not clear?

For python coding questions first see http://mirrors.xbmc.org/docs/python-docs/
find quote
Jezz_X Offline
Team-XBMC Skinner
Posts: 5,264
Joined: Jun 2006
Reputation: 55
Location: Earth
Post: #7
ronie Wrote:you're not alone. ;-)

if i use alarm=30, does this counter keep running if i navigate away from the homescreen?
or does it only update the recently added stuff if you stay on the homepage for half an hour?

edit:
i also can't seem to see the logic in this:
Code:
<onfocus>SetProperty(LastAddedRun,1)</onfocus>
<visible>IsEmpty(Window(Home).Property(LastAddedRun))</visible>

This is just the way to launch it and he then sets a variable to say its been launched
<onfocus>SetProperty(LastAddedRun,1)</onfocus>
and hides the launcher because its allready been launched so you wont launch it again
<visible>IsEmpty(Window(Home).Property(LastAddedRun))</visible>

Skins I have done....
[Image: skinsq.png]
And others in the past...

Want to know what I'm working on currently? Check me out on Google+
find quote
Nuka1195 Offline
Skilled Python Coder
Posts: 3,916
Joined: Dec 2004
Reputation: 17
Post: #8
jmasrshall, was to apply a patch for that jezz. i have it in my builds and don't have any issues.

For python coding questions first see http://mirrors.xbmc.org/docs/python-docs/
find quote
Nuka1195 Offline
Skilled Python Coder
Posts: 3,916
Joined: Dec 2004
Reputation: 17
Post: #9
you could launch it from autoexec.py with the params also.

For python coding questions first see http://mirrors.xbmc.org/docs/python-docs/
find quote
Nuka1195 Offline
Skilled Python Coder
Posts: 3,916
Joined: Dec 2004
Reputation: 17
Post: #10
yes jezz in aeon that control can gain focus again if i lose focus by bumping the mouse. then try and navigate to the menu with the keyboard.

probably with proper skinning it isn't needed.

For python coding questions first see http://mirrors.xbmc.org/docs/python-docs/
find quote
Post Reply