PageRenderTime 41ms CodeModel.GetById 16ms RepoModel.GetById 1ms app.codeStats 0ms

/include/inc_module/mod_socialplugins/frontend.render.php

https://github.com/breitsch/phpwcms-modules
PHP | 1594 lines | 1209 code | 228 blank | 157 comment | 318 complexity | 7fdcbcc192d74cf84f3d39f28d29d17a MD5 | raw file
Possible License(s): GPL-2.0
  1. <?php
  2. /**
  3. * phpwcms content management system
  4. *
  5. * @author Oliver Georgi <oliver@phpwcms.de>
  6. * @copyright Copyright (c) 2002-2013, Oliver Georgi
  7. * @license http://opensource.org/licenses/GPL-2.0 GNU GPL-2
  8. * @link http://www.phpwcms.de
  9. *
  10. * This script is a module for PHPWCMS
  11. * Module Social Plugins v1.0.5 by breitsch - webrealisierung gmbh 2013
  12. *
  13. **/
  14. // ----------------------------------------------------------------
  15. // obligate check for phpwcms constants
  16. if (!defined('PHPWCMS_ROOT')) {
  17. die("You Cannot Access This Script Directly, Have a Nice Day.");
  18. }
  19. // ----------------------------------------------------------------
  20. $msp_js = array();
  21. function replace_fb_share_tag($fb_share_id) {
  22. $fb_share_id = intval(trim($fb_share_id[1]));
  23. $fbsp = array();
  24. $fbsp_output = '';
  25. $module_meta_thumb = '';
  26. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  27. $sql .= "fb_id = " . aporeplace($fb_share_id) . ' LIMIT 1';
  28. $fbsp['data'] = _dbQuery($sql);
  29. if( isset($fbsp['data'][0]) ) {
  30. $fbsp['data'] = $fbsp['data'][0];
  31. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  32. } else return;
  33. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  34. //if dynamic use basic otherwise use given value
  35. if ($fbsp['data']['values']['fb_site_url_fix'] == 1) {
  36. $fbsp['data']['values']['fb_url'] = fbsp_get_pageurl();
  37. } else {
  38. if ( strlen($fbsp['data']['values']['fb_site_url']) == strcspn($fbsp['data']['values']['fb_site_url'],"'\"\\|<>") ) {
  39. $fbsp['data']['values']['fb_url'] = $fbsp['data']['values']['fb_site_url'];
  40. }
  41. }
  42. //own image
  43. if ($fbsp['data']['values']['fb_id_img']) {
  44. $module_meta_thumb = fbsp_get_module_image ($fbsp['data']['values']['fb_id_img'], false, $fbsp['data']['values']['fb_img_width'], $fbsp['data']['values']['fb_img_height'], $fbsp['data']['values']['fb_img_crop']);
  45. //if($module_meta_thumb) {
  46. }
  47. _set_meta_url('og:url',$fbsp['data']['values']['fb_url'],'property');
  48. if($fbsp['data']['values']['fb_share_dialog'] == 1) {
  49. $fbsp_output = '<a href="#" onclick="window.open(\'https://www.facebook.com/sharer/sharer.php?u='.urlencode($fbsp['data']['values']['fb_url']).'\',\'facebook-share-dialog\',\'width=626,height=436\');return false;" class="modsp_facebook_share">';
  50. if ($fbsp['data']['values']['fb_id_img'] && $module_meta_thumb) {
  51. $fbsp_output .= '<img src="'.PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0].'" alt="'.$fbsp['data']['values']['fb_link'].'" title="'.$fbsp['data']['values']['fb_link'].'" />';
  52. } else {
  53. $fbsp_output .= $fbsp['data']['values']['fb_link'];
  54. }
  55. $fbsp_output .= '</a>';
  56. } else {
  57. $fbsp_output = '<a href="https://www.facebook.com/sharer/sharer.php?u='.urlencode($fbsp['data']['values']['fb_url']).'" target="_blank" class="modsp_facebook_share">';
  58. if ($fbsp['data']['values']['fb_id_img'] && $module_meta_thumb) {
  59. $fbsp_output .= '<img src="'.PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0].'" alt="'.$fbsp['data']['values']['fb_link'].'" title="'.$fbsp['data']['values']['fb_link'].'" />';
  60. } else {
  61. $fbsp_output .= $fbsp['data']['values']['fb_link'];
  62. }
  63. $fbsp_output .= '</a>';
  64. }
  65. }
  66. return $fbsp_output;
  67. } //end replace_fb_share_tag
  68. function replace_fb_recom_tag($fb_recom_id) {
  69. global $msp_js;
  70. $fb_recom_id = intval(trim( $fb_recom_id[1]));
  71. $fbsp = array();
  72. $fbsp_output = '';
  73. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  74. $sql .= "fb_id = " . aporeplace($fb_recom_id) . ' LIMIT 1';
  75. $fbsp['data'] = _dbQuery($sql);
  76. if( isset($fbsp['data'][0]) ) {
  77. $fbsp['data'] = $fbsp['data'][0];
  78. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  79. } else return;
  80. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  81. $fbsp['data']['values']['fb_url'] = PHPWCMS_URL;
  82. _set_meta_url('og:url',$fbsp['data']['values']['fb_url'],'property');
  83. $fbsp['data']['values']['fb_header'] = ($fbsp['data']['values']['fb_header'] == 1) ? 'true' : 'false' ;
  84. if($fbsp['data']['values']['fb_output_type'] == 'iframe') {
  85. $fbsp_output = ' <iframe src="http://www.facebook.com/plugins/recommendations.php?site='.urlencode($fbsp['data']['values']['fb_url']).'&amp;width='.$fbsp['data']['values']['fb_width'].'&amp;height='.$fbsp['data']['values']['fb_height'].'&amp;header='.$fbsp['data']['values']['fb_header'].'&amp;font='.$fbsp['data']['values']['fb_font'].'&amp;colorscheme='.$fbsp['data']['values']['fb_colorscheme'].'&amp;ref='.$fbsp['data']['values']['fb_ref'].'&amp;locale='.$fbsp['data']['values']['fb_locale'].'" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:'.$fbsp['data']['values']['fb_width'].'px; height:'.$fbsp['data']['values']['fb_height'].'px;" allowTransparency="true"></iframe>';
  86. } else if ($fbsp['data']['values']['fb_output_type'] == 'xfbml'){
  87. //$fbsp_output = ' <script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1"></script><div id="fb-root"></div><fb:recommendations site="'.$fbsp['data']['values']['fb_url'].'" width="'.$fbsp['data']['values']['fb_width'].'" height="'.$fbsp['data']['values']['fb_height'].'" header="'.$fbsp['data']['values']['fb_header'].'" font="'.$fbsp['data']['values']['fb_font'].'" colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" border_color="#'.$fbsp['data']['values']['fb_border_color'].'" ref="'.$fbsp['data']['values']['fb_ref'].'"></fb:recommendations>';
  88. $fbsp_output = '<div id="fb-root"></div><fb:recommendations site="'.$fbsp['data']['values']['fb_url'].'" width="'.$fbsp['data']['values']['fb_width'].'" height="'.$fbsp['data']['values']['fb_height'].'" header="'.$fbsp['data']['values']['fb_header'].'" font="'.$fbsp['data']['values']['fb_font'].'" colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" ref="'.$fbsp['data']['values']['fb_ref'].'"></fb:recommendations>';
  89. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  90. } else if ($fbsp['data']['values']['fb_output_type'] == 'html5'){
  91. //$fbsp_output = ' <script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1"></script><div id="fb-root"></div><div class="fb-recommendations" data-site="'.$fbsp['data']['values']['fb_url'].'" data-width="'.$fbsp['data']['values']['fb_width'].'" data-height="'.$fbsp['data']['values']['fb_height'].'" data-header="'.$fbsp['data']['values']['fb_header'].'" data-font="'.$fbsp['data']['values']['fb_font'].'" data-colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" data-border_color="#'.$fbsp['data']['values']['fb_border_color'].'" data-ref="'.$fbsp['data']['values']['fb_ref'].'"></div>';
  92. $fbsp_output = '<div id="fb-root"></div><div class="fb-recommendations" data-site="'.$fbsp['data']['values']['fb_url'].'" data-width="'.$fbsp['data']['values']['fb_width'].'" data-height="'.$fbsp['data']['values']['fb_height'].'" data-header="'.$fbsp['data']['values']['fb_header'].'" data-font="'.$fbsp['data']['values']['fb_font'].'" data-colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" data-ref="'.$fbsp['data']['values']['fb_ref'].'"></div>';
  93. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  94. }
  95. }
  96. return $fbsp_output;
  97. } //end replace_fb_recom_tag
  98. //ACTIVITY
  99. function replace_fb_activity_tag($fb_activity_id) {
  100. global $msp_js;
  101. $fb_activity_id = intval(trim( $fb_activity_id[1]));
  102. $fbsp = array();
  103. $fbsp_output = '';
  104. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  105. $sql .= "fb_id = " . aporeplace($fb_activity_id) . ' LIMIT 1';
  106. $fbsp['data'] = _dbQuery($sql);
  107. if( isset($fbsp['data'][0]) ) {
  108. $fbsp['data'] = $fbsp['data'][0];
  109. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  110. } else return;
  111. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  112. //enysm replace
  113. //$fbsp['data']['values']['fb_url'] = PHPWCMS_URL;
  114. //if dynamic use basic otherwise use given value
  115. if ($fbsp['data']['values']['fb_site_url_fix'] == 1) {
  116. $fbsp['data']['values']['fb_url'] = PHPWCMS_URL;
  117. } else {
  118. if ( strlen($fbsp['data']['values']['fb_site_url']) == strcspn($fbsp['data']['values']['fb_site_url'],"'\"\\|<>") ) {
  119. $fbsp['data']['values']['fb_url'] = $fbsp['data']['values']['fb_site_url'];
  120. }
  121. }
  122. //enysm replace end
  123. _set_meta_url('og:url',$fbsp['data']['values']['fb_url'],'property');
  124. $fbsp['data']['values']['fb_header'] = ($fbsp['data']['values']['fb_header'] == 1) ? 'true' : 'false' ;
  125. $fbsp['data']['values']['fb_show_recom'] = ($fbsp['data']['values']['fb_show_recom'] == 1) ? 'true' : 'false' ;
  126. if($fbsp['data']['values']['fb_output_type'] == 'iframe') {
  127. $fbsp_output = ' <iframe src="http://www.facebook.com/plugins/activity.php?site='.urlencode($fbsp['data']['values']['fb_url']).'&amp;width='.$fbsp['data']['values']['fb_width'].'&amp;height='.$fbsp['data']['values']['fb_height'].'&amp;header='.$fbsp['data']['values']['fb_header'].'&amp;font='.$fbsp['data']['values']['fb_font'].'&amp;colorscheme='.$fbsp['data']['values']['fb_colorscheme'].'&amp;recommendations='.$fbsp['data']['values']['fb_show_recom'].'&amp;ref='.$fbsp['data']['values']['fb_ref'].'&amp;locale='.$fbsp['data']['values']['fb_locale'].'" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:'.$fbsp['data']['values']['fb_width'].'px; height:'.$fbsp['data']['values']['fb_height'].'px;" allowTransparency="true"></iframe>';
  128. }else if ($fbsp['data']['values']['fb_output_type'] == 'xfbml'){
  129. //$fbsp_output = ' <script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1"></script><div id="fb-root"></div><fb:activity site="'.$fbsp['data']['values']['fb_url'].'" width="'.$fbsp['data']['values']['fb_width'].'" height="'.$fbsp['data']['values']['fb_height'].'" header="'.$fbsp['data']['values']['fb_header'].'" font="'.$fbsp['data']['values']['fb_font'].'" colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" border_color="#'.$fbsp['data']['values']['fb_border_color'].'" recommendations="'.$fbsp['data']['values']['fb_show_recom'].'" ref="'.$fbsp['data']['values']['fb_ref'].'"></fb:activity>';
  130. $fbsp_output = ' <div id="fb-root"></div><fb:activity site="'.$fbsp['data']['values']['fb_url'].'" width="'.$fbsp['data']['values']['fb_width'].'" height="'.$fbsp['data']['values']['fb_height'].'" header="'.$fbsp['data']['values']['fb_header'].'" font="'.$fbsp['data']['values']['fb_font'].'" colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" recommendations="'.$fbsp['data']['values']['fb_show_recom'].'" ref="'.$fbsp['data']['values']['fb_ref'].'"></fb:activity>';
  131. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  132. }else if ($fbsp['data']['values']['fb_output_type'] == 'html5'){
  133. //$fbsp_output = ' <script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1"></script><div id="fb-root"></div><div class="fb-activity" data-site="'.$fbsp['data']['values']['fb_url'].'" data-width="'.$fbsp['data']['values']['fb_width'].'" data-height="'.$fbsp['data']['values']['fb_height'].'" data-header="'.$fbsp['data']['values']['fb_header'].'" data-font="'.$fbsp['data']['values']['fb_font'].'" data-colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" data-border_color="#'.$fbsp['data']['values']['fb_border_color'].'" data-recommendations="'.$fbsp['data']['values']['fb_show_recom'].'" data-ref="'.$fbsp['data']['values']['fb_ref'].'"></div>';
  134. $fbsp_output = ' <div id="fb-root"></div><div class="fb-activity" data-site="'.$fbsp['data']['values']['fb_url'].'" data-width="'.$fbsp['data']['values']['fb_width'].'" data-height="'.$fbsp['data']['values']['fb_height'].'" data-header="'.$fbsp['data']['values']['fb_header'].'" data-font="'.$fbsp['data']['values']['fb_font'].'" data-colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" data-recommendations="'.$fbsp['data']['values']['fb_show_recom'].'" data-ref="'.$fbsp['data']['values']['fb_ref'].'"></div>';
  135. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  136. }
  137. }
  138. return $fbsp_output;
  139. } //end replace_fb_activity_tag
  140. //TWITTER
  141. function replace_twitter_tag($fb_twitter_id) {
  142. global $msp_js;
  143. $fb_twitter_id = intval(trim( $fb_twitter_id[1]));
  144. $fbsp = array();
  145. $fbsp_output = '';
  146. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  147. $sql .= "fb_id = " . aporeplace($fb_twitter_id) . ' LIMIT 1';
  148. $fbsp['data'] = _dbQuery($sql);
  149. if( isset($fbsp['data'][0]) ) {
  150. $fbsp['data'] = $fbsp['data'][0];
  151. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  152. } else return;
  153. $module_meta_thumb = array();
  154. $fbsp_data_text = '';
  155. $fbsp_data_url = '';
  156. $fbsp_data_via = '';
  157. $fbsp_data_related = '';
  158. $fbsp_data_counturl = '';
  159. $fbsp_data_hashtags = '';
  160. $fbsp_data_icn = '';
  161. $fbsp_data_count = '';
  162. $fbsp_usr_url = '';
  163. $fbsp_usr_hashtags = '';
  164. $fbsp_usr_text = '';
  165. $fbsp_usr_via = '';
  166. $fbsp_usr_related = '';
  167. $fbsp_usr_counturl = '';
  168. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  169. //url of actual page
  170. $fbsp['data']['values']['fb_pageurl'] = fbsp_get_pageurl();
  171. //main url
  172. $fbsp['data']['values']['fb_siteurl'] = PHPWCMS_URL;
  173. //set default page url
  174. $fbsp_data_counturl = ' data-counturl="'.$fbsp['data']['values']['fb_siteurl'].'"';
  175. $fbsp_usr_counturl = '&amp;counturl='.urlencode($fbsp['data']['values']['fb_siteurl']);
  176. //text
  177. if ($fbsp['data']['values']['fb_tweet_title'] == 1 && !empty($fbsp['data']['values']['fb_tweet_titletxt'])) {
  178. $fbsp_data_text = ' data-text="'.$fbsp['data']['values']['fb_tweet_titletxt'].'"';
  179. $fbsp_usr_text = '&amp;text='.urlencode($fbsp['data']['values']['fb_tweet_titletxt']);
  180. }
  181. //hashtag
  182. if ( !empty($fbsp['data']['values']['fb_tweet_hashtags']) ) {
  183. $fbsp['data']['values']['fb_tweet_hashtags'] = preg_replace('/[^0-9A-Za-z_,:]/m', '', $fbsp['data']['values']['fb_tweet_hashtags']);
  184. $fbsp_data_hashtags = ' data-hashtags="'.$fbsp['data']['values']['fb_tweet_hashtags'].'"';
  185. $fbsp_usr_hashtags = '&amp;hashtags='.urlencode($fbsp['data']['values']['fb_tweet_hashtags']);
  186. }
  187. //int url -> then set the base url
  188. if ($fbsp['data']['values']['fb_tweet_domain'] == 0 ) {
  189. $fbsp_data_url = ' data-url="'.$fbsp['data']['values']['fb_pageurl'].'"';
  190. $fbsp_usr_url = 'url='.urlencode($fbsp['data']['values']['fb_pageurl']);
  191. } else if ($fbsp['data']['values']['fb_tweet_domain'] == 1 && !empty($fbsp['data']['values']['fb_tweet_url'])) { //ext url
  192. if ( strlen($fbsp['data']['values']['fb_tweet_url']) == strcspn($fbsp['data']['values']['fb_tweet_url'],"'\"\\|<>") ) {
  193. $fbsp_data_url = ' data-url="'.$fbsp['data']['values']['fb_tweet_url'].'"';
  194. $fbsp_usr_url = 'url='.urlencode($fbsp['data']['values']['fb_tweet_url']);
  195. }
  196. }
  197. //recomm
  198. $fbsp_recom1output="";
  199. if (!empty($fbsp['data']['values']['fb_tweet_recom1'])) {
  200. $fbsp_recom1output = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_recom1']);
  201. $fbsp_data_via = ' data-via="'.$fbsp_recom1output.'"';
  202. $fbsp_usr_via = '&amp;via='.urlencode($fbsp_recom1output);
  203. }
  204. $fbsp_recom2output="";
  205. if (!empty($fbsp['data']['values']['fb_tweet_recom2'])) {
  206. $fbsp_recom2 = explode(":", $fbsp['data']['values']['fb_tweet_recom2'],2);
  207. if( isset($fbsp_recom2[1]) && $fbsp_recom2[1]){
  208. $fbsp_recom2[0] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp_recom2[0]);
  209. $fbsp_recom2[1] = preg_replace('/[\"\<\>\/\\\,]/m', '', $fbsp_recom2[1]);
  210. $fbsp_recom2output = implode(':', $fbsp_recom2);
  211. } else {
  212. $fbsp_recom2output = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_recom2']);
  213. }
  214. $fbsp_data_related = ' data-related="'.$fbsp_recom2output.'"';
  215. $fbsp_usr_related = '&amp;related='.urlencode($fbsp_recom2output);
  216. }
  217. //($fbsp['data']['values']['fb_tweet_button_count'] == 1) ? $fbsp_data_count = ' data-count="none"': $fbsp_data_count = '';
  218. if ( isset($fbsp['data']['values']['fb_tweet_count']) ) {
  219. $fbsp_data_count = ' data-count="'.$fbsp['data']['values']['fb_tweet_count'].'"';
  220. } else {
  221. $fbsp_data_count = ' data-count="none"';
  222. }
  223. //own image
  224. if ($fbsp['data']['values']['fb_id_img'] && $fbsp['data']['values']['fb_tweet_button']=='user') {
  225. $module_meta_thumb = fbsp_get_module_image ($fbsp['data']['values']['fb_id_img'], false, $fbsp['data']['values']['fb_img_width'], $fbsp['data']['values']['fb_img_height'], $fbsp['data']['values']['fb_img_crop']);
  226. if($module_meta_thumb) {
  227. //output own button
  228. $GLOBALS['block']['custom_htmlhead']["twitter_css"] = ' <style type="text/css" media="screen">
  229. #custom-tweet-button {
  230. width:'.$module_meta_thumb[1].'px;
  231. height:'.$module_meta_thumb[2].'px;
  232. position:relative;
  233. display: block;
  234. cursor:pointer;
  235. background: url(\''.PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0].'\') center center no-repeat;
  236. }
  237. </style>';
  238. $fbsp_output = ' <div id="custom-tweet-button" onclick="javascript: window.open(\'http://twitter.com/share?'.$fbsp_usr_url.$fbsp_usr_text.$fbsp_usr_hashtags.$fbsp_usr_via.$fbsp_usr_related.$fbsp_usr_counturl.'\', \'tweet\', \'location=1,status=1,width=550,height=450\');"></div>';
  239. }
  240. } else {
  241. ($fbsp['data']['values']['fb_tweet_button'] == 'large') ? $fbsp_data_icn = ' data-size="large"': $fbsp_data_icn = '';
  242. //output script version
  243. $fbsp_output = ' <a href="https://twitter.com/share" class="twitter-share-button" data-lang="'.$fbsp['data']['values']['fb_tweet_locale'].'"'.$fbsp_data_url.$fbsp_data_text.$fbsp_data_hashtags.$fbsp_data_count.$fbsp_data_via.$fbsp_data_related.$fbsp_data_icn.$fbsp_data_counturl.'>Tweet</a>';
  244. $msp_js['msp_tw-js'] = '!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");';
  245. }
  246. }
  247. return $fbsp_output;
  248. } //end replace_twitter_tag
  249. //TWITTER HASHTAG
  250. function replace_tw_hashtag($fb_twitter_id) {
  251. global $msp_js;
  252. $fb_twitter_id = intval(trim( $fb_twitter_id[1]));
  253. $fbsp = array();
  254. $fbsp_output = '';
  255. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  256. $sql .= "fb_id = " . aporeplace($fb_twitter_id) . ' LIMIT 1';
  257. $fbsp['data'] = _dbQuery($sql);
  258. if( isset($fbsp['data'][0]) ) {
  259. $fbsp['data'] = $fbsp['data'][0];
  260. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  261. } else return;
  262. $fbsp_data_hashtags = '';
  263. $fbsp_data_url = '';
  264. $fbsp_data_text = '';
  265. $fbsp_data_icn = '';
  266. $fbsp_data_related = '';
  267. if ( $fbsp['data']['fb_status'] == 1 && !empty($fbsp['data']['values']['fb_tweet_hashtags']) ) { //0=inactive, 1=active, 9=deleted
  268. //hashtag
  269. $fbsp['data']['values']['fb_tweet_hashtags'] = preg_replace('/[^0-9A-Za-z_:]/m', '', $fbsp['data']['values']['fb_tweet_hashtags']);
  270. $fbsp_data_hashtags = 'button_hashtag='.urlencode($fbsp['data']['values']['fb_tweet_hashtags']);
  271. //url of actual page
  272. $fbsp['data']['values']['fb_pageurl'] = fbsp_get_pageurl();
  273. //main url
  274. $fbsp['data']['values']['fb_siteurl'] = PHPWCMS_URL;
  275. //int url -> then set the base url
  276. // if fb_tweet_domain'] == 2 -> no url -> $fbsp_data_url remains =''
  277. if($fbsp['data']['values']['fb_tweet_domain'] == 0) {
  278. $fbsp_data_url = ' data-url="'.$fbsp['data']['values']['fb_pageurl'].'"';
  279. } else if ($fbsp['data']['values']['fb_tweet_domain'] == 1 && !empty($fbsp['data']['values']['fb_tweet_url'])) { //ext url
  280. if ( strlen($fbsp['data']['values']['fb_tweet_url']) == strcspn($fbsp['data']['values']['fb_tweet_url'],"'\"\\|<>") ) {
  281. $fbsp_data_url = ' data-url="'.$fbsp['data']['values']['fb_tweet_url'].'"';
  282. }
  283. }
  284. //text
  285. if ($fbsp['data']['values']['fb_tweet_title']==0){
  286. $fbsp_data_text = '&text='.urlencode(fbsp_get_pagetitle());
  287. } else if ($fbsp['data']['values']['fb_tweet_title'] == 1 && !empty($fbsp['data']['values']['fb_tweet_titletxt'])) {
  288. $fbsp_data_text = '&text='.urlencode($fbsp['data']['values']['fb_tweet_titletxt']);
  289. }
  290. //size
  291. ($fbsp['data']['values']['fb_tweet_button'] == 'large') ? $fbsp_data_icn = ' data-size="large"': $fbsp_data_icn = '';
  292. //recomm
  293. $fbsp_recomarr=array();
  294. if (!empty($fbsp['data']['values']['fb_tweet_recom1'])) {
  295. $fbsp_recom1 = explode(":", $fbsp['data']['values']['fb_tweet_recom1'],2);
  296. if($fbsp_recom1[1]){
  297. $fbsp_recom1[0] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp_recom1[0]);
  298. $fbsp_recom1[1] = preg_replace('/[\"\<\>\/\\\,]/m', '', $fbsp_recom1[1]);
  299. $fbsp_recomarr[] = implode(':', $fbsp_recom1);
  300. } else {
  301. $fbsp_recomarr[] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_recom1']);
  302. }
  303. }
  304. if (!empty($fbsp['data']['values']['fb_tweet_recom2'])) {
  305. $fbsp_recom2 = explode(":", $fbsp['data']['values']['fb_tweet_recom2'],2);
  306. if($fbsp_recom2[1]){
  307. $fbsp_recom2[0] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp_recom2[0]);
  308. $fbsp_recom2[1] = preg_replace('/[\"\<\>\/\\\,]/m', '', $fbsp_recom2[1]);
  309. $fbsp_recomarr[] = implode(':', $fbsp_recom2);
  310. } else {
  311. $fbsp_recomarr[] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_recom2']);
  312. }
  313. }
  314. if( count($fbsp_recomarr) ){
  315. $fbsp_data_related = ' data-related="';
  316. $fbsp_data_related .= implode(',', $fbsp_recomarr);
  317. $fbsp_data_related .= '"';
  318. }
  319. //output script version
  320. $fbsp_output = ' <a href="https://twitter.com/intent/tweet?'.$fbsp_data_hashtags.$fbsp_data_text.'" class="twitter-hashtag-button" data-lang="'.$fbsp['data']['values']['fb_tweet_locale'].'"'.$fbsp_data_url.$fbsp_data_icn.$fbsp_data_related.'>Tweet</a>';
  321. $msp_js['msp_tw-js'] = '!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");';
  322. }
  323. return $fbsp_output;
  324. } //end replace_tw_hashtag
  325. //TWITTER MENTION
  326. function replace_tw_mention($fb_twitter_id) {
  327. global $msp_js;
  328. $fb_twitter_id = intval(trim( $fb_twitter_id[1]));
  329. $fbsp = array();
  330. $fbsp_output = '';
  331. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  332. $sql .= "fb_id = " . aporeplace($fb_twitter_id) . ' LIMIT 1';
  333. $fbsp['data'] = _dbQuery($sql);
  334. if( isset($fbsp['data'][0]) ) {
  335. $fbsp['data'] = $fbsp['data'][0];
  336. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  337. } else return;
  338. $fbsp_data_tweetto = '';
  339. $fbsp_data_text = '';
  340. $fbsp_data_icn = '';
  341. $fbsp_data_related = '';
  342. if ( $fbsp['data']['fb_status'] == 1 && !empty($fbsp['data']['values']['fb_tweet_tweetto']) ) { //0=inactive, 1=active, 9=deleted
  343. //mention
  344. $fbsp['data']['values']['fb_tweet_tweetto'] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_tweetto']);
  345. $fbsp_data_tweetto = 'screen_name='.urlencode($fbsp['data']['values']['fb_tweet_tweetto']);
  346. //text
  347. if ($fbsp['data']['values']['fb_tweet_title']==0){
  348. $fbsp_data_text = '&amp;text='.urlencode(fbsp_get_pagetitle());
  349. } else if ($fbsp['data']['values']['fb_tweet_title'] == 1 && !empty($fbsp['data']['values']['fb_tweet_titletxt'])) {
  350. $fbsp_data_text = '&amp;text='.urlencode($fbsp['data']['values']['fb_tweet_titletxt']);
  351. }
  352. //size
  353. ($fbsp['data']['values']['fb_tweet_button'] == 'large') ? $fbsp_data_icn = ' data-size="large"': $fbsp_data_icn = '';
  354. //recomm
  355. $fbsp_recomarr=array();
  356. if (!empty($fbsp['data']['values']['fb_tweet_recom1'])) {
  357. $fbsp_recom1 = explode(":", $fbsp['data']['values']['fb_tweet_recom1'],2);
  358. if($fbsp_recom1[1]){
  359. $fbsp_recom1[0] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp_recom1[0]);
  360. $fbsp_recom1[1] = preg_replace('/[\"\<\>\/\\\,]/m', '', $fbsp_recom1[1]);
  361. $fbsp_recomarr[] = implode(':', $fbsp_recom1);
  362. } else {
  363. $fbsp_recomarr[] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_recom1']);
  364. }
  365. }
  366. if (!empty($fbsp['data']['values']['fb_tweet_recom2'])) {
  367. $fbsp_recom2 = explode(":", $fbsp['data']['values']['fb_tweet_recom2'],2);
  368. if($fbsp_recom2[1]){
  369. $fbsp_recom2[0] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp_recom2[0]);
  370. $fbsp_recom2[1] = preg_replace('/[\"\<\>\/\\\,]/m', '', $fbsp_recom2[1]);
  371. $fbsp_recomarr[] = implode(':', $fbsp_recom2);
  372. } else {
  373. $fbsp_recomarr[] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_recom2']);
  374. }
  375. }
  376. if( count($fbsp_recomarr) ){
  377. $fbsp_data_related = ' data-related="';
  378. $fbsp_data_related .= implode(',', $fbsp_recomarr);
  379. $fbsp_data_related .= '"';
  380. }
  381. //output script version
  382. $fbsp_output = ' <a href="https://twitter.com/intent/tweet?'.$fbsp_data_tweetto.$fbsp_data_text.'" class="twitter-mention-button" data-lang="'.$fbsp['data']['values']['fb_tweet_locale'].'"'.$fbsp_data_icn.$fbsp_data_related.'>Tweet @'.$fbsp['data']['values']['fb_tweet_tweetto'].'</a>';
  383. $msp_js['msp_tw-js'] = '!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");';
  384. }
  385. return $fbsp_output;
  386. } //end replace_tw_mention
  387. //TWITTER FOLLOW
  388. function replace_tw_follow($fb_twitter_id) {
  389. global $msp_js;
  390. $fb_twitter_id = intval(trim( $fb_twitter_id[1]));
  391. $fbsp = array();
  392. $fbsp_output = '';
  393. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  394. $sql .= "fb_id = " . aporeplace($fb_twitter_id) . ' LIMIT 1';
  395. $fbsp['data'] = _dbQuery($sql);
  396. if( isset($fbsp['data'][0]) ) {
  397. $fbsp['data'] = $fbsp['data'][0];
  398. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  399. } else return;
  400. $fbsp_data_followuser = '';
  401. $fbsp_data_show_screen_name = '';
  402. $fbsp_data_count = ' data-show-count="false"';
  403. $fbsp_data_icn = '';
  404. if ($fbsp['data']['fb_status'] == 1 && !empty($fbsp['data']['values']['fb_tweet_followuser']) ) { //0=inactive, 1=active, 9=deleted
  405. //follow user
  406. $fbsp['data']['values']['fb_tweet_followuser'] = preg_replace('/[^0-9A-Za-z_]/m', '', $fbsp['data']['values']['fb_tweet_followuser']);
  407. $fbsp_data_followuser = $fbsp['data']['values']['fb_tweet_followuser'];
  408. //show_screen_name
  409. ($fbsp['data']['values']['fb_tweet_showusername'] != 1) ? $fbsp_data_show_screen_name = ' data-show-screen-name="false"': $fbsp_data_show_screen_name = '';
  410. //size
  411. ($fbsp['data']['values']['fb_tweet_button'] == 'large') ? $fbsp_data_icn = ' data-size="large"': $fbsp_data_icn = '';
  412. //count
  413. if ( isset($fbsp['data']['values']['fb_tweet_count']) && $fbsp['data']['values']['fb_tweet_count'] == 'true' ) {
  414. $fbsp_data_count = ' data-count="true"';
  415. }
  416. //output script version
  417. $fbsp_output = ' <a href="https://twitter.com/'.$fbsp_data_followuser.'" class="twitter-follow-button" data-lang="'.$fbsp['data']['values']['fb_tweet_locale'].'"'.$fbsp_data_show_screen_name.$fbsp_data_icn.$fbsp_data_count.'>Follow @'.$fbsp_data_followuser.'</a>';
  418. $msp_js['msp_tw-js'] = '!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");';
  419. }
  420. return $fbsp_output;
  421. } //end replace_tw_follow
  422. //TWITTERFOLLOW
  423. function replace_twitterfollow_tag($fb_twitterfollow_id) {
  424. $fb_twitterfollow_id = intval(trim( $fb_twitterfollow_id[1]));
  425. $fbsp = array();
  426. $fbsp_output = '';
  427. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  428. $sql .= "fb_id = " . aporeplace($fb_twitterfollow_id) . ' LIMIT 1';
  429. $fbsp['data'] = _dbQuery($sql);
  430. if( isset($fbsp['data'][0]) ) {
  431. $fbsp['data'] = $fbsp['data'][0];
  432. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  433. } else return;
  434. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  435. $GLOBALS['block']['custom_htmlhead']['css_twitter_follow'] = ' <style type="text/css">
  436. .twitter-follow-button img { border:none; }
  437. </style>
  438. ';
  439. $fbsp_output = '<span class="twitter-follow-button">'.$fbsp['data']['values']['fb_twitter_followcode'].'</span>';
  440. }
  441. return $fbsp_output;
  442. } //end replace_twitterfollow_tag
  443. function replace_twitterwidget_tag($fb_twitterwidget_id) {
  444. $fb_twitterwidget_id = intval(trim( $fb_twitterwidget_id[1]));
  445. $fbsp = array();
  446. $fbsp_output = '';
  447. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  448. $sql .= "fb_id = " . aporeplace($fb_twitterwidget_id) . ' LIMIT 1';
  449. $fbsp['data'] = _dbQuery($sql);
  450. if( isset($fbsp['data'][0]) ) {
  451. $fbsp['data'] = $fbsp['data'][0];
  452. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  453. } else return;
  454. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  455. $fbsp_output = $fbsp['data']['values']['fb_twitter_widgetcode'];
  456. }
  457. return $fbsp_output;
  458. } //end replace_twitterfollow_tag
  459. //LIKE
  460. function replace_fb_likeit_tag($fb_likeit_id) {
  461. global $content;
  462. global $news;
  463. global $phpwcms;
  464. global $msp_js;
  465. $fbsp_like_id = intval(trim( $fb_likeit_id[1]));
  466. $fbsp = array();
  467. $fbsp_output = '';
  468. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  469. $sql .= "fb_id = " . aporeplace($fbsp_like_id) . ' LIMIT 1';
  470. $fbsp['data'] = _dbQuery($sql);
  471. if( isset($fbsp['data'][0]) ) {
  472. $fbsp['data'] = $fbsp['data'][0];
  473. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  474. } else return;
  475. $fb_meta_thumb = '';
  476. $news_meta_thumb = false;
  477. $article_meta_thumb = false;
  478. $module_meta_thumb = false;
  479. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  480. if ($fbsp['data']['values']['fb_tit_fix']==1){
  481. // check if we are in single news view, then set news title, else set the articletitle
  482. if(isset($GLOBALS["_getVar"]["newsdetail"])){
  483. $fbsp['data']['values']['fb_title'] = ($news['result'][0]['cnt_title']) ? $news['result'][0]['cnt_title'] : $content["article_title"];
  484. } else if ($content["article_title"]) {
  485. $fbsp['data']['values']['fb_title'] = $content["article_title"];
  486. } //else it's the value from the module
  487. }
  488. if ($fbsp['data']['values']['fb_site_fix']==1){
  489. // check if we are in single news view, then set news title, else set the articletitle
  490. if(isset($GLOBALS['pagelayout']['layout_title'])){
  491. $fbsp['data']['values']['fb_site'] = $GLOBALS['pagelayout']['layout_title'];
  492. } //else it's the value from the module
  493. }
  494. $fbsp['data']['values']['fb_show_faces'] = ($fbsp['data']['values']['fb_show_faces'] == 1) ? 'true':'false';
  495. //if dynamic use basic otherwise use given value
  496. if ($fbsp['data']['values']['fb_site_url_fix'] == 1) {
  497. $fbsp['data']['values']['fb_url'] = fbsp_get_pageurl();
  498. } else {
  499. if ( strlen($fbsp['data']['values']['fb_site_url']) == strcspn($fbsp['data']['values']['fb_site_url'],"'\"\\|<>") ) {
  500. $fbsp['data']['values']['fb_url'] = $fbsp['data']['values']['fb_site_url'];
  501. }
  502. }
  503. //enym new end
  504. _set_meta('og:title',$fbsp['data']['values']['fb_title'],'property');
  505. _set_meta('og:type',$fbsp['data']['values']['fb_type'],'property');
  506. _set_meta_url('og:url',$fbsp['data']['values']['fb_url'],'property');
  507. _set_meta('og:site_name',$fbsp['data']['values']['fb_site'],'property');
  508. _set_meta('fb:admins',$fbsp['data']['values']['fb_admins'],'property');
  509. _set_meta('fb:app_id',$fbsp['data']['values']['fb_app_id'],'property');
  510. // _set_meta('og:description',"blabla",'property');
  511. _set_meta('og:latitude',$fbsp['data']['values']['fb_latitude'],'property');
  512. _set_meta('og:longitude',$fbsp['data']['values']['fb_longitude'],'property');
  513. _set_meta('og:street-address',$fbsp['data']['values']['fb_streetaddress'],'property');
  514. _set_meta('og:locality',$fbsp['data']['values']['fb_locality'],'property');
  515. _set_meta('og:region',$fbsp['data']['values']['fb_region'],'property');
  516. _set_meta('og:postal-code',$fbsp['data']['values']['fb_postal'],'property');
  517. _set_meta('og:country-name',$fbsp['data']['values']['fb_country'],'property');
  518. _set_meta('og:email',$fbsp['data']['values']['fb_email'],'property');
  519. _set_meta('og:phone_number',$fbsp['data']['values']['fb_phonenumber'],'property');
  520. _set_meta('og:fax_number',$fbsp['data']['values']['fb_faxnumber'],'property');
  521. $fbsp_send = "false";
  522. $fbsp_output = "";
  523. $fbsp_fb_app_id = '';
  524. $fbsp_fb_app_id2 = '';
  525. if( isset($fbsp['data']['values']['fb_app_id']) && $fbsp['data']['values']['fb_app_id']){
  526. $fbsp_fb_app_id = '&appId='.$fbsp['data']['values']['fb_app_id'];
  527. $fbsp_fb_app_id2 = '&amp;appId='.$fbsp['data']['values']['fb_app_id'];
  528. }
  529. if($fbsp['data']['values']['fb_output_type'] == 'iframe') {
  530. //$fbsp_output = ' <iframe src="http://www.facebook.com/plugins/like.php?href='.urlencode($fbsp['data']['values']['fb_url']).'&amp;send=false&amp;layout='.$fbsp['data']['values']['fb_layout'].'&amp;show_faces='.$fbsp['data']['values']['fb_show_faces'].'&amp;width='.$fbsp['data']['values']['fb_width'].'&amp;action='.$fbsp['data']['values']['fb_action'].'&amp;font='.$fbsp['data']['values']['fb_font'].'&amp;colorscheme='.$fbsp['data']['values']['fb_colorscheme'].'&amp;height='.$fbsp['data']['values']['fb_height'].'&amp;ref='.$fbsp['data']['values']['fb_ref'].'&amp;locale='.$fbsp['data']['values']['fb_locale'].'" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:'.$fbsp['data']['values']['fb_width'].'px; height:'.$fbsp['data']['values']['fb_height'].'px;'.$fbsp['data']['values']['fb_iframe_style'].'" allowTransparency="true"></iframe>';
  531. $fbsp_output = ' <iframe src="//www.facebook.com/plugins/like.php?href='.urlencode($fbsp['data']['values']['fb_url']).'&amp;width='.$fbsp['data']['values']['fb_width'].'&amp;height='.$fbsp['data']['values']['fb_height'].'&amp;colorscheme='.$fbsp['data']['values']['fb_colorscheme'].'&amp;layout='.$fbsp['data']['values']['fb_layout'].'&amp;action='.$fbsp['data']['values']['fb_action'].'&amp;show_faces='.$fbsp['data']['values']['fb_show_faces'].'&amp;send=false&amp;font='.$fbsp['data']['values']['fb_font'].'&amp;ref='.$fbsp['data']['values']['fb_ref'].'&amp;locale='.$fbsp['data']['values']['fb_locale'].$fbsp_fb_app_id2.'" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:'.$fbsp['data']['values']['fb_width'].'px; height:'.$fbsp['data']['values']['fb_height'].'px;'.$fbsp['data']['values']['fb_iframe_style'].'" allowTransparency="true"></iframe>';
  532. } else if ($fbsp['data']['values']['fb_output_type'] == 'xfbml'){
  533. if ( $fbsp['data']['values']['fb_send'] == 1 ) {
  534. $fbsp_send = "true";
  535. }
  536. //$fbsp_output = ' <script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"></script><div id="fb-root"></div><fb:like href="'.$fbsp['data']['values']['fb_url'].'" send="'.$fbsp_send.'" layout="'.$fbsp['data']['values']['fb_layout'].'" show_faces="'.$fbsp['data']['values']['fb_show_faces'].'" width="'.$fbsp['data']['values']['fb_width'].'" action="'.$fbsp['data']['values']['fb_action'].'" font="'.$fbsp['data']['values']['fb_font'].'" colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" ref="'.$fbsp['data']['values']['fb_ref'].'"></fb:like>';
  537. $fbsp_output = ' <div id="fb-root"></div><fb:like href="'.$fbsp['data']['values']['fb_url'].'" send="'.$fbsp_send.'" layout="'.$fbsp['data']['values']['fb_layout'].'" show_faces="'.$fbsp['data']['values']['fb_show_faces'].'" width="'.$fbsp['data']['values']['fb_width'].'" action="'.$fbsp['data']['values']['fb_action'].'" font="'.$fbsp['data']['values']['fb_font'].'" colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" ref="'.$fbsp['data']['values']['fb_ref'].'"></fb:like>';
  538. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  539. } else if ($fbsp['data']['values']['fb_output_type'] == 'html5'){
  540. if ( $fbsp['data']['values']['fb_send'] == 1 ) {
  541. $fbsp_send = "true";
  542. }
  543. $fbsp_output = ' <div id="fb-root"></div><div class="fb-like" data-href="'.$fbsp['data']['values']['fb_url'].'" data-send="'.$fbsp_send.'" data-layout="'.$fbsp['data']['values']['fb_layout'].'" data-width="'.$fbsp['data']['values']['fb_width'].'" data-show-faces="'.$fbsp['data']['values']['fb_show_faces'].'" data-font="'.$fbsp['data']['values']['fb_font'].'" data-colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'" data-ref="'.$fbsp['data']['values']['fb_ref'].'"></div>';
  544. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  545. }
  546. if($fbsp['data']['values']['fb_img_fix'] == 1) {
  547. //news image
  548. $news_meta_thumb = fbsp_get_news_image(true);
  549. //article image
  550. $article_meta_thumb = fbsp_get_article_image(true);
  551. }
  552. $module_meta_thumb = fbsp_get_module_image($fbsp['data']['values']['fb_id_img'], true);
  553. if($fbsp['data']['values']['fb_img_fix'] == 1) {
  554. if($news_meta_thumb != false) {
  555. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$news_meta_thumb[0];
  556. } else if($article_meta_thumb != false) {
  557. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$article_meta_thumb[0];
  558. } else if($module_meta_thumb != false) {
  559. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0];
  560. } else {
  561. $fb_meta_thumb = '';
  562. }
  563. } else if($module_meta_thumb != false) {
  564. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0];
  565. } else {
  566. $fb_meta_thumb = '';
  567. }
  568. if($fb_meta_thumb){
  569. _set_meta('og:image',$fb_meta_thumb,'property');
  570. $GLOBALS['block']['custom_htmlhead']["image_src"] = ' <link rel="image_src" href="'.$fb_meta_thumb.'" />';
  571. }
  572. }
  573. return $fbsp_output;
  574. }
  575. //FB COMM
  576. function replace_fb_comm_tag($fb_comm_id) {
  577. global $content;
  578. global $msp_js;
  579. $fb_comm_id = intval(trim( $fb_comm_id[1]));
  580. $fbsp = array();
  581. $fbsp_output = '';
  582. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  583. $sql .= "fb_id = " . aporeplace($fb_comm_id) . ' LIMIT 1';
  584. $fbsp['data'] = _dbQuery($sql);
  585. if( isset($fbsp['data'][0]) ) {
  586. $fbsp['data'] = $fbsp['data'][0];
  587. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  588. } else return;
  589. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  590. if ($fbsp['data']['values']['fb_tit_fix']==1){
  591. // check if we are in single news view, then set news title, else set the articletitle
  592. if(isset($GLOBALS["_getVar"]["newsdetail"])){
  593. $fbsp['data']['values']['fb_title'] = ($news['result'][0]['cnt_title']) ? $news['result'][0]['cnt_title'] : $content["article_title"];
  594. } else if ($content["article_title"]) {
  595. $fbsp['data']['values']['fb_title'] = $content["article_title"];
  596. } //else it's the value from the module
  597. }
  598. if ($fbsp['data']['values']['fb_site_fix']==1){
  599. // check if we are in single news view, then set news title, else set the articletitle
  600. if($GLOBALS['pagelayout']['layout_title']){
  601. $fbsp['data']['values']['fb_site'] = $GLOBALS['pagelayout']['layout_title'];
  602. } //else it's the value from the module
  603. }
  604. //enym replace
  605. //if dynamic use basic otherwise use given value
  606. if ($fbsp['data']['values']['fb_site_url_fix'] == 1) {
  607. $fbsp['data']['values']['fb_url'] = fbsp_get_pageurl();
  608. } else {
  609. if ( strlen($fbsp['data']['values']['fb_site_url']) == strcspn($fbsp['data']['values']['fb_site_url'],"'\"\\|<>") ) {
  610. $fbsp['data']['values']['fb_url'] = $fbsp['data']['values']['fb_site_url'];
  611. }
  612. }
  613. //enym replace end
  614. _set_meta('og:title',$fbsp['data']['values']['fb_title'],'property');
  615. _set_meta_url('og:url',$fbsp['data']['values']['fb_url'],'property');
  616. _set_meta('og:site_name',$fbsp['data']['values']['fb_site'],'property');
  617. _set_meta('fb:admins',$fbsp['data']['values']['fb_admins'],'property');
  618. _set_meta('fb:app_id',$fbsp['data']['values']['fb_app_id'],'property');
  619. $fbsp_fb_app_id = '';
  620. if( isset($fbsp['data']['values']['fb_app_id']) && $fbsp['data']['values']['fb_app_id']){
  621. $fbsp_fb_app_id = '&appId='.$fbsp['data']['values']['fb_app_id'];
  622. }
  623. if ($fbsp['data']['values']['fb_output_type'] == 'xfbml'){
  624. //$fbsp_output = ' <script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#appId='.$fbsp['data']['values']['fb_app_id'].'&amp;xfbml=1"></script><div id="fb-root"></div><fb:comments href="'.$fbsp['data']['values']['fb_url'].'" num_posts="'.$fbsp['data']['values']['fb_comm_nr'].'" width="'.$fbsp['data']['values']['fb_width'].' "colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'"></fb:comments>'; //enym added "colorscheme='.$fbsp['data']['values']['fb_colorscheme'].'
  625. $fbsp_output = ' <div id="fb-root"></div><fb:comments href="'.$fbsp['data']['values']['fb_url'].'" num_posts="'.$fbsp['data']['values']['fb_comm_nr'].'" width="'.$fbsp['data']['values']['fb_width'].' "colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'"></fb:comments>';
  626. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  627. }else if ($fbsp['data']['values']['fb_output_type'] == 'html5'){
  628. //$fbsp_output = ' <script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#appId='.$fbsp['data']['values']['fb_app_id'].'&amp;xfbml=1"></script><div id="fb-root"></div><div class="fb-comments" data-href="'.$fbsp['data']['values']['fb_url'].'" data-num_posts="'.$fbsp['data']['values']['fb_comm_nr'].'" data-width="'.$fbsp['data']['values']['fb_width'].' "data-colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'"></div>';
  629. $fbsp_output = ' <div id="fb-root"></div><div class="fb-comments" data-href="'.$fbsp['data']['values']['fb_url'].'" data-num_posts="'.$fbsp['data']['values']['fb_comm_nr'].'" data-width="'.$fbsp['data']['values']['fb_width'].' "data-colorscheme="'.$fbsp['data']['values']['fb_colorscheme'].'"></div>';
  630. $msp_js['msp_fb-js'] = '(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1&status=0"; fjs.parentNode.insertBefore(js, fjs);}(document, "script", "facebook-jssdk"));';
  631. }
  632. }
  633. return $fbsp_output;
  634. }
  635. //GOOGLE
  636. function replace_google_tag($fb_google_id) {
  637. $fb_google_id = intval(trim( $fb_google_id[1]));
  638. $fbsp = array();
  639. $fbsp_output = '';
  640. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  641. $sql .= "fb_id = " . aporeplace($fb_google_id) . ' LIMIT 1';
  642. $fbsp['data'] = _dbQuery($sql);
  643. if( isset($fbsp['data'][0]) ) {
  644. $fbsp['data'] = $fbsp['data'][0];
  645. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  646. } else return;
  647. $fb_meta_thumb = '';
  648. $news_meta_thumb = false;
  649. $article_meta_thumb = false;
  650. $module_meta_thumb = false;
  651. $fbsp_data_href = '';
  652. $fbsp_data_size = 'default';
  653. $fbsp_data_annotation = 'none';
  654. $fbsp_data_locale = 'en_US';
  655. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  656. //url of actual page
  657. $fbsp['data']['values']['fb_pageurl'] = fbsp_get_pageurl();
  658. //main url
  659. $fbsp['data']['values']['fb_siteurl'] = PHPWCMS_URL;
  660. //set href
  661. //int url -> then set the base url
  662. if ($fbsp['data']['values']['fb_google_domain'] == 0 ) {
  663. $fbsp_data_href = ' data-href="'.$fbsp['data']['values']['fb_pageurl'].'"';
  664. } else if ($fbsp['data']['values']['fb_google_domain'] == 1 && !empty($fbsp['data']['values']['fb_google_url'])) { //ext url
  665. if ( strlen($fbsp['data']['values']['fb_google_url']) == strcspn($fbsp['data']['values']['fb_google_url'],"'\"\\|<>") ) {
  666. $fbsp_data_href = ' data-href="'.$fbsp['data']['values']['fb_google_url'].'"';
  667. }
  668. }
  669. //set size
  670. $fbsp_data_size = ' data-size="'.$fbsp['data']['values']['fb_google_size'].'"';
  671. //set annotation
  672. $fbsp_data_annotation = ' data-annotation="'.$fbsp['data']['values']['fb_google_annotation'].'"';
  673. //set locale
  674. $fbsp_data_locale = $fbsp['data']['values']['fb_google_locale'];
  675. //set title - may conflict with other buttons
  676. if ($fbsp['data']['values']['fb_google_title'] == 1 && !empty($fbsp['data']['values']['fb_google_titletxt'])) {
  677. _set_meta('og:title',$fbsp['data']['values']['fb_google_titletxt'],'property');
  678. }
  679. //news image
  680. $news_meta_thumb = fbsp_get_news_image();
  681. //article image
  682. $article_meta_thumb = fbsp_get_article_image();
  683. //module image
  684. if ( $fbsp['data']['values']['fb_id_img'] ) {
  685. $module_meta_thumb = fbsp_get_module_image ($fbsp['data']['values']['fb_id_img'], true);
  686. }
  687. //take 1. module image, 2. News image, 3. Article Image
  688. if($module_meta_thumb != false) {
  689. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0];
  690. } else if($news_meta_thumb != false) {
  691. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$news_meta_thumb[0];
  692. } else if($article_meta_thumb != false) {
  693. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$article_meta_thumb[0];
  694. } else {
  695. $fb_meta_thumb = '';
  696. }
  697. //this may conflict with other buttons
  698. if($fb_meta_thumb){
  699. _set_meta('og:image',$fb_meta_thumb,'property');
  700. }
  701. //output script version
  702. $fbsp_output = " <div class='g-plusone'".$fbsp_data_size.$fbsp_data_annotation.$fbsp_data_href."></div>
  703. <script type='text/javascript'>
  704. window.___gcfg = {
  705. lang: '".$fbsp_data_locale."'
  706. };
  707. (function() {
  708. var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
  709. po.src = 'https://apis.google.com/js/plusone.js';
  710. var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  711. })();
  712. </script>".LF;
  713. }
  714. return $fbsp_output;
  715. } //end replace_google_tag
  716. function _set_meta($name='', $content='', $attribute = 'name') {
  717. if(empty($name) || empty($content)) {
  718. return NULL;
  719. }
  720. $GLOBALS['block']['custom_htmlhead']['meta.'.$name] = ' <meta ';
  721. $GLOBALS['block']['custom_htmlhead']['meta.'.$name] .= $attribute;
  722. $GLOBALS['block']['custom_htmlhead']['meta.'.$name] .= '="' . $name . '" content="'.html_specialchars($content).'" />';
  723. }
  724. function _set_meta_url($name='', $content='', $attribute = 'name') {
  725. if(empty($name) || empty($content)) {
  726. return NULL;
  727. }
  728. $GLOBALS['block']['custom_htmlhead']['meta.'.$name] = ' <meta ';
  729. $GLOBALS['block']['custom_htmlhead']['meta.'.$name] .= $attribute;
  730. $GLOBALS['block']['custom_htmlhead']['meta.'.$name] .= '="' . $name . '" content="'.$content.'" />';
  731. }
  732. function fbsp_get_news_image ($resize=false) {
  733. global $news;
  734. $news_img_size=array();
  735. $news_img_width = 500;
  736. $news_img_height = 500;
  737. $news_img_crop=true;
  738. $news_meta_thumb = false;
  739. //news image
  740. //if($news['result'][0]['cnt_title'] && count($news['result']) == 1) {
  741. if(!$news['list_mode'] && count($news['result']) <= 1) {
  742. $news_cnt_object = unserialize($news['result'][0]['cnt_object']);
  743. if($news_cnt_object['cnt_image']['id']) {
  744. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_file WHERE f_aktiv=1 AND f_public=1 AND f_trash=0 AND f_id='.aporeplace($news_cnt_object['cnt_image']['id']).' AND f_ext IN ("jpg", "png", "gif") ORDER BY f_name';
  745. $fbsp['img_news'] = _dbQuery($sql);
  746. if( isset($fbsp['img_news'][0]) ) $fbsp['img_news'] = $fbsp['img_news'][0];
  747. //check for dimensions
  748. $news_img_size = getimagesize(PHPWCMS_ROOT.'/'.PHPWCMS_FILES.$fbsp['img_news']['f_hash'] . '.' . $fbsp['img_news']['f_ext']);
  749. if($resize){
  750. if ($news_img_size[0] >= $news_img_size[1]) { //landscape
  751. if ($news_img_size[1] < $news_img_size[0] / 3) {
  752. //aspect ratio over 1/3 - if height over 500px scale down and crop to 500x1500px
  753. //else crop to max aspect ratio 1/3
  754. $news_img_height = (($news_img_size[1]) > 500) ? 500 : $news_img_size[1];
  755. $news_img_width = (($news_img_size[1]) > 500) ? 1500 : $news_img_size[1]*3;
  756. $news_img_crop = true;
  757. } else {
  758. //aspect ratio OK just scale down if height over 500px
  759. $news_img_height = ($news_img_size[1] > 500) ? 500 : $news_img_size[1];
  760. $news_img_width = "";
  761. $news_img_crop = false;
  762. }
  763. } else { //portrait
  764. //crop to square with max size of 500x500px
  765. $news_img_height = ($news_img_size[0] > 500) ? 500 : $news_img_size[0];
  766. $news_img_width = ($news_img_size[0] > 500) ? 500 : $news_img_size[0];
  767. $news_img_crop = true;
  768. }
  769. } else {
  770. //get values from original image
  771. $news_img_width = $news_img_size[0];
  772. $news_img_height = $news_img_size[1];
  773. $news_img_crop = false;
  774. }
  775. $news_meta_thumb = get_cached_image(
  776. array( "target_ext" => $fbsp['img_news']['f_ext'],
  777. "image_name" => $fbsp['img_news']['f_hash'] . '.' . $fbsp['img_news']['f_ext'],
  778. "max_width" => $news_img_width,
  779. "max_height" => $news_img_height,
  780. "crop_image" => $news_img_crop,
  781. "thumb_name" => md5($fbsp['img_news']['f_hash'].$news_img_width.$news_img_height.$GLOBALS['phpwcms']["sharpen_level"].$news_img_crop)
  782. ));
  783. }
  784. }
  785. return $news_meta_thumb;
  786. }
  787. function fbsp_get_article_image ($resize=false) {
  788. global $content;
  789. $article_img_size=array();
  790. $article_img_width = 500;
  791. $article_img_height = 500;
  792. $article_img_crop=true;
  793. $article_meta_thumb = false;
  794. //article image
  795. if(!empty($content['articles'][$content['article_id']]['article_image']["hash"])) {
  796. //check for dimensions
  797. $article_img_size = getimagesize(PHPWCMS_ROOT.'/'.PHPWCMS_FILES.$content['articles'][$content['article_id']]['article_image']['hash'] . '.' . $content['articles'][$content['article_id']]['article_image']['ext']);
  798. if($resize){
  799. if ($article_img_size[0] >= $article_img_size[1]) { //landscape
  800. if ($article_img_size[1] < $article_img_size[0] / 3) {
  801. //aspect ratio over 1/3 - if height over 500px scale down and crop to 500x1500px
  802. //else crop to max aspect ratio 1/3
  803. $article_img_height = (($article_img_size[1]) > 500) ? 500 : $article_img_size[1];
  804. $article_img_width = (($article_img_size[1]) > 500) ? 1500 : $article_img_size[1]*3;
  805. $article_img_crop = true;
  806. } else {
  807. //aspect ratio OK just scale down if height over 500px
  808. $article_img_height = ($article_img_size[0] > 500) ? 500 : $article_img_size[1];
  809. $article_img_width = "";
  810. $article_img_crop = false;
  811. }
  812. } else { //portrait
  813. //crop to square with max size of 500x500px
  814. $article_img_width = ($article_img_size[0] > 500) ? 500 : $article_img_size[0];
  815. $article_img_height = ($article_img_size[0] > 500) ? 500 : $article_img_size[0];
  816. $article_img_crop = true;
  817. }
  818. } else {
  819. //get values from orig image
  820. $article_img_width = $article_img_size[0];
  821. $article_img_height = $article_img_size[1];
  822. $article_img_crop = false;
  823. }
  824. $article_meta_thumb = get_cached_image(
  825. array( "target_ext" => $content['articles'][$content['article_id']]['article_image']['ext'],
  826. "image_name" => $content['articles'][$content['article_id']]['article_image']['hash'] . '.' . $content['articles'][$content['article_id']]['article_image']['ext'],
  827. "max_width" => $article_img_width,
  828. "max_height" => $article_img_height,
  829. "crop_image" => $article_img_crop,
  830. "thumb_name" => md5($content['articles'][$content['article_id']]['article_image']['hash'].$article_img_width.$article_img_height.$GLOBALS['phpwcms']["sharpen_level"])
  831. ));
  832. }
  833. return $article_meta_thumb;
  834. }
  835. function fbsp_get_module_image ($fb_id_img, $resize=false, $w='', $h='', $c=0) {
  836. $module_img_size=array();
  837. $module_img_width = 500;
  838. $module_img_height = 500;
  839. $module_img_crop=false;
  840. $module_meta_thumb = false;
  841. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_file WHERE f_aktiv=1 AND f_public=1 AND f_trash=0 AND f_id='.aporeplace($fb_id_img).' AND f_ext IN ("jpg", "png", "gif") ORDER BY f_name';
  842. $fbsp['img_module'] = _dbQuery($sql);
  843. if( isset($fbsp['img_module'][0]) ) {
  844. $fbsp['img_module'] = $fbsp['img_module'][0];
  845. //check for dimensions
  846. $module_img_size = getimagesize(PHPWCMS_ROOT.'/'.PHPWCMS_FILES.$fbsp['img_module']['f_hash'] . '.' . $fbsp['img_module']['f_ext']);
  847. if($resize){
  848. if ($module_img_size[0] >= $module_img_size[1]) { //landscape
  849. if ($module_img_size[1] < $module_img_size[0] / 3) {
  850. //aspect ratio over 1/3 - if height over 500px scale down and crop to 500x1500px
  851. //else crop to max aspect ratio 1/3
  852. $module_img_height = ($module_img_size[1] > 500) ? 500 : $module_img_size[1];
  853. $module_img_width = ($module_img_size[1] > 500) ? 1500 : $module_img_size[1]*3;
  854. $module_img_crop = true;
  855. } else {
  856. //aspect ratio OK just scale down if height over 500px
  857. $module_img_height = ($module_img_size[1] > 500) ? 500 : $module_img_size[1];
  858. $module_img_width = "";
  859. $module_img_crop = false;
  860. }
  861. } else { //portrait
  862. //crop to square with max size of 500x500px
  863. $module_img_width = ($module_img_size[0] > 500) ? 500 : $module_img_size[0];
  864. $module_img_height = ($module_img_size[0] > 500) ? 500 : $module_img_size[0];
  865. $module_img_crop = true;
  866. }
  867. } else {
  868. //get values from function call
  869. $module_img_width = (isset($w)) ? intval($w) : $module_img_size[0];
  870. $module_img_height = (isset($h)) ? intval($h) : $module_img_size[1];
  871. $module_img_crop = (isset($c)) ? intval($c) : 0;
  872. }
  873. $module_meta_thumb = get_cached_image(
  874. array( "target_ext" => $fbsp['img_module']['f_ext'],
  875. "image_name" => $fbsp['img_module']['f_hash'] . '.' . $fbsp['img_module']['f_ext'],
  876. "max_width" => $module_img_width,
  877. "max_height" => $module_img_height,
  878. "crop_image" => $module_img_crop,
  879. "thumb_name" => md5($fbsp['img_module']['f_hash'].$module_img_width.$module_img_height.$GLOBALS['phpwcms']["sharpen_level"].$module_img_crop)
  880. ));
  881. }
  882. return $module_meta_thumb;
  883. }
  884. //get the actual page url
  885. function fbsp_get_pageurl() {
  886. global $content;
  887. global $block;
  888. $fbsp_pageurl = PHPWCMS_URL;
  889. if (!isset($content['article_id'])) {
  890. $fbsp_pageurl = PHPWCMS_URL.'index.php?id='.$content['cat_id'];
  891. } else {
  892. if(isset($GLOBALS["_getVar"]["newsdetail"])) {
  893. $fbsp_pageurl = PHPWCMS_URL.'index.php?aid='.$content['article_id'].'&newsdetail='.$GLOBALS["_getVar"]["newsdetail"];
  894. } else {
  895. $fbsp_pageurl = PHPWCMS_URL.'index.php?aid='.$content['article_id'];
  896. }
  897. }
  898. if($content['set_canonical'] && $block['custom_htmlhead']['canonical']) {
  899. preg_match('/<link\b[^<>]*?\bhref\s*=\s*("([^"]*)"|(\'[^\']*)\'|([^\'">]+))/is',$block['custom_htmlhead']['canonical'], $matches);
  900. if ($matches[2]) {
  901. $fbsp_pageurl = $matches[2];
  902. }
  903. }
  904. return $fbsp_pageurl;
  905. }
  906. //get the actual page title
  907. function fbsp_get_pagetitle() {
  908. $fbsp_pagetitle = html_specialchars($GLOBALS["content"]["pagetitle"]);
  909. return $fbsp_pagetitle;
  910. }
  911. function replace_twoclick_tag($fbsp_twoclick_ids, $twoclick_fb) {
  912. /*
  913. $fbsp_twoclick_ids = array(fb => id_fb, tw => id_tw, go => id_go,)
  914. $twoclick_fb = array( values twoclick entry db)
  915. */
  916. global $content;
  917. global $news;
  918. global $phpwcms;
  919. $fbsp_output = "";
  920. $fbsp_output_fb_js = "
  921. facebook : {
  922. 'status' : 'off'
  923. },";
  924. $fbsp_output_tw_js = "
  925. twitter : {
  926. 'status' : 'off'
  927. },";
  928. $fbsp_output_go_js = "
  929. gplus : {
  930. 'status' : 'off'
  931. }";
  932. $fbsp = array();
  933. //get tha actual page url
  934. $fbsp_pageurl = fbsp_get_pageurl();
  935. //facebook likeit
  936. $fb_meta_thumb = '';
  937. $news_meta_thumb = false;
  938. $article_meta_thumb = false;
  939. $module_meta_thumb = false;
  940. if ( isset($fbsp_twoclick_ids['fb']) && $fbsp_twoclick_ids['fb'] > 0 ) {
  941. $fbsp_like_id = intval(trim($fbsp_twoclick_ids['fb']));
  942. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  943. $sql .= "fb_id = " . aporeplace($fbsp_like_id) . ' LIMIT 1';
  944. $fbsp['data'] = _dbQuery($sql);
  945. if( isset($fbsp['data'][0]) ) {
  946. $fbsp['data'] = $fbsp['data'][0];
  947. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  948. }
  949. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  950. if ($fbsp['data']['values']['fb_tit_fix']==1){
  951. // check if we are in single news view, then set news title, else set the articletitle
  952. if(isset($GLOBALS["_getVar"]["newsdetail"])){
  953. $fbsp['data']['values']['fb_title'] = ($news['result'][0]['cnt_title']) ? $news['result'][0]['cnt_title'] : $content["article_title"];
  954. } else if ($content["article_title"]) {
  955. $fbsp['data']['values']['fb_title'] = $content["article_title"];
  956. } //else it's the value from the module
  957. }
  958. if ($fbsp['data']['values']['fb_site_fix']==1){
  959. // check if we are in single news view, then set news title, else set the articletitle
  960. if(isset($GLOBALS['pagelayout']['layout_title'])){
  961. $fbsp['data']['values']['fb_site'] = $GLOBALS['pagelayout']['layout_title'];
  962. } //else it's the value from the module
  963. }
  964. if ($fbsp['data']['values']['fb_site_url_fix'] == 1) {
  965. $fbsp['data']['values']['fb_url'] = $fbsp_pageurl;
  966. } else {
  967. $fbsp['data']['values']['fb_url'] = $fbsp['data']['values']['fb_site_url'];
  968. }
  969. $fbsp['data']['values']['fb_show_faces'] = ($fbsp['data']['values']['fb_show_faces'] == 1) ? 'true':'false';
  970. $fbsp_twoclick_perm_fb = ($twoclick_fb['values']['fb_twoclick_perm_fb'] == 0) ? 'off' : 'on' ;
  971. $fbsp_send = "false";
  972. if ( $fbsp['data']['values']['fb_send'] == 1 && $fbsp['data']['values']['fb_output_type'] != 'iframe' ) {
  973. $fbsp_send = "true";
  974. }
  975. $fbsp_output_fb_js = "
  976. facebook : {
  977. 'status' : 'on',
  978. 'dummy_img' : '".$phpwcms['modules']['br_socialplugins']['dir']."template/socialshareprivacy/images/dummy_facebook.png',
  979. 'txt_info' : '".rawurlencode($twoclick_fb['values']['fb_twoclick_txt_but'])."',
  980. 'txt_fb_off' : 'not connected to Facebook',
  981. 'txt_fb_on' : 'connected to Facebook',
  982. 'perma_option' : '".$fbsp_twoclick_perm_fb."',
  983. 'display_name' : 'Facebook',
  984. 'language' : '".$fbsp['data']['values']['fb_locale']."',
  985. 'href' : '".urlencode($fbsp['data']['values']['fb_url'])."',
  986. 'url' : '".$fbsp['data']['values']['fb_url']."',
  987. 'layout' : '".$fbsp['data']['values']['fb_layout']."',
  988. 'show_faces' : '".$fbsp['data']['values']['fb_show_faces']."',
  989. 'width' : '".$fbsp['data']['values']['fb_width']."',
  990. 'action' : '".$fbsp['data']['values']['fb_action']."',
  991. 'font' : '".$fbsp['data']['values']['fb_font']."',
  992. 'colorscheme' : '".$fbsp['data']['values']['fb_colorscheme']."',
  993. 'height' : '".$fbsp['data']['values']['fb_height']."',
  994. 'referrer_track' : '".$fbsp['data']['values']['fb_ref']."',
  995. 'send' : '".$fbsp_send."',
  996. 'appid' : '".$fbsp['data']['values']['fb_app_id']."',
  997. 'cssstyle' : '".$fbsp['data']['values']['fb_iframe_style']."',
  998. 'output' : '".$fbsp['data']['values']['fb_output_type']."'
  999. },";
  1000. _set_meta('og:title',$fbsp['data']['values']['fb_title'],'property');
  1001. _set_meta('og:type',$fbsp['data']['values']['fb_type'],'property');
  1002. _set_meta_url('og:url',$fbsp['data']['values']['fb_url'],'property');
  1003. _set_meta('og:site_name',$fbsp['data']['values']['fb_site'],'property');
  1004. _set_meta('fb:admins',$fbsp['data']['values']['fb_admins'],'property');
  1005. _set_meta('fb:app_id',$fbsp['data']['values']['fb_app_id'],'property');
  1006. // _set_meta('og:description',"blabla",'property');
  1007. _set_meta('og:latitude',$fbsp['data']['values']['fb_latitude'],'property');
  1008. _set_meta('og:longitude',$fbsp['data']['values']['fb_longitude'],'property');
  1009. _set_meta('og:street-address',$fbsp['data']['values']['fb_streetaddress'],'property');
  1010. _set_meta('og:locality',$fbsp['data']['values']['fb_locality'],'property');
  1011. _set_meta('og:region',$fbsp['data']['values']['fb_region'],'property');
  1012. _set_meta('og:postal-code',$fbsp['data']['values']['fb_postal'],'property');
  1013. _set_meta('og:country-name',$fbsp['data']['values']['fb_country'],'property');
  1014. _set_meta('og:email',$fbsp['data']['values']['fb_email'],'property');
  1015. _set_meta('og:phone_number',$fbsp['data']['values']['fb_phonenumber'],'property');
  1016. _set_meta('og:fax_number',$fbsp['data']['values']['fb_faxnumber'],'property');
  1017. if($fbsp['data']['values']['fb_img_fix'] == 1) {
  1018. //news image
  1019. $news_meta_thumb = fbsp_get_news_image(true);
  1020. //article image
  1021. $article_meta_thumb = fbsp_get_article_image(true);
  1022. }
  1023. $module_meta_thumb = fbsp_get_module_image($fbsp['data']['values']['fb_id_img'], true);
  1024. if($fbsp['data']['values']['fb_img_fix'] == 1) {
  1025. if($news_meta_thumb != false) {
  1026. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$news_meta_thumb[0];
  1027. } else if($article_meta_thumb != false) {
  1028. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$article_meta_thumb[0];
  1029. } else if($module_meta_thumb != false) {
  1030. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0];
  1031. } else {
  1032. $fb_meta_thumb = '';
  1033. }
  1034. } else if($module_meta_thumb != false) {
  1035. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0];
  1036. } else {
  1037. $fb_meta_thumb = '';
  1038. }
  1039. if($fb_meta_thumb){
  1040. _set_meta('og:image',$fb_meta_thumb,'property');
  1041. $GLOBALS['block']['custom_htmlhead']["image_src"] = ' <link rel="image_src" href="'.$fb_meta_thumb.'" />';
  1042. }
  1043. $fbsp_output .= '<div id="fb-root"></div>';
  1044. } //end if status 1
  1045. } //end if id in RT
  1046. //end facebook likeit
  1047. unset($fbsp['data']);
  1048. $fb_meta_thumb = '';
  1049. $news_meta_thumb = false;
  1050. $article_meta_thumb = false;
  1051. $module_meta_thumb = false;
  1052. //twitter tweet
  1053. if ( isset($fbsp_twoclick_ids['tw']) && $fbsp_twoclick_ids['tw'] > 0 ) {
  1054. $fb_twitter_id = intval(trim($fbsp_twoclick_ids['tw']));
  1055. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  1056. $sql .= "fb_id = " . aporeplace($fb_twitter_id) . ' LIMIT 1';
  1057. $fbsp['data'] = _dbQuery($sql);
  1058. if( isset($fbsp['data'][0]) ) {
  1059. $fbsp['data'] = $fbsp['data'][0];
  1060. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  1061. }
  1062. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  1063. $fbsp['data']['values']['fb_pageurl'] = $fbsp_pageurl;
  1064. $fbsp_data_text = '';
  1065. $fbsp_data_url = '';
  1066. $fbsp_data_via = '';
  1067. $fbsp_data_related = '';
  1068. $fbsp_data_counturl = '';
  1069. $fbsp_data_lang = 'en';
  1070. //text
  1071. if ($fbsp['data']['values']['fb_tweet_title'] == 1 && !empty($fbsp['data']['values']['fb_tweet_titletxt'])) {
  1072. $fbsp_data_text = $fbsp['data']['values']['fb_tweet_titletxt'];
  1073. }
  1074. //int url -> then set the base url
  1075. if ($fbsp['data']['values']['fb_tweet_domain'] == 0 ) {
  1076. $fbsp_data_url = $fbsp['data']['values']['fb_pageurl'];
  1077. } else if ($fbsp['data']['values']['fb_tweet_domain'] == 1 && !empty($fbsp['data']['values']['fb_tweet_url'])) { //ext url
  1078. $fbsp_data_url = $fbsp['data']['values']['fb_tweet_url'];
  1079. }
  1080. if (!empty($fbsp['data']['values']['fb_tweet_recom1'])) {
  1081. $fbsp_data_via = $fbsp['data']['values']['fb_tweet_recom1'];
  1082. }
  1083. if (!empty($fbsp['data']['values']['fb_tweet_recom2'])) {
  1084. $fbsp_data_related = $fbsp['data']['values']['fb_tweet_recom2'];
  1085. }
  1086. $fbsp_data_counturl = PHPWCMS_URL;
  1087. ($fbsp['data']['values']['fb_tweet_button'] == 'large') ? $fbsp_data_size = 'large': $fbsp_data_size = '';
  1088. //($fbsp['data']['values']['fb_tweet_button_count'] == 1) ? $fbsp_data_count = 'none': $fbsp_data_count = '';
  1089. $fbsp_data_count = $fbsp['data']['values']['fb_tweet_count'];
  1090. $fbsp_data_lang = $fbsp['data']['values']['fb_tweet_locale'];
  1091. $fbsp_twoclick_perm_tw = ($twoclick_fb['values']['fb_twoclick_perm_tw'] == 0) ? 'off' : 'on' ;
  1092. $fbsp_output_tw_js = "
  1093. twitter : {
  1094. 'status' : 'on',
  1095. 'dummy_img' : '".$phpwcms['modules']['br_socialplugins']['dir']."template/socialshareprivacy/images/dummy_twitter.png',
  1096. 'txt_info' : '".rawurlencode($twoclick_fb['values']['fb_twoclick_txt_but'])."',
  1097. 'txt_fb_off' : 'not connected to Twitter',
  1098. 'txt_fb_on' : 'connected to Twitter',
  1099. 'perma_option' : '".$fbsp_twoclick_perm_tw."',
  1100. 'display_name' : 'Twitter',
  1101. 'counturl' : '".urlencode($fbsp_data_counturl)."',
  1102. 'text' : '".rawurlencode($fbsp_data_text)."',
  1103. 'url' : '".urlencode($fbsp_data_url)."',
  1104. 'via' : '".rawurlencode($fbsp_data_via)."',
  1105. 'related' : '".rawurlencode($fbsp_data_related)."',
  1106. 'count' : '".$fbsp_data_count."',
  1107. 'size' : '".$fbsp_data_size."',
  1108. 'lang' : '".$fbsp_data_lang."'
  1109. },";
  1110. }//end if status 1
  1111. } //end if id in RT
  1112. //end twitter tweet
  1113. unset($fbsp['data']);
  1114. $fb_meta_thumb = '';
  1115. $news_meta_thumb = false;
  1116. $article_meta_thumb = false;
  1117. $module_meta_thumb = false;
  1118. //google+
  1119. if ( isset($fbsp_twoclick_ids['go']) && $fbsp_twoclick_ids['go'] > 0 ) {
  1120. $fb_google_id = intval(trim($fbsp_twoclick_ids['go']));
  1121. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE ';
  1122. $sql .= "fb_id = " . aporeplace($fb_google_id) . ' LIMIT 1';
  1123. $fbsp['data'] = _dbQuery($sql);
  1124. if( isset($fbsp['data'][0]) ) {
  1125. $fbsp['data'] = $fbsp['data'][0];
  1126. $fbsp['data']['values'] = unserialize($fbsp['data']['fb_values']);
  1127. }
  1128. if ($fbsp['data']['fb_status'] == 1) { //0=inactive, 1=active, 9=deleted
  1129. $fbsp_data_href = '';
  1130. $fbsp_data_size = 'default';
  1131. $fbsp_data_annotation = 'none';
  1132. $fbsp_data_locale = 'en_US';
  1133. //url of actual page
  1134. $fbsp['data']['values']['fb_pageurl'] = $fbsp_pageurl;
  1135. //main url
  1136. $fbsp['data']['values']['fb_siteurl'] = PHPWCMS_URL;
  1137. //set href
  1138. //int url -> then set the base url
  1139. if ($fbsp['data']['values']['fb_google_domain'] == 0 ) {
  1140. $fbsp_data_href = $fbsp['data']['values']['fb_pageurl'];
  1141. } else if ($fbsp['data']['values']['fb_google_domain'] == 1 && !empty($fbsp['data']['values']['fb_google_url'])) { //ext url
  1142. $fbsp_data_href = $fbsp['data']['values']['fb_google_url'];
  1143. }
  1144. //set size
  1145. $fbsp_data_size = $fbsp['data']['values']['fb_google_size'];
  1146. //set annotation
  1147. $fbsp_data_annotation = $fbsp['data']['values']['fb_google_annotation'];
  1148. //set locale
  1149. $fbsp_data_locale = $fbsp['data']['values']['fb_google_locale'];
  1150. //set title - may conflict with other buttons
  1151. if ($fbsp['data']['values']['fb_google_title'] == 1 && !empty($fbsp['data']['values']['fb_google_titletxt'])) {
  1152. _set_meta('og:title',$fbsp['data']['values']['fb_google_titletxt'],'property');
  1153. }
  1154. //news image
  1155. $news_meta_thumb =fbsp_get_news_image();
  1156. //article image
  1157. $article_meta_thumb = fbsp_get_article_image();
  1158. //module image
  1159. if ( $fbsp['data']['values']['fb_id_img'] ) {
  1160. $module_meta_thumb = fbsp_get_module_image ($fbsp['data']['values']['fb_id_img']);
  1161. }
  1162. //take 1. module image, 2. News image, 3. Article Image
  1163. if($module_meta_thumb != false) {
  1164. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$module_meta_thumb[0];
  1165. } else if($news_meta_thumb != false) {
  1166. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$news_meta_thumb[0];
  1167. } else if($article_meta_thumb != false) {
  1168. $fb_meta_thumb = PHPWCMS_URL.PHPWCMS_IMAGES.$article_meta_thumb[0];
  1169. } else {
  1170. $fb_meta_thumb = '';
  1171. }
  1172. //this may conflict with other buttons
  1173. if($fb_meta_thumb){
  1174. _set_meta('og:image',$fb_meta_thumb,'property');
  1175. }
  1176. $fbsp_twoclick_perm_go = ($twoclick_fb['values']['fb_twoclick_perm_go'] == 0) ? 'off' : 'on' ;
  1177. $fbsp_output_go_js = "
  1178. gplus : {
  1179. 'status' : 'on',
  1180. 'dummy_img' : '".$phpwcms['modules']['br_socialplugins']['dir']."template/socialshareprivacy/images/dummy_gplus.png',
  1181. 'txt_info' : '".rawurlencode($twoclick_fb['values']['fb_twoclick_txt_but'])."',
  1182. 'txt_gplus_off' : 'not connected to Google+',
  1183. 'txt_gplus_on' : 'connected to Google+',
  1184. 'perma_option' : '".$fbsp_twoclick_perm_go."',
  1185. 'display_name' : 'Google+',
  1186. 'referrer_track' : '',
  1187. 'language' : '".$fbsp_data_locale."',
  1188. 'href' : '".urlencode($fbsp_data_href)."',
  1189. 'size' : '".$fbsp_data_size."',
  1190. 'annotation' : '".$fbsp_data_annotation."'
  1191. }";
  1192. $GLOBALS['block']['custom_htmlhead']['twoclick-google'] = "<script type='text/javascript' src='https://apis.google.com/js/plusone.js'>
  1193. {'parsetags': 'explicit', lang: '".$fbsp_data_locale."'}
  1194. </script>".LF;
  1195. $fbsp_output .= '';
  1196. }//end if status 1
  1197. } //end if id in RT
  1198. //end google+
  1199. unset($fbsp['data']);
  1200. //render js to head
  1201. $GLOBALS['block']['custom_htmlhead']['twoclick'] = '<script type="text/javascript" src="'.$phpwcms['modules']['br_socialplugins']['dir'].'template/socialshareprivacy/jquery.socialshareprivacy.js"></script>';
  1202. $GLOBALS['block']['custom_htmlhead']['twoclick-function'] = "<script type='text/javascript'>
  1203. jQuery(document).ready(function($){
  1204. if($('#socialshareprivacy').length > 0){
  1205. $('#socialshareprivacy').socialSharePrivacy({
  1206. services : {
  1207. ".$fbsp_output_fb_js.$fbsp_output_tw_js.$fbsp_output_go_js."
  1208. },
  1209. 'info_link' : '".urlencode($twoclick_fb['values']['fb_twoclick_lnk'])."',
  1210. 'txt_help' : '".rawurlencode(htmlspecialchars($twoclick_fb['values']['fb_twoclick_txt_set']))."',
  1211. 'settings_perma' : '".rawurlencode($twoclick_fb['values']['fb_twoclick_lbl_set'])."',
  1212. 'cookie_expires' : '365',
  1213. 'css_path' : '".$phpwcms['modules']['br_socialplugins']['dir']."template/socialshareprivacy/socialshareprivacy.css',
  1214. 'uri' : '".urlencode(PHPWCMS_URL)."'
  1215. });
  1216. }
  1217. });
  1218. </script>".LF;
  1219. // SDK is loaded from js
  1220. //$fbsp_output = '<div id="fb-root"></div><script src="http://connect.facebook.net/'.$fbsp['data']['values']['fb_locale'].'/all.js#xfbml=1"></script>';
  1221. $fbsp_output .= '<div id="socialshareprivacy"></div>';
  1222. return $fbsp_output;
  1223. }
  1224. //check for twoclick solution
  1225. $plugin_fb = array();
  1226. $plugin_fb['data'] = array();
  1227. $sql = 'SELECT * FROM '.DB_PREPEND.'phpwcms_modfb WHERE fb_cat = "twoclick" LIMIT 1';
  1228. $data = _dbQuery($sql);
  1229. if( isset($data[0]) ) {
  1230. $plugin_fb['data'] =$data[0];
  1231. $plugin_fb['data']['values'] = unserialize($plugin_fb['data']['fb_values']);
  1232. }
  1233. unset($sql, $data);
  1234. //check for jslib=jquery
  1235. $fbsp_jslib = ( strpos($GLOBALS["block"]["jslib"], 'jquery') !== false ) ? "jquery" : "mootools" ;
  1236. //render twocklick solution if ready
  1237. if ( isset($plugin_fb['data']['fb_status']) && $plugin_fb['data']['fb_status']==1 && $fbsp_jslib == "jquery") {
  1238. //find the RT's in the code and extract the id's from them
  1239. $fbsp_fb_id = array();
  1240. preg_match('/\{MSP_FB_LIKE:(.*?)\}/i', $content['all'], $fbsp_fb_id);
  1241. $fbsp_tw_id = array();
  1242. preg_match('/\{MSP_TW_TWEET:(.*?)\}/i', $content['all'], $fbsp_tw_id);
  1243. $fbsp_go_id = array();
  1244. preg_match('/\{MSP_GOOGLE:(.*?)\}/i', $content['all'], $fbsp_go_id);
  1245. //prepare array for function
  1246. $fbsp_twoclick_ids = array();
  1247. if(isset($fbsp_fb_id[1])) $fbsp_twoclick_ids['fb'] = intval($fbsp_fb_id[1]);
  1248. if(isset($fbsp_tw_id[1])) $fbsp_twoclick_ids['tw'] = intval($fbsp_tw_id[1]);
  1249. if(isset($fbsp_go_id[1])) $fbsp_twoclick_ids['go'] = intval($fbsp_go_id[1]);
  1250. //call function to render twoclick solution
  1251. $ttt = replace_twoclick_tag($fbsp_twoclick_ids, $plugin_fb['data']);
  1252. //if there is a RT for twoclick solution then render it and delete all remaining buttons RT's
  1253. if( strpos($content['all'], '{MSP_TWOCLICK}') ) {
  1254. $content['all'] = preg_replace('/\{MSP_TWOCLICK}/i', $ttt, $content['all']);
  1255. $content['all'] = preg_replace('/\{MSP_FB_LIKE:(.*?)\}/i', '', $content['all']);
  1256. $content['all'] = preg_replace('/\{MSP_TW_TWEET:(.*?)\}/i', '', $content['all']);
  1257. $content['all'] = preg_replace('/\{MSP_GOOGLE:(.*?)\}/i', '', $content['all']);
  1258. } else {
  1259. //else render it to the first encounter of a button RT
  1260. if(isset($fbsp_fb_id[1])) { //Facebook RT exists
  1261. $content['all'] = preg_replace('/\{MSP_FB_LIKE:(.*?)\}/i', $ttt, $content['all']);
  1262. //now check for remaining RT's and delete them so they won't be rendered later on
  1263. if(isset($fbsp_tw_id[1])) {
  1264. $content['all'] = preg_replace('/\{MSP_TW_TWEET:(.*?)\}/i', '', $content['all']);
  1265. }
  1266. if(isset($fbsp_go_id[1])) {
  1267. $content['all'] = preg_replace('/\{MSP_GOOGLE:(.*?)\}/i', '', $content['all']);
  1268. }
  1269. } else if(isset($fbsp_tw_id[1])) { //Twitter RT exists
  1270. $content['all'] = preg_replace('/\{MSP_TW_TWEET:(.*?)\}/i', $ttt, $content['all']);
  1271. if(isset($fbsp_go_id[1])) {
  1272. $content['all'] = preg_replace('/\{MSP_GOOGLE:(.*?)\}/i', '', $content['all']);
  1273. }
  1274. } else if(isset($fbsp_go_id[1])) { //Google RT exists
  1275. $content['all'] = preg_replace('/\{MSP_GOOGLE:(.*?)\}/i', $ttt, $content['all']);
  1276. }
  1277. }
  1278. unset($fbsp_fb_id, $fbsp_tw_id, $fbsp_go_id, $fbsp_twoclick_ids);
  1279. } //end render twoclick
  1280. // Search for social plugin tags
  1281. $content['all'] = preg_replace_callback('/\{MSP_FB_LIKE:(.*?)\}/i', 'replace_fb_likeit_tag', $content['all'], 1);
  1282. //only the first encounter should be renderes all others get deleted below
  1283. $content['all'] = preg_replace('/\{MSP_FB_LIKE:(.*?)\}/i', '', $content['all']);
  1284. // Search for social plugin tags
  1285. $content['all'] = preg_replace_callback('/\{MSP_FB_RECOM:(.*?)\}/i', 'replace_fb_recom_tag', $content['all'], 1);
  1286. //only the first encounter should be renderes all others get deleted below
  1287. $content['all'] = preg_replace('/\{MSP_FB_RECOM:(.*?)\}/i', '', $content['all']);
  1288. // Search for social plugin tags
  1289. $content['all'] = preg_replace_callback('/\{MSP_FB_ACTIV:(.*?)\}/i', 'replace_fb_activity_tag', $content['all'], 1);
  1290. //only the first encounter should be renderes all others get deleted below
  1291. $content['all'] = preg_replace('/\{MSP_FB_ACTIV:(.*?)\}/i', '', $content['all']);
  1292. // Search for social plugin tags
  1293. $content['all'] = preg_replace_callback('/\{MSP_FB_COMM:(.*?)\}/i', 'replace_fb_comm_tag', $content['all'], 1);
  1294. //only the first encounter should be renderes all others get deleted below
  1295. $content['all'] = preg_replace('/\{MSP_FB_COMM:(.*?)\}/i', '', $content['all']);
  1296. // Search for social plugin tags
  1297. $content['all'] = preg_replace_callback('/\{MSP_FB_SHARE:(.*?)\}/i', 'replace_fb_share_tag', $content['all'], 1);
  1298. //only the first encounter should be rendered all others get deleted below
  1299. $content['all'] = preg_replace('/\{MSP_FB_SHARE:(.*?)\}/i', '', $content['all']);
  1300. // Search for social plugin tags
  1301. $content['all'] = preg_replace_callback('/\{MSP_TW_TWEET:(.*?)\}/i', 'replace_twitter_tag', $content['all'], 1);
  1302. //only the first encounter should be renderes all others get deleted below
  1303. $content['all'] = preg_replace('/\{MSP_TW_TWEET:(.*?)\}/i', '', $content['all']);
  1304. // Search for social plugin tags
  1305. $content['all'] = preg_replace_callback('/\{MSP_TW_FOLLOW:(.*?)\}/i', 'replace_tw_follow', $content['all']);
  1306. //all encounters get rendered
  1307. // Search for social plugin tags
  1308. $content['all'] = preg_replace_callback('/\{MSP_TW_WIDGET:(.*?)\}/i', 'replace_twitterwidget_tag', $content['all']);
  1309. //all encounters get rendered
  1310. // Search for social plugin tags
  1311. $content['all'] = preg_replace_callback('/\{MSP_TW_HASHTAG:(.*?)\}/i', 'replace_tw_hashtag', $content['all']);
  1312. //all encounters get rendered
  1313. // Search for social plugin tags
  1314. $content['all'] = preg_replace_callback('/\{MSP_TW_MENTION:(.*?)\}/i', 'replace_tw_mention', $content['all']);
  1315. //all encounters get rendered
  1316. // Search for social plugin tags
  1317. $content['all'] = preg_replace_callback('/\{MSP_GOOGLE:(.*?)\}/i', 'replace_google_tag', $content['all'], 1);
  1318. //only the first encounter should be rendered all others get deleted below
  1319. $content['all'] = preg_replace('/\{MSP_GOOGLE:(.*?)\}/i', '', $content['all']);
  1320. //delete remainig RT
  1321. $content['all'] = preg_replace('/\{MSP_TWOCLICK}/i', '', $content['all']);
  1322. // set Inline JS
  1323. if(count($msp_js)) {
  1324. $content['all'] .= '<script type="text/javascript">'.LF;
  1325. $content['all'] .= implode(LF, $msp_js);
  1326. $content['all'] .= LF.'</script>';
  1327. }
  1328. ?>