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
/home/sportsfe.../httpdocs/clone/wp-conte.../themes/Divi/core/admin/js
File: support-center.js
(function($) {
[0] Fix | Delete
'use strict';
[1] Fix | Delete
[2] Fix | Delete
var docPlayer;
[3] Fix | Delete
var resizeTimer;
[4] Fix | Delete
var showHideDelay = 300;
[5] Fix | Delete
var removeDelay = 500;
[6] Fix | Delete
var logViewers = [];
[7] Fix | Delete
var supportUserID = etSupportCenter.supportUserID || null;
[8] Fix | Delete
var debugLogViewer = window.wp && window.wp.codeEditor;
[9] Fix | Delete
var $save_message = $('#epanel-ajax-saving');
[10] Fix | Delete
var $etSystemStatusTable = $('.et_system_status');
[11] Fix | Delete
var $etSupportUserToggle = $('.et_support_user_toggle .et_pb_yes_no_button');
[12] Fix | Delete
var $et_documentation_videos_list_li = $('.et_documentation_videos_list li');
[13] Fix | Delete
var $modalSafeModeWarningTemplate = $('#et-ajax-safe-mode-template').html();
[14] Fix | Delete
[15] Fix | Delete
function confirmClipboardCopy() {
[16] Fix | Delete
$save_message.addClass('success-animation').fadeIn('fast');
[17] Fix | Delete
$save_message.fadeOut('slow');
[18] Fix | Delete
}
[19] Fix | Delete
[20] Fix | Delete
// Remote Access: Toggle ET Support User On/Off
[21] Fix | Delete
function supportUserActivationToggle($toggle, newState, silentMode) {
[22] Fix | Delete
[23] Fix | Delete
// If Silent Mode is `true` then we'll run AJAX without rendering display changes
[24] Fix | Delete
silentMode = silentMode || false;
[25] Fix | Delete
[26] Fix | Delete
if (typeof newState === 'undefined') {
[27] Fix | Delete
return;
[28] Fix | Delete
}
[29] Fix | Delete
[30] Fix | Delete
var postData = {
[31] Fix | Delete
action: 'et_support_user_update',
[32] Fix | Delete
nonce: etSupportCenter.nonce
[33] Fix | Delete
};
[34] Fix | Delete
[35] Fix | Delete
switch (newState) {
[36] Fix | Delete
case 'activate':
[37] Fix | Delete
postData.support_update = 'activate';
[38] Fix | Delete
break;
[39] Fix | Delete
case 'deactivate':
[40] Fix | Delete
postData.support_update = 'deactivate';
[41] Fix | Delete
break;
[42] Fix | Delete
default:
[43] Fix | Delete
return;
[44] Fix | Delete
}
[45] Fix | Delete
[46] Fix | Delete
// Ajax toggle ET Support User
[47] Fix | Delete
jQuery.ajax({
[48] Fix | Delete
type: 'POST',
[49] Fix | Delete
data: postData,
[50] Fix | Delete
dataType: 'json',
[51] Fix | Delete
url: etSupportCenter.ajaxURL,
[52] Fix | Delete
action: 'support_user_update_via_ajax',
[53] Fix | Delete
beforeSend: function(xhr) {
[54] Fix | Delete
// Don't execute DOM changes in Silent Mode
[55] Fix | Delete
if (silentMode) {
[56] Fix | Delete
return;
[57] Fix | Delete
}
[58] Fix | Delete
[59] Fix | Delete
$('.et-remote-access-error').first().hide(showHideDelay);
[60] Fix | Delete
$save_message.addClass('et_loading').removeClass('success-animation');
[61] Fix | Delete
$save_message.fadeIn('fast');
[62] Fix | Delete
},
[63] Fix | Delete
success: function(response) {
[64] Fix | Delete
// Don't execute DOM changes in Silent Mode
[65] Fix | Delete
if (silentMode) {
[66] Fix | Delete
return;
[67] Fix | Delete
}
[68] Fix | Delete
[69] Fix | Delete
$save_message.removeClass('et_loading').removeClass('success-animation');
[70] Fix | Delete
[71] Fix | Delete
setTimeout(function() {
[72] Fix | Delete
$save_message.fadeOut('slow');
[73] Fix | Delete
}, removeDelay);
[74] Fix | Delete
var $msgExpiry = $('.et-support-user-expiry').first();
[75] Fix | Delete
if ('activate' === postData.support_update) {
[76] Fix | Delete
if (response.error) {
[77] Fix | Delete
$('.et-remote-access-error').first().text(response.error).show(showHideDelay);
[78] Fix | Delete
return;
[79] Fix | Delete
}
[80] Fix | Delete
$('#et-remote-access-error').remove();
[81] Fix | Delete
$toggle.removeClass('et_pb_off_state').addClass('et_pb_on_state');
[82] Fix | Delete
$msgExpiry.attr('data-expiry', response.expiry);
[83] Fix | Delete
supportUserTimeToExpiry();
[84] Fix | Delete
$msgExpiry.show(showHideDelay);
[85] Fix | Delete
$('.et-support-user-elevated').show(showHideDelay);
[86] Fix | Delete
$('.card.et_remote_access .et_card_cta').append(
[87] Fix | Delete
$('<a>')
[88] Fix | Delete
.attr({
[89] Fix | Delete
'class': 'copy_support_token',
[90] Fix | Delete
'data-token': response.token
[91] Fix | Delete
})
[92] Fix | Delete
.text('Copy Support Token')
[93] Fix | Delete
);
[94] Fix | Delete
} else if ('deactivate' === postData.support_update) {
[95] Fix | Delete
// First switch & hide the "elevated" toggle
[96] Fix | Delete
// (not a click event because we don't need to trigger AJAX)
[97] Fix | Delete
$('.et-support-user-elevated').hide(showHideDelay);
[98] Fix | Delete
$('.et_support_user_elevated_toggle .et_pb_yes_no_button').removeClass('et_pb_on_state').addClass('et_pb_off_state');
[99] Fix | Delete
// Now clean up the Remote Access toggle
[100] Fix | Delete
$msgExpiry.hide(showHideDelay);
[101] Fix | Delete
$toggle.removeClass('et_pb_on_state').addClass('et_pb_off_state');
[102] Fix | Delete
$('.copy_support_token').fadeOut('slow');
[103] Fix | Delete
setTimeout(function() {
[104] Fix | Delete
$('.copy_support_token').remove();
[105] Fix | Delete
}, removeDelay);
[106] Fix | Delete
}
[107] Fix | Delete
$save_message.addClass('success-animation');
[108] Fix | Delete
}
[109] Fix | Delete
}).fail(function(data) {
[110] Fix | Delete
console.log(data.responseText);
[111] Fix | Delete
});
[112] Fix | Delete
}
[113] Fix | Delete
[114] Fix | Delete
// Remote Access: Calculate of Time To Auto-Deactivation
[115] Fix | Delete
function supportUserTimeToExpiry() {
[116] Fix | Delete
if (! $('.et_support_user_toggle .et_pb_on_state').length) {
[117] Fix | Delete
return;
[118] Fix | Delete
}
[119] Fix | Delete
[120] Fix | Delete
var $supportUserExpiry = $('.et-support-user-expiry').first();
[121] Fix | Delete
var expiry = parseInt($supportUserExpiry.attr('data-expiry'));
[122] Fix | Delete
var timeToExpiry = (expiry - (new Date().getTime() / 1000));
[123] Fix | Delete
var $timer = $supportUserExpiry.find('.support-user-time-to-expiry').first();
[124] Fix | Delete
var timerContent = '';
[125] Fix | Delete
var days = 0;
[126] Fix | Delete
var hours = 0;
[127] Fix | Delete
var minutes = 0;
[128] Fix | Delete
[129] Fix | Delete
if (30 >= timeToExpiry) {
[130] Fix | Delete
// Don't bother calculating; expiration will happen before the next check, so let's trigger deactivation now.
[131] Fix | Delete
$timer.html('0 minutes');
[132] Fix | Delete
// Go ahead and turn off the user (don't need to wait for WP Cron)
[133] Fix | Delete
$etSupportUserToggle.click();
[134] Fix | Delete
return;
[135] Fix | Delete
}
[136] Fix | Delete
[137] Fix | Delete
days = parseInt(timeToExpiry / 86400);
[138] Fix | Delete
days = days > 0 ? days : 0;
[139] Fix | Delete
timeToExpiry = timeToExpiry % 86400;
[140] Fix | Delete
[141] Fix | Delete
hours = parseInt(timeToExpiry / 3600);
[142] Fix | Delete
hours = hours > 0 ? hours : 0;
[143] Fix | Delete
timeToExpiry = timeToExpiry % 3600;
[144] Fix | Delete
[145] Fix | Delete
minutes = parseInt(timeToExpiry / 60);
[146] Fix | Delete
minutes = minutes > 0 ? minutes : 0;
[147] Fix | Delete
[148] Fix | Delete
if (0 < days) {
[149] Fix | Delete
timerContent = timerContent + days + (1 < days ? ' days, ' : ' day, ');
[150] Fix | Delete
}
[151] Fix | Delete
[152] Fix | Delete
if (0 < hours) {
[153] Fix | Delete
timerContent = timerContent + hours + (1 < hours ? ' hours, ' : ' hour, ');
[154] Fix | Delete
}
[155] Fix | Delete
[156] Fix | Delete
timerContent = timerContent + minutes + (1 !== minutes ? ' minutes' : ' minute');
[157] Fix | Delete
[158] Fix | Delete
$timer.html(timerContent);
[159] Fix | Delete
}
[160] Fix | Delete
[161] Fix | Delete
// Documentation: Recalculate video dimensions (typically on viewport resize)
[162] Fix | Delete
function et_core_correct_video_proportions() {
[163] Fix | Delete
var parentHeight = (parseInt($('.et_docs_videos').first().width()) * .5625) + 'px';
[164] Fix | Delete
$('.et_docs_videos .wrapper').css('max-height', parentHeight);
[165] Fix | Delete
$('.et_docs_videos iframe').css('max-height', parentHeight);
[166] Fix | Delete
}
[167] Fix | Delete
[168] Fix | Delete
// Documentation: Initialize YouTube Iframe player
[169] Fix | Delete
function loadYouTubeIframe() {
[170] Fix | Delete
if (('undefined' !== typeof YT) && YT && YT.Player) {
[171] Fix | Delete
// Default video: 'Getting Started With The Divi Builder'
[172] Fix | Delete
var firstVideo = 'T-Oe01_J62c';
[173] Fix | Delete
var $firstVideoItem = $('.et_docs_videos li:first-of-type');
[174] Fix | Delete
[175] Fix | Delete
// If the Documentation videos list has YouTube IDs, grab the first one
[176] Fix | Delete
if ($firstVideoItem.length > 0 && $firstVideoItem[0].hasAttribute('data-ytid')) {
[177] Fix | Delete
firstVideo = $firstVideoItem.attr('data-ytid');
[178] Fix | Delete
}
[179] Fix | Delete
[180] Fix | Delete
docPlayer = new YT.Player('et_documentation_player', {
[181] Fix | Delete
videoId: firstVideo,
[182] Fix | Delete
height: '360',
[183] Fix | Delete
width: '640',
[184] Fix | Delete
showinfo: 0,
[185] Fix | Delete
controls: 0,
[186] Fix | Delete
rel: 0
[187] Fix | Delete
});
[188] Fix | Delete
et_core_correct_video_proportions();
[189] Fix | Delete
} else {
[190] Fix | Delete
setTimeout(loadYouTubeIframe, 100);
[191] Fix | Delete
}
[192] Fix | Delete
}
[193] Fix | Delete
[194] Fix | Delete
// Safe Mode: Activate/Deactivate
[195] Fix | Delete
function toggleETSafeMode($toggle) {
[196] Fix | Delete
var postData = {
[197] Fix | Delete
action: 'et_safe_mode_update',
[198] Fix | Delete
nonce: etSupportCenter.nonce
[199] Fix | Delete
};
[200] Fix | Delete
[201] Fix | Delete
if ($toggle.hasClass('et_pb_off_state')) {
[202] Fix | Delete
postData.support_update = 'activate';
[203] Fix | Delete
} else if ($toggle.hasClass('et_pb_on_state') || $toggle.hasClass('et-safe-mode-indicator') || $toggle.hasClass('et-core-modal-action')) {
[204] Fix | Delete
postData.support_update = 'deactivate';
[205] Fix | Delete
} else {
[206] Fix | Delete
return;
[207] Fix | Delete
}
[208] Fix | Delete
[209] Fix | Delete
if ('activate' === postData.support_update) {
[210] Fix | Delete
var safeModeProduct = $toggle.parents('#et_card_safe_mode').data('et-product');
[211] Fix | Delete
[212] Fix | Delete
// Continue only if the product is in our allowlist
[213] Fix | Delete
switch (safeModeProduct) {
[214] Fix | Delete
case 'divi_builder_plugin':
[215] Fix | Delete
case 'divi_theme':
[216] Fix | Delete
case 'extra_theme':
[217] Fix | Delete
case 'monarch_plugin':
[218] Fix | Delete
case 'bloom_plugin':
[219] Fix | Delete
postData.product = safeModeProduct;
[220] Fix | Delete
break;
[221] Fix | Delete
default:
[222] Fix | Delete
return;
[223] Fix | Delete
}
[224] Fix | Delete
}
[225] Fix | Delete
[226] Fix | Delete
// Ajax toggle Safe Mode
[227] Fix | Delete
jQuery.ajax({
[228] Fix | Delete
type: 'POST',
[229] Fix | Delete
data: postData,
[230] Fix | Delete
dataType: 'json',
[231] Fix | Delete
url: etSupportCenter.ajaxURL,
[232] Fix | Delete
action: 'safe_mode_update_via_ajax',
[233] Fix | Delete
beforeSend: function(xhr) {
[234] Fix | Delete
$('.et-core-safe-mode-block-modal').removeClass('et-core-active');
[235] Fix | Delete
$save_message.addClass('et_loading').removeClass('success-animation');
[236] Fix | Delete
$save_message.fadeIn('fast');
[237] Fix | Delete
},
[238] Fix | Delete
success: function(response) {
[239] Fix | Delete
$save_message.removeClass('et_loading').addClass('success-animation');
[240] Fix | Delete
var $msgExpiry = $('.et-support-user-expiry').first();
[241] Fix | Delete
if ('activate' === postData.support_update) {
[242] Fix | Delete
$('.et_safe_mode_toggle .et_pb_yes_no_button').removeClass('et_pb_off_state').addClass('et_pb_on_state');
[243] Fix | Delete
} else if ('deactivate' === postData.support_update) {
[244] Fix | Delete
$('.et_safe_mode_toggle .et_pb_yes_no_button').removeClass('et_pb_on_state').addClass('et_pb_off_state');
[245] Fix | Delete
$('.et-safe-mode-indicator').fadeOut('slow');
[246] Fix | Delete
setTimeout(function() {
[247] Fix | Delete
$('.et-safe-mode-indicator').remove();
[248] Fix | Delete
$('.wp-admin').removeClass('et-safe-mode-active');
[249] Fix | Delete
}, removeDelay);
[250] Fix | Delete
}
[251] Fix | Delete
setTimeout(function() {
[252] Fix | Delete
$save_message.fadeOut('slow');
[253] Fix | Delete
window.location.reload(true);
[254] Fix | Delete
}, removeDelay);
[255] Fix | Delete
}
[256] Fix | Delete
}).fail(function(data) {
[257] Fix | Delete
console.log(data.responseText);
[258] Fix | Delete
$save_message.fadeOut('slow');
[259] Fix | Delete
});
[260] Fix | Delete
}
[261] Fix | Delete
[262] Fix | Delete
// Safe Mode: Interrupt Actions when Safe Mode is Active
[263] Fix | Delete
function preventActionWhenSafeModeActive() {
[264] Fix | Delete
$('body').append($modalSafeModeWarningTemplate);
[265] Fix | Delete
$('.et-core-safe-mode-block-modal').addClass('et-core-active');
[266] Fix | Delete
$(window).trigger('et-core-modal-active');
[267] Fix | Delete
}
[268] Fix | Delete
[269] Fix | Delete
// Logs: Add CodeMirror Instance with Custom Formatting Rules
[270] Fix | Delete
function addLogViewerInstance(codeEditor, $element, config) {
[271] Fix | Delete
if (! $element || $element.length === 0) {
[272] Fix | Delete
return;
[273] Fix | Delete
}
[274] Fix | Delete
var instance = codeEditor.initialize($element, {
[275] Fix | Delete
codemirror: config,
[276] Fix | Delete
});
[277] Fix | Delete
if (instance && instance.codemirror) {
[278] Fix | Delete
logViewers.push(instance.codemirror);
[279] Fix | Delete
}
[280] Fix | Delete
}
[281] Fix | Delete
[282] Fix | Delete
// Dismiss Card in the Support Center
[283] Fix | Delete
function dismissCard($button) {
[284] Fix | Delete
const postData = {
[285] Fix | Delete
action: 'et_dismiss_support_center_card',
[286] Fix | Delete
nonce: etSupportCenter.nonce,
[287] Fix | Delete
product: $button.data('product'),
[288] Fix | Delete
card_key: $button.data('key'),
[289] Fix | Delete
};
[290] Fix | Delete
[291] Fix | Delete
// Dismiss the Card via AJAX
[292] Fix | Delete
jQuery.ajax({
[293] Fix | Delete
type: 'POST',
[294] Fix | Delete
data: postData,
[295] Fix | Delete
dataType: 'json',
[296] Fix | Delete
url: etSupportCenter.ajaxURL,
[297] Fix | Delete
beforeSend: function(xhr) {
[298] Fix | Delete
$button.prop('disabled', true);
[299] Fix | Delete
$save_message.addClass('et_loading').removeClass('success-animation');
[300] Fix | Delete
$save_message.fadeIn('fast');
[301] Fix | Delete
},
[302] Fix | Delete
success: function(response) {
[303] Fix | Delete
$button.parent().remove();
[304] Fix | Delete
$save_message.removeClass('et_loading').addClass('success-animation');
[305] Fix | Delete
[306] Fix | Delete
setTimeout(function() {
[307] Fix | Delete
$save_message.fadeOut('slow');
[308] Fix | Delete
}, removeDelay);
[309] Fix | Delete
},
[310] Fix | Delete
}).fail(function(data) {
[311] Fix | Delete
$button.prop('disabled', false);
[312] Fix | Delete
console.log(data.responseText);
[313] Fix | Delete
$save_message.fadeOut('slow');
[314] Fix | Delete
});
[315] Fix | Delete
}
[316] Fix | Delete
[317] Fix | Delete
$(window).on('resize', function() {
[318] Fix | Delete
resizeTimer = _.debounce(et_core_correct_video_proportions(), showHideDelay);
[319] Fix | Delete
});
[320] Fix | Delete
[321] Fix | Delete
$(document).ready(function() {
[322] Fix | Delete
/**
[323] Fix | Delete
* Support Center :: System Status
[324] Fix | Delete
*/
[325] Fix | Delete
[326] Fix | Delete
// System Status: display message if all checks passed
[327] Fix | Delete
if (0 === $('.et-system-status-report').children(':not(.et_system_status_pass)').length) {
[328] Fix | Delete
$('.et-system-status-congratulations').show(showHideDelay);
[329] Fix | Delete
}
[330] Fix | Delete
[331] Fix | Delete
// System Status: Show Full Report
[332] Fix | Delete
$('.full_report_show').on('click', function() {
[333] Fix | Delete
$etSystemStatusTable.find('.et_system_status_pass').show(showHideDelay);
[334] Fix | Delete
$etSystemStatusTable.removeClass('summary').addClass('full');
[335] Fix | Delete
});
[336] Fix | Delete
[337] Fix | Delete
// System Status: Show Summary Report
[338] Fix | Delete
$('.full_report_hide').on('click', function() {
[339] Fix | Delete
$etSystemStatusTable.find('.et_system_status_pass').hide(showHideDelay);
[340] Fix | Delete
$etSystemStatusTable.addClass('summary').removeClass('full');
[341] Fix | Delete
});
[342] Fix | Delete
[343] Fix | Delete
// System Status: Copy Full Report to Clipboard
[344] Fix | Delete
$('.full_report_copy').on('click', function() {
[345] Fix | Delete
$('#et_system_status_plain').select();
[346] Fix | Delete
document.execCommand('copy');
[347] Fix | Delete
confirmClipboardCopy();
[348] Fix | Delete
});
[349] Fix | Delete
[350] Fix | Delete
/**
[351] Fix | Delete
* Support Center :: Remote Access
[352] Fix | Delete
*/
[353] Fix | Delete
if ($('.card.et_remote_access').length > 0) {
[354] Fix | Delete
// Remote Access: Initial Calculation of Time To Auto-Deactivation
[355] Fix | Delete
supportUserTimeToExpiry();
[356] Fix | Delete
[357] Fix | Delete
// Remote Access: Recalculate Time To Auto-Deactivation (every 30 seconds)
[358] Fix | Delete
setInterval(supportUserTimeToExpiry, 30000);
[359] Fix | Delete
[360] Fix | Delete
// Remote Access: Display Auto-Deactivation Countdown
[361] Fix | Delete
if ($etSupportUserToggle.hasClass('et_pb_on_state')) {
[362] Fix | Delete
$('.et-support-user-expiry').first().show(0);
[363] Fix | Delete
} else {
[364] Fix | Delete
// If the Support User account toggle is off, send a quick AJAX request to verify the account is deactivated
[365] Fix | Delete
supportUserActivationToggle($etSupportUserToggle, 'deactivate', true);
[366] Fix | Delete
}
[367] Fix | Delete
[368] Fix | Delete
// Remote Access: Activate/Deactivate
[369] Fix | Delete
$etSupportUserToggle.on('click', function(e) {
[370] Fix | Delete
e.preventDefault();
[371] Fix | Delete
[372] Fix | Delete
if ($etSupportUserToggle.hasClass('et_pb_off_state')) {
[373] Fix | Delete
supportUserActivationToggle($(this), 'activate');
[374] Fix | Delete
} else if ($etSupportUserToggle.hasClass('et_pb_on_state')) {
[375] Fix | Delete
supportUserActivationToggle($(this), 'deactivate');
[376] Fix | Delete
}
[377] Fix | Delete
});
[378] Fix | Delete
[379] Fix | Delete
// Remote Access: Elevate/Reset Divi Support user role
[380] Fix | Delete
$('.et_support_user_elevated_toggle .et_pb_yes_no_button').on('click', function(e) {
[381] Fix | Delete
e.preventDefault();
[382] Fix | Delete
[383] Fix | Delete
var $toggle = $(this);
[384] Fix | Delete
[385] Fix | Delete
var postData = {
[386] Fix | Delete
action: 'et_support_user_update',
[387] Fix | Delete
nonce: etSupportCenter.nonce
[388] Fix | Delete
};
[389] Fix | Delete
[390] Fix | Delete
if ($toggle.hasClass('et_pb_off_state')) {
[391] Fix | Delete
postData.support_update = 'elevate';
[392] Fix | Delete
} else if ($toggle.hasClass('et_pb_on_state')) {
[393] Fix | Delete
postData.support_update = 'activate';
[394] Fix | Delete
} else {
[395] Fix | Delete
return;
[396] Fix | Delete
}
[397] Fix | Delete
[398] Fix | Delete
// Ajax toggle ET Support User Admin Mode
[399] Fix | Delete
jQuery.ajax({
[400] Fix | Delete
type: 'POST',
[401] Fix | Delete
data: postData,
[402] Fix | Delete
dataType: 'json',
[403] Fix | Delete
url: etSupportCenter.ajaxURL,
[404] Fix | Delete
action: 'support_user_update_via_ajax',
[405] Fix | Delete
beforeSend: function(xhr) {
[406] Fix | Delete
$save_message.addClass('et_loading').removeClass('success-animation');
[407] Fix | Delete
$save_message.fadeIn('fast');
[408] Fix | Delete
},
[409] Fix | Delete
success: function(response) {
[410] Fix | Delete
$save_message.removeClass('et_loading').removeClass('success-animation');
[411] Fix | Delete
[412] Fix | Delete
setTimeout(function() {
[413] Fix | Delete
$save_message.fadeOut('slow');
[414] Fix | Delete
}, removeDelay);
[415] Fix | Delete
if ('elevate' === postData.support_update) {
[416] Fix | Delete
$toggle.removeClass('et_pb_off_state').addClass('et_pb_on_state');
[417] Fix | Delete
} else if ('activate' === postData.support_update) {
[418] Fix | Delete
$toggle.removeClass('et_pb_on_state').addClass('et_pb_off_state');
[419] Fix | Delete
}
[420] Fix | Delete
$save_message.addClass('success-animation');
[421] Fix | Delete
}
[422] Fix | Delete
}).fail(function(data) {
[423] Fix | Delete
console.log(data.responseText);
[424] Fix | Delete
});
[425] Fix | Delete
});
[426] Fix | Delete
[427] Fix | Delete
// Remote Access: Copy Support Token to clipboard
[428] Fix | Delete
$('body').on('click', '.copy_support_token', function() {
[429] Fix | Delete
var token = $(this).attr('data-token');
[430] Fix | Delete
var $temp = $('<input>');
[431] Fix | Delete
$('body').append($temp);
[432] Fix | Delete
$temp.val(token).select();
[433] Fix | Delete
document.execCommand('copy');
[434] Fix | Delete
$temp.remove();
[435] Fix | Delete
confirmClipboardCopy();
[436] Fix | Delete
});
[437] Fix | Delete
}
[438] Fix | Delete
[439] Fix | Delete
/**
[440] Fix | Delete
* Support Center :: Documentation & Help
[441] Fix | Delete
*/
[442] Fix | Delete
if ($('body').find('[data-et-page="wp-admin-support-center"]').length > 0) {
[443] Fix | Delete
// Load the IFrame Player API code asynchronously.
[444] Fix | Delete
var tag = document.createElement('script');
[445] Fix | Delete
tag.src = 'https://www.youtube.com/iframe_api';
[446] Fix | Delete
var firstScriptTag = document.getElementsByTagName('script')[0];
[447] Fix | Delete
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
[448] Fix | Delete
loadYouTubeIframe();
[449] Fix | Delete
}
[450] Fix | Delete
[451] Fix | Delete
// Documentation & Help: YouTube Video Navigation
[452] Fix | Delete
$et_documentation_videos_list_li.on('click', function() {
[453] Fix | Delete
var $active = $(this);
[454] Fix | Delete
[455] Fix | Delete
$et_documentation_videos_list_li.removeClass('active');
[456] Fix | Delete
$active.addClass('active');
[457] Fix | Delete
[458] Fix | Delete
docPlayer.cueVideoById($active.attr('data-ytid'), 0, 'large');
[459] Fix | Delete
});
[460] Fix | Delete
[461] Fix | Delete
/**
[462] Fix | Delete
* Support Center :: Safe Mode
[463] Fix | Delete
*/
[464] Fix | Delete
[465] Fix | Delete
if ($save_message.length === 0) {
[466] Fix | Delete
$('body.wp-admin').append(
[467] Fix | Delete
$('<div>').attr({ 'id': 'et-ajax-saving', 'class': 'et_loading' }).append(
[468] Fix | Delete
$('<img>').attr({ 'src': etSupportCenter.ajaxLoaderImg, 'alt': 'loading', 'id': 'loading' })
[469] Fix | Delete
)
[470] Fix | Delete
);
[471] Fix | Delete
$save_message = $('#et-ajax-saving');
[472] Fix | Delete
}
[473] Fix | Delete
[474] Fix | Delete
// Safe Mode: Activate/Deactivate
[475] Fix | Delete
$('body').on('click', '.et-safe-mode-indicator', function(e) {
[476] Fix | Delete
e.preventDefault();
[477] Fix | Delete
var $toggle = $(this);
[478] Fix | Delete
toggleETSafeMode($toggle);
[479] Fix | Delete
});
[480] Fix | Delete
$('body').on('click', '.et_safe_mode_toggle .et_pb_yes_no_button', function(e) {
[481] Fix | Delete
e.preventDefault();
[482] Fix | Delete
var $toggle = $(this);
[483] Fix | Delete
toggleETSafeMode($toggle);
[484] Fix | Delete
});
[485] Fix | Delete
$('body').on('click', '.et-core-safe-mode-block-modal .et-core-modal-action', function(e) {
[486] Fix | Delete
e.preventDefault();
[487] Fix | Delete
var $toggle = $(this);
[488] Fix | Delete
toggleETSafeMode($toggle);
[489] Fix | Delete
});
[490] Fix | Delete
[491] Fix | Delete
// Safe Mode: Interrupt Plugin/Theme Toggles
[492] Fix | Delete
$('body.et-safe-mode-active').on('click', '.theme .activate', function(e) {
[493] Fix | Delete
e.preventDefault();
[494] Fix | Delete
preventActionWhenSafeModeActive();
[495] Fix | Delete
});
[496] Fix | Delete
$('body.et-safe-mode-active').on('click', '.plugins .activate a', function(e) {
[497] Fix | Delete
e.preventDefault();
[498] Fix | Delete
preventActionWhenSafeModeActive();
[499] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function