Merge remote-tracking branch 'origin/master'

This commit is contained in:
Weblate 2013-10-02 12:07:29 +02:00
commit a2235b67c5
10 changed files with 208 additions and 195 deletions

View File

@ -146,8 +146,8 @@ var AJAX = {
return true;
} else if (href && href.match(/^mailto/)) {
return true;
} else if ($(this).hasClass('ui-datepicker-next')
|| $(this).hasClass('ui-datepicker-prev')
} else if ($(this).hasClass('ui-datepicker-next') ||
$(this).hasClass('ui-datepicker-prev')
) {
return true;
}
@ -513,8 +513,7 @@ AJAX.cache = {
if (rel === 'newpage' ||
(
typeof rel === 'undefined' && (
typeof this.pages[this.current - 1] === 'undefined'
||
typeof this.pages[this.current - 1] === 'undefined' ||
this.pages[this.current - 1].hash !== hash
)
)

View File

@ -195,8 +195,8 @@ var PMA_querywindow = (function ($, window) {
if (! querywindow.closed && querywindow.location) {
var href = querywindow.location.href;
if (href != url
&& href != PMA_commonParams.get('pma_absolute_uri') + url
if (href != url &&
href != PMA_commonParams.get('pma_absolute_uri') + url
) {
if (PMA_commonParams.get('safari_browser')) {
querywindow.location.href = targeturl;

View File

@ -681,8 +681,9 @@ AJAX.registerOnload('config.js', function () {
var disabled = false;
if (!ls_supported) {
disabled = form.find('input[type=radio][value$=local_storage]').prop('checked');
} else if (!ls_exists && form.attr('name') == 'prefs_import'
&& $('#import_local_storage')[0].checked) {
} else if (!ls_exists && form.attr('name') == 'prefs_import' &&
$('#import_local_storage')[0].checked
) {
disabled = true;
}
form.find('input[type=submit]').prop('disabled', disabled);

View File

@ -340,9 +340,12 @@ function confirmQuery(theForm1, sqlQuery1)
do_confirm_re_1.test(sqlQuery1.value) ||
do_confirm_re_2.test(sqlQuery1.value) ||
do_confirm_re_3.test(sqlQuery1.value)) {
var message = (sqlQuery1.value.length > 100)
? sqlQuery1.value.substr(0, 100) + '\n ...'
: sqlQuery1.value;
var message;
if (sqlQuery1.value.length > 100) {
message = sqlQuery1.value.substr(0, 100) + '\n ...';
} else {
message = sqlQuery1.value;
}
var is_confirmed = confirm($.sprintf(PMA_messages.strDoYouReally, message));
// statement is confirmed -> update the
// "is_js_confirmed" form field so the confirm test won't be

View File

@ -379,8 +379,8 @@ function PMA_showCurrentNavigation()
if ($dbItem) {
var $expander = $dbItem.children('div:first').children('a.expander');
// if not loaded or loaded but collapsed
if (! $expander.hasClass('loaded')
|| $expander.find('img').is('.ic_b_plus')
if (! $expander.hasClass('loaded') ||
$expander.find('img').is('.ic_b_plus')
) {
expandTreeNode($expander, function () {
handleTableOrDb(table, $dbItem);
@ -512,8 +512,8 @@ function PMA_showCurrentNavigation()
var $expander = $viewContainer
.children('div:first')
.children('a.expander');
if (! $expander.hasClass('loaded')
|| $expander.find('img').is('.ic_b_plus')
if (! $expander.hasClass('loaded') ||
$expander.find('img').is('.ic_b_plus')
) {
expandTreeNode($expander, function () {
var $view = findLoadedItem(
@ -554,8 +554,8 @@ function PMA_reloadNavigation(callback) {
// various levels, if necessary.
var count = 0;
$('#pma_navigation_tree').find('a.expander:visible').each(function () {
if ($(this).find('img').is('.ic_b_minus')
&& $(this).closest('li').find('div.list_container .ic_b_minus').length === 0
if ($(this).find('img').is('.ic_b_minus') &&
$(this).closest('li').find('div.list_container .ic_b_minus').length === 0
) {
params['n' + count + '_aPath'] = $(this).find('span.aPath').text();
params['n' + count + '_vPath'] = $(this).find('span.vPath').text();
@ -910,9 +910,9 @@ var PMA_fastFilter = {
this.timeout = null;
var $filterInput = $this.find('li.fast_filter input.searchClause');
if ($filterInput.length !== 0
&& $filterInput.val() !== ''
&& $filterInput.val() != $filterInput[0].defaultValue
if ($filterInput.length !== 0 &&
$filterInput.val() !== '' &&
$filterInput.val() != $filterInput[0].defaultValue
) {
this.request();
}
@ -952,8 +952,8 @@ var PMA_fastFilter = {
.closest('div.list_container');
}
var searchClause2 = '';
if ($filterInput.length !== 0
&& $filterInput.first().val() != $filterInput[0].defaultValue
if ($filterInput.length !== 0 &&
$filterInput.first().val() != $filterInput[0].defaultValue
) {
searchClause2 = $filterInput.val();
}

View File

@ -278,8 +278,9 @@ RTE.COMMON = {
});
// If this is the first item being added, remove
// the "No items" message and show the list.
if ($('table.data').find('tr').has('td').length > 0
&& $('#nothing2display').is(':visible')) {
if ($('table.data').find('tr').has('td').length > 0 &&
$('#nothing2display').is(':visible')
) {
$('#nothing2display').hide("slow", function () {
$('table.data').show("slow");
});
@ -526,8 +527,9 @@ RTE.ROUTINE = {
var $inputtyp = $(this).find('select[name^=item_param_type]');
var $inputlen = $(this).find('input[name^=item_param_length]');
if ($inputtyp.length && $inputlen.length) {
if (($inputtyp.val() === 'ENUM' || $inputtyp.val() === 'SET' || $inputtyp.val().substr(0, 3) === 'VAR')
&& $inputlen.val() === '') {
if (($inputtyp.val() === 'ENUM' || $inputtyp.val() === 'SET' || $inputtyp.val().substr(0, 3) === 'VAR') &&
$inputlen.val() === ''
) {
$inputlen.focus();
isSuccess = false;
return false;
@ -543,8 +545,9 @@ RTE.ROUTINE = {
// be set, if the type is SET, ENUM, VARCHAR or VARBINARY.
var $returntyp = this.$ajaxDialog.find('select[name=item_returntype]');
var $returnlen = this.$ajaxDialog.find('input[name=item_returnlength]');
if (($returntyp.val() === 'ENUM' || $returntyp.val() === 'SET' || $returntyp.val().substr(0, 3) === 'VAR')
&& $returnlen.val() === '') {
if (($returntyp.val() === 'ENUM' || $returntyp.val() === 'SET' || $returntyp.val().substr(0, 3) === 'VAR') &&
$returnlen.val() === ''
) {
$returnlen.focus();
alert(PMA_messages.strFormEmpty);
return false;

View File

@ -915,8 +915,8 @@ AJAX.registerOnload('server_status_monitor.js', function () {
$('input[name="chartType"]').change(function () {
$('#chartVariableSettings').toggle(this.checked && this.value == 'variable');
var title = $('input[name="chartTitle"]').val();
if (title == PMA_messages.strChartTitle
|| title == $('label[for="' + $('input[name="chartTitle"]').data('lastRadio') + '"]').text()
if (title == PMA_messages.strChartTitle ||
title == $('label[for="' + $('input[name="chartTitle"]').data('lastRadio') + '"]').text()
) {
$('input[name="chartTitle"]')
.data('lastRadio', $(this).attr('id'))
@ -1186,13 +1186,14 @@ AJAX.registerOnload('server_status_monitor.js', function () {
}
};
if (settings.title === PMA_messages.strSystemCPUUsage
|| settings.title === PMA_messages.strQueryCacheEfficiency) {
if (settings.title === PMA_messages.strSystemCPUUsage ||
settings.title === PMA_messages.strQueryCacheEfficiency
) {
settings.axes.yaxis.tickOptions = {
formatString: "%d %%"
};
} else if (settings.title === PMA_messages.strSystemMemory
|| settings.title === PMA_messages.strSystemSwap
} else if (settings.title === PMA_messages.strSystemMemory ||
settings.title === PMA_messages.strSystemSwap
) {
settings.stackSeries = true;
settings.axes.yaxis.tickOptions = {
@ -1202,8 +1203,8 @@ AJAX.registerOnload('server_status_monitor.js', function () {
settings.axes.yaxis.tickOptions = {
formatter: $.jqplot.byteFormatter(1) // KiB
};
} else if (settings.title === PMA_messages.strQuestions
|| settings.title === PMA_messages.strConnections
} else if (settings.title === PMA_messages.strQuestions ||
settings.title === PMA_messages.strConnections
) {
settings.axes.yaxis.tickOptions = {
formatter: function (format, val) {
@ -1552,9 +1553,11 @@ AJAX.registerOnload('server_status_monitor.js', function () {
elem.nodes[j].transformFn,
chartData[key][j],
// Check if first iteration (oldChartData==null), or if newly added chart oldChartData[key]==null
(oldChartData === null
|| oldChartData[key] === null
|| oldChartData[key] === undefined ? null : oldChartData[key][j])
(
oldChartData === null ||
oldChartData[key] === null ||
oldChartData[key] === undefined ? null : oldChartData[key][j]
)
);
// Otherwise use original value and apply differential and divisor if given,
@ -1563,9 +1566,9 @@ AJAX.registerOnload('server_status_monitor.js', function () {
value = parseFloat(chartData[key][j][0].value);
if (elem.nodes[j].display == 'differential') {
if (oldChartData === null
|| oldChartData[key] === null
|| oldChartData[key] === undefined
if (oldChartData === null ||
oldChartData[key] === null ||
oldChartData[key] === undefined
) {
continue;
}
@ -1586,8 +1589,9 @@ AJAX.registerOnload('server_status_monitor.js', function () {
elem.maxYLabel = 0.5;
}
// free old data point values and update maxYLabel
if (elem.chart.series[j].data.length > runtime.gridMaxPoints
&& elem.chart.series[j].data[0][0] < runtime.xmin) {
if (elem.chart.series[j].data.length > runtime.gridMaxPoints &&
elem.chart.series[j].data[0][0] < runtime.xmin
) {
// check if the next freeable point is highest
if (elem.maxYLabel <= elem.chart.series[j].data[0][1]) {
elem.chart.series[j].data.splice(0, elem.chart.series[j].data.length - runtime.gridMaxPoints);
@ -1596,8 +1600,8 @@ AJAX.registerOnload('server_status_monitor.js', function () {
elem.chart.series[j].data.splice(0, elem.chart.series[j].data.length - runtime.gridMaxPoints);
}
}
if (elem.title === PMA_messages.strSystemMemory
|| elem.title === PMA_messages.strSystemSwap
if (elem.title === PMA_messages.strSystemMemory ||
elem.title === PMA_messages.strSystemSwap
) {
total += value;
}
@ -1611,15 +1615,15 @@ AJAX.registerOnload('server_status_monitor.js', function () {
(runtime.xmax - tickInterval * 3), (runtime.xmax - tickInterval * 2),
(runtime.xmax - tickInterval), runtime.xmax];
if (elem.title !== PMA_messages.strSystemCPUUsage
&& elem.title !== PMA_messages.strQueryCacheEfficiency
&& elem.title !== PMA_messages.strSystemMemory
&& elem.title !== PMA_messages.strSystemSwap
if (elem.title !== PMA_messages.strSystemCPUUsage &&
elem.title !== PMA_messages.strQueryCacheEfficiency &&
elem.title !== PMA_messages.strSystemMemory &&
elem.title !== PMA_messages.strSystemSwap
) {
elem.chart['axes']['yaxis']['max'] = Math.ceil(elem.maxYLabel * 1.1);
elem.chart['axes']['yaxis']['tickInterval'] = Math.ceil(elem.maxYLabel * 1.1 / 5);
} else if (elem.title === PMA_messages.strSystemMemory
|| elem.title === PMA_messages.strSystemSwap
} else if (elem.title === PMA_messages.strSystemMemory ||
elem.title === PMA_messages.strSystemSwap
) {
elem.chart['axes']['yaxis']['max'] = Math.ceil(total * 1.1 / 100) * 100;
elem.chart['axes']['yaxis']['tickInterval'] = Math.ceil(total * 1.1 / 5);

View File

@ -89,9 +89,9 @@ AJAX.registerOnload('server_status_variables.js', function () {
odd_row = false;
$('#serverstatusvariables th.name').each(function () {
if ((textFilter === null || textFilter.exec($(this).text()))
&& (! alertFilter || $(this).next().find('span.attention').length > 0)
&& (categoryFilter.length === 0 || $(this).parent().hasClass('s_' + categoryFilter))
if ((textFilter === null || textFilter.exec($(this).text())) &&
(! alertFilter || $(this).next().find('span.attention').length > 0) &&
(categoryFilter.length === 0 || $(this).parent().hasClass('s_' + categoryFilter))
) {
odd_row = ! odd_row;
$(this).parent().css('display', '');

View File

@ -6,6 +6,135 @@ var temp_chart_title;
var currentChart = null;
var currentSettings = null;
function extractDate(dateString) {
var matches, match;
var dateTimeRegExp = /[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}/;
var dateRegExp = /[0-9]{4}-[0-9]{2}-[0-9]{2}/;
matches = dateTimeRegExp.exec(dateString);
if (matches !== null && matches.length > 0) {
match = matches[0];
return new Date(match.substr(0, 4), match.substr(5, 2), match.substr(8, 2), match.substr(11, 2), match.substr(14, 2), match.substr(17, 2));
} else {
matches = dateRegExp.exec(dateString);
if (matches !== null && matches.length > 0) {
match = matches[0];
return new Date(match.substr(0, 4), match.substr(5, 2), match.substr(8, 2));
}
}
return null;
}
function PMA_queryChart(data, columnNames, settings) {
if ($('#querychart').length === 0) {
return;
}
var jqPlotSettings = {
title : {
text : settings.title,
escapeHtml: true
},
grid : {
drawBorder : false,
shadow : false,
background : 'rgba(0,0,0,0)'
},
legend : {
show : true,
placement : 'outsideGrid',
location : 'e'
},
axes : {
xaxis : {
label : settings.xaxisLabel
},
yaxis : {
label : settings.yaxisLabel
}
},
stackSeries : settings.stackSeries,
highlighter: {
show: true,
showTooltip: true,
tooltipAxes: 'xy'
}
};
// create the chart
var factory = new JQPlotChartFactory();
var chart = factory.createChart(settings.type, "querychart");
// create the data table and add columns
var dataTable = new DataTable();
if (settings.type == 'timeline') {
dataTable.addColumn(ColumnType.DATE, columnNames[settings.mainAxis]);
} else {
dataTable.addColumn(ColumnType.STRING, columnNames[settings.mainAxis]);
}
$.each(settings.selectedSeries, function (index, element) {
dataTable.addColumn(ColumnType.NUMBER, columnNames[element]);
});
// set data to the data table
var columnsToExtract = [ settings.mainAxis ];
$.each(settings.selectedSeries, function (index, element) {
columnsToExtract.push(element);
});
var values = [], newRow, row, col;
for (var i = 0; i < data.length; i++) {
row = data[i];
newRow = [];
for (var j = 0; j < columnsToExtract.length; j++) {
col = columnNames[columnsToExtract[j]];
if (j === 0) {
if (settings.type == 'timeline') { // first column is date type
newRow.push(extractDate(row[col]));
} else { // first column is string type
newRow.push(row[col]);
}
} else { // subsequent columns are of type, number
newRow.push(parseFloat(row[col]));
}
}
values.push(newRow);
}
dataTable.setData(values);
// draw the chart and return the chart object
chart.draw(dataTable, jqPlotSettings);
return chart;
}
function drawChart() {
currentSettings.width = $('#resizer').width() - 20;
currentSettings.height = $('#resizer').height() - 20;
// todo: a better way using .redraw() ?
if (currentChart !== null) {
currentChart.destroy();
}
var columnNames = [];
$('select[name="chartXAxis"] option').each(function () {
columnNames.push($(this).text());
});
try {
currentChart = PMA_queryChart(chart_data, columnNames, currentSettings);
} catch (err) {
PMA_ajaxShowMessage(err.message, false);
}
}
function getSelectedSeries() {
var val = $('select[name="chartSeries"]').val() || [];
var ret = [];
$.each(val, function (i, v) {
ret.push(parseInt(v, 10));
});
return ret;
}
/**
* Unbind all event handlers before tearing down a page
*/
@ -191,132 +320,3 @@ $("#tblchartform").live('submit', function (event) {
return false;
}); // end
function drawChart() {
currentSettings.width = $('#resizer').width() - 20;
currentSettings.height = $('#resizer').height() - 20;
// todo: a better way using .redraw() ?
if (currentChart !== null) {
currentChart.destroy();
}
var columnNames = [];
$('select[name="chartXAxis"] option').each(function () {
columnNames.push($(this).text());
});
try {
currentChart = PMA_queryChart(chart_data, columnNames, currentSettings);
} catch (err) {
PMA_ajaxShowMessage(err.message, false);
}
}
function getSelectedSeries() {
var val = $('select[name="chartSeries"]').val() || [];
var ret = [];
$.each(val, function (i, v) {
ret.push(parseInt(v, 10));
});
return ret;
}
function extractDate(dateString) {
var matches, match;
var dateTimeRegExp = /[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}/;
var dateRegExp = /[0-9]{4}-[0-9]{2}-[0-9]{2}/;
matches = dateTimeRegExp.exec(dateString);
if (matches !== null && matches.length > 0) {
match = matches[0];
return new Date(match.substr(0, 4), match.substr(5, 2), match.substr(8, 2), match.substr(11, 2), match.substr(14, 2), match.substr(17, 2));
} else {
matches = dateRegExp.exec(dateString);
if (matches !== null && matches.length > 0) {
match = matches[0];
return new Date(match.substr(0, 4), match.substr(5, 2), match.substr(8, 2));
}
}
return null;
}
function PMA_queryChart(data, columnNames, settings) {
if ($('#querychart').length === 0) {
return;
}
var jqPlotSettings = {
title : {
text : settings.title,
escapeHtml: true
},
grid : {
drawBorder : false,
shadow : false,
background : 'rgba(0,0,0,0)'
},
legend : {
show : true,
placement : 'outsideGrid',
location : 'e'
},
axes : {
xaxis : {
label : settings.xaxisLabel
},
yaxis : {
label : settings.yaxisLabel
}
},
stackSeries : settings.stackSeries,
highlighter: {
show: true,
showTooltip: true,
tooltipAxes: 'xy'
}
};
// create the chart
var factory = new JQPlotChartFactory();
var chart = factory.createChart(settings.type, "querychart");
// create the data table and add columns
var dataTable = new DataTable();
if (settings.type == 'timeline') {
dataTable.addColumn(ColumnType.DATE, columnNames[settings.mainAxis]);
} else {
dataTable.addColumn(ColumnType.STRING, columnNames[settings.mainAxis]);
}
$.each(settings.selectedSeries, function (index, element) {
dataTable.addColumn(ColumnType.NUMBER, columnNames[element]);
});
// set data to the data table
var columnsToExtract = [ settings.mainAxis ];
$.each(settings.selectedSeries, function (index, element) {
columnsToExtract.push(element);
});
var values = [], newRow, row, col;
for (var i = 0; i < data.length; i++) {
row = data[i];
newRow = [];
for (var j = 0; j < columnsToExtract.length; j++) {
col = columnNames[columnsToExtract[j]];
if (j === 0) {
if (settings.type == 'timeline') { // first column is date type
newRow.push(extractDate(row[col]));
} else { // first column is string type
newRow.push(row[col]);
}
} else { // subsequent columns are of type, number
newRow.push(parseFloat(row[col]));
}
}
values.push(newRow);
}
dataTable.setData(values);
// draw the chart and return the chart object
chart.draw(dataTable, jqPlotSettings);
return chart;
}

View File

@ -14,6 +14,20 @@ function show_hide_clauses($thisDropdown)
}
}
/**
* Sets dropdown options to values
*/
function setDropdownValues($dropdown, values) {
$dropdown.empty();
var optionsAsString = '';
// add an empty string to the beginning for empty selection
values.unshift('');
$.each(values, function () {
optionsAsString += "<option value='" + this + "'>" + this + "</option>";
});
$dropdown.append($(optionsAsString));
}
/**
* Retrieves and populates dropdowns to the left based on the selected value
*
@ -89,17 +103,6 @@ function getDropdownValues($dropdown) {
});
}
function setDropdownValues($dropdown, values) {
$dropdown.empty();
var optionsAsString = '';
// add an empty string to the beginning for empty selection
values.unshift('');
$.each(values, function () {
optionsAsString += "<option value='" + this + "'>" + this + "</option>";
});
$dropdown.append($(optionsAsString));
}
/**
* Unbind all event handlers before tearing down a page
*/