mirror of
https://github.com/friendica/friendica
synced 2025-04-26 08:30:10 +00:00
oembed consumer plugin
This commit is contained in:
parent
af8ab8cb53
commit
62fda0a120
3 changed files with 107 additions and 0 deletions
51
addon/oembed/oembed.js
Normal file
51
addon/oembed/oembed.js
Normal file
|
@ -0,0 +1,51 @@
|
|||
function oembed(){
|
||||
$("#oembed").toggleClass('hide');
|
||||
}
|
||||
|
||||
function oembed_do(){
|
||||
embedurl = $('#oembed_url').attr('value');
|
||||
var url = 'http://oohembed.com/oohembed/?url='+escape( embedurl )+"&callback=?";
|
||||
|
||||
$.getJSON(url, function(data) {
|
||||
var ret="";
|
||||
switch(data.type){
|
||||
case "video": {
|
||||
if (data.thumbnail_url){
|
||||
tw = 200; if (data.thumbnail_width) tw=data.thumbnail_width;
|
||||
th = 180; if (data.thumbnail_height) tw=data.thumbnail_height;
|
||||
ret = "<a href='"+embedurl+"'>";
|
||||
// tiny mce bbcode plugin not support image size......
|
||||
ret += "<img width='"+tw+"' height='"+th+"' src='"+data.thumbnail_url+"'></a>";
|
||||
} else {
|
||||
ret = data.html;
|
||||
}
|
||||
}; break;
|
||||
case "photo": {
|
||||
// tiny mce bbcode plugin not support image size......
|
||||
ret = "<img width='"+data.width+"' height='"+data.height+"' src='"+data.url+"'>";
|
||||
}; break;
|
||||
case "link": {
|
||||
ret = "<a href='"+embedurl+"'>"+data.title+"</a>";
|
||||
}; break;
|
||||
case "rich": {
|
||||
ret = data.html; // not so safe... http://www.oembed.com/ : "Consumers may wish to load the HTML in an off-domain iframe to avoid XSS"
|
||||
}; break;
|
||||
default: {
|
||||
alert("Error retriving data!");
|
||||
return;
|
||||
}
|
||||
}
|
||||
var embedlink = embedurl;
|
||||
if (data.title) embedlink = data.title
|
||||
ret+="<br><a href='"+embedurl+"'>"+embedlink+"</a>";
|
||||
if (data.author_name) {
|
||||
ret+=" by "+data.author_name;
|
||||
}
|
||||
if (data.provider_name) {
|
||||
ret+=" on "+data.provider_name;
|
||||
}
|
||||
tinyMCE.execCommand('mceInsertRawHTML',false,ret);
|
||||
oembed();
|
||||
});
|
||||
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue