Exemple #1
0
 def thing_attr(self, thing, attr):
     from r2.lib.scraper import get_media_embed
     if attr == "media_embed":
        if (thing.media_object and
            not isinstance(thing.media_object, basestring)):
            media_embed = get_media_embed(thing.media_object)
            if media_embed:
                return dict(scrolling = media_embed.scrolling,
                            width = media_embed.width,
                            height = media_embed.height,
                            content = media_embed.content)
        return dict()
     elif attr == "editted" and not isinstance(thing.editted, bool):
         return (time.mktime(thing.editted.astimezone(pytz.UTC).timetuple())
                 - time.timezone)
     elif attr == 'subreddit':
         return thing.subreddit.name
     elif attr == 'subreddit_id':
         return thing.subreddit._fullname
     elif attr == 'selftext':
         if not thing.expunged:
             return thing.selftext
         else:
             return ''
     elif attr == 'selftext_html':
         if not thing.expunged:
             return safemarkdown(thing.selftext)
         else:
             return safemarkdown(_("[removed]"))
     return ThingJsonTemplate.thing_attr(self, thing, attr)
Exemple #2
0
 def thing_attr(self, thing, attr):
     from r2.lib.scraper import get_media_embed
     if attr == "media_embed":
        if (thing.media_object and
            not isinstance(thing.media_object, basestring)):
            media_embed = get_media_embed(thing.media_object)
            if media_embed:
                return dict(scrolling = media_embed.scrolling,
                            width = media_embed.width,
                            height = media_embed.height,
                            content = media_embed.content)
        return dict()
     elif attr == "editted" and not isinstance(thing.editted, bool):
         return (time.mktime(thing.editted.astimezone(pytz.UTC).timetuple())
                 - time.timezone)
     elif attr == 'subreddit':
         return thing.subreddit.name
     elif attr == 'subreddit_id':
         return thing.subreddit._fullname
     elif attr == 'selftext':
         if not thing.expunged:
             return thing.selftext
         else:
             return ''
     elif attr == 'selftext_html':
         if not thing.expunged:
             return safemarkdown(thing.selftext)
         else:
             return safemarkdown(_("[removed]"))
     return ThingJsonTemplate.thing_attr(self, thing, attr)
Exemple #3
0
    def GET_mediaembed(self, link):
        if request.host != g.media_domain:
            # don't serve up untrusted content except on our
            # specifically untrusted domain
            abort(404)

        if not link or not link.media_object:
            abort(404)

        if isinstance(link.media_object, basestring):
            # it's an old-style string
            content = link.media_object

        elif isinstance(link.media_object, dict):
            # otherwise it's the new style, which is a dict(type=type, **args)
            media_embed = get_media_embed(link.media_object)
            content = media_embed.content

        return MediaEmbedBody(body = content).render()
Exemple #4
0
    def GET_mediaembed(self, link):
        if request.host != g.media_domain:
            # don't serve up untrusted content except on our
            # specifically untrusted domain
            abort(404)

        if not link or not link.media_object:
            abort(404)

        if isinstance(link.media_object, basestring):
            # it's an old-style string
            content = link.media_object

        elif isinstance(link.media_object, dict):
            # otherwise it's the new style, which is a dict(type=type, **args)
            media_embed = get_media_embed(link.media_object)
            content = media_embed.content

        return MediaEmbedBody(body=content).render()
 def thing_attr(self, thing, attr):
     from r2.lib.scraper import get_media_embed
     if attr == "media_embed":
        if (thing.media_object and
            not isinstance(thing.media_object, basestring)):
            media_embed = get_media_embed(thing.media_object)
            if media_embed:
                return dict(scrolling = media_embed.scrolling,
                            width = media_embed.width,
                            height = media_embed.height,
                            content = media_embed.content)
        return dict()
     elif attr == 'subreddit':
         return thing.subreddit.name
     elif attr == 'subreddit_id':
         return thing.subreddit._fullname
     elif attr == 'selftext':
         return thing.selftext
     elif attr == 'selftext_html':
         return safemarkdown(thing.selftext)
     return ThingJsonTemplate.thing_attr(self, thing, attr)
Exemple #6
0
 def thing_attr(self, thing, attr):
     from r2.lib.scraper import get_media_embed
     if attr == "media_embed":
        if (thing.media_object and
            not isinstance(thing.media_object, basestring)):
            media_embed = get_media_embed(thing.media_object)
            if media_embed:
                return dict(scrolling = media_embed.scrolling,
                            width = media_embed.width,
                            height = media_embed.height,
                            content = media_embed.content)
        return dict()
     elif attr == 'subreddit':
         return thing.subreddit.name
     elif attr == 'subreddit_id':
         return thing.subreddit._fullname
     elif attr == 'selftext':
         return thing.selftext
     elif attr == 'selftext_html':
         return safemarkdown(thing.selftext)
     return ThingJsonTemplate.thing_attr(self, thing, attr)