function google_plusone_add_js in Google Plus One Button | Google+ Badge 6
Add the external Google +1 JavaScript that will render the buttons.
3 calls to google_plusone_add_js()
- google_plusone_block in ./
google_plusone.module - Implements hook_block().
- theme_google_plusone_badge in ./
google_plusone.module - Returns HTML for the Google +1 badge.
- theme_google_plusone_button in ./
google_plusone.module - Returns HTML for the Google +1 button.
File
- ./
google_plusone.module, line 224
Code
function google_plusone_add_js() {
static $js_added;
// Adds only once the main script.
if ($js_added) {
return;
}
$default_advanced = array(
'lang' => '',
'scope_location' => 'footer',
'parsetags' => 'onload',
'async' => 1,
);
$config = array_merge($default_advanced, variable_get('google_plusone_advanced_settings', array()));
$script_options = array();
if (!empty($config['lang'])) {
$lang = google_plusone_button_negotiate_language($config['lang']);
$script_options[] = 'lang:"' . $lang . '"';
}
if ($config['parsetags'] !== 'onload') {
$script_options[] = 'parsetags:"' . $config['parsetags'] . '"';
}
if ($config['async']) {
$script = empty($script_options) ? '' : "window.___gcfg = {" . implode(',', $script_options) . "};";
$script .= "(function() {";
$script .= "var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;";
$script .= "po.src = 'https://apis.google.com/js/plusone.js';";
$script .= "var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);";
$script .= "})();";
drupal_add_js($script, 'inline', $config['scope_location']);
}
else {
$script = '<script type="text/javascript" src="https://apis.google.com/js/plusone.js">';
$script .= empty($script_options) ? '' : '{' . implode(',', $script_options) . '}';
$script .= '</script>';
drupal_set_html_head($script);
}
$js_added = TRUE;
}