Code Analysis: WP 2FA - Two-factor authentication for WordPress 1.7.0

Function Rating Maintainability Complexity Lines of code
WP2FA\Admin\SettingsPage::validate_and_sanitize()
D
19
64 197
WP2FA\WP2FA::isUserEnforced()
D
25
55 143
WP2FA\Admin\UserProfile::user_2fa_options()
D
23
40 186
WP2FA\Admin\SettingsPage::validate_and_sanitize_email()
D
33 37 87
WP2FA\Admin\SetupWizard::setup_page()
C
28
27 125
WP2FA\Authenticator\Login::login_form_validate_2fa()
C
33 29 93
WP2FA\WP2FA::is_user_excluded()
C
36 29 76
WP2FA\Admin\SettingsPage::settings_page_render()
C
27
20 169
WP2FA\Utils\UserUtils::determine_user_2fa_status()
C
39 26 58
login_header()
B
33 19 102
WP2FA\Admin\Views\FirstTimeWizardSteps::enforcementPolicy()
B
31 15 144
WP2FA\Admin\UserNotices::user_setup_2fa_nag()
B
41 20 49
WP2FA\Admin\UserProfile::save_user_2fa_options()
B
46 18 36
WP2FA\WP2FA::block_unconfigured_users_from_admin()
B
46 18 33
WP2FA\Admin\UserProfile::generate_inline_modals()
A
35 11 106
WP2FA\Authenticator\Login::login_html()
A
35 11 99
WP2FA\Utils\UserUtils::get_all_users_data()
A
42 13 49
WP2FA\Admin\Views\FirstTimeWizardSteps::selectMethod()
A
38 10 90
WP2FA\Admin\Views\FirstTimeWizardSteps::excludeUsers()
A
40 10 78
WP2FA\WP2FA::add_actions()
A
38 11 61
WP2FA\Admin\UserProfile::validate_authcode_via_ajax()
A
45 12 41
WP2FA\WP2FA::handle_send_test_email_ajax()
A
45 12 39
WP2FA\Shortcodes\Shortcodes::user_setup_2fa_form()
A
39 10 62
WP2FA\WP2FA::get_wp2fa_email_templates()
A
40 9 58
WP2FA\Admin\SettingsPage::user_profile_settings()
A
39 7 83
WP2FA\Admin\SettingsPage::update_wp2fa_network_email_options()
A
50 10 30
WP2FA\WP2FA::get_wp2fa_setting()
A
51 10 28
WP2FA\Admin\Views\FirstTimeWizardSteps::excludedNetworkSites()
A
45 8 53
WP2FA\Admin\User::lock_user_account_if_needed()
A
48 9 33
WP2FA\Admin\SetupWizard::send_authentication_setup_email()
A
47 9 33
WP2FA\WP2FA::replace_email_strings()
A
45 8 42
uninstall()
A
43 6 61
WP2FA\Admin\SettingsPage::remove_user_2fa()
A
44 7 43
WP2FA\Admin\SettingsPage::email_settings()
A
39 4 87
WP2FA\Admin\User::checkMethodsAndSetUser()
A
54 8 21
WP2FA\Authenticator\Login::wp_login()
S
52 7 26
WP2FA\Admin\User::setUserPoliciesAndGrace()
S
52 7 24
WP2FA\Utils\Migration::migrateUpTo_162()
S
52 7 24
WP2FA\Utils\Migration::migrateUpTo_160()
S
53 7 23
WP2FA\Admin\Views\FirstTimeWizardSteps::gracePeriod()
S
43 4 64
WP2FA\Utils\GenerateModal::generate_modal()
S
48 6 34
script_loader_tag()
S
56 7 18
WP2FA\Admin\SettingsPage::settings_saved_network_admin_notice()
S
51 6 32
WP2FA\Utils\Migration::migrateUpTo_170()
S
56 7 17
WP2FA\Admin\Views\WizardSteps::backupCodesConfigure()
S
46 5 43
WP2FA\Admin\SettingsPage::get_all_users()
S
50 6 27
WP2FA\Cron\CronTasks::wp_2fa_check_users_grace_period_status()
S
54 6 22
WP2FA\Admin\Views\WizardSteps::totpConfigure()
S
41 3 67
WP2FA\Admin\SetupWizard::setup_page_steps()
S
55 6 21
WP2FA\WP2FA::__construct()
S
58 6 14
WP2FA\Admin\SettingsPage::generate_custom_user_profile_page()
S
50 5 28
WP2FA\Admin\SettingsPage::get_all_network_sites()
S
52 5 24
WP2FA\Utils\AbstractMigration::migrate()
S
53 5 24
WP2FA\Authenticator\Login::backup_2fa()
S
52 5 23
WP2FA\Utils\DateTimeUtils::format_grace_period_expiration_string()
S
52 5 23
WP2FA\Admin\Views\WizardSteps::generatedBackupCodes()
S
49 4 35
WP2FA\Authenticator\BackupCodes::generate_codes()
S
54 5 20
WP2FA\Utils\Debugging::write_to_file()
S
55 5 20
WP2FA\Admin\SettingsPage::unlock_account()
S
48 4 34
WP2FA\WP2FA::setup_redirect()
S
55 5 19
WP2FA\Admin\UserRegistered::apply_2fa_grace_period()
S
55 5 18
WP2FA\Authenticator\Login::email_authentication_page()
S
50 4 32
WP2FA\Admin\UserProfile::can_user_remove_2fa()
S
58 5 16
WP2FA\Admin\SetupWizard::setup_page_footer()
S
50 4 30
WP2FA\Admin\SettingsPage::hide_settings()
S
59 5 14
WP2FA\Authenticator\Login::get_available_providers_for_user()
S
60 5 13
WP2FA\Authenticator\BackupCodes::validate_code()
S
60 5 12
WP2FA\Admin\Views\WizardSteps::emailConfigure()
S
45 2 53
WP2FA\Utils\UserUtils::get_all_user_ids_based_on_enabled_2fa_method()
S
53 4 22
WP2FA\Utils\UserUtils::get_all_user_ids_who_have_wp_2fa_metadata_present()
S
53 4 21
WP2FA\Authenticator\Authentication::base32_decode()
S
54 4 20
WP2FA\WP2FA::init()
S
54 4 20
WP2FA\Admin\Controllers\Settings::getCustomPageLink()
S
56 4 18
WP2FA\Shortcodes\Shortcodes::user_setup_2fa_notice()
S
48 3 33
WP2FA\Admin\UserProfile::inline_2fa_profile_form()
S
57 4 17
WP2FA\Admin\SetupWizard::wp_2fa_step_global_2fa_methods()
S
46 2 47
WP2FA\Admin\Views\WizardSteps::congratulationsStepPluginWizard()
S
51 3 31
WP2FA\Authenticator\Authentication::base32_encode()
S
58 4 15
WP2FA\Authenticator\Login::filter_authenticate()
S
64 5 9
WP2FA\Authenticator\Login::is_api_request()
S
66 5 9
WP2FA\Admin\SettingsPage::update_wp2fa_network_options()
S
51 3 30
WP2FA\Admin\SettingsPage::email_from_settings()
S
45 1 59
WP2FA\Utils\UserUtils::extractStatuses()
S
60 4 14
WP2FA\Authenticator\Authentication::pack64()
S
58 4 14
WP2FA\Authenticator\Login::run_authentication_check()
S
60 4 14
WP2FA\Admin\User::setUser()
S
61 4 13
WP2FA\Authenticator\Login::get_enabled_providers_for_user()
S
61 4 12
WP2FA\Admin\UserNotices::__construct()
S
60 4 12
WP2FA\Authenticator\Login::show_two_factor_login()
S
61 4 11
WP2FA\Authenticator\Login::verify_login_nonce()
S
62 4 11
WP2FA\WP2FA::update_usermeta_if_required()
S
61 4 11
admin_scripts()
S
46 2 40
WP2FA\Admin\Views\WizardSteps::showModalMethods()
S
60 3 20
WP2FA\Admin\Views\WizardSteps::emailOption()
S
59 3 17
WP2FA\Admin\SettingsPage::get_post_by_post_name()
S
64 4 10
WP2FA\Admin\SettingsPage::extract_roles_from_input()
S
65 4 9
WP2FA\Admin\User::needsToReconfigureMethod()
S
70 4 6
WP2FA\Admin\SetupWizard::wp_2fa_step_global_2fa_methods_save()
S
58 3 15
WP2FA\Authenticator\Authentication::is_valid_authcode()
S
58 3 14
WP2FA\Authenticator\Login::create_login_nonce()
S
59 3 13
WP2FA\Admin\User::__construct()
S
62 3 12
WP2FA\Admin\SetupWizard::get_next_step()
S
61 3 12
WP2FA\Authenticator\BackupCodes::run_ajax_generate_json()
S
52 2 26
WP2FA\Authenticator\Login::get_2fa_setup_url()
S
63 3 11
WP2FA\Utils\AbstractMigration::getAllMigrationMethodsAsNumbers()
S
61 3 11
WP2FA\Authenticator\Authentication::getApps()
S
49 1 39
WP2FA\WP2FA::getDefaultSettings()
S
48 1 35
WP2FA\Admin\Views\WizardSteps::totpOption()
S
57 2 20
WP2FA\Admin\Views\WizardSteps::totpReConfigure()
S
57 2 19
WP2FA\Admin\SettingsPage::gracePeriodFrequency()
S
52 1 34
WP2FA\Admin\Views\WizardSteps::emailReConfigure()
S
58 2 17
WP2FA\WP2FA::getNumberOfPluginsText()
S
58 2 17
WP2FA\Authenticator\Authentication::calc_totp()
S
56 2 16
WP2FA\Admin\UserProfile::user_2fa_row_actions()
S
57 2 16
WP2FA\Admin\SettingsPage::add_display_post_states()
S
66 3 8
WP2FA\Authenticator\BackupCodes::codes_remaining_for_user()
S
67 3 7
WP2FA\Utils\Migration::migrateUpTo_150()
S
66 3 8
WP2FA\Admin\Controllers\Settings::getSetupPageLink()
S
64 3 10
WP2FA\Admin\SettingsPage::are_backup_codes_enabled()
S
66 3 9
WP2FA\Admin\UserListing::getUser2faStatus()
S
63 3 10
WP2FA\Authenticator\Login::validate_email_authentication()
S
69 3 6
WP2FA\Authenticator\Login::validate_backup_codes()
S
69 3 6
WP2FA\Cron\CronTasks::register_check_users_grace_period_status_event()
S
72 3 5
WP2FA\Admin\Controllers\Settings::getSettingsPageLink()
S
64 3 10
WP2FA\WP2FA::add_wizard_actions()
S
71 3 5
WP2FA\WP2FA::getMultiSites()
S
66 3 9
WP2FA\Admin\Views\WizardSteps::congratulationsStep()
S
61 2 15
WP2FA\Utils\UserUtils::get_2fa_methods_available_to_user()
S
64 3 10
WP2FA\Authenticator\Login::pre_process_email_authentication()
S
68 3 7
WP2FA\Admin\Views\WizardSteps::isTotpEnabled()
S
69 3 6
WP2FA\Admin\Views\WizardSteps::isMailEnabled()
S
69 3 6
WP2FA\Authenticator\Authentication::abssort()
S
66 3 8
WP2FA\Authenticator\Authentication::get_code()
S
63 3 10
WP2FA\Authenticator\Authentication::validate_token()
S
66 3 8
WP2FA\Admin\User::getTotpKey()
S
64 3 10
WP2FA\Authenticator\Authentication::get_user_token()
S
67 3 7
WP2FA\Utils\UserUtils::getHumanReadableUserStatuses()
S
59 2 14
WP2FA\Utils\UserUtils::roleIsNot()
S
63 2 13
WP2FA\Admin\UserNotices::user_reconfigure_2fa_nag()
S
61 2 11
WP2FA\Admin\SetupWizard::setup_page_header()
S
53 1 26
WP2FA\Admin\SetupWizard::setup_page_content()
S
65 2 11
WP2FA\Admin\SettingsPage::remove_data_upon_uninstall()
S
56 1 25
WP2FA\Admin\SettingsPage::disable_2fa_removal_setting()
S
55 1 25
WP2FA\Admin\SettingsPage::create_settings_admin_menu()
S
54 1 24
WP2FA\Admin\SettingsPage::limit_settings_access()
S
56 1 24
WP2FA\Admin\SettingsPage::changeDefaultTextArea()
S
57 1 23
WP2FA\Admin\SettingsPage::get_email_notification_definitions()
S
55 1 23
WP2FA\Authenticator\Login::totp_authentication_page()
S
57 1 22
WP2FA\Admin\SettingsPage::user_redirect_after_wizard()
S
58 1 21
WP2FA\Admin\SettingsPage::grace_period_setting()
S
59 1 20
WP2FA\Admin\Views\WizardSteps::introductionStep()
S
58 1 19
WP2FA\Admin\Views\WizardSteps::welcomeStep()
S
59 1 18
WP2FA\Admin\UserProfile::delete_expire_and_enforced_keys()
S
59 1 17
WP2FA\Admin\Views\WizardSteps::generateBackupCodes()
S
58 1 17
WP2FA\Admin\SetupWizard::regenerate_authentication_key()
S
57 1 16
WP2FA\Admin\User::getEnforcedInstantly()
S
71 2 6
WP2FA\Admin\UserListing::showColumnData()
S
68 2 8
script_url()
S
68 2 6
WP2FA\Authenticator\Login::destroy_current_session_for_user()
S
70 2 6
activate()
S
67 2 8
WP2FA\Admin\User::needsToReconfigure2FA()
S
71 2 6
WP2FA\Authenticator\Login::rememberme()
S
67 2 7
WP2FA\Admin\User::getGracePeriodExpiration()
S
71 2 6
WP2FA\Utils\Debugging::log()
S
71 2 5
WP2FA\Admin\User::deleteUserMeta()
S
73 2 5
WP2FA\Authenticator\Authentication::get_google_qr_code()
S
66 2 8
WP2FA\Admin\User::setEnforcedInstantly()
S
73 2 5
WP2FA\Admin\User::getDismissedNag()
S
71 2 6
WP2FA\Admin\User::getUserMeta()
S
74 2 5
WP2FA\Utils\SettingsUtils::delete_option()
S
73 2 4
WP2FA\Admin\User::setReconfigure2FA()
S
73 2 5
WP2FA\Admin\User::setDismissedNag()
S
73 2 5
WP2FA\WP2FA::get_instance()
S
71 2 6
WP2FA\Utils\Debugging::get_logging_dir_path()
S
67 2 7
WP2FA\Utils\SettingsUtils::get_option()
S
73 2 4
WP2FA\Admin\User::getGlobalSettingsHashUser()
S
73 2 5
WP2FA\Admin\User::isUserSet()
S
71 2 6
WP2FA\Admin\SettingsPage::send_email()
S
63 2 9
WP2FA\Admin\UserNotices::ensureUser()
S
74 2 5
WP2FA\Admin\User::setUserStatus()
S
64 2 9
WP2FA\Authenticator\Authentication::is_valid_key()
S
68 2 7
WP2FA\Admin\Views\WizardSteps::getUser()
S
71 2 6
WP2FA\Utils\Debugging::write_to_log()
S
64 2 9
WP2FA\Authenticator\Login::login_url()
S
68 2 7
WP2FA\Authenticator\Authentication::user_has_token()
S
67 2 8
WP2FA\Cron\CronTasks::send_expired_grace_email()
S
63 2 10
WP2FA\Admin\SettingsPage::excluded_roles_or_users_setting()
S
66 2 9
WP2FA\Authenticator\Login::validate_totp_authentication()
S
65 2 9
style_url()
S
68 2 6
WP2FA\Utils\SettingsUtils::setting_prefixer()
S
77 2 3
WP2FA\Authenticator\Login::collect_auth_cookie_tokens()
S
70 2 6
WP2FA\Admin\User::getEnabledMethods()
S
71 2 6
WP2FA\Admin\User::isAdminUser()
S
70 2 6
WP2FA\WP2FA::is_this_multisite()
S
79 2 3
WP2FA\Admin\SettingsPage::send_account_unlocked_email()
S
62 2 10
WP2FA\Utils\SettingsUtils::update_option()
S
73 2 4
WP2FA\Admin\User::setGlobalSettingsHash()
S
73 2 5
WP2FA\Admin\Views\WizardSteps::jsonNonce()
S
70 2 6
WP2FA\Admin\SettingsPage::cancel_bg_processes()
S
64 2 9
WP2FA\Utils\AbstractMigration::normalizeVersion()
S
67 2 7
WP2FA\Utils\AbstractMigration::getStoredVersion()
S
70 2 6
WP2FA\Admin\SettingsPage::create_settings_admin_menu_multisite()
S
60 1 14
WP2FA\Admin\SetupWizard::wp_2fa_add_intro_step()
S
62 1 12
WP2FA\Admin\SettingsPage::add_plugin_action_links()
S
63 1 11
setup()
S
62 1 11
WP2FA\Authenticator\Login::backup_codes_authentication_page()
S
64 1 11
WP2FA\EmailTemplate::getDescription()
S
82 1 3
WP2FA\EmailTemplate::getTitle()
S
82 1 3
WP2FA\Authenticator\Login::clear_session_and_show_2fa_form()
S
72 1 6
WP2FA\Admin\SetupWizard::admin_menus()
S
79 1 3
WP2FA\EmailTemplate::getId()
S
82 1 3
WP2FA\Admin\SetupWizard::wp_2fa_step_finish_save()
S
73 1 5
WP2FA\Admin\UserListing::addWP2FAColumn()
S
74 1 4
WP2FA\Utils\Migration::setSettings()
S
79 1 3
WP2FA\Admin\UserRegistered::__construct()
S
91 1 2
WP2FA\Authenticator\Authentication::generate_token()
S
72 1 5
WP2FA\Authenticator\Login::get_providers()
S
66 1 9
enqueueMultiSelectScripts()
S
78 1 3
WP2FA\Authenticator\Login::delete_login_nonce()
S
79 1 3
WP2FA\Utils\SettingsUtils::create_settings_hash()
S
79 1 3
WP2FA\Cron\CronTasks::__construct()
S
75 1 4
WP2FA\Admin\SetupWizard::wp_2fa_step_finish()
S
73 1 5
WP2FA\Admin\SettingsPage::user_deleted_2fa_notice()
S
67 1 10
WP2FA\WP2FA::getAllSettings()
S
80 1 3
WP2FA\Utils\Migration::getSettings()
S
80 1 3
WP2FA\Admin\SettingsPage::get_current_number_of_active_bg_processes()
S
67 1 8
WP2FA\Utils\Debugging::is_logging_enabled()
S
79 1 3
i18n()
S
71 1 5
WP2FA\Admin\SettingsPage::select_enforcement_policy_setting()
S
81 1 3
WP2FA\Authenticator\Login::is_user_using_two_factor()
S
74 1 4
WP2FA\Utils\Debugging::get_log_timestamp()
S
78 1 3
WP2FA\EmailTemplate::setCanBeToggled()
S
81 1 3
WP2FA\WP2FA::wp_2fa_get_roles()
S
74 1 5
WP2FA\Authenticator\Authentication::get_user_totp_key()
S
78 1 3
WP2FA\Admin\SettingsPage::user_unlocked_notice()
S
67 1 10
WP2FA\EmailTemplate::getEmailContentId()
S
82 1 3
WP2FA\Authenticator\Authentication::delete_token()
S
79 1 3
WP2FA\Shortcodes\Shortcodes::__construct()
S
72 1 5
WP2FA\EmailTemplate::canBeToggled()
S
82 1 3
wp_login_viewport_meta()
S
100 1 5
WP2FA\Admin\UserListing::init()
S
71 1 5
deactivate()
S
100 1 2
WP2FA\Utils\Debugging::create_index_file()
S
78 1 3
WP2FA\Admin\UserRegistered::check_user_upon_role_change()
S
81 1 3
WP2FA\Authenticator\Authentication::__construct()
S
91 1 2
WP2FA\Admin\User::setUserMeta()
S
79 1 3
init()
S
82 1 3
WP2FA\EmailTemplate::__construct()
S
69 1 7
WP2FA\Admin\User::isUserLocked()
S
77 1 3
WP2FA\Authenticator\Authentication::delete_user_totp_key()
S
79 1 3
WP2FA\Admin\UserNotices::reset_nag()
S
76 1 4
WP2FA\Admin\UserListing::getColumnName()
S
80 1 3
WP2FA\Authenticator\Authentication::generate_key()
S
71 1 5
WP2FA\Admin\SettingsPage::select_method_setting()
S
81 1 3
WP2FA\Utils\UserUtils::get_all_user_ids_and_login_names()
S
64 1 10
WP2FA\Shortcodes\Shortcodes::register_2fa_shortcode_scripts()
S
70 1 5
WP2FA\Admin\SetupWizard::wp_2fa_step_welcome()
S
81 1 3
WP2FA\EmailTemplate::setEmailContentId()
S
81 1 3
WP2FA\Utils\AbstractMigration::storeUpdatedVersion()
S
79 1 3
WP2FA\Admin\SetupWizard::__construct()
S
98 1 1
WP2FA\Authenticator\BackupCodes::__construct()
S
79 1 3
WP2FA\Utils\Debugging::create_htaccess_file()
S
78 1 3
admin_styles()
S
69 1 8
WP2FA\Admin\Views\WizardSteps::getGenerateCodesLink()
S
73 1 4
enqueueSelect2Scripts()
S
75 1 4
WP2FA\Admin\SetupWizard::introduction_step()
S
82 1 3
WP2FA\Admin\User::getUser()
S
82 1 3
WP2FA\Admin\SetupWizard::network_admin_menus()
S
78 1 3
WP2FA\Utils\UserUtils::in_array_all()
S
78 1 3
WP2FA\Authenticator\Login::is_user_api_login_enabled()
S
78 1 3
WP2FA\Admin\SettingsPage::admin_deleted_2fa_notice()
S
67 1 10
WP2FA\Authenticator\Login::get_user_locked_error()
S
71 1 6
WP2FA\Admin\User::getUserStatus()
S
78 1 3
get_enqueue_contexts()
S
80 1 3
WP2FA\Admin\SettingsPage::excluded_network_sites()
S
82 1 3
WP2FA\Authenticator\Login::__construct()
S
91 1 2
WP2FA\Admin\UserProfile::__construct()
S
91 1 2
WP2FA\Authenticator\BackupCodes::delete_code()
S
68 1 7
WP2FA\Admin\Views\WizardSteps::getQRCode()
S
65 1 9
WP2FA\Admin\SetupWizard::introduction_step_save()
S
73 1 5
WP2FA\Admin\UserNotices::dismiss_nag()
S
78 1 4
WP2FA\Utils\UserUtils::get_all_user_ids()
S
68 1 7