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 = ""; // tiny mce bbcode plugin not support image size...... ret += ""; } else { ret = data.html; } }; break; case "photo": { // tiny mce bbcode plugin not support image size...... ret = ""; }; break; case "link": { ret = ""+data.title+""; }; 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+="
"+embedlink+""; if (data.author_name) { ret+=" by "+data.author_name; } if (data.provider_name) { ret+=" on "+data.provider_name; } tinyMCE.execCommand('mceInsertRawHTML',false,ret); oembed(); }); }