mirror of
https://github.com/reddit-archive/reddit.git
synced 2026-01-27 15:58:06 -05:00
Only display secure media objects when on HTTPS.
Not all links that have media objects will have secure media objects, so a subset of content will have embeds when accessing the site over HTTPS.
This commit is contained in:
@@ -20,7 +20,7 @@
|
||||
# Inc. All Rights Reserved.
|
||||
###############################################################################
|
||||
|
||||
from pylons import request, g
|
||||
from pylons import request, g, c
|
||||
from pylons.controllers.util import abort
|
||||
|
||||
from r2.controllers.reddit_base import MinimalController
|
||||
@@ -37,11 +37,16 @@ class MediaembedController(MinimalController):
|
||||
# specifically untrusted domain
|
||||
abort(404)
|
||||
|
||||
if not link or not link.media_object:
|
||||
if not c.secure:
|
||||
media_object = link.media_object
|
||||
else:
|
||||
media_object = link.secure_media_object
|
||||
|
||||
if not media_object:
|
||||
abort(404)
|
||||
elif isinstance(link.media_object, dict):
|
||||
elif isinstance(media_object, dict):
|
||||
# otherwise it's the new style, which is a dict(type=type, **args)
|
||||
media_embed = get_media_embed(link.media_object)
|
||||
media_embed = get_media_embed(media_object)
|
||||
content = media_embed.content
|
||||
|
||||
return MediaEmbedBody(body = content).render()
|
||||
|
||||
@@ -3509,13 +3509,18 @@ def make_link_child(item):
|
||||
editable = False
|
||||
|
||||
# if the item has a media_object, try to make a MediaEmbed for rendering
|
||||
if item.media_object:
|
||||
if not c.secure:
|
||||
media_object = item.media_object
|
||||
else:
|
||||
media_object = item.secure_media_object
|
||||
|
||||
if media_object:
|
||||
media_embed = None
|
||||
if isinstance(item.media_object, basestring):
|
||||
media_embed = item.media_object
|
||||
if isinstance(media_object, basestring):
|
||||
media_embed = media_object
|
||||
else:
|
||||
try:
|
||||
media_embed = media.get_media_embed(item.media_object)
|
||||
media_embed = media.get_media_embed(media_object)
|
||||
except TypeError:
|
||||
g.log.warning("link %s has a bad media object" % item)
|
||||
media_embed = None
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<%!
|
||||
from r2.lib.utils import randstr
|
||||
%>
|
||||
<iframe src="http://${thing.media_domain}/mediaembed/${thing.id36}"
|
||||
<iframe src="//${thing.media_domain}/mediaembed/${thing.id36}"
|
||||
id="media-embed-${thing.id36}-${randstr(3)}" class="media-embed"
|
||||
width="${thing.width}" height="${thing.height}" border="0"
|
||||
frameBorder="0" scrolling="${'auto' if thing.scrolling else 'no'}"
|
||||
|
||||
Reference in New Issue
Block a user