(self)
Will take all the slides of the channel for which the index is higher
        than the index of this category and lower than the index of the next category.

        Lists are manually sorted because when adding a new browse record order
        will not be correct as the added slide would actually end up at the
        first place no matter its sequence.
Will take all the slides of the channel for which the index is higher
        than the index of this category and lower than the index of the next category.
Will take all the slides of the channel for which the index is higher than the index of this category and lower than the index of the next category .
def _compute_category_id(self):
        """ Will take all the slides of the channel for which the index is higher
        than the index of this category and lower than the index of the next category.

        Lists are manually sorted because when adding a new browse record order
        will not be correct as the added slide would actually end up at the
        first place no matter its sequence."""
        self.category_id = False  # initialize whatever the state

        channel_slides = {}
        for slide in self:
            if slide.channel_id.id not in channel_slides:
                channel_slides[slide.channel_id.id] = slide.channel_id.slide_ids

        for cid, slides in channel_slides.items():
            current_category = self.env['slide.slide']
            slide_list = list(slides)
            slide_list.sort(key=lambda s: (s.sequence, not s.is_category))
            for slide in slide_list:
                if slide.is_category:
                    current_category = slide
                elif slide.category_id != current_category:
                    slide.category_id = current_category.id
def _compute_category_id ( self ) : self . category_id = False # initialize whatever the state channel_slides = { } for slide in self : if slide . channel_id . id not in channel_slides : channel_slides [ slide . channel_id . id ] = slide . channel_id . slide_ids for cid , slides in channel_slides . items ( ) : current_category = self . env [ 'slide.slide' ] slide_list = list ( slides ) slide_list . sort ( key = lambda s : ( s . sequence , not s . is_category ) ) for slide in slide_list : if slide . is_category : current_category = slide elif slide . category_id != current_category : slide . category_id = current_category . id