/home/arranoyd/magicraft/wp-content/plugins/1wp-chatbot/inc/class-htcc-shortcode.php
<?php
/**
* shortcodes
* base shorcode name is [chat]
* for list of attribute support check -> shortcode_atts ( $a )
*
* @package ccw
* @since 1.0
*/
if ( ! defined( 'ABSPATH' ) ) exit;
if ( ! class_exists( 'HTCC_Shortcode' ) ) :
class HTCC_Shortcode {
function shortcode($atts = [], $content = null, $shortcode = '') {
// let the script add - when shortcode added
// ~ any how fb won't load the sdk second time ..
// $htcc_options = get_option('htcc_options');
$htcc_options = ht_cc()->variables->get_option;
$is_mobile = ht_cc()->device_type->is_mobile;
$fb_app_id = esc_attr( $htcc_options['fb_app_id'] );
$fb_page_id = esc_attr( $htcc_options['fb_page_id'] );
$fb_sdk_lang = esc_attr( $htcc_options['fb_sdk_lang'] );
$fb_ref = esc_attr( $htcc_options['ref'] );
$fb_color = esc_attr( $htcc_options['fb_color'] );
$fb_greeting_login = esc_attr( $htcc_options['fb_greeting_login'] );
$fb_greeting_logout = esc_attr( $htcc_options['fb_greeting_logout'] );
$fb_greeting_dialog_display = esc_attr( $htcc_options['greeting_dialog_display'] );
$fb_greeting_dialog_delay = esc_attr( $htcc_options['greeting_dialog_delay'] );
$a = shortcode_atts(
array(
'page_id' => $fb_page_id,
'color' => $fb_color,
'logged_in_greetings' => $fb_greeting_login,
'logged_out_greetings' => $fb_greeting_logout,
'greeting_dialog_display' => $fb_greeting_dialog_display,
'greeting_dialog_delay' => $fb_greeting_dialog_delay,
'ref' => $fb_ref,
'hide_mobile' => '',
'hide_desktop' => '',
'app_id' => $fb_app_id, // Deprecated
), $atts, $shortcode );
$app_id = $a["app_id"];
$page_id = $a["page_id"];
$fb_color = $a["color"];
$fb_greeting_login = $a["logged_in_greetings"];
$fb_greeting_logout = $a["logged_out_greetings"];
$greeting_dialog_display = $a["greeting_dialog_display"];
$greeting_dialog_delay = $a["greeting_dialog_delay"];
$ref = $a["ref"];
// hide based on device
$hide_mobile = $a["hide_mobile"];
$hide_desktop = $a["hide_desktop"];
// if set to true then hide. - here shortcode wont use main options
if ( 'yes' == $is_mobile ) {
if ( "true" == $hide_mobile ) {
return;
}
} else {
if ( "true" == $hide_desktop ) {
return;
}
}
// js.src = '//connect.facebook.net/$fb_sdk_lang/sdk/xfbml.customerchat.js';
// js.src = 'https://connect.facebook.net/$fb_sdk_lang/sdk.js';
$o = '';
// $o .= "<script>
// window.fbAsyncInit = function() {
// FB.init({
// appId : '$app_id',
// autoLogAppEvents : true,
// xfbml : true,
// version : 'v3.2'
// });
// };
// (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/$fb_sdk_lang/sdk/xfbml.customerchat.js';
// fjs.parentNode.insertBefore(js, fjs);
// }(document, 'script', 'facebook-jssdk'));
// </script>";
$o .= '';
$o .= '<div id="htcc-messenger-shortcode" class="htcc-messenger htcc-shortcode">
<div id="htcc-customerchat" class="fb-customerchat"
page_id="'.$page_id.'"
theme_color="' .$fb_color. '"
logged_in_greeting="' .$fb_greeting_login. '"
logged_out_greeting="' .$fb_greeting_logout. '"
ref="'.$ref.'"
greeting_dialog_display="'.$greeting_dialog_display.'"
greeting_dialog_delay="'.$greeting_dialog_delay.'"
>
</div>
</div>';
$o .= '';
return $o;
}
// Register shortcode
function htcc_shortcodes_init() {
$htcc_options = get_option('htcc_options');
$shortcode_name = esc_attr( $htcc_options['shortcode'] );
// add_shortcode('chatbot', array( $this, 'shortcode' ));
add_shortcode( $shortcode_name, array( $this, 'shortcode' ) );
}
}
$shortcode = new HTCC_Shortcode();
add_action('init', array( $shortcode, 'htcc_shortcodes_init' ) );
endif; // END class_exists check