Exemple #1
0
    def _update(self, info=None):
        if not info:
            return

        if 'created_at' in info:
            self.created_at = from_iso8601(info.get('created_at'))

        if 'liked_at' in info:
            self.liked_at = from_iso8601(info.get('liked_at'))

        update_attributes(self, info, [
            'parent_id', 'comment', 'spoiler', 'review', 'replies', 'likes',
            'user', 'user_rating'
        ])
Exemple #2
0
    def _update(self, info=None):
        if not info:
            return

        if 'liked_at' in info:
            self.liked_at = from_iso8601(info.get('liked_at'))

        if 'updated_at' in info:
            self.updated_at = from_iso8601(info.get('updated_at'))

        update_attributes(self, info, [
            'name', 'description', 'likes', 'allow_comments',
            'display_numbers', 'comment_count', 'item_count'
        ])
Exemple #3
0
    def _construct(cls, client, info):
        if not info or 'rating' not in info:
            return

        r = cls(client)
        r.value = info.get('rating')
        r.timestamp = from_iso8601(info.get('rated_at'))
        return r
Exemple #4
0
    def create(cls, info):
        if not info or 'rating' not in info:
            return

        r = cls()
        r.value = info.get('rating')
        r.timestamp = from_iso8601(info.get('rated_at'))
        return r
    def create(cls, info):
        if not info or 'rating' not in info:
            return

        r = cls()
        r.value = info.get('rating')
        r.timestamp = from_iso8601(info.get('rated_at'))
        return r
    def update(self, info=None, is_watched=None, is_collected=None):
        super(Video, self).update(info)

        update_attributes(self, info, ['plays', 'progress'])

        if 'collected_at' in info:
            self.collected_at = from_iso8601(info.get('collected_at'))

        if 'paused_at' in info:
            self.paused_at = from_iso8601(info.get('paused_at'))

        # Set flags
        if is_watched is not None:
            self.is_watched = is_watched

        if is_collected is not None:
            self.is_collected = is_collected
Exemple #7
0
    def _update(self, info=None, is_watched=None, is_collected=None, **kwargs):
        super(Video, self)._update(info, **kwargs)

        update_attributes(self, info, ['plays', 'progress'])

        # Set timestamps
        if 'last_watched_at' in info:
            self.last_watched_at = from_iso8601(info.get('last_watched_at'))

        if 'collected_at' in info:
            self.collected_at = from_iso8601(info.get('collected_at'))

        if 'paused_at' in info:
            self.paused_at = from_iso8601(info.get('paused_at'))

        # Set flags
        if is_watched is not None:
            self.is_watched = is_watched

        if is_collected is not None:
            self.is_collected = is_collected
Exemple #8
0
    def _update(self, info=None):
        if not info:
            return

        if 'liked_at' in info:
            self.liked_at = from_iso8601(info.get('liked_at'))

        if 'updated_at' in info:
            self.updated_at = from_iso8601(info.get('updated_at'))

        update_attributes(self, info, [
            'name',
            'description',
            'likes',

            'allow_comments',
            'display_numbers',

            'comment_count',
            'item_count'
        ])
    def update(self, info=None, is_watched=None, is_collected=None):
        super(Video, self).update(info)

        update_attributes(self, info, [
            'plays',
            'progress'
        ])

        if 'last_watched_at' in info:
            self.last_watched_at = from_iso8601(info.get('last_watched_at'))

        if 'collected_at' in info:
            self.collected_at = from_iso8601(info.get('collected_at'))

        if 'paused_at' in info:
            self.paused_at = from_iso8601(info.get('paused_at'))

        # Set flags
        if is_watched is not None:
            self.is_watched = is_watched

        if is_collected is not None:
            self.is_collected = is_collected
Exemple #10
0
    def _update(self, info=None):
        if not info:
            return

        if 'created_at' in info:
            self.created_at = from_iso8601(info.get('created_at'))

        if 'liked_at' in info:
            self.liked_at = from_iso8601(info.get('liked_at'))

        update_attributes(self, info, [
            'parent_id',

            'comment',

            'spoiler',
            'review',

            'replies',
            'likes',

            'user',
            'user_rating'
        ])
Exemple #11
0
    def _update(self, info=None, in_watchlist=None, **kwargs):
        if not info:
            return

        update_attributes(self, info, ['overview', 'images', 'score'])

        # Set timestamps
        if 'listed_at' in info:
            self.listed_at = from_iso8601(info.get('listed_at'))

        # Set flags
        if in_watchlist is not None:
            self.in_watchlist = in_watchlist

        self.rating = Rating._construct(self._client, info) or self.rating
Exemple #12
0
    def _update(self, info=None, in_watchlist=None, **kwargs):
        if not info:
            return

        update_attributes(self, info, [
            'overview',
            'images',
            'score'
        ])

        # Set timestamps
        if 'listed_at' in info:
            self.listed_at = from_iso8601(info.get('listed_at'))

        # Set flags
        if in_watchlist is not None:
            self.in_watchlist = in_watchlist

        self.rating = Rating._construct(self._client, info) or self.rating
Exemple #13
0
    def _get_timestamp(activities, data, media):
        method = enums.Media.get(media)

        if media in [enums.Media.Movies, enums.Media.Seasons, enums.Media.Episodes]:
            timestamps = activities[method]
        elif media == enums.Media.Shows:
            if data in [enums.Data.Collection, enums.Data.Playback, enums.Data.Watched, enums.Data.Watchlist]:
                # Map shows (collection, playback, watched, watchlist) -> episodes
                timestamps = activities['episodes']
            else:
                timestamps = activities[method]
        else:
            # unknown data/media combination
            raise ValueError()

        # Retrieve timestamp
        value = timestamps.get(
            enums.Data.get_timestamp_key(data)
        )

        # Parse timestamp
        return from_iso8601(value)