Version Description
- Made some changes to address suppressed PHP notices in PHP 7.1
- Fixed stray string being output in admin in certain situations
- Fixed incompatibility with Gravity Forms
Download this release
Release Info
Developer | digitalpoint |
Plugin | Better Google Analytics |
Version | 1.2.2 |
Comparing to | |
See all releases |
Code changes from version 1.2.1 to 1.2.2
- better-analytics.php +2 -2
- library/DigitalPointBetterAnalytics/Base/Admin.php +2 -9
- library/DigitalPointBetterAnalytics/ControllerAdmin/Analytics.php +4 -4
- library/DigitalPointBetterAnalytics/Formatting/ExperimentTable.php +6 -2
- library/DigitalPointBetterAnalytics/Formatting/GoalTable.php +1 -1
- library/DigitalPointBetterAnalytics/Model/Experiments.php +9 -1
- library/DigitalPointBetterAnalytics/ViewAdmin/experiments.php +14 -13
- library/DigitalPointBetterAnalytics/ViewAdmin/goals.php +3 -3
- library/DigitalPointBetterAnalytics/ViewAdmin/test.php +3 -3
- readme.txt +10 -3
better-analytics.php
CHANGED
@@ -7,7 +7,7 @@
|
|
7 |
Plugin Name: Better Analytics
|
8 |
Plugin URI: https://marketplace.digitalpoint.com/better-analytics.3354/item
|
9 |
Description: Adds Google Universal Analytics code to your WordPress site. Options to track most everything (social button interactions, advertising clicks, emails sent/opened, YouTube video engagement, custom dimension tracking of authors/categories, etc.) Integrates with API for reports/charts on dashboard, heat maps and real-time traffic tracking.
|
10 |
-
Version: 1.2.
|
11 |
Author: Digital Point
|
12 |
Author URI: https://www.digitalpoint.com/
|
13 |
License: GPLv2
|
@@ -23,7 +23,7 @@ if (!function_exists('add_action'))
|
|
23 |
exit;
|
24 |
}
|
25 |
|
26 |
-
define('BETTER_ANALYTICS_VERSION', '1.2.
|
27 |
define('BETTER_ANALYTICS_MINIMUM_WP_VERSION', '3.8'); // Dashicons: https://codex.wordpress.org/Function_Reference/add_menu_page
|
28 |
define('BETTER_ANALYTICS_PRODUCT_URL', 'https://marketplace.digitalpoint.com/better-analytics.3354/item');
|
29 |
define('BETTER_ANALYTICS_PRO_PRODUCT_URL', 'https://marketplace.digitalpoint.com/better-analytics-pro.3355/item');
|
7 |
Plugin Name: Better Analytics
|
8 |
Plugin URI: https://marketplace.digitalpoint.com/better-analytics.3354/item
|
9 |
Description: Adds Google Universal Analytics code to your WordPress site. Options to track most everything (social button interactions, advertising clicks, emails sent/opened, YouTube video engagement, custom dimension tracking of authors/categories, etc.) Integrates with API for reports/charts on dashboard, heat maps and real-time traffic tracking.
|
10 |
+
Version: 1.2.2
|
11 |
Author: Digital Point
|
12 |
Author URI: https://www.digitalpoint.com/
|
13 |
License: GPLv2
|
23 |
exit;
|
24 |
}
|
25 |
|
26 |
+
define('BETTER_ANALYTICS_VERSION', '1.2.2');
|
27 |
define('BETTER_ANALYTICS_MINIMUM_WP_VERSION', '3.8'); // Dashicons: https://codex.wordpress.org/Function_Reference/add_menu_page
|
28 |
define('BETTER_ANALYTICS_PRODUCT_URL', 'https://marketplace.digitalpoint.com/better-analytics.3354/item');
|
29 |
define('BETTER_ANALYTICS_PRO_PRODUCT_URL', 'https://marketplace.digitalpoint.com/better-analytics-pro.3355/item');
|
library/DigitalPointBetterAnalytics/Base/Admin.php
CHANGED
@@ -207,8 +207,6 @@ class DigitalPointBetterAnalytics_Base_Admin
|
|
207 |
{
|
208 |
if (empty($betterAnalyticsOptions['roles_no_track']) || !array_intersect((array)$currentUser->roles, (array)@$betterAnalyticsOptions['roles_no_track']))
|
209 |
{
|
210 |
-
echo 'YYY';
|
211 |
-
|
212 |
DigitalPointBetterAnalytics_Base_Public::getInstance()->insert_code();
|
213 |
include(BETTER_ANALYTICS_PLUGIN_DIR . 'js/universal.php');
|
214 |
}
|
@@ -292,7 +290,7 @@ class DigitalPointBetterAnalytics_Base_Admin
|
|
292 |
{
|
293 |
global $plugin_page;
|
294 |
|
295 |
-
$method = 'action' . ucwords(strtolower(preg_replace('#[^a-z0-9]#i', '', substr($plugin_page ? $plugin_page :
|
296 |
|
297 |
$controller = $this->_getController();
|
298 |
if (method_exists($controller, $method))
|
@@ -317,12 +315,7 @@ class DigitalPointBetterAnalytics_Base_Admin
|
|
317 |
|
318 |
public function removable_query_args($args)
|
319 |
{
|
320 |
-
if (empty($_REQUEST['action']))
|
321 |
-
{
|
322 |
-
$_REQUEST['action'] = 'unsed';
|
323 |
-
}
|
324 |
-
|
325 |
-
if (strpos(@$_SERVER['REQUEST_URI'], 'page=better-analytics') !== false && (@$_REQUEST['action'] == 'start' || @$_REQUEST['action'] == 'stop' || @$_REQUEST['action'] == 'delete' || @$_REQUEST['action'] == 'activate' || @$_REQUEST['action'] == 'deactivate'))
|
326 |
{
|
327 |
$args[] = 'id';
|
328 |
$args[] = 'action';
|
207 |
{
|
208 |
if (empty($betterAnalyticsOptions['roles_no_track']) || !array_intersect((array)$currentUser->roles, (array)@$betterAnalyticsOptions['roles_no_track']))
|
209 |
{
|
|
|
|
|
210 |
DigitalPointBetterAnalytics_Base_Public::getInstance()->insert_code();
|
211 |
include(BETTER_ANALYTICS_PLUGIN_DIR . 'js/universal.php');
|
212 |
}
|
290 |
{
|
291 |
global $plugin_page;
|
292 |
|
293 |
+
$method = 'action' . ucwords(strtolower(preg_replace('#[^a-z0-9]#i', '', substr($plugin_page ? $plugin_page : (!empty($_REQUEST['action']) ? $_REQUEST['action'] : ''), 17))));
|
294 |
|
295 |
$controller = $this->_getController();
|
296 |
if (method_exists($controller, $method))
|
315 |
|
316 |
public function removable_query_args($args)
|
317 |
{
|
318 |
+
if (strpos(@$_SERVER['REQUEST_URI'], 'page=better-analytics') !== false && !empty($_REQUEST['action']) && ($_REQUEST['action'] == 'start' || $_REQUEST['action'] == 'stop' || $_REQUEST['action'] == 'delete' || $_REQUEST['action'] == 'activate' || $_REQUEST['action'] == 'deactivate'))
|
|
|
|
|
|
|
|
|
|
|
319 |
{
|
320 |
$args[] = 'id';
|
321 |
$args[] = 'action';
|
library/DigitalPointBetterAnalytics/ControllerAdmin/Analytics.php
CHANGED
@@ -791,9 +791,9 @@ class DigitalPointBetterAnalytics_ControllerAdmin_Analytics
|
|
791 |
$betterAnalyticsOptions = get_option('better_analytics');
|
792 |
$reportingClass = DigitalPointBetterAnalytics_Helper_Reporting::getInstance();
|
793 |
|
794 |
-
if (
|
795 |
{
|
796 |
-
if ($goalId = absint(
|
797 |
{
|
798 |
check_admin_referer($_REQUEST['action'] . '-goal');
|
799 |
|
@@ -807,7 +807,7 @@ class DigitalPointBetterAnalytics_ControllerAdmin_Analytics
|
|
807 |
}
|
808 |
}
|
809 |
}
|
810 |
-
elseif (
|
811 |
{
|
812 |
if (!empty($_REQUEST['checked']) && is_array($_REQUEST['checked']))
|
813 |
{
|
@@ -866,7 +866,7 @@ class DigitalPointBetterAnalytics_ControllerAdmin_Analytics
|
|
866 |
$betterAnalyticsOptions = get_option('better_analytics');
|
867 |
$reportingClass = DigitalPointBetterAnalytics_Helper_Reporting::getInstance();
|
868 |
|
869 |
-
if (
|
870 |
{
|
871 |
if (!empty($_REQUEST['checked']) && is_array($_REQUEST['checked']))
|
872 |
{
|
791 |
$betterAnalyticsOptions = get_option('better_analytics');
|
792 |
$reportingClass = DigitalPointBetterAnalytics_Helper_Reporting::getInstance();
|
793 |
|
794 |
+
if (!empty($_REQUEST['action']) && ($_REQUEST['action'] == 'activate' || $_REQUEST['action'] == 'deactivate'))
|
795 |
{
|
796 |
+
if (!empty($_REQUEST['id']) && $goalId = absint($_REQUEST['id']))
|
797 |
{
|
798 |
check_admin_referer($_REQUEST['action'] . '-goal');
|
799 |
|
807 |
}
|
808 |
}
|
809 |
}
|
810 |
+
elseif (!empty($_REQUEST['action']) && ($_REQUEST['action'] == 'activate-selected' || $_REQUEST['action'] == 'deactivate-selected'))
|
811 |
{
|
812 |
if (!empty($_REQUEST['checked']) && is_array($_REQUEST['checked']))
|
813 |
{
|
866 |
$betterAnalyticsOptions = get_option('better_analytics');
|
867 |
$reportingClass = DigitalPointBetterAnalytics_Helper_Reporting::getInstance();
|
868 |
|
869 |
+
if (!empty($_REQUEST['action']) && ($_REQUEST['action'] == 'start-selected' || $_REQUEST['action'] == 'end-selected' || $_REQUEST['action'] == 'delete-selected'))
|
870 |
{
|
871 |
if (!empty($_REQUEST['checked']) && is_array($_REQUEST['checked']))
|
872 |
{
|
library/DigitalPointBetterAnalytics/Formatting/ExperimentTable.php
CHANGED
@@ -104,7 +104,7 @@ class DigitalPointBetterAnalytics_Formatting_ExperimentTable extends WP_List_Tab
|
|
104 |
$sortOrder[] = strtolower(@$item[$sortOrders[$_REQUEST['orderby']]['key']]);
|
105 |
}
|
106 |
|
107 |
-
array_multisort($sortOrder, (@$_REQUEST['order'] == 'desc' ? SORT_DESC : SORT_ASC), $sortOrders[$_REQUEST['orderby']]['type'], $this->items);
|
108 |
}
|
109 |
}
|
110 |
|
@@ -274,10 +274,14 @@ class DigitalPointBetterAnalytics_Formatting_ExperimentTable extends WP_List_Tab
|
|
274 |
{
|
275 |
$types = DigitalPointBetterAnalytics_Model_Experiments::getTypes();
|
276 |
|
277 |
-
if (
|
278 |
{
|
279 |
$type = esc_html__('Unknown', 'better-analytics');
|
280 |
}
|
|
|
|
|
|
|
|
|
281 |
|
282 |
echo $type;
|
283 |
}
|
104 |
$sortOrder[] = strtolower(@$item[$sortOrders[$_REQUEST['orderby']]['key']]);
|
105 |
}
|
106 |
|
107 |
+
array_multisort($sortOrder, (!empty(@$_REQUEST['order']) && $_REQUEST['order'] == 'desc' ? SORT_DESC : SORT_ASC), $sortOrders[$_REQUEST['orderby']]['type'], $this->items);
|
108 |
}
|
109 |
}
|
110 |
|
274 |
{
|
275 |
$types = DigitalPointBetterAnalytics_Model_Experiments::getTypes();
|
276 |
|
277 |
+
if (empty($item['extraData']['type']) || empty($types[$item['extraData']['type']]))
|
278 |
{
|
279 |
$type = esc_html__('Unknown', 'better-analytics');
|
280 |
}
|
281 |
+
else
|
282 |
+
{
|
283 |
+
$type = $types[$item['extraData']['type']];
|
284 |
+
}
|
285 |
|
286 |
echo $type;
|
287 |
}
|
library/DigitalPointBetterAnalytics/Formatting/GoalTable.php
CHANGED
@@ -80,7 +80,7 @@ class DigitalPointBetterAnalytics_Formatting_GoalTable extends WP_List_Table
|
|
80 |
$sortOrder[] = strtolower($item[$sortOrders[$_REQUEST['orderby']]['key']]);
|
81 |
}
|
82 |
|
83 |
-
array_multisort($sortOrder, (@$_REQUEST['order'] == 'desc' ? SORT_DESC : SORT_ASC), $sortOrders[$_REQUEST['orderby']]['type'], $this->items);
|
84 |
}
|
85 |
}
|
86 |
|
80 |
$sortOrder[] = strtolower($item[$sortOrders[$_REQUEST['orderby']]['key']]);
|
81 |
}
|
82 |
|
83 |
+
array_multisort($sortOrder, (!empty(@$_REQUEST['order']) && $_REQUEST['order'] == 'desc' ? SORT_DESC : SORT_ASC), $sortOrders[$_REQUEST['orderby']]['type'], $this->items);
|
84 |
}
|
85 |
}
|
86 |
|
library/DigitalPointBetterAnalytics/Model/Experiments.php
CHANGED
@@ -86,7 +86,15 @@ class DigitalPointBetterAnalytics_Model_Experiments
|
|
86 |
|
87 |
public static function decodeExperimentData(&$experiment)
|
88 |
{
|
89 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
90 |
$experiment['fromBetterAnalytics'] = is_array($experiment['extraData']) && !empty($experiment['extraData']['type']);
|
91 |
|
92 |
if (is_array($experiment['variations']))
|
86 |
|
87 |
public static function decodeExperimentData(&$experiment)
|
88 |
{
|
89 |
+
if (!empty($experiment['description']))
|
90 |
+
{
|
91 |
+
$experiment['extraData'] = @json_decode($experiment['description'], true);
|
92 |
+
}
|
93 |
+
else
|
94 |
+
{
|
95 |
+
$experiment['extraData'] = false;
|
96 |
+
}
|
97 |
+
|
98 |
$experiment['fromBetterAnalytics'] = is_array($experiment['extraData']) && !empty($experiment['extraData']['type']);
|
99 |
|
100 |
if (is_array($experiment['variations']))
|
library/DigitalPointBetterAnalytics/ViewAdmin/experiments.php
CHANGED
@@ -32,7 +32,8 @@ if ($experimentId && $accountId = DigitalPointBetterAnalytics_Model_Reporting::g
|
|
32 |
}
|
33 |
}
|
34 |
|
35 |
-
|
|
|
36 |
{
|
37 |
if (empty($experiment['status']))
|
38 |
{
|
@@ -331,7 +332,7 @@ if (@$_REQUEST['action'] == 'create_edit')
|
|
331 |
$postId = 0;
|
332 |
if (!empty($experiment['extraData']['post_title']) && !empty($experiment['extraData']['post_title']['post_id']))
|
333 |
{
|
334 |
-
$postId = $experiment['extraData']['page_title']['post_id'];
|
335 |
}
|
336 |
|
337 |
echo '<option value="' . absint($post->ID) . '"' . ($post->ID == $postId ? ' selected="selected"' : '') . '>' . htmlentities($post->post_title) . '</option>';
|
@@ -589,18 +590,18 @@ if (@$_REQUEST['action'] == 'create_edit')
|
|
589 |
$errorMessage = array();
|
590 |
|
591 |
$experimentObject = array(
|
592 |
-
'status' => sanitize_text_field(
|
593 |
'servingFramework' => 'API',
|
594 |
'editableInGaUi' => false,
|
595 |
);
|
596 |
|
597 |
if (@$experiment['status'] != 'ENDED')
|
598 |
{
|
599 |
-
$experimentObject['minimumExperimentLengthInDays'] = absint(
|
600 |
-
$experimentObject['equalWeighting'] = (
|
601 |
-
$experimentObject['name'] = sanitize_text_field(
|
602 |
-
$experimentObject['trafficCoverage'] = absint(
|
603 |
-
$experimentObject['winnerConfidenceLevel'] = absint(
|
604 |
}
|
605 |
|
606 |
if (@$experiment['status'] != 'RUNNING' && @$experiment['status'] != 'ENDED')
|
@@ -754,26 +755,26 @@ if (@$_REQUEST['action'] == 'create_edit')
|
|
754 |
}
|
755 |
}
|
756 |
}
|
757 |
-
elseif ($experiment && (
|
758 |
{
|
759 |
$reportingClass->deleteExperimentCache($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId']);
|
760 |
$reportingClass->deleteExperimentCache($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId);
|
761 |
|
762 |
-
if (
|
763 |
{
|
764 |
$experiment = $reportingClass->patchExperiment($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId, array('status' => 'RUNNING'));
|
765 |
|
766 |
/* translators: %1$s = <strong>, %2$s = </strong> */
|
767 |
$noticeAtTop = '<div id="message" class="updated notice is-dismissible"><p>' . sprintf(esc_html__('Experiment %1$sstarted%2$s.'), '<strong>', '</strong>') . '</p></div>';
|
768 |
}
|
769 |
-
elseif (
|
770 |
{
|
771 |
$experiment = $reportingClass->patchExperiment($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId, array('status' => 'ENDED'));
|
772 |
|
773 |
/* translators: %1$s = <strong>, %2$s = </strong> */
|
774 |
$noticeAtTop = '<div id="message" class="updated notice is-dismissible"><p>' . sprintf(esc_html__('Experiment %1$sended%2$s.'), '<strong>', '</strong>') . '</p></div>';
|
775 |
}
|
776 |
-
elseif (
|
777 |
{
|
778 |
$reportingClass->deleteExperiment($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId);
|
779 |
|
@@ -782,7 +783,7 @@ elseif ($experiment && (@$_REQUEST['action'] == 'start' || @$_REQUEST['action']
|
|
782 |
}
|
783 |
}
|
784 |
|
785 |
-
if (
|
786 |
{
|
787 |
if (!empty($errorMessage))
|
788 |
{
|
32 |
}
|
33 |
}
|
34 |
|
35 |
+
|
36 |
+
if (!empty($_REQUEST['action']) && $_REQUEST['action'] == 'create_edit')
|
37 |
{
|
38 |
if (empty($experiment['status']))
|
39 |
{
|
332 |
$postId = 0;
|
333 |
if (!empty($experiment['extraData']['post_title']) && !empty($experiment['extraData']['post_title']['post_id']))
|
334 |
{
|
335 |
+
$postId = empty($experiment['extraData']['page_title']['post_id']) ? 0 : $experiment['extraData']['page_title']['post_id'];
|
336 |
}
|
337 |
|
338 |
echo '<option value="' . absint($post->ID) . '"' . ($post->ID == $postId ? ' selected="selected"' : '') . '>' . htmlentities($post->post_title) . '</option>';
|
590 |
$errorMessage = array();
|
591 |
|
592 |
$experimentObject = array(
|
593 |
+
'status' => empty($_POST['status']) ? '' : sanitize_text_field($_POST['status']),
|
594 |
'servingFramework' => 'API',
|
595 |
'editableInGaUi' => false,
|
596 |
);
|
597 |
|
598 |
if (@$experiment['status'] != 'ENDED')
|
599 |
{
|
600 |
+
$experimentObject['minimumExperimentLengthInDays'] = absint(empty($_POST['minimum_days_to_run']) ? 1 : $_POST['minimum_days_to_run']);
|
601 |
+
$experimentObject['equalWeighting'] = (!empty($_POST['equal_weighting']) && $_POST['equal_weighting'] ? true : false);
|
602 |
+
$experimentObject['name'] = sanitize_text_field(empty($_POST['name']) ? '' : $_POST['name']);
|
603 |
+
$experimentObject['trafficCoverage'] = absint(empty($_POST['traffic_coverage']) ? 1 : $_POST['traffic_coverage']) / 100;
|
604 |
+
$experimentObject['winnerConfidenceLevel'] = absint(empty($_POST['winner_confidence_level']) ? 25 : $_POST['winner_confidence_level']) / 100; //TODO: check default values
|
605 |
}
|
606 |
|
607 |
if (@$experiment['status'] != 'RUNNING' && @$experiment['status'] != 'ENDED')
|
755 |
}
|
756 |
}
|
757 |
}
|
758 |
+
elseif ($experiment && !empty($_REQUEST['action']) && ($_REQUEST['action'] == 'start' || $_REQUEST['action'] == 'end' || $_REQUEST['action'] == 'delete'))
|
759 |
{
|
760 |
$reportingClass->deleteExperimentCache($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId']);
|
761 |
$reportingClass->deleteExperimentCache($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId);
|
762 |
|
763 |
+
if (!empty($_REQUEST['action']) && $_REQUEST['action'] == 'start')
|
764 |
{
|
765 |
$experiment = $reportingClass->patchExperiment($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId, array('status' => 'RUNNING'));
|
766 |
|
767 |
/* translators: %1$s = <strong>, %2$s = </strong> */
|
768 |
$noticeAtTop = '<div id="message" class="updated notice is-dismissible"><p>' . sprintf(esc_html__('Experiment %1$sstarted%2$s.'), '<strong>', '</strong>') . '</p></div>';
|
769 |
}
|
770 |
+
elseif (!empty($_REQUEST['action']) && $_REQUEST['action'] == 'end')
|
771 |
{
|
772 |
$experiment = $reportingClass->patchExperiment($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId, array('status' => 'ENDED'));
|
773 |
|
774 |
/* translators: %1$s = <strong>, %2$s = </strong> */
|
775 |
$noticeAtTop = '<div id="message" class="updated notice is-dismissible"><p>' . sprintf(esc_html__('Experiment %1$sended%2$s.'), '<strong>', '</strong>') . '</p></div>';
|
776 |
}
|
777 |
+
elseif (!empty($_REQUEST['action']) && $_REQUEST['action'] == 'delete')
|
778 |
{
|
779 |
$reportingClass->deleteExperiment($experiment['accountId'], $experiment['webPropertyId'], $experiment['profileId'], $experimentId);
|
780 |
|
783 |
}
|
784 |
}
|
785 |
|
786 |
+
if (empty($_REQUEST['action']) || $_REQUEST['action'] != 'create_edit' || $_SERVER['REQUEST_METHOD'] == 'POST')
|
787 |
{
|
788 |
if (!empty($errorMessage))
|
789 |
{
|
library/DigitalPointBetterAnalytics/ViewAdmin/goals.php
CHANGED
@@ -9,9 +9,9 @@ $nOnceSalt = @$betterAnalyticsOptions['property_id'] . '-' . @$betterAnalyticsOp
|
|
9 |
|
10 |
$noticeAtTop = '';
|
11 |
|
12 |
-
if (
|
13 |
{
|
14 |
-
$goalId = absint(
|
15 |
|
16 |
$goalsAll = DigitalPointBetterAnalytics_Helper_Reporting::getInstance()->getGoals();
|
17 |
|
@@ -461,7 +461,7 @@ if (@$_REQUEST['action'] == 'create_edit')
|
|
461 |
|
462 |
}
|
463 |
|
464 |
-
if (
|
465 |
{
|
466 |
if (!empty($errorMessage))
|
467 |
{
|
9 |
|
10 |
$noticeAtTop = '';
|
11 |
|
12 |
+
if (!empty($_REQUEST['action']) && $_REQUEST['action'] == 'create_edit')
|
13 |
{
|
14 |
+
$goalId = empty($_REQUEST['id']) ? 0 : absint($_REQUEST['id']);
|
15 |
|
16 |
$goalsAll = DigitalPointBetterAnalytics_Helper_Reporting::getInstance()->getGoals();
|
17 |
|
461 |
|
462 |
}
|
463 |
|
464 |
+
if (empty($_REQUEST['action']) || $_REQUEST['action'] != 'create_edit' || $_SERVER['REQUEST_METHOD'] == 'POST')
|
465 |
{
|
466 |
if (!empty($errorMessage))
|
467 |
{
|
library/DigitalPointBetterAnalytics/ViewAdmin/test.php
CHANGED
@@ -32,7 +32,7 @@
|
|
32 |
|
33 |
$checks['licensed'] = DigitalPointBetterAnalytics_Helper_Api::check(true);
|
34 |
|
35 |
-
if (
|
36 |
{
|
37 |
if (!$hasTokens)
|
38 |
{
|
@@ -129,11 +129,11 @@
|
|
129 |
elseif($_SERVER['REQUEST_METHOD'] == 'POST')
|
130 |
{
|
131 |
$vertical = sanitize_text_field($_REQUEST['vertical']);
|
132 |
-
$accountId = absint(
|
133 |
|
134 |
$overQuota = false;
|
135 |
|
136 |
-
if ($accountId
|
137 |
{
|
138 |
$property = $reportingClass->insertWebProperty($accountId, array(
|
139 |
'industryVertical' => $vertical,
|
32 |
|
33 |
$checks['licensed'] = DigitalPointBetterAnalytics_Helper_Api::check(true);
|
34 |
|
35 |
+
if (!empty($_REQUEST['action']) && $_REQUEST['action'] == 'config')
|
36 |
{
|
37 |
if (!$hasTokens)
|
38 |
{
|
129 |
elseif($_SERVER['REQUEST_METHOD'] == 'POST')
|
130 |
{
|
131 |
$vertical = sanitize_text_field($_REQUEST['vertical']);
|
132 |
+
$accountId = empty($_REQUEST['account_id']) ? 0 : absint($_REQUEST['account_id']);
|
133 |
|
134 |
$overQuota = false;
|
135 |
|
136 |
+
if ($accountId)
|
137 |
{
|
138 |
$property = $reportingClass->insertWebProperty($accountId, array(
|
139 |
'industryVertical' => $vertical,
|
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: digitalpoint
|
|
3 |
Tags: analytics, google analytics, universal analytics, statistics, tracking, code, dashboard, analytics dashboard, google analytics dashboard, google analytics plugin, google analytics widget, reports, charts, multisite, api, stats, web stats, visits, javascript, pageviews, marketing, widget, realtime, real time, youtube, outbrain, taboola, adsense, twitter, pinterest, linkedin, facebook, google, digitalpoint, ab testing, ab tests, split testing, google analytics content experiments, content experiments
|
4 |
Donate link: https://marketplace.digitalpoint.com/better-analytics.3354/item#utm_source=readme&utm_medium=wordpress&utm_campaign=plugin
|
5 |
Requires at least: 3.8
|
6 |
-
Tested up to: 4.7.
|
7 |
-
Stable tag: 1.2.
|
8 |
License: GPLv2
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -39,6 +39,7 @@ Better Google Analytics uses lightweight (and client-side cacheable) JavaScript
|
|
39 |
|
40 |
* Link Attribution
|
41 |
* User-ID/Session Unification
|
|
|
42 |
* User Engagement
|
43 |
* Comment Creation
|
44 |
* User Registration
|
@@ -86,6 +87,7 @@ Better Google Analytics uses lightweight (and client-side cacheable) JavaScript
|
|
86 |
* Suppress Google Analytics Tracking By User Role
|
87 |
* View Analytics Reports By User Role
|
88 |
* Adjust Location Of Google Analytics Code
|
|
|
89 |
* Google Analytics Campaign Tracking By Anchor or Parameters
|
90 |
* Adjustable Analytics Sample Rate
|
91 |
* Insert Your Own Custom Google Analytics JavaScript
|
@@ -201,7 +203,12 @@ Thank you to all the individuals who have contributed translations for Better Go
|
|
201 |
26. Advanced settings allow you to fine tune how the system works with Google Analytics.
|
202 |
|
203 |
== Changelog ==
|
204 |
-
=
|
|
|
|
|
|
|
|
|
|
|
205 |
* Fixed bug with RSS link tracking
|
206 |
* Fixed bug with widget
|
207 |
* Fixed issue where Google Analytics code might not be used in certain cases in the wp-admin area
|
3 |
Tags: analytics, google analytics, universal analytics, statistics, tracking, code, dashboard, analytics dashboard, google analytics dashboard, google analytics plugin, google analytics widget, reports, charts, multisite, api, stats, web stats, visits, javascript, pageviews, marketing, widget, realtime, real time, youtube, outbrain, taboola, adsense, twitter, pinterest, linkedin, facebook, google, digitalpoint, ab testing, ab tests, split testing, google analytics content experiments, content experiments
|
4 |
Donate link: https://marketplace.digitalpoint.com/better-analytics.3354/item#utm_source=readme&utm_medium=wordpress&utm_campaign=plugin
|
5 |
Requires at least: 3.8
|
6 |
+
Tested up to: 4.7.3
|
7 |
+
Stable tag: 1.2.2
|
8 |
License: GPLv2
|
9 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
39 |
|
40 |
* Link Attribution
|
41 |
* User-ID/Session Unification
|
42 |
+
* Enable On AMP Pages
|
43 |
* User Engagement
|
44 |
* Comment Creation
|
45 |
* User Registration
|
87 |
* Suppress Google Analytics Tracking By User Role
|
88 |
* View Analytics Reports By User Role
|
89 |
* Adjust Location Of Google Analytics Code
|
90 |
+
* Defer JavaScript Loading
|
91 |
* Google Analytics Campaign Tracking By Anchor or Parameters
|
92 |
* Adjustable Analytics Sample Rate
|
93 |
* Insert Your Own Custom Google Analytics JavaScript
|
203 |
26. Advanced settings allow you to fine tune how the system works with Google Analytics.
|
204 |
|
205 |
== Changelog ==
|
206 |
+
= 1.2.2 =
|
207 |
+
* Made some changes to address suppressed PHP notices in PHP 7.1
|
208 |
+
* Fixed stray string being output in admin in certain situations
|
209 |
+
* Fixed incompatibility with Gravity Forms
|
210 |
+
|
211 |
+
= 1.2.1 =
|
212 |
* Fixed bug with RSS link tracking
|
213 |
* Fixed bug with widget
|
214 |
* Fixed issue where Google Analytics code might not be used in certain cases in the wp-admin area
|