Skip to content

Commit 835b9b3

Browse files
Merge pull request #17372 from CommanderRoot/remove-deprecated-js-substr
Remove usage of deprecated String.prototype.substr()
2 parents 7cc3278 + 44b528f commit 835b9b3

13 files changed

Lines changed: 52 additions & 52 deletions

File tree

js/src/common.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ var CommonParams = (function () {
9191
if (typeof common === 'string' && common.length > 0) {
9292
// If the last char is the separator, do not add it
9393
// Else add it
94-
common = common.substr(common.length - 1, common.length) === argsep ? common : common + argsep;
94+
common = common.endsWith(argsep) ? common : common + argsep;
9595
}
9696

9797
return Functions.sprintf(

js/src/config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -667,7 +667,7 @@ function setupRestoreField () {
667667
var fieldSel;
668668
if ($(this).hasClass('restore-default')) {
669669
fieldSel = href;
670-
restoreField(fieldSel.substr(1));
670+
restoreField(fieldSel.substring(1));
671671
} else {
672672
fieldSel = href.match(/^[^=]+/)[0];
673673
var value = href.match(/=(.+)$/)[1];

js/src/console.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -599,7 +599,7 @@ var ConsoleInput = {
599599
} else {
600600
// Get cursor position from textarea
601601
var text = ConsoleInput.getText();
602-
cursorLine = text.substr(0, editor.prop('selectionStart')).split('\n').length - 1;
602+
cursorLine = text.substring(0, editor.prop('selectionStart')).split('\n').length - 1;
603603
totalLine = text.split(/\r*\n/).length;
604604
}
605605
if (cursorLine === 0) {

js/src/database/routines.js

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -554,19 +554,19 @@ const DatabaseRoutines = {
554554
* the input field being reindexed
555555
*/
556556
var inputname = $(this).attr('name');
557-
if (inputname.substr(0, 14) === 'item_param_dir') {
558-
$(this).attr('name', inputname.substr(0, 14) + '[' + index + ']');
559-
} else if (inputname.substr(0, 15) === 'item_param_name') {
560-
$(this).attr('name', inputname.substr(0, 15) + '[' + index + ']');
561-
} else if (inputname.substr(0, 15) === 'item_param_type') {
562-
$(this).attr('name', inputname.substr(0, 15) + '[' + index + ']');
563-
} else if (inputname.substr(0, 17) === 'item_param_length') {
564-
$(this).attr('name', inputname.substr(0, 17) + '[' + index + ']');
557+
if (inputname.startsWith('item_param_dir')) {
558+
$(this).attr('name', inputname.substring(0, 14) + '[' + index + ']');
559+
} else if (inputname.startsWith('item_param_name')) {
560+
$(this).attr('name', inputname.substring(0, 15) + '[' + index + ']');
561+
} else if (inputname.startsWith('item_param_type')) {
562+
$(this).attr('name', inputname.substring(0, 15) + '[' + index + ']');
563+
} else if (inputname.startsWith('item_param_length')) {
564+
$(this).attr('name', inputname.substring(0, 17) + '[' + index + ']');
565565
$(this).attr('id', 'item_param_length_' + index);
566-
} else if (inputname.substr(0, 20) === 'item_param_opts_text') {
567-
$(this).attr('name', inputname.substr(0, 20) + '[' + index + ']');
568-
} else if (inputname.substr(0, 19) === 'item_param_opts_num') {
569-
$(this).attr('name', inputname.substr(0, 19) + '[' + index + ']');
566+
} else if (inputname.startsWith('item_param_opts_text')) {
567+
$(this).attr('name', inputname.substring(0, 20) + '[' + index + ']');
568+
} else if (inputname.startsWith('item_param_opts_num')) {
569+
$(this).attr('name', inputname.substring(0, 19) + '[' + index + ']');
570570
}
571571
});
572572
index++;
@@ -593,9 +593,9 @@ const DatabaseRoutines = {
593593
if (isSuccess) {
594594
$(this).find(':input').each(function () {
595595
inputname = $(this).attr('name');
596-
if (inputname.substr(0, 14) === 'item_param_dir' ||
597-
inputname.substr(0, 15) === 'item_param_name' ||
598-
inputname.substr(0, 15) === 'item_param_type') {
596+
if (inputname.startsWith('item_param_dir') ||
597+
inputname.startsWith('item_param_name') ||
598+
inputname.startsWith('item_param_type')) {
599599
if ($(this).val() === '') {
600600
$(this).trigger('focus');
601601
isSuccess = false;
@@ -616,7 +616,7 @@ const DatabaseRoutines = {
616616
var $inputtyp = $(this).find('select[name^=item_param_type]');
617617
var $inputlen = $(this).find('input[name^=item_param_length]');
618618
if ($inputtyp.length && $inputlen.length) {
619-
if (($inputtyp.val() === 'ENUM' || $inputtyp.val() === 'SET' || $inputtyp.val().substr(0, 3) === 'VAR') &&
619+
if (($inputtyp.val() === 'ENUM' || $inputtyp.val() === 'SET' || $inputtyp.val().startsWith('VAR')) &&
620620
$inputlen.val() === ''
621621
) {
622622
$inputlen.trigger('focus');
@@ -634,7 +634,7 @@ const DatabaseRoutines = {
634634
// be set, if the type is SET, ENUM, VARCHAR or VARBINARY.
635635
var $returntyp = this.$ajaxDialog.find('select[name=item_returntype]');
636636
var $returnlen = this.$ajaxDialog.find('input[name=item_returnlength]');
637-
if (($returntyp.val() === 'ENUM' || $returntyp.val() === 'SET' || $returntyp.val().substr(0, 3) === 'VAR') &&
637+
if (($returntyp.val() === 'ENUM' || $returntyp.val() === 'SET' || $returntyp.val().startsWith('VAR')) &&
638638
$returnlen.val() === ''
639639
) {
640640
$returnlen.trigger('focus');

js/src/designer/history.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -504,7 +504,7 @@ DesignerHistory.queryGroupBy = function () {
504504
str += '`' + historyArray[i].getColumnName() + '`, ';
505505
}
506506
}
507-
str = str.substr(0, str.length - 2);
507+
str = str.substring(0, str.length - 2);
508508
return str;
509509
};
510510

@@ -529,7 +529,7 @@ DesignerHistory.queryHaving = function () {
529529
if (and === '(') {
530530
and = '';
531531
} else {
532-
and = and.substr(0, and.length - 2) + ')';
532+
and = and.substring(0, and.length - 2) + ')';
533533
}
534534
return and;
535535
};
@@ -549,7 +549,7 @@ DesignerHistory.queryOrderBy = function () {
549549
historyArray[i].getObj().getOrder() + ', ';
550550
}
551551
}
552-
str = str.substr(0, str.length - 2);
552+
str = str.substring(0, str.length - 2);
553553
return str;
554554
};
555555

js/src/designer/move.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1569,7 +1569,7 @@ DesignerMove.hideTabAll = function (idThis) {
15691569
var E = document.getElementById('container-form');
15701570
var EelementsLength = E.elements.length;
15711571
for (var i = 0; i < EelementsLength; i++) {
1572-
if (E.elements[i].type === 'checkbox' && E.elements[i].id.substring(0, 10) === 'check_vis_') {
1572+
if (E.elements[i].type === 'checkbox' && E.elements[i].id.startsWith('check_vis_')) {
15731573
if (idThis.alt === 'v') {
15741574
E.elements[i].checked = true;
15751575
document.getElementById(E.elements[i].value).style.display = '';
@@ -1622,7 +1622,7 @@ DesignerMove.noHaveConstr = function (idThis) {
16221622
var E = document.getElementById('container-form');
16231623
var EelementsLength = E.elements.length;
16241624
for (var i = 0; i < EelementsLength; i++) {
1625-
if (E.elements[i].type === 'checkbox' && E.elements[i].id.substring(0, 10) === 'check_vis_') {
1625+
if (E.elements[i].type === 'checkbox' && E.elements[i].id.startsWith('check_vis_')) {
16261626
if (!DesignerMove.inArrayK(E.elements[i].value, a)) {
16271627
if (idThis.alt === 'v') {
16281628
E.elements[i].checked = true;

js/src/functions.js

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -710,7 +710,7 @@ Functions.confirmQuery = function (theForm1, sqlQuery1) {
710710
doConfirmRegExp4.test(sqlQuery1)) {
711711
var message;
712712
if (sqlQuery1.length > 100) {
713-
message = sqlQuery1.substr(0, 100) + '\n ...';
713+
message = sqlQuery1.substring(0, 100) + '\n ...';
714714
} else {
715715
message = sqlQuery1;
716716
}
@@ -1374,8 +1374,8 @@ Functions.getJsConfirmCommonParam = function (elem, parameters) {
13741374
var sep = CommonParams.get('arg_separator');
13751375
if (params) {
13761376
// Strip possible leading ?
1377-
if (params.substring(0,1) === '?') {
1378-
params = params.substr(1);
1377+
if (params.startsWith('?')) {
1378+
params = params.substring(1);
13791379
}
13801380
params += sep;
13811381
} else {
@@ -4551,8 +4551,8 @@ Functions.configGet = function (key, cached, successCallback) {
45514551
Functions.getPostData = function () {
45524552
var dataPost = this.attr('data-post');
45534553
// Strip possible leading ?
4554-
if (dataPost !== undefined && dataPost.substring(0,1) === '?') {
4555-
dataPost = dataPost.substr(1);
4554+
if (dataPost !== undefined && dataPost.startsWith('?')) {
4555+
dataPost = dataPost.substring(1);
45564556
}
45574557
return dataPost;
45584558
};

js/src/gis_data_editor.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ AJAX.registerOnload('gis_data_editor.js', function () {
296296
var $a = $(this);
297297
var name = $a.attr('name');
298298
// Eg. name = gis_data[0][MULTIPOINT][add_point] => prefix = gis_data[0][MULTIPOINT]
299-
var prefix = name.substr(0, name.length - 11);
299+
var prefix = name.substring(0, name.length - 11);
300300
// Find the number of points
301301
var $noOfPointsInput = $('input[name=\'' + prefix + '[no_of_points]' + '\']');
302302
var noOfPoints = parseInt($noOfPointsInput.val(), 10);
@@ -314,7 +314,7 @@ AJAX.registerOnload('gis_data_editor.js', function () {
314314
var name = $a.attr('name');
315315

316316
// Eg. name = gis_data[0][MULTILINESTRING][add_line] => prefix = gis_data[0][MULTILINESTRING]
317-
var prefix = name.substr(0, name.length - 10);
317+
var prefix = name.substring(0, name.length - 10);
318318
var type = prefix.slice(prefix.lastIndexOf('[') + 1, prefix.lastIndexOf(']'));
319319

320320
// Find the number of lines
@@ -349,7 +349,7 @@ AJAX.registerOnload('gis_data_editor.js', function () {
349349
var $a = $(this);
350350
var name = $a.attr('name');
351351
// Eg. name = gis_data[0][MULTIPOLYGON][add_polygon] => prefix = gis_data[0][MULTIPOLYGON]
352-
var prefix = name.substr(0, name.length - 13);
352+
var prefix = name.substring(0, name.length - 13);
353353
// Find the number of polygons
354354
var $noOfPolygonsInput = $('input[name=\'' + prefix + '[no_of_polygons]' + '\']');
355355
var noOfPolygons = parseInt($noOfPolygonsInput.val(), 10);

js/src/home.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@ const GitInfo = {
1212
// Parse possible alpha/beta/rc/
1313
const state = str.split('-');
1414
if (state.length >= 2) {
15-
if (state[1].substr(0, 2) === 'rc') {
16-
add = - 20 - parseInt(state[1].substr(2), 10);
17-
} else if (state[1].substr(0, 4) === 'beta') {
18-
add = - 40 - parseInt(state[1].substr(4), 10);
19-
} else if (state[1].substr(0, 5) === 'alpha') {
20-
add = - 60 - parseInt(state[1].substr(5), 10);
21-
} else if (state[1].substr(0, 3) === 'dev') {
15+
if (state[1].startsWith('rc')) {
16+
add = - 20 - parseInt(state[1].substring(2), 10);
17+
} else if (state[1].startsWith('beta')) {
18+
add = - 40 - parseInt(state[1].substring(4), 10);
19+
} else if (state[1].startsWith('alpha')) {
20+
add = - 60 - parseInt(state[1].substring(5), 10);
21+
} else if (state[1].startsWith('dev')) {
2222
/* We don't handle dev, it's git snapshot */
2323
add = 0;
2424
}

js/src/navigation.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,7 @@ $(function () {
447447
/** New index */
448448
$(document).on('click', '#pma_navigation_tree li.new_index a.ajax', function (event) {
449449
event.preventDefault();
450-
var url = $(this).attr('href').substr(
450+
var url = $(this).attr('href').substring(
451451
$(this).attr('href').indexOf('?') + 1
452452
) + CommonParams.get('arg_separator') + 'ajax_request=true';
453453
var title = Messages.strAddIndex;
@@ -457,7 +457,7 @@ $(function () {
457457
/** Edit index */
458458
$(document).on('click', 'li.index a.ajax', function (event) {
459459
event.preventDefault();
460-
var url = $(this).attr('href').substr(
460+
var url = $(this).attr('href').substring(
461461
$(this).attr('href').indexOf('?') + 1
462462
) + CommonParams.get('arg_separator') + 'ajax_request=true';
463463
var title = Messages.strEditIndex;

0 commit comments

Comments
 (0)