Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/SitesManager/templates/SitesManager.js')
-rw-r--r--plugins/SitesManager/templates/SitesManager.js168
1 files changed, 144 insertions, 24 deletions
diff --git a/plugins/SitesManager/templates/SitesManager.js b/plugins/SitesManager/templates/SitesManager.js
index 7b523b98a4..cf14893c8c 100644
--- a/plugins/SitesManager/templates/SitesManager.js
+++ b/plugins/SitesManager/templates/SitesManager.js
@@ -1,8 +1,7 @@
function getDeleteSiteAJAX( idSite )
{
var ajaxRequest = piwikHelper.getStandardAjaxConf();
- piwikHelper.toggleAjaxLoading();
-
+
var parameters = {};
parameters.module = 'API';
parameters.format = 'json';
@@ -18,19 +17,28 @@ function getDeleteSiteAJAX( idSite )
function getAddSiteAJAX( row )
{
var ajaxRequest = piwikHelper.getStandardAjaxConf();
- piwikHelper.toggleAjaxLoading();
var parameters = {};
- var siteName = $(row).find('input#siteadd_name').val();
- var urls = $(row).find('textarea#siteadd_urls').val();
- var urls = urls.trim().split("\n");
-
+ var siteName = $(row).find('input#name').val();
+ var urls = $(row).find('textarea#urls').val();
+ urls = getApiFormatUrls(urls);
+ var excludedIps = $(row).find('textarea#excludedIps').val();
+ excludedIps = getApiFormatTextarea(excludedIps);
+ var timezone = encodeURIComponent($(row).find('#timezones option:selected').val());
+ var currency = encodeURIComponent($(row).find('#currencies option:selected').val());
+ var excludedQueryParameters = $(row).find('textarea#excludedQueryParameters').val();
+ excludedQueryParameters = getApiFormatTextarea(excludedQueryParameters);
+
var request = '';
request += '&module=API';
request += '&format=json';
request += '&method=SitesManager.addSite';
siteName = encodeURIComponent(siteName);
request += '&siteName='+siteName;
+ request += '&timezone='+timezone;
+ request += '&currency='+currency;
+ request += '&excludedIps='+excludedIps;
+ request += '&excludedQueryParameters='+excludedQueryParameters;
$.each(urls, function (key,value){ request+= '&urls[]='+escape(value);} );
request += '&token_auth=' + piwik.token_auth;
@@ -39,15 +47,33 @@ function getAddSiteAJAX( row )
return ajaxRequest;
}
+function getApiFormatUrls(urls)
+{
+ var aUrls = urls.trim().split("\n");
+ for(var i=0; i < aUrls.length; i++) {
+ aUrls[i] = encodeURIComponent(aUrls[i]);
+ }
+ return aUrls;
+}
+function getApiFormatTextarea(textareaContent)
+{
+ return textareaContent.trim().split("\n").join(',');
+}
+
function getUpdateSiteAJAX( row )
{
var ajaxRequest = piwikHelper.getStandardAjaxConf();
- piwikHelper.toggleAjaxLoading();
var siteName = $(row).find('input#siteName').val();
var idSite = $(row).children('#idSite').html();
- var urls = $(row).find('textarea#urls').val().trim().split("\n");
-
+ var urls = $(row).find('textarea#urls').val();
+ urls = getApiFormatUrls(urls);
+ var excludedIps = $(row).find('textarea#excludedIps').val();
+ excludedIps = getApiFormatTextarea(excludedIps);
+ var excludedQueryParameters = $(row).find('textarea#excludedQueryParameters').val();
+ excludedQueryParameters = getApiFormatTextarea(excludedQueryParameters);
+ var timezone = encodeURIComponent($(row).find('#timezones option:selected').val());
+ var currency = encodeURIComponent($(row).find('#currencies option:selected').val());
var request = '';
request += '&module=API';
request += '&format=json';
@@ -55,6 +81,10 @@ function getUpdateSiteAJAX( row )
siteName = encodeURIComponent(siteName);
request += '&siteName='+siteName;
request += '&idSite='+idSite;
+ request += '&timezone='+timezone;
+ request += '&currency='+currency;
+ request += '&excludedIps='+excludedIps;
+ request += '&excludedQueryParameters='+excludedQueryParameters;
$.each(urls, function (key,value){ if(value.length>1) request+= '&urls[]='+value;} );
request += '&token_auth=' + piwik.token_auth;
@@ -63,9 +93,31 @@ function getUpdateSiteAJAX( row )
return ajaxRequest;
}
+function getGlobalSettingsAJAX()
+{
+ var ajaxRequest = piwikHelper.getStandardAjaxConf('ajaxLoadingGlobalSettings', 'ajaxErrorGlobalSettings');
+ var timezone = encodeURIComponent($('#defaultTimezone option:selected').val());
+ var currency = encodeURIComponent($('#defaultCurrency option:selected').val());
+ var excludedIps = $('textarea#globalExcludedIps').val();
+ excludedIps = getApiFormatTextarea(excludedIps);
+ var excludedQueryParameters = $('textarea#globalExcludedQueryParameters').val();
+ excludedQueryParameters = getApiFormatTextarea(excludedQueryParameters);
+ var request = '';
+ request += 'module=SitesManager';
+ request += '&action=setGlobalSettings';
+ request += '&format=json';
+ request += '&timezone='+timezone;
+ request += '&currency='+currency;
+ request += '&excludedIps='+excludedIps;
+ request += '&excludedQueryParameters='+excludedQueryParameters;
+ request += '&token_auth=' + piwik.token_auth;
+ ajaxRequest.data = request;
+ return ajaxRequest;
+}
+
$(document).ready( function() {
$('.addRowSite').click( function() {
- piwikHelper.ajaxHideError();
+ piwikHelper.hideAjaxError();
$(this).toggle();
var numberOfRows = $('table#editSites')[0].rows.length;
@@ -73,22 +125,25 @@ $(document).ready( function() {
$(' <tr id="'+newRowId+'">\
<td>&nbsp;</td>\
- <td><input id="siteadd_name" value="Name" size=25></td>\
- <td><textarea cols=30 rows=3 id="siteadd_urls">http://siteUrl.com/\nhttp://siteUrl2.com/</textarea></td>\
- <td><img src="plugins/UsersManager/images/ok.png" class="addsite" href="#"></td>\
- <td><img src="plugins/UsersManager/images/remove.png" class="cancel"></td>\
+ <td><input id="name" value="Name" size="15" /></td>\
+ <td><textarea cols="25" rows="3" id="urls">http://siteUrl.com/\nhttp://siteUrl2.com/</textarea><br />'+aliasUrlsHelp+'</td>\
+ <td><textarea cols="20" rows="4" id="excludedIps"></textarea><br />'+excludedIpHelp+'</td>\
+ <td><textarea cols="20" rows="4" id="excludedQueryParameters"></textarea><br />'+excludedQueryParametersHelp+'</td>\
+ <td>'+getTimezoneSelector(defaultTimezone)+'<br />' + timezoneHelp + '</td>\
+ <td>'+getCurrencySelector(defaultCurrency)+'<br />' + currencyHelp + '</td>\
+ <td><img src="plugins/UsersManager/images/ok.png" class="addsite" href="#" title="' + _pk_translate('SitesManager_Save_js') + '" /></td>\
+ <td><img src="plugins/UsersManager/images/remove.png" class="cancel" title="' + _pk_translate('SitesManager_Cancel_js') +'" /></td>\
</tr>')
.appendTo('#editSites')
;
- $('#'+newRowId).keypress( submitSiteOnEnter );
$('.addsite').click( function(){ $.ajax( getAddSiteAJAX($('tr#'+newRowId)) ); } );
- $('.cancel').click(function() { piwikHelper.ajaxHideError(); $(this).parents('tr').remove(); $('.addRowSite').toggle(); });
-
+ $('.cancel').click(function() { piwikHelper.hideAjaxError(); $(this).parents('tr').remove(); $('.addRowSite').toggle(); });
+ return false;
} );
// when click on deleteuser, the we ask for confirmation and then delete the user
$('.deleteSite').click( function() {
- piwikHelper.ajaxHideError();
+ piwikHelper.hideAjaxError();
var idRow = $(this).attr('id');
var nameToDelete = $(this).parent().parent().find('input#siteName').val() || $(this).parent().parent().find('td#siteName').html();
var idsiteToDelete = $(this).parent().parent().find('#idSite').html();
@@ -101,7 +156,7 @@ $(document).ready( function() {
var alreadyEdited = new Array;
$('.editSite')
.click( function() {
- piwikHelper.ajaxHideError();
+ piwikHelper.hideAjaxError();
var idRow = $(this).attr('id');
if(alreadyEdited[idRow]==1) return;
alreadyEdited[idRow] = 1;
@@ -113,14 +168,39 @@ $(document).ready( function() {
var idName = $(n).attr('id');
if(idName == 'siteName')
{
- var contentAfter = '<input id="'+idName+'" value="'+contentBefore+'" size="25">';
+ var contentAfter = '<input id="'+idName+'" value="'+contentBefore+'" size="15" />';
$(n)
.html(contentAfter)
.keypress( submitSiteOnEnter );
}
if(idName == 'urls')
{
- var contentAfter = '<textarea cols=30 rows=3 id="urls">'+contentBefore.replace(/<br *\/? *>/gi,"\n")+'</textarea>';
+ var contentAfter = '<textarea cols="25" rows="3" id="urls">'+contentBefore.replace(/<br *\/? *>/gi,"\n")+'</textarea>';
+ contentAfter += '<br />'+aliasUrlsHelp;
+ $(n).html(contentAfter);
+ }
+ if(idName == 'excludedIps')
+ {
+ var contentAfter = '<textarea cols="20" rows="4" id="excludedIps">'+contentBefore.replace(/<br *\/? *>/gi,"\n")+'</textarea>';
+ contentAfter += '<br />'+excludedIpHelp;
+ $(n).html(contentAfter);
+ }
+ if(idName == 'excludedQueryParameters')
+ {
+ var contentAfter = '<textarea cols="20" rows="4" id="excludedQueryParameters">'+contentBefore.replace(/<br *\/? *>/gi,"\n")+'</textarea>';
+ contentAfter += '<br />'+excludedQueryParametersHelp;
+ $(n).html(contentAfter);
+ }
+ if(idName == 'timezone')
+ {
+ var contentAfter = getTimezoneSelector(contentBefore);
+ contentAfter += '<br />' + timezoneHelp;
+ $(n).html(contentAfter);
+ }
+ if(idName == 'currency')
+ {
+ var contentAfter = getCurrencySelector(contentBefore);
+ contentAfter += '<br />' + currencyHelp;
$(n).html(contentAfter);
}
}
@@ -128,15 +208,55 @@ $(document).ready( function() {
$(this)
.toggle()
.parent()
- .prepend( $('<img src="plugins/UsersManager/images/ok.png" class="updateSite">')
+ .prepend( $('<img src="plugins/UsersManager/images/ok.png" class="updateSite" title="' + _pk_translate('SitesManager_Save_js') + '" />')
.click( function(){ $.ajax( getUpdateSiteAJAX( $('tr#'+idRow) ) ); } )
);
}
);
+ $('#globalSettingsSubmit').click( function() {
+ $.ajax( getGlobalSettingsAJAX() );
+ });
+
+ $('#defaultTimezone').html( getTimezoneSelector(defaultTimezone));
+ $('#defaultCurrency').html( getCurrencySelector(defaultCurrency));
+
$('td.editableSite').click( function(){ $(this).parent().find('.editSite').click(); } );
});
-
+
+function getTimezoneSelector(selectedTimezone)
+{
+ var html = '<select id="timezones">';
+ for(var continent in timezones) {
+ html += '<optgroup label="' + continent + '">';
+ for(var timezoneId in timezones[continent]) {
+ var selected = '';
+ if(timezoneId == selectedTimezone) {
+ selected = ' selected="selected" ';
+ }
+ html += '<option ' + selected + ' value="'+ timezoneId + '">' + timezones[continent][timezoneId] + '</option>';
+ }
+ html += "</optgroup>\n";
+ }
+ html += '</select>';
+ return html;
+}
+
+
+function getCurrencySelector(selectedCurrency)
+{
+ var html = '<select id="currencies">';
+ for(var currency in currencies) {
+ var selected = '';
+ if(currency == selectedCurrency) {
+ selected = ' selected="selected" ';
+ }
+ html += '<option ' + selected + ' value="'+ currency + '">' + currencies[currency] + '</option>';
+ }
+ html += '</select>';
+ return html;
+}
+
function submitSiteOnEnter(e)
{
var key=e.keyCode || e.which;