mirror of
https://github.com/bs-community/blessing-skin-server.git
synced 2025-01-30 14:09:58 +08:00
use YAML for localization
This commit is contained in:
parent
8571384c4a
commit
cb04820196
@ -5,7 +5,8 @@
|
|||||||
"require": {
|
"require": {
|
||||||
"php": ">=5.5.9",
|
"php": ">=5.5.9",
|
||||||
"laravel/framework": "5.2.*",
|
"laravel/framework": "5.2.*",
|
||||||
"gregwar/captcha": "^1.1"
|
"gregwar/captcha": "^1.1",
|
||||||
|
"devitek/yaml-translation": "^2.0"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"fzaninotto/faker": "~1.4",
|
"fzaninotto/faker": "~1.4",
|
||||||
|
140
composer.lock
generated
140
composer.lock
generated
@ -4,8 +4,8 @@
|
|||||||
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
|
||||||
"This file is @generated automatically"
|
"This file is @generated automatically"
|
||||||
],
|
],
|
||||||
"hash": "341e92f67792be07a7de2c90cd70efa9",
|
"hash": "e958cf75dad17ac662e486ae476ef335",
|
||||||
"content-hash": "4388065752ad5d2aec40b5fd446f16da",
|
"content-hash": "7942c0324050826b3a5cfdcc39ffcd87",
|
||||||
"packages": [
|
"packages": [
|
||||||
{
|
{
|
||||||
"name": "classpreloader/classpreloader",
|
"name": "classpreloader/classpreloader",
|
||||||
@ -61,6 +61,44 @@
|
|||||||
],
|
],
|
||||||
"time": "2015-11-09 22:51:51"
|
"time": "2015-11-09 22:51:51"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "devitek/yaml-translation",
|
||||||
|
"version": "2.0.1",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/Devitek/laravel-yaml-translation.git",
|
||||||
|
"reference": "53a191aca2c224f667801bf78a7a93a0d025b469"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://packagist.phpcomposer.com/files/Devitek/laravel-yaml-translation/53a191aca2c224f667801bf78a7a93a0d025b469.zip",
|
||||||
|
"reference": "53a191aca2c224f667801bf78a7a93a0d025b469",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"illuminate/translation": "5.x",
|
||||||
|
"php": ">=5.4.0",
|
||||||
|
"symfony/yaml": "3.*"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Devitek\\": "src/Devitek"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Thomas Sieffert",
|
||||||
|
"email": "thomas.sieffert@devitek.fr"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "Add YAML file support to Laravel TranslationServiceProvider",
|
||||||
|
"time": "2016-08-20 17:12:37"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "dnoegel/php-xdg-base-dir",
|
"name": "dnoegel/php-xdg-base-dir",
|
||||||
"version": "0.1",
|
"version": "0.1",
|
||||||
@ -1777,6 +1815,55 @@
|
|||||||
],
|
],
|
||||||
"time": "2016-07-26 08:03:56"
|
"time": "2016-07-26 08:03:56"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "symfony/yaml",
|
||||||
|
"version": "v3.1.3",
|
||||||
|
"source": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/symfony/yaml.git",
|
||||||
|
"reference": "1819adf2066880c7967df7180f4f662b6f0567ac"
|
||||||
|
},
|
||||||
|
"dist": {
|
||||||
|
"type": "zip",
|
||||||
|
"url": "https://packagist.phpcomposer.com/files/symfony/yaml/1819adf2066880c7967df7180f4f662b6f0567ac.zip",
|
||||||
|
"reference": "1819adf2066880c7967df7180f4f662b6f0567ac",
|
||||||
|
"shasum": ""
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": ">=5.5.9"
|
||||||
|
},
|
||||||
|
"type": "library",
|
||||||
|
"extra": {
|
||||||
|
"branch-alias": {
|
||||||
|
"dev-master": "3.1-dev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"autoload": {
|
||||||
|
"psr-4": {
|
||||||
|
"Symfony\\Component\\Yaml\\": ""
|
||||||
|
},
|
||||||
|
"exclude-from-classmap": [
|
||||||
|
"/Tests/"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"notification-url": "https://packagist.org/downloads/",
|
||||||
|
"license": [
|
||||||
|
"MIT"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Fabien Potencier",
|
||||||
|
"email": "fabien@symfony.com"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Symfony Community",
|
||||||
|
"homepage": "https://symfony.com/contributors"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "Symfony Yaml Component",
|
||||||
|
"homepage": "https://symfony.com",
|
||||||
|
"time": "2016-07-17 14:02:08"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "vlucas/phpdotenv",
|
"name": "vlucas/phpdotenv",
|
||||||
"version": "v2.3.0",
|
"version": "v2.3.0",
|
||||||
@ -3161,55 +3248,6 @@
|
|||||||
"homepage": "https://symfony.com",
|
"homepage": "https://symfony.com",
|
||||||
"time": "2016-07-30 07:22:48"
|
"time": "2016-07-30 07:22:48"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"name": "symfony/yaml",
|
|
||||||
"version": "v3.1.3",
|
|
||||||
"source": {
|
|
||||||
"type": "git",
|
|
||||||
"url": "https://github.com/symfony/yaml.git",
|
|
||||||
"reference": "1819adf2066880c7967df7180f4f662b6f0567ac"
|
|
||||||
},
|
|
||||||
"dist": {
|
|
||||||
"type": "zip",
|
|
||||||
"url": "https://packagist.phpcomposer.com/files/symfony/yaml/1819adf2066880c7967df7180f4f662b6f0567ac.zip",
|
|
||||||
"reference": "1819adf2066880c7967df7180f4f662b6f0567ac",
|
|
||||||
"shasum": ""
|
|
||||||
},
|
|
||||||
"require": {
|
|
||||||
"php": ">=5.5.9"
|
|
||||||
},
|
|
||||||
"type": "library",
|
|
||||||
"extra": {
|
|
||||||
"branch-alias": {
|
|
||||||
"dev-master": "3.1-dev"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"autoload": {
|
|
||||||
"psr-4": {
|
|
||||||
"Symfony\\Component\\Yaml\\": ""
|
|
||||||
},
|
|
||||||
"exclude-from-classmap": [
|
|
||||||
"/Tests/"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"notification-url": "https://packagist.org/downloads/",
|
|
||||||
"license": [
|
|
||||||
"MIT"
|
|
||||||
],
|
|
||||||
"authors": [
|
|
||||||
{
|
|
||||||
"name": "Fabien Potencier",
|
|
||||||
"email": "fabien@symfony.com"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Symfony Community",
|
|
||||||
"homepage": "https://symfony.com/contributors"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"description": "Symfony Yaml Component",
|
|
||||||
"homepage": "https://symfony.com",
|
|
||||||
"time": "2016-07-17 14:02:08"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"name": "webmozart/assert",
|
"name": "webmozart/assert",
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
|
@ -153,7 +153,7 @@ return [
|
|||||||
Illuminate\Redis\RedisServiceProvider::class,
|
Illuminate\Redis\RedisServiceProvider::class,
|
||||||
Illuminate\Auth\Passwords\PasswordResetServiceProvider::class,
|
Illuminate\Auth\Passwords\PasswordResetServiceProvider::class,
|
||||||
Illuminate\Session\SessionServiceProvider::class,
|
Illuminate\Session\SessionServiceProvider::class,
|
||||||
Illuminate\Translation\TranslationServiceProvider::class,
|
Devitek\Core\Translation\TranslationServiceProvider::class,
|
||||||
Illuminate\Validation\ValidationServiceProvider::class,
|
Illuminate\Validation\ValidationServiceProvider::class,
|
||||||
Illuminate\View\ViewServiceProvider::class,
|
Illuminate\View\ViewServiceProvider::class,
|
||||||
|
|
||||||
|
@ -1,19 +0,0 @@
|
|||||||
<?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.
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'failed' => 'These credentials do not match our records.',
|
|
||||||
'throttle' => 'Too many login attempts. Please try again in :seconds seconds.',
|
|
||||||
|
|
||||||
];
|
|
11
resources/lang/en/auth.yml
Normal file
11
resources/lang/en/auth.yml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
login:
|
||||||
|
login: Log In
|
||||||
|
message: Login in to manage your skin & players
|
||||||
|
identification: Email or Player Name
|
||||||
|
password: Password
|
||||||
|
captcha: Enter the CAPTCHA
|
||||||
|
change-captcha: Click to change another image.
|
||||||
|
keep: Remember me
|
||||||
|
|
||||||
|
forgot-link: Forgot your password?
|
||||||
|
register-link: Register a new account
|
@ -1,19 +0,0 @@
|
|||||||
<?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' => '« Previous',
|
|
||||||
'next' => 'Next »',
|
|
||||||
|
|
||||||
];
|
|
@ -1,22 +0,0 @@
|
|||||||
<?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.
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'password' => 'Passwords must be at least six characters and match the confirmation.',
|
|
||||||
'reset' => 'Your password has been reset!',
|
|
||||||
'sent' => 'We have e-mailed your password reset link!',
|
|
||||||
'token' => 'This password reset token is invalid.',
|
|
||||||
'user' => "We can't find a user with that e-mail address.",
|
|
||||||
|
|
||||||
];
|
|
@ -1,123 +0,0 @@
|
|||||||
<?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' => 'The :attribute must be accepted.',
|
|
||||||
'active_url' => 'The :attribute is not a valid URL.',
|
|
||||||
'after' => 'The :attribute must be a date after :date.',
|
|
||||||
'alpha' => 'The :attribute may only contain letters.',
|
|
||||||
'alpha_dash' => 'The :attribute may only contain letters, numbers, and dashes.',
|
|
||||||
'alpha_num' => 'The :attribute may only contain letters and numbers.',
|
|
||||||
'array' => 'The :attribute must be an array.',
|
|
||||||
'before' => 'The :attribute must be a date before :date.',
|
|
||||||
'between' => [
|
|
||||||
'numeric' => 'The :attribute must be between :min and :max.',
|
|
||||||
'file' => 'The :attribute must be between :min and :max kilobytes.',
|
|
||||||
'string' => 'The :attribute must be between :min and :max characters.',
|
|
||||||
'array' => 'The :attribute must have between :min and :max items.',
|
|
||||||
],
|
|
||||||
'boolean' => 'The :attribute field must be true or false.',
|
|
||||||
'confirmed' => 'The :attribute confirmation does not match.',
|
|
||||||
'date' => 'The :attribute is not a valid date.',
|
|
||||||
'date_format' => 'The :attribute does not match the format :format.',
|
|
||||||
'different' => 'The :attribute and :other must be different.',
|
|
||||||
'digits' => 'The :attribute must be :digits digits.',
|
|
||||||
'digits_between' => 'The :attribute must be between :min and :max digits.',
|
|
||||||
'distinct' => 'The :attribute field has a duplicate value.',
|
|
||||||
'email' => 'The :attribute must be a valid email address.',
|
|
||||||
'exists' => 'The selected :attribute is invalid.',
|
|
||||||
'filled' => 'The :attribute field is required.',
|
|
||||||
'image' => 'The :attribute must be an image.',
|
|
||||||
'in' => 'The selected :attribute is invalid.',
|
|
||||||
'in_array' => 'The :attribute field does not exist in :other.',
|
|
||||||
'integer' => 'The :attribute must be an integer.',
|
|
||||||
'ip' => 'The :attribute must be a valid IP address.',
|
|
||||||
'json' => 'The :attribute must be a valid JSON string.',
|
|
||||||
'max' => [
|
|
||||||
'numeric' => 'The :attribute may not be greater than :max.',
|
|
||||||
'file' => 'The :attribute may not be greater than :max kilobytes.',
|
|
||||||
'string' => 'The :attribute may not be greater than :max characters.',
|
|
||||||
'array' => 'The :attribute may not have more than :max items.',
|
|
||||||
],
|
|
||||||
'mimes' => 'The :attribute must be a file of type: :values.',
|
|
||||||
'min' => [
|
|
||||||
'numeric' => 'The :attribute must be at least :min.',
|
|
||||||
'file' => 'The :attribute must be at least :min kilobytes.',
|
|
||||||
'string' => 'The :attribute must be at least :min characters.',
|
|
||||||
'array' => 'The :attribute must have at least :min items.',
|
|
||||||
],
|
|
||||||
'not_in' => 'The selected :attribute is invalid.',
|
|
||||||
'numeric' => 'The :attribute must be a number.',
|
|
||||||
'present' => 'The :attribute field must be present.',
|
|
||||||
'regex' => 'The :attribute format is invalid.',
|
|
||||||
'required' => 'The :attribute field is required.',
|
|
||||||
'required_if' => 'The :attribute field is required when :other is :value.',
|
|
||||||
'required_unless' => 'The :attribute field is required unless :other is in :values.',
|
|
||||||
'required_with' => 'The :attribute field is required when :values is present.',
|
|
||||||
'required_with_all' => 'The :attribute field is required when :values is present.',
|
|
||||||
'required_without' => 'The :attribute field is required when :values is not present.',
|
|
||||||
'required_without_all' => 'The :attribute field is required when none of :values are present.',
|
|
||||||
'same' => 'The :attribute and :other must match.',
|
|
||||||
'size' => [
|
|
||||||
'numeric' => 'The :attribute must be :size.',
|
|
||||||
'file' => 'The :attribute must be :size kilobytes.',
|
|
||||||
'string' => 'The :attribute must be :size characters.',
|
|
||||||
'array' => 'The :attribute must contain :size items.',
|
|
||||||
],
|
|
||||||
'string' => 'The :attribute must be a string.',
|
|
||||||
'timezone' => 'The :attribute must be a valid zone.',
|
|
||||||
'unique' => 'The :attribute has already been taken.',
|
|
||||||
'url' => 'The :attribute format is invalid.',
|
|
||||||
|
|
||||||
'username' => ':attribute format is invalid.',
|
|
||||||
'nickname' => ':attribute format is invalid.',
|
|
||||||
'playername' => 'The :attribute may only contain letters, numbers and dashes.',
|
|
||||||
'pname_chinese' => 'The :attribute may only contain letters, numbers, dashes and chinese characters.',
|
|
||||||
'no_special_chars' => 'The :attribute must not contain special characters.',
|
|
||||||
'preference' => 'The :attribute must be default or slim.',
|
|
||||||
'model' => 'The :attribute must be steve, alex or cape.',
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| 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' => [
|
|
||||||
'attribute-name' => [
|
|
||||||
'rule-name' => 'custom-message',
|
|
||||||
],
|
|
||||||
],
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| Custom Validation Attributes
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
|
|
|
||||||
| The following language lines are used to swap attribute place-holders
|
|
||||||
| with something more reader friendly such as E-Mail Address instead
|
|
||||||
| of "email". This simply helps us make messages a little cleaner.
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'attributes' => [
|
|
||||||
'player_name' => 'Player Name'
|
|
||||||
],
|
|
||||||
|
|
||||||
];
|
|
92
resources/lang/en/validation.yml
Normal file
92
resources/lang/en/validation.yml
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
# Blessing Skin
|
||||||
|
username: ':attribute format is invalid.'
|
||||||
|
nickname: ':attribute format is invalid.'
|
||||||
|
playername: 'The :attribute may only contain letters, numbers and dashes.'
|
||||||
|
pname_chinese: 'The :attribute may only contain letters, numbers, dashes and chinese characters.'
|
||||||
|
no_special_chars: 'The :attribute must not contain special characters.'
|
||||||
|
preference: 'The :attribute must be default or slim.'
|
||||||
|
model: 'The :attribute must be steve, alex or cape.'
|
||||||
|
|
||||||
|
accepted: 'The :attribute must be accepted.'
|
||||||
|
active_url: 'The :attribute is not a valid URL.'
|
||||||
|
after: 'The :attribute must be a date after :date.'
|
||||||
|
alpha: 'The :attribute may only contain letters.'
|
||||||
|
alpha_dash: 'The :attribute may only contain letters, numbers, and dashes.'
|
||||||
|
alpha_num: 'The :attribute may only contain letters and numbers.'
|
||||||
|
array: 'The :attribute must be an array.'
|
||||||
|
before: 'The :attribute must be a date before :date.'
|
||||||
|
between:
|
||||||
|
numeric: 'The :attribute must be between :min and :max.'
|
||||||
|
file: 'The :attribute must be between :min and :max kilobytes.'
|
||||||
|
string: 'The :attribute must be between :min and :max characters.'
|
||||||
|
array: 'The :attribute must have between :min and :max items.'
|
||||||
|
boolean: 'The :attribute field must be true or false.'
|
||||||
|
confirmed: 'The :attribute confirmation does not match.'
|
||||||
|
date: 'The :attribute is not a valid date.'
|
||||||
|
date_format: 'The :attribute does not match the format :format.'
|
||||||
|
different: 'The :attribute and :other must be different.'
|
||||||
|
digits: 'The :attribute must be :digits digits.'
|
||||||
|
digits_between: 'The :attribute must be between :min and :max digits.'
|
||||||
|
distinct: 'The :attribute field has a duplicate value.'
|
||||||
|
email: 'The :attribute must be a valid email address.'
|
||||||
|
exists: 'The selected :attribute is invalid.'
|
||||||
|
filled: 'The :attribute field is required.'
|
||||||
|
image: 'The :attribute must be an image.'
|
||||||
|
in: 'The selected :attribute is invalid.'
|
||||||
|
in_array: 'The :attribute field does not exist in :other.'
|
||||||
|
integer: 'The :attribute must be an integer.'
|
||||||
|
ip: 'The :attribute must be a valid IP address.'
|
||||||
|
json: 'The :attribute must be a valid JSON string.'
|
||||||
|
max:
|
||||||
|
numeric: 'The :attribute may not be greater than :max.'
|
||||||
|
file: 'The :attribute may not be greater than :max kilobytes.'
|
||||||
|
string: 'The :attribute may not be greater than :max characters.'
|
||||||
|
array: 'The :attribute may not have more than :max items.'
|
||||||
|
mimes: 'The :attribute must be a file of type: :values.'
|
||||||
|
min:
|
||||||
|
numeric: 'The :attribute must be at least :min.'
|
||||||
|
file: 'The :attribute must be at least :min kilobytes.'
|
||||||
|
string: 'The :attribute must be at least :min characters.'
|
||||||
|
array: 'The :attribute must have at least :min items.'
|
||||||
|
not_in: 'The selected :attribute is invalid.'
|
||||||
|
numeric: 'The :attribute must be a number.'
|
||||||
|
present: 'The :attribute field must be present.'
|
||||||
|
regex: 'The :attribute format is invalid.'
|
||||||
|
required: 'The :attribute field is required.'
|
||||||
|
required_if: 'The :attribute field is required when :other is :value.'
|
||||||
|
required_unless: 'The :attribute field is required unless :other is in :values.'
|
||||||
|
required_with: 'The :attribute field is required when :values is present.'
|
||||||
|
required_with_all: 'The :attribute field is required when :values is present.'
|
||||||
|
required_without: 'The :attribute field is required when :values is not present.'
|
||||||
|
required_without_all: 'The :attribute field is required when none of :values are present.'
|
||||||
|
same: 'The :attribute and :other must match.'
|
||||||
|
size:
|
||||||
|
numeric: 'The :attribute must be :size.'
|
||||||
|
file: 'The :attribute must be :size kilobytes.'
|
||||||
|
string: 'The :attribute must be :size characters.'
|
||||||
|
array: 'The :attribute must contain :size items.'
|
||||||
|
string: 'The :attribute must be a string.'
|
||||||
|
timezone: 'The :attribute must be a valid zone.'
|
||||||
|
unique: 'The :attribute has already been taken.'
|
||||||
|
url: 'The :attribute format is invalid.'
|
||||||
|
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
# 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:
|
||||||
|
attribute-name: { rule-name: custom-message }
|
||||||
|
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
# Custom Validation Attributes
|
||||||
|
# --------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# The following language lines are used to swap attribute place-holders
|
||||||
|
# with something more reader friendly such as E-Mail Address instead
|
||||||
|
# of "email". This simply helps us make messages a little cleaner.
|
||||||
|
#
|
||||||
|
attributes:
|
||||||
|
player_name: 'Player Name'
|
11
resources/lang/zh-CN/auth.yml
Normal file
11
resources/lang/zh-CN/auth.yml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
login:
|
||||||
|
login: 登录
|
||||||
|
message: 登录以管理您的角色及皮肤
|
||||||
|
identification: 邮箱或角色名
|
||||||
|
password: 密码
|
||||||
|
captcha: 输入验证码
|
||||||
|
change-captcha: 点击以更换图片
|
||||||
|
keep: 保持登录状态
|
||||||
|
|
||||||
|
forgot-link: 忘记密码了?
|
||||||
|
register-link: 注册新账号
|
@ -1,150 +0,0 @@
|
|||||||
<?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
|
|
||||||
| such as the size rules. Feel free to tweak each of these messages.
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'accepted' => ':attribute 必须接受。',
|
|
||||||
'active_url' => ':attribute 不是一个有效的网址。',
|
|
||||||
'after' => ':attribute 必须是一个在 :date 之后的日期。',
|
|
||||||
'alpha' => ':attribute 只能由字母组成。',
|
|
||||||
'alpha_dash' => ':attribute 只能由字母、数字和斜杠组成。',
|
|
||||||
'alpha_num' => ':attribute 只能由字母和数字组成。',
|
|
||||||
'array' => ':attribute 必须是一个数组。',
|
|
||||||
'before' => ':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_format' => ':attribute 的格式必须为 :format。',
|
|
||||||
'different' => ':attribute 和 :other 必须不同。',
|
|
||||||
'digits' => ':attribute 必须是 :digits 位的数字。',
|
|
||||||
'digits_between' => ':attribute 必须是介于 :min 和 :max 位的数字。',
|
|
||||||
'dimensions' => ':attribute 图片尺寸不正确。',
|
|
||||||
'distinct' => ':attribute 已经存在。',
|
|
||||||
'email' => ':attribute 不是一个合法的邮箱。',
|
|
||||||
'exists' => ':attribute 不存在。',
|
|
||||||
'file' => ':attribute 必须是文件。',
|
|
||||||
'filled' => ':attribute 不能为空。',
|
|
||||||
'image' => ':attribute 必须是图片。',
|
|
||||||
'in' => '已选的属性 :attribute 非法。',
|
|
||||||
'in_array' => ':attribute 没有在 :other 中。',
|
|
||||||
'integer' => ':attribute 必须是整数。',
|
|
||||||
'ip' => ':attribute 必须是有效的 IP 地址。',
|
|
||||||
'json' => ':attribute 必须是正确的 JSON 格式。',
|
|
||||||
'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 非法。',
|
|
||||||
'numeric' => ':attribute 必须是一个数字。',
|
|
||||||
'present' => ':attribute 必须存在。',
|
|
||||||
'regex' => ':attribute 格式不正确。',
|
|
||||||
'required' => ':attribute 不能为空。',
|
|
||||||
'required_if' => '当 :other 为 :value 时 :attribute 不能为空。',
|
|
||||||
'required_unless' => '当 :other 不为 :value 时 :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 个单元。',
|
|
||||||
],
|
|
||||||
'string' => ':attribute 必须是一个字符串。',
|
|
||||||
'timezone' => ':attribute 必须是一个合法的时区值。',
|
|
||||||
'unique' => ':attribute 已经存在。',
|
|
||||||
'url' => ':attribute 格式不正确。',
|
|
||||||
|
|
||||||
'username' => ':attribute 格式不正确。',
|
|
||||||
'nickname' => ':attribute 格式不正确。',
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| 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' => [
|
|
||||||
'attribute-name' => [
|
|
||||||
'rule-name' => 'custom-message',
|
|
||||||
],
|
|
||||||
],
|
|
||||||
|
|
||||||
/*
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
| Custom Validation Attributes
|
|
||||||
|--------------------------------------------------------------------------
|
|
||||||
|
|
|
||||||
| The following language lines are used to swap attribute place-holders
|
|
||||||
| with something more reader friendly such as E-Mail Address instead
|
|
||||||
| of 'email'. This simply helps us make messages a little cleaner.
|
|
||||||
|
|
|
||||||
*/
|
|
||||||
|
|
||||||
'attributes' => [
|
|
||||||
'name' => '名称',
|
|
||||||
'username' => '用户名',
|
|
||||||
'nickname' => '昵称',
|
|
||||||
'email' => '邮箱',
|
|
||||||
'first_name' => '名',
|
|
||||||
'last_name' => '姓',
|
|
||||||
'password' => '密码',
|
|
||||||
'password_confirmation' => '确认密码',
|
|
||||||
'city' => '城市',
|
|
||||||
'country' => '国家',
|
|
||||||
'address' => '地址',
|
|
||||||
'phone' => '电话',
|
|
||||||
'mobile' => '手机',
|
|
||||||
'age' => '年龄',
|
|
||||||
'sex' => '性别',
|
|
||||||
'gender' => '性别',
|
|
||||||
'day' => '天',
|
|
||||||
'month' => '月',
|
|
||||||
'year' => '年',
|
|
||||||
'hour' => '时',
|
|
||||||
'minute' => '分',
|
|
||||||
'second' => '秒',
|
|
||||||
'title' => '标题',
|
|
||||||
'content' => '内容',
|
|
||||||
'description' => '描述',
|
|
||||||
'excerpt' => '摘要',
|
|
||||||
'date' => '日期',
|
|
||||||
'time' => '时间',
|
|
||||||
'available' => '可用的',
|
|
||||||
'size' => '大小',
|
|
||||||
],
|
|
||||||
|
|
||||||
];
|
|
110
resources/lang/zh-CN/validation.yml
Normal file
110
resources/lang/zh-CN/validation.yml
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
# Blessing Skin
|
||||||
|
username: ':attribute 格式错误。'
|
||||||
|
nickname: ':attribute 格式错误。'
|
||||||
|
playername: ':attribute 只能包含数字、字母以及下划线。'
|
||||||
|
pname_chinese: ':attribute 只能包含数字、字母、汉字以及下划线。'
|
||||||
|
no_special_chars: ':attribute 不能包含特殊字母。'
|
||||||
|
preference: ':attribute 的值必须为 default 或 slim。'
|
||||||
|
model: ':attribute 的值必须为 steve、alex 或 cape。'
|
||||||
|
|
||||||
|
accepted: ':attribute 必须接受。'
|
||||||
|
active_url: ':attribute 不是一个有效的网址。'
|
||||||
|
after: ':attribute 必须是一个在 :date 之后的日期。'
|
||||||
|
alpha: ':attribute 只能由字母组成。'
|
||||||
|
alpha_dash: ':attribute 只能由字母、数字和斜杠组成。'
|
||||||
|
alpha_num: ':attribute 只能由字母和数字组成。'
|
||||||
|
array: ':attribute 必须是一个数组。'
|
||||||
|
before: ':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_format: ':attribute 的格式必须为 :format。'
|
||||||
|
different: ':attribute 和 :other 必须不同。'
|
||||||
|
digits: ':attribute 必须是 :digits 位的数字。'
|
||||||
|
digits_between: ':attribute 必须是介于 :min 和 :max 位的数字。'
|
||||||
|
dimensions: ':attribute 图片尺寸不正确。'
|
||||||
|
distinct: ':attribute 已经存在。'
|
||||||
|
email: ':attribute 不是一个合法的邮箱。'
|
||||||
|
exists: ':attribute 不存在。'
|
||||||
|
file: ':attribute 必须是文件。'
|
||||||
|
filled: ':attribute 不能为空。'
|
||||||
|
image: ':attribute 必须是图片。'
|
||||||
|
in: '已选的属性 :attribute 非法。'
|
||||||
|
in_array: ':attribute 没有在 :other 中。'
|
||||||
|
integer: ':attribute 必须是整数。'
|
||||||
|
ip: ':attribute 必须是有效的 IP 地址。'
|
||||||
|
json: ':attribute 必须是正确的 JSON 格式。'
|
||||||
|
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 非法。'
|
||||||
|
numeric: ':attribute 必须是一个数字。'
|
||||||
|
present: ':attribute 必须存在。'
|
||||||
|
regex: ':attribute 格式不正确。'
|
||||||
|
required: ':attribute 不能为空。'
|
||||||
|
required_if: '当 :other 为 :value 时 :attribute 不能为空。'
|
||||||
|
required_unless: '当 :other 不为 :value 时 :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 个单元。'
|
||||||
|
string: ':attribute 必须是一个字符串。'
|
||||||
|
timezone: ':attribute 必须是一个合法的时区值。'
|
||||||
|
unique: ':attribute 已经存在。'
|
||||||
|
url: ':attribute 格式不正确。'
|
||||||
|
|
||||||
|
custom:
|
||||||
|
attribute-name: { rule-name: custom-message }
|
||||||
|
|
||||||
|
attributes:
|
||||||
|
name: 名称
|
||||||
|
username: 用户名
|
||||||
|
nickname: 昵称
|
||||||
|
player_name: 角色名
|
||||||
|
email: 邮箱
|
||||||
|
first_name: 名
|
||||||
|
last_name: 姓
|
||||||
|
password: 密码
|
||||||
|
password_confirmation: 确认密码
|
||||||
|
city: 城市
|
||||||
|
country: 国家
|
||||||
|
address: 地址
|
||||||
|
phone: 电话
|
||||||
|
mobile: 手机
|
||||||
|
age: 年龄
|
||||||
|
sex: 性别
|
||||||
|
gender: 性别
|
||||||
|
day: 天
|
||||||
|
month: 月
|
||||||
|
year: 年
|
||||||
|
hour: 时
|
||||||
|
minute: 分
|
||||||
|
second: 秒
|
||||||
|
title: 标题
|
||||||
|
content: 内容
|
||||||
|
description: 描述
|
||||||
|
excerpt: 摘要
|
||||||
|
date: 日期
|
||||||
|
time: 时间
|
||||||
|
available: 可用的
|
||||||
|
size: 大小
|
@ -1,6 +1,6 @@
|
|||||||
@extends('auth.master')
|
@extends('auth.master')
|
||||||
|
|
||||||
@section('title', '登录')
|
@section('title', trans('auth.login.login'))
|
||||||
|
|
||||||
@section('content')
|
@section('content')
|
||||||
|
|
||||||
@ -10,27 +10,27 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- /.login-logo -->
|
<!-- /.login-logo -->
|
||||||
<div class="login-box-body">
|
<div class="login-box-body">
|
||||||
<p class="login-box-msg">登录以管理您的角色及皮肤</p>
|
<p class="login-box-msg">{{ trans('auth.login.message') }}</p>
|
||||||
|
|
||||||
<form id="login-form">
|
<form id="login-form">
|
||||||
<div class="form-group has-feedback">
|
<div class="form-group has-feedback">
|
||||||
<input id="email_or_username" type="email" class="form-control" placeholder="邮箱或角色名">
|
<input id="email_or_username" type="email" class="form-control" placeholder="{{ trans('auth.login.identification') }}">
|
||||||
<span class="glyphicon glyphicon-envelope form-control-feedback"></span>
|
<span class="glyphicon glyphicon-envelope form-control-feedback"></span>
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group has-feedback">
|
<div class="form-group has-feedback">
|
||||||
<input id="password"type="password" class="form-control" placeholder="密码">
|
<input id="password"type="password" class="form-control" placeholder="{{ trans('auth.login.password') }}">
|
||||||
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
|
<span class="glyphicon glyphicon-lock form-control-feedback"></span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row" id="captcha-form" style="{{ (session('login_fails') > 3) ? '' : 'display: none;' }}">
|
<div class="row" id="captcha-form" style="{{ (session('login_fails') > 3) ? '' : 'display: none;' }}">
|
||||||
<div class="col-xs-8">
|
<div class="col-xs-8">
|
||||||
<div class="form-group has-feedback">
|
<div class="form-group has-feedback">
|
||||||
<input id="captcha" type="text" class="form-control" placeholder="输入验证码">
|
<input id="captcha" type="text" class="form-control" placeholder="{{ trans('auth.login.captcha') }}">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- /.col -->
|
<!-- /.col -->
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<img class="pull-right captcha" src="{{ url('auth/captcha') }}" alt="CAPTCHA" title="点击以更换图片" data-placement="top" data-toggle="tooltip">
|
<img class="pull-right captcha" src="{{ url('auth/captcha') }}" alt="CAPTCHA" title="{{ trans('auth.login.change-captcha') }}" data-placement="top" data-toggle="tooltip">
|
||||||
</div>
|
</div>
|
||||||
<!-- /.col -->
|
<!-- /.col -->
|
||||||
</div>
|
</div>
|
||||||
@ -41,20 +41,20 @@
|
|||||||
<div class="col-xs-8">
|
<div class="col-xs-8">
|
||||||
<div class="checkbox icheck">
|
<div class="checkbox icheck">
|
||||||
<label for="keep">
|
<label for="keep">
|
||||||
<input id="keep" type="checkbox"> 保持登录状态
|
<input id="keep" type="checkbox"> {{ trans('auth.login.keep') }}
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- /.col -->
|
<!-- /.col -->
|
||||||
<div class="col-xs-4">
|
<div class="col-xs-4">
|
||||||
<button id="login-button" class="btn btn-primary btn-block btn-flat">登录</button>
|
<button id="login-button" class="btn btn-primary btn-block btn-flat">{{ trans('auth.login.login') }}</button>
|
||||||
</div>
|
</div>
|
||||||
<!-- /.col -->
|
<!-- /.col -->
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<a href="{{ url('auth/forgot') }}">忘记密码了?</a><br>
|
<a href="{{ url('auth/forgot') }}">{{ trans('auth.login.forgot-link') }}</a><br>
|
||||||
<a href="{{ url('auth/register') }}" class="text-center">注册新账号</a>
|
<a href="{{ url('auth/register') }}" class="text-center">{{ trans('auth.login.register-link') }}</a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<!-- /.login-box-body -->
|
<!-- /.login-box-body -->
|
||||||
|
3
storage/yaml-translation/.gitignore
vendored
Normal file
3
storage/yaml-translation/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
*
|
||||||
|
!public/
|
||||||
|
!.gitignore
|
Loading…
Reference in New Issue
Block a user