diff --git a/js/plugins.js b/js/plugins.js
index 6717fe2..b028069 100644
--- a/js/plugins.js
+++ b/js/plugins.js
@@ -85,7 +85,7 @@ var UrlPlugin = function(name, urlCallback) {
*/
var contentForMessage = function(message) {
message.metadata = [];
- message.text = $sanitize(message.text);
+ // message.text = $sanitize(message.text);
var addPluginContent = function(content, pluginName, num) {
if (num) {
pluginName += " " + num;
@@ -187,7 +187,14 @@ plugins.factory('userPlugins', function() {
var addMatch = function(match) {
for (var i = 0; match && i < match.length; i++) {
var id = match[i].substr(match[i].length - 22, match[i].length);
- content.push('');
+ // content.push('');
+ var element = angular.element('')
+ .attr('src', '//embed.spotify.com/?uri=spotify:track:' + id)
+ .attr('width', '300')
+ .attr('height', '80')
+ .attr('frameborder', '0')
+ .attr('allowtransparency', 'true');
+ content.push(element.prop('outerHTML'));
}
};
addMatch(message.match(/spotify:track:([a-zA-Z-0-9]{22})/g));
@@ -206,8 +213,15 @@ plugins.factory('userPlugins', function() {
if (match){
var token = match[1],
- embedurl = "https://www.youtube.com/embed/" + token + "?html5=1&iv_load_policy=3&modestbranding=1&rel=0&showinfo=0";
- return '';
+ embedurl = "https://www.youtube.com/embed/" + token + "?html5=1&iv_load_policy=3&modestbranding=1&rel=0&showinfo=0",
+ element = angular.element('')
+ .attr('src', embedurl)
+ .attr('width', '560')
+ .attr('height', '315')
+ .attr('frameborder', '0')
+ .attr('allowfullscreen', 'true');
+ return element.prop('outerHTML');
+ // return '';
}
});
@@ -225,7 +239,13 @@ plugins.factory('userPlugins', function() {
if (match) {
var id = match[1];
var embedurl = 'https://www.dailymotion.com/embed/video/' + id + '?html&controls=html&startscreen=html&info=0&logo=0&related=0';
- return '';
+ var element = angular.element('')
+ .attr('src', embedurl)
+ .attr('width', '480')
+ .attr('height', '270')
+ .attr('frameborder', '0');
+ return element.prop('outerHTML');
+ // return '';
}
return null;
@@ -242,7 +262,13 @@ plugins.factory('userPlugins', function() {
if (match) {
var id = match[1];
var embedurl = 'http://www.allocine.fr/_video/iblogvision.aspx?cmedia=' + id;
- return '';
+ var element = angular.element('')
+ .attr('src', embedurl)
+ .attr('width', '480')
+ .attr('height', '270')
+ .attr('frameborder', '0');
+ return element.prop('outerHTML');
+ // return '';
}
return null;
@@ -264,8 +290,14 @@ plugins.factory('userPlugins', function() {
// TODO strip an existing dl=0 parameter
url = url + "?dl=1";
}
-
- return '
';
+ var element = angular.element('')
+ .attr('target', '_blank')
+ .attr('href', url)
+ .append(angular.element('
')
+ .addClass('embed')
+ .attr('src', url));
+ return element.prop('outerHTML');
+ // return '
';
}
});
@@ -274,7 +306,13 @@ plugins.factory('userPlugins', function() {
*/
var videoPlugin = new UrlPlugin('video', function(url) {
if (url.match(/\.(mp4|webm|ogv)\b/i)) {
- return '';
+ var element = angular.element('')
+ .addClass('embed')
+ .attr('width', '560')
+ .append(angular.element('')
+ .attr('src', url));
+ return element.prop('outerHTML');
+ // return '';
}
});
@@ -283,13 +321,27 @@ plugins.factory('userPlugins', function() {
*/
var cloudmusicPlugin = new UrlPlugin('cloud music', function(url) {
/* SoundCloud http://help.soundcloud.com/customer/portal/articles/247785-what-widgets-can-i-use-from-soundcloud- */
+ var element;
if (url.match(/^https?:\/\/soundcloud.com\//)) {
- return '';
+ element = angular.element('')
+ .attr('width', '100%')
+ .attr('height', '120')
+ .attr('scrolling', 'no')
+ .attr('frameborder', 'no')
+ .attr('src', 'https://w.soundcloud.com/player/?url=' + url + '&color=ff6600&auto_play=false&show_artwork=true');
+ return element.prop('outerHTML');
+ // return '';
}
/* MixCloud */
if (url.match(/^https?:\/\/([a-z]+\.)?mixcloud.com\//)) {
- return '';
+ element = angular.element('')
+ .attr('width', '480')
+ .attr('height', '60')
+ .attr('frameborder', '0')
+ .attr('src', '//www.mixcloud.com/widget/iframe/?feed=' + url + '&mini=1&stylecolor=&hide_artwork=&embed_type=widget_standard&hide_tracklist=1&hide_cover=');
+ return element.prop('outerHTML');
+ // return '';
}
});
@@ -298,7 +350,15 @@ plugins.factory('userPlugins', function() {
*/
var googlemapPlugin = new UrlPlugin('Google Map', function(url) {
if (url.match(/^https?:\/\/maps\.google\./i) || url.match(/^https?:\/\/(?:[\w]+\.)?google\.[\w]+\/maps/i)) {
- return '';
+ var element = angular.element('')
+ .attr('width', '450')
+ .attr('height', '350')
+ .attr('frameborder', '0')
+ .attr('scrolling', 'no')
+ .attr('marginheight', '0')
+ .attr('src', url + '&output=embed');
+ return element.prop('outerHTML');
+ // return '';
}
});
@@ -329,7 +389,11 @@ plugins.factory('userPlugins', function() {
var location = match[2];
var city = match[match.length - 1].slice(0, -1);
url = "http://www.yr.no/" + language + "/" + location + "avansert_meteogram.png";
- return "
";
+ var element = angular.element('
')
+ .attr('src', url)
+ .attr('alt', 'Meteogram for ' + city);
+ return element.prop('outerHTML');
+ // return "
";
}
});
@@ -365,7 +429,14 @@ plugins.factory('userPlugins', function() {
var id = url.match(regex);
if (id) {
var src = "https://media.giphy.com/media/" + id[1] + "/giphy.gif";
- return '
';
+ var element = angular.element('')
+ .attr('target', '_blank')
+ .attr('href', url)
+ .append(angular.element('
')
+ .addClass('embed')
+ .attr('src', src));
+ return element.prop('outerHTML');
+ // return '
';
}
});
@@ -402,7 +473,14 @@ plugins.factory('userPlugins', function() {
match = url.match(regexp);
if (match) {
var id = match[2], embedurl = "https://vine.co/v/" + id + "/embed/simple?audio=1";
- return '';
+ var element = angular.element('')
+ .addClass('vine-embed')
+ .attr('src', embedurl)
+ .attr('width', '600')
+ .attr('height', '600')
+ .attr('frameborder', '0');
+ return element.prop('outerHTML') + '';
+ // return ';
}
});