...

roles; } function molms_redirect_user_to( $user, $redirect_to ) { $roles = $user->roles; $current_role = array_shift( $roles ); $redirectUrl = isset( $redirect_to ) && ! empty( $redirect_to ) ? $redirect_to : null; if ( $current_role == 'administrator' ) { $redirectUrl = empty( $redirectUrl ) ? admin_url() : $redirectUrl; } else { $redirectUrl = empty( $redirectUrl ) ? home_url() : $redirectUrl; } if ( molms_2f_Utility::get_index_value( 'GLOBALS', 'mo2f_is_ajax_request' ) ) { $redirect = array( 'redirect' => $redirectUrl, ); wp_send_json_success( $redirect ); } else { wp_safe_redirect( $redirectUrl ); } } // used in shortcode addon function molms_check_if_2fa_enabled_for_roles( $current_roles ) { if ( empty( $current_roles ) ) { return 0; } foreach ( $current_roles as $value ) { if ( get_site_option( 'mo2fa_' . $value ) ) { return 1; } } return 0; } function molms_register_profile( $email, $deviceKey, $mo2f_rba_status ) { if ( isset( $deviceKey ) && $deviceKey == 'true' ) { if ( $mo2f_rba_status['status'] == 'WAIT_FOR_INPUT' && $mo2f_rba_status['decision_flag'] ) { $rba_profile = new Molms_Miniorange_Rba_Attributes(); //register profile json_decode( $rba_profile->mo2f_register_rba_profile( $email, $mo2f_rba_status['sessionUuid'] ), true ); return true; } else { return false; } } return false; } function molms_collect_attributes( $email, $attributes ) { $mo2f_rba_status = array(); $mo2f_rba_status['decision_flag'] = false; $mo2f_rba_status['sessionUuid'] = ''; if ( get_site_option( 'mo2f_remember_device' ) ) { $rba_attributes = new Molms_Miniorange_Rba_Attributes(); //collect rba attributes $rba_response = json_decode( $rba_attributes->mo2f_collect_attributes( $email, $attributes ), true ); if ( json_last_error() == JSON_ERROR_NONE ) { //attributes are collected successfully if ( $rba_response['status'] == 'SUCCESS' ) { $sessionUuid = $rba_response['sessionUuid']; // evaluate the rba risk $rba_risk_response = json_decode( $rba_attributes->mo2f_evaluate_risk( $email, $sessionUuid ), true ); if ( json_last_error() == JSON_ERROR_NONE ) { if ( $rba_risk_response['status'] == 'SUCCESS' || $rba_risk_response['status'] == 'WAIT_FOR_INPUT' ) { $mo2f_rba_status['status'] = $rba_risk_response['status']; $mo2f_rba_status['sessionUuid'] = $sessionUuid; $mo2f_rba_status['decision_flag'] = true; } else { $mo2f_rba_status['status'] = $rba_risk_response['status']; $mo2f_rba_status['sessionUuid'] = $sessionUuid; } } else { $mo2f_rba_status['status'] = 'JSON_EVALUATE_ERROR'; $mo2f_rba_status['sessionUuid'] = $sessionUuid; } } else { $mo2f_rba_status['status'] = 'ATTR_NOT_COLLECTED'; } } else { $mo2f_rba_status['status'] = 'JSON_ATTR_NOT_COLLECTED'; } } else { $mo2f_rba_status['status'] = 'RBA_NOT_ENABLED'; } return $mo2f_rba_status; } function molms_get_user_2ndfactor( $user ) { global $molms_db_queries; $mo2f_user_email = $molms_db_queries->get_user_detail( 'mo2f_user_email', $user->ID ); $enduser = new Molms_Two_Factor_Setup(); $userinfo = json_decode( $enduser->mo2f_get_userinfo( $mo2f_user_email ), true ); if ( json_last_error() == JSON_ERROR_NONE ) { if ( $userinfo['status'] == 'ERROR' ) { $mo2f_second_factor = 'NONE'; } elseif ( $userinfo['status'] == 'SUCCESS' ) { $mo2f_second_factor = $userinfo['authType']; } elseif ( $userinfo['status'] == 'FAILED' ) { $mo2f_second_factor = 'USER_NOT_FOUND'; } else { $mo2f_second_factor = 'NONE'; } } else { $mo2f_second_factor = 'NONE'; } return $mo2f_second_factor; } function molms_get_forgotphone_form( $login_status, $login_message, $redirect_to, $session_id_encrypt ) { $mo2f_forgotphone_enabled = molms_Utility::get_mo2f_db_option( 'mo2f_enable_forgotphone', 'get_site_option' ); $mo2f_email_as_backup_enabled = get_site_option( 'mo2f_enable_forgotphone_email' ); $mo2f_kba_as_backup_enabled = get_site_option( 'mo2f_enable_forgotphone_kba' ); ?>
get_user_detail( 'mo2f_SecurityQuestions_config_status', $id ); $mo2f_is_new_customer = molms_Utility::get_mo2f_db_option( 'mo2f_is_NC', 'get_site_option' ); $mo2f_EV_txid = get_user_meta( $id, 'mo2f_EV_txid', true ); if ( ! MOLMS_IS_ONPREM ) { $mo2f_EV_txid = sanitize_text_field( $_SESSION['mo2f_transactionId'] ); } ?>
logo