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)
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 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)