def onInit(self): global person_name if self.mode == "genre": self.getControl(1).setLabel("[B]Search for Movies by Genre[/B]") for genre in tmdb.get_genres(): li = xbmcgui.ListItem(genre["name"]) li.setProperty("id", str(genre["id"])) self.getControl(300).addItem(li) if self.mode == "people": self.getControl(1).setLabel("[B]Select Person[/B]") for person in tmdb.search_people(person_name, 1)["results"]: li = xbmcgui.ListItem(person["name"]) li.setProperty("id", str(person["id"])) if person["profile_path"] == None: li.setIconImage("no-profile-w92.jpg") else: li.setIconImage("http://image.tmdb.org/t/p/w45" + person["profile_path"]) self.getControl(300).addItem(li) if self.mode == "list": li = xbmcgui.ListItem("Add New") li.setProperty("id", "") self.getControl(300).addItem(li) self.getControl(1).setLabel("[B]Your Movie Lists[/B]") lists = tmdb.get_users_lists(addon.getSetting("session_id"), 1) lists_results = lists["results"] for list in lists_results: li = xbmcgui.ListItem(list["name"] + " (" + str(list["item_count"]) + ")") li.setProperty("id", str(list["id"])) self.getControl(300).addItem(li) if lists["total_pages"] > 1: for i in range(2, lists["total_pages"]): l = tmdb.get_users_lists(addon.getSetting("session_id"), i) for list in l["results"]: li = xbmcgui.ListItem(list["name"] + " (" + str(list["item_count"]) + ")") li.setProperty("id", str(list["id"])) self.getControl(300).addItem(li) if self.mode == "context_list": list_count = 0 self.getControl(1).setLabel("[B]Add/Remove Movie from Lists[/B]") lists = tmdb.get_users_lists(addon.getSetting("session_id"), 1) lists_results = lists["results"] for list in lists_results: li = xbmcgui.ListItem(list["name"] + " (" + str(list["item_count"]) + ")") li.setProperty("id", str(list["id"])) li.setProperty("name", list["name"]) if tmdb.is_in_list(list["id"], self.curr_movie["id"])["item_present"]: list_count = list_count + 1 li.setIconImage("film-icon.png") li.setProperty("in_list", "true") else: li.setIconImage("film-icon-disable.png") li.setProperty("in_list", "false") self.getControl(300).addItem(li) if lists["total_pages"] > 1: for i in range(2, lists["total_pages"]): l = tmdb.get_users_lists(addon.getSetting("session_id"), i) for list in l["results"]: li = xbmcgui.ListItem(list["name"] + " (" + str(list["item_count"]) + ")") li.setProperty("id", str(list["id"])) li.setProperty("name", list["name"]) if tmdb.is_in_list(list["id"], self.curr_movie["id"])["item_present"]: list_count = list_count + 1 li.setIconImage("film-icon.png") li.setProperty("in_list", "true") else: li.setIconImage("film-icon-disable.png") li.setProperty("in_list", "false") self.getControl(300).addItem(li) self.setFocus(self.getControl(300))
def onClick(self,control): global exit_requested global source global query global page global maxpage do_tv=False do_people=False do_movies=False popular = 32101 query_btn = 32110 previous = 32116 next =32117 tv_shows = 32114 movies = 32113 people = 32115 person_id=self.get_person_from_control(control) if control == popular: source='popular' page=1 do_people=True if control == query_btn: source='query' do_people=True page=1 if control == next: if page < maxpage: page=page+1 do_people=True if control == previous: if page > 1: page=page-1 do_people=True if control == tv_shows: do_tv=True if control == movies: do_movies=True if do_people: if source=='query': if control==query_btn: k=xbmc.Keyboard('','Enter person Title to Search For') k.doModal() query=k.getText() if query!='': people=tmdb.search_people(query,page) maxpage=people['total_pages'] people=people['results'] if maxpage > page: people.append(tmdb.search_people(query,page+1)['results'][0]) self.close() show_people(people,source,page) else: query='' xbmc.log(source) people=tmdb.get_people(source,page) total_pages=people['total_pages'] maxpage=10 if source=='upcoming' or source=='now_playing':maxpage=people['total_pages'] people=people['results'] if total_pages > page: people.append(tmdb.get_people(source,page+1)['results'][0]) self.close() show_people(people,source,page) if do_tv: from resources.lib import tvshows tvshows.source='popular' tvshows.startup() if do_movies: from resources.lib import movies movies.source='popular' movies.startup() if person_id!='': from resources.lib import person person.person_id=person_id person_window = person.personWindow('script-personDetailWindow.xml', addon_path,'default') person_window.doModal() del person_window