# Copyright (C) 2026 friloo # This file is distributed under the GPL-2.0-or-later. msgid "" msgstr "" "Project-Id-Version: M365 Login 1.1.0\n" "Report-Msgid-Bugs-To: https://github.com/friloo/wp-m365-login/issues\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "POT-Creation-Date: 2026-09-23T00:00:00+00:00\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "X-Generator: bin/make-pot.py\n" "X-Domain: m365-login\n" #: includes/class-m365-login-admin.php:108 includes/class-m365-login-admin.php:109 includes/class-m365-login-admin.php:120 includes/class-m365-login-admin.php:778 msgid "M365 Login" msgstr "" #: includes/class-m365-login-admin.php:135 msgid "Connection" msgstr "" #: includes/class-m365-login-admin.php:136 msgid "Button" msgstr "" #: includes/class-m365-login-admin.php:137 msgid "Security" msgstr "" #: includes/class-m365-login-admin.php:138 msgid "User sync" msgstr "" #: includes/class-m365-login-admin.php:207 msgid "M365 Login: button-only mode is on, but the connection to Microsoft is broken (missing or undecryptable secret, or expired certificate). Nobody can sign in except through the fallback link." msgstr "" #: includes/class-m365-login-admin.php:209 includes/class-m365-login-admin.php:227 msgid "Open the settings" msgstr "" #: includes/class-m365-login-admin.php:225 msgid "M365 Login is active but not connected to Microsoft Entra ID yet." msgstr "" #: includes/class-m365-login-admin.php:263 msgid "Choose button icon" msgstr "" #: includes/class-m365-login-admin.php:264 msgid "Use this icon" msgstr "" #: includes/class-m365-login-admin.php:265 msgid "Copied!" msgstr "" #: includes/class-m365-login-admin.php:266 includes/class-m365-login-admin.php:904 includes/class-m365-login-admin.php:1171 includes/class-m365-login-admin.php:1216 msgid "Copy" msgstr "" #: includes/class-m365-login-admin.php:267 msgid "Testing…" msgstr "" #: includes/class-m365-login-admin.php:268 msgid "The tenant could not be reached. Check the tenant ID and the server’s outgoing connections." msgstr "" #: includes/class-m365-login-admin.php:269 msgid "No groups found." msgstr "" #: includes/class-m365-login-admin.php:270 msgid "Searching…" msgstr "" #: includes/class-m365-login-admin.php:271 msgid "Add" msgstr "" #: includes/class-m365-login-admin.php:272 includes/class-m365-login-admin.php:528 msgid "Remove" msgstr "" #: includes/class-m365-login-admin.php:273 includes/class-m365-login-admin.php:336 includes/class-m365-login-admin.php:501 msgid "Save the connection settings first, then search for groups." msgstr "" #: includes/class-m365-login-admin.php:274 msgid "Generate a new fallback key on save? The old link stops working." msgstr "" #: includes/class-m365-login-admin.php:275 msgid "Generating a 3072-bit key pair, this takes a moment…" msgstr "" #: includes/class-m365-login-admin.php:276 msgid "Replace the stored certificate? Sign-in stops working until the new certificate is uploaded to Entra ID." msgstr "" #: includes/class-m365-login-admin.php:277 msgid "Remove the stored certificate when saving? Sign-in with the certificate method stops working." msgstr "" #: includes/class-m365-login-admin.php:278 msgid "Sync is running, this can take a while for large directories…" msgstr "" #: includes/class-m365-login-admin.php:279 msgid "Run the sync now with the saved settings? Accounts are created, updated and possibly deactivated or deleted. Tip: run a dry run first." msgstr "" #: includes/class-m365-login-admin.php:280 msgid "The request failed or timed out. Reload the page in a few minutes to see the report; for very large directories use \"wp m365-login sync\" (WP-CLI)." msgstr "" #: includes/class-m365-login-admin.php:281 msgid "You have unsaved changes. The sync uses the saved settings – save first." msgstr "" #: includes/class-m365-login-admin.php:282 includes/class-m365-login-admin.php:515 msgid "Move up" msgstr "" #: includes/class-m365-login-admin.php:294 includes/class-m365-login-admin.php:333 includes/class-m365-login-admin.php:359 includes/class-m365-login-admin.php:392 includes/class-m365-login-admin.php:566 includes/class-m365-login-sync.php:1775 msgid "You are not allowed to do this." msgstr "" #: includes/class-m365-login-admin.php:299 msgid "Please enter a valid tenant ID first." msgstr "" #. translators: %d: HTTP status code #: includes/class-m365-login-admin.php:313 msgid "Microsoft answered with HTTP %d. Is the tenant ID correct?" msgstr "" #. translators: %d: HTTP status code #: includes/class-m365-login-admin.php:322 msgid "Tenant reachable. The OpenID configuration was loaded successfully." msgstr "" #: includes/class-m365-login-admin.php:345 msgid "Microsoft Graph refused the request. Grant the application permission \"GroupMember.Read.All\" (or \"Directory.Read.All\") with admin consent in Entra ID." msgstr "" #: includes/class-m365-login-admin.php:363 msgid "Unknown operation." msgstr "" #: includes/class-m365-login-admin.php:380 msgid "Certificate generated and stored. Download the .cer file and upload it in Entra ID." msgstr "" #: includes/class-m365-login-admin.php:407 msgid "The sync has not run yet." msgstr "" #: includes/class-m365-login-admin.php:411 msgid "Finished" msgstr "" #: includes/class-m365-login-admin.php:412 msgid "Failed" msgstr "" #: includes/class-m365-login-admin.php:413 msgid "Stopped by the safety limit" msgstr "" #: includes/class-m365-login-admin.php:414 msgid "Not started" msgstr "" #: includes/class-m365-login-admin.php:417 msgid "started manually" msgstr "" #: includes/class-m365-login-admin.php:418 msgid "scheduled" msgstr "" #: includes/class-m365-login-admin.php:419 msgid "WP-CLI" msgstr "" #: includes/class-m365-login-admin.php:422 msgid "would be created" msgstr "" #: includes/class-m365-login-admin.php:422 msgid "created" msgstr "" #: includes/class-m365-login-admin.php:423 msgid "would be updated" msgstr "" #: includes/class-m365-login-admin.php:423 msgid "updated" msgstr "" #: includes/class-m365-login-admin.php:424 msgid "would be linked" msgstr "" #: includes/class-m365-login-admin.php:424 msgid "linked" msgstr "" #: includes/class-m365-login-admin.php:425 msgid "unchanged" msgstr "" #: includes/class-m365-login-admin.php:426 msgid "would be deactivated" msgstr "" #: includes/class-m365-login-admin.php:426 msgid "deactivated" msgstr "" #: includes/class-m365-login-admin.php:427 msgid "would be reactivated" msgstr "" #: includes/class-m365-login-admin.php:427 msgid "reactivated" msgstr "" #: includes/class-m365-login-admin.php:428 msgid "would be deleted" msgstr "" #: includes/class-m365-login-admin.php:428 msgid "deleted" msgstr "" #: includes/class-m365-login-admin.php:429 msgid "photos" msgstr "" #: includes/class-m365-login-admin.php:430 msgid "skipped" msgstr "" #: includes/class-m365-login-admin.php:431 msgid "errors" msgstr "" #: includes/class-m365-login-admin.php:444 msgid "Dry run – nothing was changed" msgstr "" #. translators: 1: date and time, 2: how the run was started, 3: duration in seconds #: includes/class-m365-login-admin.php:449 msgid "%1$s, %2$s, %3$d s" msgstr "" #. translators: %d: number of log entries #: includes/class-m365-login-admin.php:467 msgid "Log (%d entry)" msgid_plural "Log (%d entries)" msgstr[0] "" msgstr[1] "" #: includes/class-m365-login-admin.php:495 msgid "Search groups" msgstr "" #: includes/class-m365-login-admin.php:497 msgid "Type a group name or paste an object ID…" msgstr "" #: includes/class-m365-login-admin.php:498 msgid "Search" msgstr "" #: includes/class-m365-login-admin.php:503 msgid "Needs the application permission \"GroupMember.Read.All\" with admin consent. Without it you can still paste group object IDs." msgstr "" #: includes/class-m365-login-admin.php:509 msgid "Selected groups" msgstr "" #: includes/class-m365-login-admin.php:521 msgid "WordPress role" msgstr "" #: includes/class-m365-login-admin.php:572 msgid "No certificate is stored." msgstr "" #: includes/class-m365-login-admin.php:597 msgid "Do nothing" msgstr "" #: includes/class-m365-login-admin.php:598 msgid "Deactivate the WordPress account" msgstr "" #: includes/class-m365-login-admin.php:599 msgid "Delete the WordPress account" msgstr "" #: includes/class-m365-login-admin.php:602 msgid "Account disabled in Microsoft 365 (sign-in blocked)" msgstr "" #: includes/class-m365-login-admin.php:603 msgid "Account deleted in Microsoft 365" msgstr "" #: includes/class-m365-login-admin.php:604 msgid "No longer a member of the sync groups" msgstr "" #: includes/class-m365-login-admin.php:609 msgid "Import users from Microsoft 365" msgstr "" #: includes/class-m365-login-admin.php:610 msgid "Creates a WordPress account for every Microsoft 365 user in scope, links existing accounts by e-mail address, keeps roles and profile fields up to date and deactivates or deletes accounts that were disabled or removed in Microsoft 365. New accounts get a random password and no e-mail; people sign in with the Microsoft button." msgstr "" #: includes/class-m365-login-admin.php:615 msgid "Run the sync automatically" msgstr "" #: includes/class-m365-login-admin.php:616 msgid "Uses WP-Cron, which runs when the site receives visits. For exact timing, trigger wp-cron.php from a real cron job or run \"wp m365-login sync\"." msgstr "" #: includes/class-m365-login-admin.php:622 msgid "Interval" msgstr "" #: includes/class-m365-login-admin.php:624 msgid "Hourly" msgstr "" #: includes/class-m365-login-admin.php:625 msgid "Twice daily" msgstr "" #: includes/class-m365-login-admin.php:626 msgid "Daily" msgstr "" #. translators: %s: date and time #: includes/class-m365-login-admin.php:630 msgid "Next run: %s" msgstr "" #: includes/class-m365-login-admin.php:638 msgid "Also import guest users (B2B)" msgstr "" #: includes/class-m365-login-admin.php:639 msgid "Guests are external people invited into your tenant. Off by default." msgstr "" #: includes/class-m365-login-admin.php:643 msgid "Which users? (optional)" msgstr "" #: includes/class-m365-login-admin.php:644 msgid "Limit the import to members of these groups (nested memberships count). Without groups, every user of the tenant is imported. The e-mail domain allow-list on the Security tab applies as well." msgstr "" #: includes/class-m365-login-admin.php:645 msgid "No groups selected – all users of the tenant are imported." msgstr "" #: includes/class-m365-login-admin.php:649 msgid "Roles" msgstr "" #: includes/class-m365-login-admin.php:652 msgid "Default role" msgstr "" #: includes/class-m365-login-admin.php:656 msgid "Every imported user gets this role. The sync manages the roles of imported accounts – manual role changes are overwritten on the next run." msgstr "" #: includes/class-m365-login-admin.php:659 msgid "Additional roles from Microsoft 365 groups" msgstr "" #: includes/class-m365-login-admin.php:660 msgid "Members of a group (nested memberships count) get the role next to it. If a person leaves the group, the role is removed again on the next sync." msgstr "" #: includes/class-m365-login-admin.php:661 msgid "Whoever can change a group's members controls the mapped role. For roles with administrative rights use security groups (ideally role-assignable ones) – never public Microsoft 365 groups or Teams, which members can join themselves." msgstr "" #: includes/class-m365-login-admin.php:662 msgid "No group mapping – everybody gets the default role." msgstr "" #: includes/class-m365-login-admin.php:665 msgid "How are mapped roles applied?" msgstr "" #: includes/class-m365-login-admin.php:668 msgid "In addition to the default role (a user can have several roles)" msgstr "" #: includes/class-m365-login-admin.php:672 msgid "Instead of the default role – the first matching group in the list wins (use ↑ to reorder)" msgstr "" #: includes/class-m365-login-admin.php:679 msgid "Also manage the roles of accounts that existed before the sync" msgstr "" #: includes/class-m365-login-admin.php:680 msgid "Off: existing accounts are only linked and get their profile fields updated; their roles stay as they are. Administrators that existed before the sync and your own account are never changed." msgstr "" #: includes/class-m365-login-admin.php:686 msgid "Profile fields" msgstr "" #: includes/class-m365-login-admin.php:687 msgid "Selected Microsoft 365 attributes are copied into the WordPress profile on every sync (Microsoft 365 wins). Name fields go into the standard profile fields, everything else into user meta keys starting with \"m365_\" – usable by themes and other plugins – and is shown on the profile screen." msgstr "" #: includes/class-m365-login-admin.php:696 msgid "Profile photos are stored in wp-content/uploads/m365-login-avatars/ and replace the Gravatar. They are compared on every run: changed photos are downloaded again, photos deleted in Microsoft 365 are deleted in WordPress too. Fields and photos you deselect here are removed from the profiles on the next run (first and last name and display name stay)." msgstr "" #: includes/class-m365-login-admin.php:700 msgid "Disabled and deleted Microsoft 365 accounts" msgstr "" #: includes/class-m365-login-admin.php:701 msgid "Applies to WordPress accounts linked to a Microsoft account (imported, or signed in with Microsoft at least once). Deactivated accounts cannot sign in at all – not with Microsoft, a password or an application password – and are signed out immediately. When the person is active in Microsoft 365 again, the sync reactivates the account." msgstr "" #: includes/class-m365-login-admin.php:712 msgid "Only relevant when the import is limited to groups." msgstr "" #: includes/class-m365-login-admin.php:718 msgid "Posts of deleted accounts go to" msgstr "" #: includes/class-m365-login-admin.php:726 msgid "— Select a user —" msgstr "" #: includes/class-m365-login-admin.php:733 msgid "Required for \"Delete\". Without a user, accounts are deactivated instead, so no content is ever lost." msgstr "" #: includes/class-m365-login-admin.php:736 msgid "Safety stop: if a run would deactivate or delete more than 20 % of the linked accounts (at least 5), nothing is deactivated or deleted and the run is reported as stopped. A failed Microsoft Graph request also stops the run before anything is deactivated." msgstr "" #: includes/class-m365-login-admin.php:740 msgid "Run the sync" msgstr "" #: includes/class-m365-login-admin.php:741 msgid "The run uses the saved settings. Start with a dry run: it reads Microsoft 365 and lists what would change, without changing anything." msgstr "" #: includes/class-m365-login-admin.php:743 msgid "Dry run" msgstr "" #: includes/class-m365-login-admin.php:744 msgid "Sync now" msgstr "" #: includes/class-m365-login-admin.php:746 msgid "Required application permissions (Microsoft Graph, admin consent): User.Read.All, and GroupMember.Read.All when groups are used." msgstr "" #: includes/class-m365-login-admin.php:760 msgid "You are not allowed to access this page." msgstr "" #: includes/class-m365-login-admin.php:779 msgid "Let existing users sign in with their Microsoft 365 / Entra ID account." msgstr "" #: includes/class-m365-login-admin.php:784 msgid "Connected" msgstr "" #: includes/class-m365-login-admin.php:784 msgid "Setup incomplete" msgstr "" #: includes/class-m365-login-admin.php:806 msgid "Microsoft Entra ID app registration" msgstr "" #: includes/class-m365-login-admin.php:807 msgid "Enter the values from your app registration in the Microsoft Entra admin center." msgstr "" #: includes/class-m365-login-admin.php:810 msgid "Directory (tenant) ID" msgstr "" #: includes/class-m365-login-admin.php:813 msgid "Test tenant" msgstr "" #: includes/class-m365-login-admin.php:815 msgid "Recommended: the GUID of your tenant. Only sign-ins from this tenant are accepted. \"organizations\" allows any work or school account." msgstr "" #: includes/class-m365-login-admin.php:817 msgid "Multi-tenant mode: accounts from any Microsoft tenant can sign in. Their \"email\" attribute is not verified, so the plugin matches on the user principal name (verified domain) only and ignores the e-mail claim unless Microsoft marks it as domain-verified. Use the e-mail domain allow-list on the Security tab, or better, pin your tenant GUID." msgstr "" #: includes/class-m365-login-admin.php:823 msgid "Application (client) ID" msgstr "" #: includes/class-m365-login-admin.php:828 msgid "How should WordPress authenticate to Microsoft?" msgstr "" #: includes/class-m365-login-admin.php:833 includes/class-m365-login-admin.php:850 msgid "Client secret" msgstr "" #: includes/class-m365-login-admin.php:834 msgid "Quick to set up. A password-like value created in Entra ID that expires after 6–24 months and must be renewed." msgstr "" #: includes/class-m365-login-admin.php:840 msgid "Certificate" msgstr "" #: includes/class-m365-login-admin.php:840 msgid "Recommended" msgstr "" #: includes/class-m365-login-admin.php:841 msgid "The private key never leaves this server; only the public certificate is uploaded to Entra ID. Generated here with one click, valid for 2 years." msgstr "" #: includes/class-m365-login-admin.php:852 msgid "•••••••••••• (stored, leave empty to keep)" msgstr "" #: includes/class-m365-login-admin.php:852 msgid "Paste the secret value" msgstr "" #: includes/class-m365-login-admin.php:853 msgid "Show secret" msgstr "" #: includes/class-m365-login-admin.php:858 msgid "Remove the stored secret" msgstr "" #: includes/class-m365-login-admin.php:861 msgid "Stored encrypted (AES-256-GCM, key derived from your WordPress salts) and never displayed again. Client secrets expire – note the expiry date in Entra ID." msgstr "" #: includes/class-m365-login-admin.php:863 msgid "AUTH_KEY and SECURE_AUTH_KEY are not defined in wp-config.php, so WordPress keeps its salts in the database – right next to the encrypted secret. Add the salts to wp-config.php to make the encryption effective." msgstr "" #: includes/class-m365-login-admin.php:868 msgid "Step-by-step: create a client secret in Entra ID" msgstr "" #: includes/class-m365-login-admin.php:871 msgid "Open entra.microsoft.com and sign in with an account that has the \"Application Administrator\" or \"Global Administrator\" role." msgstr "" #: includes/class-m365-login-admin.php:872 msgid "Go to Identity → Applications → App registrations and open your app (or create it first, see the general guide in the sidebar)." msgstr "" #: includes/class-m365-login-admin.php:873 msgid "In the left menu choose Certificates & secrets, then the tab Client secrets, and click New client secret." msgstr "" #: includes/class-m365-login-admin.php:874 msgid "Enter a description such as \"WordPress login\" and pick an expiry. Microsoft allows at most 24 months; put a reminder in your calendar two weeks before." msgstr "" #: includes/class-m365-login-admin.php:875 msgid "Click Add. Copy the Value column immediately – it is shown only once. The Secret ID column is NOT what you need." msgstr "" #: includes/class-m365-login-admin.php:876 msgid "Paste the value into the Client secret field above and save this page." msgstr "" #: includes/class-m365-login-admin.php:878 msgid "When the secret expires, sign-ins fail with \"Could not complete the sign-in with Microsoft\". Create a new secret, paste it here, save, then delete the old one in Entra ID." msgstr "" #: includes/class-m365-login-admin.php:891 msgid "Expired" msgstr "" #. translators: %d: number of days #: includes/class-m365-login-admin.php:895 msgid "Expires in %d days" msgstr "" #. translators: %d: number of days #: includes/class-m365-login-admin.php:898 msgid "Valid" msgstr "" #: includes/class-m365-login-admin.php:903 msgid "Thumbprint (SHA-1)" msgstr "" #: includes/class-m365-login-admin.php:905 msgid "Subject" msgstr "" #: includes/class-m365-login-admin.php:907 msgid "Key size" msgstr "" #: includes/class-m365-login-admin.php:909 msgid "Valid until" msgstr "" #: includes/class-m365-login-admin.php:913 msgid "Download certificate (.cer)" msgstr "" #: includes/class-m365-login-admin.php:914 msgid "Generate new certificate" msgstr "" #: includes/class-m365-login-admin.php:917 msgid "Remove certificate when saving" msgstr "" #: includes/class-m365-login-admin.php:921 msgid "No certificate stored yet." msgstr "" #: includes/class-m365-login-admin.php:923 msgid "Generate certificate" msgstr "" #: includes/class-m365-login-admin.php:924 msgid "3072-bit RSA, self-signed, valid for 2 years. The private key is stored encrypted and never shown or downloadable." msgstr "" #: includes/class-m365-login-admin.php:928 msgid "Use your own certificate instead (paste PEM)" msgstr "" #: includes/class-m365-login-admin.php:931 msgid "Private key (PEM, unencrypted)" msgstr "" #: includes/class-m365-login-admin.php:935 msgid "Certificate (PEM)" msgstr "" #: includes/class-m365-login-admin.php:937 msgid "RSA, at least 2048 bits. The pair is validated and the key is encrypted when you save. Both fields stay empty afterwards." msgstr "" #: includes/class-m365-login-admin.php:943 msgid "Step-by-step: register the certificate in Entra ID" msgstr "" #: includes/class-m365-login-admin.php:946 msgid "Click Generate certificate above (or paste your own). Then click Download certificate (.cer) – the file contains only the public part." msgstr "" #: includes/class-m365-login-admin.php:947 msgid "Open entra.microsoft.com → Identity → Applications → App registrations and open your app." msgstr "" #: includes/class-m365-login-admin.php:948 msgid "Choose Certificates & secrets in the left menu, then the tab Certificates, and click Upload certificate." msgstr "" #: includes/class-m365-login-admin.php:949 msgid "Select the downloaded .cer file, add a description such as \"WordPress login\" and click Add." msgstr "" #: includes/class-m365-login-admin.php:950 msgid "Compare the thumbprint Entra ID shows with the thumbprint above – they must match exactly." msgstr "" #: includes/class-m365-login-admin.php:951 msgid "Make sure Certificate is selected above and save this page. If a client secret was stored before, you may delete it in Entra ID now." msgstr "" #: includes/class-m365-login-admin.php:953 msgid "How it works: for every token request WordPress signs a short-lived JWT (client assertion) with the private key; Microsoft verifies it with the uploaded certificate. Nothing secret is ever transmitted." msgstr "" #: includes/class-m365-login-admin.php:954 msgid "Before the certificate expires: generate a new one here, upload it to Entra ID (both may be registered at the same time), save, then remove the old one from Entra ID. Sign-ins keep working during the switch." msgstr "" #: includes/class-m365-login-admin.php:960 msgid "Account prompt" msgstr "" #: includes/class-m365-login-admin.php:962 msgid "Always let the user pick an account (recommended)" msgstr "" #: includes/class-m365-login-admin.php:963 msgid "Use the current Microsoft session if available" msgstr "" #: includes/class-m365-login-admin.php:964 msgid "Always require re-entering credentials" msgstr "" #: includes/class-m365-login-admin.php:973 msgid "Appearance" msgstr "" #: includes/class-m365-login-admin.php:976 msgid "Live preview" msgstr "" #: includes/class-m365-login-admin.php:990 msgid "Button text" msgstr "" #: includes/class-m365-login-admin.php:994 msgid "Divider text" msgstr "" #: includes/class-m365-login-admin.php:996 msgid "Leave empty to hide the divider line." msgstr "" #: includes/class-m365-login-admin.php:1001 msgid "Icon" msgstr "" #: includes/class-m365-login-admin.php:1004 msgid "Show an icon on the button" msgstr "" #: includes/class-m365-login-admin.php:1015 msgid "Default: Microsoft logo" msgstr "" #: includes/class-m365-login-admin.php:1017 msgid "Choose from media library" msgstr "" #: includes/class-m365-login-admin.php:1018 msgid "Use Microsoft logo" msgstr "" #: includes/class-m365-login-admin.php:1020 msgid "PNG, SVG, JPG or WebP. Square images (e.g. 64×64 px) work best." msgstr "" #: includes/class-m365-login-admin.php:1028 msgid "Background" msgstr "" #: includes/class-m365-login-admin.php:1029 msgid "Background (hover)" msgstr "" #: includes/class-m365-login-admin.php:1030 msgid "Text colour" msgstr "" #: includes/class-m365-login-admin.php:1031 msgid "Border" msgstr "" #: includes/class-m365-login-admin.php:1044 msgid "Corner radius" msgstr "" #: includes/class-m365-login-admin.php:1048 msgid "Position on the login page" msgstr "" #: includes/class-m365-login-admin.php:1050 msgid "Below the login form" msgstr "" #: includes/class-m365-login-admin.php:1051 msgid "Above the login form" msgstr "" #: includes/class-m365-login-admin.php:1057 msgid "Quick presets" msgstr "" #: includes/class-m365-login-admin.php:1058 msgid "Microsoft dark" msgstr "" #: includes/class-m365-login-admin.php:1059 msgid "Microsoft light" msgstr "" #: includes/class-m365-login-admin.php:1060 msgid "Azure blue" msgstr "" #: includes/class-m365-login-admin.php:1061 msgid "WordPress blue" msgstr "" #: includes/class-m365-login-admin.php:1065 msgid "Custom login page" msgstr "" #: includes/class-m365-login-admin.php:1066 msgid "Using your own login page instead of wp-login.php? Tell the plugin where it is so error messages, the fallback link and the post-logout redirect point there." msgstr "" #: includes/class-m365-login-admin.php:1069 msgid "URL of your login page" msgstr "" #: includes/class-m365-login-admin.php:1071 msgid "Must be on this site. Leave empty to use wp-login.php." msgstr "" #: includes/class-m365-login-admin.php:1077 msgid "Add the button to every wp_login_form() form automatically" msgstr "" #: includes/class-m365-login-admin.php:1078 msgid "Covers themes and plugins that use the WordPress login form function. Page-builder widgets need the shortcode or the template function below." msgstr "" #: includes/class-m365-login-admin.php:1083 msgid "Manual placement" msgstr "" #: includes/class-m365-login-admin.php:1084 msgid "Shortcode (block editor, page builders):" msgstr "" #: includes/class-m365-login-admin.php:1086 msgid "Template function (theme files):" msgstr "" #: includes/class-m365-login-admin.php:1088 msgid "Both show the error messages of the last attempt; use m365_login_messages() to place them separately." msgstr "" #: includes/class-m365-login-admin.php:1096 msgid "User matching & hardening" msgstr "" #: includes/class-m365-login-admin.php:1097 msgid "Sign-in never creates users. A Microsoft sign-in only succeeds when a WordPress user with the same e-mail address already exists – created by hand or imported by the user sync." msgstr "" #: includes/class-m365-login-admin.php:1102 msgid "Bind WordPress accounts to the Microsoft object ID" msgstr "" #: includes/class-m365-login-admin.php:1103 msgid "On first sign-in the immutable Microsoft object ID is stored with the user. Later sign-ins with the same e-mail but a different Microsoft identity are rejected. Strongly recommended." msgstr "" #: includes/class-m365-login-admin.php:1110 msgid "Fall back to the user principal name (UPN)" msgstr "" #: includes/class-m365-login-admin.php:1111 msgid "If the token contains no \"email\" claim, use the UPN (e.g. jane@contoso.com) when it is a valid e-mail address. Usually required for work accounts." msgstr "" #: includes/class-m365-login-admin.php:1118 msgid "Keep users signed in (\"Remember me\")" msgstr "" #: includes/class-m365-login-admin.php:1119 msgid "Issues a 14-day WordPress session instead of a browser session." msgstr "" #: includes/class-m365-login-admin.php:1124 msgid "Allowed e-mail domains (optional)" msgstr "" #: includes/class-m365-login-admin.php:1126 msgid "One or more domains separated by commas or new lines. Leave empty to allow any domain of your tenant." msgstr "" #: includes/class-m365-login-admin.php:1131 msgid "Allowed Entra groups (optional)" msgstr "" #: includes/class-m365-login-admin.php:1132 msgid "Only members of at least one of these groups may sign in. Leave empty to allow every matched user. Nested memberships count." msgstr "" #: includes/class-m365-login-admin.php:1134 msgid "No groups selected – every matched user may sign in." msgstr "" #: includes/class-m365-login-admin.php:1136 msgid "Membership is read from the \"groups\" claim of the ID token when present; otherwise the plugin asks Microsoft Graph (application permission \"User.Read.All\" or \"Directory.Read.All\"). If neither works, the sign-in is refused." msgstr "" #: includes/class-m365-login-admin.php:1141 msgid "Excluded Entra groups (optional)" msgstr "" #: includes/class-m365-login-admin.php:1142 msgid "Members of these groups can never sign in with Microsoft – even if they are in an allowed group. Nested memberships count." msgstr "" #: includes/class-m365-login-admin.php:1145 msgid "Group rules need a pinned tenant ID (GUID) on the Connection tab. In multi-tenant mode the group check cannot ask Microsoft Graph, so every sign-in is refused while groups are selected here or above." msgstr "" #: includes/class-m365-login-admin.php:1147 msgid "No groups excluded." msgstr "" #: includes/class-m365-login-admin.php:1149 msgid "The plugin asks Microsoft Graph on every sign-in (application permission \"User.Read.All\" or \"Directory.Read.All\"), because a \"groups\" claim may be filtered and cannot prove that someone is not a member. If the check fails, the sign-in is refused. Password sign-in is not affected – combine with button-only mode if needed." msgstr "" #: includes/class-m365-login-admin.php:1154 msgid "Button-only mode" msgstr "" #: includes/class-m365-login-admin.php:1155 msgid "Hides the username/password fields (on wp-login.php and in wp_login_form() forms) and refuses every sign-in with a normal password on the site – custom login forms, XML-RPC and login endpoints of other plugins included. Application passwords (REST, XML-RPC) and WP-CLI keep working; API requests never receive a login cookie." msgstr "" #: includes/class-m365-login-admin.php:1160 msgid "Show only the Microsoft button on the login page" msgstr "" #: includes/class-m365-login-admin.php:1161 msgid "Becomes active once the connection is configured. Make sure your own account can sign in via Microsoft before enabling this." msgstr "" #: includes/class-m365-login-admin.php:1166 msgid "Fallback link (keep it secret)" msgstr "" #: includes/class-m365-login-admin.php:1167 msgid "Opening this link shows the password form again in that browser for 30 minutes and allows password sign-in there. Bookmark it somewhere safe – it is your way back in if Microsoft sign-in ever breaks." msgstr "" #: includes/class-m365-login-admin.php:1175 msgid "Generate a new key when saving" msgstr "" #: includes/class-m365-login-admin.php:1178 msgid "A key is generated automatically the first time you save these settings." msgstr "" #. translators: %s: PHP constant #: includes/class-m365-login-admin.php:1184 msgid "Emergency switch: add %s to wp-config.php to disable button-only mode entirely." msgstr "" #. translators: %s: PHP constant #: includes/class-m365-login-admin.php:1193 msgid "What the plugin does to keep sign-ins safe" msgstr "" #: includes/class-m365-login-admin.php:1195 msgid "OpenID Connect authorization code flow with PKCE (S256) – no tokens ever pass through the browser." msgstr "" #: includes/class-m365-login-admin.php:1196 msgid "Single-use state and nonce values bound to the browser via an HttpOnly cookie (CSRF and replay protection)." msgstr "" #: includes/class-m365-login-admin.php:1197 msgid "ID token signature verified against Microsoft’s published signing keys; issuer, audience, tenant, expiry and nonce are checked." msgstr "" #: includes/class-m365-login-admin.php:1198 msgid "Client secret encrypted at rest; sign-in never creates accounts or changes passwords." msgstr "" #: includes/class-m365-login-admin.php:1206 msgid "Save changes" msgstr "" #: includes/class-m365-login-admin.php:1212 msgid "Redirect URI" msgstr "" #: includes/class-m365-login-admin.php:1213 msgid "Register this URI in your app registration under Authentication → Web → Redirect URIs:" msgstr "" #: includes/class-m365-login-admin.php:1219 msgid "Plain permalinks are active, so the callback uses a query string. If you enable pretty permalinks later, the redirect URI changes and must be updated in Entra ID." msgstr "" #: includes/class-m365-login-admin.php:1222 msgid "Your site does not use HTTPS. Microsoft only accepts http:// redirect URIs for localhost; production sites must use HTTPS." msgstr "" #: includes/class-m365-login-admin.php:1227 msgid "Setup guide: app registration" msgstr "" #: includes/class-m365-login-admin.php:1229 msgid "Open entra.microsoft.com → Identity → Applications → App registrations → New registration." msgstr "" #: includes/class-m365-login-admin.php:1230 msgid "Name: e.g. \"WordPress login\". Supported account types: \"Accounts in this organizational directory only\" (single tenant)." msgstr "" #: includes/class-m365-login-admin.php:1231 msgid "Redirect URI: choose the platform Web and paste the URI shown above. Then click Register." msgstr "" #: includes/class-m365-login-admin.php:1232 msgid "On the Overview page copy the Application (client) ID and the Directory (tenant) ID into the Connection tab." msgstr "" #: includes/class-m365-login-admin.php:1233 msgid "Authentication: leave \"ID tokens\" unchecked (the plugin uses the authorization code flow) and \"Allow public client flows\" on No." msgstr "" #: includes/class-m365-login-admin.php:1234 msgid "Token configuration → Add optional claim → ID → tick \"email\" → Add. Confirm the API permission prompt." msgstr "" #: includes/class-m365-login-admin.php:1235 msgid "Pick the authentication method on the Connection tab and follow its step-by-step guide (client secret or certificate)." msgstr "" #: includes/class-m365-login-admin.php:1236 msgid "Optional: restrict who may use the app under Enterprise applications → your app → Properties → \"Assignment required\" = Yes, then assign users/groups." msgstr "" #: includes/class-m365-login-admin.php:1238 msgid "Required API permission: openid, profile, email (delegated) – granted by default." msgstr "" #: includes/class-m365-login-admin.php:1239 msgid "Optional, for group restrictions and the user sync: application permissions GroupMember.Read.All and User.Read.All (Microsoft Graph) with admin consent." msgstr "" #: includes/class-m365-login-admin.php:1243 msgid "Shortcode" msgstr "" #: includes/class-m365-login-admin.php:1244 msgid "Place the button on a custom login page:" msgstr "" #: includes/class-m365-login-admin.php:1246 msgid "More options on the Button tab under \"Custom login page\"." msgstr "" #: includes/class-m365-login-auth.php:182 msgid "Password sign-in is disabled on this site. Please use the Microsoft button." msgstr "" #: includes/class-m365-login-auth.php:998 msgid "Microsoft sign-in is temporarily unavailable. Please contact an administrator." msgstr "" #: includes/class-m365-login-auth.php:1005 msgid "Password sign-in is temporarily enabled for this browser (30 minutes)." msgstr "" #: includes/class-m365-login-auth.php:1026 includes/class-m365-login-graph.php:63 msgid "Microsoft login is not configured yet." msgstr "" #: includes/class-m365-login-auth.php:1027 msgid "The login request expired or was invalid. Please try again." msgstr "" #: includes/class-m365-login-auth.php:1028 msgid "Microsoft sign-in was cancelled." msgstr "" #: includes/class-m365-login-auth.php:1029 msgid "Microsoft returned an error. Please try again." msgstr "" #: includes/class-m365-login-auth.php:1030 msgid "Could not complete the sign-in with Microsoft. Please try again or contact an administrator." msgstr "" #: includes/class-m365-login-auth.php:1031 msgid "The Microsoft sign-in could not be verified." msgstr "" #: includes/class-m365-login-auth.php:1032 msgid "Your Microsoft account did not provide an e-mail address." msgstr "" #: includes/class-m365-login-auth.php:1033 msgid "Your e-mail domain is not allowed to sign in here." msgstr "" #: includes/class-m365-login-auth.php:1034 msgid "No WordPress account exists for your Microsoft e-mail address." msgstr "" #: includes/class-m365-login-auth.php:1035 msgid "This WordPress account is linked to a different Microsoft account. Please contact an administrator." msgstr "" #: includes/class-m365-login-auth.php:1036 msgid "You are not allowed to sign in with this account." msgstr "" #: includes/class-m365-login-auth.php:1037 msgid "Your Microsoft account is not a member of a group that is allowed to sign in here." msgstr "" #: includes/class-m365-login-auth.php:1038 msgid "Your group membership could not be verified. Please contact an administrator." msgstr "" #: includes/class-m365-login-auth.php:1039 msgid "Your Microsoft account is a member of a group that is not allowed to sign in here." msgstr "" #: includes/class-m365-login-auth.php:1040 msgid "The fallback key is not valid." msgstr "" #: includes/class-m365-login-auth.php:1041 msgid "Too many attempts. Please wait 15 minutes." msgstr "" #: includes/class-m365-login-auth.php:1042 msgid "Too many sign-in attempts from your connection. Please wait a few minutes and try again." msgstr "" #: includes/class-m365-login-auth.php:1043 includes/class-m365-login-sync.php:1684 msgid "This account has been deactivated." msgstr "" #: includes/class-m365-login-auth.php:1044 msgid "For security reasons this administrator account can only be linked to a Microsoft account whose user principal name equals the WordPress e-mail address. Please contact an administrator." msgstr "" #: includes/class-m365-login-auth.php:1045 msgid "Guest and external accounts cannot sign in here." msgstr "" #: includes/class-m365-login-certificate.php:29 msgid "The PHP OpenSSL extension is not available." msgstr "" #: includes/class-m365-login-certificate.php:42 msgid "Key generation failed." msgstr "" #: includes/class-m365-login-certificate.php:51 msgid "Certificate request failed." msgstr "" #: includes/class-m365-login-certificate.php:56 msgid "Certificate signing failed." msgstr "" #: includes/class-m365-login-certificate.php:62 msgid "Exporting the certificate failed." msgstr "" #: includes/class-m365-login-certificate.php:83 msgid "The private key must be in PEM format (-----BEGIN PRIVATE KEY-----)." msgstr "" #: includes/class-m365-login-certificate.php:86 msgid "Password protected private keys are not supported. Export the key without a passphrase." msgstr "" #: includes/class-m365-login-certificate.php:90 msgid "The private key could not be read." msgstr "" #: includes/class-m365-login-certificate.php:94 msgid "Only RSA keys are supported." msgstr "" #: includes/class-m365-login-certificate.php:97 msgid "The RSA key must have at least 2048 bits." msgstr "" #: includes/class-m365-login-certificate.php:101 msgid "The certificate field contains a private key. Paste only the certificate (-----BEGIN CERTIFICATE-----) there." msgstr "" #: includes/class-m365-login-certificate.php:105 includes/class-m365-login-certificate.php:119 msgid "The certificate could not be read. Paste it in PEM format (-----BEGIN CERTIFICATE-----)." msgstr "" #: includes/class-m365-login-certificate.php:108 msgid "The certificate does not belong to this private key." msgstr "" #: includes/class-m365-login-certificate.php:113 msgid "The certificate has already expired." msgstr "" #: includes/class-m365-login-graph.php:436 msgid "Group" msgstr "" #: includes/class-m365-login-graph.php:438 msgid "Security group" msgstr "" #: includes/class-m365-login-graph.php:440 msgid "Microsoft 365 group" msgstr "" #: includes/class-m365-login-graph.php:444 msgid "Public Microsoft 365 group – anyone in the organisation can join" msgstr "" #: includes/class-m365-login-settings.php:55 msgid "Sign in with Microsoft" msgstr "" #: includes/class-m365-login-settings.php:64 msgid "or" msgstr "" #: includes/class-m365-login-settings.php:226 includes/class-m365-login-settings.php:543 msgid "The private key could not be encrypted. Is the OpenSSL extension available?" msgstr "" #: includes/class-m365-login-settings.php:489 msgid "The tenant ID must be a GUID (e.g. 1a2b3c4d-…) or one of \"organizations\", \"common\", \"consumers\"." msgstr "" #: includes/class-m365-login-settings.php:497 msgid "The application (client) ID must be a GUID." msgstr "" #: includes/class-m365-login-settings.php:509 msgid "The client secret contains invalid characters." msgstr "" #: includes/class-m365-login-settings.php:513 msgid "The client secret could not be encrypted. Is the OpenSSL extension available?" msgstr "" #: includes/class-m365-login-settings.php:533 msgid "Please paste both the private key and the certificate." msgstr "" #: includes/class-m365-login-settings.php:535 msgid "The pasted key or certificate is too large." msgstr "" #: includes/class-m365-login-settings.php:552 msgid "Certificate authentication is selected but no certificate is stored yet. Generate one or paste your own; the Microsoft button stays hidden until then." msgstr "" #: includes/class-m365-login-settings.php:585 msgid "The custom login page must be a URL on this site." msgstr "" #: includes/class-m365-login-settings.php:692 msgid "User sync: \"Delete\" needs a user who receives the posts of deleted accounts. Until one is selected, accounts are deactivated instead." msgstr "" #: includes/class-m365-login-sync.php:119 msgid "Display name" msgstr "" #: includes/class-m365-login-sync.php:123 msgid "First name" msgstr "" #: includes/class-m365-login-sync.php:127 msgid "Last name" msgstr "" #: includes/class-m365-login-sync.php:131 msgid "Profile photo (used as avatar)" msgstr "" #: includes/class-m365-login-sync.php:135 msgid "Job title" msgstr "" #: includes/class-m365-login-sync.php:139 msgid "Department" msgstr "" #: includes/class-m365-login-sync.php:143 msgid "Company" msgstr "" #: includes/class-m365-login-sync.php:147 msgid "Office" msgstr "" #: includes/class-m365-login-sync.php:151 msgid "Employee ID" msgstr "" #: includes/class-m365-login-sync.php:155 msgid "Business phone" msgstr "" #: includes/class-m365-login-sync.php:159 msgid "Mobile phone" msgstr "" #: includes/class-m365-login-sync.php:163 msgid "Street address" msgstr "" #: includes/class-m365-login-sync.php:167 msgid "Postal code" msgstr "" #: includes/class-m365-login-sync.php:171 msgid "City" msgstr "" #: includes/class-m365-login-sync.php:175 msgid "State / province" msgstr "" #: includes/class-m365-login-sync.php:179 msgid "Country" msgstr "" #: includes/class-m365-login-sync.php:183 msgid "Language (sets the admin language if installed)" msgstr "" #: includes/class-m365-login-sync.php:319 msgid "Another sync is still running. Please try again in a few minutes." msgstr "" #: includes/class-m365-login-sync.php:405 msgid "The connection to Microsoft Entra ID is not configured yet." msgstr "" #: includes/class-m365-login-sync.php:409 msgid "The user sync needs a pinned tenant ID (GUID) on the Connection tab." msgstr "" #: includes/class-m365-login-sync.php:413 msgid "The default role does not exist. Please check the sync settings." msgstr "" #. translators: %d: number of users #: includes/class-m365-login-sync.php:425 msgid "%d user read from Microsoft 365." msgid_plural "%d users read from Microsoft 365." msgstr[0] "" msgstr[1] "" #: includes/class-m365-login-sync.php:436 msgid "Microsoft 365 returned no users at all while accounts are linked. Nothing was changed. Check the tenant and the sync groups." msgstr "" #: includes/class-m365-login-sync.php:484 msgid "The tenant ID changed since the last sync. Accounts linked in the old tenant are not found in the new one, so no account was deactivated or deleted in this run. Run the sync again to apply deactivations." msgstr "" #. translators: 1: number of accounts, 2: limit #: includes/class-m365-login-sync.php:496 msgid "Safety stop: %1$d accounts would be deactivated or deleted, more than the limit of %2$d per run. No account was deactivated or deleted. Check the sync groups and the tenant, then run the sync again (the limit can be changed with the m365_login_sync_deprovision_limit filter)." msgstr "" #: includes/class-m365-login-sync.php:621 includes/class-m365-login-sync.php:674 includes/class-m365-login-sync.php:1028 includes/class-m365-login-sync.php:1816 msgid "disabled in Microsoft 365" msgstr "" #. translators: %s: user principal name #: includes/class-m365-login-sync.php:632 msgid "%s: no usable e-mail address, skipped." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:639 msgid "%s: e-mail domain is not on the allow-list, skipped." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:651 msgid "%s: the WordPress account with this e-mail address is linked to a different Microsoft account, skipped." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:656 msgid "%s: privileged WordPress account – it is only linked when the Microsoft user principal name equals its e-mail address (member account, no guest). Skipped." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:660 msgid "%s: existing account linked." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:685 msgid "%s: added to this site." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:694 msgid "%s: reactivated (active in Microsoft 365 again)." msgstr "" #. translators: 1: e-mail address, 2: list of changed fields #: includes/class-m365-login-sync.php:705 msgid "%1$s: updated (%2$s)." msgstr "" #. translators: 1: e-mail address, 2: role names #: includes/class-m365-login-sync.php:731 msgid "%1$s: account created (%2$s)." msgstr "" #. translators: 1: e-mail address, 2: error message #: includes/class-m365-login-sync.php:758 msgid "%1$s: account could not be created: %2$s" msgstr "" #. translators: 1: current e-mail address, 2: e-mail address in Microsoft 365 #: includes/class-m365-login-sync.php:816 msgid "%1$s: the e-mail address in Microsoft 365 changed to %2$s. It is not changed automatically for privileged accounts – update it by hand if intended." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:819 msgid "%s: e-mail address is used by another WordPress account and was not changed." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:822 msgid "e-mail" msgstr "" #. translators: %s: profile field #: includes/class-m365-login-sync.php:872 msgid "%s removed" msgstr "" #. translators: 1: e-mail address, 2: error message #: includes/class-m365-login-sync.php:882 msgid "%1$s: profile could not be updated: %2$s" msgstr "" #. translators: %s: role names #: includes/class-m365-login-sync.php:988 msgid "roles: %s" msgstr "" #: includes/class-m365-login-sync.php:1023 includes/class-m365-login-sync.php:1817 msgid "deleted in Microsoft 365" msgstr "" #: includes/class-m365-login-sync.php:1031 includes/class-m365-login-sync.php:1818 msgid "no longer a member of the sync groups" msgstr "" #. translators: 1: e-mail address, 2: reason #: includes/class-m365-login-sync.php:1063 msgid "%1$s: %2$s, but the account is protected (administrator or your own account) and was not changed." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:1140 msgid "%s: no valid user to receive the content is selected, so the account is deactivated instead of deleted." msgstr "" #. translators: 1: e-mail address, 2: reason #: includes/class-m365-login-sync.php:1149 msgid "%1$s: account deleted (%2$s)." msgstr "" #. translators: 1: e-mail address, 2: reason #: includes/class-m365-login-sync.php:1158 msgid "%1$s: account deactivated (%2$s)." msgstr "" #: includes/class-m365-login-sync.php:1237 msgid "Microsoft Graph refused the request. Grant the application permissions \"User.Read.All\" and \"GroupMember.Read.All\" with admin consent in Entra ID." msgstr "" #. translators: %s: error message #: includes/class-m365-login-sync.php:1240 msgid "Microsoft Graph error: %s" msgstr "" #: includes/class-m365-login-sync.php:1258 msgid "Log truncated." msgstr "" #. translators: 1: e-mail address, 2: error message #: includes/class-m365-login-sync.php:1334 msgid "%1$s: profile photo could not be read: %2$s" msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:1358 includes/class-m365-login-sync.php:1401 msgid "%s: profile photo updated." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:1377 msgid "%s: profile photo could not be downloaded." msgstr "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:1384 msgid "%s: profile photo is not a valid image or could not be saved." msgstr "" #. translators: %d: number of photos #: includes/class-m365-login-sync.php:1407 msgid "%d changed profile photo will be downloaded in the next run (download limit per run reached)." msgid_plural "%d changed profile photos will be downloaded in the next run (download limit per run reached)." msgstr[0] "" msgstr[1] "" #. translators: %s: e-mail address #: includes/class-m365-login-sync.php:1422 msgid "%s: profile photo removed." msgstr "" #. translators: %d: number of photos #: includes/class-m365-login-sync.php:1450 msgid "Profile photo sync is off: %d stored photo removed." msgid_plural "Profile photo sync is off: %d stored photos removed." msgstr[0] "" msgstr[1] "" #: includes/class-m365-login-sync.php:1713 includes/class-m365-login-sync.php:1846 msgid "Microsoft 365" msgstr "" #: includes/class-m365-login-sync.php:1731 msgid "Deactivated" msgstr "" #: includes/class-m365-login-sync.php:1734 msgid "Imported" msgstr "" #: includes/class-m365-login-sync.php:1736 msgid "Linked" msgstr "" #: includes/class-m365-login-sync.php:1764 msgid "Reactivate" msgstr "" #: includes/class-m365-login-sync.php:1764 msgid "Deactivate" msgstr "" #: includes/class-m365-login-sync.php:1797 msgid "The account has been deactivated and signed out everywhere." msgstr "" #: includes/class-m365-login-sync.php:1798 msgid "The account has been reactivated." msgstr "" #. translators: 1: date, 2: reason #: includes/class-m365-login-sync.php:1822 msgid "Deactivated since %1$s (%2$s)" msgstr "" #. translators: 1: date, 2: reason #: includes/class-m365-login-sync.php:1824 msgid "manually" msgstr "" #. translators: 1: date, 2: reason #: includes/class-m365-login-sync.php:1826 msgid "Status" msgstr "" #: includes/class-m365-login-sync.php:1829 msgid "Object ID" msgstr "" #: includes/class-m365-login-sync.php:1833 msgid "Last sync" msgstr "" #: includes/class-m365-login-sync.php:1855 msgid "These values are managed by the Microsoft 365 user sync and overwritten on the next run." msgstr "" #: includes/class-m365-login.php:110 msgid "Settings" msgstr "" #: includes/class-m365-login.php:121 msgid "M365 Login requires PHP 7.4 or newer." msgstr "" #: includes/class-m365-login.php:122 includes/class-m365-login.php:131 msgid "Plugin activation failed" msgstr "" #: includes/class-m365-login.php:130 msgid "M365 Login requires the PHP OpenSSL extension (needed to verify Microsoft token signatures and to encrypt the client secret)." msgstr ""