source: extensions/FacebookPlug/Plugin/picture.inc.php @ 8215

Last change on this file since 8215 was 8215, checked in by rub, 14 years ago

Test with xfbml social plugin

  • Property svn:eol-style set to LF
File size: 3.8 KB
Line 
1<?php
2// +-----------------------------------------------------------------------+
3// | FacebookPlug - a Piwigo Plugin                                        |
4// | Copyright (C) 2010 Ruben ARNAUD - rub@piwigo.org                      |
5// +-----------------------------------------------------------------------+
6// | This program is free software; you can redistribute it and/or modify  |
7// | it under the terms of the GNU General Public License as published by  |
8// | the Free Software Foundation                                          |
9// |                                                                       |
10// | This program is distributed in the hope that it will be useful, but   |
11// | WITHOUT ANY WARRANTY; without even the implied warranty of            |
12// | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU      |
13// | General Public License for more details.                              |
14// |                                                                       |
15// | You should have received a copy of the GNU General Public License     |
16// | along with this program; if not, write to the Free Software           |
17// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
18// | USA.                                                                  |
19// +-----------------------------------------------------------------------+
20
21if (!defined('PHPWG_ROOT_PATH'))
22{
23  die('Hacking attempt!');
24}
25
26function fbp_AddSocial($content, &$smarty)
27{
28  // iframe implementation
29/*  $fbp_content = '
30<iframe src="http://www.facebook.com/plugins/like.php?href={$SRC_IMG}&amp;layout=standard&amp;show_faces=true&amp;width={$WIDTH_IMG}&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:{$WIDTH_IMG}px; height:80px;" allowTransparency="true"></iframe>
31';*/
32
33  // XFBML implementation
34  // async method
35/*  $fbp_content = '
36<div id="fb-root"></div> 
37<script>
38{literal}
39  window.fbAsyncInit = function() {
40    FB.init({
41      appId  : \'111499825588662\',
42      status : true, // check login status
43      cookie : true, // enable cookies to allow the server to access the session
44      xfbml  : true  // parse XFBML
45    });
46  };
47  (function() {
48    var e = document.createElement(\'script\');
49  {/literal}
50    e.src = document.location.protocol + \'//connect.facebook.net/{$language}/all.js\';
51{literal}
52    e.async = true;
53    document.getElementById(\'fb-root\').appendChild(e);
54  }());
55{/literal}
56</script>
57';*/
58  // sync method
59  $fbp_content = '
60<div id="fb-root"></div>
61<script src="http://connect.facebook.net/en_US/all.js"></script>
62<script>
63  FB.init({ldelim}
64    appId  : \'111499825588662\',
65    status : true, // check login status
66    cookie : true, // enable cookies to allow the server to access the session
67    xfbml  : true  // parse XFBML
68 {rdelim});
69</script>
70<script src="http://connect.facebook.net/{$language}/all.js#xfbml=1"></script>
71';
72  $fbp_content .= '
73<fb:like href="{$SRC_IMG}" show_faces="true" width="{$WIDTH_IMG}"></fb:like>
74';
75  return $content.$fbp_content;
76}
77
78function fbp_loc_begin_picture()
79{
80  global $template, $user;
81
82  // set prefilter
83  $template->set_prefilter('header', 'fbp_header');
84  $template->set_prefilter('default_content', 'fbp_AddSocial');
85  // Always use full url for FB social plugin
86  set_make_full_url();
87  // define language
88  $template->assign('language', $user['language']);
89}
90
91function fbp_loc_end_picture()
92{
93  // Restore url
94  unset_make_full_url();
95}
96
97function fbp_header($content, &$smarty)
98{
99  $search = '#<html #';
100
101  $replacement = '<html xmlns:fb="http://www.facebook.com/2008/fbml" ';
102
103  return preg_replace($search, $replacement, $content);
104}
105
106add_event_handler('loc_begin_picture', 'fbp_loc_begin_picture');
107add_event_handler('loc_end_picture', 'fbp_loc_end_picture');
108
109?>
Note: See TracBrowser for help on using the repository browser.