Kodi Community Forum

Full Version: skin helper service
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(2015-09-19, 00:09)marcelveldt Wrote: [ -> ]
(2015-09-18, 22:26)tomer953 Wrote: [ -> ]So I tried in my kodi to change the menus, save, then reset, and try to restor to my save - and it doesnt effect the menus at all - are you sure the skinshortcuts is also include?
the target is users can share their full skin settings... maybe your ZIP + background folder, or any smart way to share it..

Oops, there was an error in the code introduced when I created that option to only backup the skinshortcuts.
Well, it's now fixed on git

Working Great.
1) can you think about a way to use the backup to also include the icons and backgrounds using by the menus?
as I said, If I want to send you my skin setup from scratch.
I think is more complicated, because the icons path and backgrounds will be different from one pc to another (C:\users\USERNAME\...)
and only option is to use "special://" instead...I'm really just wondering and thinking about it, don't know how practical it.
I know this days users just copy-paste the whole "Kodi" folder, and I tought this can be better method to share menus and settings.

2) It would be great if we can localize the DialogSelect headers you are using. ["Choose Views" "Select a color theme" "Enable\Disable Views" etc...]
(2015-09-17, 17:27)marcelveldt Wrote: [ -> ]1) I have just adjusted the calculation of the resolution, you were right, it was just returning the height while Kodi has some logic in place to convert the width+height to a resolution that makes sense. I have implemented that exact same logic now in the helper so it should return the same values as native Kodi does for items in the library. Please test latest git of the script.

2) 500 items in a widget ? That's a bit insane don't you think ? For speed reasons keep it so a low number like 25 or something.
And about that count beiing 407, I think you just have 407 channels (with info)

3) You can't use that to show a textbox, that content pluginpath is to be used with a list container. If you just need the text to be displayed in a label/textbox, use the window prop SkinHelper.ListItemCast, note that you need need to add a (fake) list to trigger the plugin, it isn't set by the background service.

1) something wrong in code,not working at all for movie set...
PHP Code:
height stream.get("height","")
                                    
width stream.get("width","")
                                    if 
height and width:
                                        
resolution ""
                                        
if width <= 720 height <= 480resolution "480"
                                        
elif width <= 768 height <= 576resolution "576"
                                        
elif width <= 960 height <= 544resolution "540"
                                        
elif width <= 1280 height <= 720resolution "720"
                                        
elif width <= 1920 height <= 1080resolution "1080"
                                        
elif width height >= 6000000resolution "4K"
                                        
WINDOW.setProperty('SkinHelper.MovieSet.' str(count) + '.Resolution',resolution
this shoud be something like this,I try but don't have good resultats,You need to fix code.(resultats in condition have two resolution:,and label is blank or 1080 ?!?),I am no good in this,but "&" is error in code.
PHP Code:
height stream.get("height","")
                                    
width stream.get("width","")
                                        
resolution ""
                                        
if width <= 720 and height <= 480resolution "480"
                                        
elif width >= 720 and  height <= 576resolution "576"
                                        
elif width <= 960 and  height <= 544resolution "540"
                                        
elif width <= 1280 and  height >= 576resolution "720"
                                        
elif width >= 1920 and height >= 1080resolution "1080"
                                        
WINDOW.setProperty('SkinHelper.MovieSet.' str(count) + '.Resolution',resolution
(2015-09-19, 00:26)marcelveldt Wrote: [ -> ]
(2015-09-19, 00:23)Jayz2K Wrote: [ -> ]Hi Marcel, I see you're really busy fixing things, so just wanted to know if you made something for the the new import / export features. Not pushing at all but maybe your latest commits fixed problems I encountered when testing ?

That should all be fixed. Didn't I report that back ?
Well, please test and let me know

Gave it a quick shot and results are the same as my prvious ones :

http://forum.kodi.tv/showthread.php?tid=...pid2103066

Am I wrong on something ?
(2015-09-19, 11:21)Angelinas Wrote: [ -> ]1) something wrong in code,not working at all for movie set...

haha lol, thas was me mixing up some C#/C++ code in python :-)
Please try again with latest Git.
(2015-09-19, 10:50)tomer953 Wrote: [ -> ][quote='marcelveldt' pid='2109644' dateline='1442614159']
1) can you think about a way to use the backup to also include the icons and backgrounds using by the menus?
as I said, If I want to send you my skin setup from scratch.
I think is more complicated, because the icons path and backgrounds will be different from one pc to another (C:\users\USERNAME\...)
and only option is to use "special://" instead...I'm really just wondering and thinking about it, don't know how practical it.
I know this days users just copy-paste the whole "Kodi" folder, and I tought this can be better method to share menus and settings.

2) It would be great if we can localize the DialogSelect headers you are using. ["Choose Views" "Select a color theme" "Enable\Disable Views" etc...]

1) Check out latest Git. It should now also backup any custom thumbs/backgrounds with the skin backup.

2) Is this because you want them localized ? If so, please translate the language file. I haven't submitted the script yet to the Kodi repo (and transifex) so only English but feel free to create the translation in your language.

https://github.com/marcelveldt/script.sk...strings.po
(2015-09-11, 12:47)im85288 Wrote: [ -> ]Marcel, out of interest what is your plan for submittal to the Kodi repo of this script?

I forgot to answer this one... I'm currently fixing the latest issues. If you guys think it's stable enough I will publish to the Kodi repo.
(2015-09-11, 11:23)Jayz2K Wrote: [ -> ]Erm, yeah, sry for the VFS path.

Here's my new attempts :

Code:
<onclick>RunScript(script.skin.helper.service,action=restore,silent=special://skin/extras/colorschemes/kover_colorccheme_default.zip)</onclick>
and
Code:
<onclick condition="StringCompare(Container(9400).ListItem.Property(NumTemp),MODEL1)">RunScript(script.skin.helper.service,action=backup,filter=MODEL1,silent=special://skin/extras/test.zip))</onclick>

Returns invalid path in Log (tried it several times with renaming the zip mybackup.zip, moving it straight in extras/ ... no luck)

Code:
11:17:06 T:5492  NOTICE: Skin Helper Service --> ERROR while creating backup ! --> Path invalid. Make sure you provide the FULL path, for example special://skin/extras/mybackup.zip

Also tried again for export with name entry prompt, same result as before with the same command.

I have justed tested both backup and restore with silent parameters and working fine...

There's however something funny with yuour code snippet... I I type exactly the same as you by hand it's working but when I copy your code it fails.
So I'd suggest you just to retype the code because there might be some weird character in there. Also, did you notice you have one bracket ) too many at the end ?
(2015-09-20, 01:36)marcelveldt Wrote: [ -> ]
(2015-09-19, 10:50)tomer953 Wrote: [ -> ][quote='marcelveldt' pid='2109644' dateline='1442614159']
1) can you think about a way to use the backup to also include the icons and backgrounds using by the menus?
as I said, If I want to send you my skin setup from scratch.
I think is more complicated, because the icons path and backgrounds will be different from one pc to another (C:\users\USERNAME\...)
and only option is to use "special://" instead...I'm really just wondering and thinking about it, don't know how practical it.
I know this days users just copy-paste the whole "Kodi" folder, and I tought this can be better method to share menus and settings.

2) It would be great if we can localize the DialogSelect headers you are using. ["Choose Views" "Select a color theme" "Enable\Disable Views" etc...]

1) Check out latest Git. It should now also backup any custom thumbs/backgrounds with the skin backup.

2) Is this because you want them localized ? If so, please translate the language file. I haven't submitted the script yet to the Kodi repo (and transifex) so only English but feel free to create the translation in your language.

https://github.com/marcelveldt/script.sk...strings.po

Wow, your my Gini...
Tested the backup function, and it import background\icons too! GREAT.
I saw some missing icons, (about 50%)
and kodi crashed after I navigate to the main menu, but it could be a lot of reason, because the user I restore his settings use a tons of addons that I don't have as widgets and so on...
So I will check about the missing icons later.
10x
(b.t.w, ill translate all strings soon)

Edit:
After I restore from my friend backup, and saw the missing icons, I took a look in the mainmenu.DATA.xml file that inside the zip, and I noticed that all the icons that are missing is with full path, while the ones that the script did backup is with special:// path.
Example:
Code:
<thumb>C:\Users\Oren\AppData\Roaming\Kodi\avri icons\Folder-Nature-Leave-icon.png</thumb>
(2015-09-20, 00:13)marcelveldt Wrote: [ -> ]haha lol, thas was me mixing up some C#/C++ code in python :-)
Please try again with latest Git.
(Resolution) small isue with two lines(setdetails), fixed this and working like charm Smile
Also fix studio (not working from your github)
Compare mine changes and find mistake in your git hub...

Image

error
PHP Code:
title_header "[B]" str(json_response['setdetails']['limits']['total']) + " " xbmc.getLocalizedString(20342) + "[/B][CR]" 
PHP Code:
for item in json_response['setdetails']['movies']: 
PHP Code:
if json_response['setdetails']['limits']['total'] > 1
PHP Code:
WINDOW.setProperty('SkinHelper.MovieSet.Count'str(json_response['setdetails']['limits']['total'])) 

Stable yeap Smile just go for it
(2015-09-20, 02:20)marcelveldt Wrote: [ -> ]I have justed tested both backup and restore with silent parameters and working fine...

There's however something funny with yuour code snippet... I I type exactly the same as you by hand it's working but when I copy your code it fails.
So I'd suggest you just to retype the code because there might be some weird character in there. Also, did you notice you have one bracket ) too many at the end ?

Good point Marcel, thanks. I made a manual rewrite and got it to work with path. This is not the first time I encounter that since I use sublimetext ... maybe something to do with copy paste from HTML page that makes weird chars ? Sorry for that

However, made the same with promptfilename=true but I don't get the prompt. Do you have this working ?
Double post sorry
(2015-09-20, 09:48)Angelinas Wrote: [ -> ](Resolution) small isue with two lines(setdetails), fixed this and working like charm Smile
Also fix studio (not working from your github)
Compare mine changes and find mistake in your git hub...

Actually the code was already right but there was some old info in your cache. I changed it to not persistant cache the setdetails (as it should only cache for the session, not forever)
Could you please test latest Git ?
(2015-09-20, 12:21)Jayz2K Wrote: [ -> ]However, made the same with promptfilename=true but I don't get the prompt. Do you have this working ?

Sorry, my mistake... typo :-)
Please check latest Git.
(2015-09-20, 07:42)tomer953 Wrote: [ -> ]After I restore from my friend backup, and saw the missing icons, I took a look in the mainmenu.DATA.xml file that inside the zip, and I noticed that all the icons that are missing is with full path, while the ones that the script did backup is with special:// path.
Example:
Code:
<thumb>C:\Users\Oren\AppData\Roaming\Kodi\avri icons\Folder-Nature-Leave-icon.png</thumb>

Hmm, the backup should convert those local paths to special paths (and copy the files to skinshortcuts addondata)...
I'm wondering why it failed for some thumbs... Are you sure that file was still there ? I will do some tests myself too, maybe the space in the path or something. If you can find anything, please let me know.
(2015-09-20, 20:07)marcelveldt Wrote: [ -> ]
(2015-09-20, 07:42)tomer953 Wrote: [ -> ]After I restore from my friend backup, and saw the missing icons, I took a look in the mainmenu.DATA.xml file that inside the zip, and I noticed that all the icons that are missing is with full path, while the ones that the script did backup is with special:// path.
Example:
Code:
<thumb>C:\Users\Oren\AppData\Roaming\Kodi\avri icons\Folder-Nature-Leave-icon.png</thumb>

Hmm, the backup should convert those local paths to special paths (and copy the files to skinshortcuts addondata)...
I'm wondering why it failed for some thumbs... Are you sure that file was still there ? I will do some tests myself too, maybe the space in the path or something. If you can find anything, please let me know.

his debug log when backup in running: http://pastebin.com/jvXmgkV7
maybe something with this:
Code:
ERROR: XFILE::CDirectory::Create - Error creating C:\

?