Ejemplo n.º 1
0
    def update_feed_details(self, data: Dict, feed: Feed) -> None:
        """
        Updates the title and description of a feed if they have been sent
        with the notification.

        :param data: deserialized JSON
        :type data: Dict
        :param feed: The Feed to be updated
        :type feed: Feed
        :return: Feed object
        """
        feed.title = data.get("title")

        if data.get("description"):
            feed.description = data["description"]

        if data.get("home_page_url"):
            feed.site_url = data["home_page_url"]

        if data.get("favicon"):
            feed.site_icon_url = data["favicon"]

        if data.get("feed_url"):
            feed.update_feed_topic(data["feed_url"])

        if data.get("expired") and bool(data.get("expired")) == True:
            feed.set_expired()

        if data.get("hubs"):
            feed.handle_websub(data["hubs"])