def show_home(): raiplay = RaiPlay(Addon) response = raiplay.getHomePage() for item in response: item_type = item.get("type","") if item_type == "RaiPlay Hero Block": for item2 in item["contents"]: sub_type = item2["type"] liStyle = xbmcgui.ListItem("%s: %s" % (Addon.getLocalizedString(32013), item2['name'])) liStyle.setThumbnailImage(raiplay.getThumbnailUrl(item2["images"]["landscape"])) if sub_type == "RaiPlay Diretta Item": liStyle.setInfo("video", {}) addLinkItem({"mode": "play", "url": item2["path_id"]}, liStyle) elif sub_type == "RaiPlay V2 Lancio Item": if item2["sub_type"] == "RaiPlay Video Item": liStyle.setInfo("video", {}) addLinkItem({"mode": "play", "path_id": item2["path_id"]}, liStyle) else: xbmc.log("Not handled sub-type in Hero Block: '%s'" % item2["sub_type"]) elif sub_type == "RaiPlay Programma Item" : addDirectoryItem({"mode": "ondemand", "path_id": item2["path_id"], "sub_type": sub_type }, liStyle) else: xbmc.log("Not handled type in Hero Block: '%s'" % sub_type) addDirectoryItem({"mode": "ondemand", "path_id": item2["path_id"], "sub_type": sub_type }, liStyle) elif item_type == "RaiPlay Configuratore Fascia Recommendation Item": title = item['name'] if title.find('RCM') > 0: title = title[0:title.find('RCM')] if title.find('HP') > 0: title = title[0:title.find('HP')] if title.strip(): liStyle = xbmcgui.ListItem(title) if "fallback_list" in item: if item["fallback_list"]: addDirectoryItem({"mode": "ondemand_collection", "path_id": item["fallback_list"]}, liStyle) elif "Slider" in item_type: # populate subItems array subItems=[] for item2 in item["contents"]: subItems.append({"mode": "ondemand", "name": item2["name"], "path_id": item2["path_id"], "video_url": item2.get("video_url",""), "sub_type": item2["type"], "icon": raiplay.getThumbnailUrl(item2["images"]["landscape"])}) liStyle = xbmcgui.ListItem(item['name']) addDirectoryItem({"mode": "ondemand_slider", "sub_items": json.dumps(subItems)}, liStyle) xbmcplugin.endOfDirectory(handle=handle, succeeded=True)