Merge pull request #652 from arnottcr/master
simplify giphy regex matching and use original url for image link
This commit is contained in:
commit
94f5445742
1 changed files with 6 additions and 11 deletions
|
@ -358,17 +358,12 @@ plugins.factory('userPlugins', function() {
|
||||||
* sample output: https://media.giphy.com/media/feqkVgjJpYtjy/giphy.gif
|
* sample output: https://media.giphy.com/media/feqkVgjJpYtjy/giphy.gif
|
||||||
*/
|
*/
|
||||||
var giphyPlugin = new UrlPlugin('Giphy', function(url) {
|
var giphyPlugin = new UrlPlugin('Giphy', function(url) {
|
||||||
var regex = /^https?:\/\/giphy.com\/gifs\/.*-.*\/?/i;
|
var regex = /^https?:\/\/giphy.com\/gifs\/.*-(.*)\/?/i;
|
||||||
if (url.match(regex)) {
|
// on match, id will contain the entire url in [0] and the giphy id in [1]
|
||||||
/* if the url does not contain a trailing slash, add it */
|
var id = url.match(regex);
|
||||||
if (! url.match(/\/$/i)) { url = url + "/"; }
|
if (id) {
|
||||||
/* upgrade any http links to tls, yeah crypto */
|
var src = "https://media.giphy.com/media/" + id[1] + "/giphy.gif";
|
||||||
if (url.match(/^http:/i)) { url.replace(/http:/, "https:"); }
|
return '<a target="_blank" href="'+url+'"><img class="embed" src="' + src + '"></a>';
|
||||||
/* change the url to refrence the giphy cdn url, not the userfacing webserver */
|
|
||||||
url = url.replace(/\/giphy.com\//i,"/media.giphy.com/");
|
|
||||||
url = url.replace(/\/gifs\/.*-/i,"/media/");
|
|
||||||
url = url + "giphy.gif";
|
|
||||||
return '<a target="_blank" href="'+url+'"><img class="embed" src="' + url + '"></a>';
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue