$user->hasTfa() method

Does user have two-factor authentication (Tfa) enabled? (and what type?)

  • Returns boolean false if not enabled.
  • Returns string with Tfa module name (string) if enabled.
  • When $getInstance argument is true, returns Tfa module instance rather than module name.

The benefit of using this method is that it can identify if Tfa is enabled without fully initializing a Tfa module that would attach hooks, etc. So when you only need to know if Tfa is enabled for a user, this method is more efficient than accessing $user->tfa_type.

When using $getInstance to return module instance, note that the module instance might not be initialized (hooks not added, etc.). To retrieve an initialized instance, you can get it from $user->tfa_type rather than calling this method.

Available since version 3.0.162.

Usage

// basic usage
$bool = $user->hasTfa();

// usage with all arguments
$bool = $user->hasTfa(bool $getInstance = false);

Arguments

NameType(s)Description
getInstance (optional)bool

Get Tfa module instance when available? (default=false)

Return value

bool string Tfa


$user methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #519
    In the 519th issue of ProcessWire Weekly we'll check out a new third party module called RockForms, introduce the latest ProcessWire core updates, and more. Read on!
    Weekly.pw / 20 April 2024
  • ProFields Table Field with Actions support
    This week we have some updates for the ProFields table field (FieldtypeTable). These updates are primarily focused on adding new tools for the editor to facilitate input and management of content in a table field.
    Blog / 12 April 2024
  • Subscribe to weekly ProcessWire news

“We chose ProcessWire because of its excellent architecture, modular extensibility and the internal API. The CMS offers the necessary flexibility and performance for such a complex website like superbude.de. ProcessWire offers options that are only available for larger systems, such as Drupal, and allows a much slimmer development process.” —xport communication GmbH