Changeset 3341724
- Timestamp:
- 08/08/2025 03:01:05 PM (5 months ago)
- Location:
- two-factor-authentication
- Files:
-
- 26 edited
- 1 copied
-
tags/1.15.5 (copied) (copied from two-factor-authentication/trunk)
-
tags/1.15.5/languages/two-factor-authentication.pot (modified) (11 diffs)
-
tags/1.15.5/readme.txt (modified) (5 diffs)
-
tags/1.15.5/simba-tfa/includes/login-form-integrations.php (modified) (1 diff)
-
tags/1.15.5/simba-tfa/includes/tfa-encryption-muplugin.php (modified) (3 diffs)
-
tags/1.15.5/simba-tfa/includes/tfa.js (modified) (7 diffs)
-
tags/1.15.5/simba-tfa/includes/tfa_frontend.php (modified) (2 diffs)
-
tags/1.15.5/simba-tfa/providers/totp/loader.php (modified) (1 diff)
-
tags/1.15.5/simba-tfa/simba-tfa.php (modified) (4 diffs)
-
tags/1.15.5/simba-tfa/templates/admin-settings.php (modified) (14 diffs)
-
tags/1.15.5/simba-tfa/templates/settings-intro-notices.php (modified) (3 diffs)
-
tags/1.15.5/simba-tfa/templates/shortcode-tfa-user-settings.php (modified) (2 diffs)
-
tags/1.15.5/simba-tfa/templates/user-settings.php (modified) (3 diffs)
-
tags/1.15.5/two-factor-login.php (modified) (7 diffs)
-
trunk/languages/two-factor-authentication.pot (modified) (11 diffs)
-
trunk/readme.txt (modified) (5 diffs)
-
trunk/simba-tfa/includes/login-form-integrations.php (modified) (1 diff)
-
trunk/simba-tfa/includes/tfa-encryption-muplugin.php (modified) (3 diffs)
-
trunk/simba-tfa/includes/tfa.js (modified) (7 diffs)
-
trunk/simba-tfa/includes/tfa_frontend.php (modified) (2 diffs)
-
trunk/simba-tfa/providers/totp/loader.php (modified) (1 diff)
-
trunk/simba-tfa/simba-tfa.php (modified) (4 diffs)
-
trunk/simba-tfa/templates/admin-settings.php (modified) (14 diffs)
-
trunk/simba-tfa/templates/settings-intro-notices.php (modified) (3 diffs)
-
trunk/simba-tfa/templates/shortcode-tfa-user-settings.php (modified) (2 diffs)
-
trunk/simba-tfa/templates/user-settings.php (modified) (3 diffs)
-
trunk/two-factor-login.php (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
two-factor-authentication/tags/1.15.5/languages/two-factor-authentication.pot
r3196753 r3341724 1 # Copyright (C) 202 4two-factor-authentication1 # Copyright (C) 2025 two-factor-authentication 2 2 # This file is distributed under the same license as the two-factor-authentication package. 3 3 msgid "" … … 9 9 "Language-Team: Team Updraft <[email protected]>\n" 10 10 "Last-Translator: John Doe <[email protected]>\n" 11 "POT-Creation-Date: 202 4-11-25 17:39+0000\n"11 "POT-Creation-Date: 2025-08-08 09:23+0000\n" 12 12 "Report-Msgid-Bugs-To: https://wordpress.org/plugins/two-factor-authentication/\n" 13 13 "X-Poedit-Basepath: ..\n" … … 42 42 msgstr "" 43 43 44 #: dist/two-factor-login.php:190, dist/simba-tfa/templates/admin-settings.php:18 344 #: dist/two-factor-login.php:190, dist/simba-tfa/templates/admin-settings.php:185 45 45 msgid "Premium version" 46 46 msgstr "" … … 70 70 msgstr "" 71 71 72 #: dist/two-factor-login.php:237 72 #. translators: 1. PHP required 2. PHP version. 73 #: dist/two-factor-login.php:238 73 74 msgid "Higher PHP version required" 74 75 msgstr "" 75 76 76 #: dist/two-factor-login.php:23 777 msgid "The Two Factor Authentication plugin requires PHP version % s or higher - your current version is only %s."78 msgstr "" 79 80 #: dist/two-factor-login.php:24 477 #: dist/two-factor-login.php:238 78 msgid "The Two Factor Authentication plugin requires PHP version %1$s or higher - your current version is only %2$s." 79 msgstr "" 80 81 #: dist/two-factor-login.php:245 81 82 msgid "PHP OpenSSL or mcrypt module required" 82 83 msgstr "" 83 84 84 #: dist/two-factor-login.php:24 485 #: dist/two-factor-login.php:245 85 86 msgid "The Two Factor Authentication plugin requires either the PHP openssl (preferred) or mcrypt module to be installed. Please ask your web hosting company to install one of them." 86 87 msgstr "" 87 88 88 #: dist/two-factor-login.php:25 189 #: dist/two-factor-login.php:252 89 90 msgid "Two Factor Authentication encryption key not found" 90 91 msgstr "" 91 92 92 #: dist/two-factor-login.php:269 93 #: dist/two-factor-login.php:252, dist/simba-tfa/simba-tfa.php:1064 94 msgid "The \"encrypt secrets\" feature is currently enabled, but no encryption key has been found (set via the SIMBA_TFA_DB_ENCRYPTION_KEY constant)." 95 msgstr "" 96 97 #: dist/two-factor-login.php:252, dist/simba-tfa/simba-tfa.php:1064 98 msgid "This indicates that either setup failed, or your WordPress installation has been corrupted." 99 msgstr "" 100 101 #: dist/two-factor-login.php:252, dist/simba-tfa/simba-tfa.php:1064 102 msgid "Go here for the FAQs, which explain how a website owner can de-activate the plugin without needing to login." 103 msgstr "" 104 105 #. translators: %s: plugin version. 106 #: dist/two-factor-login.php:271 93 107 msgid "Two Factor Authentication (Version: %s) - Admin Settings" 94 108 msgstr "" … … 114 128 msgstr "" 115 129 116 #: dist/simba-tfa/simba-tfa.php:1064 117 msgid "The \"encrypt secrets\" feature is currently enabled, but no encryption key has been found (set via the SIMBA_TFA_DB_ENCRYPTION_KEY constant)." 118 msgstr "" 119 120 #: dist/simba-tfa/simba-tfa.php:1064 121 msgid "This indicates that either setup failed, or your WordPress installation has been corrupted." 122 msgstr "" 123 124 #: dist/simba-tfa/simba-tfa.php:1064 125 msgid "Go here for the FAQs, which explain how a website owner can de-activate the plugin without needing to login." 126 msgstr "" 127 128 #: dist/simba-tfa/simba-tfa.php:1065, dist/simba-tfa/simba-tfa.php:1470, dist/simba-tfa/simba-tfa.php:1507, dist/simba-tfa/simba-tfa.php:1521, dist/simba-tfa/simba-tfa.php:1664, dist/simba-tfa/includes/login-form-integrations.php:124 130 #: dist/simba-tfa/simba-tfa.php:1065, dist/simba-tfa/simba-tfa.php:1470, dist/simba-tfa/simba-tfa.php:1507, dist/simba-tfa/simba-tfa.php:1521, dist/simba-tfa/simba-tfa.php:1664, dist/simba-tfa/includes/login-form-integrations.php:128 129 131 msgid "Error:" 130 132 msgstr "" 131 133 132 #: dist/simba-tfa/simba-tfa.php:1065, dist/simba-tfa/includes/login-form-integrations.php:12 4134 #: dist/simba-tfa/simba-tfa.php:1065, dist/simba-tfa/includes/login-form-integrations.php:128 133 135 msgid "The one-time password (TFA code) you entered was incorrect." 134 136 msgstr "" … … 240 242 msgstr "" 241 243 242 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:72 244 #. translators: %s: Multi user plugin directory 245 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:73 243 246 msgid "Encrypt secrets feature not enabled: no directory has been set." 244 247 msgstr "" 245 248 246 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:7 2249 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:73 247 250 msgid "Please check your %s constant is valid" 248 251 msgstr "" 249 252 250 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:80 253 #. translators: %s: Multi user plugin directory 254 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:82 251 255 msgid "The encrypt secrets feature was not enabled: your mu-plugins directory could not be automatically created; therefore, please use your web hosting file manager or FTP to manually create this folder and then try again: %s" 252 256 msgstr "" 253 257 254 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:88 258 #. translators: %s: File path. 259 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:91 255 260 msgid "The encrypt secrets feature was not enabled: attempting to write the mu-plugin file contents failed; therefore, please create the file manually." 256 261 msgstr "" 257 262 258 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:88 263 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:91 264 msgid "Add the following code to the file %s" 265 msgstr "" 266 267 #: dist/simba-tfa/includes/tfa-encryption-muplugin.php:91 259 268 msgid "Once you have added the above code then press the button to turn on encryption again" 260 269 msgstr "" 261 270 262 #: dist/simba-tfa/includes/tfa_frontend.php:7 3271 #: dist/simba-tfa/includes/tfa_frontend.php:75 263 272 msgid "The TFA code you entered was incorrect." 264 273 msgstr "" 265 274 266 #: dist/simba-tfa/includes/tfa_frontend.php:6 5275 #: dist/simba-tfa/includes/tfa_frontend.php:67 267 276 msgid "To enable TFA, you must enter the current code." 268 277 msgstr "" 269 278 270 #: dist/simba-tfa/includes/tfa_frontend.php:9 7279 #: dist/simba-tfa/includes/tfa_frontend.php:99 271 280 msgid "a time based" 272 281 msgstr "" 273 282 274 #: dist/simba-tfa/includes/tfa_frontend.php:9 7283 #: dist/simba-tfa/includes/tfa_frontend.php:99 275 284 msgid "an event based" 276 285 msgstr "" 277 286 278 #: dist/simba-tfa/includes/tfa_frontend.php:12 7287 #: dist/simba-tfa/includes/tfa_frontend.php:129 279 288 msgid "No emergency codes left. Sorry." 280 289 msgstr "" 281 290 282 #: dist/simba-tfa/includes/tfa_frontend.php:13 6, dist/simba-tfa/includes/tfa_frontend.php:150, dist/simba-tfa/premium/shortcodes.php:141291 #: dist/simba-tfa/includes/tfa_frontend.php:138, dist/simba-tfa/includes/tfa_frontend.php:152, dist/simba-tfa/premium/shortcodes.php:141 283 292 msgid "Save Settings" 284 293 msgstr "" 285 294 286 #: dist/simba-tfa/includes/tfa_frontend.php:18 0295 #: dist/simba-tfa/includes/tfa_frontend.php:182 287 296 msgid "You have unsaved settings." 288 297 msgstr "" 289 298 290 #: dist/simba-tfa/includes/tfa_frontend.php:18 1299 #: dist/simba-tfa/includes/tfa_frontend.php:183 291 300 msgid "Saving..." 292 301 msgstr "" 293 302 294 #: dist/simba-tfa/includes/tfa_frontend.php:18 5, dist/simba-tfa/providers/totp/loader.php:199303 #: dist/simba-tfa/includes/tfa_frontend.php:187, dist/simba-tfa/providers/totp/loader.php:199 295 304 msgid "Response:" 296 305 msgstr "" … … 337 346 338 347 #: dist/simba-tfa/premium/emergency-codes.php:38 339 msgid "You rmust now go to the Two Factor Authentication settings to generate some new emergency codes if you wish to use any emergency codes in future."348 msgid "You must now go to the Two Factor Authentication settings to generate some new emergency codes if you wish to use any emergency codes in future." 340 349 msgstr "" 341 350 … … 344 353 msgstr "" 345 354 346 #: dist/simba-tfa/premium/emergency-codes.php:46 355 #. translators: %s: User name. 356 #: dist/simba-tfa/premium/emergency-codes.php:47 347 357 msgid "An emergency code was used to login (username: %s) on this website: " 348 358 msgstr "" 349 359 350 #: dist/simba-tfa/premium/emergency-codes.php:47 360 #. translators: %s: Remaining codes. 361 #: dist/simba-tfa/premium/emergency-codes.php:49 351 362 msgid "You now have %s emergency code(s) remaining." 352 363 msgstr "" 353 364 354 #: dist/simba-tfa/premium/emergency-codes.php:12 2365 #: dist/simba-tfa/premium/emergency-codes.php:124 355 366 msgid "You have three emergency codes that can be used. Keep them in a safe place; if you lose your authentication device, then you can use them to log in." 356 367 msgstr "" 357 368 358 #: dist/simba-tfa/premium/emergency-codes.php:12 2369 #: dist/simba-tfa/premium/emergency-codes.php:124 359 370 msgid "These can only be used once each." 360 371 msgstr "" 361 372 362 #: dist/simba-tfa/premium/emergency-codes.php:12 4373 #: dist/simba-tfa/premium/emergency-codes.php:126 363 374 msgid "Your emergency codes are:" 364 375 msgstr "" … … 432 443 msgstr "" 433 444 445 #. translators: 1. Private key. 2. Private key base 32. 434 446 #: dist/simba-tfa/premium/shortcodes.php:182 435 msgid "Private key: %s (base 32: %s)" 436 msgstr "" 437 438 #: dist/simba-tfa/premium/trusted-devices.php:37 447 msgid "Private key: %1$s (base 32: %2$s)" 448 msgstr "" 449 450 #. translators: s%: HTML 451 #: dist/simba-tfa/premium/trusted-devices.php:38 439 452 msgid "When a device is trusted, don't require a two-factor code for another %s days" 440 453 msgstr "" 441 454 442 #: dist/simba-tfa/premium/trusted-devices.php:6 3, dist/simba-tfa/templates/admin-settings.php:70, dist/simba-tfa/templates/admin-settings.php:191455 #: dist/simba-tfa/premium/trusted-devices.php:64, dist/simba-tfa/templates/admin-settings.php:71, dist/simba-tfa/templates/admin-settings.php:193 443 456 msgid "Trusted devices" 444 457 msgstr "" … … 464 477 msgstr "" 465 478 466 #: dist/simba-tfa/templates/admin-settings.php:2 3479 #: dist/simba-tfa/templates/admin-settings.php:24 467 480 msgid "Two Factor Authentication currently disabled" 468 481 msgstr "" 469 482 470 #: dist/simba-tfa/templates/admin-settings.php:2 5483 #: dist/simba-tfa/templates/admin-settings.php:26 471 484 msgid "Two factor authentication is currently disabled via the TWO_FACTOR_DISABLE constant (which is mostly likely to be defined in your wp-config.php)" 472 485 msgstr "" 473 486 474 #: dist/simba-tfa/templates/admin-settings.php:3 7487 #: dist/simba-tfa/templates/admin-settings.php:38 475 488 msgid "N.B. These two-factor settings apply to your entire WordPress network. (i.e. They are not localised to one particular site)." 476 489 msgstr "" 477 490 478 #: dist/simba-tfa/templates/admin-settings.php: 49491 #: dist/simba-tfa/templates/admin-settings.php:50 479 492 msgid "Make two factor authentication available" 480 493 msgstr "" 481 494 482 #: dist/simba-tfa/templates/admin-settings.php:5 0495 #: dist/simba-tfa/templates/admin-settings.php:51 483 496 msgid "Choose which user roles will have two factor authentication available." 484 497 msgstr "" 485 498 486 #: dist/simba-tfa/templates/admin-settings.php:6 0499 #: dist/simba-tfa/templates/admin-settings.php:61 487 500 msgid "Make two factor authentication compulsory" 488 501 msgstr "" 489 502 490 #: dist/simba-tfa/templates/admin-settings.php:6 4503 #: dist/simba-tfa/templates/admin-settings.php:65 491 504 msgid "Requiring users to use two-factor authentication is a feature of the Premium version of this plugin." 492 505 msgstr "" 493 506 494 #: dist/simba-tfa/templates/admin-settings.php:7 4507 #: dist/simba-tfa/templates/admin-settings.php:75 495 508 msgid "Choose which user roles are permitted to mark devices they login on as trusted. This feature requires browser cookies and an https (i.e. SSL) connection to the website to work." 496 509 msgstr "" 497 510 498 #: dist/simba-tfa/templates/admin-settings.php:7 7511 #: dist/simba-tfa/templates/admin-settings.php:78 499 512 msgid "Allowing users to mark a device as trusted so that a two-factor code is only needed once in a specified number of days (instead of every login) is a feature of the Premium version of this plugin." 500 513 msgstr "" 501 514 502 #: dist/simba-tfa/templates/admin-settings.php:9 0515 #: dist/simba-tfa/templates/admin-settings.php:92 503 516 msgid "XMLRPC requests" 504 517 msgstr "" 505 518 506 #: dist/simba-tfa/templates/admin-settings.php:9 4519 #: dist/simba-tfa/templates/admin-settings.php:96 507 520 msgid "XMLRPC is a feature within WordPress allowing other computers to talk to your WordPress install. For example, it could be used by an app on your tablet that allows you to blog directly from the app (instead of needing the WordPress dashboard)." 508 521 msgstr "" 509 522 510 #: dist/simba-tfa/templates/admin-settings.php:9 7523 #: dist/simba-tfa/templates/admin-settings.php:99 511 524 msgid "Unfortunately, XMLRPC also provides a way for attackers to perform actions on your WordPress site, using only a password (i.e. without a two-factor password). More unfortunately, authors of legitimate programmes using XMLRPC have not yet added two-factor support to their code." 512 525 msgstr "" 513 526 514 #: dist/simba-tfa/templates/admin-settings.php:10 0527 #: dist/simba-tfa/templates/admin-settings.php:102 515 528 msgid "i.e. XMLRPC requests coming in to WordPress (whether from a legitimate app, or from an attacker) can only be verified using the password - not with a two-factor code. As a result, there not be an ideal option to pick below. You may have to choose between the convenience of using your apps, or the security of two factor authentication." 516 529 msgstr "" 517 530 518 #: dist/simba-tfa/templates/admin-settings.php:11 5531 #: dist/simba-tfa/templates/admin-settings.php:117 519 532 msgid "Default algorithm for codes generated by user devices" 520 533 msgstr "" 521 534 522 #: dist/simba-tfa/templates/admin-settings.php:11 6535 #: dist/simba-tfa/templates/admin-settings.php:118 523 536 msgid "Your users can change this in their own settings if they want." 524 537 msgstr "" 525 538 526 #: dist/simba-tfa/templates/admin-settings.php:13 6, dist/simba-tfa/templates/admin-settings.php:128539 #: dist/simba-tfa/templates/admin-settings.php:138, dist/simba-tfa/templates/admin-settings.php:130 527 540 msgid "Encrypt keys in database" 528 541 msgstr "" 529 542 530 #: dist/simba-tfa/templates/admin-settings.php:1 38543 #: dist/simba-tfa/templates/admin-settings.php:140 531 544 msgid "Once turned on, this feature cannot be turned off (but there is no technical reason why this should discourage you from using it)." 532 545 msgstr "" 533 546 534 #: dist/simba-tfa/templates/admin-settings.php:14 1547 #: dist/simba-tfa/templates/admin-settings.php:143 535 548 msgid "This feature will encrypt all two factor authentication secret keys stored in the database, using an encryption key that is stored on your disk." 536 549 msgstr "" 537 550 538 #: dist/simba-tfa/templates/admin-settings.php:14 2551 #: dist/simba-tfa/templates/admin-settings.php:144 539 552 msgid "This means that in the event your database is compromised there's an additional layer of security (the attacker would need to compromise your on-disk data as well) protecting your two factor authentication secret keys." 540 553 msgstr "" 541 554 542 #: dist/simba-tfa/templates/admin-settings.php:14 4555 #: dist/simba-tfa/templates/admin-settings.php:146 543 556 msgid "Enable encryption of database keys" 544 557 msgstr "" 545 558 546 #: dist/simba-tfa/templates/admin-settings.php:13 0559 #: dist/simba-tfa/templates/admin-settings.php:132 547 560 msgid "Encryption of keys in the database has been enabled." 548 561 msgstr "" 549 562 550 #: dist/simba-tfa/templates/admin-settings.php:13 0563 #: dist/simba-tfa/templates/admin-settings.php:132 551 564 msgid "This feature cannot be turned off." 552 565 msgstr "" 553 566 554 #: dist/simba-tfa/templates/admin-settings.php:15 6567 #: dist/simba-tfa/templates/admin-settings.php:158 555 568 msgid "WooCommerce integration" 556 569 msgstr "" 557 570 558 #: dist/simba-tfa/templates/admin-settings.php:1 58571 #: dist/simba-tfa/templates/admin-settings.php:160 559 572 msgid "The Premium version of this plugin allows you to add a configuration tab for users in the WooCommerce \"My account\" area, and anti-bot protection on the WooCommerce login form." 560 573 msgstr "" 561 574 562 #: dist/simba-tfa/templates/admin-settings.php:16 7575 #: dist/simba-tfa/templates/admin-settings.php:169 563 576 msgid "Users' settings" 564 577 msgstr "" 565 578 566 #: dist/simba-tfa/templates/admin-settings.php:17 3579 #: dist/simba-tfa/templates/admin-settings.php:175 567 580 msgid "The Premium version of this plugin allows you to see and reset the TFA settings of other users." 568 581 msgstr "" 569 582 570 #: dist/simba-tfa/templates/admin-settings.php:17 5583 #: dist/simba-tfa/templates/admin-settings.php:177 571 584 msgid "Another way to do that is by using a user-switching plugin like this one." 572 585 msgstr "" 573 586 574 #: dist/simba-tfa/templates/admin-settings.php:18 5587 #: dist/simba-tfa/templates/admin-settings.php:187 575 588 msgid "If you want to say 'thank you' or help this plugin's development, or get extra features, then please take a look at the premium version of this plugin." 576 589 msgstr "" 577 590 578 #: dist/simba-tfa/templates/admin-settings.php:18 5591 #: dist/simba-tfa/templates/admin-settings.php:187 579 592 msgid "It comes with these extra features:" 580 593 msgstr "" 581 594 582 #: dist/simba-tfa/templates/admin-settings.php:1 89, dist/simba-tfa/providers/totp/loader.php:446595 #: dist/simba-tfa/templates/admin-settings.php:191, dist/simba-tfa/providers/totp/loader.php:446 583 596 msgid "Emergency codes" 584 597 msgstr "" 585 598 586 #: dist/simba-tfa/templates/admin-settings.php:1 89599 #: dist/simba-tfa/templates/admin-settings.php:191 587 600 msgid "provide your users with one-time codes to use in case they lose their device." 588 601 msgstr "" 589 602 590 #: dist/simba-tfa/templates/admin-settings.php:19 0603 #: dist/simba-tfa/templates/admin-settings.php:192 591 604 msgid "Make TFA compulsory" 592 605 msgstr "" 593 606 594 #: dist/simba-tfa/templates/admin-settings.php:19 0607 #: dist/simba-tfa/templates/admin-settings.php:192 595 608 msgid "require your users to set up TFA to be able to log in, after an optional grace period." 596 609 msgstr "" 597 610 598 #: dist/simba-tfa/templates/admin-settings.php:19 1611 #: dist/simba-tfa/templates/admin-settings.php:193 599 612 msgid "allow privileged (or all) users to mark a device as trusted and thereby only needing to supply a TFA code upon login every so-many days (e.g. every 30 days) instead of on each login." 600 613 msgstr "" 601 614 602 #: dist/simba-tfa/templates/admin-settings.php:19 2615 #: dist/simba-tfa/templates/admin-settings.php:194 603 616 msgid "Manage all users centrally" 604 617 msgstr "" 605 618 606 #: dist/simba-tfa/templates/admin-settings.php:19 2619 #: dist/simba-tfa/templates/admin-settings.php:194 607 620 msgid "enable, disable or see TFA codes for all your users from one central location." 608 621 msgstr "" 609 622 610 #: dist/simba-tfa/templates/admin-settings.php:19 3623 #: dist/simba-tfa/templates/admin-settings.php:195 611 624 msgid "More shortcodes" 612 625 msgstr "" 613 626 614 #: dist/simba-tfa/templates/admin-settings.php:19 3627 #: dist/simba-tfa/templates/admin-settings.php:195 615 628 msgid "flexible shortcodes allowing you to design your front-end settings page for your users exactly as you wish." 616 629 msgstr "" 617 630 618 #: dist/simba-tfa/templates/admin-settings.php:19 4631 #: dist/simba-tfa/templates/admin-settings.php:196 619 632 msgid "More WooCommerce features" 620 633 msgstr "" 621 634 622 #: dist/simba-tfa/templates/admin-settings.php:19 4635 #: dist/simba-tfa/templates/admin-settings.php:196 623 636 msgid "automatically add TFA settings in the WooCommerce account settings, and WooCommerce login form bot protection." 624 637 msgstr "" 625 638 626 #: dist/simba-tfa/templates/admin-settings.php:19 5639 #: dist/simba-tfa/templates/admin-settings.php:197 627 640 msgid "Elementor support" 628 641 msgstr "" 629 642 630 #: dist/simba-tfa/templates/admin-settings.php:19 5643 #: dist/simba-tfa/templates/admin-settings.php:197 631 644 msgid "adds support for Elementor login forms." 632 645 msgstr "" 633 646 634 #: dist/simba-tfa/templates/admin-settings.php:19 6647 #: dist/simba-tfa/templates/admin-settings.php:198 635 648 msgid "Any-form support" 636 649 msgstr "" 637 650 638 #: dist/simba-tfa/templates/admin-settings.php:19 6651 #: dist/simba-tfa/templates/admin-settings.php:198 639 652 msgid "adds support for any login form from any plugin via appending your TFA code onto the end of your password." 640 653 msgstr "" 641 654 642 #: dist/simba-tfa/templates/admin-settings.php:19 7655 #: dist/simba-tfa/templates/admin-settings.php:199 643 656 msgid "Personal support" 644 657 msgstr "" 645 658 646 #: dist/simba-tfa/templates/admin-settings.php:19 7659 #: dist/simba-tfa/templates/admin-settings.php:199 647 660 msgid "access to our personal support desk for 12 months." 648 661 msgstr "" 649 662 650 #: dist/simba-tfa/templates/admin-settings.php:20 4663 #: dist/simba-tfa/templates/admin-settings.php:206 651 664 msgid "Translations" 652 665 msgstr "" 653 666 654 #: dist/simba-tfa/templates/admin-settings.php:206 667 #. translators: %s: Plugin translation URL. 668 #: dist/simba-tfa/templates/admin-settings.php:209 655 669 msgid "If you want to translate this plugin, please go to %s" 656 670 msgstr "" 657 671 658 #: dist/simba-tfa/templates/admin-settings.php:20 6672 #: dist/simba-tfa/templates/admin-settings.php:209 659 673 msgid "the wordpress.org translation website." 660 674 msgstr "" 661 675 662 #: dist/simba-tfa/templates/admin-settings.php:20 6676 #: dist/simba-tfa/templates/admin-settings.php:209 663 677 msgid "Don't send us the translation file directly - plugin authors do not have access to the wordpress.org translation system (local language teams do)." 664 678 msgstr "" … … 716 730 msgstr "" 717 731 718 #: dist/simba-tfa/templates/user-settings.php:41 719 msgid "N.B. Getting your TFA app/device to generate the correct code depends upon a) you first setting it up by entering or scanning the code below into it, and b) upon your web-server and your TFA app/device agreeing upon the UTC time (within a minute or so). The current UTC time according to the server when this page loaded: %s, and in the time-zone you have configured in your WordPress settings: %s" 732 #. translators: 1. UTC date. 2. Now date. 733 #: dist/simba-tfa/templates/user-settings.php:42 734 msgid "N.B. Getting your TFA app/device to generate the correct code depends upon a) you first setting it up by entering or scanning the code below into it, and b) upon your web-server and your TFA app/device agreeing upon the UTC time (within a minute or so). The current UTC time according to the server when this page loaded: %1$s, and in the time-zone you have configured in your WordPress settings: %2$s" 720 735 msgstr "" 721 736 -
two-factor-authentication/tags/1.15.5/readme.txt
r3196753 r3341724 2 2 Tags: two factor, 2fa, tfa, two factor auth, google authenticator 3 3 Requires at least: 3.4 4 Tested up to: 6. 75 Stable tag: 1.1 4.274 Tested up to: 6.8 5 Stable tag: 1.15.5 6 6 Requires PHP: 5.6 7 7 Author: DavidAnderson … … 36 36 * Includes support for Elementor Pro login forms (Premium version) 37 37 * Includes support for bbPress login forms (Premium version) 38 * Includes support for RegistrationMagic login forms (Premium version) 38 39 * Includes support for login forms from the Gravity Forms User Registration add-on (Premium version) 40 * Includes support for login forms (shortcode forms only) from Paid Memberships Pro (Premium version) 39 41 * Includes support for any and every third-party login form (Premium version) without any further coding needed via appending your TFA code to the end of your password 40 42 * Does not mention or request second factor until the user has been identified as one with TFA enabled (i.e. nothing is shown to users who do not have it enabled) … … 71 73 4. Find site-wide settings in Settings -> Two Factor Authentication ; find your own user settings in the top-level menu entry "Two Factor Auth". 72 74 73 If you want to add a section to the front-end of your site where users can configure their two-factor authentication settings, use this shortcode: [twofactor_user_settings] 75 If you want to add a section to the front-end of your site where users can configure their two-factor authentication settings, use this shortcode: [twofactor_user_settings] . (If you set the attribute show_algorithm_selector to "yes" then it will include an 'advanced' settings section allowing the HOTP algorithm to be chosen and not only the default TOTP algorithm, but few people will want this). 74 76 75 77 == Frequently Asked Questions == … … 162 164 163 165 == Changelog == 166 167 = 1.15.5 - 28/Jun/2025 = 168 169 * FIX: Function WP_Block_Type_Registry::register was called incorrectly 170 * FIX: Fix regression in 1.15.1 which could result in displaying settings incorrectly, with checkboxes hidden 171 * FEATURE: Add support for RegistrationMagic login forms 172 173 = 1.15.2 - 25/Apr/2025 = 174 175 * TWEAK: Fix regression in 1.15.1 in parsing of multisite capabilities 176 177 = 1.15.1 - 12/Apr/2025 = 178 179 * TWEAK: Replace use of maybe_unserialize() 180 * TWEAK: Add support for shortcode-based login forms from Paid Memberships Pro (Premium version) 181 182 = 1.15.0 - 13/Dec/2024 = 183 184 * TWEAK: The 'twofactor_user_settings' shortcode will now not include the "advanced" settings section (with a selector for the TOTP or HOTP algorithm) in the settings output. You can revert to the previous behaviour by adding the attribute show_algorithm_selector="yes" to the shortcode (e.g. [twofactor_user_settings show_algorithm_selector="yes"] ). 164 185 165 186 = 1.14.27 - 25/Nov/2024 = … … 889 910 890 911 == Upgrade Notice == 891 * 1.1 4.27 : Fix a regression in 1.14.26, and manage a database option more efficiently. A recommended update for all.912 * 1.15.5 : Support RegistrationMagic. Fix regression in 1.15.1 in display of options. A recommended update for all. -
two-factor-authentication/tags/1.15.5/simba-tfa/includes/login-form-integrations.php
r3107617 r3341724 111 111 112 112 $params = array( 113 'log' => stripslashes($_POST['affwp_user_login']), 114 'caller'=> $_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['REQUEST_URI'], 115 'two_factor_code' => isset($_POST['two_factor_code']) ? stripslashes((string) $_POST['two_factor_code']) : '', 113 // phpcs:ignore WordPress.Security.NonceVerification -- No nonce. 114 'log' => isset($_POST['affwp_user_login']) ? sanitize_user(wp_unslash($_POST['affwp_user_login'])): '', 115 116 $request_uri = isset($_SERVER['REQUEST_URI']) ? sanitize_text_field(wp_unslash($_SERVER['REQUEST_URI'])) : '', 117 'caller'=> isset($_SERVER['PHP_SELF']) ? sanitize_text_field(wp_unslash($_SERVER['PHP_SELF'])) : $request_uri, 118 // phpcs:ignore WordPress.Security.NonceVerification -- No nonce. 119 'two_factor_code' => isset($_POST['two_factor_code']) ? sanitize_text_field(wp_unslash((string) $_POST['two_factor_code'])) : '', 116 120 ); 117 121 $code_ok = $this->tfa->authorise_user_from_login($params, true); -
two-factor-authentication/tags/1.15.5/simba-tfa/includes/tfa-encryption-muplugin.php
r2909348 r3341724 70 70 return new WP_Error( 71 71 'file_no_directory', 72 /* translators: %s: Multi user plugin directory */ 72 73 __('Encrypt secrets feature not enabled: no directory has been set.', 'two-factor-authentication') . ' ' . sprintf(__('Please check your %s constant is valid', 'two-factor-authentication'), 'WPMU_PLUGIN_DIR'), 73 74 $this->file_path … … 78 79 return new WP_Error( 79 80 'file_no_directory_created', 81 /* translators: %s: Multi user plugin directory */ 80 82 sprintf(__('The encrypt secrets feature was not enabled: your mu-plugins directory could not be automatically created; therefore, please use your web hosting file manager or FTP to manually create this folder and then try again: %s', 'two-factor-authentication'), $this->get_mu_plugin_dir()), 81 83 $info['dirname'] … … 86 88 return new WP_Error( 87 89 'file_no_contents', 88 __('The encrypt secrets feature was not enabled: attempting to write the mu-plugin file contents failed; therefore, please create the file manually.', 'two-factor-authentication') . "<br><br>" . sprintf(__('Add the following code to the file %s'), $this->get_file_path()) . "\n" . '<br><br><code>' . nl2br(esc_html($this->get_contents())) . '</code><br><br>' . __('Once you have added the above code then press the button to turn on encryption again', 'two-factor-authentication'), 90 /* translators: %s: File path. */ 91 __('The encrypt secrets feature was not enabled: attempting to write the mu-plugin file contents failed; therefore, please create the file manually.', 'two-factor-authentication') . "<br><br>" . sprintf(__('Add the following code to the file %s', 'two-factor-authentication'), $this->get_file_path()) . "\n" . '<br><br><code>' . nl2br(esc_html($this->get_contents())) . '</code><br><br>' . __('Once you have added the above code then press the button to turn on encryption again', 'two-factor-authentication'), 89 92 $info['dirname'] 90 93 ); -
two-factor-authentication/tags/1.15.5/simba-tfa/includes/tfa.js
r3107617 r3341724 9 9 */ 10 10 function get_username_identifiers() { 11 // 'username' is used by WooCommerce 11 // 'username' is used by WooCommerce and RegistrationMagic 12 12 return '[name="log"], [name="username"], #user_login, #affwp-login-user-login, #affwp-user-login, #gform_fields_login input[type="text"], .um-field-username input[type="text"]'; 13 13 } … … 163 163 var form_is_ultimate_member = ($(form).find('.um-row').length > 0) ? true : false; 164 164 165 // This is used just for applying styling if .js-login-form class exists inside form 166 var form_is_login_form = ($(form).find('.js-login-form').length > 0) ? true : false; 167 165 168 // Gravity Forms won't submit if the elements are hidden 166 169 var form_retain_existing_elements = form_is_gravity_forms ? true : false; … … 177 180 // .user-pass-wrap is the wrapper used (instead of a paragraph) on wp-login.php from WP 5.3 178 181 // .um-row : Ultimate Member 179 $submit_button.parents('form').first().find('p, .impu-form-line-fr, .tml-field-wrap, .user-pass-wrap, .elementor-field-type-text, .elementor-field-type-submit, .elementor-remember-me, .bbp-username, .bbp-password, .bbp-submit-wrapper, .gform_body, .um-row, .um-button').each(function(i) { 182 // .rmrow : RegistrationMagic 183 $submit_button.parents('form').first().find('p, .impu-form-line-fr, .tml-field-wrap, .user-pass-wrap, .elementor-field-type-text, .elementor-field-type-submit, .elementor-remember-me, .bbp-username, .bbp-password, .bbp-submit-wrapper, .gform_body, .um-row, .um-button, .js-login-form, .rmrow').each(function(i) { 180 184 $(this).css('visibility', 'hidden').css('position', 'absolute'); 181 185 // On the WooCommerce form, the 'required' asterisk in the child <span> still shows without this … … 211 215 html += 'for="simba_two_factor_auth">'; 212 216 213 html += simba_tfasettings.otp + '< br><input type="text" name="two_factor_code" id="simba_two_factor_auth" autocomplete="off" data-lpignore="true"';217 html += simba_tfasettings.otp + '</label><input type="text" name="two_factor_code" id="simba_two_factor_auth" autocomplete="off" data-lpignore="true"'; 214 218 215 219 if ($(form).hasClass('woocommerce-form-login')) { … … 218 222 } 219 223 220 html += '> </label>';224 html += '>'; 221 225 222 226 if (form_is_ultimate_member) { html += '</div>'; } … … 244 248 if (user_can_trust) { 245 249 246 html += '< br><input type="checkbox" name="simba_tfa_mark_as_trusted" id="simba_tfa_mark_as_trusted" value="1"><label for="simba_tfa_mark_as_trusted" style="display:inline;">'+ simba_tfasettings.mark_as_trusted+'</label>';250 html += '<input type="checkbox" name="simba_tfa_mark_as_trusted" id="simba_tfa_mark_as_trusted" value="1"><label for="simba_tfa_mark_as_trusted">'+ simba_tfasettings.mark_as_trusted+'</label>'; 247 251 248 252 } … … 272 276 273 277 if (form_is_ultimate_member) { html += ' um-button'; } 278 279 if (form_is_login_form) { html += ' c-btn-rg hover:bg-main focus:bg-main'; } 274 280 275 281 html += '" type="submit" '; -
two-factor-authentication/tags/1.15.5/simba-tfa/includes/tfa_frontend.php
r3107617 r3341724 17 17 add_shortcode('twofactor_user_settings', array($this, 'tfa_user_settings_front')); 18 18 19 register_block_type('twofactor/user-settings', array( 20 'editor_script' => 'twofactor-gutenberg-blocks', 21 'render_callback' => array($this, 'tfa_user_settings_front'), 22 )); 19 if (!WP_Block_Type_Registry::get_instance()->is_registered('twofactor/user-settings')) { 20 register_block_type('twofactor/user-settings', array( 21 'editor_script' => 'twofactor-gutenberg-blocks', 22 'render_callback' => array($this, 'tfa_user_settings_front'), 23 )); 24 } 23 25 } 24 26 … … 193 195 * Shortcode function for twofactor_user_settings 194 196 * 195 * @param Array $atts 196 * @param Null|String $content 197 * @param Array $atts - shortcode attributes 197 198 * 198 199 * @return String 199 200 */ 200 public function tfa_user_settings_front($atts , $content = null) {201 public function tfa_user_settings_front($atts = array()) { 201 202 202 203 if (!is_user_logged_in()) return ''; 203 204 204 global $current_user; 205 206 return $this->mother->include_template('shortcode-tfa-user-settings.php', array('is_activated_for_user' => $current_user->ID, 'tfa_frontend' => $this), true); 205 $atts = array_change_key_case((array)$atts, CASE_LOWER); 206 207 $atts = shortcode_atts(array('show_algorithm_selector' => 'no'), $atts); 208 209 $show_algorithm_selector = ('yes' === $atts['show_algorithm_selector']); 210 211 global $current_user; 212 213 return $this->mother->include_template('shortcode-tfa-user-settings.php', array('is_activated_for_user' => $current_user->ID, 'tfa_frontend' => $this, 'show_algorithm_selector' => $show_algorithm_selector), true); 207 214 208 215 } -
two-factor-authentication/tags/1.15.5/simba-tfa/providers/totp/loader.php
r3107617 r3341724 1032 1032 } 1033 1033 1034 public function setUserHMACTypes() {1035 trigger_error("Deprecated: setUserHMACTypes() does nothing: remove any calls to it");1036 }1037 1038 1034 } -
two-factor-authentication/tags/1.15.5/simba-tfa/simba-tfa.php
r3196753 r3341724 609 609 foreach ($roles_db as $role_info) { 610 610 if (empty($role_info->meta_key) || !preg_match('/^'.$table_prefix.'\d+_capabilities$/', $role_info->meta_key) || empty($role_info->meta_value) || !preg_match('/^a:/', $role_info->meta_value)) continue; 611 $site_roles = unserialize($role_info->meta_value);611 $site_roles = $this->unserialize($role_info->meta_value); 612 612 if (!is_array($site_roles)) continue; 613 613 foreach ($site_roles as $role => $active) { … … 1400 1400 $setting = ($setting === false) ? $default : ($setting ? 1 : 0); 1401 1401 1402 echo '<input type="checkbox" id="tfa_'. $prefix.$id.'" name="tfa_'.$prefix.$id.'" class="tfa_'.$prefix.'user_roles" value="1" '.($setting ? 'checked="checked"' :'').'> <label for="tfa_'.$prefix.$id.'">'.htmlspecialchars($name)."</label><br>\n";1402 echo '<input type="checkbox" id="tfa_'.esc_attr($prefix.$id).'" name="tfa_'.esc_attr($prefix.$id).'" class="tfa_'.esc_attr($prefix).'user_roles" value="1" '.($setting ? 'checked="checked"' :'').'> <label for="tfa_'.esc_attr($prefix.$id).'">'.htmlspecialchars($name)."</label><br>\n";