Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/popup-ma.../trunk/assets/js
File: admin-general.js
[3000] Fix | Delete
for (var methodName in proto) {
[3001] Fix | Delete
var m = proto[methodName];
[3002] Fix | Delete
[3003] Fix | Delete
if (typeof m !== 'function') {
[3004] Fix | Delete
continue;
[3005] Fix | Delete
}
[3006] Fix | Delete
[3007] Fix | Delete
if (methodName === 'constructor') {
[3008] Fix | Delete
continue;
[3009] Fix | Delete
}
[3010] Fix | Delete
[3011] Fix | Delete
methods.push(methodName);
[3012] Fix | Delete
}
[3013] Fix | Delete
[3014] Fix | Delete
return methods;
[3015] Fix | Delete
}
[3016] Fix | Delete
[3017] Fix | Delete
Utils.Decorate = function (SuperClass, DecoratorClass) {
[3018] Fix | Delete
var decoratedMethods = getMethods(DecoratorClass);
[3019] Fix | Delete
var superMethods = getMethods(SuperClass);
[3020] Fix | Delete
[3021] Fix | Delete
function DecoratedClass () {
[3022] Fix | Delete
var unshift = Array.prototype.unshift;
[3023] Fix | Delete
[3024] Fix | Delete
var argCount = DecoratorClass.prototype.constructor.length;
[3025] Fix | Delete
[3026] Fix | Delete
var calledConstructor = SuperClass.prototype.constructor;
[3027] Fix | Delete
[3028] Fix | Delete
if (argCount > 0) {
[3029] Fix | Delete
unshift.call(arguments, SuperClass.prototype.constructor);
[3030] Fix | Delete
[3031] Fix | Delete
calledConstructor = DecoratorClass.prototype.constructor;
[3032] Fix | Delete
}
[3033] Fix | Delete
[3034] Fix | Delete
calledConstructor.apply(this, arguments);
[3035] Fix | Delete
}
[3036] Fix | Delete
[3037] Fix | Delete
DecoratorClass.displayName = SuperClass.displayName;
[3038] Fix | Delete
[3039] Fix | Delete
function ctr () {
[3040] Fix | Delete
this.constructor = DecoratedClass;
[3041] Fix | Delete
}
[3042] Fix | Delete
[3043] Fix | Delete
DecoratedClass.prototype = new ctr();
[3044] Fix | Delete
[3045] Fix | Delete
for (var m = 0; m < superMethods.length; m++) {
[3046] Fix | Delete
var superMethod = superMethods[m];
[3047] Fix | Delete
[3048] Fix | Delete
DecoratedClass.prototype[superMethod] =
[3049] Fix | Delete
SuperClass.prototype[superMethod];
[3050] Fix | Delete
}
[3051] Fix | Delete
[3052] Fix | Delete
var calledMethod = function (methodName) {
[3053] Fix | Delete
// Stub out the original method if it's not decorating an actual method
[3054] Fix | Delete
var originalMethod = function () {};
[3055] Fix | Delete
[3056] Fix | Delete
if (methodName in DecoratedClass.prototype) {
[3057] Fix | Delete
originalMethod = DecoratedClass.prototype[methodName];
[3058] Fix | Delete
}
[3059] Fix | Delete
[3060] Fix | Delete
var decoratedMethod = DecoratorClass.prototype[methodName];
[3061] Fix | Delete
[3062] Fix | Delete
return function () {
[3063] Fix | Delete
var unshift = Array.prototype.unshift;
[3064] Fix | Delete
[3065] Fix | Delete
unshift.call(arguments, originalMethod);
[3066] Fix | Delete
[3067] Fix | Delete
return decoratedMethod.apply(this, arguments);
[3068] Fix | Delete
};
[3069] Fix | Delete
};
[3070] Fix | Delete
[3071] Fix | Delete
for (var d = 0; d < decoratedMethods.length; d++) {
[3072] Fix | Delete
var decoratedMethod = decoratedMethods[d];
[3073] Fix | Delete
[3074] Fix | Delete
DecoratedClass.prototype[decoratedMethod] = calledMethod(decoratedMethod);
[3075] Fix | Delete
}
[3076] Fix | Delete
[3077] Fix | Delete
return DecoratedClass;
[3078] Fix | Delete
};
[3079] Fix | Delete
[3080] Fix | Delete
var Observable = function () {
[3081] Fix | Delete
this.listeners = {};
[3082] Fix | Delete
};
[3083] Fix | Delete
[3084] Fix | Delete
Observable.prototype.on = function (event, callback) {
[3085] Fix | Delete
this.listeners = this.listeners || {};
[3086] Fix | Delete
[3087] Fix | Delete
if (event in this.listeners) {
[3088] Fix | Delete
this.listeners[event].push(callback);
[3089] Fix | Delete
} else {
[3090] Fix | Delete
this.listeners[event] = [callback];
[3091] Fix | Delete
}
[3092] Fix | Delete
};
[3093] Fix | Delete
[3094] Fix | Delete
Observable.prototype.trigger = function (event) {
[3095] Fix | Delete
var slice = Array.prototype.slice;
[3096] Fix | Delete
[3097] Fix | Delete
this.listeners = this.listeners || {};
[3098] Fix | Delete
[3099] Fix | Delete
if (event in this.listeners) {
[3100] Fix | Delete
this.invoke(this.listeners[event], slice.call(arguments, 1));
[3101] Fix | Delete
}
[3102] Fix | Delete
[3103] Fix | Delete
if ('*' in this.listeners) {
[3104] Fix | Delete
this.invoke(this.listeners['*'], arguments);
[3105] Fix | Delete
}
[3106] Fix | Delete
};
[3107] Fix | Delete
[3108] Fix | Delete
Observable.prototype.invoke = function (listeners, params) {
[3109] Fix | Delete
for (var i = 0, len = listeners.length; i < len; i++) {
[3110] Fix | Delete
listeners[i].apply(this, params);
[3111] Fix | Delete
}
[3112] Fix | Delete
};
[3113] Fix | Delete
[3114] Fix | Delete
Utils.Observable = Observable;
[3115] Fix | Delete
[3116] Fix | Delete
Utils.generateChars = function (length) {
[3117] Fix | Delete
var chars = '';
[3118] Fix | Delete
[3119] Fix | Delete
for (var i = 0; i < length; i++) {
[3120] Fix | Delete
var randomChar = Math.floor(Math.random() * 36);
[3121] Fix | Delete
chars += randomChar.toString(36);
[3122] Fix | Delete
}
[3123] Fix | Delete
[3124] Fix | Delete
return chars;
[3125] Fix | Delete
};
[3126] Fix | Delete
[3127] Fix | Delete
Utils.bind = function (func, context) {
[3128] Fix | Delete
return function () {
[3129] Fix | Delete
func.apply(context, arguments);
[3130] Fix | Delete
};
[3131] Fix | Delete
};
[3132] Fix | Delete
[3133] Fix | Delete
Utils._convertData = function (data) {
[3134] Fix | Delete
for (var originalKey in data) {
[3135] Fix | Delete
var keys = originalKey.split('-');
[3136] Fix | Delete
[3137] Fix | Delete
var dataLevel = data;
[3138] Fix | Delete
[3139] Fix | Delete
if (keys.length === 1) {
[3140] Fix | Delete
continue;
[3141] Fix | Delete
}
[3142] Fix | Delete
[3143] Fix | Delete
for (var k = 0; k < keys.length; k++) {
[3144] Fix | Delete
var key = keys[k];
[3145] Fix | Delete
[3146] Fix | Delete
// Lowercase the first letter
[3147] Fix | Delete
// By default, dash-separated becomes camelCase
[3148] Fix | Delete
key = key.substring(0, 1).toLowerCase() + key.substring(1);
[3149] Fix | Delete
[3150] Fix | Delete
if (!(key in dataLevel)) {
[3151] Fix | Delete
dataLevel[key] = {};
[3152] Fix | Delete
}
[3153] Fix | Delete
[3154] Fix | Delete
if (k == keys.length - 1) {
[3155] Fix | Delete
dataLevel[key] = data[originalKey];
[3156] Fix | Delete
}
[3157] Fix | Delete
[3158] Fix | Delete
dataLevel = dataLevel[key];
[3159] Fix | Delete
}
[3160] Fix | Delete
[3161] Fix | Delete
delete data[originalKey];
[3162] Fix | Delete
}
[3163] Fix | Delete
[3164] Fix | Delete
return data;
[3165] Fix | Delete
};
[3166] Fix | Delete
[3167] Fix | Delete
Utils.hasScroll = function (index, el) {
[3168] Fix | Delete
// Adapted from the function created by @ShadowScripter
[3169] Fix | Delete
// and adapted by @BillBarry on the Stack Exchange Code Review website.
[3170] Fix | Delete
// The original code can be found at
[3171] Fix | Delete
// http://codereview.stackexchange.com/q/13338
[3172] Fix | Delete
// and was designed to be used with the Sizzle selector engine.
[3173] Fix | Delete
[3174] Fix | Delete
var $el = $(el);
[3175] Fix | Delete
var overflowX = el.style.overflowX;
[3176] Fix | Delete
var overflowY = el.style.overflowY;
[3177] Fix | Delete
[3178] Fix | Delete
//Check both x and y declarations
[3179] Fix | Delete
if (overflowX === overflowY &&
[3180] Fix | Delete
(overflowY === 'hidden' || overflowY === 'visible')) {
[3181] Fix | Delete
return false;
[3182] Fix | Delete
}
[3183] Fix | Delete
[3184] Fix | Delete
if (overflowX === 'scroll' || overflowY === 'scroll') {
[3185] Fix | Delete
return true;
[3186] Fix | Delete
}
[3187] Fix | Delete
[3188] Fix | Delete
return ($el.innerHeight() < el.scrollHeight ||
[3189] Fix | Delete
$el.innerWidth() < el.scrollWidth);
[3190] Fix | Delete
};
[3191] Fix | Delete
[3192] Fix | Delete
Utils.escapeMarkup = function (markup) {
[3193] Fix | Delete
var replaceMap = {
[3194] Fix | Delete
'\\': '&#92;',
[3195] Fix | Delete
'&': '&amp;',
[3196] Fix | Delete
'<': '&lt;',
[3197] Fix | Delete
'>': '&gt;',
[3198] Fix | Delete
'"': '&quot;',
[3199] Fix | Delete
'\'': '&#39;',
[3200] Fix | Delete
'/': '&#47;'
[3201] Fix | Delete
};
[3202] Fix | Delete
[3203] Fix | Delete
// Do not try to escape the markup if it's not a string
[3204] Fix | Delete
if (typeof markup !== 'string') {
[3205] Fix | Delete
return markup;
[3206] Fix | Delete
}
[3207] Fix | Delete
[3208] Fix | Delete
return String(markup).replace(/[&<>"'\/\\]/g, function (match) {
[3209] Fix | Delete
return replaceMap[match];
[3210] Fix | Delete
});
[3211] Fix | Delete
};
[3212] Fix | Delete
[3213] Fix | Delete
// Append an array of jQuery nodes to a given element.
[3214] Fix | Delete
Utils.appendMany = function ($element, $nodes) {
[3215] Fix | Delete
// jQuery 1.7.x does not support $.fn.append() with an array
[3216] Fix | Delete
// Fall back to a jQuery object collection using $.fn.add()
[3217] Fix | Delete
if ($.fn.jquery.substr(0, 3) === '1.7') {
[3218] Fix | Delete
var $jqNodes = $();
[3219] Fix | Delete
[3220] Fix | Delete
$.map($nodes, function (node) {
[3221] Fix | Delete
$jqNodes = $jqNodes.add(node);
[3222] Fix | Delete
});
[3223] Fix | Delete
[3224] Fix | Delete
$nodes = $jqNodes;
[3225] Fix | Delete
}
[3226] Fix | Delete
[3227] Fix | Delete
$element.append($nodes);
[3228] Fix | Delete
};
[3229] Fix | Delete
[3230] Fix | Delete
return Utils;
[3231] Fix | Delete
});
[3232] Fix | Delete
[3233] Fix | Delete
S2.define('pumselect2/results',[
[3234] Fix | Delete
'jquery',
[3235] Fix | Delete
'./utils'
[3236] Fix | Delete
], function ($, Utils) {
[3237] Fix | Delete
function Results ($element, options, dataAdapter) {
[3238] Fix | Delete
this.$element = $element;
[3239] Fix | Delete
this.data = dataAdapter;
[3240] Fix | Delete
this.options = options;
[3241] Fix | Delete
[3242] Fix | Delete
Results.__super__.constructor.call(this);
[3243] Fix | Delete
}
[3244] Fix | Delete
[3245] Fix | Delete
Utils.Extend(Results, Utils.Observable);
[3246] Fix | Delete
[3247] Fix | Delete
Results.prototype.render = function () {
[3248] Fix | Delete
var $results = $(
[3249] Fix | Delete
'<ul class="pumselect2-results__options" role="tree"></ul>'
[3250] Fix | Delete
);
[3251] Fix | Delete
[3252] Fix | Delete
if (this.options.get('multiple')) {
[3253] Fix | Delete
$results.attr('aria-multiselectable', 'true');
[3254] Fix | Delete
}
[3255] Fix | Delete
[3256] Fix | Delete
this.$results = $results;
[3257] Fix | Delete
[3258] Fix | Delete
return $results;
[3259] Fix | Delete
};
[3260] Fix | Delete
[3261] Fix | Delete
Results.prototype.clear = function () {
[3262] Fix | Delete
this.$results.empty();
[3263] Fix | Delete
};
[3264] Fix | Delete
[3265] Fix | Delete
Results.prototype.displayMessage = function (params) {
[3266] Fix | Delete
var escapeMarkup = this.options.get('escapeMarkup');
[3267] Fix | Delete
[3268] Fix | Delete
this.clear();
[3269] Fix | Delete
this.hideLoading();
[3270] Fix | Delete
[3271] Fix | Delete
var $message = $(
[3272] Fix | Delete
'<li role="treeitem" aria-live="assertive"' +
[3273] Fix | Delete
' class="pumselect2-results__option"></li>'
[3274] Fix | Delete
);
[3275] Fix | Delete
[3276] Fix | Delete
var message = this.options.get('translations').get(params.message);
[3277] Fix | Delete
[3278] Fix | Delete
$message.append(
[3279] Fix | Delete
escapeMarkup(
[3280] Fix | Delete
message(params.args)
[3281] Fix | Delete
)
[3282] Fix | Delete
);
[3283] Fix | Delete
[3284] Fix | Delete
$message[0].className += ' pumselect2-results__message';
[3285] Fix | Delete
[3286] Fix | Delete
this.$results.append($message);
[3287] Fix | Delete
};
[3288] Fix | Delete
[3289] Fix | Delete
Results.prototype.hideMessages = function () {
[3290] Fix | Delete
this.$results.find('.pumselect2-results__message').remove();
[3291] Fix | Delete
};
[3292] Fix | Delete
[3293] Fix | Delete
Results.prototype.append = function (data) {
[3294] Fix | Delete
this.hideLoading();
[3295] Fix | Delete
[3296] Fix | Delete
var $options = [];
[3297] Fix | Delete
[3298] Fix | Delete
if (data.results == null || data.results.length === 0) {
[3299] Fix | Delete
if (this.$results.children().length === 0) {
[3300] Fix | Delete
this.trigger('results:message', {
[3301] Fix | Delete
message: 'noResults'
[3302] Fix | Delete
});
[3303] Fix | Delete
}
[3304] Fix | Delete
[3305] Fix | Delete
return;
[3306] Fix | Delete
}
[3307] Fix | Delete
[3308] Fix | Delete
data.results = this.sort(data.results);
[3309] Fix | Delete
[3310] Fix | Delete
for (var d = 0; d < data.results.length; d++) {
[3311] Fix | Delete
var item = data.results[d];
[3312] Fix | Delete
[3313] Fix | Delete
var $option = this.option(item);
[3314] Fix | Delete
[3315] Fix | Delete
$options.push($option);
[3316] Fix | Delete
}
[3317] Fix | Delete
[3318] Fix | Delete
this.$results.append($options);
[3319] Fix | Delete
};
[3320] Fix | Delete
[3321] Fix | Delete
Results.prototype.position = function ($results, $dropdown) {
[3322] Fix | Delete
var $resultsContainer = $dropdown.find('.pumselect2-results');
[3323] Fix | Delete
$resultsContainer.append($results);
[3324] Fix | Delete
};
[3325] Fix | Delete
[3326] Fix | Delete
Results.prototype.sort = function (data) {
[3327] Fix | Delete
var sorter = this.options.get('sorter');
[3328] Fix | Delete
[3329] Fix | Delete
return sorter(data);
[3330] Fix | Delete
};
[3331] Fix | Delete
[3332] Fix | Delete
Results.prototype.setClasses = function () {
[3333] Fix | Delete
var self = this;
[3334] Fix | Delete
[3335] Fix | Delete
this.data.current(function (selected) {
[3336] Fix | Delete
var selectedIds = $.map(selected, function (s) {
[3337] Fix | Delete
return s.id.toString();
[3338] Fix | Delete
});
[3339] Fix | Delete
[3340] Fix | Delete
var $options = self.$results
[3341] Fix | Delete
.find('.pumselect2-results__option[aria-selected]');
[3342] Fix | Delete
[3343] Fix | Delete
$options.each(function () {
[3344] Fix | Delete
var $option = $(this);
[3345] Fix | Delete
[3346] Fix | Delete
var item = $.data(this, 'data');
[3347] Fix | Delete
[3348] Fix | Delete
// id needs to be converted to a string when comparing
[3349] Fix | Delete
var id = '' + item.id;
[3350] Fix | Delete
[3351] Fix | Delete
if ((item.element != null && item.element.selected) ||
[3352] Fix | Delete
(item.element == null && $.inArray(id, selectedIds) > -1)) {
[3353] Fix | Delete
$option.attr('aria-selected', 'true');
[3354] Fix | Delete
} else {
[3355] Fix | Delete
$option.attr('aria-selected', 'false');
[3356] Fix | Delete
}
[3357] Fix | Delete
});
[3358] Fix | Delete
[3359] Fix | Delete
var $selected = $options.filter('[aria-selected=true]');
[3360] Fix | Delete
[3361] Fix | Delete
// Check if there are any selected options
[3362] Fix | Delete
if ($selected.length > 0) {
[3363] Fix | Delete
// If there are selected options, highlight the first
[3364] Fix | Delete
$selected.first().trigger('mouseenter');
[3365] Fix | Delete
} else {
[3366] Fix | Delete
// If there are no selected options, highlight the first option
[3367] Fix | Delete
// in the dropdown
[3368] Fix | Delete
$options.first().trigger('mouseenter');
[3369] Fix | Delete
}
[3370] Fix | Delete
});
[3371] Fix | Delete
};
[3372] Fix | Delete
[3373] Fix | Delete
Results.prototype.showLoading = function (params) {
[3374] Fix | Delete
this.hideLoading();
[3375] Fix | Delete
[3376] Fix | Delete
var loadingMore = this.options.get('translations').get('searching');
[3377] Fix | Delete
[3378] Fix | Delete
var loading = {
[3379] Fix | Delete
disabled: true,
[3380] Fix | Delete
loading: true,
[3381] Fix | Delete
text: loadingMore(params)
[3382] Fix | Delete
};
[3383] Fix | Delete
var $loading = this.option(loading);
[3384] Fix | Delete
$loading.className += ' loading-results';
[3385] Fix | Delete
[3386] Fix | Delete
this.$results.prepend($loading);
[3387] Fix | Delete
};
[3388] Fix | Delete
[3389] Fix | Delete
Results.prototype.hideLoading = function () {
[3390] Fix | Delete
this.$results.find('.loading-results').remove();
[3391] Fix | Delete
};
[3392] Fix | Delete
[3393] Fix | Delete
Results.prototype.option = function (data) {
[3394] Fix | Delete
var option = document.createElement('li');
[3395] Fix | Delete
option.className = 'pumselect2-results__option';
[3396] Fix | Delete
[3397] Fix | Delete
var attrs = {
[3398] Fix | Delete
'role': 'treeitem',
[3399] Fix | Delete
'aria-selected': 'false'
[3400] Fix | Delete
};
[3401] Fix | Delete
[3402] Fix | Delete
if (data.disabled) {
[3403] Fix | Delete
delete attrs['aria-selected'];
[3404] Fix | Delete
attrs['aria-disabled'] = 'true';
[3405] Fix | Delete
}
[3406] Fix | Delete
[3407] Fix | Delete
if (data.id == null) {
[3408] Fix | Delete
delete attrs['aria-selected'];
[3409] Fix | Delete
}
[3410] Fix | Delete
[3411] Fix | Delete
if (data._resultId != null) {
[3412] Fix | Delete
option.id = data._resultId;
[3413] Fix | Delete
}
[3414] Fix | Delete
[3415] Fix | Delete
if (data.title) {
[3416] Fix | Delete
option.title = data.title;
[3417] Fix | Delete
}
[3418] Fix | Delete
[3419] Fix | Delete
if (data.children) {
[3420] Fix | Delete
attrs.role = 'group';
[3421] Fix | Delete
attrs['aria-label'] = data.text;
[3422] Fix | Delete
delete attrs['aria-selected'];
[3423] Fix | Delete
}
[3424] Fix | Delete
[3425] Fix | Delete
for (var attr in attrs) {
[3426] Fix | Delete
var val = attrs[attr];
[3427] Fix | Delete
[3428] Fix | Delete
option.setAttribute(attr, val);
[3429] Fix | Delete
}
[3430] Fix | Delete
[3431] Fix | Delete
if (data.children) {
[3432] Fix | Delete
var $option = $(option);
[3433] Fix | Delete
[3434] Fix | Delete
var label = document.createElement('strong');
[3435] Fix | Delete
label.className = 'pumselect2-results__group';
[3436] Fix | Delete
[3437] Fix | Delete
var $label = $(label);
[3438] Fix | Delete
this.template(data, label);
[3439] Fix | Delete
[3440] Fix | Delete
var $children = [];
[3441] Fix | Delete
[3442] Fix | Delete
for (var c = 0; c < data.children.length; c++) {
[3443] Fix | Delete
var child = data.children[c];
[3444] Fix | Delete
[3445] Fix | Delete
var $child = this.option(child);
[3446] Fix | Delete
[3447] Fix | Delete
$children.push($child);
[3448] Fix | Delete
}
[3449] Fix | Delete
[3450] Fix | Delete
var $childrenContainer = $('<ul></ul>', {
[3451] Fix | Delete
'class': 'pumselect2-results__options pumselect2-results__options--nested'
[3452] Fix | Delete
});
[3453] Fix | Delete
[3454] Fix | Delete
$childrenContainer.append($children);
[3455] Fix | Delete
[3456] Fix | Delete
$option.append(label);
[3457] Fix | Delete
$option.append($childrenContainer);
[3458] Fix | Delete
} else {
[3459] Fix | Delete
this.template(data, option);
[3460] Fix | Delete
}
[3461] Fix | Delete
[3462] Fix | Delete
$.data(option, 'data', data);
[3463] Fix | Delete
[3464] Fix | Delete
return option;
[3465] Fix | Delete
};
[3466] Fix | Delete
[3467] Fix | Delete
Results.prototype.bind = function (container, $container) {
[3468] Fix | Delete
var self = this;
[3469] Fix | Delete
[3470] Fix | Delete
var id = container.id + '-results';
[3471] Fix | Delete
[3472] Fix | Delete
this.$results.attr('id', id);
[3473] Fix | Delete
[3474] Fix | Delete
container.on('results:all', function (params) {
[3475] Fix | Delete
self.clear();
[3476] Fix | Delete
self.append(params.data);
[3477] Fix | Delete
[3478] Fix | Delete
if (container.isOpen()) {
[3479] Fix | Delete
self.setClasses();
[3480] Fix | Delete
}
[3481] Fix | Delete
});
[3482] Fix | Delete
[3483] Fix | Delete
container.on('results:append', function (params) {
[3484] Fix | Delete
self.append(params.data);
[3485] Fix | Delete
[3486] Fix | Delete
if (container.isOpen()) {
[3487] Fix | Delete
self.setClasses();
[3488] Fix | Delete
}
[3489] Fix | Delete
});
[3490] Fix | Delete
[3491] Fix | Delete
container.on('query', function (params) {
[3492] Fix | Delete
self.hideMessages();
[3493] Fix | Delete
self.showLoading(params);
[3494] Fix | Delete
});
[3495] Fix | Delete
[3496] Fix | Delete
container.on('select', function () {
[3497] Fix | Delete
if (!container.isOpen()) {
[3498] Fix | Delete
return;
[3499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function