From dff91343743679bd38111cc95886b2ec1f8bb586 Mon Sep 17 00:00:00 2001 From: Nathan Jones Date: Fri, 25 Apr 2014 21:47:10 -0500 Subject: [PATCH 1/2] Added expando for Clyp uploads (http://clyp.it) --- lib/modules/showImages.js | 48 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/lib/modules/showImages.js b/lib/modules/showImages.js index 31402ced73..5eb0e424e7 100644 --- a/lib/modules/showImages.js +++ b/lib/modules/showImages.js @@ -3009,6 +3009,54 @@ modules['showImages'] = { return $.Deferred().resolve(elem).promise(); } }, + clyp: { + options: { + 'display clyp': { + description: 'Display expander for clyp', + value: true, + type: 'boolean' + } + }, + go: function() {}, + detect: function(href, elem) { + return href.indexOf('clyp.it') !== -1; + }, + handleLink: function(elem) { + var def = $.Deferred(); + var hashRe = /^http:\/\/clyp\.it\/(playlist\/)?([A-Za-z0-9]+)\/?/i; + var groups = hashRe.exec(elem.href); + + if (groups) { + var urlBase = groups[1] ? 'http://clyp.it/playlist/' : 'http://clyp.it/'; + def.resolve(elem, urlBase + groups[2] + '/widget'); + } else { + def.reject(); + } + + return def.promise(); + }, + handleInfo: function(elem, info) { + var generate = function(options) { + var element = document.createElement('iframe'); + element.src = info; + element.height = '160px'; + element.width = '100%'; + + modules['showImages'].makeImageZoomable(element); + + return element; + }; + + elem.type = 'GENERIC_EXPANDO'; + elem.expandoClass = ' video collapsed'; + elem.expandoOptions = { + generate: generate, + media: info + }; + + return $.Deferred().resolve(elem).promise(); + } + }, memedad: { options: { 'display memedad': { From ab306a63fb7538e7d0496ec0840232e5683995a0 Mon Sep 17 00:00:00 2001 From: Nathan Jones Date: Sun, 4 May 2014 21:29:32 -0500 Subject: [PATCH 2/2] Adding check for title link to prevent duplicates Support for Clyp links was just added by Embed.ly. They are being processed by Reddit natively, which caused double expando buttons to appear. --- lib/modules/showImages.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/modules/showImages.js b/lib/modules/showImages.js index 5eb0e424e7..b5cf2af765 100644 --- a/lib/modules/showImages.js +++ b/lib/modules/showImages.js @@ -3019,7 +3019,10 @@ modules['showImages'] = { }, go: function() {}, detect: function(href, elem) { - return href.indexOf('clyp.it') !== -1; + if (href.indexOf('clyp.it') !== -1) { + if (elem.className.indexOf("title") === -1) return true; + } + return false; }, handleLink: function(elem) { var def = $.Deferred();