]> git.mxchange.org Git - friendica.git/blob - addon/oembed/oembed.php
Add oembed user option for use oembed instead of standard yotube embedding.
[friendica.git] / addon / oembed / oembed.php
1 <?php
2 /**
3  * oembed plugin
4  * 
5  * oEmbed is a format for allowing an embedded representation of a URL on third party sites
6  * http://www.oembed.com/
7  * 
8  */
9
10 require_once('include/oembed.php');
11
12 function oembed_install() {
13         register_hook('jot_tool', 'addon/oembed/oembed.php', 'oembed_hook_jot_tool');
14         register_hook('page_header', 'addon/oembed/oembed.php', 'oembed_hook_page_header');
15         register_hook('plugin_settings', 'addon/oembed/oembed.php', 'oembed_settings'); 
16         register_hook('plugin_settings_post', 'addon/oembed/oembed.php', 'oembed_settings_post');
17 }
18
19 function oembed_uninstall() {
20         unregister_hook('jot_tool', 'addon/oembed/oembed.php', 'oembed_hook_jot_tool');
21         unregister_hook('page_header', 'addon/oembed/oembed.php', 'oembed_hook_page_header');
22 }
23
24 function oembed_settings_post(){
25     if(! local_user())
26                 return;
27         if (isset($_POST['oembed-submit'])){
28                 set_pconfig(local_user(), 'oembed', 'use_for_youtube', (isset($_POST['oembed_use_for_youtube'])?1:0));
29                 notice( t('OEmbed settings updated') . EOL);
30         }
31 }
32
33 function oembed_settings(&$a,&$o) {
34     if(! local_user())
35                 return;
36         $uofy = get_pconfig(local_user(), 'oembed', 'use_for_youtube' );
37         
38         $o .='<h3 class="settings-heading">OEmbed</h3>';
39         $o.='
40         <div id="settings-username-wrapper">
41                 <label for="oembed_use_for_youtube">'
42                         .t('Use OEmbed for YouTube videos: ') 
43                 .'</label><input type="checkbox" id="oembed_use_for_youtube" name="oembed_use_for_youtube"'
44                 . ($uofy==1?'checked="true"':'')
45                 .'>
46         </div>
47         <div id="settings-username-end"></div>
48         <div class="settings-submit-wrapper">
49                 <input type="submit" value="'.t('Submit').'" class="settings-submit" name="oembed-submit">
50         </div>';
51 }
52
53
54 function oembed_hook_page_header($a, &$b){
55         $a->page['htmlhead'] .= sprintf('<script src="%s/oembed/oembed.js"></script>', $a->get_baseurl());
56 }
57
58
59 function oembed_hook_jot_tool($a, &$b) {
60         $b .= '
61         <div class="tool-wrapper" style="display: $visitor;" >
62           <img class="tool-link" src="addon/oembed/oembed.png" alt="Embed" title="Embed" onclick="oembed();" />
63         </div> 
64         ';
65 }
66
67
68 function oembed_module() {
69         return;
70 }
71
72 function oembed_init(&$a) {
73         if ($a->argv[1]=='oembed.js'){
74                 $tpl = file_get_contents('addon/oembed/oembed.js');
75                 echo replace_macros($tpl, array(
76                         '$oembed_message' =>  t('URL to embed:'),
77                 ));
78         }
79         
80         if ($a->argv[1]=='b2h'){
81                 $url = array( "", trim(hex2bin($_GET['url'])));
82                 echo oembed_replacecb($url);
83         }
84         
85         if ($a->argv[1]=='h2b'){
86                 $text = trim(hex2bin($_GET['text']));
87                 echo oembed_html2bbcode($text);
88         }
89         
90         killme();
91         
92 }
93
94 ?>