Version Description
Release Date: October 30th, 2014
-
Bugfixes:
- Fixes a possible JavaScript conflict within the tracking code.
- Makes sure translations are loaded correctly.
-
Enhancements:
- Improved UX for help texts in form.
- Added "Google Analytics by Yoast Premium" to the extensions page.
- Makes sure the user returns to the original settings tab after saving.
- Added a filter
wp_nav_menuto enable tracking outbound links from the menu. - Added a filter
wp_list_bookmarksto enable tracking for blogroll widgets.
Download this release
Release Info
| Developer | joostdevalk |
| Plugin | |
| Version | 5.1 |
| Comparing to | |
| See all releases | |
Code changes from version 5.0.7 to 5.1
- admin/class-admin-ga-js.php +0 -2
- admin/class-admin.php +115 -37
- admin/pages/extensions.php +39 -38
- admin/pages/settings.php +3 -0
- admin/views/content-footer.php +3 -3
- css/yoast_ga_styles.css +4 -0
- css/yoast_ga_styles.min.css +1 -1
- frontend/class-frontend.php +4 -4
- frontend/class-ga-js.php +3 -3
- frontend/class-universal.php +8 -9
- frontend/views/tracking-ga-js.php +11 -11
- frontend/views/tracking-universal.php +2 -2
- googleanalytics.php +8 -6
- img/question-mark.png +0 -0
- includes/class-autoload.php +57 -0
- includes/class-options.php +1 -1
- js/jquery.qtip.min.js +21 -0
- js/yoast_ga_admin.js +27 -0
- js/yoast_ga_admin.min.js +1 -1
- languages/google-analytics-for-wordpress.pot +84 -76
- readme.txt +17 -2
admin/class-admin-ga-js.php
CHANGED
|
@@ -13,6 +13,4 @@ if ( ! class_exists( 'Yoast_GA_Admin_GA_JS' ) ) {
|
|
| 13 |
|
| 14 |
}
|
| 15 |
|
| 16 |
-
global $yoast_ga_admin_ga_js;
|
| 17 |
-
$yoast_ga_admin_ga_js = new Yoast_GA_Admin_GA_JS;
|
| 18 |
}
|
| 13 |
|
| 14 |
}
|
| 15 |
|
|
|
|
|
|
|
| 16 |
}
|
admin/class-admin.php
CHANGED
|
@@ -35,11 +35,6 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 35 |
add_action( 'admin_notices', array( $this, 'config_warning' ) );
|
| 36 |
}
|
| 37 |
|
| 38 |
-
// Require analytics class
|
| 39 |
-
if ( ! class_exists( 'Yoast_Google_Analytics' ) ) {
|
| 40 |
-
require_once 'class-google-analytics.php';
|
| 41 |
-
}
|
| 42 |
-
|
| 43 |
if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
|
| 44 |
|
| 45 |
if ( ! function_exists( 'wp_verify_nonce' ) ) {
|
|
@@ -53,16 +48,14 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 53 |
|
| 54 |
// Post submitted and verified with our nonce
|
| 55 |
$this->save_settings( $_POST );
|
| 56 |
-
|
| 57 |
-
add_settings_error(
|
| 58 |
-
'yoast_google_analytics',
|
| 59 |
-
'yoast_google_analytics',
|
| 60 |
-
__( 'Settings saved!', 'google-analytics-for-wordpress' ),
|
| 61 |
-
'updated'
|
| 62 |
-
);
|
| 63 |
}
|
| 64 |
}
|
| 65 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 66 |
$this->connect_with_google_analytics();
|
| 67 |
}
|
| 68 |
|
|
@@ -80,7 +73,9 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 80 |
*/
|
| 81 |
public function save_settings( $data ) {
|
| 82 |
foreach ( $data as $key => $value ) {
|
| 83 |
-
$
|
|
|
|
|
|
|
| 84 |
}
|
| 85 |
|
| 86 |
// Check checkboxes, on a uncheck they won't be posted to this function
|
|
@@ -92,11 +87,23 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 92 |
}
|
| 93 |
|
| 94 |
if ( $this->update_option( $this->options ) ) {
|
| 95 |
-
// Success
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 96 |
} else {
|
| 97 |
-
// Fail
|
|
|
|
|
|
|
|
|
|
|
|
|
| 98 |
}
|
| 99 |
|
|
|
|
|
|
|
|
|
|
| 100 |
}
|
| 101 |
|
| 102 |
/**
|
|
@@ -106,7 +113,7 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 106 |
*
|
| 107 |
* @return array $links
|
| 108 |
*/
|
| 109 |
-
function add_action_links( $links ) {
|
| 110 |
// add link to knowledgebase
|
| 111 |
// @todo UTM link fix
|
| 112 |
$faq_link = '<a title="Yoast Knowledge Base" href="http://kb.yoast.com/category/43-google-analytics-for-wordpress">' . __( 'FAQ', 'google-analytics-for-wordpress' ) . '</a>';
|
|
@@ -235,6 +242,8 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 235 |
* Add the scripts to the admin head
|
| 236 |
*/
|
| 237 |
public function enqueue_scripts() {
|
|
|
|
|
|
|
| 238 |
wp_enqueue_script( 'yoast_ga_admin', $this->plugin_url . 'js/yoast_ga_admin' . $this->file_ext( '.js' ) );
|
| 239 |
|
| 240 |
// Eqneue the chosen js file
|
|
@@ -260,7 +269,8 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 260 |
* Load the page of a menu item in the GA plugin
|
| 261 |
*/
|
| 262 |
public function load_page() {
|
| 263 |
-
|
|
|
|
| 264 |
|
| 265 |
if ( isset( $_GET['page'] ) ) {
|
| 266 |
switch ( $_GET['page'] ) {
|
|
@@ -352,19 +362,30 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 352 |
$input .= '<label class="ga-form ga-form-' . $type . '-label" id="yoast-ga-form-label-' . $type . '-textlabel-' . $this->form_namespace . '-' . $id . '" for="yoast-ga-form-' . $type . '-' . $this->form_namespace . '-' . $id . '" />' . $text_label . '</label>';
|
| 353 |
}
|
| 354 |
|
| 355 |
-
$input .= '</div>';
|
| 356 |
-
|
| 357 |
// If we get a description, append it to this select field in a new row
|
| 358 |
if ( ! is_null( $description ) ) {
|
| 359 |
-
$input .=
|
| 360 |
-
$input .= '<label class="ga-form ga-form-select-label ga-form-label-left" id="yoast-ga-form-description-select-' . $this->form_namespace . '-' . $id . '" /> </label>';
|
| 361 |
-
$input .= '<span class="ga-form ga-form-description">' . $description . '</span>';
|
| 362 |
-
$input .= '</div>';
|
| 363 |
}
|
| 364 |
|
|
|
|
|
|
|
| 365 |
return $input;
|
| 366 |
}
|
| 367 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 368 |
/**
|
| 369 |
* Generate a select box
|
| 370 |
*
|
|
@@ -410,16 +431,13 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 410 |
}
|
| 411 |
}
|
| 412 |
$select .= '</select>';
|
| 413 |
-
$select .= '</div>';
|
| 414 |
|
| 415 |
-
// If we get a description, append it to this select field in a new row
|
| 416 |
if ( ! is_null( $description ) ) {
|
| 417 |
-
$select .=
|
| 418 |
-
$select .= '<label class="ga-form ga-form-select-label ga-form-label-left" id="yoast-ga-form-description-select-' . $this->form_namespace . '-' . $id . '" /> </label>';
|
| 419 |
-
$select .= '<span class="ga-form ga-form-description">' . __( $description, 'google-analytics-for-wordpress' ) . '</span>';
|
| 420 |
-
$select .= '</div>';
|
| 421 |
}
|
| 422 |
|
|
|
|
|
|
|
| 423 |
return $select;
|
| 424 |
}
|
| 425 |
|
|
@@ -446,16 +464,13 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 446 |
$text .= '<label class="ga-form ga-form-select-label ga-form-label-left" id="yoast-ga-form-label-select-' . $this->form_namespace . '-' . $id . '" />' . __( $title, 'google-analytics-for-wordpress' ) . ':</label>';
|
| 447 |
}
|
| 448 |
$text .= '<textarea rows="5" cols="60" name="' . $name . '" id="yoast-ga-form-textarea-' . $this->form_namespace . '-' . $id . '">' . stripslashes( $this->options[$name] ) . '</textarea>';
|
| 449 |
-
$text .= '</div>';
|
| 450 |
|
| 451 |
-
// If we get a description, append it to this select field in a new row
|
| 452 |
if ( ! is_null( $description ) ) {
|
| 453 |
-
$text .=
|
| 454 |
-
$text .= '<label class="ga-form ga-form-select-label ga-form-label-left" id="yoast-ga-form-description-select-' . $this->form_namespace . '-' . $id . '" /> </label>';
|
| 455 |
-
$text .= '<span class="ga-form ga-form-description">' . __( $description, 'google-analytics-for-wordpress' ) . '</span>';
|
| 456 |
-
$text .= '</div>';
|
| 457 |
}
|
| 458 |
|
|
|
|
|
|
|
| 459 |
return $text;
|
| 460 |
}
|
| 461 |
|
|
@@ -592,8 +607,71 @@ if ( ! class_exists( 'Yoast_GA_Admin' ) ) {
|
|
| 592 |
require 'views/content-footer.php';
|
| 593 |
}
|
| 594 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 595 |
}
|
| 596 |
|
| 597 |
-
global $yoast_ga_admin;
|
| 598 |
-
$yoast_ga_admin = new Yoast_GA_Admin;
|
| 599 |
}
|
| 35 |
add_action( 'admin_notices', array( $this, 'config_warning' ) );
|
| 36 |
}
|
| 37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
|
| 39 |
|
| 40 |
if ( ! function_exists( 'wp_verify_nonce' ) ) {
|
| 48 |
|
| 49 |
// Post submitted and verified with our nonce
|
| 50 |
$this->save_settings( $_POST );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 51 |
}
|
| 52 |
}
|
| 53 |
|
| 54 |
+
/**
|
| 55 |
+
* Show the notifications if we have one
|
| 56 |
+
*/
|
| 57 |
+
$this->show_notification( 'ga_notifications' );
|
| 58 |
+
|
| 59 |
$this->connect_with_google_analytics();
|
| 60 |
}
|
| 61 |
|
| 73 |
*/
|
| 74 |
public function save_settings( $data ) {
|
| 75 |
foreach ( $data as $key => $value ) {
|
| 76 |
+
if ( $key != 'return_tab' ) {
|
| 77 |
+
$this->options[$key] = $value;
|
| 78 |
+
}
|
| 79 |
}
|
| 80 |
|
| 81 |
// Check checkboxes, on a uncheck they won't be posted to this function
|
| 87 |
}
|
| 88 |
|
| 89 |
if ( $this->update_option( $this->options ) ) {
|
| 90 |
+
// Success, add a new notification
|
| 91 |
+
$this->add_notification( 'ga_notifications', array(
|
| 92 |
+
'type' => 'success',
|
| 93 |
+
'description' => __( 'Settings saved!', 'google-analytics-for-wordpress' ),
|
| 94 |
+
) );
|
| 95 |
+
|
| 96 |
} else {
|
| 97 |
+
// Fail, add a new notification
|
| 98 |
+
$this->add_notification( 'ga_notifications', array(
|
| 99 |
+
'type' => 'error',
|
| 100 |
+
'description' => __( 'There where no changes to save, please try again.', 'google-analytics-for-wordpress' ),
|
| 101 |
+
) );
|
| 102 |
}
|
| 103 |
|
| 104 |
+
#redirect
|
| 105 |
+
wp_redirect( admin_url( 'admin.php' ) . '?page=yst_ga_settings#top#' . $data['return_tab'], 301 );
|
| 106 |
+
exit;
|
| 107 |
}
|
| 108 |
|
| 109 |
/**
|
| 113 |
*
|
| 114 |
* @return array $links
|
| 115 |
*/
|
| 116 |
+
public function add_action_links( $links ) {
|
| 117 |
// add link to knowledgebase
|
| 118 |
// @todo UTM link fix
|
| 119 |
$faq_link = '<a title="Yoast Knowledge Base" href="http://kb.yoast.com/category/43-google-analytics-for-wordpress">' . __( 'FAQ', 'google-analytics-for-wordpress' ) . '</a>';
|
| 242 |
* Add the scripts to the admin head
|
| 243 |
*/
|
| 244 |
public function enqueue_scripts() {
|
| 245 |
+
wp_enqueue_script( 'jquery-qtip', $this->plugin_url . 'js/jquery.qtip.min.js', array( 'jquery' ), '1.0.0-RC3', true );
|
| 246 |
+
|
| 247 |
wp_enqueue_script( 'yoast_ga_admin', $this->plugin_url . 'js/yoast_ga_admin' . $this->file_ext( '.js' ) );
|
| 248 |
|
| 249 |
// Eqneue the chosen js file
|
| 269 |
* Load the page of a menu item in the GA plugin
|
| 270 |
*/
|
| 271 |
public function load_page() {
|
| 272 |
+
global $yoast_ga_admin_ga_js;
|
| 273 |
+
$yoast_ga_admin_ga_js = new Yoast_GA_Admin_GA_JS;
|
| 274 |
|
| 275 |
if ( isset( $_GET['page'] ) ) {
|
| 276 |
switch ( $_GET['page'] ) {
|
| 362 |
$input .= '<label class="ga-form ga-form-' . $type . '-label" id="yoast-ga-form-label-' . $type . '-textlabel-' . $this->form_namespace . '-' . $id . '" for="yoast-ga-form-' . $type . '-' . $this->form_namespace . '-' . $id . '" />' . $text_label . '</label>';
|
| 363 |
}
|
| 364 |
|
|
|
|
|
|
|
| 365 |
// If we get a description, append it to this select field in a new row
|
| 366 |
if ( ! is_null( $description ) ) {
|
| 367 |
+
$input .= $this->show_help( $id, $description );
|
|
|
|
|
|
|
|
|
|
| 368 |
}
|
| 369 |
|
| 370 |
+
$input .= '</div>';
|
| 371 |
+
|
| 372 |
return $input;
|
| 373 |
}
|
| 374 |
|
| 375 |
+
/**
|
| 376 |
+
* Show a question mark with help
|
| 377 |
+
*
|
| 378 |
+
* @param string $id
|
| 379 |
+
* @param string $description
|
| 380 |
+
*
|
| 381 |
+
* @return string
|
| 382 |
+
*/
|
| 383 |
+
private function show_help( $id, $description ) {
|
| 384 |
+
$help = '<img src="' . plugins_url( 'img/question-mark.png', GAWP_FILE ) . '" class="alignleft yoast_help" id="' . esc_attr( $id . 'help' ) . '" alt="' . esc_attr( $description ) . '" />';
|
| 385 |
+
|
| 386 |
+
return $help;
|
| 387 |
+
}
|
| 388 |
+
|
| 389 |
/**
|
| 390 |
* Generate a select box
|
| 391 |
*
|
| 431 |
}
|
| 432 |
}
|
| 433 |
$select .= '</select>';
|
|
|
|
| 434 |
|
|
|
|
| 435 |
if ( ! is_null( $description ) ) {
|
| 436 |
+
$select .= $this->show_help( $id, $description );
|
|
|
|
|
|
|
|
|
|
| 437 |
}
|
| 438 |
|
| 439 |
+
$select .= '</div>';
|
| 440 |
+
|
| 441 |
return $select;
|
| 442 |
}
|
| 443 |
|
| 464 |
$text .= '<label class="ga-form ga-form-select-label ga-form-label-left" id="yoast-ga-form-label-select-' . $this->form_namespace . '-' . $id . '" />' . __( $title, 'google-analytics-for-wordpress' ) . ':</label>';
|
| 465 |
}
|
| 466 |
$text .= '<textarea rows="5" cols="60" name="' . $name . '" id="yoast-ga-form-textarea-' . $this->form_namespace . '-' . $id . '">' . stripslashes( $this->options[$name] ) . '</textarea>';
|
|
|
|
| 467 |
|
|
|
|
| 468 |
if ( ! is_null( $description ) ) {
|
| 469 |
+
$text .= $this->show_help( $id, $description );
|
|
|
|
|
|
|
|
|
|
| 470 |
}
|
| 471 |
|
| 472 |
+
$text .= '</div>';
|
| 473 |
+
|
| 474 |
return $text;
|
| 475 |
}
|
| 476 |
|
| 607 |
require 'views/content-footer.php';
|
| 608 |
}
|
| 609 |
|
| 610 |
+
/**
|
| 611 |
+
* Returns a list of all available extensions
|
| 612 |
+
*
|
| 613 |
+
* @return array
|
| 614 |
+
*/
|
| 615 |
+
public function get_extensions() {
|
| 616 |
+
$extensions = array(
|
| 617 |
+
'ga_premium' => (object) array(
|
| 618 |
+
'url' => 'https://yoast.com/wordpress/plugins/google-analytics/',
|
| 619 |
+
'title' => __( 'Google Analytics by Yoast Premium', 'google-analytics-for-wordpress' ),
|
| 620 |
+
'desc' => __( 'The premium version of Google Analytics for WordPress with more features & support.', 'google-analytics-for-wordpress' ),
|
| 621 |
+
'status' => 'uninstalled',
|
| 622 |
+
),
|
| 623 |
+
'ecommerce' => (object) array(
|
| 624 |
+
'url' => 'https://yoast.com/wordpress/plugins/google-analytics/',
|
| 625 |
+
'title' => __( 'Google Analytics', 'google-analytics-for-wordpress' ) . '<br />' . __( 'E-Commerce tracking', 'google-analytics-for-wordpress' ),
|
| 626 |
+
'desc' => __( 'Track your E-Commerce data and transactions with this E-Commerce extension for Google Analytics.', 'google-analytics-for-wordpress' ),
|
| 627 |
+
'status' => 'uninstalled',
|
| 628 |
+
),
|
| 629 |
+
);
|
| 630 |
+
|
| 631 |
+
$extensions = apply_filters( 'yst_ga_extension_status', $extensions );
|
| 632 |
+
|
| 633 |
+
return $extensions;
|
| 634 |
+
}
|
| 635 |
+
|
| 636 |
+
/**
|
| 637 |
+
* Add a notification to the notification transient
|
| 638 |
+
*
|
| 639 |
+
* @param $transient_name
|
| 640 |
+
* @param $settings
|
| 641 |
+
*/
|
| 642 |
+
private function add_notification( $transient_name, $settings ) {
|
| 643 |
+
set_transient( $transient_name, $settings, MINUTE_IN_SECONDS );
|
| 644 |
+
}
|
| 645 |
+
|
| 646 |
+
/**
|
| 647 |
+
* Show the notification that should be set, after showing the notification this function unset the transient
|
| 648 |
+
*
|
| 649 |
+
* @param string $transient_name The name of the transient which contains the notification
|
| 650 |
+
*/
|
| 651 |
+
public function show_notification( $transient_name ) {
|
| 652 |
+
$transient = get_transient( $transient_name );
|
| 653 |
+
|
| 654 |
+
if ( isset( $transient['type'] ) && isset( $transient['description'] ) ) {
|
| 655 |
+
if ( $transient['type'] == 'success' ) {
|
| 656 |
+
add_settings_error(
|
| 657 |
+
'yoast_google_analytics',
|
| 658 |
+
'yoast_google_analytics',
|
| 659 |
+
$transient['description'],
|
| 660 |
+
'updated'
|
| 661 |
+
);
|
| 662 |
+
} else {
|
| 663 |
+
add_settings_error(
|
| 664 |
+
'yoast_google_analytics',
|
| 665 |
+
'yoast_google_analytics',
|
| 666 |
+
$transient['description'],
|
| 667 |
+
'error'
|
| 668 |
+
);
|
| 669 |
+
}
|
| 670 |
+
|
| 671 |
+
delete_transient( $transient_name );
|
| 672 |
+
}
|
| 673 |
+
}
|
| 674 |
+
|
| 675 |
}
|
| 676 |
|
|
|
|
|
|
|
| 677 |
}
|
admin/pages/extensions.php
CHANGED
|
@@ -5,16 +5,7 @@ echo $yoast_ga_admin->content_head();
|
|
| 5 |
|
| 6 |
$has_extensions = false;
|
| 7 |
|
| 8 |
-
$extensions =
|
| 9 |
-
'ecommerce' => (object) array(
|
| 10 |
-
'url' => 'https://yoast.com/wordpress/plugins/google-analytics/',
|
| 11 |
-
'title' => __( 'Google Analytics', 'google-analytics-for-wordpress' ) . '<br />' . __( 'E-Commerce tracking', 'google-analytics-for-wordpress' ),
|
| 12 |
-
'desc' => __( 'Track your E-Commerce data and transactions with this E-Commerce extension for Google Analytics.', 'google-analytics-for-wordpress' ),
|
| 13 |
-
'status' => 'uninstalled',
|
| 14 |
-
),
|
| 15 |
-
);
|
| 16 |
-
|
| 17 |
-
$extensions = apply_filters( 'yst_ga_extension_status', $extensions );
|
| 18 |
?>
|
| 19 |
<h2 id="yoast_ga_title"><?php echo __( 'Yoast Google Analytics: Extensions', 'google-analytics-for-wordpress' ); ?></h2>
|
| 20 |
|
|
@@ -24,42 +15,52 @@ $extensions = apply_filters( 'yst_ga_extension_status', $extensions );
|
|
| 24 |
</h2>
|
| 25 |
<div class="tabwrapper">
|
| 26 |
<div id="extensions" class="wpseotab gatab">
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
-
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
|
| 34 |
-
|
| 35 |
-
|
| 36 |
-
|
| 37 |
|
| 38 |
-
|
| 39 |
|
| 40 |
-
|
| 41 |
-
|
| 42 |
-
|
| 43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
<a href="#top#licenses" class="activate-link button-primary">Activate License</a>
|
| 45 |
-
<?php
|
|
|
|
|
|
|
| 46 |
<button class="button-primary installed">Installed</button>
|
| 47 |
-
<?php
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
</div>
|
| 54 |
-
<div id="licenses" class="wpseotab gatab">
|
| 55 |
<?php
|
| 56 |
-
if ( ! $has_extensions ) {
|
| 57 |
-
echo '<p>' . __( 'You have not installed any extensions for Yoast Google Analytics, so there are no licenses to activate.', 'google-analytics-for-wordpress' ) . '</p>';
|
| 58 |
-
} else {
|
| 59 |
-
do_action( 'yst_ga_show_license_form' );
|
| 60 |
}
|
| 61 |
?>
|
| 62 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 63 |
</div>
|
| 64 |
<div class="clear"></div>
|
| 65 |
|
| 5 |
|
| 6 |
$has_extensions = false;
|
| 7 |
|
| 8 |
+
$extensions = $yoast_ga_admin->get_extensions();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9 |
?>
|
| 10 |
<h2 id="yoast_ga_title"><?php echo __( 'Yoast Google Analytics: Extensions', 'google-analytics-for-wordpress' ); ?></h2>
|
| 11 |
|
| 15 |
</h2>
|
| 16 |
<div class="tabwrapper">
|
| 17 |
<div id="extensions" class="wpseotab gatab">
|
| 18 |
+
<?php
|
| 19 |
+
foreach ( $extensions as $name => $extension ) {
|
| 20 |
+
if ( 'uninstalled' !== $extension->status ) {
|
| 21 |
+
$has_extensions = true;
|
| 22 |
+
}
|
| 23 |
+
?>
|
| 24 |
+
<div class="extension <?php echo $name; ?>">
|
| 25 |
+
<a target="_blank" href="<?php echo $extension->url; ?>#utm_medium=banner&utm_source=gawp-config&utm_campaign=extension-page-banners">
|
| 26 |
+
<h3><?php echo $extension->title; ?></h3>
|
| 27 |
+
</a>
|
| 28 |
|
| 29 |
+
<p><?php echo $extension->desc; ?></p>
|
| 30 |
|
| 31 |
+
<p>
|
| 32 |
+
<?php
|
| 33 |
+
if ( 'uninstalled' == $extension->status ) {
|
| 34 |
+
?>
|
| 35 |
+
<a target="_blank" href="https://yoast.com/wordpress/plugins/ga-ecommerce-edd/#utm_medium=banner&utm_source=gawp-config&utm_campaign=extension-page-banners" class="button-primary">Get this extension</a>
|
| 36 |
+
<?php
|
| 37 |
+
} else {
|
| 38 |
+
if ( 'inactive' == $extension->status ) {
|
| 39 |
+
?>
|
| 40 |
<a href="#top#licenses" class="activate-link button-primary">Activate License</a>
|
| 41 |
+
<?php
|
| 42 |
+
} else {
|
| 43 |
+
?>
|
| 44 |
<button class="button-primary installed">Installed</button>
|
| 45 |
+
<?php
|
| 46 |
+
}
|
| 47 |
+
}
|
| 48 |
+
?>
|
| 49 |
+
</p>
|
| 50 |
+
</div>
|
|
|
|
|
|
|
| 51 |
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
| 52 |
}
|
| 53 |
?>
|
| 54 |
</div>
|
| 55 |
+
<div id="licenses" class="wpseotab gatab">
|
| 56 |
+
<?php
|
| 57 |
+
if ( ! $has_extensions ) {
|
| 58 |
+
echo '<p>' . __( 'You have not installed any extensions for Yoast Google Analytics, so there are no licenses to activate.', 'google-analytics-for-wordpress' ) . '</p>';
|
| 59 |
+
} else {
|
| 60 |
+
do_action( 'yst_ga_show_license_form' );
|
| 61 |
+
}
|
| 62 |
+
?>
|
| 63 |
+
</div>
|
| 64 |
</div>
|
| 65 |
<div class="clear"></div>
|
| 66 |
|
admin/pages/settings.php
CHANGED
|
@@ -13,12 +13,14 @@ settings_errors( 'yoast_google_analytics' );
|
|
| 13 |
<a class="nav-tab" id="general-tab" href="#top#general"><?php _e( 'General', 'google-analytics-for-wordpress' ); ?></a>
|
| 14 |
<a class="nav-tab" id="universal-tab" href="#top#universal"><?php _e( 'Universal', 'google-analytics-for-wordpress' ); ?></a>
|
| 15 |
<a class="nav-tab" id="advanced-tab" href="#top#advanced"><?php _e( 'Advanced', 'google-analytics-for-wordpress' ); ?></a>
|
|
|
|
| 16 |
<a class="nav-tab" id="debugmode-tab" href="#top#debugmode"><?php _e( 'Debug mode', 'google-analytics-for-wordpress' ); ?></a>
|
| 17 |
</h2>
|
| 18 |
|
| 19 |
<?php
|
| 20 |
echo $yoast_ga_admin->create_form( 'settings' );
|
| 21 |
?>
|
|
|
|
| 22 |
<div class="tabwrapper">
|
| 23 |
<div id="general" class="gatab">
|
| 24 |
<?php
|
|
@@ -94,6 +96,7 @@ echo $yoast_ga_admin->create_form( 'settings' );
|
|
| 94 |
do_action( 'yst_ga_advanced-tab' );
|
| 95 |
?>
|
| 96 |
</div>
|
|
|
|
| 97 |
<div id="debugmode" class="gatab">
|
| 98 |
<?php
|
| 99 |
echo '<h2>' . __( 'Debug settings', 'google-analytics-for-wordpress' ) . '</h2>';
|
| 13 |
<a class="nav-tab" id="general-tab" href="#top#general"><?php _e( 'General', 'google-analytics-for-wordpress' ); ?></a>
|
| 14 |
<a class="nav-tab" id="universal-tab" href="#top#universal"><?php _e( 'Universal', 'google-analytics-for-wordpress' ); ?></a>
|
| 15 |
<a class="nav-tab" id="advanced-tab" href="#top#advanced"><?php _e( 'Advanced', 'google-analytics-for-wordpress' ); ?></a>
|
| 16 |
+
<?php do_action( 'yst_ga_custom_tabs-tab' ); ?>
|
| 17 |
<a class="nav-tab" id="debugmode-tab" href="#top#debugmode"><?php _e( 'Debug mode', 'google-analytics-for-wordpress' ); ?></a>
|
| 18 |
</h2>
|
| 19 |
|
| 20 |
<?php
|
| 21 |
echo $yoast_ga_admin->create_form( 'settings' );
|
| 22 |
?>
|
| 23 |
+
<input type="hidden" name="return_tab" id="return_tab" value="general" />
|
| 24 |
<div class="tabwrapper">
|
| 25 |
<div id="general" class="gatab">
|
| 26 |
<?php
|
| 96 |
do_action( 'yst_ga_advanced-tab' );
|
| 97 |
?>
|
| 98 |
</div>
|
| 99 |
+
<?php do_action( 'yst_ga_custom_tabs-content' ); ?>
|
| 100 |
<div id="debugmode" class="gatab">
|
| 101 |
<?php
|
| 102 |
echo '<h2>' . __( 'Debug settings', 'google-analytics-for-wordpress' ) . '</h2>';
|
admin/views/content-footer.php
CHANGED
|
@@ -1,9 +1,9 @@
|
|
| 1 |
</div>
|
| 2 |
<div class="yoast-ga-banners">
|
| 3 |
<?php foreach ( $banners as $item ): ?>
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
<?php endforeach; ?>
|
| 8 |
</div>
|
| 9 |
</div>
|
| 1 |
</div>
|
| 2 |
<div class="yoast-ga-banners">
|
| 3 |
<?php foreach ( $banners as $item ): ?>
|
| 4 |
+
<p><a href="<?php echo $item['url']; ?>" target="_blank">
|
| 5 |
+
<img src="<?php echo $item['banner']; ?>" alt="<?php echo $item['title']; ?>" class="yoast-banner" border="0" width="250" />
|
| 6 |
+
</a></p>
|
| 7 |
<?php endforeach; ?>
|
| 8 |
</div>
|
| 9 |
</div>
|
css/yoast_ga_styles.css
CHANGED
|
@@ -171,3 +171,7 @@ select.ga-multiple {
|
|
| 171 |
padding-left: 16px;
|
| 172 |
font-size: 14px;
|
| 173 |
}
|
|
|
|
|
|
|
|
|
|
|
|
| 171 |
padding-left: 16px;
|
| 172 |
font-size: 14px;
|
| 173 |
}
|
| 174 |
+
|
| 175 |
+
.yoast_help {
|
| 176 |
+
margin: 2px 5px 0 5px;
|
| 177 |
+
}
|
css/yoast_ga_styles.min.css
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
h2#yoast_ga_title{padding:9px 15px 4px 0;font-size:23px;font-weight:400;line-height:29px}.nav-tab-wrapper{margin-bottom:0}.gatab{display:none}.gatab.active{display:block;padding:.5em .9em;border:1px solid #ddd;border-radius:0 3px 3px;background-color:#fff}.tabwrapper .gatab{padding:0;border:none;background:0 0}.tabwrapper .gatab h2{padding:9px 15px 4px 0;font-size:23px;font-weight:400}.ga-form-submit{margin-top:20px}.ga-form-label-left{float:left;width:250px;margin:0 0 0 5px;font-size:14px;font-weight:700;cursor:default}.ga-form-input{margin-top:10px}#yoast-ga-wrapper{display:table;width:auto;max-width:1150px}.yoast-ga-content{display:table-cell;min-width:850px;height:500px;margin:0;padding:0;vertical-align:top}.yoast-ga-banners{display:table-cell;width:261px;height:500px;margin:0;padding:0;padding:20px;vertical-align:top}.ga-form-input{display:table;margin-bottom:20px}.ga-form-table{display:table-cell}.ga-form-description{display:block;float:right;max-width:325px;color:#999}p.ga-topdescription{max-width:600px}#ga-promote{max-width:600px;padding-left:10px;border:1px solid #ccc;background-color:#fff}#yoast-ga-form-settings input[type=text]{width:325px}#enter_ua{display:none;margin-top:10px;padding-top:10px}#yoast-ga-form-text-settings-ga_general-manual_ua_code_field{margin-top:-30px}select.ga-multiple{width:300px;height:150px!important}.wpseotab .extension{float:left;box-sizing:border-box;width:350px;height:230px;margin:10px 20px 10px 0;border:1px solid #ccc}.wpseotab .extension p{margin:0;padding:10px}.wpseotab .extension h3{box-sizing:border-box;height:110px;margin:0;padding:20px 10px 0 120px;border-bottom:1px solid #ccc;background:#fff no-repeat left 10px;background-size:130px 100px}.wpseotab .extension button.installed{border-color:#00a000;background-color:#00a000;cursor:default}.wpseotab .extension .button-primary.activate-link{border-color:#f06000;background-color:#f18500}.extension a{text-decoration:none}.ecommerce h3{background-image:url(../img/eComm_130x100.png)!important}#ga-debug-info h3{height:30px;margin-top:10px;padding-left:16px;font-size:14px}
|
| 1 |
+
h2#yoast_ga_title{padding:9px 15px 4px 0;font-size:23px;font-weight:400;line-height:29px}.nav-tab-wrapper{margin-bottom:0}.gatab{display:none}.gatab.active{display:block;padding:.5em .9em;border:1px solid #ddd;border-radius:0 3px 3px;background-color:#fff}.tabwrapper .gatab{padding:0;border:none;background:0 0}.tabwrapper .gatab h2{padding:9px 15px 4px 0;font-size:23px;font-weight:400}.ga-form-submit{margin-top:20px}.ga-form-label-left{float:left;width:250px;margin:0 0 0 5px;font-size:14px;font-weight:700;cursor:default}.ga-form-input{margin-top:10px}#yoast-ga-wrapper{display:table;width:auto;max-width:1150px}.yoast-ga-content{display:table-cell;min-width:850px;height:500px;margin:0;padding:0;vertical-align:top}.yoast-ga-banners{display:table-cell;width:261px;height:500px;margin:0;padding:0;padding:20px;vertical-align:top}.ga-form-input{display:table;margin-bottom:20px}.ga-form-table{display:table-cell}.ga-form-description{display:block;float:right;max-width:325px;color:#999}p.ga-topdescription{max-width:600px}#ga-promote{max-width:600px;padding-left:10px;border:1px solid #ccc;background-color:#fff}#yoast-ga-form-settings input[type=text]{width:325px}#enter_ua{display:none;margin-top:10px;padding-top:10px}#yoast-ga-form-text-settings-ga_general-manual_ua_code_field{margin-top:-30px}select.ga-multiple{width:300px;height:150px!important}.wpseotab .extension{float:left;box-sizing:border-box;width:350px;height:230px;margin:10px 20px 10px 0;border:1px solid #ccc}.wpseotab .extension p{margin:0;padding:10px}.wpseotab .extension h3{box-sizing:border-box;height:110px;margin:0;padding:20px 10px 0 120px;border-bottom:1px solid #ccc;background:#fff no-repeat left 10px;background-size:130px 100px}.wpseotab .extension button.installed{border-color:#00a000;background-color:#00a000;cursor:default}.wpseotab .extension .button-primary.activate-link{border-color:#f06000;background-color:#f18500}.extension a{text-decoration:none}.ecommerce h3{background-image:url(../img/eComm_130x100.png)!important}#ga-debug-info h3{height:30px;margin-top:10px;padding-left:16px;font-size:14px}.yoast_help{margin:2px 5px 0}
|
frontend/class-frontend.php
CHANGED
|
@@ -19,9 +19,11 @@ if ( ! class_exists( 'Yoast_GA_Frontend' ) ) {
|
|
| 19 |
|
| 20 |
// Check if the customer is running Universal or not (Enable in GA Settings -> Universal)
|
| 21 |
if ( isset( $this->options['enable_universal'] ) && $this->options['enable_universal'] == 1 ) {
|
| 22 |
-
|
|
|
|
| 23 |
} else {
|
| 24 |
-
|
|
|
|
| 25 |
}
|
| 26 |
}
|
| 27 |
|
|
@@ -217,6 +219,4 @@ if ( ! class_exists( 'Yoast_GA_Frontend' ) ) {
|
|
| 217 |
}
|
| 218 |
}
|
| 219 |
|
| 220 |
-
global $yoast_ga_frontend;
|
| 221 |
-
$yoast_ga_frontend = new Yoast_GA_Frontend;
|
| 222 |
}
|
| 19 |
|
| 20 |
// Check if the customer is running Universal or not (Enable in GA Settings -> Universal)
|
| 21 |
if ( isset( $this->options['enable_universal'] ) && $this->options['enable_universal'] == 1 ) {
|
| 22 |
+
global $yoast_ga_universal;
|
| 23 |
+
$yoast_ga_universal = new Yoast_GA_Universal;
|
| 24 |
} else {
|
| 25 |
+
global $yoast_ga_js;
|
| 26 |
+
$yoast_ga_js = new Yoast_GA_JS;
|
| 27 |
}
|
| 28 |
}
|
| 29 |
|
| 219 |
}
|
| 220 |
}
|
| 221 |
|
|
|
|
|
|
|
| 222 |
}
|
frontend/class-ga-js.php
CHANGED
|
@@ -9,8 +9,8 @@ if ( ! class_exists( 'Yoast_GA_JS' ) ) {
|
|
| 9 |
public $link_regex;
|
| 10 |
|
| 11 |
public function __construct() {
|
| 12 |
-
parent::__construct();
|
| 13 |
|
|
|
|
| 14 |
$this->link_regex = '/<a (.*?)href=[\'\"](.*?):\/*([^\'\"]+?)[\'\"](.*?)>(.*?)<\/a>/i';
|
| 15 |
|
| 16 |
add_action( 'wp_head', array( $this, 'tracking' ), 8 );
|
|
@@ -19,6 +19,8 @@ if ( ! class_exists( 'Yoast_GA_JS' ) ) {
|
|
| 19 |
// Check for outbound
|
| 20 |
add_filter( 'the_content', array( $this, 'the_content' ), 99 );
|
| 21 |
add_filter( 'widget_text', array( $this, 'widget_content' ), 99 );
|
|
|
|
|
|
|
| 22 |
add_filter( 'the_excerpt', array( $this, 'the_content' ), 99 );
|
| 23 |
add_filter( 'comment_text', array( $this, 'comment_text' ), 99 );
|
| 24 |
}
|
|
@@ -318,6 +320,4 @@ if ( ! class_exists( 'Yoast_GA_JS' ) ) {
|
|
| 318 |
|
| 319 |
}
|
| 320 |
|
| 321 |
-
global $yoast_ga_js;
|
| 322 |
-
$yoast_ga_js = new Yoast_GA_JS;
|
| 323 |
}
|
| 9 |
public $link_regex;
|
| 10 |
|
| 11 |
public function __construct() {
|
|
|
|
| 12 |
|
| 13 |
+
$this->options = Yoast_GA_Options::instance()->options;
|
| 14 |
$this->link_regex = '/<a (.*?)href=[\'\"](.*?):\/*([^\'\"]+?)[\'\"](.*?)>(.*?)<\/a>/i';
|
| 15 |
|
| 16 |
add_action( 'wp_head', array( $this, 'tracking' ), 8 );
|
| 19 |
// Check for outbound
|
| 20 |
add_filter( 'the_content', array( $this, 'the_content' ), 99 );
|
| 21 |
add_filter( 'widget_text', array( $this, 'widget_content' ), 99 );
|
| 22 |
+
add_filter( 'wp_list_bookmarks', array( $this, 'widget_content' ), 99 );
|
| 23 |
+
add_filter( 'wp_nav_menu', array( $this, 'widget_content' ), 99 );
|
| 24 |
add_filter( 'the_excerpt', array( $this, 'the_content' ), 99 );
|
| 25 |
add_filter( 'comment_text', array( $this, 'comment_text' ), 99 );
|
| 26 |
}
|
| 320 |
|
| 321 |
}
|
| 322 |
|
|
|
|
|
|
|
| 323 |
}
|
frontend/class-universal.php
CHANGED
|
@@ -9,8 +9,8 @@ if ( ! class_exists( 'Yoast_GA_Universal' ) ) {
|
|
| 9 |
public $link_regex;
|
| 10 |
|
| 11 |
public function __construct() {
|
| 12 |
-
parent::__construct();
|
| 13 |
|
|
|
|
| 14 |
$this->link_regex = '`<a (.*?)href=[\'\"](.*?):/*([^\'\"]+)[\'\"](.*?)>(.*?)</a>`i';
|
| 15 |
|
| 16 |
add_action( 'wp_head', array( $this, 'tracking' ), 8 );
|
|
@@ -19,6 +19,8 @@ if ( ! class_exists( 'Yoast_GA_Universal' ) ) {
|
|
| 19 |
// Check for outbound option
|
| 20 |
add_filter( 'the_content', array( $this, 'the_content' ), 99 );
|
| 21 |
add_filter( 'widget_text', array( $this, 'widget_content' ), 99 );
|
|
|
|
|
|
|
| 22 |
add_filter( 'the_excerpt', array( $this, 'the_content' ), 99 );
|
| 23 |
add_filter( 'comment_text', array( $this, 'comment_text' ), 99 );
|
| 24 |
}
|
|
@@ -163,14 +165,14 @@ if ( ! class_exists( 'Yoast_GA_Universal' ) ) {
|
|
| 163 |
switch ( $link['type'] ) {
|
| 164 |
case 'download':
|
| 165 |
if ( $this->options['track_download_as'] == 'pageview' ) {
|
| 166 |
-
$onclick = "
|
| 167 |
} else {
|
| 168 |
-
$onclick = "
|
| 169 |
}
|
| 170 |
|
| 171 |
break;
|
| 172 |
case 'email':
|
| 173 |
-
$onclick = "
|
| 174 |
|
| 175 |
break;
|
| 176 |
case 'internal-as-outbound':
|
|
@@ -180,12 +182,12 @@ if ( ! class_exists( 'Yoast_GA_Universal' ) ) {
|
|
| 180 |
$label = 'int';
|
| 181 |
}
|
| 182 |
|
| 183 |
-
$onclick = "
|
| 184 |
|
| 185 |
break;
|
| 186 |
case 'outbound':
|
| 187 |
if ( $this->options['track_outbound'] == 1 ) {
|
| 188 |
-
$onclick = "
|
| 189 |
}
|
| 190 |
|
| 191 |
break;
|
|
@@ -314,7 +316,4 @@ if ( ! class_exists( 'Yoast_GA_Universal' ) ) {
|
|
| 314 |
return $text;
|
| 315 |
}
|
| 316 |
}
|
| 317 |
-
|
| 318 |
-
global $yoast_ga_universal;
|
| 319 |
-
$yoast_ga_universal = new Yoast_GA_Universal;
|
| 320 |
}
|
| 9 |
public $link_regex;
|
| 10 |
|
| 11 |
public function __construct() {
|
|
|
|
| 12 |
|
| 13 |
+
$this->options = Yoast_GA_Options::instance()->options;
|
| 14 |
$this->link_regex = '`<a (.*?)href=[\'\"](.*?):/*([^\'\"]+)[\'\"](.*?)>(.*?)</a>`i';
|
| 15 |
|
| 16 |
add_action( 'wp_head', array( $this, 'tracking' ), 8 );
|
| 19 |
// Check for outbound option
|
| 20 |
add_filter( 'the_content', array( $this, 'the_content' ), 99 );
|
| 21 |
add_filter( 'widget_text', array( $this, 'widget_content' ), 99 );
|
| 22 |
+
add_filter( 'wp_list_bookmarks', array( $this, 'widget_content' ), 99 );
|
| 23 |
+
add_filter( 'wp_nav_menu', array( $this, 'widget_content' ), 99 );
|
| 24 |
add_filter( 'the_excerpt', array( $this, 'the_content' ), 99 );
|
| 25 |
add_filter( 'comment_text', array( $this, 'comment_text' ), 99 );
|
| 26 |
}
|
| 165 |
switch ( $link['type'] ) {
|
| 166 |
case 'download':
|
| 167 |
if ( $this->options['track_download_as'] == 'pageview' ) {
|
| 168 |
+
$onclick = "__gaTracker('send', 'pageview', '" . esc_attr( $full_url ) . "');";
|
| 169 |
} else {
|
| 170 |
+
$onclick = "__gaTracker('send', 'event', 'download', '" . esc_attr( $full_url ) . "');";
|
| 171 |
}
|
| 172 |
|
| 173 |
break;
|
| 174 |
case 'email':
|
| 175 |
+
$onclick = "__gaTracker('send', 'event', 'mailto', '" . esc_attr( $link['original_url'] ) . "');";
|
| 176 |
|
| 177 |
break;
|
| 178 |
case 'internal-as-outbound':
|
| 182 |
$label = 'int';
|
| 183 |
}
|
| 184 |
|
| 185 |
+
$onclick = "__gaTracker('send', 'event', '" . esc_attr( $link['category'] ) . '-' . esc_attr( $label ) . "', '" . esc_attr( $full_url ) . "', '" . esc_attr( strip_tags( $link['link_text'] ) ) . "');";
|
| 186 |
|
| 187 |
break;
|
| 188 |
case 'outbound':
|
| 189 |
if ( $this->options['track_outbound'] == 1 ) {
|
| 190 |
+
$onclick = "__gaTracker('send', 'event', '" . esc_attr( $link['category'] ) . "', '" . esc_attr( $full_url ) . "', '" . esc_attr( strip_tags( $link['link_text'] ) ) . "');";
|
| 191 |
}
|
| 192 |
|
| 193 |
break;
|
| 316 |
return $text;
|
| 317 |
}
|
| 318 |
}
|
|
|
|
|
|
|
|
|
|
| 319 |
}
|
frontend/views/tracking-ga-js.php
CHANGED
|
@@ -3,18 +3,18 @@
|
|
| 3 |
|
| 4 |
var _gaq = _gaq || [];
|
| 5 |
<?php
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
}
|
| 12 |
-
elseif ( isset( $item['value'] ) ) {
|
| 13 |
-
echo ' '.$item['value'] . "\n";
|
| 14 |
-
}
|
| 15 |
-
}
|
| 16 |
}
|
| 17 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 18 |
|
| 19 |
(function () {
|
| 20 |
var ga = document.createElement('script');
|
| 3 |
|
| 4 |
var _gaq = _gaq || [];
|
| 5 |
<?php
|
| 6 |
+
// List the GA elements from the class-ga-js.php
|
| 7 |
+
if ( count( $gaq_push ) >= 1 ) {
|
| 8 |
+
foreach ( $gaq_push as $item ) {
|
| 9 |
+
if ( ! is_array( $item ) ) {
|
| 10 |
+
echo ' _gaq.push([' . $item . "]);\n";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 11 |
}
|
| 12 |
+
elseif ( isset( $item['value'] ) ) {
|
| 13 |
+
echo ' '.$item['value'] . "\n";
|
| 14 |
+
}
|
| 15 |
+
}
|
| 16 |
+
}
|
| 17 |
+
?>
|
| 18 |
|
| 19 |
(function () {
|
| 20 |
var ga = document.createElement('script');
|
frontend/views/tracking-universal.php
CHANGED
|
@@ -3,14 +3,14 @@
|
|
| 3 |
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
| 4 |
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
| 5 |
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
| 6 |
-
})(window,document,'script','//www.google-analytics.com/analytics.js','
|
| 7 |
|
| 8 |
<?php
|
| 9 |
// List the GA elements from the class-ga-js.php
|
| 10 |
if ( count( $gaq_push ) >= 1 ) {
|
| 11 |
foreach ( $gaq_push as $item ) {
|
| 12 |
if ( ! is_array( $item ) ) {
|
| 13 |
-
echo '
|
| 14 |
}
|
| 15 |
elseif ( isset( $item['value'] ) ) {
|
| 16 |
echo ' '.$item['value'] . "\n";
|
| 3 |
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
| 4 |
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
| 5 |
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
| 6 |
+
})(window,document,'script','//www.google-analytics.com/analytics.js','__gaTracker');
|
| 7 |
|
| 8 |
<?php
|
| 9 |
// List the GA elements from the class-ga-js.php
|
| 10 |
if ( count( $gaq_push ) >= 1 ) {
|
| 11 |
foreach ( $gaq_push as $item ) {
|
| 12 |
if ( ! is_array( $item ) ) {
|
| 13 |
+
echo ' __gaTracker('.$item.");\n";
|
| 14 |
}
|
| 15 |
elseif ( isset( $item['value'] ) ) {
|
| 16 |
echo ' '.$item['value'] . "\n";
|
googleanalytics.php
CHANGED
|
@@ -4,7 +4,7 @@ Plugin Name: Google Analytics by Yoast
|
|
| 4 |
Plugin URI: https://yoast.com/wordpress/plugins/google-analytics/#utm_source=wordpress&utm_medium=plugin&utm_campaign=wpgaplugin&utm_content=v504
|
| 5 |
Description: This plugin makes it simple to add Google Analytics to your WordPress blog, adding lots of features, eg. error page, search result and automatic clickout and download tracking.
|
| 6 |
Author: Team Yoast
|
| 7 |
-
Version: 5.
|
| 8 |
Requires at least: 3.8
|
| 9 |
Author URI: https://yoast.com/
|
| 10 |
License: GPL v3
|
|
@@ -30,20 +30,22 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
| 30 |
|
| 31 |
// This plugin was originally based on Rich Boakes' Analytics plugin: http://boakes.org/analytics, but has since been rewritten and refactored multiple times.
|
| 32 |
|
| 33 |
-
define( 'GAWP_VERSION', '5.
|
| 34 |
|
| 35 |
define( 'GAWP_FILE', __FILE__ );
|
| 36 |
|
| 37 |
define( 'GAWP_URL', trailingslashit( plugin_dir_url( __FILE__ ) ) );
|
| 38 |
|
| 39 |
-
if ( ! class_exists( '
|
| 40 |
-
require_once 'includes/class-
|
| 41 |
}
|
| 42 |
|
| 43 |
// Only require the needed classes
|
| 44 |
if ( is_admin() ) {
|
| 45 |
-
|
|
|
|
| 46 |
|
| 47 |
} else {
|
| 48 |
-
|
|
|
|
| 49 |
}
|
| 4 |
Plugin URI: https://yoast.com/wordpress/plugins/google-analytics/#utm_source=wordpress&utm_medium=plugin&utm_campaign=wpgaplugin&utm_content=v504
|
| 5 |
Description: This plugin makes it simple to add Google Analytics to your WordPress blog, adding lots of features, eg. error page, search result and automatic clickout and download tracking.
|
| 6 |
Author: Team Yoast
|
| 7 |
+
Version: 5.1
|
| 8 |
Requires at least: 3.8
|
| 9 |
Author URI: https://yoast.com/
|
| 10 |
License: GPL v3
|
| 30 |
|
| 31 |
// This plugin was originally based on Rich Boakes' Analytics plugin: http://boakes.org/analytics, but has since been rewritten and refactored multiple times.
|
| 32 |
|
| 33 |
+
define( 'GAWP_VERSION', '5.1' );
|
| 34 |
|
| 35 |
define( 'GAWP_FILE', __FILE__ );
|
| 36 |
|
| 37 |
define( 'GAWP_URL', trailingslashit( plugin_dir_url( __FILE__ ) ) );
|
| 38 |
|
| 39 |
+
if ( ! class_exists( 'Yoast_GA_Autoload', false ) ) {
|
| 40 |
+
require_once 'includes/class-autoload.php';
|
| 41 |
}
|
| 42 |
|
| 43 |
// Only require the needed classes
|
| 44 |
if ( is_admin() ) {
|
| 45 |
+
global $yoast_ga_admin;
|
| 46 |
+
$yoast_ga_admin = new Yoast_GA_Admin;
|
| 47 |
|
| 48 |
} else {
|
| 49 |
+
global $yoast_ga_frontend;
|
| 50 |
+
$yoast_ga_frontend = new Yoast_GA_Frontend;
|
| 51 |
}
|
img/question-mark.png
ADDED
|
Binary file
|
includes/class-autoload.php
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
if ( ! class_exists( 'Yoast_GA_Autoload' ) ) {
|
| 4 |
+
|
| 5 |
+
class Yoast_GA_Autoload {
|
| 6 |
+
|
| 7 |
+
private static $classes = null;
|
| 8 |
+
|
| 9 |
+
public static function autoload( $class ) {
|
| 10 |
+
|
| 11 |
+
$include_path = dirname( GAWP_FILE );
|
| 12 |
+
|
| 13 |
+
if ( self::$classes === null ) {
|
| 14 |
+
|
| 15 |
+
self::$classes = array(
|
| 16 |
+
'yoast_ga_options' => 'includes/class-options',
|
| 17 |
+
|
| 18 |
+
// Frontend classes
|
| 19 |
+
'yoast_ga_frontend' => 'frontend/class-frontend',
|
| 20 |
+
'yoast_ga_universal' => 'frontend/class-universal',
|
| 21 |
+
'yoast_ga_js' => 'frontend/class-ga-js',
|
| 22 |
+
|
| 23 |
+
// Admin classes
|
| 24 |
+
'yoast_ga_admin' => 'admin/class-admin',
|
| 25 |
+
'yoast_google_analytics' => 'admin/class-google-analytics',
|
| 26 |
+
'yoast_ga_admin_ga_js' => 'admin/class-admin-ga-js',
|
| 27 |
+
|
| 28 |
+
// License manager
|
| 29 |
+
'yoast_license_manager' => 'admin/license-manager/class-license-manager',
|
| 30 |
+
'yoast_plugin_license_manager' => 'admin/license-manager/class-plugin-license-manager',
|
| 31 |
+
'yoast_product' => 'admin/license-manager/class-product',
|
| 32 |
+
);
|
| 33 |
+
}
|
| 34 |
+
|
| 35 |
+
$class_name = strtolower( $class );
|
| 36 |
+
if ( isset( self::$classes[$class_name] ) ) {
|
| 37 |
+
require_once $include_path . '/' . self::$classes[$class_name] . '.php';
|
| 38 |
+
}
|
| 39 |
+
|
| 40 |
+
add_action( 'plugins_loaded', array( 'Yoast_GA_Autoload', 'yst_ga_load_textdomain' ) );
|
| 41 |
+
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
/**
|
| 45 |
+
* Load plugin textdomain
|
| 46 |
+
*/
|
| 47 |
+
public static function yst_ga_load_textdomain() {
|
| 48 |
+
load_plugin_textdomain( 'google-analytics-for-wordpress', false, dirname( plugin_basename( GAWP_FILE ) ) . '/languages/' );
|
| 49 |
+
}
|
| 50 |
+
|
| 51 |
+
}
|
| 52 |
+
|
| 53 |
+
// register class autoloader
|
| 54 |
+
spl_autoload_register( array( 'Yoast_GA_Autoload', 'autoload' ) );
|
| 55 |
+
|
| 56 |
+
}
|
| 57 |
+
|
includes/class-options.php
CHANGED
|
@@ -226,7 +226,7 @@ if ( ! class_exists( 'Yoast_GA_Options' ) ) {
|
|
| 226 |
'enable_universal' => 0,
|
| 227 |
'demographics' => 0,
|
| 228 |
'ignore_users' => array( 'editor' ),
|
| 229 |
-
'anonymize_ips' =>
|
| 230 |
'track_download_as' => 'event',
|
| 231 |
'extensions_of_files' => 'doc,exe,js,pdf,ppt,tgz,zip,xls',
|
| 232 |
'track_full_url' => 'domain',
|
| 226 |
'enable_universal' => 0,
|
| 227 |
'demographics' => 0,
|
| 228 |
'ignore_users' => array( 'editor' ),
|
| 229 |
+
'anonymize_ips' => 0,
|
| 230 |
'track_download_as' => 'event',
|
| 231 |
'extensions_of_files' => 'doc,exe,js,pdf,ppt,tgz,zip,xls',
|
| 232 |
'track_full_url' => 'domain',
|
js/jquery.qtip.min.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
/*
|
| 2 |
+
* jquery.qtip. The jQuery tooltip plugin
|
| 3 |
+
*
|
| 4 |
+
* Copyright (c) 2009 Craig Thompson
|
| 5 |
+
* http://craigsworks.com
|
| 6 |
+
*
|
| 7 |
+
* Licensed under MIT
|
| 8 |
+
* http://www.opensource.org/licenses/mit-license.php
|
| 9 |
+
*
|
| 10 |
+
* Launch : February 2009
|
| 11 |
+
* Version : 1.0.0-rc3
|
| 12 |
+
* Released: Tuesday 12th May, 2009 - 00:00
|
| 13 |
+
* Debug: jquery.qtip.debug.js
|
| 14 |
+
*/
|
| 15 |
+
(function(f){f.fn.qtip=function(B,u){var y,t,A,s,x,w,v,z;if(typeof B=="string"){if(typeof f(this).data("qtip")!=="object"){f.fn.qtip.log.error.call(self,1,f.fn.qtip.constants.NO_TOOLTIP_PRESENT,false)}if(B=="api"){return f(this).data("qtip").interfaces[f(this).data("qtip").current]}else{if(B=="interfaces"){return f(this).data("qtip").interfaces}}}else{if(!B){B={}}if(typeof B.content!=="object"||(B.content.jquery&&B.content.length>0)){B.content={text:B.content}}if(typeof B.content.title!=="object"){B.content.title={text:B.content.title}}if(typeof B.position!=="object"){B.position={corner:B.position}}if(typeof B.position.corner!=="object"){B.position.corner={target:B.position.corner,tooltip:B.position.corner}}if(typeof B.show!=="object"){B.show={when:B.show}}if(typeof B.show.when!=="object"){B.show.when={event:B.show.when}}if(typeof B.show.effect!=="object"){B.show.effect={type:B.show.effect}}if(typeof B.hide!=="object"){B.hide={when:B.hide}}if(typeof B.hide.when!=="object"){B.hide.when={event:B.hide.when}}if(typeof B.hide.effect!=="object"){B.hide.effect={type:B.hide.effect}}if(typeof B.style!=="object"){B.style={name:B.style}}B.style=c(B.style);s=f.extend(true,{},f.fn.qtip.defaults,B);s.style=a.call({options:s},s.style);s.user=f.extend(true,{},B)}return f(this).each(function(){if(typeof B=="string"){w=B.toLowerCase();A=f(this).qtip("interfaces");if(typeof A=="object"){if(u===true&&w=="destroy"){while(A.length>0){A[A.length-1].destroy()}}else{if(u!==true){A=[f(this).qtip("api")]}for(y=0;y<A.length;y++){if(w=="destroy"){A[y].destroy()}else{if(A[y].status.rendered===true){if(w=="show"){A[y].show()}else{if(w=="hide"){A[y].hide()}else{if(w=="focus"){A[y].focus()}else{if(w=="disable"){A[y].disable(true)}else{if(w=="enable"){A[y].disable(false)}}}}}}}}}}}else{v=f.extend(true,{},s);v.hide.effect.length=s.hide.effect.length;v.show.effect.length=s.show.effect.length;if(v.position.container===false){v.position.container=f(document.body)}if(v.position.target===false){v.position.target=f(this)}if(v.show.when.target===false){v.show.when.target=f(this)}if(v.hide.when.target===false){v.hide.when.target=f(this)}t=f.fn.qtip.interfaces.length;for(y=0;y<t;y++){if(typeof f.fn.qtip.interfaces[y]=="undefined"){t=y;break}}x=new d(f(this),v,t);f.fn.qtip.interfaces[t]=x;if(typeof f(this).data("qtip")=="object"){if(typeof f(this).attr("qtip")==="undefined"){f(this).data("qtip").current=f(this).data("qtip").interfaces.length}f(this).data("qtip").interfaces.push(x)}else{f(this).data("qtip",{current:0,interfaces:[x]})}if(v.content.prerender===false&&v.show.when.event!==false&&v.show.ready!==true){v.show.when.target.bind(v.show.when.event+".qtip-"+t+"-create",{qtip:t},function(C){z=f.fn.qtip.interfaces[C.data.qtip];z.options.show.when.target.unbind(z.options.show.when.event+".qtip-"+C.data.qtip+"-create");z.cache.mouse={x:C.pageX,y:C.pageY};p.call(z);z.options.show.when.target.trigger(z.options.show.when.event)})}else{x.cache.mouse={x:v.show.when.target.offset().left,y:v.show.when.target.offset().top};p.call(x)}}})};function d(u,t,v){var s=this;s.id=v;s.options=t;s.status={animated:false,rendered:false,disabled:false,focused:false};s.elements={target:u.addClass(s.options.style.classes.target),tooltip:null,wrapper:null,content:null,contentWrapper:null,title:null,button:null,tip:null,bgiframe:null};s.cache={mouse:{},position:{},toggle:0};s.timers={};f.extend(s,s.options.api,{show:function(y){var x,z;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"show")}if(s.elements.tooltip.css("display")!=="none"){return s}s.elements.tooltip.stop(true,false);x=s.beforeShow.call(s,y);if(x===false){return s}function w(){if(s.options.position.type!=="static"){s.focus()}s.onShow.call(s,y);if(f.browser.msie){s.elements.tooltip.get(0).style.removeAttribute("filter")}}s.cache.toggle=1;if(s.options.position.type!=="static"){s.updatePosition(y,(s.options.show.effect.length>0))}if(typeof s.options.show.solo=="object"){z=f(s.options.show.solo)}else{if(s.options.show.solo===true){z=f("div.qtip").not(s.elements.tooltip)}}if(z){z.each(function(){if(f(this).qtip("api").status.rendered===true){f(this).qtip("api").hide()}})}if(typeof s.options.show.effect.type=="function"){s.options.show.effect.type.call(s.elements.tooltip,s.options.show.effect.length);s.elements.tooltip.queue(function(){w();f(this).dequeue()})}else{switch(s.options.show.effect.type.toLowerCase()){case"fade":s.elements.tooltip.fadeIn(s.options.show.effect.length,w);break;case"slide":s.elements.tooltip.slideDown(s.options.show.effect.length,function(){w();if(s.options.position.type!=="static"){s.updatePosition(y,true)}});break;case"grow":s.elements.tooltip.show(s.options.show.effect.length,w);break;default:s.elements.tooltip.show(null,w);break}s.elements.tooltip.addClass(s.options.style.classes.active)}return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_SHOWN,"show")},hide:function(y){var x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"hide")}else{if(s.elements.tooltip.css("display")==="none"){return s}}clearTimeout(s.timers.show);s.elements.tooltip.stop(true,false);x=s.beforeHide.call(s,y);if(x===false){return s}function w(){s.onHide.call(s,y)}s.cache.toggle=0;if(typeof s.options.hide.effect.type=="function"){s.options.hide.effect.type.call(s.elements.tooltip,s.options.hide.effect.length);s.elements.tooltip.queue(function(){w();f(this).dequeue()})}else{switch(s.options.hide.effect.type.toLowerCase()){case"fade":s.elements.tooltip.fadeOut(s.options.hide.effect.length,w);break;case"slide":s.elements.tooltip.slideUp(s.options.hide.effect.length,w);break;case"grow":s.elements.tooltip.hide(s.options.hide.effect.length,w);break;default:s.elements.tooltip.hide(null,w);break}s.elements.tooltip.removeClass(s.options.style.classes.active)}return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_HIDDEN,"hide")},updatePosition:function(w,x){var C,G,L,J,H,E,y,I,B,D,K,A,F,z;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updatePosition")}else{if(s.options.position.type=="static"){return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.CANNOT_POSITION_STATIC,"updatePosition")}}G={position:{left:0,top:0},dimensions:{height:0,width:0},corner:s.options.position.corner.target};L={position:s.getPosition(),dimensions:s.getDimensions(),corner:s.options.position.corner.tooltip};if(s.options.position.target!=="mouse"){if(s.options.position.target.get(0).nodeName.toLowerCase()=="area"){J=s.options.position.target.attr("coords").split(",");for(C=0;C<J.length;C++){J[C]=parseInt(J[C])}H=s.options.position.target.parent("map").attr("name");E=f('img[usemap="#'+H+'"]:first').offset();G.position={left:Math.floor(E.left+J[0]),top:Math.floor(E.top+J[1])};switch(s.options.position.target.attr("shape").toLowerCase()){case"rect":G.dimensions={width:Math.ceil(Math.abs(J[2]-J[0])),height:Math.ceil(Math.abs(J[3]-J[1]))};break;case"circle":G.dimensions={width:J[2]+1,height:J[2]+1};break;case"poly":G.dimensions={width:J[0],height:J[1]};for(C=0;C<J.length;C++){if(C%2==0){if(J[C]>G.dimensions.width){G.dimensions.width=J[C]}if(J[C]<J[0]){G.position.left=Math.floor(E.left+J[C])}}else{if(J[C]>G.dimensions.height){G.dimensions.height=J[C]}if(J[C]<J[1]){G.position.top=Math.floor(E.top+J[C])}}}G.dimensions.width=G.dimensions.width-(G.position.left-E.left);G.dimensions.height=G.dimensions.height-(G.position.top-E.top);break;default:return f.fn.qtip.log.error.call(s,4,f.fn.qtip.constants.INVALID_AREA_SHAPE,"updatePosition");break}G.dimensions.width-=2;G.dimensions.height-=2}else{if(s.options.position.target.add(document.body).length===1){G.position={left:f(document).scrollLeft(),top:f(document).scrollTop()};G.dimensions={height:f(window).height(),width:f(window).width()}}else{if(typeof s.options.position.target.attr("qtip")!=="undefined"){G.position=s.options.position.target.qtip("api").cache.position}else{G.position=s.options.position.target.offset()}G.dimensions={height:s.options.position.target.outerHeight(),width:s.options.position.target.outerWidth()}}}y=f.extend({},G.position);if(G.corner.search(/right/i)!==-1){y.left+=G.dimensions.width}if(G.corner.search(/bottom/i)!==-1){y.top+=G.dimensions.height}if(G.corner.search(/((top|bottom)Middle)|center/)!==-1){y.left+=(G.dimensions.width/2)}if(G.corner.search(/((left|right)Middle)|center/)!==-1){y.top+=(G.dimensions.height/2)}}else{G.position=y={left:s.cache.mouse.x,top:s.cache.mouse.y};G.dimensions={height:1,width:1}}if(L.corner.search(/right/i)!==-1){y.left-=L.dimensions.width}if(L.corner.search(/bottom/i)!==-1){y.top-=L.dimensions.height}if(L.corner.search(/((top|bottom)Middle)|center/)!==-1){y.left-=(L.dimensions.width/2)}if(L.corner.search(/((left|right)Middle)|center/)!==-1){y.top-=(L.dimensions.height/2)}I=(f.browser.msie)?1:0;B=(f.browser.msie&&parseInt(f.browser.version.charAt(0))===6)?1:0;if(s.options.style.border.radius>0){if(L.corner.search(/Left/)!==-1){y.left-=s.options.style.border.radius}else{if(L.corner.search(/Right/)!==-1){y.left+=s.options.style.border.radius}}if(L.corner.search(/Top/)!==-1){y.top-=s.options.style.border.radius}else{if(L.corner.search(/Bottom/)!==-1){y.top+=s.options.style.border.radius}}}if(I){if(L.corner.search(/top/)!==-1){y.top-=I}else{if(L.corner.search(/bottom/)!==-1){y.top+=I}}if(L.corner.search(/left/)!==-1){y.left-=I}else{if(L.corner.search(/right/)!==-1){y.left+=I}}if(L.corner.search(/leftMiddle|rightMiddle/)!==-1){y.top-=1}}if(s.options.position.adjust.screen===true){y=o.call(s,y,G,L)}if(s.options.position.target==="mouse"&&s.options.position.adjust.mouse===true){if(s.options.position.adjust.screen===true&&s.elements.tip){K=s.elements.tip.attr("rel")}else{K=s.options.position.corner.tooltip}y.left+=(K.search(/right/i)!==-1)?-6:6;y.top+=(K.search(/bottom/i)!==-1)?-6:6}if(!s.elements.bgiframe&&f.browser.msie&&parseInt(f.browser.version.charAt(0))==6){f("select, object").each(function(){A=f(this).offset();A.bottom=A.top+f(this).height();A.right=A.left+f(this).width();if(y.top+L.dimensions.height>=A.top&&y.left+L.dimensions.width>=A.left){k.call(s)}})}y.left+=s.options.position.adjust.x;y.top+=s.options.position.adjust.y;F=s.getPosition();if(y.left!=F.left||y.top!=F.top){z=s.beforePositionUpdate.call(s,w);if(z===false){return s}s.cache.position=y;if(x===true){s.status.animated=true;s.elements.tooltip.animate(y,200,"swing",function(){s.status.animated=false})}else{s.elements.tooltip.css(y)}s.onPositionUpdate.call(s,w);if(typeof w!=="undefined"&&w.type&&w.type!=="mousemove"){f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_POSITION_UPDATED,"updatePosition")}}return s},updateWidth:function(w){var x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updateWidth")}else{if(w&&typeof w!=="number"){return f.fn.qtip.log.error.call(s,2,"newWidth must be of type number","updateWidth")}}x=s.elements.contentWrapper.siblings().add(s.elements.tip).add(s.elements.button);if(!w){if(typeof s.options.style.width.value=="number"){w=s.options.style.width.value}else{s.elements.tooltip.css({width:"auto"});x.hide();if(f.browser.msie){s.elements.wrapper.add(s.elements.contentWrapper.children()).css({zoom:"normal"})}w=s.getDimensions().width+1;if(!s.options.style.width.value){if(w>s.options.style.width.max){w=s.options.style.width.max}if(w<s.options.style.width.min){w=s.options.style.width.min}}}}if(w%2!==0){w-=1}s.elements.tooltip.width(w);x.show();if(s.options.style.border.radius){s.elements.tooltip.find(".qtip-betweenCorners").each(function(y){f(this).width(w-(s.options.style.border.radius*2))})}if(f.browser.msie){s.elements.wrapper.add(s.elements.contentWrapper.children()).css({zoom:"1"});s.elements.wrapper.width(w);if(s.elements.bgiframe){s.elements.bgiframe.width(w).height(s.getDimensions.height)}}return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_WIDTH_UPDATED,"updateWidth")},updateStyle:function(w){var z,A,x,y,B;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updateStyle")}else{if(typeof w!=="string"||!f.fn.qtip.styles[w]){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.STYLE_NOT_DEFINED,"updateStyle")}}s.options.style=a.call(s,f.fn.qtip.styles[w],s.options.user.style);s.elements.content.css(q(s.options.style));if(s.options.content.title.text!==false){s.elements.title.css(q(s.options.style.title,true))}s.elements.contentWrapper.css({borderColor:s.options.style.border.color});if(s.options.style.tip.corner!==false){if(f("<canvas>").get(0).getContext){z=s.elements.tooltip.find(".qtip-tip canvas:first");x=z.get(0).getContext("2d");x.clearRect(0,0,300,300);y=z.parent("div[rel]:first").attr("rel");B=b(y,s.options.style.tip.size.width,s.options.style.tip.size.height);h.call(s,z,B,s.options.style.tip.color||s.options.style.border.color)}else{if(f.browser.msie){z=s.elements.tooltip.find('.qtip-tip [nodeName="shape"]');z.attr("fillcolor",s.options.style.tip.color||s.options.style.border.color)}}}if(s.options.style.border.radius>0){s.elements.tooltip.find(".qtip-betweenCorners").css({backgroundColor:s.options.style.border.color});if(f("<canvas>").get(0).getContext){A=g(s.options.style.border.radius);s.elements.tooltip.find(".qtip-wrapper canvas").each(function(){x=f(this).get(0).getContext("2d");x.clearRect(0,0,300,300);y=f(this).parent("div[rel]:first").attr("rel");r.call(s,f(this),A[y],s.options.style.border.radius,s.options.style.border.color)})}else{if(f.browser.msie){s.elements.tooltip.find('.qtip-wrapper [nodeName="arc"]').each(function(){f(this).attr("fillcolor",s.options.style.border.color)})}}}return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_STYLE_UPDATED,"updateStyle")},updateContent:function(A,y){var z,x,w;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updateContent")}else{if(!A){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.NO_CONTENT_PROVIDED,"updateContent")}}z=s.beforeContentUpdate.call(s,A);if(typeof z=="string"){A=z}else{if(z===false){return}}if(f.browser.msie){s.elements.contentWrapper.children().css({zoom:"normal"})}if(A.jquery&&A.length>0){A.clone(true).appendTo(s.elements.content).show()}else{s.elements.content.html(A)}x=s.elements.content.find("img[complete=false]");if(x.length>0){w=0;x.each(function(C){f('<img src="'+f(this).attr("src")+'" />').load(function(){if(++w==x.length){B()}})})}else{B()}function B(){s.updateWidth();if(y!==false){if(s.options.position.type!=="static"){s.updatePosition(s.elements.tooltip.is(":visible"),true)}if(s.options.style.tip.corner!==false){n.call(s)}}}s.onContentUpdate.call(s);return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_CONTENT_UPDATED,"loadContent")},loadContent:function(w,z,A){var y;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"loadContent")}y=s.beforeContentLoad.call(s);if(y===false){return s}if(A=="post"){f.post(w,z,x)}else{f.get(w,z,x)}function x(B){s.onContentLoad.call(s);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_CONTENT_LOADED,"loadContent");s.updateContent(B)}return s},updateTitle:function(w){if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"updateTitle")}else{if(!w){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.NO_CONTENT_PROVIDED,"updateTitle")}}returned=s.beforeTitleUpdate.call(s);if(returned===false){return s}if(s.elements.button){s.elements.button=s.elements.button.clone(true)}s.elements.title.html(w);if(s.elements.button){s.elements.title.prepend(s.elements.button)}s.onTitleUpdate.call(s);return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_TITLE_UPDATED,"updateTitle")},focus:function(A){var y,x,w,z;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"focus")}else{if(s.options.position.type=="static"){return f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.CANNOT_FOCUS_STATIC,"focus")}}y=parseInt(s.elements.tooltip.css("z-index"));x=6000+f("div.qtip[qtip]").length-1;if(!s.status.focused&&y!==x){z=s.beforeFocus.call(s,A);if(z===false){return s}f("div.qtip[qtip]").not(s.elements.tooltip).each(function(){if(f(this).qtip("api").status.rendered===true){w=parseInt(f(this).css("z-index"));if(typeof w=="number"&&w>-1){f(this).css({zIndex:parseInt(f(this).css("z-index"))-1})}f(this).qtip("api").status.focused=false}});s.elements.tooltip.css({zIndex:x});s.status.focused=true;s.onFocus.call(s,A);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_FOCUSED,"focus")}return s},disable:function(w){if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"disable")}if(w){if(!s.status.disabled){s.status.disabled=true;f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_DISABLED,"disable")}else{f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.TOOLTIP_ALREADY_DISABLED,"disable")}}else{if(s.status.disabled){s.status.disabled=false;f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_ENABLED,"disable")}else{f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.TOOLTIP_ALREADY_ENABLED,"disable")}}return s},destroy:function(){var w,x,y;x=s.beforeDestroy.call(s);if(x===false){return s}if(s.status.rendered){s.options.show.when.target.unbind("mousemove.qtip",s.updatePosition);s.options.show.when.target.unbind("mouseout.qtip",s.hide);s.options.show.when.target.unbind(s.options.show.when.event+".qtip");s.options.hide.when.target.unbind(s.options.hide.when.event+".qtip");s.elements.tooltip.unbind(s.options.hide.when.event+".qtip");s.elements.tooltip.unbind("mouseover.qtip",s.focus);s.elements.tooltip.remove()}else{s.options.show.when.target.unbind(s.options.show.when.event+".qtip-create")}if(typeof s.elements.target.data("qtip")=="object"){y=s.elements.target.data("qtip").interfaces;if(typeof y=="object"&&y.length>0){for(w=0;w<y.length-1;w++){if(y[w].id==s.id){y.splice(w,1)}}}}delete f.fn.qtip.interfaces[s.id];if(typeof y=="object"&&y.length>0){s.elements.target.data("qtip").current=y.length-1}else{s.elements.target.removeData("qtip")}s.onDestroy.call(s);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_DESTROYED,"destroy");return s.elements.target},getPosition:function(){var w,x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"getPosition")}w=(s.elements.tooltip.css("display")!=="none")?false:true;if(w){s.elements.tooltip.css({visiblity:"hidden"}).show()}x=s.elements.tooltip.offset();if(w){s.elements.tooltip.css({visiblity:"visible"}).hide()}return x},getDimensions:function(){var w,x;if(!s.status.rendered){return f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.TOOLTIP_NOT_RENDERED,"getDimensions")}w=(!s.elements.tooltip.is(":visible"))?true:false;if(w){s.elements.tooltip.css({visiblity:"hidden"}).show()}x={height:s.elements.tooltip.outerHeight(),width:s.elements.tooltip.outerWidth()};if(w){s.elements.tooltip.css({visiblity:"visible"}).hide()}return x}})}function p(){var s,w,u,t,v,y,x;s=this;s.beforeRender.call(s);s.status.rendered=true;s.elements.tooltip='<div qtip="'+s.id+'" class="qtip '+(s.options.style.classes.tooltip||s.options.style)+'"style="display:none; -moz-border-radius:0; -webkit-border-radius:0; border-radius:0;position:'+s.options.position.type+';"> <div class="qtip-wrapper" style="position:relative; overflow:hidden; text-align:left;"> <div class="qtip-contentWrapper" style="overflow:hidden;"> <div class="qtip-content '+s.options.style.classes.content+'"></div></div></div></div>';s.elements.tooltip=f(s.elements.tooltip);s.elements.tooltip.appendTo(s.options.position.container);s.elements.tooltip.data("qtip",{current:0,interfaces:[s]});s.elements.wrapper=s.elements.tooltip.children("div:first");s.elements.contentWrapper=s.elements.wrapper.children("div:first").css({background:s.options.style.background});s.elements.content=s.elements.contentWrapper.children("div:first").css(q(s.options.style));if(f.browser.msie){s.elements.wrapper.add(s.elements.content).css({zoom:1})}if(s.options.hide.when.event=="unfocus"){s.elements.tooltip.attr("unfocus",true)}if(typeof s.options.style.width.value=="number"){s.updateWidth()}if(f("<canvas>").get(0).getContext||f.browser.msie){if(s.options.style.border.radius>0){m.call(s)}else{s.elements.contentWrapper.css({border:s.options.style.border.width+"px solid "+s.options.style.border.color})}if(s.options.style.tip.corner!==false){e.call(s)}}else{s.elements.contentWrapper.css({border:s.options.style.border.width+"px solid "+s.options.style.border.color});s.options.style.border.radius=0;s.options.style.tip.corner=false;f.fn.qtip.log.error.call(s,2,f.fn.qtip.constants.CANVAS_VML_NOT_SUPPORTED,"render")}if((typeof s.options.content.text=="string"&&s.options.content.text.length>0)||(s.options.content.text.jquery&&s.options.content.text.length>0)){u=s.options.content.text}else{if(typeof s.elements.target.attr("title")=="string"&&s.elements.target.attr("title").length>0){u=s.elements.target.attr("title").replace("\\n","<br />");s.elements.target.attr("title","")}else{if(typeof s.elements.target.attr("alt")=="string"&&s.elements.target.attr("alt").length>0){u=s.elements.target.attr("alt").replace("\\n","<br />");s.elements.target.attr("alt","")}else{u=" ";f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.NO_VALID_CONTENT,"render")}}}if(s.options.content.title.text!==false){j.call(s)}s.updateContent(u);l.call(s);if(s.options.show.ready===true){s.show()}if(s.options.content.url!==false){t=s.options.content.url;v=s.options.content.data;y=s.options.content.method||"get";s.loadContent(t,v,y)}s.onRender.call(s);f.fn.qtip.log.error.call(s,1,f.fn.qtip.constants.EVENT_RENDERED,"render")}function m(){var F,z,t,B,x,E,u,G,D,y,w,C,A,s,v;F=this;F.elements.wrapper.find(".qtip-borderBottom, .qtip-borderTop").remove();t=F.options.style.border.width;B=F.options.style.border.radius;x=F.options.style.border.color||F.options.style.tip.color;E=g(B);u={};for(z in E){u[z]='<div rel="'+z+'" style="'+((z.search(/Left/)!==-1)?"left":"right")+":0; position:absolute; height:"+B+"px; width:"+B+'px; overflow:hidden; line-height:0.1px; font-size:1px">';if(f("<canvas>").get(0).getContext){u[z]+='<canvas height="'+B+'" width="'+B+'" style="vertical-align: top"></canvas>'}else{if(f.browser.msie){G=B*2+3;u[z]+='<v:arc stroked="false" fillcolor="'+x+'" startangle="'+E[z][0]+'" endangle="'+E[z][1]+'" style="width:'+G+"px; height:"+G+"px; margin-top:"+((z.search(/bottom/)!==-1)?-2:-1)+"px; margin-left:"+((z.search(/Right/)!==-1)?E[z][2]-3.5:-1)+'px; vertical-align:top; display:inline-block; behavior:url(#default#VML)"></v:arc>'}}u[z]+="</div>"}D=F.getDimensions().width-(Math.max(t,B)*2);y='<div class="qtip-betweenCorners" style="height:'+B+"px; width:"+D+"px; overflow:hidden; background-color:"+x+'; line-height:0.1px; font-size:1px;">';w='<div class="qtip-borderTop" dir="ltr" style="height:'+B+"px; margin-left:"+B+'px; line-height:0.1px; font-size:1px; padding:0;">'+u.topLeft+u.topRight+y;F.elements.wrapper.prepend(w);C='<div class="qtip-borderBottom" dir="ltr" style="height:'+B+"px; margin-left:"+B+'px; line-height:0.1px; font-size:1px; padding:0;">'+u.bottomLeft+u.bottomRight+y;F.elements.wrapper.append(C);if(f("<canvas>").get(0).getContext){F.elements.wrapper.find("canvas").each(function(){A=E[f(this).parent("[rel]:first").attr("rel")];r.call(F,f(this),A,B,x)})}else{if(f.browser.msie){F.elements.tooltip.append('<v:image style="behavior:url(#default#VML);"></v:image>')}}s=Math.max(B,(B+(t-B)));v=Math.max(t-B,0);F.elements.contentWrapper.css({border:"0px solid "+x,borderWidth:v+"px "+s+"px"})}function r(u,w,s,t){var v=u.get(0).getContext("2d");v.fillStyle=t;v.beginPath();v.arc(w[0],w[1],s,0,Math.PI*2,false);v.fill()}function e(v){var t,s,x,u,w;t=this;if(t.elements.tip!==null){t.elements.tip.remove()}s=t.options.style.tip.color||t.options.style.border.color;if(t.options.style.tip.corner===false){return}else{if(!v){v=t.options.style.tip.corner}}x=b(v,t.options.style.tip.size.width,t.options.style.tip.size.height);t.elements.tip='<div class="'+t.options.style.classes.tip+'" dir="ltr" rel="'+v+'" style="position:absolute; height:'+t.options.style.tip.size.height+"px; width:"+t.options.style.tip.size.width+'px; margin:0 auto; line-height:0.1px; font-size:1px;">';if(f("<canvas>").get(0).getContext){t.elements.tip+='<canvas height="'+t.options.style.tip.size.height+'" width="'+t.options.style.tip.size.width+'"></canvas>'}else{if(f.browser.msie){u=t.options.style.tip.size.width+","+t.options.style.tip.size.height;w="m"+x[0][0]+","+x[0][1];w+=" l"+x[1][0]+","+x[1][1];w+=" "+x[2][0]+","+x[2][1];w+=" xe";t.elements.tip+='<v:shape fillcolor="'+s+'" stroked="false" filled="true" path="'+w+'" coordsize="'+u+'" style="width:'+t.options.style.tip.size.width+"px; height:"+t.options.style.tip.size.height+"px; line-height:0.1px; display:inline-block; behavior:url(#default#VML); vertical-align:"+((v.search(/top/)!==-1)?"bottom":"top")+'"></v:shape>';t.elements.tip+='<v:image style="behavior:url(#default#VML);"></v:image>';t.elements.contentWrapper.css("position","relative")}}t.elements.tooltip.prepend(t.elements.tip+"</div>");t.elements.tip=t.elements.tooltip.find("."+t.options.style.classes.tip).eq(0);if(f("<canvas>").get(0).getContext){h.call(t,t.elements.tip.find("canvas:first"),x,s)}if(v.search(/top/)!==-1&&f.browser.msie&&parseInt(f.browser.version.charAt(0))===6){t.elements.tip.css({marginTop:-4})}n.call(t,v)}function h(t,v,s){var u=t.get(0).getContext("2d");u.fillStyle=s;u.beginPath();u.moveTo(v[0][0],v[0][1]);u.lineTo(v[1][0],v[1][1]);u.lineTo(v[2][0],v[2][1]);u.fill()}function n(u){var t,w,s,x,v;t=this;if(t.options.style.tip.corner===false||!t.elements.tip){return}if(!u){u=t.elements.tip.attr("rel")}w=positionAdjust=(f.browser.msie)?1:0;t.elements.tip.css(u.match(/left|right|top|bottom/)[0],0);if(u.search(/top|bottom/)!==-1){if(f.browser.msie){if(parseInt(f.browser.version.charAt(0))===6){positionAdjust=(u.search(/top/)!==-1)?-3:1}else{positionAdjust=(u.search(/top/)!==-1)?1:2}}if(u.search(/Middle/)!==-1){t.elements.tip.css({left:"50%",marginLeft:-(t.options.style.tip.size.width/2)})}else{if(u.search(/Left/)!==-1){t.elements.tip.css({left:t.options.style.border.radius-w})}else{if(u.search(/Right/)!==-1){t.elements.tip.css({right:t.options.style.border.radius+w})}}}if(u.search(/top/)!==-1){t.elements.tip.css({top:-positionAdjust})}else{t.elements.tip.css({bottom:positionAdjust})}}else{if(u.search(/left|right/)!==-1){if(f.browser.msie){positionAdjust=(parseInt(f.browser.version.charAt(0))===6)?1:((u.search(/left/)!==-1)?1:2)}if(u.search(/Middle/)!==-1){t.elements.tip.css({top:"50%",marginTop:-(t.options.style.tip.size.height/2)})}else{if(u.search(/Top/)!==-1){t.elements.tip.css({top:t.options.style.border.radius-w})}else{if(u.search(/Bottom/)!==-1){t.elements.tip.css({bottom:t.options.style.border.radius+w})}}}if(u.search(/left/)!==-1){t.elements.tip.css({left:-positionAdjust})}else{t.elements.tip.css({right:positionAdjust})}}}s="padding-"+u.match(/left|right|top|bottom/)[0];x=t.options.style.tip.size[(s.search(/left|right/)!==-1)?"width":"height"];t.elements.tooltip.css("padding",0);t.elements.tooltip.css(s,x);if(f.browser.msie&&parseInt(f.browser.version.charAt(0))==6){v=parseInt(t.elements.tip.css("margin-top"))||0;v+=parseInt(t.elements.content.css("margin-top"))||0;t.elements.tip.css({marginTop:v})}}function j(){var s=this;if(s.elements.title!==null){s.elements.title.remove()}s.elements.title=f('<div class="'+s.options.style.classes.title+'">').css(q(s.options.style.title,true)).css({zoom:(f.browser.msie)?1:0}).prependTo(s.elements.contentWrapper);if(s.options.content.title.text){s.updateTitle.call(s,s.options.content.title.text)}if(s.options.content.title.button!==false&&typeof s.options.content.title.button=="string"){s.elements.button=f('<a class="'+s.options.style.classes.button+'" style="float:right; position: relative"></a>').css(q(s.options.style.button,true)).html(s.options.content.title.button).prependTo(s.elements.title).click(function(t){if(!s.status.disabled){s.hide(t)}})}}function l(){var t,v,u,s;t=this;v=t.options.show.when.target;u=t.options.hide.when.target;if(t.options.hide.fixed){u=u.add(t.elements.tooltip)}if(t.options.hide.when.event=="inactive"){s=["click","dblclick","mousedown","mouseup","mousemove","mouseout","mouseenter","mouseleave","mouseover"];function y(z){if(t.status.disabled===true){return}clearTimeout(t.timers.inactive);t.timers.inactive=setTimeout(function(){f(s).each(function(){u.unbind(this+".qtip-inactive");t.elements.content.unbind(this+".qtip-inactive")});t.hide(z)},t.options.hide.delay)}}else{if(t.options.hide.fixed===true){t.elements.tooltip.bind("mouseover.qtip",function(){if(t.status.disabled===true){return}clearTimeout(t.timers.hide)})}}function x(z){if(t.status.disabled===true){return}if(t.options.hide.when.event=="inactive"){f(s).each(function(){u.bind(this+".qtip-inactive",y);t.elements.content.bind(this+".qtip-inactive",y)});y()}clearTimeout(t.timers.show);clearTimeout(t.timers.hide);t.timers.show=setTimeout(function(){t.show(z)},t.options.show.delay)}function w(z){if(t.status.disabled===true){return}if(t.options.hide.fixed===true&&t.options.hide.when.event.search(/mouse(out|leave)/i)!==-1&&f(z.relatedTarget).parents("div.qtip[qtip]").length>0){z.stopPropagation();z.preventDefault();clearTimeout(t.timers.hide);return false}clearTimeout(t.timers.show);clearTimeout(t.timers.hide);t.elements.tooltip.stop(true,true);t.timers.hide=setTimeout(function(){t.hide(z)},t.options.hide.delay)}if((t.options.show.when.target.add(t.options.hide.when.target).length===1&&t.options.show.when.event==t.options.hide.when.event&&t.options.hide.when.event!=="inactive")||t.options.hide.when.event=="unfocus"){t.cache.toggle=0;v.bind(t.options.show.when.event+".qtip",function(z){if(t.cache.toggle==0){x(z)}else{w(z)}})}else{v.bind(t.options.show.when.event+".qtip",x);if(t.options.hide.when.event!=="inactive"){u.bind(t.options.hide.when.event+".qtip",w)}}if(t.options.position.type.search(/(fixed|absolute)/)!==-1){t.elements.tooltip.bind("mouseover.qtip",t.focus)}if(t.options.position.target==="mouse"&&t.options.position.type!=="static"){v.bind("mousemove.qtip",function(z){t.cache.mouse={x:z.pageX,y:z.pageY};if(t.status.disabled===false&&t.options.position.adjust.mouse===true&&t.options.position.type!=="static"&&t.elements.tooltip.css("display")!=="none"){t.updatePosition(z)}})}}function o(u,v,A){var z,s,x,y,t,w;z=this;if(A.corner=="center"){return v.position}s=f.extend({},u);y={x:false,y:false};t={left:(s.left<f.fn.qtip.cache.screen.scroll.left),right:(s.left+A.dimensions.width+2>=f.fn.qtip.cache.screen.width+f.fn.qtip.cache.screen.scroll.left),top:(s.top<f.fn.qtip.cache.screen.scroll.top),bottom:(s.top+A.dimensions.height+2>=f.fn.qtip.cache.screen.height+f.fn.qtip.cache.screen.scroll.top)};x={left:(t.left&&(A.corner.search(/right/i)!=-1||(A.corner.search(/right/i)==-1&&!t.right))),right:(t.right&&(A.corner.search(/left/i)!=-1||(A.corner.search(/left/i)==-1&&!t.left))),top:(t.top&&A.corner.search(/top/i)==-1),bottom:(t.bottom&&A.corner.search(/bottom/i)==-1)};if(x.left){if(z.options.position.target!=="mouse"){s.left=v.position.left+v.dimensions.width}else{s.left=z.cache.mouse.x}y.x="Left"}else{if(x.right){if(z.options.position.target!=="mouse"){s.left=v.position.left-A.dimensions.width}else{s.left=z.cache.mouse.x-A.dimensions.width}y.x="Right"}}if(x.top){if(z.options.position.target!=="mouse"){s.top=v.position.top+v.dimensions.height}else{s.top=z.cache.mouse.y}y.y="top"}else{if(x.bottom){if(z.options.position.target!=="mouse"){s.top=v.position.top-A.dimensions.height}else{s.top=z.cache.mouse.y-A.dimensions.height}y.y="bottom"}}if(s.left<0){s.left=u.left;y.x=false}if(s.top<0){s.top=u.top;y.y=false}if(z.options.style.tip.corner!==false){s.corner=new String(A.corner);if(y.x!==false){s.corner=s.corner.replace(/Left|Right|Middle/,y.x)}if(y.y!==false){s.corner=s.corner.replace(/top|bottom/,y.y)}if(s.corner!==z.elements.tip.attr("rel")){e.call(z,s.corner)}}return s}function q(u,t){var v,s;v=f.extend(true,{},u);for(s in v){if(t===true&&s.search(/(tip|classes)/i)!==-1){delete v[s]}else{if(!t&&s.search(/(width|border|tip|title|classes|user)/i)!==-1){delete v[s]}}}return v}function c(s){if(typeof s.tip!=="object"){s.tip={corner:s.tip}}if(typeof s.tip.size!=="object"){s.tip.size={width:s.tip.size,height:s.tip.size}}if(typeof s.border!=="object"){s.border={width:s.border}}if(typeof s.width!=="object"){s.width={value:s.width}}if(typeof s.width.max=="string"){s.width.max=parseInt(s.width.max.replace(/([0-9]+)/i,"$1"))}if(typeof s.width.min=="string"){s.width.min=parseInt(s.width.min.replace(/([0-9]+)/i,"$1"))}if(typeof s.tip.size.x=="number"){s.tip.size.width=s.tip.size.x;delete s.tip.size.x}if(typeof s.tip.size.y=="number"){s.tip.size.height=s.tip.size.y;delete s.tip.size.y}return s}function a(){var s,t,u,x,v,w;s=this;u=[true,{}];for(t=0;t<arguments.length;t++){u.push(arguments[t])}x=[f.extend.apply(f,u)];while(typeof x[0].name=="string"){x.unshift(c(f.fn.qtip.styles[x[0].name]))}x.unshift(true,{classes:{tooltip:"qtip-"+(arguments[0].name||"defaults")}},f.fn.qtip.styles.defaults);v=f.extend.apply(f,x);w=(f.browser.msie)?1:0;v.tip.size.width+=w;v.tip.size.height+=w;if(v.tip.size.width%2>0){v.tip.size.width+=1}if(v.tip.size.height%2>0){v.tip.size.height+=1}if(v.tip.corner===true){v.tip.corner=(s.options.position.corner.tooltip==="center")?false:s.options.position.corner.tooltip}return v}function b(v,u,t){var s={bottomRight:[[0,0],[u,t],[u,0]],bottomLeft:[[0,0],[u,0],[0,t]],topRight:[[0,t],[u,0],[u,t]],topLeft:[[0,0],[0,t],[u,t]],topMiddle:[[0,t],[u/2,0],[u,t]],bottomMiddle:[[0,0],[u,0],[u/2,t]],rightMiddle:[[0,0],[u,t/2],[0,t]],leftMiddle:[[u,0],[u,t],[0,t/2]]};s.leftTop=s.bottomRight;s.rightTop=s.bottomLeft;s.leftBottom=s.topRight;s.rightBottom=s.topLeft;return s[v]}function g(s){var t;if(f("<canvas>").get(0).getContext){t={topLeft:[s,s],topRight:[0,s],bottomLeft:[s,0],bottomRight:[0,0]}}else{if(f.browser.msie){t={topLeft:[-90,90,0],topRight:[-90,90,-s],bottomLeft:[90,270,0],bottomRight:[90,270,-s]}}}return t}function k(){var s,t,u;s=this;u=s.getDimensions();t='<iframe class="qtip-bgiframe" frameborder="0" tabindex="-1" src="javascript:false" style="display:block; position:absolute; z-index:-1; filter:alpha(opacity=\'0\'); border: 1px solid red; height:'+u.height+"px; width:"+u.width+'px" />';s.elements.bgiframe=s.elements.wrapper.prepend(t).children(".qtip-bgiframe:first")}f(document).ready(function(){f.fn.qtip.cache={screen:{scroll:{left:f(window).scrollLeft(),top:f(window).scrollTop()},width:f(window).width(),height:f(window).height()}};var s;f(window).bind("resize scroll",function(t){clearTimeout(s);s=setTimeout(function(){if(t.type==="scroll"){f.fn.qtip.cache.screen.scroll={left:f(window).scrollLeft(),top:f(window).scrollTop()}}else{f.fn.qtip.cache.screen.width=f(window).width();f.fn.qtip.cache.screen.height=f(window).height()}for(i=0;i<f.fn.qtip.interfaces.length;i++){var u=f.fn.qtip.interfaces[i];if(u.status.rendered===true&&(u.options.position.type!=="static"||u.options.position.adjust.scroll&&t.type==="scroll"||u.options.position.adjust.resize&&t.type==="resize")){u.updatePosition(t,true)}}},100)});f(document).bind("mousedown.qtip",function(t){if(f(t.target).parents("div.qtip").length===0){f(".qtip[unfocus]").each(function(){var u=f(this).qtip("api");if(f(this).is(":visible")&&!u.status.disabled&&f(t.target).add(u.elements.target).length>1){u.hide(t)}})}})});f.fn.qtip.interfaces=[];f.fn.qtip.log={error:function(){return this}};f.fn.qtip.constants={};f.fn.qtip.defaults={content:{prerender:false,text:false,url:false,data:null,title:{text:false,button:false}},position:{target:false,corner:{target:"bottomRight",tooltip:"topLeft"},adjust:{x:0,y:0,mouse:true,screen:false,scroll:true,resize:true},type:"absolute",container:false},show:{when:{target:false,event:"mouseover"},effect:{type:"fade",length:100},delay:140,solo:false,ready:false},hide:{when:{target:false,event:"mouseout"},effect:{type:"fade",length:100},delay:0,fixed:false},api:{beforeRender:function(){},onRender:function(){},beforePositionUpdate:function(){},onPositionUpdate:function(){},beforeShow:function(){},onShow:function(){},beforeHide:function(){},onHide:function(){},beforeContentUpdate:function(){},onContentUpdate:function(){},beforeContentLoad:function(){},onContentLoad:function(){},beforeTitleUpdate:function(){},onTitleUpdate:function(){},beforeDestroy:function(){},onDestroy:function(){},beforeFocus:function(){},onFocus:function(){}}};f.fn.qtip.styles={defaults:{background:"white",color:"#111",overflow:"hidden",textAlign:"left",width:{min:0,max:250},padding:"5px 9px",border:{width:1,radius:0,color:"#d3d3d3"},tip:{corner:false,color:false,size:{width:13,height:13},opacity:1},title:{background:"#e1e1e1",fontWeight:"bold",padding:"7px 12px"},button:{cursor:"pointer"},classes:{target:"",tip:"qtip-tip",title:"qtip-title",button:"qtip-button",content:"qtip-content",active:"qtip-active"}},cream:{border:{width:3,radius:0,color:"#F9E98E"},title:{background:"#F0DE7D",color:"#A27D35"},background:"#FBF7AA",color:"#A27D35",classes:{tooltip:"qtip-cream"}},light:{border:{width:3,radius:0,color:"#E2E2E2"},title:{background:"#f1f1f1",color:"#454545"},background:"white",color:"#454545",classes:{tooltip:"qtip-light"}},dark:{border:{width:3,radius:0,color:"#303030"},title:{background:"#404040",color:"#f3f3f3"},background:"#505050",color:"#f3f3f3",classes:{tooltip:"qtip-dark"}},red:{border:{width:3,radius:0,color:"#CE6F6F"},title:{background:"#f28279",color:"#9C2F2F"},background:"#F79992",color:"#9C2F2F",classes:{tooltip:"qtip-red"}},green:{border:{width:3,radius:0,color:"#A9DB66"},title:{background:"#b9db8c",color:"#58792E"},background:"#CDE6AC",color:"#58792E",classes:{tooltip:"qtip-green"}},blue:{border:{width:3,radius:0,color:"#ADD9ED"},title:{background:"#D0E9F5",color:"#5E99BD"},background:"#E5F6FE",color:"#4D9FBF",classes:{tooltip:"qtip-blue"}}}})(jQuery);
|
| 16 |
+
|
| 17 |
+
|
| 18 |
+
|
| 19 |
+
|
| 20 |
+
|
| 21 |
+
|
js/yoast_ga_admin.js
CHANGED
|
@@ -7,6 +7,7 @@ jQuery(document).ready(function() {
|
|
| 7 |
var id = jQuery(this).attr('id').replace('-tab','');
|
| 8 |
jQuery('#' + id).addClass('active');
|
| 9 |
jQuery(this).addClass('nav-tab-active');
|
|
|
|
| 10 |
});
|
| 11 |
|
| 12 |
jQuery('a.activate-link').click(function() {
|
|
@@ -38,7 +39,33 @@ jQuery(document).ready(function() {
|
|
| 38 |
}
|
| 39 |
});
|
| 40 |
|
|
|
|
|
|
|
| 41 |
if(jQuery("#yoast-ga-form-checkbox-settings-manual_ua_code").is(':checked')){
|
| 42 |
jQuery('#enter_ua').show();
|
| 43 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 44 |
});
|
| 7 |
var id = jQuery(this).attr('id').replace('-tab','');
|
| 8 |
jQuery('#' + id).addClass('active');
|
| 9 |
jQuery(this).addClass('nav-tab-active');
|
| 10 |
+
jQuery("#return_tab").val(id);
|
| 11 |
});
|
| 12 |
|
| 13 |
jQuery('a.activate-link').click(function() {
|
| 39 |
}
|
| 40 |
});
|
| 41 |
|
| 42 |
+
jQuery('.nav-tab-active').click();
|
| 43 |
+
|
| 44 |
if(jQuery("#yoast-ga-form-checkbox-settings-manual_ua_code").is(':checked')){
|
| 45 |
jQuery('#enter_ua').show();
|
| 46 |
}
|
| 47 |
+
|
| 48 |
+
jQuery(".yoast_help").qtip({
|
| 49 |
+
position: {
|
| 50 |
+
corner: {
|
| 51 |
+
target : 'topMiddle',
|
| 52 |
+
tooltip: 'bottomLeft'
|
| 53 |
+
}
|
| 54 |
+
},
|
| 55 |
+
show : {
|
| 56 |
+
when: {
|
| 57 |
+
event: 'mouseover'
|
| 58 |
+
}
|
| 59 |
+
},
|
| 60 |
+
hide : {
|
| 61 |
+
fixed: true,
|
| 62 |
+
when : {
|
| 63 |
+
event: 'mouseout'
|
| 64 |
+
}
|
| 65 |
+
},
|
| 66 |
+
style : {
|
| 67 |
+
tip : 'bottomLeft',
|
| 68 |
+
name: 'blue'
|
| 69 |
+
}
|
| 70 |
+
});
|
| 71 |
});
|
js/yoast_ga_admin.min.js
CHANGED
|
@@ -1 +1 @@
|
|
| 1 |
-
jQuery(document).ready(function(){jQuery("#ga-tabs").find("a").click(function(){jQuery("#ga-tabs").find("a").removeClass("nav-tab-active")
|
| 1 |
+
jQuery(document).ready(function(){jQuery("#ga-tabs").find("a").click(function(){jQuery("#ga-tabs").find("a").removeClass("nav-tab-active");jQuery(".gatab").removeClass("active");var e=jQuery(this).attr("id").replace("-tab","");jQuery("#"+e).addClass("active");jQuery(this).addClass("nav-tab-active");jQuery("#return_tab").val(e)});jQuery("a.activate-link").click(function(){jQuery("#extensions.wpseotab").removeClass("active");jQuery("#extensions-tab").removeClass("nav-tab-active");jQuery("#licenses.wpseotab").addClass("active");jQuery("#licenses-tab").addClass("nav-tab-active")});var e=window.location.hash.replace("#top#","");if(e==""||e=="#_=_"){e=jQuery(".gatab").attr("id")}jQuery("#"+e).addClass("active");jQuery("#"+e+"-tab").addClass("nav-tab-active");jQuery("#yoast-ga-form-checkbox-settings-manual_ua_code").click(function(){if(jQuery(this).is(":checked")){jQuery("#enter_ua").show()}else{jQuery("#enter_ua").hide();jQuery("#yoast-ga-form-text-settings-manual_ua_code_field").attr("value","")}});jQuery(".nav-tab-active").click();if(jQuery("#yoast-ga-form-checkbox-settings-manual_ua_code").is(":checked")){jQuery("#enter_ua").show()}jQuery(".yoast_help").qtip({position:{corner:{target:"topMiddle",tooltip:"bottomLeft"}},show:{when:{event:"mouseover"}},hide:{fixed:true,when:{event:"mouseout"}},style:{tip:"bottomLeft",name:"blue"}})})
|
languages/google-analytics-for-wordpress.pot
CHANGED
|
@@ -2,10 +2,10 @@
|
|
| 2 |
# This file is distributed under the GPL v3.
|
| 3 |
msgid ""
|
| 4 |
msgstr ""
|
| 5 |
-
"Project-Id-Version: Google Analytics by Yoast 5.0.
|
| 6 |
"Report-Msgid-Bugs-To: "
|
| 7 |
"http://wordpress.org/support/plugin/google-analytics-for-wordpress\n"
|
| 8 |
-
"POT-Creation-Date: 2014-
|
| 9 |
"MIME-Version: 1.0\n"
|
| 10 |
"Content-Type: text/plain; charset=utf-8\n"
|
| 11 |
"Content-Transfer-Encoding: 8bit\n"
|
|
@@ -25,46 +25,64 @@ msgstr ""
|
|
| 25 |
"X-Poedit-SearchPath-0: .\n"
|
| 26 |
"X-Textdomain-Support: yes\n"
|
| 27 |
|
| 28 |
-
#: admin/class-admin.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29 |
msgid "Settings saved!"
|
| 30 |
msgstr ""
|
| 31 |
|
| 32 |
-
#: admin/class-admin.php:
|
| 33 |
-
msgid "
|
| 34 |
msgstr ""
|
| 35 |
|
| 36 |
-
#: admin/class-admin.php:
|
| 37 |
msgid "FAQ"
|
| 38 |
msgstr ""
|
| 39 |
|
| 40 |
-
#: admin/class-admin.php:
|
| 41 |
-
#: admin/class-admin.php:154
|
| 42 |
msgid "Settings"
|
| 43 |
msgstr ""
|
| 44 |
|
| 45 |
-
#: admin/class-admin.php:
|
| 46 |
-
#: admin/class-admin.php:153 admin/class-admin.php:162
|
| 47 |
msgid "Yoast Google Analytics:"
|
| 48 |
msgstr ""
|
| 49 |
|
| 50 |
-
#: admin/class-admin.php:
|
| 51 |
msgid "General Settings"
|
| 52 |
msgstr ""
|
| 53 |
|
| 54 |
-
#: admin/class-admin.php:
|
| 55 |
msgid "Analytics"
|
| 56 |
msgstr ""
|
| 57 |
|
| 58 |
-
#: admin/class-admin.php:
|
| 59 |
-
msgid "
|
| 60 |
msgstr ""
|
| 61 |
|
| 62 |
-
#: admin/class-admin.php:
|
| 63 |
-
msgid "
|
| 64 |
msgstr ""
|
| 65 |
|
| 66 |
-
#: admin/class-admin.php:
|
| 67 |
-
msgid "
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 68 |
msgstr ""
|
| 69 |
|
| 70 |
#: admin/license-manager/class-license-manager.php:137
|
|
@@ -216,29 +234,19 @@ msgstr ""
|
|
| 216 |
msgid "Yoast Google Analytics: Dashboard"
|
| 217 |
msgstr ""
|
| 218 |
|
| 219 |
-
#: admin/pages/extensions.php:
|
| 220 |
-
msgid "Google Analytics"
|
| 221 |
-
msgstr ""
|
| 222 |
-
|
| 223 |
-
#: admin/pages/extensions.php:11
|
| 224 |
-
msgid "E-Commerce tracking"
|
| 225 |
-
msgstr ""
|
| 226 |
-
|
| 227 |
-
#: admin/pages/extensions.php:12
|
| 228 |
-
msgid ""
|
| 229 |
-
"Track your E-Commerce data and transactions with this E-Commerce extension "
|
| 230 |
-
"for Google Analytics."
|
| 231 |
msgstr ""
|
| 232 |
|
| 233 |
-
#: admin/pages/extensions.php:
|
| 234 |
-
msgid "
|
| 235 |
msgstr ""
|
| 236 |
|
| 237 |
-
#: admin/pages/extensions.php:
|
| 238 |
msgid "Licenses"
|
| 239 |
msgstr ""
|
| 240 |
|
| 241 |
-
#: admin/pages/extensions.php:
|
| 242 |
msgid ""
|
| 243 |
"You have not installed any extensions for Yoast Google Analytics, so there "
|
| 244 |
"are no licenses to activate."
|
|
@@ -260,60 +268,60 @@ msgstr ""
|
|
| 260 |
msgid "Advanced"
|
| 261 |
msgstr ""
|
| 262 |
|
| 263 |
-
#: admin/pages/settings.php:
|
| 264 |
msgid "Debug mode"
|
| 265 |
msgstr ""
|
| 266 |
|
| 267 |
-
#: admin/pages/settings.php:
|
| 268 |
msgid "General settings"
|
| 269 |
msgstr ""
|
| 270 |
|
| 271 |
-
#: admin/pages/settings.php:
|
| 272 |
msgid "Google profile"
|
| 273 |
msgstr ""
|
| 274 |
|
| 275 |
-
#: admin/pages/settings.php:
|
| 276 |
msgid "Authenticate with your Google account"
|
| 277 |
msgstr ""
|
| 278 |
|
| 279 |
-
#: admin/pages/settings.php:
|
| 280 |
msgid "Current UA-profile"
|
| 281 |
msgstr ""
|
| 282 |
|
| 283 |
-
#: admin/pages/settings.php:
|
| 284 |
msgid "Re-authenticate with your Google account"
|
| 285 |
msgstr ""
|
| 286 |
|
| 287 |
-
#: admin/pages/settings.php:
|
| 288 |
msgid "Manually enter your UA code"
|
| 289 |
msgstr ""
|
| 290 |
|
| 291 |
-
#: admin/pages/settings.php:
|
| 292 |
msgid "Track outbound click & downloads"
|
| 293 |
msgstr ""
|
| 294 |
|
| 295 |
-
#: admin/pages/settings.php:
|
| 296 |
msgid ""
|
| 297 |
"Clicks & downloads will be tracked as events, you can find these under "
|
| 298 |
"Content » Event Tracking in your Google Analytics reports."
|
| 299 |
msgstr ""
|
| 300 |
|
| 301 |
-
#: admin/pages/settings.php:
|
| 302 |
msgid "Allow tracking of anonymous data"
|
| 303 |
msgstr ""
|
| 304 |
|
| 305 |
-
#: admin/pages/settings.php:
|
| 306 |
msgid ""
|
| 307 |
"By allowing us to track anonymous data we can better help you, because we "
|
| 308 |
"know with which WordPress configurations, themes and plugins we should "
|
| 309 |
"test. No personal data will be submitted."
|
| 310 |
msgstr ""
|
| 311 |
|
| 312 |
-
#: admin/pages/settings.php:
|
| 313 |
msgid "Anonymize IP's"
|
| 314 |
msgstr ""
|
| 315 |
|
| 316 |
-
#: admin/pages/settings.php:
|
| 317 |
msgid ""
|
| 318 |
"This adds <code><a "
|
| 319 |
"href=\"http://code.google.com/apis/analytics/docs/gaJS/gaJSApi_gat.html#_"
|
|
@@ -322,21 +330,21 @@ msgid ""
|
|
| 322 |
"by removing the last octet of the IP address prior to its storage."
|
| 323 |
msgstr ""
|
| 324 |
|
| 325 |
-
#: admin/pages/settings.php:
|
| 326 |
msgid ""
|
| 327 |
"Users of the role you select will be ignored, so if you select Editor, all "
|
| 328 |
"Editors will be ignored."
|
| 329 |
msgstr ""
|
| 330 |
|
| 331 |
-
#: admin/pages/settings.php:
|
| 332 |
msgid "Universal settings"
|
| 333 |
msgstr ""
|
| 334 |
|
| 335 |
-
#: admin/pages/settings.php:
|
| 336 |
msgid "Enable Universal tracking"
|
| 337 |
msgstr ""
|
| 338 |
|
| 339 |
-
#: admin/pages/settings.php:
|
| 340 |
msgid ""
|
| 341 |
"First enable Universal tracking in your Google Analytics account. How to do "
|
| 342 |
"that, please read <a "
|
|
@@ -345,11 +353,11 @@ msgid ""
|
|
| 345 |
"target=\"_blank\">this guide</a> to learn how to do that."
|
| 346 |
msgstr ""
|
| 347 |
|
| 348 |
-
#: admin/pages/settings.php:
|
| 349 |
msgid "Enable Demographics and Interest Reports"
|
| 350 |
msgstr ""
|
| 351 |
|
| 352 |
-
#: admin/pages/settings.php:
|
| 353 |
msgid ""
|
| 354 |
"You have to enable the Demographics in Google Analytics before you can see "
|
| 355 |
"the tracking data. We have a doc in our <a "
|
|
@@ -359,51 +367,51 @@ msgid ""
|
|
| 359 |
"feature."
|
| 360 |
msgstr ""
|
| 361 |
|
| 362 |
-
#: admin/pages/settings.php:
|
| 363 |
msgid "Advanced settings"
|
| 364 |
msgstr ""
|
| 365 |
|
| 366 |
-
#: admin/pages/settings.php:
|
| 367 |
msgid "Track downloads as"
|
| 368 |
msgstr ""
|
| 369 |
|
| 370 |
-
#: admin/pages/settings.php:
|
| 371 |
msgid ""
|
| 372 |
"Not recommended, as this would skew your statistics, but it does make it "
|
| 373 |
"possible to track downloads as goals."
|
| 374 |
msgstr ""
|
| 375 |
|
| 376 |
-
#: admin/pages/settings.php:
|
| 377 |
msgid "Extensions of files to track as downloads"
|
| 378 |
msgstr ""
|
| 379 |
|
| 380 |
-
#: admin/pages/settings.php:
|
| 381 |
msgid "Track full URL of outbound clicks or just the domain"
|
| 382 |
msgstr ""
|
| 383 |
|
| 384 |
-
#: admin/pages/settings.php:
|
| 385 |
msgid "Subdomain tracking"
|
| 386 |
msgstr ""
|
| 387 |
|
| 388 |
-
#: admin/pages/settings.php:
|
| 389 |
msgid ""
|
| 390 |
"This allows you to set the domain that's set by <code>setDomainName</code> "
|
| 391 |
"for tracking subdomains, if empty this will not be set."
|
| 392 |
msgstr ""
|
| 393 |
|
| 394 |
-
#: admin/pages/settings.php:
|
| 395 |
msgid "Set path for internal links to track as outbound links"
|
| 396 |
msgstr ""
|
| 397 |
|
| 398 |
-
#: admin/pages/settings.php:
|
| 399 |
msgid "Label for those links"
|
| 400 |
msgstr ""
|
| 401 |
|
| 402 |
-
#: admin/pages/settings.php:
|
| 403 |
msgid "Tag links in RSS feed with campaign variables"
|
| 404 |
msgstr ""
|
| 405 |
|
| 406 |
-
#: admin/pages/settings.php:
|
| 407 |
msgid ""
|
| 408 |
"Do not use this feature if you use FeedBurner, as FeedBurner can do this "
|
| 409 |
"automatically, and better than this plugin can. Check <a "
|
|
@@ -412,11 +420,11 @@ msgid ""
|
|
| 412 |
"enable this feature in FeedBurner."
|
| 413 |
msgstr ""
|
| 414 |
|
| 415 |
-
#: admin/pages/settings.php:
|
| 416 |
msgid "Allow anchor"
|
| 417 |
msgstr ""
|
| 418 |
|
| 419 |
-
#: admin/pages/settings.php:
|
| 420 |
msgid ""
|
| 421 |
"This adds a <code><a "
|
| 422 |
"href=\"http://code.google.com/apis/analytics/docs/gaJSApiCampaignTracking."
|
|
@@ -425,11 +433,11 @@ msgid ""
|
|
| 425 |
"and makes RSS link tagging use a # as well."
|
| 426 |
msgstr ""
|
| 427 |
|
| 428 |
-
#: admin/pages/settings.php:
|
| 429 |
msgid "Add <code>_setAllowLinker</code>"
|
| 430 |
msgstr ""
|
| 431 |
|
| 432 |
-
#: admin/pages/settings.php:
|
| 433 |
msgid ""
|
| 434 |
"This adds a <code><a "
|
| 435 |
"href=\"http://code.google.com/apis/analytics/docs/gaJS/"
|
|
@@ -438,17 +446,17 @@ msgid ""
|
|
| 438 |
"allowing you to use <code>_link</code> and related functions."
|
| 439 |
msgstr ""
|
| 440 |
|
| 441 |
-
#: admin/pages/settings.php:
|
| 442 |
msgid ""
|
| 443 |
"Not for the average user: this allows you to add a line of code, to be "
|
| 444 |
"added before the <code>trackPageview</code> call."
|
| 445 |
msgstr ""
|
| 446 |
|
| 447 |
-
#: admin/pages/settings.php:
|
| 448 |
msgid "Debug settings"
|
| 449 |
msgstr ""
|
| 450 |
|
| 451 |
-
#: admin/pages/settings.php:
|
| 452 |
msgid ""
|
| 453 |
"If you want to confirm that tracking on your blog is working as it should, "
|
| 454 |
"enable these options and check the console in Firebug (for Firefox), "
|
|
@@ -457,23 +465,23 @@ msgid ""
|
|
| 457 |
"normal tracking."
|
| 458 |
msgstr ""
|
| 459 |
|
| 460 |
-
#: admin/pages/settings.php:
|
| 461 |
msgid "Note"
|
| 462 |
msgstr ""
|
| 463 |
|
| 464 |
-
#: admin/pages/settings.php:
|
| 465 |
msgid "the debugging and firebug scripts are only loaded for admins."
|
| 466 |
msgstr ""
|
| 467 |
|
| 468 |
-
#: admin/pages/settings.php:
|
| 469 |
msgid "Enable debug mode"
|
| 470 |
msgstr ""
|
| 471 |
|
| 472 |
-
#: admin/pages/settings.php:
|
| 473 |
msgid "Enable Firebug Lite"
|
| 474 |
msgstr ""
|
| 475 |
|
| 476 |
-
#: admin/pages/settings.php:
|
| 477 |
msgid "Select the users to ignore"
|
| 478 |
msgstr ""
|
| 479 |
|
| 2 |
# This file is distributed under the GPL v3.
|
| 3 |
msgid ""
|
| 4 |
msgstr ""
|
| 5 |
+
"Project-Id-Version: Google Analytics by Yoast 5.0.7\n"
|
| 6 |
"Report-Msgid-Bugs-To: "
|
| 7 |
"http://wordpress.org/support/plugin/google-analytics-for-wordpress\n"
|
| 8 |
+
"POT-Creation-Date: 2014-10-27 13:10:36+00:00\n"
|
| 9 |
"MIME-Version: 1.0\n"
|
| 10 |
"Content-Type: text/plain; charset=utf-8\n"
|
| 11 |
"Content-Transfer-Encoding: 8bit\n"
|
| 25 |
"X-Poedit-SearchPath-0: .\n"
|
| 26 |
"X-Textdomain-Support: yes\n"
|
| 27 |
|
| 28 |
+
#: admin/class-admin.php:66
|
| 29 |
+
msgid "Please configure your %sGoogle Analytics settings%s!"
|
| 30 |
+
msgstr ""
|
| 31 |
+
|
| 32 |
+
#: admin/class-admin.php:93
|
| 33 |
msgid "Settings saved!"
|
| 34 |
msgstr ""
|
| 35 |
|
| 36 |
+
#: admin/class-admin.php:100
|
| 37 |
+
msgid "There where no changes to save, please try again."
|
| 38 |
msgstr ""
|
| 39 |
|
| 40 |
+
#: admin/class-admin.php:119
|
| 41 |
msgid "FAQ"
|
| 42 |
msgstr ""
|
| 43 |
|
| 44 |
+
#: admin/class-admin.php:122
|
|
|
|
| 45 |
msgid "Settings"
|
| 46 |
msgstr ""
|
| 47 |
|
| 48 |
+
#: admin/class-admin.php:145 admin/class-admin.php:169
|
|
|
|
| 49 |
msgid "Yoast Google Analytics:"
|
| 50 |
msgstr ""
|
| 51 |
|
| 52 |
+
#: admin/class-admin.php:145
|
| 53 |
msgid "General Settings"
|
| 54 |
msgstr ""
|
| 55 |
|
| 56 |
+
#: admin/class-admin.php:145
|
| 57 |
msgid "Analytics"
|
| 58 |
msgstr ""
|
| 59 |
|
| 60 |
+
#: admin/class-admin.php:602
|
| 61 |
+
msgid "Debug information"
|
| 62 |
msgstr ""
|
| 63 |
|
| 64 |
+
#: admin/class-admin.php:619 admin/class-admin.php:625
|
| 65 |
+
msgid "Google Analytics"
|
| 66 |
msgstr ""
|
| 67 |
|
| 68 |
+
#: admin/class-admin.php:619
|
| 69 |
+
msgid "Premium"
|
| 70 |
+
msgstr ""
|
| 71 |
+
|
| 72 |
+
#: admin/class-admin.php:620
|
| 73 |
+
msgid ""
|
| 74 |
+
"The premium version of Google Analytics for WordPress with more features "
|
| 75 |
+
"& support."
|
| 76 |
+
msgstr ""
|
| 77 |
+
|
| 78 |
+
#: admin/class-admin.php:625
|
| 79 |
+
msgid "E-Commerce tracking"
|
| 80 |
+
msgstr ""
|
| 81 |
+
|
| 82 |
+
#: admin/class-admin.php:626
|
| 83 |
+
msgid ""
|
| 84 |
+
"Track your E-Commerce data and transactions with this E-Commerce extension "
|
| 85 |
+
"for Google Analytics."
|
| 86 |
msgstr ""
|
| 87 |
|
| 88 |
#: admin/license-manager/class-license-manager.php:137
|
| 234 |
msgid "Yoast Google Analytics: Dashboard"
|
| 235 |
msgstr ""
|
| 236 |
|
| 237 |
+
#: admin/pages/extensions.php:10
|
| 238 |
+
msgid "Yoast Google Analytics: Extensions"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 239 |
msgstr ""
|
| 240 |
|
| 241 |
+
#: admin/pages/extensions.php:13
|
| 242 |
+
msgid "Extensions"
|
| 243 |
msgstr ""
|
| 244 |
|
| 245 |
+
#: admin/pages/extensions.php:14
|
| 246 |
msgid "Licenses"
|
| 247 |
msgstr ""
|
| 248 |
|
| 249 |
+
#: admin/pages/extensions.php:58
|
| 250 |
msgid ""
|
| 251 |
"You have not installed any extensions for Yoast Google Analytics, so there "
|
| 252 |
"are no licenses to activate."
|
| 268 |
msgid "Advanced"
|
| 269 |
msgstr ""
|
| 270 |
|
| 271 |
+
#: admin/pages/settings.php:17
|
| 272 |
msgid "Debug mode"
|
| 273 |
msgstr ""
|
| 274 |
|
| 275 |
+
#: admin/pages/settings.php:27
|
| 276 |
msgid "General settings"
|
| 277 |
msgstr ""
|
| 278 |
|
| 279 |
+
#: admin/pages/settings.php:40
|
| 280 |
msgid "Google profile"
|
| 281 |
msgstr ""
|
| 282 |
|
| 283 |
+
#: admin/pages/settings.php:41
|
| 284 |
msgid "Authenticate with your Google account"
|
| 285 |
msgstr ""
|
| 286 |
|
| 287 |
+
#: admin/pages/settings.php:44
|
| 288 |
msgid "Current UA-profile"
|
| 289 |
msgstr ""
|
| 290 |
|
| 291 |
+
#: admin/pages/settings.php:52
|
| 292 |
msgid "Re-authenticate with your Google account"
|
| 293 |
msgstr ""
|
| 294 |
|
| 295 |
+
#: admin/pages/settings.php:58
|
| 296 |
msgid "Manually enter your UA code"
|
| 297 |
msgstr ""
|
| 298 |
|
| 299 |
+
#: admin/pages/settings.php:67
|
| 300 |
msgid "Track outbound click & downloads"
|
| 301 |
msgstr ""
|
| 302 |
|
| 303 |
+
#: admin/pages/settings.php:67
|
| 304 |
msgid ""
|
| 305 |
"Clicks & downloads will be tracked as events, you can find these under "
|
| 306 |
"Content » Event Tracking in your Google Analytics reports."
|
| 307 |
msgstr ""
|
| 308 |
|
| 309 |
+
#: admin/pages/settings.php:68
|
| 310 |
msgid "Allow tracking of anonymous data"
|
| 311 |
msgstr ""
|
| 312 |
|
| 313 |
+
#: admin/pages/settings.php:68
|
| 314 |
msgid ""
|
| 315 |
"By allowing us to track anonymous data we can better help you, because we "
|
| 316 |
"know with which WordPress configurations, themes and plugins we should "
|
| 317 |
"test. No personal data will be submitted."
|
| 318 |
msgstr ""
|
| 319 |
|
| 320 |
+
#: admin/pages/settings.php:69
|
| 321 |
msgid "Anonymize IP's"
|
| 322 |
msgstr ""
|
| 323 |
|
| 324 |
+
#: admin/pages/settings.php:69
|
| 325 |
msgid ""
|
| 326 |
"This adds <code><a "
|
| 327 |
"href=\"http://code.google.com/apis/analytics/docs/gaJS/gaJSApi_gat.html#_"
|
| 330 |
"by removing the last octet of the IP address prior to its storage."
|
| 331 |
msgstr ""
|
| 332 |
|
| 333 |
+
#: admin/pages/settings.php:70
|
| 334 |
msgid ""
|
| 335 |
"Users of the role you select will be ignored, so if you select Editor, all "
|
| 336 |
"Editors will be ignored."
|
| 337 |
msgstr ""
|
| 338 |
|
| 339 |
+
#: admin/pages/settings.php:75
|
| 340 |
msgid "Universal settings"
|
| 341 |
msgstr ""
|
| 342 |
|
| 343 |
+
#: admin/pages/settings.php:76
|
| 344 |
msgid "Enable Universal tracking"
|
| 345 |
msgstr ""
|
| 346 |
|
| 347 |
+
#: admin/pages/settings.php:76
|
| 348 |
msgid ""
|
| 349 |
"First enable Universal tracking in your Google Analytics account. How to do "
|
| 350 |
"that, please read <a "
|
| 353 |
"target=\"_blank\">this guide</a> to learn how to do that."
|
| 354 |
msgstr ""
|
| 355 |
|
| 356 |
+
#: admin/pages/settings.php:77
|
| 357 |
msgid "Enable Demographics and Interest Reports"
|
| 358 |
msgstr ""
|
| 359 |
|
| 360 |
+
#: admin/pages/settings.php:77
|
| 361 |
msgid ""
|
| 362 |
"You have to enable the Demographics in Google Analytics before you can see "
|
| 363 |
"the tracking data. We have a doc in our <a "
|
| 367 |
"feature."
|
| 368 |
msgstr ""
|
| 369 |
|
| 370 |
+
#: admin/pages/settings.php:82
|
| 371 |
msgid "Advanced settings"
|
| 372 |
msgstr ""
|
| 373 |
|
| 374 |
+
#: admin/pages/settings.php:83
|
| 375 |
msgid "Track downloads as"
|
| 376 |
msgstr ""
|
| 377 |
|
| 378 |
+
#: admin/pages/settings.php:83
|
| 379 |
msgid ""
|
| 380 |
"Not recommended, as this would skew your statistics, but it does make it "
|
| 381 |
"possible to track downloads as goals."
|
| 382 |
msgstr ""
|
| 383 |
|
| 384 |
+
#: admin/pages/settings.php:84
|
| 385 |
msgid "Extensions of files to track as downloads"
|
| 386 |
msgstr ""
|
| 387 |
|
| 388 |
+
#: admin/pages/settings.php:85
|
| 389 |
msgid "Track full URL of outbound clicks or just the domain"
|
| 390 |
msgstr ""
|
| 391 |
|
| 392 |
+
#: admin/pages/settings.php:86
|
| 393 |
msgid "Subdomain tracking"
|
| 394 |
msgstr ""
|
| 395 |
|
| 396 |
+
#: admin/pages/settings.php:86
|
| 397 |
msgid ""
|
| 398 |
"This allows you to set the domain that's set by <code>setDomainName</code> "
|
| 399 |
"for tracking subdomains, if empty this will not be set."
|
| 400 |
msgstr ""
|
| 401 |
|
| 402 |
+
#: admin/pages/settings.php:88
|
| 403 |
msgid "Set path for internal links to track as outbound links"
|
| 404 |
msgstr ""
|
| 405 |
|
| 406 |
+
#: admin/pages/settings.php:89
|
| 407 |
msgid "Label for those links"
|
| 408 |
msgstr ""
|
| 409 |
|
| 410 |
+
#: admin/pages/settings.php:91
|
| 411 |
msgid "Tag links in RSS feed with campaign variables"
|
| 412 |
msgstr ""
|
| 413 |
|
| 414 |
+
#: admin/pages/settings.php:91
|
| 415 |
msgid ""
|
| 416 |
"Do not use this feature if you use FeedBurner, as FeedBurner can do this "
|
| 417 |
"automatically, and better than this plugin can. Check <a "
|
| 420 |
"enable this feature in FeedBurner."
|
| 421 |
msgstr ""
|
| 422 |
|
| 423 |
+
#: admin/pages/settings.php:92
|
| 424 |
msgid "Allow anchor"
|
| 425 |
msgstr ""
|
| 426 |
|
| 427 |
+
#: admin/pages/settings.php:92
|
| 428 |
msgid ""
|
| 429 |
"This adds a <code><a "
|
| 430 |
"href=\"http://code.google.com/apis/analytics/docs/gaJSApiCampaignTracking."
|
| 433 |
"and makes RSS link tagging use a # as well."
|
| 434 |
msgstr ""
|
| 435 |
|
| 436 |
+
#: admin/pages/settings.php:93
|
| 437 |
msgid "Add <code>_setAllowLinker</code>"
|
| 438 |
msgstr ""
|
| 439 |
|
| 440 |
+
#: admin/pages/settings.php:93
|
| 441 |
msgid ""
|
| 442 |
"This adds a <code><a "
|
| 443 |
"href=\"http://code.google.com/apis/analytics/docs/gaJS/"
|
| 446 |
"allowing you to use <code>_link</code> and related functions."
|
| 447 |
msgstr ""
|
| 448 |
|
| 449 |
+
#: admin/pages/settings.php:94
|
| 450 |
msgid ""
|
| 451 |
"Not for the average user: this allows you to add a line of code, to be "
|
| 452 |
"added before the <code>trackPageview</code> call."
|
| 453 |
msgstr ""
|
| 454 |
|
| 455 |
+
#: admin/pages/settings.php:102
|
| 456 |
msgid "Debug settings"
|
| 457 |
msgstr ""
|
| 458 |
|
| 459 |
+
#: admin/pages/settings.php:105
|
| 460 |
msgid ""
|
| 461 |
"If you want to confirm that tracking on your blog is working as it should, "
|
| 462 |
"enable these options and check the console in Firebug (for Firefox), "
|
| 465 |
"normal tracking."
|
| 466 |
msgstr ""
|
| 467 |
|
| 468 |
+
#: admin/pages/settings.php:106
|
| 469 |
msgid "Note"
|
| 470 |
msgstr ""
|
| 471 |
|
| 472 |
+
#: admin/pages/settings.php:106
|
| 473 |
msgid "the debugging and firebug scripts are only loaded for admins."
|
| 474 |
msgstr ""
|
| 475 |
|
| 476 |
+
#: admin/pages/settings.php:108
|
| 477 |
msgid "Enable debug mode"
|
| 478 |
msgstr ""
|
| 479 |
|
| 480 |
+
#: admin/pages/settings.php:109
|
| 481 |
msgid "Enable Firebug Lite"
|
| 482 |
msgstr ""
|
| 483 |
|
| 484 |
+
#: admin/pages/settings.php:121
|
| 485 |
msgid "Select the users to ignore"
|
| 486 |
msgstr ""
|
| 487 |
|
readme.txt
CHANGED
|
@@ -4,7 +4,7 @@ Donate link: https://yoast.com/donate/
|
|
| 4 |
Tags: analytics, google analytics, statistics, tracking, stats, google, yoast
|
| 5 |
Requires at least: 3.8
|
| 6 |
Tested up to: 4.0
|
| 7 |
-
Stable tag: 5.
|
| 8 |
|
| 9 |
Track your WordPress site easily with the latest tracking codes and lots added data for search result pages and error pages.
|
| 10 |
|
|
@@ -13,7 +13,7 @@ Track your WordPress site easily with the latest tracking codes and lots added d
|
|
| 13 |
The Google Analytics by Yoast plugin for WordPress allows you to track your blog easily and always stays up to date with the newest features in Google Analytics.
|
| 14 |
|
| 15 |
> <strong>Development on GitHub</strong><br>
|
| 16 |
-
> The development of Google Analytics by Yoast [takes place on GitHub](https://github.com/Yoast/google-analytics-for-wordpress). Bugs and pull requests are welcomed there. For support,
|
| 17 |
|
| 18 |
Full list of features:
|
| 19 |
|
|
@@ -49,6 +49,21 @@ This section describes how to install the plugin and get it working.
|
|
| 49 |
|
| 50 |
== Changelog ==
|
| 51 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 52 |
= 5.0.7 =
|
| 53 |
Release Date: October 14th, 2014
|
| 54 |
|
| 4 |
Tags: analytics, google analytics, statistics, tracking, stats, google, yoast
|
| 5 |
Requires at least: 3.8
|
| 6 |
Tested up to: 4.0
|
| 7 |
+
Stable tag: 5.1
|
| 8 |
|
| 9 |
Track your WordPress site easily with the latest tracking codes and lots added data for search result pages and error pages.
|
| 10 |
|
| 13 |
The Google Analytics by Yoast plugin for WordPress allows you to track your blog easily and always stays up to date with the newest features in Google Analytics.
|
| 14 |
|
| 15 |
> <strong>Development on GitHub</strong><br>
|
| 16 |
+
> The development of Google Analytics by Yoast [takes place on GitHub](https://github.com/Yoast/google-analytics-for-wordpress). Bugs and pull requests are welcomed there. For support, you have two options: either [buy the premium version of Google Analytics by Yoast on Yoast.com](https://yoast.com/wordpress/plugins/google-analytics/), this will give you access to our support team, or refer to the forums.
|
| 17 |
|
| 18 |
Full list of features:
|
| 19 |
|
| 49 |
|
| 50 |
== Changelog ==
|
| 51 |
|
| 52 |
+
= 5.1 =
|
| 53 |
+
|
| 54 |
+
Release Date: October 30th, 2014
|
| 55 |
+
|
| 56 |
+
* Bugfixes:
|
| 57 |
+
* Fixes a possible JavaScript conflict within the tracking code.
|
| 58 |
+
* Makes sure translations are loaded correctly.
|
| 59 |
+
|
| 60 |
+
* Enhancements:
|
| 61 |
+
* Improved UX for help texts in form.
|
| 62 |
+
* Added "Google Analytics by Yoast Premium" to the extensions page.
|
| 63 |
+
* Makes sure the user returns to the original settings tab after saving.
|
| 64 |
+
* Added a filter `wp_nav_menu` to enable tracking outbound links from the menu.
|
| 65 |
+
* Added a filter `wp_list_bookmarks` to enable tracking for blogroll widgets.
|
| 66 |
+
|
| 67 |
= 5.0.7 =
|
| 68 |
Release Date: October 14th, 2014
|
| 69 |
|
