def create_program_item_(self, program, channel): recording = common.search_recording(self.recording_list_, program.program_id, channel.channel_id) is_record = recording.program.is_record if recording else False is_series_record = recording.program.is_repeat_record if recording else False is_conflicting = recording.is_conflicting if recording else False title = helper.create_program_title(program, is_record, is_series_record, is_conflicting) return TVShowObject( key=Callback(self.create_program_search_actions, title=program.name, program_id=program.program_id, channel_id=channel.channel_id, channel_name=channel.channel_name, is_series=program.is_series), rating_key=program.program_id, title=title, summary=helper.create_program_summary(program), source_title=channel.channel_name, rating=float( helper.calculate_rating(program.stars_number, program.stars_max_number)), originally_available_at=Datetime.FromTimestamp( program.start_time).date(), duration=program.duration * 1000, genres=program.keywords.split('/') if program.keywords else [], thumb=Resource.ContentsOfURLWithFallback(program.image))
def create_program_item_(self, program): recording = common.search_recording(self.recording_list_, program.program_id, self.channel_id_) is_record = recording.program.is_record if recording else False is_series_record = recording.program.is_repeat_record if recording else False is_conflicting = recording.is_conflicting if recording else False title = helper.create_program_title(program, is_record, is_series_record, is_conflicting) return TVShowObject( key = Callback( self.create_program_actions, title = program.name, program_id = program.program_id, is_series = program.is_series), rating_key = program.program_id, title = title, summary = helper.create_program_summary(program), source_title = self.channel_name_, rating = float(helper.calculate_rating(program.stars_number, program.stars_max_number)), originally_available_at = Datetime.FromTimestamp(program.start_time).date(), duration = program.duration * 1000, genres = program.keywords.split('/') if program.keywords else [], thumb = Resource.ContentsOfURLWithFallback(program.image))
def create_recorded_tv_list(self, title, object_id): try: oc = ObjectContainer(no_history=True, no_cache=True, title1=IDS_RECORDED_TV_MENU_ITEM, title2=title, art=R(helper.ART_RECORDED_TV)) object = self.get_object_(object_id) if object.containers and len(object.containers): for container in object.containers: container_object = self.create_recorded_tv_container_( container) oc.add(container_object) if object.items and len(object.items): for item in object.items: item_object = self.create_recorded_tv_item( item.url, item.object_id, item.recording_title, item.channel_name, helper.create_summary(item.video_info), float( helper.calculate_rating( item.video_info.stars_number, item.video_info.stars_max_number)), item.video_info.start_time, item.video_info.duration * 1000, item.video_info.year, item.video_info.writers.split('/') if item.video_info.writers else [], item.video_info.directors.split('/') if item.video_info.directors else [], item.video_info.producers.split('/') if item.video_info.producers else [], item.video_info.guests.split('/') if item.video_info.guests else [], item.video_info.keywords.split('/') if item.video_info.keywords else [], item.thumbnail) oc.add(item_object) return oc except common.DVBLinkError, error: return MessageContainer(header=IDS_CAPTION_ERROR, message=helper.get_status_string_id(error))
def create_recorded_tv_list(self, title, object_id): try: oc = ObjectContainer( no_history = True, no_cache = True, title1 = IDS_RECORDED_TV_MENU_ITEM, title2 = title, art = R(helper.ART_RECORDED_TV)) object = self.get_object_(object_id) if object.containers and len(object.containers): for container in object.containers: container_object = self.create_recorded_tv_container_(container) oc.add(container_object) if object.items and len(object.items): for item in object.items: item_object = self.create_recorded_tv_item( item.url, item.object_id, item.recording_title, item.channel_name, helper.create_summary(item.video_info), float(helper.calculate_rating(item.video_info.stars_number, item.video_info.stars_max_number)), item.video_info.start_time, item.video_info.duration * 1000, item.video_info.year, item.video_info.writers.split('/') if item.video_info.writers else [], item.video_info.directors.split('/') if item.video_info.directors else [], item.video_info.producers.split('/') if item.video_info.producers else [], item.video_info.guests.split('/') if item.video_info.guests else [], item.video_info.keywords.split('/') if item.video_info.keywords else [], item.thumbnail ) oc.add(item_object) return oc except common.DVBLinkError, error: return MessageContainer( header=IDS_CAPTION_ERROR, message=helper.get_status_string_id(error))