X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=addon%2Foembed%2Foembed.php;h=a0a0239aaf992fc8b04a763bf0b841704356e6f6;hb=1d2cc5c5ad47e969ca4b6dd0f0eee4a4e5ab5663;hp=82183f3cce8c87da81a2d8da16411ae18321da02;hpb=444d82a5328433fbe48e18b928d35218905a756c;p=friendica.git diff --git a/addon/oembed/oembed.php b/addon/oembed/oembed.php index 82183f3cce..a0a0239aaf 100644 --- a/addon/oembed/oembed.php +++ b/addon/oembed/oembed.php @@ -6,96 +6,91 @@ * http://www.oembed.com/ * */ - + +require_once('include/oembed.php'); + function oembed_install() { - register_hook('jot_tool', 'addon/oembed/oembed.php', 'oembed_hook_jot_tool'); - register_hook('page_header', 'addon/oembed/oembed.php', 'oembed_hook_page_header'); - register_hook('bbcode', 'addon/oembed/oembed.php', 'oembed_hook_bbcode'); + register_hook('jot_tool', 'addon/oembed/oembed.php', 'oembed_hook_jot_tool'); + register_hook('page_header', 'addon/oembed/oembed.php', 'oembed_hook_page_header'); + register_hook('plugin_settings', 'addon/oembed/oembed.php', 'oembed_settings'); + register_hook('plugin_settings_post', 'addon/oembed/oembed.php', 'oembed_settings_post'); } function oembed_uninstall() { - unregister_hook('jot_tool', 'addon/oembed/oembed.php', 'oembed_hook_jot_tool'); - unregister_hook('page_header', 'addon/oembed/oembed.php', 'oembed_hook_page_header'); - unregister_hook('bbcode', 'addon/oembed/oembed.php', 'oembed_hook_bbcode'); + unregister_hook('jot_tool', 'addon/oembed/oembed.php', 'oembed_hook_jot_tool'); + unregister_hook('page_header', 'addon/oembed/oembed.php', 'oembed_hook_page_header'); +} + +function oembed_settings_post(){ + if(! local_user()) + return; + if (isset($_POST['oembed-submit'])){ + set_pconfig(local_user(), 'oembed', 'use_for_youtube', (isset($_POST['oembed_use_for_youtube'])?1:0)); + notice( t('OEmbed settings updated') . EOL); + } +} + +function oembed_settings(&$a,&$o) { + if(! local_user()) + return; + $uofy = get_pconfig(local_user(), 'oembed', 'use_for_youtube' ); + + $o.=' +
+

OEmbed

+
+ +
+
+
+ +
+
'; } + function oembed_hook_page_header($a, &$b){ - $b .= ' - '; - - $b .= ' -
  - - -

Paste a link from 5min.com, Amazon Product Image, blip.tv, Clikthrough, CollegeHumor Video, - Daily Show with Jon Stewart, Dailymotion, dotSUB.com, Flickr Photos, Funny or Die Video, - Google Video, Hulu, Kinomap, LiveJournal UserPic, Metacafe, National Film Board of Canada, - Phodroid Photos, Photobucket, Qik Video, Revision3, Scribd, SlideShare, TwitPic, Twitter Status, - Viddler Video, Vimeo, Wikipedia, Wordpress.com, XKCD Comic, YFrog, YouTube

-
- '; + $a->page['htmlhead'] .= sprintf('', $a->get_baseurl()); } function oembed_hook_jot_tool($a, &$b) { - $b .= ' -
- Embed -
- '; + $b .= ' +
+ Embed +
+ '; } -function oembed_replacecb($matches){ - $embedurl=$matches[1]; - $ourl = "http://oohembed.com/oohembed/?url=".urlencode($embedurl); - $txt = fetch_url($ourl); - $j = json_decode($txt); - $ret=""; - switch ($j->type) { - case "video": { - if (isset($j->thumbnail_url)) { - $tw = (isset($j->thumbnail_width)) ? $j->thumbnail_width:200; - $th = (isset($j->thumbnail_height)) ? $j->thumbnail_height:180; - $ret = ""; - $ret.= ""; - $ret.= ""; - } else { - $ret=$j->html; - } - $ret.="
"; - }; break; - case "photo": { - $ret = ""; - $ret.="
"; - }; break; - case "link": { - //$ret = "".$j->title.""; - }; break; - case "rich": { - // not so safe.. - $ret = "
".$j->html."
"; - }; break; - } - - $embedlink = (isset($j->title))?$j->title:$embedurl; - $ret .= "$embedlink"; - if (isset($j->author_name)) $ret.=" by ".$j->author_name; - if (isset($j->provider_name)) $ret.=" on ".$j->provider_name; - $ret.=""; - return $ret; -} -function oembed_hook_bbcode($a, &$text){ - $text = preg_replace_callback("/\[embed\](.+?)\[\/embed\]/is", oembed_replacecb ,$text); +function oembed_module() { + return; } +function oembed_init(&$a) { + if ($a->argv[1]=='oembed.js'){ + $tpl = file_get_contents('addon/oembed/oembed.js'); + echo replace_macros($tpl, array( + '$oembed_message' => t('URL to embed:'), + )); + } + + if ($a->argv[1]=='b2h'){ + $url = array( "", trim(hex2bin($_GET['url']))); + echo oembed_replacecb($url); + } + + if ($a->argv[1]=='h2b'){ + $text = trim(hex2bin($_GET['text'])); + echo oembed_html2bbcode($text); + } + + killme(); + +} -?> \ No newline at end of file +?>