Example #1
0
/**
 * Register plugin settings and its sanitization callback.
 */
function the_champ_options_init()
{
    register_setting('the_champ_facebook_options', 'the_champ_facebook', 'the_champ_validate_options');
    register_setting('the_champ_login_options', 'the_champ_login', 'the_champ_validate_options');
    register_setting('the_champ_sharing_options', 'the_champ_sharing', 'the_champ_validate_options');
    register_setting('the_champ_counter_options', 'the_champ_counter', 'the_champ_validate_options');
    if (the_champ_social_sharing_enabled() || the_champ_social_counter_enabled() || the_champ_social_commenting_enabled()) {
        // show option to disable sharing on particular page/post
        $post_types = get_post_types(array('public' => true), 'names', 'and');
        $post_types = array_unique(array_merge($post_types, array('post', 'page')));
        foreach ($post_types as $type) {
            add_meta_box('the_champ_meta', 'Super Socializer', 'the_champ_sharing_meta_setup', $type);
        }
        // save sharing meta on post/page save
        add_action('save_post', 'the_champ_save_sharing_meta');
    }
}
Example #2
0
/**
 * The javascript to loaded at front end.
 */
function the_champ_frontend_scripts()
{
    global $theChampFacebookOptions, $theChampLoginOptions, $theChampSharingOptions;
    $inFooter = isset($theChampLoginOptions['footer_script']) ? true : false;
    // general (required) scripts
    if (!isset($theChampSharingOptions['remove_modernizr'])) {
        wp_enqueue_script('the_champ_modernizer', plugins_url('js/modernizr.custom.82187.js', __FILE__), array('jquery'), THE_CHAMP_SS_VERSION);
    }
    wp_enqueue_script('the_champ_ss_general_scripts', plugins_url('js/front/social_login/general.js', __FILE__), false, THE_CHAMP_SS_VERSION, $inFooter);
    $websiteUrl = site_url();
    $fbKey = isset($theChampLoginOptions["fb_key"]) && $theChampLoginOptions["fb_key"] != "" ? $theChampLoginOptions["fb_key"] : "";
    ?>

	<script> var theChampSiteUrl = '<?php 
    echo $websiteUrl;
    ?>
'; </script>
	<?php 
    // scripts used for common Social Login functionality
    if (the_champ_social_login_enabled() && !is_user_logged_in()) {
        $loadingImagePath = plugins_url('images/ajax_loader.gif', __FILE__);
        $theChampAjaxUrl = get_admin_url() . 'admin-ajax.php';
        $redirectionUrl = esc_attr(the_champ_get_login_redirection_url());
        $regRedirectionUrl = esc_attr(the_champ_get_login_redirection_url('', true));
        ?>

		<script> var theChampLoadingImgPath = '<?php 
        echo $loadingImagePath;
        ?>
'; var theChampAjaxUrl = '<?php 
        echo $theChampAjaxUrl;
        ?>
'; var theChampRedirectionUrl = '<?php 
        echo $redirectionUrl;
        ?>
'; var theChampRegRedirectionUrl = '<?php 
        echo $regRedirectionUrl;
        ?>
'; </script>
		<?php 
        $userVerified = false;
        $ajaxUrl = 'admin-ajax.php';
        $notification = '';
        if (isset($_GET['SuperSocializerVerified']) || isset($_GET['SuperSocializerUnverified'])) {
            $userVerified = true;
            $ajaxUrl = esc_url(add_query_arg(array('height' => 60, 'width' => 300, 'action' => 'the_champ_notify', 'message' => urlencode(isset($_GET['SuperSocializerUnverified']) ? __('Please verify your email address to login.', 'Super-Socializer') : __('Your email has been verified. Now you can login to your account', 'Super-Socializer'))), 'admin-ajax.php'));
            $notification = __('Notification', 'Super-Socializer');
        }
        $emailPopup = false;
        $emailAjaxUrl = 'admin-ajax.php';
        $emailPopupTitle = '';
        $emailPopupErrorMessage = '';
        $emailPopupUniqueId = '';
        $emailPopupVerifyMessage = '';
        if (isset($_GET['SuperSocializerEmail']) && isset($_GET['par']) && trim($_GET['par']) != '') {
            $emailPopup = true;
            $emailAjaxUrl = esc_url(add_query_arg(array('height' => isset($theChampLoginOptions['popup_height']) && $theChampLoginOptions['popup_height'] != '' ? esc_attr($theChampLoginOptions['popup_height']) : 210, 'width' => 300, 'action' => 'the_champ_ask_email'), 'admin-ajax.php'));
            $emailPopupTitle = __('Email required', 'Super-Socializer');
            $emailPopupErrorMessage = isset($theChampLoginOptions["email_error_message"]) ? $theChampLoginOptions["email_error_message"] : "";
            $emailPopupUniqueId = isset($_GET['par']) ? trim(esc_attr($_GET['par'])) : '';
            $emailPopupVerifyMessage = __('Please check your email inbox to complete the registration.', 'Super-Socializer');
        }
        ?>

		<script> var theChampFacebookScope = 'public_profile,email', theChampFBKey = '<?php 
        echo $fbKey;
        ?>
', theChampVerified = <?php 
        echo intval($userVerified);
        ?>
; var theChampAjaxUrl = '<?php 
        echo html_entity_decode(admin_url() . $ajaxUrl);
        ?>
'; var theChampPopupTitle = '<?php 
        echo $notification;
        ?>
'; var theChampEmailPopup = <?php 
        echo intval($emailPopup);
        ?>
; var theChampEmailAjaxUrl = '<?php 
        echo html_entity_decode(admin_url() . $emailAjaxUrl);
        ?>
'; var theChampEmailPopupTitle = '<?php 
        echo $emailPopupTitle;
        ?>
'; var theChampEmailPopupErrorMsg = '<?php 
        echo htmlspecialchars($emailPopupErrorMessage, ENT_QUOTES);
        ?>
'; var theChampEmailPopupUniqueId = '<?php 
        echo $emailPopupUniqueId;
        ?>
'; var theChampEmailPopupVerifyMessage = '<?php 
        echo $emailPopupVerifyMessage;
        ?>
'; var theChampTwitterRedirect = '<?php 
        echo urlencode(the_champ_get_valid_url(html_entity_decode(esc_url(the_champ_get_http() . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]))));
        ?>
'; <?php 
        echo isset($theChampLoginOptions['disable_reg']) && isset($theChampLoginOptions['disable_reg_redirect']) && $theChampLoginOptions['disable_reg_redirect'] != '' ? 'var theChampDisableRegRedirect = "' . html_entity_decode(esc_url($theChampLoginOptions['disable_reg_redirect'])) . '";' : '';
        ?>
 </script>
		<?php 
        wp_enqueue_script('the_champ_sl_common', plugins_url('js/front/social_login/common.js', __FILE__), array('jquery'), THE_CHAMP_SS_VERSION, $inFooter);
        wp_enqueue_script('thickbox');
        wp_enqueue_style('thickbox');
    }
    // Google+ scripts
    if (the_champ_social_login_provider_enabled('google') && !is_user_logged_in()) {
        $googleKey = isset($theChampLoginOptions['google_key']) ? $theChampLoginOptions['google_key'] : '';
        ?>

		<script>var theChampGoogleKey = '<?php 
        echo $googleKey;
        ?>
'; var theChampGoogleErrorMessage = '<?php 
        echo htmlspecialchars(__('Follow steps 11 and 12 at GooglePlus app configuration page, about to open', 'Super-Socializer'), ENT_QUOTES);
        ?>
' </script>
		<?php 
        wp_enqueue_script('the_champ_sl_google', plugins_url('js/front/social_login/google.js', __FILE__), array('jquery'), THE_CHAMP_SS_VERSION, $inFooter);
    }
    // Linkedin scripts
    if (the_champ_social_login_provider_enabled('linkedin') && !is_user_logged_in()) {
        ?>

		<script type="text/javascript" src="//platform.linkedin.com/in.js">
		  api_key: <?php 
        echo isset($theChampLoginOptions['li_key']) ? $theChampLoginOptions['li_key'] : '';
        ?>

		  
		  onLoad: theChampLinkedInOnLoad
		</script>
		<?php 
        wp_enqueue_script('the_champ_sl_linkedin', plugins_url('js/front/social_login/linkedin.js', __FILE__), array('jquery'), THE_CHAMP_SS_VERSION, $inFooter);
    }
    // Vkontakte scripts
    if (the_champ_social_login_provider_enabled('vkontakte') && !is_user_logged_in()) {
        ?>

		<script> var theChampVkKey = '<?php 
        echo isset($theChampLoginOptions["vk_key"]) && $theChampLoginOptions["vk_key"] != "" ? $theChampLoginOptions["vk_key"] : 0;
        ?>
' </script>
		<?php 
        wp_enqueue_script('the_champ_sl_vkontakte', plugins_url('js/front/social_login/vkontakte.js', __FILE__), array('jquery'), THE_CHAMP_SS_VERSION, $inFooter);
    }
    // Instagram scripts
    if (the_champ_social_login_provider_enabled('instagram')) {
        ?>

		<script> var theChampInstaId = '<?php 
        echo isset($theChampLoginOptions["insta_id"]) && $theChampLoginOptions["insta_id"] != "" ? $theChampLoginOptions["insta_id"] : 0;
        ?>
'; var theChampTwitterRedirect = '<?php 
        echo urlencode(the_champ_get_valid_url(html_entity_decode(esc_url(the_champ_get_http() . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]))));
        ?>
'; </script>
		<?php 
        wp_enqueue_script('the_champ_sl_instagram', plugins_url('js/front/social_login/instagram.js', __FILE__), false, THE_CHAMP_SS_VERSION, $inFooter);
    }
    // Facebook scripts
    if (the_champ_facebook_plugin_enabled()) {
        global $heateor_fcn_options;
        ?>

		<script> var theChampFBKey = '<?php 
        echo $fbKey;
        ?>
', theChampFBLang = '<?php 
        echo isset($theChampFacebookOptions["comment_lang"]) && $theChampFacebookOptions["comment_lang"] != '' ? $theChampFacebookOptions["comment_lang"] : "en_US";
        ?>
', theChampFbLikeMycred = <?php 
        echo defined('HEATEOR_SOCIAL_SHARE_MYCRED_INTEGRATION_VERSION') && the_champ_facebook_like_rec_enabled() ? 1 : 0;
        ?>
, theChampSsga = <?php 
        echo defined('HEATEOR_SHARING_GOOGLE_ANALYTICS_VERSION') ? 1 : 0;
        ?>
, theChampCommentNotification = <?php 
        echo isset($heateor_fcn_options) || function_exists('heateor_ss_check_querystring') || function_exists('the_champ_check_querystring') ? 1 : 0;
        ?>
, theChampFbIosLogin = <?php 
        echo !is_user_logged_in() && isset($_GET['code']) && esc_attr($_GET['code']) != '' ? 1 : 0;
        ?>
; </script>
		<?php 
        add_action('wp_footer', 'the_champ_fb_root_div');
        wp_enqueue_script('the_champ_fb_sdk', plugins_url('js/front/facebook/sdk.js', __FILE__), false, THE_CHAMP_SS_VERSION, $inFooter);
    }
    if (the_champ_social_login_provider_enabled('facebook') && !is_user_logged_in()) {
        wp_enqueue_script('the_champ_sl_facebook', plugins_url('js/front/social_login/facebook.js', __FILE__), array('jquery'), THE_CHAMP_SS_VERSION, $inFooter);
    }
    // Social commenting
    if (the_champ_social_commenting_enabled()) {
        global $post;
        if ($post) {
            $postMeta = get_post_meta($post->ID, '_the_champ_meta', true);
            if (isset($theChampFacebookOptions['enable_' . $post->post_type]) && !(isset($postMeta) && isset($postMeta['fb_comments']) && $postMeta['fb_comments'] == 1)) {
                if (isset($theChampFacebookOptions['urlToComment']) && $theChampFacebookOptions['urlToComment'] != '') {
                    $commentUrl = $theChampFacebookOptions['urlToComment'];
                } elseif (isset($post->ID) && $post->ID) {
                    $commentUrl = get_permalink($post->ID);
                } else {
                    $commentUrl = html_entity_decode(esc_url(the_champ_get_http() . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]));
                }
                $commentingTabsOrder = $theChampFacebookOptions['commenting_order'] != '' ? $theChampFacebookOptions['commenting_order'] : 'wordpress,facebook,googleplus,disqus';
                $commentingTabsOrder = explode(',', str_replace('facebook', 'fb', $commentingTabsOrder));
                $enabledTabs = array();
                foreach ($commentingTabsOrder as $tab) {
                    $tab = trim($tab);
                    if ($tab == 'wordpress') {
                        $enabledTabs[] = 'wordpress';
                    } elseif (isset($theChampFacebookOptions['enable_' . $tab . 'comments'])) {
                        $enabledTabs[] = $tab;
                    }
                }
                $labels = array();
                $labels['wordpress'] = $theChampFacebookOptions['label_wordpress_comments'] != '' ? htmlspecialchars($theChampFacebookOptions['label_wordpress_comments'], ENT_QUOTES) : 'Default Comments';
                $commentsCount = wp_count_comments($post->ID);
                $labels['wordpress'] .= ' (' . ($commentsCount && isset($commentsCount->approved) ? $commentsCount->approved : '') . ')';
                $labels['fb'] = $theChampFacebookOptions['label_facebook_comments'] != '' ? htmlspecialchars($theChampFacebookOptions['label_facebook_comments'], ENT_QUOTES) : 'Facebook Comments';
                $labels['fb'] .= ' (<fb:comments-count href=' . $commentUrl . '></fb:comments-count>)';
                $labels['googleplus'] = $theChampFacebookOptions['label_googleplus_comments'] != '' ? htmlspecialchars($theChampFacebookOptions['label_googleplus_comments'], ENT_QUOTES) : 'GooglePlus Comments';
                $labels['disqus'] = $theChampFacebookOptions['label_disqus_comments'] != '' ? htmlspecialchars($theChampFacebookOptions['label_disqus_comments'], ENT_QUOTES) : 'Disqus Comments';
                ?>

				<script>var theChampFBCommentUrl = '<?php 
                echo $commentUrl;
                ?>
'; var theChampFBCommentColor = '<?php 
                echo isset($theChampFacebookOptions['comment_color']) && $theChampFacebookOptions['comment_color'] != '' ? $theChampFacebookOptions["comment_color"] : '';
                ?>
'; var theChampFBCommentNumPosts = '<?php 
                echo isset($theChampFacebookOptions['comment_numposts']) && $theChampFacebookOptions['comment_numposts'] != '' ? $theChampFacebookOptions["comment_numposts"] : '';
                ?>
'; var theChampFBCommentWidth = '<?php 
                echo isset($theChampFacebookOptions['comment_width']) && $theChampFacebookOptions['comment_width'] != '' ? $theChampFacebookOptions["comment_width"] : '100%';
                ?>
'; var theChampFBCommentOrderby = '<?php 
                echo isset($theChampFacebookOptions['comment_orderby']) && $theChampFacebookOptions['comment_orderby'] != '' ? $theChampFacebookOptions["comment_orderby"] : '';
                ?>
'; var theChampCommentingTabs = "<?php 
                echo isset($theChampFacebookOptions['commenting_order']) ? $theChampFacebookOptions['commenting_order'] : '';
                ?>
", theChampGpCommentsUrl = '<?php 
                echo isset($theChampFacebookOptions['gpcomments_url']) && $theChampFacebookOptions['gpcomments_url'] != '' ? $theChampFacebookOptions['gpcomments_url'] : $commentUrl;
                ?>
', theChampDisqusShortname = '<?php 
                echo isset($theChampFacebookOptions['dq_shortname']) ? $theChampFacebookOptions['dq_shortname'] : '';
                ?>
', theChampScEnabledTabs = '<?php 
                echo implode(',', $enabledTabs);
                ?>
', theChampScLabel = '<?php 
                echo $theChampFacebookOptions['commenting_label'] != '' ? htmlspecialchars($theChampFacebookOptions['commenting_label'], ENT_QUOTES) : __('Leave a reply', 'Super-Socializer');
                ?>
', theChampScTabLabels = <?php 
                echo json_encode($labels);
                ?>
, theChampGpCommentsWidth = <?php 
                echo isset($theChampFacebookOptions['gpcomments_width']) && $theChampFacebookOptions['gpcomments_width'] != '' ? $theChampFacebookOptions['gpcomments_width'] : 0;
                ?>
, theChampCommentingId = '<?php 
                echo isset($theChampFacebookOptions['commenting_id']) && $theChampFacebookOptions['commenting_id'] != '' ? $theChampFacebookOptions['commenting_id'] : 'respond';
                ?>
'</script>
				<?php 
                wp_enqueue_script('the_champ_fb_commenting', plugins_url('js/front/facebook/commenting.js', __FILE__), false, THE_CHAMP_SS_VERSION, $inFooter);
            }
        }
    }
    // sharing script
    if (the_champ_social_sharing_enabled() || the_champ_social_counter_enabled() && the_champ_vertical_social_counter_enabled()) {
        global $theChampSharingOptions, $theChampCounterOptions, $post;
        ?>

		<script> var theChampSharingAjaxUrl = '<?php 
        echo get_admin_url();
        ?>
admin-ajax.php', theChampCloseIconPath = '<?php 
        echo plugins_url('images/close.png', __FILE__);
        ?>
', theChampPluginIconPath = '<?php 
        echo plugins_url('images/logo.png', __FILE__);
        ?>
', theChampHorizontalSharingCountEnable = <?php 
        echo isset($theChampSharingOptions['enable']) && isset($theChampSharingOptions['hor_enable']) && (isset($theChampSharingOptions['horizontal_counts']) || isset($theChampSharingOptions['horizontal_total_shares'])) ? 1 : 0;
        ?>
, theChampVerticalSharingCountEnable = <?php 
        echo isset($theChampSharingOptions['enable']) && isset($theChampSharingOptions['vertical_enable']) && (isset($theChampSharingOptions['vertical_counts']) || isset($theChampSharingOptions['vertical_total_shares'])) ? 1 : 0;
        ?>
, theChampSharingOffset = <?php 
        echo isset($theChampSharingOptions['alignment']) && $theChampSharingOptions['alignment'] != '' && isset($theChampSharingOptions[$theChampSharingOptions['alignment'] . '_offset']) && $theChampSharingOptions[$theChampSharingOptions['alignment'] . '_offset'] != '' ? $theChampSharingOptions[$theChampSharingOptions['alignment'] . '_offset'] : 0;
        ?>
, theChampCounterOffset = <?php 
        echo isset($theChampCounterOptions['alignment']) && $theChampCounterOptions['alignment'] != '' && isset($theChampCounterOptions[$theChampCounterOptions['alignment'] . '_offset']) && $theChampCounterOptions[$theChampCounterOptions['alignment'] . '_offset'] != '' ? $theChampCounterOptions[$theChampCounterOptions['alignment'] . '_offset'] : 0;
        ?>
 </script>
		<?php 
        wp_enqueue_script('the_champ_share_counts', plugins_url('js/front/sharing/sharing.js', __FILE__), array('jquery'), THE_CHAMP_SS_VERSION, $inFooter);
    }
}