Merge branch 'dev' into master

This commit is contained in:
Bubka 2020-10-17 13:55:15 +02:00
commit 9763bc924e
79 changed files with 3616 additions and 111 deletions

35
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@ -0,0 +1,35 @@
---
name: Bug report
about: Create a report to help us improve 2FAuth
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
**Additional context**
Add any other context about the problem here.

View File

@ -0,0 +1,17 @@
---
name: Feature request
about: Suggest an idea or feature for 2FAuth
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@ -28,7 +28,7 @@ ## Main features
* Generate TOTP and HOTP security codes
* User authentication to protect 2FA data stored in 2FAuth
2FAuth is currently localized in English and in French.
2FAuth is currently fully localized in English and French. See [Contributing](#Contributing) if you want to help on adding more languages.
#### Single user app
2FA are sensitives data so you have to create an account and authenticate yourself to use the app. It is not possible to create more than one user account, the app is thought for personal use.
@ -92,7 +92,11 @@ ## Upgrading
```
# Contributing
to complete
You can contribute to 2FAuth in many ways:
- By [reporting bugs](https://github.com/Bubka/2FAuth/issues/new?template=bug_report.md), or even better, by submitting a fix with a pull request on the *dev* branch.
- By [suggesting enhancement or new feature](https://github.com/Bubka/2FAuth/issues/new?template=feature_request.md). Please have a look to the [2FAuth development project](https://github.com/Bubka/2FAuth/projects/2), maybe your idea is already there.
- By correcting or completing translations in a language you speak, using the [Crowdin platform](https://crowdin.com/project/2fauth). Ask for your language if this one is lacking.
# License
[AGPL-3.0](https://www.gnu.org/licenses/agpl-3.0.html)

134
crowdin.yml Normal file
View File

@ -0,0 +1,134 @@
#
# Your Crowdin credentials
#
"base_path" : "."
"base_url" : "https://api.crowdin.com"
#
# Choose file structure in Crowdin
# e.g. true or false
#
"preserve_hierarchy": false
#
# Files configuration
#
files: [
{
#
# Source files filter
# e.g. "/resources/en/*.json"
#
"source" : "/resources/lang/en/*.php",
#
# Where translations will be placed
# e.g. "/resources/%two_letters_code%/%original_file_name%"
#
"translation" : "/resources/lang/%two_letters_code%/%original_file_name%",
#
# Files or directories for ignore
# e.g. ["/**/?.txt", "/**/[0-9].txt", "/**/*\?*.txt"]
#
#"ignore" : [],
#
# The dest allows you to specify a file name in Crowdin
# e.g. "/messages.json"
#
#"dest" : "",
#
# File type
# e.g. "json"
#
#"type" : "",
#
# The parameter "update_option" is optional. If it is not set, after the files update the translations for changed strings will be removed. Use to fix typos and for minor changes in the source strings
# e.g. "update_as_unapproved" or "update_without_changes"
#
#"update_option" : "",
#
# Start block (for XML only)
#
#
# Defines whether to translate tags attributes.
# e.g. 0 or 1 (Default is 1)
#
# "translate_attributes" : 1,
#
# Defines whether to translate texts placed inside the tags.
# e.g. 0 or 1 (Default is 1)
#
# "translate_content" : 1,
#
# This is an array of strings, where each item is the XPaths to DOM element that should be imported
# e.g. ["/content/text", "/content/text[@value]"]
#
# "translatable_elements" : [],
#
# Defines whether to split long texts into smaller text segments
# e.g. 0 or 1 (Default is 1)
#
# "content_segmentation" : 1,
#
# End block (for XML only)
#
#
# Start .properties block
#
#
# Defines whether single quote should be escaped by another single quote or backslash in exported translations
# e.g. 0 or 1 or 2 or 3 (Default is 3)
# 0 - do not escape single quote;
# 1 - escape single quote by another single quote;
# 2 - escape single quote by backslash;
# 3 - escape single quote by another single quote only in strings containing variables ( {0} ).
#
# "escape_quotes" : 3,
#
# Defines whether any special characters (=, :, ! and #) should be escaped by backslash in exported translations.
# e.g. 0 or 1 (Default is 0)
# 0 - do not escape special characters
# 1 - escape special characters by a backslash
#
# "escape_special_characters": 0
#
#
# End .properties block
#
#
# Often software projects have custom names for the directories where translations are placed. crowdin-cli allows you to map your own languages to be understandable by Crowdin.
#
#"languages_mapping" : {
# "two_letters_code" : {
# "crowdin_language_code" : "local_name"
# }
#},
#
# Does the first line contain header?
# e.g. true or false
#
#"first_line_contains_header" : true,
#
# for spreadsheets
# e.g. "identifier,source_phrase,context,uk,ru,fr"
#
# "scheme" : "",
}
]

View File

@ -4,7 +4,7 @@
<div class="error-message" v-if="$route.name == '404'">
<p class="error-404"></p>
<p>{{ $t('errors.resource_not_found') }}</p>
<p class="">{{ $t('errors.please') }}<router-link :to="{ name: 'accounts' }" class="is-text">{{ $t('errors.refresh') }}</router-link></p>
<p class=""><router-link :to="{ name: 'accounts' }" class="is-text">{{ $t('errors.refresh') }}</router-link></p>
</div>
<div v-else-if="$route.name == 'flooded'">
<p class="error-generic"></p>
@ -12,13 +12,13 @@
{{ $t('errors.already_one_user_registered') }}<br>
{{ $t('errors.cannot_register_more_user') }}
</p>
<p>{{ $t('errors.please') }}<router-link :to="{ name: 'accounts' }" class="is-text">{{ $t('auth.sign_in') }}</router-link></p>
<p><router-link :to="{ name: 'accounts' }" class="is-text">{{ $t('auth.sign_in') }}</router-link></p>
</div>
<div v-else>
<p class="error-generic"></p>
<p>{{ $t('errors.error_occured') }}</p>
<p v-if="error" class="has-text-grey-lighter">{{ error.message }}</p>
<p>{{ $t('errors.please') }}<router-link :to="{ name: 'accounts' }" class="is-text">{{ $t('errors.refresh') }}</router-link></p>
<p><router-link :to="{ name: 'accounts' }" class="is-text">{{ $t('errors.refresh') }}</router-link></p>
<p v-if="debugMode == 'development' && error">
<br>
{{ error.debug }}

View File

@ -0,0 +1,57 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => 'Diese Kombination aus Zugangsdaten wurde nicht in unserer Datenbank gefunden.',
'throttle' => 'Zu viele Loginversuche. Versuchen Sie es bitte in :seconds Sekunden nochmal.',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',
],
'forms' => [
'name' => 'Name',
'login' => 'Login',
'email' => 'Email',
'password' => 'Password',
'confirm_password' => 'Confirm password',
'confirm_new_password' => 'Confirm new password',
'dont_have_account_yet' => 'Don\'t have your account yet?',
'already_register' => 'Already registered?',
'password_do_not_match' => 'Password do not match',
'forgot_your_password' => 'Forgot your password?',
'request_password_reset' => 'Request a password reset',
'reset_password' => 'Reset password',
'no_reset_password_in_demo' => 'No reset in Demo mode',
'new_password' => 'New password',
'current_password' => [
'label' => 'Current password',
'help' => 'Fill in your current password to confirm that it\'s you'
],
'change_password' => 'Change password',
'send_password_reset_link' => 'Send password reset link',
'change_your_password' => 'Change your password',
'password_successfully_changed' => 'Password successfully changed ',
'edit_account' => 'Edit account',
'profile_saved' => 'Profile successfully updated!',
'welcome_to_demo_app_use_those_credentials' => 'Welcome to the 2FAuth demo.<br><br>You can connect using the email address <strong>demo@2fauth.app</strong> and the password <strong>demo</demo>',
],
];

View File

@ -0,0 +1,27 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'cancel' => 'Cancel',
'update' => 'Update',
'copy_to_clipboard' => 'Copy to clipboard',
'copied_to_clipboard' => 'Copied to clipboard',
'profile' => 'Profile',
'edit' => 'Edit',
'delete' => 'Delete',
'save' => 'Save',
'close' => 'Close',
'demo_do_not_post_sensitive_data' => 'This is a demo app, do not post any sensitive data',
'selected' => 'selected',
];

View File

@ -0,0 +1,28 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'resource_not_found' => 'Resource not found',
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],
'something_wrong_with_server' => 'Something is wrong with your server',
'Unable_to_decrypt_uri' => 'Unable to decrypt uri',
'wrong_current_password' => 'Wrong current password, nothing has changed'
];

View File

@ -0,0 +1,15 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Language names
|--------------------------------------------------------------------------
|
|
*/
'en' => 'English',
'fr' => 'French',
];

View File

@ -0,0 +1,19 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => '&laquo; Zurück',
'next' => 'Weiter &raquo;',
];

View File

@ -0,0 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
// Laravel
'reset' => 'Das Passwort wurde zurückgesetzt!',
'sent' => 'Passworterinnerung wurde gesendet!',
'throttled' => 'Bitte warten Sie, bevor Sie es erneut versuchen.',
'token' => 'Der Passwort-Wiederherstellungs-Schlüssel ist ungültig oder abgelaufen.',
'user' => "Es konnte leider kein Nutzer mit dieser E-Mail-Adresse gefunden werden.",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -0,0 +1,71 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Settings Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'settings' => 'Settings',
'account' => 'Account',
'password' => 'Password',
'options' => 'Options',
'confirm' => [
],
'general' => 'General',
'security' => 'Security',
'advanced' => 'Advanced',
'forms' => [
'edit_settings' => 'Edit settings',
'setting_saved' => 'Settings saved',
'language' => [
'label' => 'Language',
'help' => 'Change the language used to translate the app interface.'
],
'show_token_as_dot' => [
'label' => 'Show generated tokens as dot',
'help' => 'Replace generated token caracters with *** to ensure confidentiality. Do not affect the copy/paste feature.'
],
'close_token_on_copy' => [
'label' => 'Close token after copy',
'help' => 'Automatically close the popup showing the generated token after it has been copied'
],
'use_basic_qrcode_reader' => [
'label' => 'Use basic qrcode reader',
'help' => 'If you experiences issues when capturing qrCodes enables this option to switch to a more basic but more reliable qrcode reader'
],
'display_mode' => [
'label' => 'Display mode',
'help' => 'Choose whether you want accounts to be displayed as a list or as a grid'
],
'grid' => 'Grid',
'list' => 'List',
'show_accounts_icons' => [
'label' => 'Show icons',
'help' => 'Show icons accounts in the main view'
],
'auto_lock' => [
'label' => 'Auto lock',
'help' => 'Log out the user automatically in case of inactivity'
],
'never' => 'Never',
'on_token_copy' => 'On security code copy',
'1_minutes' => 'After 1 minute',
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],
];

View File

@ -0,0 +1,69 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'service' => 'Service',
'account' => 'Account',
'icon' => 'Icon',
'new' => 'New',
'no_account_here' => 'No 2FA here!',
'add_first_account' => 'Add your first account',
'use_full_form' => 'Or use the full form',
'add_one' => 'Add one',
'manage' => 'Manage',
'done' => 'Done',
'forms' => [
'service' => [
'placeholder' => 'example.com',
],
'account' => [
'placeholder' => 'John DOE',
],
'new_account' => 'New account',
'edit_account' => 'Edit account',
'otp_uri' => 'OTP Uri',
'hotp_counter' => 'HOTP Counter',
'scan_qrcode' => 'Scan a qrcode',
'use_qrcode' => [
'val' => 'Use a qrcode',
'title' => 'Use a QR code to fill the form magically',
],
'unlock' => [
'val' => 'Unlock',
'title' => 'Unlock it (at your own risk)',
],
'lock' => [
'val' => 'Lock',
'title' => 'Lock it',
],
'choose_image' => 'Choose an image…',
'create' => 'Create',
'save' => 'Save',
'test' => 'Test',
],
'stream' => [
'need_grant_permission' => 'You need to grant camera access permission',
'not_readable' => 'Fail to load scanner. Is the camera already in use?',
'no_cam_on_device' => 'No camera on this device',
'secured_context_required' => 'Secure context required (HTTPS or localhost)',
'https_required' => 'HTTPS required for camera streaming',
'camera_not_suitable' => 'Installed cameras are not suitable',
'stream_api_not_supported' => 'Stream API is not supported in this browser'
],
'confirm' => [
'delete' => 'Are you sure you want to delete this account?',
'cancel' => 'The account will be lost. Are you sure?'
],
];

View File

@ -0,0 +1,160 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => ':attribute muss akzeptiert werden.',
'active_url' => ':attribute ist keine gültige Internet-Adresse.',
'after' => ':attribute muss ein Datum nach dem :date sein.',
'after_or_equal' => ':attribute muss ein Datum nach dem :date oder gleich dem :date sein.',
'alpha' => ':attribute darf nur aus Buchstaben bestehen.',
'alpha_dash' => ':attribute darf nur aus Buchstaben, Zahlen, Binde- und Unterstrichen bestehen.',
'alpha_num' => ':attribute darf nur aus Buchstaben und Zahlen bestehen.',
'array' => ':attribute muss ein Array sein.',
'before' => ':attribute muss ein Datum vor dem :date sein.',
'before_or_equal' => ':attribute muss ein Datum vor dem :date oder gleich dem :date sein.',
'between' => [
'numeric' => ':attribute muss zwischen :min & :max liegen.',
'file' => ':attribute muss zwischen :min & :max Kilobytes groß sein.',
'string' => ':attribute muss zwischen :min & :max Zeichen lang sein.',
'array' => ':attribute muss zwischen :min & :max Elemente haben.',
],
'boolean' => ':attribute muss entweder \'true\' oder \'false\' sein.',
'confirmed' => ':attribute stimmt nicht mit der Bestätigung überein.',
'date' => ':attribute muss ein gültiges Datum sein.',
'date_equals' => ':attribute muss ein Datum gleich :date sein.',
'date_format' => ':attribute entspricht nicht dem gültigen Format für :format.',
'different' => ':attribute und :other müssen sich unterscheiden.',
'digits' => ':attribute muss :digits Stellen haben.',
'digits_between' => ':attribute muss zwischen :min und :max Stellen haben.',
'dimensions' => ':attribute hat ungültige Bildabmessungen.',
'distinct' => ':attribute beinhaltet einen bereits vorhandenen Wert.',
'email' => ':attribute muss eine gültige E-Mail-Adresse sein.',
'ends_with' => ':attribute muss eine der folgenden Endungen aufweisen: :values',
'exists' => 'Der gewählte Wert für :attribute ist ungültig.',
'file' => ':attribute muss eine Datei sein.',
'filled' => ':attribute muss ausgefüllt sein.',
'gt' => [
'numeric' => ':attribute muss größer als :value sein.',
'file' => ':attribute muss größer als :value Kilobytes sein.',
'string' => ':attribute muss länger als :value Zeichen sein.',
'array' => ':attribute muss mehr als :value Elemente haben.',
],
'gte' => [
'numeric' => ':attribute muss größer oder gleich :value sein.',
'file' => ':attribute muss größer oder gleich :value Kilobytes sein.',
'string' => ':attribute muss mindestens :value Zeichen lang sein.',
'array' => ':attribute muss mindestens :value Elemente haben.',
],
'image' => ':attribute muss ein Bild sein.',
'in' => 'Der gewählte Wert für :attribute ist ungültig.',
'in_array' => 'Der gewählte Wert für :attribute kommt nicht in :other vor.',
'integer' => ':attribute muss eine ganze Zahl sein.',
'ip' => ':attribute muss eine gültige IP-Adresse sein.',
'ipv4' => ':attribute muss eine gültige IPv4-Adresse sein.',
'ipv6' => ':attribute muss eine gültige IPv6-Adresse sein.',
'json' => ':attribute muss ein gültiger JSON-String sein.',
'lt' => [
'numeric' => ':attribute muss kleiner als :value sein.',
'file' => ':attribute muss kleiner als :value Kilobytes sein.',
'string' => ':attribute muss kürzer als :value Zeichen sein.',
'array' => ':attribute muss weniger als :value Elemente haben.',
],
'lte' => [
'numeric' => ':attribute muss kleiner oder gleich :value sein.',
'file' => ':attribute muss kleiner oder gleich :value Kilobytes sein.',
'string' => ':attribute darf maximal :value Zeichen lang sein.',
'array' => ':attribute darf maximal :value Elemente haben.',
],
'max' => [
'numeric' => ':attribute darf maximal :max sein.',
'file' => ':attribute darf maximal :max Kilobytes groß sein.',
'string' => ':attribute darf maximal :max Zeichen haben.',
'array' => ':attribute darf maximal :max Elemente haben.',
],
'mimes' => ':attribute muss den Dateityp :values haben.',
'mimetypes' => ':attribute muss den Dateityp :values haben.',
'min' => [
'numeric' => ':attribute muss mindestens :min sein.',
'file' => ':attribute muss mindestens :min Kilobytes groß sein.',
'string' => ':attribute muss mindestens :min Zeichen lang sein.',
'array' => ':attribute muss mindestens :min Elemente haben.',
],
'not_in' => 'Der gewählte Wert für :attribute ist ungültig.',
'not_regex' => ':attribute hat ein ungültiges Format.',
'numeric' => ':attribute muss eine Zahl sein.',
'password' => 'Das Passwort ist falsch.',
'present' => ':attribute muss vorhanden sein.',
'regex' => ':attribute Format ist ungültig.',
'required' => ':attribute muss ausgefüllt werden.',
'required_if' => ':attribute muss ausgefüllt werden, wenn :other den Wert :value hat.',
'required_unless' => ':attribute muss ausgefüllt werden, wenn :other nicht den Wert :values hat.',
'required_with' => ':attribute muss ausgefüllt werden, wenn :values ausgefüllt wurde.',
'required_with_all' => ':attribute muss ausgefüllt werden, wenn :values ausgefüllt wurde.',
'required_without' => ':attribute muss ausgefüllt werden, wenn :values nicht ausgefüllt wurde.',
'required_without_all' => ':attribute muss ausgefüllt werden, wenn keines der Felder :values ausgefüllt wurde.',
'same' => ':attribute und :other müssen übereinstimmen.',
'size' => [
'numeric' => ':attribute muss gleich :size sein.',
'file' => ':attribute muss :size Kilobyte groß sein.',
'string' => ':attribute muss :size Zeichen lang sein.',
'array' => ':attribute muss genau :size Elemente haben.',
],
'starts_with' => ':attribute muss mit einem der folgenden Anfänge aufweisen: :values',
'string' => ':attribute muss ein String sein.',
'timezone' => ':attribute muss eine gültige Zeitzone sein.',
'unique' => ':attribute ist bereits vergeben.',
'uploaded' => ':attribute konnte nicht hochgeladen werden.',
'url' => ':attribute muss eine URL sein.',
'uuid' => ':attribute muss ein UUID sein.',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'qrcode' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'uri' => [
'starts_with' => 'Only valid OTP uri are supported',
],
'email' => [
'exists' => 'No account found using this email',
]
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
];

View File

@ -12,12 +12,16 @@
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => 'These credentials do not match our records.',
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',

View File

@ -17,8 +17,7 @@
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'refresh',
'please' => 'Please ',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],

View File

@ -13,9 +13,14 @@
|
*/
'password' => 'Passwords must be at least eight characters and match the confirmation.',
// Laravel
'reset' => 'Your password has been reset!',
'sent' => 'We have e-mailed your password reset link!',
'sent' => 'We have emailed your password reset link!',
'throttled' => 'Please wait before retrying.',
'token' => 'This password reset token is invalid.',
'user' => "We can't find a user with that e-mail address.",
'user' => "We can't find a user with that email address.",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -62,7 +62,7 @@
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],

View File

@ -40,7 +40,7 @@
'dimensions' => 'The :attribute has invalid image dimensions.',
'distinct' => 'The :attribute field has a duplicate value.',
'email' => 'The :attribute must be a valid email address.',
'ends_with' => 'The :attribute must end with one of the following: :values',
'ends_with' => 'The :attribute must end with one of the following: :values.',
'exists' => 'The selected :attribute is invalid.',
'file' => 'The :attribute must be a file.',
'filled' => 'The :attribute field must have a value.',
@ -93,6 +93,7 @@
'not_in' => 'The selected :attribute is invalid.',
'not_regex' => 'The :attribute format is invalid.',
'numeric' => 'The :attribute must be a number.',
'password' => 'The password is incorrect.',
'present' => 'The :attribute field must be present.',
'regex' => 'The :attribute format is invalid.',
'required' => 'The :attribute field is required.',
@ -109,7 +110,7 @@
'string' => 'The :attribute must be :size characters.',
'array' => 'The :attribute must contain :size items.',
],
'starts_with' => 'The :attribute must start with one of the following: :values',
'starts_with' => 'The :attribute must start with one of the following: :values.',
'string' => 'The :attribute must be a string.',
'timezone' => 'The :attribute must be a valid zone.',
'unique' => 'The :attribute has already been taken.',
@ -129,9 +130,6 @@
*/
'custom' => [
'attribute-name' => [
'rule-name' => 'custom-message',
],
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],

View File

@ -0,0 +1,57 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => 'Estas credenciales no coinciden con nuestros registros.',
'throttle' => 'Demasiados intentos de acceso. Por favor intente nuevamente en :seconds segundos.',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',
],
'forms' => [
'name' => 'Name',
'login' => 'Login',
'email' => 'Email',
'password' => 'Password',
'confirm_password' => 'Confirm password',
'confirm_new_password' => 'Confirm new password',
'dont_have_account_yet' => 'Don\'t have your account yet?',
'already_register' => 'Already registered?',
'password_do_not_match' => 'Password do not match',
'forgot_your_password' => 'Forgot your password?',
'request_password_reset' => 'Request a password reset',
'reset_password' => 'Reset password',
'no_reset_password_in_demo' => 'No reset in Demo mode',
'new_password' => 'New password',
'current_password' => [
'label' => 'Current password',
'help' => 'Fill in your current password to confirm that it\'s you'
],
'change_password' => 'Change password',
'send_password_reset_link' => 'Send password reset link',
'change_your_password' => 'Change your password',
'password_successfully_changed' => 'Password successfully changed ',
'edit_account' => 'Edit account',
'profile_saved' => 'Profile successfully updated!',
'welcome_to_demo_app_use_those_credentials' => 'Welcome to the 2FAuth demo.<br><br>You can connect using the email address <strong>demo@2fauth.app</strong> and the password <strong>demo</demo>',
],
];

View File

@ -0,0 +1,27 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'cancel' => 'Cancel',
'update' => 'Update',
'copy_to_clipboard' => 'Copy to clipboard',
'copied_to_clipboard' => 'Copied to clipboard',
'profile' => 'Profile',
'edit' => 'Edit',
'delete' => 'Delete',
'save' => 'Save',
'close' => 'Close',
'demo_do_not_post_sensitive_data' => 'This is a demo app, do not post any sensitive data',
'selected' => 'selected',
];

View File

@ -0,0 +1,28 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'resource_not_found' => 'Resource not found',
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],
'something_wrong_with_server' => 'Something is wrong with your server',
'Unable_to_decrypt_uri' => 'Unable to decrypt uri',
'wrong_current_password' => 'Wrong current password, nothing has changed'
];

View File

@ -0,0 +1,15 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Language names
|--------------------------------------------------------------------------
|
|
*/
'en' => 'English',
'fr' => 'French',
];

View File

@ -0,0 +1,19 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => '&laquo; Anterior',
'next' => 'Siguiente &raquo;',
];

View File

@ -0,0 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
// Laravel
'reset' => '¡Tu contraseña ha sido restablecida!',
'sent' => '¡Te hemos enviado por correo el enlace para restablecer tu contraseña!',
'throttled' => 'Por favor espera antes de intentar de nuevo.',
'token' => 'El token de recuperación de contraseña es inválido.',
'user' => "No podemos encontrar ningún usuario con ese correo electrónico.",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -0,0 +1,71 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Settings Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'settings' => 'Settings',
'account' => 'Account',
'password' => 'Password',
'options' => 'Options',
'confirm' => [
],
'general' => 'General',
'security' => 'Security',
'advanced' => 'Advanced',
'forms' => [
'edit_settings' => 'Edit settings',
'setting_saved' => 'Settings saved',
'language' => [
'label' => 'Language',
'help' => 'Change the language used to translate the app interface.'
],
'show_token_as_dot' => [
'label' => 'Show generated tokens as dot',
'help' => 'Replace generated token caracters with *** to ensure confidentiality. Do not affect the copy/paste feature.'
],
'close_token_on_copy' => [
'label' => 'Close token after copy',
'help' => 'Automatically close the popup showing the generated token after it has been copied'
],
'use_basic_qrcode_reader' => [
'label' => 'Use basic qrcode reader',
'help' => 'If you experiences issues when capturing qrCodes enables this option to switch to a more basic but more reliable qrcode reader'
],
'display_mode' => [
'label' => 'Display mode',
'help' => 'Choose whether you want accounts to be displayed as a list or as a grid'
],
'grid' => 'Grid',
'list' => 'List',
'show_accounts_icons' => [
'label' => 'Show icons',
'help' => 'Show icons accounts in the main view'
],
'auto_lock' => [
'label' => 'Auto lock',
'help' => 'Log out the user automatically in case of inactivity'
],
'never' => 'Never',
'on_token_copy' => 'On security code copy',
'1_minutes' => 'After 1 minute',
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],
];

View File

@ -0,0 +1,69 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'service' => 'Service',
'account' => 'Account',
'icon' => 'Icon',
'new' => 'New',
'no_account_here' => 'No 2FA here!',
'add_first_account' => 'Add your first account',
'use_full_form' => 'Or use the full form',
'add_one' => 'Add one',
'manage' => 'Manage',
'done' => 'Done',
'forms' => [
'service' => [
'placeholder' => 'example.com',
],
'account' => [
'placeholder' => 'John DOE',
],
'new_account' => 'New account',
'edit_account' => 'Edit account',
'otp_uri' => 'OTP Uri',
'hotp_counter' => 'HOTP Counter',
'scan_qrcode' => 'Scan a qrcode',
'use_qrcode' => [
'val' => 'Use a qrcode',
'title' => 'Use a QR code to fill the form magically',
],
'unlock' => [
'val' => 'Unlock',
'title' => 'Unlock it (at your own risk)',
],
'lock' => [
'val' => 'Lock',
'title' => 'Lock it',
],
'choose_image' => 'Choose an image…',
'create' => 'Create',
'save' => 'Save',
'test' => 'Test',
],
'stream' => [
'need_grant_permission' => 'You need to grant camera access permission',
'not_readable' => 'Fail to load scanner. Is the camera already in use?',
'no_cam_on_device' => 'No camera on this device',
'secured_context_required' => 'Secure context required (HTTPS or localhost)',
'https_required' => 'HTTPS required for camera streaming',
'camera_not_suitable' => 'Installed cameras are not suitable',
'stream_api_not_supported' => 'Stream API is not supported in this browser'
],
'confirm' => [
'delete' => 'Are you sure you want to delete this account?',
'cancel' => 'The account will be lost. Are you sure?'
],
];

View File

@ -0,0 +1,160 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => ':attribute debe ser aceptado.',
'active_url' => ':attribute no es una URL válida.',
'after' => ':attribute debe ser una fecha posterior a :date.',
'after_or_equal' => ':attribute debe ser una fecha posterior o igual a :date.',
'alpha' => ':attribute sólo debe contener letras.',
'alpha_dash' => ':attribute sólo debe contener letras, números, guiones y guiones bajos.',
'alpha_num' => ':attribute sólo debe contener letras y números.',
'array' => ':attribute debe ser un conjunto.',
'before' => ':attribute debe ser una fecha anterior a :date.',
'before_or_equal' => ':attribute debe ser una fecha anterior o igual a :date.',
'between' => [
'numeric' => ':attribute tiene que estar entre :min - :max.',
'file' => ':attribute debe pesar entre :min - :max kilobytes.',
'string' => ':attribute tiene que tener entre :min - :max caracteres.',
'array' => ':attribute tiene que tener entre :min - :max elementos.',
],
'boolean' => 'El campo :attribute debe tener un valor verdadero o falso.',
'confirmed' => 'La confirmación de :attribute no coincide.',
'date' => ':attribute no es una fecha válida.',
'date_equals' => ':attribute debe ser una fecha igual a :date.',
'date_format' => ':attribute no corresponde al formato :format.',
'different' => ':attribute y :other deben ser diferentes.',
'digits' => ':attribute debe tener :digits dígitos.',
'digits_between' => ':attribute debe tener entre :min y :max dígitos.',
'dimensions' => 'Las dimensiones de la imagen :attribute no son válidas.',
'distinct' => 'El campo :attribute contiene un valor duplicado.',
'email' => ':attribute no es un correo válido.',
'ends_with' => 'El campo :attribute debe finalizar con uno de los siguientes valores: :values',
'exists' => ':attribute es inválido.',
'file' => 'El campo :attribute debe ser un archivo.',
'filled' => 'El campo :attribute es obligatorio.',
'gt' => [
'numeric' => 'El campo :attribute debe ser mayor que :value.',
'file' => 'El campo :attribute debe tener más de :value kilobytes.',
'string' => 'El campo :attribute debe tener más de :value caracteres.',
'array' => 'El campo :attribute debe tener más de :value elementos.',
],
'gte' => [
'numeric' => 'El campo :attribute debe ser como mínimo :value.',
'file' => 'El campo :attribute debe tener como mínimo :value kilobytes.',
'string' => 'El campo :attribute debe tener como mínimo :value caracteres.',
'array' => 'El campo :attribute debe tener como mínimo :value elementos.',
],
'image' => ':attribute debe ser una imagen.',
'in' => ':attribute es inválido.',
'in_array' => 'El campo :attribute no existe en :other.',
'integer' => ':attribute debe ser un número entero.',
'ip' => ':attribute debe ser una dirección IP válida.',
'ipv4' => ':attribute debe ser una dirección IPv4 válida.',
'ipv6' => ':attribute debe ser una dirección IPv6 válida.',
'json' => 'El campo :attribute debe ser una cadena JSON válida.',
'lt' => [
'numeric' => 'El campo :attribute debe ser menor que :value.',
'file' => 'El campo :attribute debe tener menos de :value kilobytes.',
'string' => 'El campo :attribute debe tener menos de :value caracteres.',
'array' => 'El campo :attribute debe tener menos de :value elementos.',
],
'lte' => [
'numeric' => 'El campo :attribute debe ser como máximo :value.',
'file' => 'El campo :attribute debe tener como máximo :value kilobytes.',
'string' => 'El campo :attribute debe tener como máximo :value caracteres.',
'array' => 'El campo :attribute debe tener como máximo :value elementos.',
],
'max' => [
'numeric' => ':attribute no debe ser mayor que :max.',
'file' => ':attribute no debe ser mayor que :max kilobytes.',
'string' => ':attribute no debe ser mayor que :max caracteres.',
'array' => ':attribute no debe tener más de :max elementos.',
],
'mimes' => ':attribute debe ser un archivo con formato: :values.',
'mimetypes' => ':attribute debe ser un archivo con formato: :values.',
'min' => [
'numeric' => 'El tamaño de :attribute debe ser de al menos :min.',
'file' => 'El tamaño de :attribute debe ser de al menos :min kilobytes.',
'string' => ':attribute debe contener al menos :min caracteres.',
'array' => ':attribute debe tener al menos :min elementos.',
],
'not_in' => ':attribute es inválido.',
'not_regex' => 'El formato del campo :attribute no es válido.',
'numeric' => ':attribute debe ser numérico.',
'password' => 'La contraseña es incorrecta.',
'present' => 'El campo :attribute debe estar presente.',
'regex' => 'El formato de :attribute es inválido.',
'required' => 'El campo :attribute es obligatorio.',
'required_if' => 'El campo :attribute es obligatorio cuando :other es :value.',
'required_unless' => 'El campo :attribute es obligatorio a menos que :other esté en :values.',
'required_with' => 'El campo :attribute es obligatorio cuando :values está presente.',
'required_with_all' => 'El campo :attribute es obligatorio cuando :values están presentes.',
'required_without' => 'El campo :attribute es obligatorio cuando :values no está presente.',
'required_without_all' => 'El campo :attribute es obligatorio cuando ninguno de :values está presente.',
'same' => ':attribute y :other deben coincidir.',
'size' => [
'numeric' => 'El tamaño de :attribute debe ser :size.',
'file' => 'El tamaño de :attribute debe ser :size kilobytes.',
'string' => ':attribute debe contener :size caracteres.',
'array' => ':attribute debe contener :size elementos.',
],
'starts_with' => 'El campo :attribute debe comenzar con uno de los siguientes valores: :values',
'string' => 'El campo :attribute debe ser una cadena de caracteres.',
'timezone' => 'El :attribute debe ser una zona válida.',
'unique' => 'El campo :attribute ya ha sido registrado.',
'uploaded' => 'Subir :attribute ha fallado.',
'url' => 'El formato :attribute es inválido.',
'uuid' => 'El campo :attribute debe ser un UUID válido.',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'qrcode' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'uri' => [
'starts_with' => 'Only valid OTP uri are supported',
],
'email' => [
'exists' => 'No account found using this email',
]
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
];

View File

@ -12,12 +12,16 @@
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => 'Ces identifiants ne correspondent pas à nos enregistrements',
'throttle' => 'Tentatives de connexion trop nombreuses. Veuillez essayer de nouveau dans :seconds secondes.',
// 2FAuth
'sign_out' => 'Déconnexion',
'sign_in' => 'Se connecter',
'register' => 'Créer un compte',
'hello' => 'Hi {username} !',
'throttle' => 'Trop de tentatives de connexion. Veuillez réessayer dans :seconds secondes.',
'already_authenticated' => 'Déjà authentifié',
'confirm' => [
'logout' => 'Etes-vous sûrs de vouloir vous déconnecter ?',
@ -49,6 +53,5 @@
'profile_saved' => 'Profil mis à jour avec succès !',
'welcome_to_demo_app_use_those_credentials' => 'bienvenue sur la démo de 2FAuth.<br><br>Vous pouvez vous connecter en utilisant l\'adresse email <strong>demo@2fauth.app</strong> et le mot de passe <strong>demo</demo>',
],
];

View File

@ -18,7 +18,6 @@
'already_one_user_registered' => 'Un compte utilisateur existe déjà.',
'cannot_register_more_user' => 'Vous ne pouvez pas enregistrer plus d\'un utilisateur.',
'refresh' => 'Actualiser',
'please' => '',
'response' => [
'no_valid_otp' => 'Aucune donnée OTP valide dans ce QR code',
],

View File

@ -13,9 +13,14 @@
|
*/
'password' => 'Les mots de passe doivent contenir au moins huit caractères et être identiques.',
// Laravel
'reset' => 'Votre mot de passe a été réinitialisé !',
'sent' => 'Le lien pour réinitialiser votre mot de passe vient d\'être envoyé !',
'token' => 'Ce jeton de réinitialisation n\'est pas valide.',
'user' => "Cette adresse email n'est pas celle de votre compte.",
'sent' => 'Nous vous avons envoyé par email le lien de réinitialisation du mot de passe !',
'throttled' => 'Veuillez patienter avant de réessayer.',
'token' => 'Ce jeton de réinitialisation du mot de passe n\'est pas valide.',
'user' => "Aucun utilisateur n'a été trouvé avec cette adresse email.",
// 2FAuth
'password' => 'Les mots de passe doivent contenir au moins huit caractères et être identiques.',
];

View File

@ -62,7 +62,7 @@
'5_minutes' => 'Après 5 minutes',
'10_minutes' => 'Après 10 minutes',
'15_minutes' => 'Après 15 minutes',
'30_minutes' => 'Après 15 minutes',
'30_minutes' => 'Après 30 minutes',
'1_hour' => 'Après 1 heure',
'1_day' => 'Après 1 journée',
],

View File

@ -37,7 +37,7 @@
'scan_qrcode' => 'Scanner un QR code',
'use_qrcode' => [
'val' => 'Utiliser un QR code',
'title' => 'Utiliser un QR code pour renseigner le formulaire d\'un seul coup d\'un seul'
'title' => 'Utiliser un QR code pour renseigner le formulaire d\'un seul coup d\'un seul',
],
'unlock' => [
'val' => 'Déverouiller',

View File

@ -1,6 +1,7 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
@ -8,114 +9,114 @@
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages.
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => 'Le champ :attribute doit être accepté.',
'active_url' => "Le champ :attribute n'est pas une URL valide.",
'after' => 'Le champ :attribute doit être une date postérieure au :date.',
'after_or_equal' => 'Le champ :attribute doit être une date postérieure ou égale au :date.',
'alpha' => 'Le champ :attribute doit contenir uniquement des lettres.',
'alpha_dash' => 'Le champ :attribute doit contenir uniquement des lettres, des chiffres et des tirets.',
'alpha_num' => 'Le champ :attribute doit contenir uniquement des chiffres et des lettres.',
'array' => 'Le champ :attribute doit être un tableau.',
'before' => 'Le champ :attribute doit être une date antérieure au :date.',
'accepted' => 'Le champ :attribute doit être accepté.',
'active_url' => 'Le champ :attribute n\'est pas une URL valide.',
'after' => 'Le champ :attribute doit être une date postérieure au :date.',
'after_or_equal' => 'Le champ :attribute doit être une date postérieure ou égale au :date.',
'alpha' => 'Le champ :attribute doit contenir uniquement des lettres.',
'alpha_dash' => 'Le champ :attribute doit contenir uniquement des lettres, des chiffres et des tirets.',
'alpha_num' => 'Le champ :attribute doit contenir uniquement des chiffres et des lettres.',
'array' => 'Le champ :attribute doit être un tableau.',
'before' => 'Le champ :attribute doit être une date antérieure au :date.',
'before_or_equal' => 'Le champ :attribute doit être une date antérieure ou égale au :date.',
'between' => [
'between' => [
'numeric' => 'La valeur de :attribute doit être comprise entre :min et :max.',
'file' => 'La taille du fichier de :attribute doit être comprise entre :min et :max kilo-octets.',
'string' => 'Le texte :attribute doit contenir entre :min et :max caractères.',
'array' => 'Le tableau :attribute doit contenir entre :min et :max éléments.',
'file' => 'La taille du fichier de :attribute doit être comprise entre :min et :max kilo-octets.',
'string' => 'Le texte :attribute doit contenir entre :min et :max caractères.',
'array' => 'Le tableau :attribute doit contenir entre :min et :max éléments.',
],
'boolean' => 'Le champ :attribute doit être vrai ou faux.',
'confirmed' => 'Le champ de confirmation :attribute ne correspond pas.',
'date' => "Le champ :attribute n'est pas une date valide.",
'date_equals' => 'Le champ :attribute doit être une date égale à :date.',
'date_format' => 'Le champ :attribute ne correspond pas au format :format.',
'different' => 'Les champs :attribute et :other doivent être différents.',
'digits' => 'Le champ :attribute doit contenir :digits chiffres.',
'boolean' => 'Le champ :attribute doit être vrai ou faux.',
'confirmed' => 'Le champ de confirmation :attribute ne correspond pas.',
'date' => 'Le champ :attribute n\'est pas une date valide.',
'date_equals' => 'Le champ :attribute doit être une date égale à :date.',
'date_format' => 'Le champ :attribute ne correspond pas au format :format.',
'different' => 'Les champs :attribute et :other doivent être différents.',
'digits' => 'Le champ :attribute doit contenir :digits chiffres.',
'digits_between' => 'Le champ :attribute doit contenir entre :min et :max chiffres.',
'dimensions' => "La taille de l'image :attribute n'est pas conforme.",
'distinct' => 'Le champ :attribute a une valeur en double.',
'email' => 'Le champ :attribute doit être une adresse email valide.',
'ends_with' => 'Le champ :attribute doit se terminer par une des valeurs suivantes : :values',
'exists' => 'Le champ :attribute sélectionné est invalide.',
'file' => 'Le champ :attribute doit être un fichier.',
'filled' => 'Le champ :attribute doit avoir une valeur.',
'gt' => [
'dimensions' => 'La taille de l\'image :attribute n\'est pas conforme.',
'distinct' => 'Le champ :attribute a une valeur en double.',
'email' => 'Le champ :attribute doit être une adresse email valide.',
'ends_with' => 'Le champ :attribute doit se terminer par une des valeurs suivantes : :values',
'exists' => 'Le champ :attribute sélectionné est invalide.',
'file' => 'Le champ :attribute doit être un fichier.',
'filled' => 'Le champ :attribute doit avoir une valeur.',
'gt' => [
'numeric' => 'La valeur de :attribute doit être supérieure à :value.',
'file' => 'La taille du fichier de :attribute doit être supérieure à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir plus de :value caractères.',
'array' => 'Le tableau :attribute doit contenir plus de :value éléments.',
'file' => 'La taille du fichier de :attribute doit être supérieure à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir plus de :value caractères.',
'array' => 'Le tableau :attribute doit contenir plus de :value éléments.',
],
'gte' => [
'numeric' => 'La valeur de :attribute doit être supérieure ou égale à :value.',
'file' => 'La taille du fichier de :attribute doit être supérieure ou égale à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir au moins :value caractères.',
'array' => 'Le tableau :attribute doit contenir au moins :value éléments.',
'file' => 'La taille du fichier de :attribute doit être supérieure ou égale à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir au moins :value caractères.',
'array' => 'Le tableau :attribute doit contenir au moins :value éléments.',
],
'image' => 'Le champ :attribute doit être une image.',
'in' => 'Le champ :attribute est invalide.',
'in_array' => "Le champ :attribute n'existe pas dans :other.",
'integer' => 'Le champ :attribute doit être un entier.',
'ip' => 'Le champ :attribute doit être une adresse IP valide.',
'ipv4' => 'Le champ :attribute doit être une adresse IPv4 valide.',
'ipv6' => 'Le champ :attribute doit être une adresse IPv6 valide.',
'json' => 'Le champ :attribute doit être un document JSON valide.',
'lt' => [
'image' => 'Le champ :attribute doit être une image.',
'in' => 'Le champ :attribute est invalide.',
'in_array' => 'Le champ :attribute n\'existe pas dans :other.',
'integer' => 'Le champ :attribute doit être un entier.',
'ip' => 'Le champ :attribute doit être une adresse IP valide.',
'ipv4' => 'Le champ :attribute doit être une adresse IPv4 valide.',
'ipv6' => 'Le champ :attribute doit être une adresse IPv6 valide.',
'json' => 'Le champ :attribute doit être un document JSON valide.',
'lt' => [
'numeric' => 'La valeur de :attribute doit être inférieure à :value.',
'file' => 'La taille du fichier de :attribute doit être inférieure à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir moins de :value caractères.',
'array' => 'Le tableau :attribute doit contenir moins de :value éléments.',
'file' => 'La taille du fichier de :attribute doit être inférieure à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir moins de :value caractères.',
'array' => 'Le tableau :attribute doit contenir moins de :value éléments.',
],
'lte' => [
'numeric' => 'La valeur de :attribute doit être inférieure ou égale à :value.',
'file' => 'La taille du fichier de :attribute doit être inférieure ou égale à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir au plus :value caractères.',
'array' => 'Le tableau :attribute doit contenir au plus :value éléments.',
'file' => 'La taille du fichier de :attribute doit être inférieure ou égale à :value kilo-octets.',
'string' => 'Le texte :attribute doit contenir au plus :value caractères.',
'array' => 'Le tableau :attribute doit contenir au plus :value éléments.',
],
'max' => [
'numeric' => 'La valeur de :attribute ne peut être supérieure à :max.',
'file' => 'La taille du fichier de :attribute ne peut pas dépasser :max kilo-octets.',
'string' => 'Le texte de :attribute ne peut contenir plus de :max caractères.',
'array' => 'Le tableau :attribute ne peut contenir plus de :max éléments.',
'file' => 'La taille du fichier de :attribute ne peut pas dépasser :max kilo-octets.',
'string' => 'Le texte de :attribute ne peut contenir plus de :max caractères.',
'array' => 'Le tableau :attribute ne peut contenir plus de :max éléments.',
],
'mimes' => 'Le champ :attribute doit être un fichier de type : :values.',
'mimes' => 'Le champ :attribute doit être un fichier de type : :values.',
'mimetypes' => 'Le champ :attribute doit être un fichier de type : :values.',
'min' => [
'min' => [
'numeric' => 'La valeur de :attribute doit être supérieure ou égale à :min.',
'file' => 'La taille du fichier de :attribute doit être supérieure à :min kilo-octets.',
'string' => 'Le texte :attribute doit contenir au moins :min caractères.',
'array' => 'Le tableau :attribute doit contenir au moins :min éléments.',
'file' => 'La taille du fichier de :attribute doit être supérieure à :min kilo-octets.',
'string' => 'Le texte :attribute doit contenir au moins :min caractères.',
'array' => 'Le tableau :attribute doit contenir au moins :min éléments.',
],
'not_in' => "Le champ :attribute sélectionné n'est pas valide.",
'not_regex' => "Le format du champ :attribute n'est pas valide.",
'numeric' => 'Le champ :attribute doit contenir un nombre.',
'password' => 'Le mot de passe est incorrect',
'present' => 'Le champ :attribute doit être présent.',
'regex' => 'Le format du champ :attribute est invalide.',
'required' => 'Le champ :attribute est obligatoire.',
'required_if' => 'Le champ :attribute est obligatoire quand la valeur de :other est :value.',
'required_unless' => 'Le champ :attribute est obligatoire sauf si :other est :values.',
'required_with' => 'Le champ :attribute est obligatoire quand :values est présent.',
'required_with_all' => 'Le champ :attribute est obligatoire quand :values sont présents.',
'required_without' => "Le champ :attribute est obligatoire quand :values n'est pas présent.",
'required_without_all' => "Le champ :attribute est requis quand aucun de :values n'est présent.",
'same' => 'Les champs :attribute et :other doivent être identiques.',
'size' => [
'not_in' => 'Le champ :attribute sélectionné n\'est pas valide.',
'not_regex' => 'Le format du champ :attribute n\'est pas valide.',
'numeric' => 'Le champ :attribute doit contenir un nombre.',
'password' => 'Le mot de passe est incorrect',
'present' => 'Le champ :attribute doit être présent.',
'regex' => 'Le format du champ :attribute est invalide.',
'required' => 'Le champ :attribute est obligatoire.',
'required_if' => 'Le champ :attribute est obligatoire quand la valeur de :other est :value.',
'required_unless' => 'Le champ :attribute est obligatoire sauf si :other est :values.',
'required_with' => 'Le champ :attribute est obligatoire quand :values est présent.',
'required_with_all' => 'Le champ :attribute est obligatoire quand :values sont présents.',
'required_without' => 'Le champ :attribute est obligatoire quand :values n\'est pas présent.',
'required_without_all' => 'Le champ :attribute est requis quand aucun de :values n\'est présent.',
'same' => 'Les champs :attribute et :other doivent être identiques.',
'size' => [
'numeric' => 'La valeur de :attribute doit être :size.',
'file' => 'La taille du fichier de :attribute doit être de :size kilo-octets.',
'string' => 'Le texte de :attribute doit contenir :size caractères.',
'array' => 'Le tableau :attribute doit contenir :size éléments.',
'file' => 'La taille du fichier de :attribute doit être de :size kilo-octets.',
'string' => 'Le texte de :attribute doit contenir :size caractères.',
'array' => 'Le tableau :attribute doit contenir :size éléments.',
],
'starts_with' => 'Le champ :attribute doit commencer avec une des valeurs suivantes : :values',
'string' => 'Le champ :attribute doit être une chaîne de caractères.',
'timezone' => 'Le champ :attribute doit être un fuseau horaire valide.',
'unique' => 'La valeur du champ :attribute est déjà utilisée.',
'uploaded' => "Le fichier du champ :attribute n'a pu être téléversé.",
'url' => "Le format de l'URL de :attribute n'est pas valide.",
'uuid' => 'Le champ :attribute doit être un UUID valide',
'string' => 'Le champ :attribute doit être une chaîne de caractères.',
'timezone' => 'Le champ :attribute doit être un fuseau horaire valide.',
'unique' => 'La valeur du champ :attribute est déjà utilisée.',
'uploaded' => 'Le fichier du champ :attribute n\'a pu être téléversé.',
'url' => 'Le format de l\'URL de :attribute n\'est pas valide.',
'uuid' => 'Le champ :attribute doit être un UUID valide',
/*
|--------------------------------------------------------------------------
@ -129,9 +130,6 @@
*/
'custom' => [
'attribute-name' => [
'rule-name' => 'custom-message',
],
'icon' => [
'image' => 'Les formats acceptés sont jpeg, png, bmp, gif, svg, or webp',
],

View File

@ -0,0 +1,57 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => 'Credenziali non valide.',
'throttle' => 'Troppi tentativi di accesso. Riprova tra :seconds secondi.',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',
],
'forms' => [
'name' => 'Name',
'login' => 'Login',
'email' => 'Email',
'password' => 'Password',
'confirm_password' => 'Confirm password',
'confirm_new_password' => 'Confirm new password',
'dont_have_account_yet' => 'Don\'t have your account yet?',
'already_register' => 'Already registered?',
'password_do_not_match' => 'Password do not match',
'forgot_your_password' => 'Forgot your password?',
'request_password_reset' => 'Request a password reset',
'reset_password' => 'Reset password',
'no_reset_password_in_demo' => 'No reset in Demo mode',
'new_password' => 'New password',
'current_password' => [
'label' => 'Current password',
'help' => 'Fill in your current password to confirm that it\'s you'
],
'change_password' => 'Change password',
'send_password_reset_link' => 'Send password reset link',
'change_your_password' => 'Change your password',
'password_successfully_changed' => 'Password successfully changed ',
'edit_account' => 'Edit account',
'profile_saved' => 'Profile successfully updated!',
'welcome_to_demo_app_use_those_credentials' => 'Welcome to the 2FAuth demo.<br><br>You can connect using the email address <strong>demo@2fauth.app</strong> and the password <strong>demo</demo>',
],
];

View File

@ -0,0 +1,27 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'cancel' => 'Cancel',
'update' => 'Update',
'copy_to_clipboard' => 'Copy to clipboard',
'copied_to_clipboard' => 'Copied to clipboard',
'profile' => 'Profile',
'edit' => 'Edit',
'delete' => 'Delete',
'save' => 'Save',
'close' => 'Close',
'demo_do_not_post_sensitive_data' => 'This is a demo app, do not post any sensitive data',
'selected' => 'selected',
];

View File

@ -0,0 +1,28 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'resource_not_found' => 'Resource not found',
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],
'something_wrong_with_server' => 'Something is wrong with your server',
'Unable_to_decrypt_uri' => 'Unable to decrypt uri',
'wrong_current_password' => 'Wrong current password, nothing has changed'
];

View File

@ -0,0 +1,15 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Language names
|--------------------------------------------------------------------------
|
|
*/
'en' => 'English',
'fr' => 'French',
];

View File

@ -0,0 +1,19 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => '&laquo; Precedente',
'next' => 'Successivo &raquo;',
];

View File

@ -0,0 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
// Laravel
'reset' => 'La password è stata reimpostata!',
'sent' => 'Ti abbiamo inviato una email con il link per il reset della password!',
'throttled' => 'Per favore, attendi prima di riprovare.',
'token' => 'Questo token di reset della password non è valido.',
'user' => "Non riusciamo a trovare un utente con questo indirizzo email.",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -0,0 +1,71 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Settings Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'settings' => 'Settings',
'account' => 'Account',
'password' => 'Password',
'options' => 'Options',
'confirm' => [
],
'general' => 'General',
'security' => 'Security',
'advanced' => 'Advanced',
'forms' => [
'edit_settings' => 'Edit settings',
'setting_saved' => 'Settings saved',
'language' => [
'label' => 'Language',
'help' => 'Change the language used to translate the app interface.'
],
'show_token_as_dot' => [
'label' => 'Show generated tokens as dot',
'help' => 'Replace generated token caracters with *** to ensure confidentiality. Do not affect the copy/paste feature.'
],
'close_token_on_copy' => [
'label' => 'Close token after copy',
'help' => 'Automatically close the popup showing the generated token after it has been copied'
],
'use_basic_qrcode_reader' => [
'label' => 'Use basic qrcode reader',
'help' => 'If you experiences issues when capturing qrCodes enables this option to switch to a more basic but more reliable qrcode reader'
],
'display_mode' => [
'label' => 'Display mode',
'help' => 'Choose whether you want accounts to be displayed as a list or as a grid'
],
'grid' => 'Grid',
'list' => 'List',
'show_accounts_icons' => [
'label' => 'Show icons',
'help' => 'Show icons accounts in the main view'
],
'auto_lock' => [
'label' => 'Auto lock',
'help' => 'Log out the user automatically in case of inactivity'
],
'never' => 'Never',
'on_token_copy' => 'On security code copy',
'1_minutes' => 'After 1 minute',
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],
];

View File

@ -0,0 +1,69 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'service' => 'Service',
'account' => 'Account',
'icon' => 'Icon',
'new' => 'New',
'no_account_here' => 'No 2FA here!',
'add_first_account' => 'Add your first account',
'use_full_form' => 'Or use the full form',
'add_one' => 'Add one',
'manage' => 'Manage',
'done' => 'Done',
'forms' => [
'service' => [
'placeholder' => 'example.com',
],
'account' => [
'placeholder' => 'John DOE',
],
'new_account' => 'New account',
'edit_account' => 'Edit account',
'otp_uri' => 'OTP Uri',
'hotp_counter' => 'HOTP Counter',
'scan_qrcode' => 'Scan a qrcode',
'use_qrcode' => [
'val' => 'Use a qrcode',
'title' => 'Use a QR code to fill the form magically',
],
'unlock' => [
'val' => 'Unlock',
'title' => 'Unlock it (at your own risk)',
],
'lock' => [
'val' => 'Lock',
'title' => 'Lock it',
],
'choose_image' => 'Choose an image…',
'create' => 'Create',
'save' => 'Save',
'test' => 'Test',
],
'stream' => [
'need_grant_permission' => 'You need to grant camera access permission',
'not_readable' => 'Fail to load scanner. Is the camera already in use?',
'no_cam_on_device' => 'No camera on this device',
'secured_context_required' => 'Secure context required (HTTPS or localhost)',
'https_required' => 'HTTPS required for camera streaming',
'camera_not_suitable' => 'Installed cameras are not suitable',
'stream_api_not_supported' => 'Stream API is not supported in this browser'
],
'confirm' => [
'delete' => 'Are you sure you want to delete this account?',
'cancel' => 'The account will be lost. Are you sure?'
],
];

View File

@ -0,0 +1,160 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => ':attribute deve essere accettato.',
'active_url' => ':attribute non è un URL valido.',
'after' => ':attribute deve essere una data successiva al :date.',
'after_or_equal' => ':attribute deve essere una data successiva o uguale al :date.',
'alpha' => ':attribute può contenere solo lettere.',
'alpha_dash' => ':attribute può contenere solo lettere, numeri e trattini.',
'alpha_num' => ':attribute può contenere solo lettere e numeri.',
'array' => ':attribute deve essere un array.',
'before' => ':attribute deve essere una data precedente al :date.',
'before_or_equal' => ':attribute deve essere una data precedente o uguale al :date.',
'between' => [
'numeric' => ':attribute deve trovarsi tra :min - :max.',
'file' => ':attribute deve trovarsi tra :min - :max kilobyte.',
'string' => ':attribute deve trovarsi tra :min - :max caratteri.',
'array' => ':attribute deve avere tra :min - :max elementi.',
],
'boolean' => 'Il campo :attribute deve essere vero o falso.',
'confirmed' => 'Il campo di conferma per :attribute non coincide.',
'date' => ':attribute non è una data valida.',
'date_equals' => ':attribute deve essere una data e uguale a :date.',
'date_format' => ':attribute non coincide con il formato :format.',
'different' => ':attribute e :other devono essere differenti.',
'digits' => ':attribute deve essere di :digits cifre.',
'digits_between' => ':attribute deve essere tra :min e :max cifre.',
'dimensions' => 'Le dimensioni dell\'immagine di :attribute non sono valide.',
'distinct' => ':attribute contiene un valore duplicato.',
'email' => ':attribute non è valido.',
'ends_with' => ':attribute deve finire con uno dei seguenti valori: :values',
'exists' => ':attribute selezionato non è valido.',
'file' => ':attribute deve essere un file.',
'filled' => 'Il campo :attribute deve contenere un valore.',
'gt' => [
'numeric' => ':attribute deve essere maggiore di :value.',
'file' => ':attribute deve essere maggiore di :value kilobyte.',
'string' => ':attribute deve contenere più di :value caratteri.',
'array' => ':attribute deve contenere più di :value elementi.',
],
'gte' => [
'numeric' => ':attribute deve essere uguale o maggiore di :value.',
'file' => ':attribute deve essere uguale o maggiore di :value kilobyte.',
'string' => ':attribute deve contenere un numero di caratteri uguale o maggiore di :value.',
'array' => ':attribute deve contenere un numero di elementi uguale o maggiore di :value.',
],
'image' => ':attribute deve essere un\'immagine.',
'in' => ':attribute selezionato non è valido.',
'in_array' => 'Il valore del campo :attribute non esiste in :other.',
'integer' => ':attribute deve essere un numero intero.',
'ip' => ':attribute deve essere un indirizzo IP valido.',
'ipv4' => ':attribute deve essere un indirizzo IPv4 valido.',
'ipv6' => ':attribute deve essere un indirizzo IPv6 valido.',
'json' => ':attribute deve essere una stringa JSON valida.',
'lt' => [
'numeric' => ':attribute deve essere minore di :value.',
'file' => ':attribute deve essere minore di :value kilobyte.',
'string' => ':attribute deve contenere meno di :value caratteri.',
'array' => ':attribute deve contenere meno di :value elementi.',
],
'lte' => [
'numeric' => ':attribute deve essere minore o uguale a :value.',
'file' => ':attribute deve essere minore o uguale a :value kilobyte.',
'string' => ':attribute deve contenere un numero di caratteri minore o uguale a :value.',
'array' => ':attribute deve contenere un numero di elementi minore o uguale a :value.',
],
'max' => [
'numeric' => ':attribute non può essere superiore a :max.',
'file' => ':attribute non può essere superiore a :max kilobyte.',
'string' => ':attribute non può contenere più di :max caratteri.',
'array' => ':attribute non può avere più di :max elementi.',
],
'mimes' => ':attribute deve essere del tipo: :values.',
'mimetypes' => ':attribute deve essere del tipo: :values.',
'min' => [
'numeric' => ':attribute deve essere almeno :min.',
'file' => ':attribute deve essere almeno di :min kilobyte.',
'string' => ':attribute deve contenere almeno :min caratteri.',
'array' => ':attribute deve avere almeno :min elementi.',
],
'not_in' => 'Il valore selezionato per :attribute non è valido.',
'not_regex' => 'Il formato di :attribute non è valido.',
'numeric' => ':attribute deve essere un numero.',
'password' => 'Il campo :attribute non è corretto.',
'present' => 'Il campo :attribute deve essere presente.',
'regex' => 'Il formato del campo :attribute non è valido.',
'required' => 'Il campo :attribute è richiesto.',
'required_if' => 'Il campo :attribute è richiesto quando :other è :value.',
'required_unless' => 'Il campo :attribute è richiesto a meno che :other sia in :values.',
'required_with' => 'Il campo :attribute è richiesto quando :values è presente.',
'required_with_all' => 'Il campo :attribute è richiesto quando :values sono presenti.',
'required_without' => 'Il campo :attribute è richiesto quando :values non è presente.',
'required_without_all' => 'Il campo :attribute è richiesto quando nessuno di :values è presente.',
'same' => ':attribute e :other devono coincidere.',
'size' => [
'numeric' => ':attribute deve essere :size.',
'file' => ':attribute deve essere :size kilobyte.',
'string' => ':attribute deve contenere :size caratteri.',
'array' => ':attribute deve contenere :size elementi.',
],
'starts_with' => ':attribute deve iniziare con uno dei seguenti: :values',
'string' => ':attribute deve essere una stringa.',
'timezone' => ':attribute deve essere una zona valida.',
'unique' => ':attribute è stato già utilizzato.',
'uploaded' => ':attribute non è stato caricato.',
'url' => 'Il formato del campo :attribute non è valido.',
'uuid' => ':attribute deve essere un UUID valido.',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'qrcode' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'uri' => [
'starts_with' => 'Only valid OTP uri are supported',
],
'email' => [
'exists' => 'No account found using this email',
]
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
];

View File

@ -0,0 +1,57 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => '認証情報と一致するレコードがありません。',
'throttle' => 'ログインの試行回数が多すぎます。:seconds 秒後にお試しください。',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',
],
'forms' => [
'name' => 'Name',
'login' => 'Login',
'email' => 'Email',
'password' => 'Password',
'confirm_password' => 'Confirm password',
'confirm_new_password' => 'Confirm new password',
'dont_have_account_yet' => 'Don\'t have your account yet?',
'already_register' => 'Already registered?',
'password_do_not_match' => 'Password do not match',
'forgot_your_password' => 'Forgot your password?',
'request_password_reset' => 'Request a password reset',
'reset_password' => 'Reset password',
'no_reset_password_in_demo' => 'No reset in Demo mode',
'new_password' => 'New password',
'current_password' => [
'label' => 'Current password',
'help' => 'Fill in your current password to confirm that it\'s you'
],
'change_password' => 'Change password',
'send_password_reset_link' => 'Send password reset link',
'change_your_password' => 'Change your password',
'password_successfully_changed' => 'Password successfully changed ',
'edit_account' => 'Edit account',
'profile_saved' => 'Profile successfully updated!',
'welcome_to_demo_app_use_those_credentials' => 'Welcome to the 2FAuth demo.<br><br>You can connect using the email address <strong>demo@2fauth.app</strong> and the password <strong>demo</demo>',
],
];

View File

@ -0,0 +1,27 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'cancel' => 'Cancel',
'update' => 'Update',
'copy_to_clipboard' => 'Copy to clipboard',
'copied_to_clipboard' => 'Copied to clipboard',
'profile' => 'Profile',
'edit' => 'Edit',
'delete' => 'Delete',
'save' => 'Save',
'close' => 'Close',
'demo_do_not_post_sensitive_data' => 'This is a demo app, do not post any sensitive data',
'selected' => 'selected',
];

View File

@ -0,0 +1,28 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'resource_not_found' => 'Resource not found',
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],
'something_wrong_with_server' => 'Something is wrong with your server',
'Unable_to_decrypt_uri' => 'Unable to decrypt uri',
'wrong_current_password' => 'Wrong current password, nothing has changed'
];

View File

@ -0,0 +1,15 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Language names
|--------------------------------------------------------------------------
|
|
*/
'en' => 'English',
'fr' => 'French',
];

View File

@ -0,0 +1,19 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => '&laquo; 前',
'next' => '次 &raquo;',
];

View File

@ -0,0 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
// Laravel
'reset' => 'パスワードをリセットしました。',
'sent' => 'パスワードリマインダーを送信しました。',
'throttled' => '時間を置いて再度お試しください。',
'token' => 'このパスワードリセットトークンは無効です。',
'user' => "このメールアドレスに一致するユーザーを見つけることが出来ませんでした。",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -0,0 +1,71 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Settings Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'settings' => 'Settings',
'account' => 'Account',
'password' => 'Password',
'options' => 'Options',
'confirm' => [
],
'general' => 'General',
'security' => 'Security',
'advanced' => 'Advanced',
'forms' => [
'edit_settings' => 'Edit settings',
'setting_saved' => 'Settings saved',
'language' => [
'label' => 'Language',
'help' => 'Change the language used to translate the app interface.'
],
'show_token_as_dot' => [
'label' => 'Show generated tokens as dot',
'help' => 'Replace generated token caracters with *** to ensure confidentiality. Do not affect the copy/paste feature.'
],
'close_token_on_copy' => [
'label' => 'Close token after copy',
'help' => 'Automatically close the popup showing the generated token after it has been copied'
],
'use_basic_qrcode_reader' => [
'label' => 'Use basic qrcode reader',
'help' => 'If you experiences issues when capturing qrCodes enables this option to switch to a more basic but more reliable qrcode reader'
],
'display_mode' => [
'label' => 'Display mode',
'help' => 'Choose whether you want accounts to be displayed as a list or as a grid'
],
'grid' => 'Grid',
'list' => 'List',
'show_accounts_icons' => [
'label' => 'Show icons',
'help' => 'Show icons accounts in the main view'
],
'auto_lock' => [
'label' => 'Auto lock',
'help' => 'Log out the user automatically in case of inactivity'
],
'never' => 'Never',
'on_token_copy' => 'On security code copy',
'1_minutes' => 'After 1 minute',
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],
];

View File

@ -0,0 +1,69 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'service' => 'Service',
'account' => 'Account',
'icon' => 'Icon',
'new' => 'New',
'no_account_here' => 'No 2FA here!',
'add_first_account' => 'Add your first account',
'use_full_form' => 'Or use the full form',
'add_one' => 'Add one',
'manage' => 'Manage',
'done' => 'Done',
'forms' => [
'service' => [
'placeholder' => 'example.com',
],
'account' => [
'placeholder' => 'John DOE',
],
'new_account' => 'New account',
'edit_account' => 'Edit account',
'otp_uri' => 'OTP Uri',
'hotp_counter' => 'HOTP Counter',
'scan_qrcode' => 'Scan a qrcode',
'use_qrcode' => [
'val' => 'Use a qrcode',
'title' => 'Use a QR code to fill the form magically',
],
'unlock' => [
'val' => 'Unlock',
'title' => 'Unlock it (at your own risk)',
],
'lock' => [
'val' => 'Lock',
'title' => 'Lock it',
],
'choose_image' => 'Choose an image…',
'create' => 'Create',
'save' => 'Save',
'test' => 'Test',
],
'stream' => [
'need_grant_permission' => 'You need to grant camera access permission',
'not_readable' => 'Fail to load scanner. Is the camera already in use?',
'no_cam_on_device' => 'No camera on this device',
'secured_context_required' => 'Secure context required (HTTPS or localhost)',
'https_required' => 'HTTPS required for camera streaming',
'camera_not_suitable' => 'Installed cameras are not suitable',
'stream_api_not_supported' => 'Stream API is not supported in this browser'
],
'confirm' => [
'delete' => 'Are you sure you want to delete this account?',
'cancel' => 'The account will be lost. Are you sure?'
],
];

View File

@ -0,0 +1,160 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => ':attributeを承認してください。',
'active_url' => ':attributeは、有効なURLではありません。',
'after' => ':attributeには、:dateより後の日付を指定してください。',
'after_or_equal' => ':attributeには、:date以降の日付を指定してください。',
'alpha' => ':attributeには、アルファベッドのみ使用できます。',
'alpha_dash' => ':attributeには、英数字(\'A-Z\',\'a-z\',\'0-9\')とハイフンと下線(\'-\',\'_\')が使用できます。',
'alpha_num' => ':attributeには、英数字(\'A-Z\',\'a-z\',\'0-9\')が使用できます。',
'array' => ':attributeには、配列を指定してください。',
'before' => ':attributeには、:dateより前の日付を指定してください。',
'before_or_equal' => ':attributeには、:date以前の日付を指定してください。',
'between' => [
'numeric' => ':attributeには、:minから、:maxまでの数字を指定してください。',
'file' => ':attributeには、:min KBから:max KBまでのサイズのファイルを指定してください。',
'string' => ':attributeは、:min文字から:max文字にしてください。',
'array' => ':attributeの項目は、:min個から:max個にしてください。',
],
'boolean' => ':attributeには、\'true\'か\'false\'を指定してください。',
'confirmed' => ':attributeと:attribute確認が一致しません。',
'date' => ':attributeは、正しい日付ではありません。',
'date_equals' => ':attributeは:dateに等しい日付でなければなりません。',
'date_format' => ':attributeの形式は、\':format\'と合いません。',
'different' => ':attributeと:otherには、異なるものを指定してください。',
'digits' => ':attributeは、:digits桁にしてください。',
'digits_between' => ':attributeは、:min桁から:max桁にしてください。',
'dimensions' => ':attributeの画像サイズが無効です',
'distinct' => ':attributeの値が重複しています。',
'email' => ':attributeは、有効なメールアドレス形式で指定してください。',
'ends_with' => ':attributeは、次のうちのいずれかで終わらなければなりません。: :values',
'exists' => '選択された:attributeは、有効ではありません。',
'file' => ':attributeはファイルでなければいけません。',
'filled' => ':attributeは必須です。',
'gt' => [
'numeric' => ':attributeは、:valueより大きくなければなりません。',
'file' => ':attributeは、:value KBより大きくなければなりません。',
'string' => ':attributeは、:value文字より大きくなければなりません。',
'array' => ':attributeの項目数は、:value個より大きくなければなりません。',
],
'gte' => [
'numeric' => ':attributeは、:value以上でなければなりません。',
'file' => ':attributeは、:value KB以上でなければなりません。',
'string' => ':attributeは、:value文字以上でなければなりません。',
'array' => ':attributeの項目数は、:value個以上でなければなりません。',
],
'image' => ':attributeには、画像を指定してください。',
'in' => '選択された:attributeは、有効ではありません。',
'in_array' => ':attributeが:otherに存在しません。',
'integer' => ':attributeには、整数を指定してください。',
'ip' => ':attributeには、有効なIPアドレスを指定してください。',
'ipv4' => ':attributeはIPv4アドレスを指定してください。',
'ipv6' => ':attributeはIPv6アドレスを指定してください。',
'json' => ':attributeには、有効なJSON文字列を指定してください。',
'lt' => [
'numeric' => ':attributeは、:valueより小さくなければなりません。',
'file' => ':attributeは、:value KBより小さくなければなりません。',
'string' => ':attributeは、:value文字より小さくなければなりません。',
'array' => ':attributeの項目数は、:value個より小さくなければなりません。',
],
'lte' => [
'numeric' => ':attributeは、:value以下でなければなりません。',
'file' => ':attributeは、:value KB以下でなければなりません。',
'string' => ':attributeは、:value文字以下でなければなりません。',
'array' => ':attributeの項目数は、:value個以下でなければなりません。',
],
'max' => [
'numeric' => ':attributeには、:max以下の数字を指定してください。',
'file' => ':attributeには、:max KB以下のファイルを指定してください。',
'string' => ':attributeは、:max文字以下にしてください。',
'array' => ':attributeの項目は、:max個以下にしてください。',
],
'mimes' => ':attributeには、:valuesタイプのファイルを指定してください。',
'mimetypes' => ':attributeには、:valuesタイプのファイルを指定してください。',
'min' => [
'numeric' => ':attributeには、:min以上の数字を指定してください。',
'file' => ':attributeには、:min KB以上のファイルを指定してください。',
'string' => ':attributeは、:min文字以上にしてください。',
'array' => ':attributeの項目は、:min個以上にしてください。',
],
'not_in' => '選択された:attributeは、有効ではありません。',
'not_regex' => ':attributeの形式が無効です。',
'numeric' => ':attributeには、数字を指定してください。',
'password' => 'パスワードが正しくありません。',
'present' => ':attributeが存在している必要があります。',
'regex' => ':attributeには、有効な正規表現を指定してください。',
'required' => ':attributeは、必ず指定してください。',
'required_if' => ':otherが:valueの場合、:attributeを指定してください。',
'required_unless' => ':otherが:values以外の場合、:attributeを指定してください。',
'required_with' => ':valuesが指定されている場合、:attributeも指定してください。',
'required_with_all' => ':valuesが全て指定されている場合、:attributeも指定してください。',
'required_without' => ':valuesが指定されていない場合、:attributeを指定してください。',
'required_without_all' => ':valuesが全て指定されていない場合、:attributeを指定してください。',
'same' => ':attributeと:otherが一致しません。',
'size' => [
'numeric' => ':attributeには、:sizeを指定してください。',
'file' => ':attributeには、:size KBのファイルを指定してください。',
'string' => ':attributeは、:size文字にしてください。',
'array' => ':attributeの項目は、:size個にしてください。',
],
'starts_with' => ':attributeは、次のいずれかで始まる必要があります。:values',
'string' => ':attributeには、文字を指定してください。',
'timezone' => ':attributeには、有効なタイムゾーンを指定してください。',
'unique' => '指定の:attributeは既に使用されています。',
'uploaded' => ':attributeのアップロードに失敗しました。',
'url' => ':attributeは、有効なURL形式で指定してください。',
'uuid' => ':attributeは、有効なUUIDでなければなりません。',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'qrcode' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'uri' => [
'starts_with' => 'Only valid OTP uri are supported',
],
'email' => [
'exists' => 'No account found using this email',
]
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
];

View File

@ -0,0 +1,57 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => 'As credenciais indicadas não coincidem com as registadas no sistema.',
'throttle' => 'O número limite de tentativas de login foi atingido. Por favor tente novamente dentro de :seconds segundos.',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',
],
'forms' => [
'name' => 'Name',
'login' => 'Login',
'email' => 'Email',
'password' => 'Password',
'confirm_password' => 'Confirm password',
'confirm_new_password' => 'Confirm new password',
'dont_have_account_yet' => 'Don\'t have your account yet?',
'already_register' => 'Already registered?',
'password_do_not_match' => 'Password do not match',
'forgot_your_password' => 'Forgot your password?',
'request_password_reset' => 'Request a password reset',
'reset_password' => 'Reset password',
'no_reset_password_in_demo' => 'No reset in Demo mode',
'new_password' => 'New password',
'current_password' => [
'label' => 'Current password',
'help' => 'Fill in your current password to confirm that it\'s you'
],
'change_password' => 'Change password',
'send_password_reset_link' => 'Send password reset link',
'change_your_password' => 'Change your password',
'password_successfully_changed' => 'Password successfully changed ',
'edit_account' => 'Edit account',
'profile_saved' => 'Profile successfully updated!',
'welcome_to_demo_app_use_those_credentials' => 'Welcome to the 2FAuth demo.<br><br>You can connect using the email address <strong>demo@2fauth.app</strong> and the password <strong>demo</demo>',
],
];

View File

@ -0,0 +1,27 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'cancel' => 'Cancel',
'update' => 'Update',
'copy_to_clipboard' => 'Copy to clipboard',
'copied_to_clipboard' => 'Copied to clipboard',
'profile' => 'Profile',
'edit' => 'Edit',
'delete' => 'Delete',
'save' => 'Save',
'close' => 'Close',
'demo_do_not_post_sensitive_data' => 'This is a demo app, do not post any sensitive data',
'selected' => 'selected',
];

View File

@ -0,0 +1,28 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'resource_not_found' => 'Resource not found',
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],
'something_wrong_with_server' => 'Something is wrong with your server',
'Unable_to_decrypt_uri' => 'Unable to decrypt uri',
'wrong_current_password' => 'Wrong current password, nothing has changed'
];

View File

@ -0,0 +1,15 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Language names
|--------------------------------------------------------------------------
|
|
*/
'en' => 'English',
'fr' => 'French',
];

View File

@ -0,0 +1,19 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => '&laquo; Anterior',
'next' => 'Próxima &raquo;',
];

View File

@ -0,0 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
// Laravel
'reset' => 'A palavra-passe foi redefinida!',
'sent' => 'O lembrete para a palavra-passe foi enviado!',
'throttled' => 'Por favor aguarde, antes de tentar novamente.',
'token' => 'Este código de recuperação da palavra-passe é inválido.',
'user' => "Não existe nenhum utilizador com o e-mail indicado.",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -0,0 +1,71 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Settings Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'settings' => 'Settings',
'account' => 'Account',
'password' => 'Password',
'options' => 'Options',
'confirm' => [
],
'general' => 'General',
'security' => 'Security',
'advanced' => 'Advanced',
'forms' => [
'edit_settings' => 'Edit settings',
'setting_saved' => 'Settings saved',
'language' => [
'label' => 'Language',
'help' => 'Change the language used to translate the app interface.'
],
'show_token_as_dot' => [
'label' => 'Show generated tokens as dot',
'help' => 'Replace generated token caracters with *** to ensure confidentiality. Do not affect the copy/paste feature.'
],
'close_token_on_copy' => [
'label' => 'Close token after copy',
'help' => 'Automatically close the popup showing the generated token after it has been copied'
],
'use_basic_qrcode_reader' => [
'label' => 'Use basic qrcode reader',
'help' => 'If you experiences issues when capturing qrCodes enables this option to switch to a more basic but more reliable qrcode reader'
],
'display_mode' => [
'label' => 'Display mode',
'help' => 'Choose whether you want accounts to be displayed as a list or as a grid'
],
'grid' => 'Grid',
'list' => 'List',
'show_accounts_icons' => [
'label' => 'Show icons',
'help' => 'Show icons accounts in the main view'
],
'auto_lock' => [
'label' => 'Auto lock',
'help' => 'Log out the user automatically in case of inactivity'
],
'never' => 'Never',
'on_token_copy' => 'On security code copy',
'1_minutes' => 'After 1 minute',
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],
];

View File

@ -0,0 +1,69 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'service' => 'Service',
'account' => 'Account',
'icon' => 'Icon',
'new' => 'New',
'no_account_here' => 'No 2FA here!',
'add_first_account' => 'Add your first account',
'use_full_form' => 'Or use the full form',
'add_one' => 'Add one',
'manage' => 'Manage',
'done' => 'Done',
'forms' => [
'service' => [
'placeholder' => 'example.com',
],
'account' => [
'placeholder' => 'John DOE',
],
'new_account' => 'New account',
'edit_account' => 'Edit account',
'otp_uri' => 'OTP Uri',
'hotp_counter' => 'HOTP Counter',
'scan_qrcode' => 'Scan a qrcode',
'use_qrcode' => [
'val' => 'Use a qrcode',
'title' => 'Use a QR code to fill the form magically',
],
'unlock' => [
'val' => 'Unlock',
'title' => 'Unlock it (at your own risk)',
],
'lock' => [
'val' => 'Lock',
'title' => 'Lock it',
],
'choose_image' => 'Choose an image…',
'create' => 'Create',
'save' => 'Save',
'test' => 'Test',
],
'stream' => [
'need_grant_permission' => 'You need to grant camera access permission',
'not_readable' => 'Fail to load scanner. Is the camera already in use?',
'no_cam_on_device' => 'No camera on this device',
'secured_context_required' => 'Secure context required (HTTPS or localhost)',
'https_required' => 'HTTPS required for camera streaming',
'camera_not_suitable' => 'Installed cameras are not suitable',
'stream_api_not_supported' => 'Stream API is not supported in this browser'
],
'confirm' => [
'delete' => 'Are you sure you want to delete this account?',
'cancel' => 'The account will be lost. Are you sure?'
],
];

View File

@ -0,0 +1,160 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => 'O campo :attribute deverá ser aceite.',
'active_url' => 'O campo :attribute não contém um URL válido.',
'after' => 'O campo :attribute deverá conter uma data posterior a :date.',
'after_or_equal' => 'O campo :attribute deverá conter uma data posterior ou igual a :date.',
'alpha' => 'O campo :attribute deverá conter apenas letras.',
'alpha_dash' => 'O campo :attribute deverá conter apenas letras, números e traços.',
'alpha_num' => 'O campo :attribute deverá conter apenas letras e números .',
'array' => 'O campo :attribute deverá conter uma coleção de elementos.',
'before' => 'O campo :attribute deverá conter uma data anterior a :date.',
'before_or_equal' => 'O Campo :attribute deverá conter uma data anterior ou igual a :date.',
'between' => [
'numeric' => 'O campo :attribute deverá ter um valor entre :min - :max.',
'file' => 'O campo :attribute deverá ter um tamanho entre :min - :max kilobytes.',
'string' => 'O campo :attribute deverá conter entre :min - :max caracteres.',
'array' => 'O campo :attribute deverá conter entre :min - :max elementos.',
],
'boolean' => 'O campo :attribute deverá conter o valor verdadeiro ou falso.',
'confirmed' => 'A confirmação para o campo :attribute não coincide.',
'date' => 'O campo :attribute não contém uma data válida.',
'date_equals' => 'O campo :attribute tem de ser uma data igual a :date.',
'date_format' => 'A data indicada para o campo :attribute não respeita o formato :format.',
'different' => 'Os campos :attribute e :other deverão conter valores diferentes.',
'digits' => 'O campo :attribute deverá conter :digits caracteres.',
'digits_between' => 'O campo :attribute deverá conter entre :min a :max caracteres.',
'dimensions' => 'O campo :attribute deverá conter uma dimensão de imagem válida.',
'distinct' => 'O campo :attribute contém um valor duplicado.',
'email' => 'O campo :attribute não contém um endereço de e-mail válido.',
'ends_with' => 'O campo :attribute deverá terminar com : :values.',
'exists' => 'O valor selecionado para o campo :attribute é inválido.',
'file' => 'O campo :attribute deverá conter um ficheiro.',
'filled' => 'É obrigatória a indicação de um valor para o campo :attribute.',
'gt' => [
'numeric' => 'O campo :attribute tem de ser maior do que :value.',
'file' => 'O campo :attribute tem de ter mais de :value quilobytes.',
'string' => 'O campo :attribute tem de ter mais de :value caracteres.',
'array' => 'O campo :attribute tem de ter mais de :value itens.',
],
'gte' => [
'numeric' => 'O campo :attribute tem de ser maior ou igual a :value.',
'file' => 'O campo :attribute tem de ter :value quilobytes ou mais.',
'string' => 'O campo :attribute tem de ter :value caracteres ou mais.',
'array' => 'O campo :attribute tem de ter :value itens ou mais.',
],
'image' => 'O campo :attribute deverá conter uma imagem.',
'in' => 'O campo :attribute não contém um valor válido.',
'in_array' => 'O campo :attribute não existe em :other.',
'integer' => 'O campo :attribute deverá conter um número inteiro.',
'ip' => 'O campo :attribute deverá conter um IP válido.',
'ipv4' => 'O campo :attribute deverá conter um IPv4 válido.',
'ipv6' => 'O campo :attribute deverá conter um IPv6 válido.',
'json' => 'O campo :attribute deverá conter um texto JSON válido.',
'lt' => [
'numeric' => 'O campo :attribute tem de ser inferior a :value.',
'file' => 'O campo :attribute tem de ter menos de :value quilobytes.',
'string' => 'O campo :attribute tem de ter menos de :value caracteres.',
'array' => 'O campo :attribute tem de ter menos de :value itens.',
],
'lte' => [
'numeric' => 'O campo :attribute tem de ser inferior ou igual a :value.',
'file' => 'O campo :attribute tem de ter :value quilobytes ou menos.',
'string' => 'O campo :attribute tem de ter :value caracteres ou menos.',
'array' => 'O campo :attribute não pode ter mais de :value itens.',
],
'max' => [
'numeric' => 'O campo :attribute não deverá conter um valor superior a :max.',
'file' => 'O campo :attribute não deverá ter um tamanho superior a :max kilobytes.',
'string' => 'O campo :attribute não deverá conter mais de :max caracteres.',
'array' => 'O campo :attribute não deverá conter mais de :max elementos.',
],
'mimes' => 'O campo :attribute deverá conter um ficheiro do tipo: :values.',
'mimetypes' => 'O campo :attribute deverá conter um ficheiro do tipo: :values.',
'min' => [
'numeric' => 'O campo :attribute deverá ter um valor superior ou igual a :min.',
'file' => 'O campo :attribute deverá ter no mínimo :min kilobytes.',
'string' => 'O campo :attribute deverá conter no mínimo :min caracteres.',
'array' => 'O campo :attribute deverá conter no mínimo :min elementos.',
],
'not_in' => 'O campo :attribute contém um valor inválido.',
'not_regex' => 'O formato de :attribute não é válido',
'numeric' => 'O campo :attribute deverá conter um valor numérico.',
'password' => 'A password está errada.',
'present' => 'O campo :attribute deverá estar presente.',
'regex' => 'O formato do valor para o campo :attribute é inválido.',
'required' => 'É obrigatória a indicação de um valor para o campo :attribute.',
'required_if' => 'É obrigatória a indicação de um valor para o campo :attribute quando o valor do campo :other é igual a :value.',
'required_unless' => 'É obrigatória a indicação de um valor para o campo :attribute a menos que :other esteja presente em :values.',
'required_with' => 'É obrigatória a indicação de um valor para o campo :attribute quando :values está presente.',
'required_with_all' => 'É obrigatória a indicação de um valor para o campo :attribute quando um dos :values está presente.',
'required_without' => 'É obrigatória a indicação de um valor para o campo :attribute quando :values não está presente.',
'required_without_all' => 'É obrigatória a indicação de um valor para o campo :attribute quando nenhum dos :values está presente.',
'same' => 'Os campos :attribute e :other deverão conter valores iguais.',
'size' => [
'numeric' => 'O campo :attribute deverá conter o valor :size.',
'file' => 'O campo :attribute deverá ter o tamanho de :size kilobytes.',
'string' => 'O campo :attribute deverá conter :size caracteres.',
'array' => 'O campo :attribute deverá conter :size elementos.',
],
'starts_with' => 'O campo :attribute tem de começar com um dos valores seguintes: :values',
'string' => 'O campo :attribute deverá conter texto.',
'timezone' => 'O campo :attribute deverá ter um fuso horário válido.',
'unique' => 'O valor indicado para o campo :attribute já se encontra registado.',
'uploaded' => 'O upload do ficheiro :attribute falhou.',
'url' => 'O formato do URL indicado para o campo :attribute é inválido.',
'uuid' => ':attribute tem de ser um UUID válido.',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'qrcode' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'uri' => [
'starts_with' => 'Only valid OTP uri are supported',
],
'email' => [
'exists' => 'No account found using this email',
]
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
];

View File

@ -0,0 +1,57 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => 'Неверное имя пользователя или пароль.',
'throttle' => 'Слишком много попыток входа. Пожалуйста, попробуйте еще раз через :seconds секунд.',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',
],
'forms' => [
'name' => 'Name',
'login' => 'Login',
'email' => 'Email',
'password' => 'Password',
'confirm_password' => 'Confirm password',
'confirm_new_password' => 'Confirm new password',
'dont_have_account_yet' => 'Don\'t have your account yet?',
'already_register' => 'Already registered?',
'password_do_not_match' => 'Password do not match',
'forgot_your_password' => 'Forgot your password?',
'request_password_reset' => 'Request a password reset',
'reset_password' => 'Reset password',
'no_reset_password_in_demo' => 'No reset in Demo mode',
'new_password' => 'New password',
'current_password' => [
'label' => 'Current password',
'help' => 'Fill in your current password to confirm that it\'s you'
],
'change_password' => 'Change password',
'send_password_reset_link' => 'Send password reset link',
'change_your_password' => 'Change your password',
'password_successfully_changed' => 'Password successfully changed ',
'edit_account' => 'Edit account',
'profile_saved' => 'Profile successfully updated!',
'welcome_to_demo_app_use_those_credentials' => 'Welcome to the 2FAuth demo.<br><br>You can connect using the email address <strong>demo@2fauth.app</strong> and the password <strong>demo</demo>',
],
];

View File

@ -0,0 +1,27 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'cancel' => 'Cancel',
'update' => 'Update',
'copy_to_clipboard' => 'Copy to clipboard',
'copied_to_clipboard' => 'Copied to clipboard',
'profile' => 'Profile',
'edit' => 'Edit',
'delete' => 'Delete',
'save' => 'Save',
'close' => 'Close',
'demo_do_not_post_sensitive_data' => 'This is a demo app, do not post any sensitive data',
'selected' => 'selected',
];

View File

@ -0,0 +1,28 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'resource_not_found' => 'Resource not found',
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],
'something_wrong_with_server' => 'Something is wrong with your server',
'Unable_to_decrypt_uri' => 'Unable to decrypt uri',
'wrong_current_password' => 'Wrong current password, nothing has changed'
];

View File

@ -0,0 +1,15 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Language names
|--------------------------------------------------------------------------
|
|
*/
'en' => 'English',
'fr' => 'French',
];

View File

@ -0,0 +1,19 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => '&laquo; Назад',
'next' => 'Вперёд &raquo;',
];

View File

@ -0,0 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
// Laravel
'reset' => 'Ваш пароль был сброшен!',
'sent' => 'Ссылка на сброс пароля была отправлена!',
'throttled' => 'Пожалуйста, подождите перед повторной попыткой.',
'token' => 'Ошибочный код сброса пароля.',
'user' => "Не удалось найти пользователя с указанным электронным адресом.",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -0,0 +1,71 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Settings Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'settings' => 'Settings',
'account' => 'Account',
'password' => 'Password',
'options' => 'Options',
'confirm' => [
],
'general' => 'General',
'security' => 'Security',
'advanced' => 'Advanced',
'forms' => [
'edit_settings' => 'Edit settings',
'setting_saved' => 'Settings saved',
'language' => [
'label' => 'Language',
'help' => 'Change the language used to translate the app interface.'
],
'show_token_as_dot' => [
'label' => 'Show generated tokens as dot',
'help' => 'Replace generated token caracters with *** to ensure confidentiality. Do not affect the copy/paste feature.'
],
'close_token_on_copy' => [
'label' => 'Close token after copy',
'help' => 'Automatically close the popup showing the generated token after it has been copied'
],
'use_basic_qrcode_reader' => [
'label' => 'Use basic qrcode reader',
'help' => 'If you experiences issues when capturing qrCodes enables this option to switch to a more basic but more reliable qrcode reader'
],
'display_mode' => [
'label' => 'Display mode',
'help' => 'Choose whether you want accounts to be displayed as a list or as a grid'
],
'grid' => 'Grid',
'list' => 'List',
'show_accounts_icons' => [
'label' => 'Show icons',
'help' => 'Show icons accounts in the main view'
],
'auto_lock' => [
'label' => 'Auto lock',
'help' => 'Log out the user automatically in case of inactivity'
],
'never' => 'Never',
'on_token_copy' => 'On security code copy',
'1_minutes' => 'After 1 minute',
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],
];

View File

@ -0,0 +1,69 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'service' => 'Service',
'account' => 'Account',
'icon' => 'Icon',
'new' => 'New',
'no_account_here' => 'No 2FA here!',
'add_first_account' => 'Add your first account',
'use_full_form' => 'Or use the full form',
'add_one' => 'Add one',
'manage' => 'Manage',
'done' => 'Done',
'forms' => [
'service' => [
'placeholder' => 'example.com',
],
'account' => [
'placeholder' => 'John DOE',
],
'new_account' => 'New account',
'edit_account' => 'Edit account',
'otp_uri' => 'OTP Uri',
'hotp_counter' => 'HOTP Counter',
'scan_qrcode' => 'Scan a qrcode',
'use_qrcode' => [
'val' => 'Use a qrcode',
'title' => 'Use a QR code to fill the form magically',
],
'unlock' => [
'val' => 'Unlock',
'title' => 'Unlock it (at your own risk)',
],
'lock' => [
'val' => 'Lock',
'title' => 'Lock it',
],
'choose_image' => 'Choose an image…',
'create' => 'Create',
'save' => 'Save',
'test' => 'Test',
],
'stream' => [
'need_grant_permission' => 'You need to grant camera access permission',
'not_readable' => 'Fail to load scanner. Is the camera already in use?',
'no_cam_on_device' => 'No camera on this device',
'secured_context_required' => 'Secure context required (HTTPS or localhost)',
'https_required' => 'HTTPS required for camera streaming',
'camera_not_suitable' => 'Installed cameras are not suitable',
'stream_api_not_supported' => 'Stream API is not supported in this browser'
],
'confirm' => [
'delete' => 'Are you sure you want to delete this account?',
'cancel' => 'The account will be lost. Are you sure?'
],
];

View File

@ -0,0 +1,160 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => 'Вы должны принять :attribute.',
'active_url' => 'Поле :attribute содержит недействительный URL.',
'after' => 'В поле :attribute должна быть дата больше :date.',
'after_or_equal' => 'В поле :attribute должна быть дата больше или равняться :date.',
'alpha' => 'Поле :attribute может содержать только буквы.',
'alpha_dash' => 'Поле :attribute может содержать только буквы, цифры, дефис и нижнее подчеркивание.',
'alpha_num' => 'Поле :attribute может содержать только буквы и цифры.',
'array' => 'Поле :attribute должно быть массивом.',
'before' => 'В поле :attribute должна быть дата раньше :date.',
'before_or_equal' => 'В поле :attribute должна быть дата раньше или равняться :date.',
'between' => [
'numeric' => 'Поле :attribute должно быть между :min и :max.',
'file' => 'Размер файла в поле :attribute должен быть между :min и :max Килобайт(а).',
'string' => 'Количество символов в поле :attribute должно быть между :min и :max.',
'array' => 'Количество элементов в поле :attribute должно быть между :min и :max.',
],
'boolean' => 'Поле :attribute должно иметь значение логического типа.',
'confirmed' => 'Поле :attribute не совпадает с подтверждением.',
'date' => 'Поле :attribute не является датой.',
'date_equals' => 'Поле :attribute должно быть датой равной :date.',
'date_format' => 'Поле :attribute не соответствует формату :format.',
'different' => 'Поля :attribute и :other должны различаться.',
'digits' => 'Длина цифрового поля :attribute должна быть :digits.',
'digits_between' => 'Длина цифрового поля :attribute должна быть между :min и :max.',
'dimensions' => 'Поле :attribute имеет недопустимые размеры изображения.',
'distinct' => 'Поле :attribute содержит повторяющееся значение.',
'email' => 'Поле :attribute должно быть действительным электронным адресом.',
'ends_with' => 'Поле :attribute должно заканчиваться одним из следующих значений: :values',
'exists' => 'Выбранное значение для :attribute некорректно.',
'file' => 'Поле :attribute должно быть файлом.',
'filled' => 'Поле :attribute обязательно для заполнения.',
'gt' => [
'numeric' => 'Поле :attribute должно быть больше :value.',
'file' => 'Размер файла в поле :attribute должен быть больше :value Килобайт(а).',
'string' => 'Количество символов в поле :attribute должно быть больше :value.',
'array' => 'Количество элементов в поле :attribute должно быть больше :value.',
],
'gte' => [
'numeric' => 'Поле :attribute должно быть :value или больше.',
'file' => 'Размер файла в поле :attribute должен быть :value Килобайт(а) или больше.',
'string' => 'Количество символов в поле :attribute должно быть :value или больше.',
'array' => 'Количество элементов в поле :attribute должно быть :value или больше.',
],
'image' => 'Поле :attribute должно быть изображением.',
'in' => 'Выбранное значение для :attribute ошибочно.',
'in_array' => 'Поле :attribute не существует в :other.',
'integer' => 'Поле :attribute должно быть целым числом.',
'ip' => 'Поле :attribute должно быть действительным IP-адресом.',
'ipv4' => 'Поле :attribute должно быть действительным IPv4-адресом.',
'ipv6' => 'Поле :attribute должно быть действительным IPv6-адресом.',
'json' => 'Поле :attribute должно быть JSON строкой.',
'lt' => [
'numeric' => 'Поле :attribute должно быть меньше :value.',
'file' => 'Размер файла в поле :attribute должен быть меньше :value Килобайт(а).',
'string' => 'Количество символов в поле :attribute должно быть меньше :value.',
'array' => 'Количество элементов в поле :attribute должно быть меньше :value.',
],
'lte' => [
'numeric' => 'Поле :attribute должно быть :value или меньше.',
'file' => 'Размер файла в поле :attribute должен быть :value Килобайт(а) или меньше.',
'string' => 'Количество символов в поле :attribute должно быть :value или меньше.',
'array' => 'Количество элементов в поле :attribute должно быть :value или меньше.',
],
'max' => [
'numeric' => 'Поле :attribute не может быть больше :max.',
'file' => 'Размер файла в поле :attribute не может быть больше :max Килобайт(а).',
'string' => 'Количество символов в поле :attribute не может превышать :max.',
'array' => 'Количество элементов в поле :attribute не может превышать :max.',
],
'mimes' => 'Поле :attribute должно быть файлом одного из следующих типов: :values.',
'mimetypes' => 'Поле :attribute должно быть файлом одного из следующих типов: :values.',
'min' => [
'numeric' => 'Поле :attribute должно быть не меньше :min.',
'file' => 'Размер файла в поле :attribute должен быть не меньше :min Килобайт(а).',
'string' => 'Количество символов в поле :attribute должно быть не меньше :min.',
'array' => 'Количество элементов в поле :attribute должно быть не меньше :min.',
],
'not_in' => 'Выбранное значение для :attribute ошибочно.',
'not_regex' => 'Выбранный формат для :attribute ошибочный.',
'numeric' => 'Поле :attribute должно быть числом.',
'password' => 'Неверный пароль.',
'present' => 'Поле :attribute должно присутствовать.',
'regex' => 'Поле :attribute имеет ошибочный формат.',
'required' => 'Поле :attribute обязательно для заполнения.',
'required_if' => 'Поле :attribute обязательно для заполнения, когда :other равно :value.',
'required_unless' => 'Поле :attribute обязательно для заполнения, когда :other не равно :values.',
'required_with' => 'Поле :attribute обязательно для заполнения, когда :values указано.',
'required_with_all' => 'Поле :attribute обязательно для заполнения, когда :values указано.',
'required_without' => 'Поле :attribute обязательно для заполнения, когда :values не указано.',
'required_without_all' => 'Поле :attribute обязательно для заполнения, когда ни одно из :values не указано.',
'same' => 'Значения полей :attribute и :other должны совпадать.',
'size' => [
'numeric' => 'Поле :attribute должно быть равным :size.',
'file' => 'Размер файла в поле :attribute должен быть равен :size Килобайт(а).',
'string' => 'Количество символов в поле :attribute должно быть равным :size.',
'array' => 'Количество элементов в поле :attribute должно быть равным :size.',
],
'starts_with' => 'Поле :attribute должно начинаться из одного из следующих значений: :values',
'string' => 'Поле :attribute должно быть строкой.',
'timezone' => 'Поле :attribute должно быть действительным часовым поясом.',
'unique' => 'Такое значение поля :attribute уже существует.',
'uploaded' => 'Загрузка поля :attribute не удалась.',
'url' => 'Поле :attribute имеет ошибочный формат URL.',
'uuid' => 'Поле :attribute должно быть корректным UUID.',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'qrcode' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'uri' => [
'starts_with' => 'Only valid OTP uri are supported',
],
'email' => [
'exists' => 'No account found using this email',
]
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
];

View File

@ -0,0 +1,57 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
// Laravel
'failed' => '用户名或密码错误',
'throttle' => '您尝试的登录次数过多,请 :seconds 秒后再试。',
// 2FAuth
'sign_out' => 'Sign out',
'sign_in' => 'Sign in',
'register' => 'Register',
'hello' => 'Hi {username} !',
'already_authenticated' => 'Already authenticated',
'confirm' => [
'logout' => 'Are you sure you want to log out?',
],
'forms' => [
'name' => 'Name',
'login' => 'Login',
'email' => 'Email',
'password' => 'Password',
'confirm_password' => 'Confirm password',
'confirm_new_password' => 'Confirm new password',
'dont_have_account_yet' => 'Don\'t have your account yet?',
'already_register' => 'Already registered?',
'password_do_not_match' => 'Password do not match',
'forgot_your_password' => 'Forgot your password?',
'request_password_reset' => 'Request a password reset',
'reset_password' => 'Reset password',
'no_reset_password_in_demo' => 'No reset in Demo mode',
'new_password' => 'New password',
'current_password' => [
'label' => 'Current password',
'help' => 'Fill in your current password to confirm that it\'s you'
],
'change_password' => 'Change password',
'send_password_reset_link' => 'Send password reset link',
'change_your_password' => 'Change your password',
'password_successfully_changed' => 'Password successfully changed ',
'edit_account' => 'Edit account',
'profile_saved' => 'Profile successfully updated!',
'welcome_to_demo_app_use_those_credentials' => 'Welcome to the 2FAuth demo.<br><br>You can connect using the email address <strong>demo@2fauth.app</strong> and the password <strong>demo</demo>',
],
];

View File

@ -0,0 +1,27 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'cancel' => 'Cancel',
'update' => 'Update',
'copy_to_clipboard' => 'Copy to clipboard',
'copied_to_clipboard' => 'Copied to clipboard',
'profile' => 'Profile',
'edit' => 'Edit',
'delete' => 'Delete',
'save' => 'Save',
'close' => 'Close',
'demo_do_not_post_sensitive_data' => 'This is a demo app, do not post any sensitive data',
'selected' => 'selected',
];

View File

@ -0,0 +1,28 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'resource_not_found' => 'Resource not found',
'error_occured' => 'An error occured:',
'already_one_user_registered' => 'There is already a registered user.',
'cannot_register_more_user' => 'You cannot register more than one user.',
'refresh' => 'Refresh',
'response' => [
'no_valid_otp' => 'No valid OTP resource in this QR code',
],
'something_wrong_with_server' => 'Something is wrong with your server',
'Unable_to_decrypt_uri' => 'Unable to decrypt uri',
'wrong_current_password' => 'Wrong current password, nothing has changed'
];

View File

@ -0,0 +1,15 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Language names
|--------------------------------------------------------------------------
|
|
*/
'en' => 'English',
'fr' => 'French',
];

View File

@ -0,0 +1,19 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Pagination Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used by the paginator library to build
| the simple pagination links. You are free to change them to anything
| you want to customize your views to better match your application.
|
*/
'previous' => '&laquo; 上一页',
'next' => '下一页 &raquo;',
];

View File

@ -0,0 +1,26 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Password Reset Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are the default lines which match reasons
| that are given by the password broker for a password update attempt
| has failed, such as for an invalid token or invalid new password.
|
*/
// Laravel
'reset' => '密码重置成功!',
'sent' => '密码重置邮件已发送!',
'throttled' => '请稍候再试。',
'token' => '密码重置令牌无效。',
'user' => "找不到该邮箱对应的用户。",
// 2FAuth
'password' => 'Passwords must be at least eight characters and match the confirmation.',
];

View File

@ -0,0 +1,71 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Settings Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'settings' => 'Settings',
'account' => 'Account',
'password' => 'Password',
'options' => 'Options',
'confirm' => [
],
'general' => 'General',
'security' => 'Security',
'advanced' => 'Advanced',
'forms' => [
'edit_settings' => 'Edit settings',
'setting_saved' => 'Settings saved',
'language' => [
'label' => 'Language',
'help' => 'Change the language used to translate the app interface.'
],
'show_token_as_dot' => [
'label' => 'Show generated tokens as dot',
'help' => 'Replace generated token caracters with *** to ensure confidentiality. Do not affect the copy/paste feature.'
],
'close_token_on_copy' => [
'label' => 'Close token after copy',
'help' => 'Automatically close the popup showing the generated token after it has been copied'
],
'use_basic_qrcode_reader' => [
'label' => 'Use basic qrcode reader',
'help' => 'If you experiences issues when capturing qrCodes enables this option to switch to a more basic but more reliable qrcode reader'
],
'display_mode' => [
'label' => 'Display mode',
'help' => 'Choose whether you want accounts to be displayed as a list or as a grid'
],
'grid' => 'Grid',
'list' => 'List',
'show_accounts_icons' => [
'label' => 'Show icons',
'help' => 'Show icons accounts in the main view'
],
'auto_lock' => [
'label' => 'Auto lock',
'help' => 'Log out the user automatically in case of inactivity'
],
'never' => 'Never',
'on_token_copy' => 'On security code copy',
'1_minutes' => 'After 1 minute',
'5_minutes' => 'After 5 minutes',
'10_minutes' => 'After 10 minutes',
'15_minutes' => 'After 15 minutes',
'30_minutes' => 'After 30 minutes',
'1_hour' => 'After 1 hour',
'1_day' => 'After 1 day',
],
];

View File

@ -0,0 +1,69 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Authentication Language Lines
|--------------------------------------------------------------------------
|
| The following language lines are used during authentication for various
| messages that we need to display to the user. You are free to modify
| these language lines according to your application's requirements.
|
*/
'service' => 'Service',
'account' => 'Account',
'icon' => 'Icon',
'new' => 'New',
'no_account_here' => 'No 2FA here!',
'add_first_account' => 'Add your first account',
'use_full_form' => 'Or use the full form',
'add_one' => 'Add one',
'manage' => 'Manage',
'done' => 'Done',
'forms' => [
'service' => [
'placeholder' => 'example.com',
],
'account' => [
'placeholder' => 'John DOE',
],
'new_account' => 'New account',
'edit_account' => 'Edit account',
'otp_uri' => 'OTP Uri',
'hotp_counter' => 'HOTP Counter',
'scan_qrcode' => 'Scan a qrcode',
'use_qrcode' => [
'val' => 'Use a qrcode',
'title' => 'Use a QR code to fill the form magically',
],
'unlock' => [
'val' => 'Unlock',
'title' => 'Unlock it (at your own risk)',
],
'lock' => [
'val' => 'Lock',
'title' => 'Lock it',
],
'choose_image' => 'Choose an image…',
'create' => 'Create',
'save' => 'Save',
'test' => 'Test',
],
'stream' => [
'need_grant_permission' => 'You need to grant camera access permission',
'not_readable' => 'Fail to load scanner. Is the camera already in use?',
'no_cam_on_device' => 'No camera on this device',
'secured_context_required' => 'Secure context required (HTTPS or localhost)',
'https_required' => 'HTTPS required for camera streaming',
'camera_not_suitable' => 'Installed cameras are not suitable',
'stream_api_not_supported' => 'Stream API is not supported in this browser'
],
'confirm' => [
'delete' => 'Are you sure you want to delete this account?',
'cancel' => 'The account will be lost. Are you sure?'
],
];

View File

@ -0,0 +1,160 @@
<?php
return [
/*
|--------------------------------------------------------------------------
| Validation Language Lines
|--------------------------------------------------------------------------
|
| The following language lines contain the default error messages used by
| the validator class. Some of these rules have multiple versions such
| as the size rules. Feel free to tweak each of these messages here.
|
*/
'accepted' => '您必须接受 :attribute。',
'active_url' => ':attribute 不是一个有效的网址。',
'after' => ':attribute 必须要晚于 :date。',
'after_or_equal' => ':attribute 必须要等于 :date 或更晚。',
'alpha' => ':attribute 只能由字母组成。',
'alpha_dash' => ':attribute 只能由字母、数字、短划线(-)和下划线(_)组成。',
'alpha_num' => ':attribute 只能由字母和数字组成。',
'array' => ':attribute 必须是一个数组。',
'before' => ':attribute 必须要早于 :date。',
'before_or_equal' => ':attribute 必须要等于 :date 或更早。',
'between' => [
'numeric' => ':attribute 必须介于 :min - :max 之间。',
'file' => ':attribute 必须介于 :min - :max KB 之间。',
'string' => ':attribute 必须介于 :min - :max 个字符之间。',
'array' => ':attribute 必须只有 :min - :max 个单元。',
],
'boolean' => ':attribute 必须为布尔值。',
'confirmed' => ':attribute 两次输入不一致。',
'date' => ':attribute 不是一个有效的日期。',
'date_equals' => ':attribute 必须要等于 :date。',
'date_format' => ':attribute 的格式必须为 :format。',
'different' => ':attribute 和 :other 必须不同。',
'digits' => ':attribute 必须是 :digits 位数字。',
'digits_between' => ':attribute 必须是介于 :min 和 :max 位的数字。',
'dimensions' => ':attribute 图片尺寸不正确。',
'distinct' => ':attribute 已经存在。',
'email' => ':attribute 不是一个合法的邮箱。',
'ends_with' => ':attribute 必须以 :values 为结尾。',
'exists' => ':attribute 不存在。',
'file' => ':attribute 必须是文件。',
'filled' => ':attribute 不能为空。',
'gt' => [
'numeric' => ':attribute 必须大于 :value。',
'file' => ':attribute 必须大于 :value KB。',
'string' => ':attribute 必须多于 :value 个字符。',
'array' => ':attribute 必须多于 :value 个元素。',
],
'gte' => [
'numeric' => ':attribute 必须大于或等于 :value。',
'file' => ':attribute 必须大于或等于 :value KB。',
'string' => ':attribute 必须多于或等于 :value 个字符。',
'array' => ':attribute 必须多于或等于 :value 个元素。',
],
'image' => ':attribute 必须是图片。',
'in' => '已选的属性 :attribute 无效。',
'in_array' => ':attribute 必须在 :other 中。',
'integer' => ':attribute 必须是整数。',
'ip' => ':attribute 必须是有效的 IP 地址。',
'ipv4' => ':attribute 必须是有效的 IPv4 地址。',
'ipv6' => ':attribute 必须是有效的 IPv6 地址。',
'json' => ':attribute 必须是正确的 JSON 格式。',
'lt' => [
'numeric' => ':attribute 必须小于 :value。',
'file' => ':attribute 必须小于 :value KB。',
'string' => ':attribute 必须少于 :value 个字符。',
'array' => ':attribute 必须少于 :value 个元素。',
],
'lte' => [
'numeric' => ':attribute 必须小于或等于 :value。',
'file' => ':attribute 必须小于或等于 :value KB。',
'string' => ':attribute 必须少于或等于 :value 个字符。',
'array' => ':attribute 必须少于或等于 :value 个元素。',
],
'max' => [
'numeric' => ':attribute 不能大于 :max。',
'file' => ':attribute 不能大于 :max KB。',
'string' => ':attribute 不能大于 :max 个字符。',
'array' => ':attribute 最多只有 :max 个单元。',
],
'mimes' => ':attribute 必须是一个 :values 类型的文件。',
'mimetypes' => ':attribute 必须是一个 :values 类型的文件。',
'min' => [
'numeric' => ':attribute 必须大于等于 :min。',
'file' => ':attribute 大小不能小于 :min KB。',
'string' => ':attribute 至少为 :min 个字符。',
'array' => ':attribute 至少有 :min 个单元。',
],
'not_in' => '已选的属性 :attribute 非法。',
'not_regex' => ':attribute 的格式错误。',
'numeric' => ':attribute 必须是一个数字。',
'password' => '密码错误',
'present' => ':attribute 必须存在。',
'regex' => ':attribute 格式不正确。',
'required' => ':attribute 不能为空。',
'required_if' => '当 :other 为 :value 时 :attribute 不能为空。',
'required_unless' => '当 :other 不为 :values 时 :attribute 不能为空。',
'required_with' => '当 :values 存在时 :attribute 不能为空。',
'required_with_all' => '当 :values 存在时 :attribute 不能为空。',
'required_without' => '当 :values 不存在时 :attribute 不能为空。',
'required_without_all' => '当 :values 都不存在时 :attribute 不能为空。',
'same' => ':attribute 和 :other 必须相同。',
'size' => [
'numeric' => ':attribute 大小必须为 :size。',
'file' => ':attribute 大小必须为 :size KB。',
'string' => ':attribute 必须是 :size 个字符。',
'array' => ':attribute 必须为 :size 个单元。',
],
'starts_with' => ':attribute 必须以 :values 为开头。',
'string' => ':attribute 必须是一个字符串。',
'timezone' => ':attribute 必须是一个合法的时区值。',
'unique' => ':attribute 已经存在。',
'uploaded' => ':attribute 上传失败。',
'url' => ':attribute 格式不正确。',
'uuid' => ':attribute 必须是有效的 UUID。',
/*
|--------------------------------------------------------------------------
| Custom Validation Language Lines
|--------------------------------------------------------------------------
|
| Here you may specify custom validation messages for attributes using the
| convention "attribute.rule" to name the lines. This makes it quick to
| specify a specific custom language line for a given attribute rule.
|
*/
'custom' => [
'icon' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'qrcode' => [
'image' => 'Supported format are jpeg, png, bmp, gif, svg, or webp',
],
'uri' => [
'starts_with' => 'Only valid OTP uri are supported',
],
'email' => [
'exists' => 'No account found using this email',
]
],
/*
|--------------------------------------------------------------------------
| Custom Validation Attributes
|--------------------------------------------------------------------------
|
| The following language lines are used to swap our attribute placeholder
| with something more reader friendly such as "E-Mail Address" instead
| of "email". This simply helps us make our message more expressive.
|
*/
'attributes' => [],
];