update Piwik to version 2.16 (fixes #91)

This commit is contained in:
oliver 2016-04-10 18:55:57 +02:00
commit 47263617c5
5833 changed files with 418860 additions and 226988 deletions

View file

@ -1,5 +1,5 @@
/*!
* Piwik - Web Analytics
* Piwik - free/libre analytics platform
*
* @link http://piwik.org
* @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
@ -8,9 +8,9 @@
var Piwik_Overlay = (function () {
var $body, $iframe, $sidebar, $main, $location, $loading, $errorNotLoading;
var $rowEvolutionLink, $transitionsLink, $fullScreenLink;
var $rowEvolutionLink, $transitionsLink, $fullScreenLink, $visitorLogLink;
var idSite, period, date;
var idSite, period, date, segment;
var iframeSrcBase;
var iframeDomain = '';
@ -19,7 +19,6 @@ var Piwik_Overlay = (function () {
var iframeCurrentActionLabel = '';
var updateComesFromInsideFrame = false;
/** Load the sidebar for a url */
function loadSidebar(currentUrl) {
showLoading();
@ -29,20 +28,26 @@ var Piwik_Overlay = (function () {
iframeCurrentPage = currentUrl;
iframeDomain = currentUrl.match(/http(s)?:\/\/(www\.)?([^\/]*)/i)[3];
globalAjaxQueue.abort();
var ajaxRequest = new ajaxHelper();
ajaxRequest.addParams({
var params = {
module: 'Overlay',
action: 'renderSidebar',
currentUrl: currentUrl
}, 'get');
};
if (segment) {
params.segment = segment;
}
globalAjaxQueue.abort();
var ajaxRequest = new ajaxHelper();
ajaxRequest.addParams(params, 'get');
ajaxRequest.setCallback(
function (response) {
hideLoading();
var $response = $(response);
var $responseLocation = $response.find('.Overlay_Location');
var $responseLocation = $response.find('.overlayLocation');
var $url = $responseLocation.find('span');
iframeCurrentPageNormalized = $url.data('normalizedUrl');
iframeCurrentActionLabel = $url.data('label');
@ -57,7 +62,7 @@ var Piwik_Overlay = (function () {
$locationSpan.tooltip({
track: true,
items: '*',
tooltipClass: 'Overlay_Tooltip',
tooltipClass: 'overlayTooltip',
content: '<strong>' + Piwik_Overlay_Translations.domain + ':</strong> ' +
piwikHelper.addBreakpointsToUrl(iframeDomain),
show: false,
@ -67,10 +72,14 @@ var Piwik_Overlay = (function () {
$sidebar.empty().append($response).show();
if ($sidebar.find('.Overlay_NoData').size() == 0) {
if ($sidebar.find('.overlayNoData').size() == 0) {
$rowEvolutionLink.show();
$transitionsLink.show()
$transitionsLink.show();
if ($('#segment').val()) {
$visitorLogLink.show();
}
}
}
);
ajaxRequest.setErrorCallback(function () {
@ -97,6 +106,7 @@ var Piwik_Overlay = (function () {
$fullScreenLink.hide();
$rowEvolutionLink.hide();
$transitionsLink.hide();
$visitorLogLink.hide();
$errorNotLoading.hide();
}
@ -107,9 +117,29 @@ var Piwik_Overlay = (function () {
$fullScreenLink.show();
}
function getOverlaySegment(url) {
var location = broadcast.getParamValue('segment', url);
// angular will encode the value again since it is added as the fragment path, not the fragment query parameter,
// so we have to decode it again after getParamValue
location = decodeURIComponent(location);
return location;
}
function getOverlayLocationFromHash(urlHash) {
var location = broadcast.getParamValue('l', urlHash);
// angular will encode the value again since it is added as the fragment path, not the fragment query parameter,
// so we have to decode it again after getParamValue
location = decodeURIComponent(location);
return location;
}
/** $.history callback for hash change */
function hashChangeCallback(urlHash) {
var location = broadcast.getParamValue('l', urlHash);
var location = getOverlayLocationFromHash(urlHash);
location = Overlay_Helper.decodeFrameUrl(location);
if (!updateComesFromInsideFrame) {
@ -129,23 +159,25 @@ var Piwik_Overlay = (function () {
return {
/** This method is called when Overlay loads */
init: function (iframeSrc, pIdSite, pPeriod, pDate) {
init: function (iframeSrc, pIdSite, pPeriod, pDate, pSegment) {
iframeSrcBase = iframeSrc;
idSite = pIdSite;
period = pPeriod;
date = pDate;
segment = pSegment;
$body = $('body');
$iframe = $('#Overlay_Iframe');
$sidebar = $('#Overlay_Sidebar');
$location = $('#Overlay_Location');
$main = $('#Overlay_Main');
$loading = $('#Overlay_Loading');
$errorNotLoading = $('#Overlay_Error_NotLoading');
$iframe = $('#overlayIframe');
$sidebar = $('#overlaySidebar');
$location = $('#overlayLocation');
$main = $('#overlayMain');
$loading = $('#overlayLoading');
$errorNotLoading = $('#overlayErrorNotLoading');
$rowEvolutionLink = $('#Overlay_RowEvolution');
$transitionsLink = $('#Overlay_Transitions');
$fullScreenLink = $('#Overlay_FullScreen');
$rowEvolutionLink = $('#overlayRowEvolution');
$transitionsLink = $('#overlayTransitions');
$fullScreenLink = $('#overlayFullScreen');
$visitorLogLink = $('#overlaySegmentedVisitorLog');
adjustDimensions();
@ -171,6 +203,8 @@ var Piwik_Overlay = (function () {
// handle hash change
broadcast.loadAjaxContent = hashChangeCallback;
broadcast._isInit = false;
broadcast.init();
if (window.location.href.split('#').length == 1) {
@ -179,12 +213,12 @@ var Piwik_Overlay = (function () {
}
// handle date selection
var $select = $('select#Overlay_DateRangeSelect').change(function () {
var $select = $('select#overlayDateRangeSelect').change(function () {
var parts = $(this).val().split(';');
if (parts.length == 2) {
period = parts[0];
date = parts[1];
window.location.href = Overlay_Helper.getOverlayLink(idSite, period, date, iframeCurrentPage);
window.location.href = Overlay_Helper.getOverlayLink(idSite, period, date, segment, iframeCurrentPage);
}
});
@ -202,7 +236,11 @@ var Piwik_Overlay = (function () {
// handle transitions link
$transitionsLink.click(function () {
DataTable_RowActions_Transitions.launchForUrl(iframeCurrentPageNormalized);
var unescapedSegment = null;
if (segment) {
unescapedSegment = unescape(segment);
}
DataTable_RowActions_Transitions.launchForUrl(iframeCurrentPageNormalized, unescapedSegment);
return false;
});
@ -212,6 +250,12 @@ var Piwik_Overlay = (function () {
return false;
});
// handle segmented visitor log link
$visitorLogLink.click(function () {
SegmentedVisitorLog.show('Actions.getPageUrls', $('#segment').val(), {});
return false;
});
// handle full screen link
$fullScreenLink.click(function () {
var href = iframeSrcBase;
@ -230,7 +274,7 @@ var Piwik_Overlay = (function () {
var locationParts = location.href.split('#');
var currentLocation = '';
if (locationParts.length > 1) {
currentLocation = broadcast.getParamValue('l', locationParts[1]);
currentLocation = getOverlayLocationFromHash(locationParts[1]);
}
var newLocation = Overlay_Helper.encodeFrameUrl(currentUrl);