Beispiel #1
0
    def __str__(self):
        """Generates the response string."""
        self.load()
        result = ["\n\n"]
        result.append(
            reddit_markdown.link(
                reddit_markdown.bold(
                    reddit_markdown.italics(
                        reddit_markdown.escape(self.get_title()))),
                reddit_markdown.escape(self.get_url())) + " by " +
            reddit_markdown.link(
                reddit_markdown.italics(
                    reddit_markdown.escape(self.get_author())),
                reddit_markdown.escape(self.get_author_link())))
        result.append("\n\n")
        # result.append("\n\n[***%s***](%s) by [*%s*](%s)" %
        #     self.get_title(), self.get_url(),
        #     self.get_author(), self.get_author_link()
        # ))

        result.append("\n\n")
        result.extend(
            reddit_markdown.quote(
                reddit_markdown.escape(self.get_summary())).split("\n"))
        result.append("")
        result.append(reddit_markdown.exponentiate(self.format_stats()))
        # result.append("[" + str(id(self)) + "]: " + self._lnk)
        for name, link in self._lnk:
            result.append("[%s:%s]: %s"%(str(id(self)), name, link))

        result.append("\n\n" + reddit_markdown.linebreak + "\n\n")

        return "\n".join(result)
Beispiel #2
0
    def __str__(self):
        """Generates the response string."""
        try:
            self.load()
        except Exception as e:
            logging.error("(STORY) Could not load story!")
            logging.error(e)
            return ("")
        result = ["\n\n"]
        result.append(
            reddit_markdown.link(
                reddit_markdown.bold(
                    reddit_markdown.italics(
                        reddit_markdown.escape(self.get_title()))),
                reddit_markdown.encode_url(self.get_url())) + " by " +
            reddit_markdown.link(
                reddit_markdown.italics(
                    reddit_markdown.escape(self.get_author())),
                reddit_markdown.encode_url(self.get_author_link())))
        result.append("\n\n")
        result.extend(
            reddit_markdown.quote(
                reddit_markdown.escape(self.get_summary())).split("\n"))
        result.append("")
        result.append(reddit_markdown.superscript(self.format_stats()))
        result.append("\n\n" + reddit_markdown.linebreak + "\n\n")

        return "\n".join(result)
Beispiel #3
0
    def format_stats(self):
        stats = OrderedDict()
        site = self.get_site()
        if site is not None:
            _site = iter(site)
            stats["Site"] = next(_site)

        for k, v in self.get_stats().items():
            stats[self.super_escape(k)] = self.super_escape(v)

        res = []
        for key, value in stats.items():
            res.append(reddit_markdown.italics(key) + ": " + value)

        download = self.get_download()
        if download is not None:
            epub = download[0]
            mobi = download[1]
            res.append(
                "*Download*: [EPUB]({0}) or [MOBI]({1})".format(epub, mobi))
        return (" " + reddit_markdown.bold("|") + " ").join(res)
Beispiel #4
0
    def format_stats(self):
        stats = OrderedDict()
        site = self.get_site()
        self._lnk = []
        if site is not None:
            _site = iter(site)
            site = "[" + next(_site) + "][" + str(id(self)) + ":site]"
            self._lnk.append(("site", next(_site)))
            stats["Site"] = site

        for k, v in self.get_stats().items():
            stats[k] = v

        res = []
        for key, value in stats.items():
            res.append(reddit_markdown.italics(key) + ": " + value)

        download = self.get_download()
        if download is not None:
            res.append("*Download*: [EPUB][%s:epub]"%(str(id(self))))
            self._lnk.append(("epub", download))
        return (" " + reddit_markdown.bold("|") + " ").join(res)