Update translations

This commit is contained in:
printempw 2018-08-14 01:00:02 +08:00 committed by Pig Fang
parent ef3f9fccaa
commit e6d35dd400
25 changed files with 252 additions and 242 deletions

View File

@ -48,21 +48,21 @@ users:
success: The account has been banned.
unban:
text: Unban
success: The account has been unbanned.
cant-super-admin: You can't ban super admin.
success: The account was not banned anymore.
cant-super-admin: You can't ban a super admin.
cant-admin: Only super admins are able to ban admins.
delete:
delete: Delete User
success: The account has been deleted successfully.
cant-super-admin: You can't delete super admin in this way
cant-admin: You can't delete admins.
cant-super-admin: You can't delete a super admin.
cant-admin: You can't delete a admin account.
players:
no-permission: You have no permission to operate this player.
operations:
title: Operations
preference:
success: The preference of player [:player] has been changed to :preference
success: The preference of player ":player" has been changed to :preference
textures:
change: Change Textures
non-existent: No such texture tid.:tid
@ -78,7 +78,7 @@ players:
customize:
change-color:
title: Change theme color
title: Change Theme Color
success: Theme color updated.
colors:
@ -111,7 +111,7 @@ plugins:
version: "The version of `:name` does not satisfies the constraint `:constraint`"
disabled: :plugin has been disabled.
deleted: The plugin was deleted successfully.
no-config-notice: The plugin is not installed or doesn't provide configuration page.
no-config-notice: The plugin is not installed or doesn't provide a configuration page.
not-found: No such plugin.
market:
@ -147,7 +147,7 @@ update:
downloads:
text: "Download Link:"
link: Click to download full program package.
link: Click to download full update package.
check-github: <a href=":url" target="_blank" class="btn btn-default pull-right">Check GitHub Releases</a>
button: Update Now
@ -165,7 +165,7 @@ update:
errors:
prefix: "An error occured: "
connection: We can't connect to the update source. :error
connection: "Unable to access to current update source. Details:"
write-permission: Unable to create the cache directory. Please check the permission.
unzip: "Failed to extract update package. Error code: "
overwrite: Unable to overwrite files.

View File

@ -3,13 +3,14 @@ login:
button: Log In
message: Log in to manage your skin & players
keep: Remember me
success: Logged in successfully~
success: Logged in successfully.
check:
anonymous: Illegal access. Please log in first.
verified: To access this page, you should verify your email address first.
admin: Only admins are permitted to access this page.
banned: You are banned on this site. Please contact the admin.
token: Token expired. Please log in.
register:
title: Register
@ -17,10 +18,10 @@ register:
message: Welcome to :sitename!
nickname-intro: Whatever you like expect special characters
repeat-pwd: Repeat your password
close: Well, this site doesn't allow any register.
success: Registered successfully. Redirecting...
close: We don't accept any registration.
success: Your account was registered. Redirecting...
max: You can't register more than :regs accounts.
registered: The email address is already registered.
registered: The email address was already registered.
forgot:
title: Forgot Password
@ -28,10 +29,10 @@ forgot:
message: We will send you an E-mail to verify.
login-link: I do remember it
disabled: Password resetting is not available.
frequent-mail: You click the send button too fast. Wait for some minutes, guy.
frequent-mail: You click the send button too fast. Wait for some minutes.
unregistered: The email address is not registered.
success: Mail is sent. Will be expired in 1 hour, please check.
failed: Fail to send mail, detailed message :msg
success: Mail sent, please check your inbox. The link will be expired in 1 hour.
failed: Failed to send verification mail. :msg
message: You are receiving this email because this email address was used to reset your password on :sitename
ignore: If you haven't signed up on our site, please ignore this email. No unsubscribing is required.
reset: Reset your password
@ -53,9 +54,9 @@ reset:
bind:
title: Bind Email
button: Bind
message: You need to fill your email adderss to continue.
introduction: Email addresses will be used for password resetting. We won't send you any spam.
registered: The email address is already registered.
message: You need to provide your email adderss to continue.
introduction: We won't send you any spam.
registered: The email address was already taken.
verify:
title: Email Verification
@ -66,14 +67,14 @@ verify:
expired: This link is expired, please resend a verification email.
validation:
identification: Invalid format of email or player name.
identification: The email or player name is invalid.
email: Email format is invalid.
captcha: Wrong CAPTCHA.
user: Unexistent user.
user: No such user.
password: Wrong password.
logout:
success: Logged out successfully~
success: You are now logged out.
fail: No valid session.
nickname: Nickname

View File

@ -18,4 +18,4 @@ plugins:
directory: We can't approach the path for loading plugins specified by the PLUGINS_DIR in .env file. Please check your configuration. Error :msg
cipher:
unsupported: Unsupported encryption method `:cipher`, please check your `.env` configuration
unsupported: Unsupported password hashing method `:cipher`, please check your `.env` configuration

View File

@ -19,7 +19,6 @@ plugin-market: Plugin Market
plugin-configs: Plugin Configs
customize: Customize
options: Options
import-v2: Import Data
score-options: Score Options
check-update: Check Update
download-update: Download Updates
@ -39,19 +38,19 @@ reset: Reset
submit: Submit
notice: Notice
switch-2d-preview: Switch to 2D Preview
switch-2d-preview: Switch to 2D preview
illegal-parameters: Illegal parameters.
private: Private
public: Public
unexistent-user: Un-existent user
unexistent-player: Un-existent player
player-banned: The owner of this player has been banned
unexistent-user: No such user.
unexistent-player: No such player.
player-banned: The owner of this player has been banned.
texture-deleted: The requested texture has been deleted.
texture-not-uploaded: The user haven not uploaded the texture of :type model yet.
texture-not-uploaded: The user haven't uploaded the texture of :type model yet.
operations: Operations

View File

@ -2,18 +2,18 @@ features:
first:
icon: fa-users
name: Multi Player
desc: You can add many players with only one account.
desc: You can add multiple players with only one account.
second:
icon: fa-share-alt
name: Sharing
desc: Explore the skin library, give a 'like' and share them with your friends.
desc: Explore the skin library, send a "like" and share them with your friends.
third:
icon: fa-cloud
name: Free
desc: It is free forever. No ads. No subscription fees.
introduction: :sitename provides the service of uploading and hosting Minecraft skins. By coordinating with skin mods e.g. CustomSkinLoader, you can set skins & capes for your game character, and make it visible to other players.
introduction: :sitename provides the service of uploading and hosting Minecraft skins. By coordinating with skin mods (e.g. CustomSkinLoader), you can choose skin and cape for your game character, and make it visible to other players in Minecraft.
start: Join Us

View File

@ -1,11 +1,11 @@
option-saved: Option Saved.
option-saved: Option saved.
homepage:
title: Homepage
home_pic_url:
title: Picture URL at Homepage
hint: Path relative to homepage or full URL, leave empty to use default image
hint: Path relative to homepage or full URL, leave empty to use default image.
favicon_url:
title: Website Icon
hint: Path relative to resources/assets/ or full URL.
@ -27,7 +27,7 @@ customJsCss:
custom_js: JavaScript
rate:
title: About Scores
title: Scores
score_per_storage:
title: Storage
@ -71,7 +71,7 @@ general:
description: You can also specify a different site name and description for each language. To edit a specific language's corresponding site name or description text, please switch to that language and submit your edit.
site_url:
title: Site URL
hint: Begin with http(s)://, nerver ends with slash
hint: Begin with http(s)://, nerver ends with slash.
user_can_register:
title: Open Registration
label: Everyone is allowed to register.
@ -85,11 +85,11 @@ general:
ip_get_method:
title: Get IP via
HTTP_X_FORWARDED_FOR: HTTP_X_FORWARDED_FOR (can be fabricated)
REMOTE_ADDR: REMOTE_ADDR (isn't suit for sites under load balancer)
hint: We have no method to get the real IP address of client with PHP.
REMOTE_ADDR: REMOTE_ADDR (NOT suitable for sites under load balancer)
hint: Unfortunately, we have no method to get the accurate client IP address with pure PHP.
max_upload_file_size:
title: Max Upload Size
hint: "Limit of PHP in php.ini: :size"
hint: "Limit specified in php.ini: :size"
player_name_rule:
title: Player Name Rule
official: Letters, numbers and underscores (Mojang's official rule)
@ -118,11 +118,11 @@ general:
placeholder: Regular Expressions
comment_script:
title: Comment Script
description: Placeholders are available in comment scripts. <code>{tid}</code> will be replaced with texture id, <code>{name}</code> will be replaced with texture name, <code>{url}</code> will be replaced with current URL.
description: Placeholder is available, <code>{tid}</code> will be replaced with texture id, <code>{name}</code> will be replaced with texture name, <code>{url}</code> will be replaced with current URL.
allow_sending_statistics:
title: Statistics
label: Send usage statistics anonymously.
hint: Information about privacy will nerver be sent.
hint: Privacy information will nerver be sent.
announ:
title: Announcement
@ -132,20 +132,30 @@ announ:
resources:
title: Resource Files
hint: Please adjust these options when CDN cache is on
hint: Please check these options if you enabled CDN for your site.
force_ssl:
title: Force SSL
label: Use HTTPS protocol to load resources forcely.
hint: Check SSL available before turning on
label: Use HTTPS protocol to load all front-end assets.
hint: Please check if SSL really available before turning on.
auto_detect_asset_url:
title: Assets URL
label: Determine assets url automatically.
description: Load asset files according to current URL. The site url will be used if this is not enabled. Please unable this if requests don't go through CDN.
description: Please unable this if assets URLs are wrongly generated under a CDN. The site url will be used if this is not enabled.
return_204_when_notfound:
title: HTTP Response Code
label: Return 204 instead of 404 when requesting un-existent player.
description: If your CDN doesn't cache 404 pages, please turn this on. A flood of requests to un-existent players will greatly slow down the site.
label: Return 204 instead of 404 when requesting non-existent player.
description: If your CDN doesn't cache 404 pages, please turn this on. A flood of requests to non-existent players will greatly slow down the site.
cache_expire_time:
title: Cache Exipre Time
hint: In seconds, 86400 = one day, 31536000 = one year.
update:
title: Check Update
check_update:
title: Check Update
label: Check available updates automatically and notify me.
update_source:
title: Update Source
description: 'Available update source list can be found at: <a href="https://github.com/printempw/blessing-skin-server/wiki/%E6%9B%B4%E6%96%B0%E6%BA%90%E5%88%97%E8%A1%A8">@GitHub Wiki</a>.'

View File

@ -1,6 +1,7 @@
database:
connection-error: "Unable to connect to the target :type database, please check your configuration. The server replied with: :msg"
table-already-exists: There are some tables already exist in target database, which names conflict with ones we are going to create. To avoid data loss, please manually delete these tables :tables, or set a different table prefix.
connection-success: Connect to the target :type database [:server] successfully, just click NEXT to start installation.
table-already-exists: There are some tables already exist in target database, whose names conflict with ones we are going to create. To avoid data loss, please manually delete these tables :tables, or set a different table prefix.
file:
permission-error: Unable to create textures folder, please check the directory permissions or place one manually.
@ -14,7 +15,7 @@ disabled-functions:
locked:
title: Already installed
text: You appear to have already installed Blessing Skin Server. To reinstall please clear your old database tables first, or use a new database table prefix.
text: It appears that you have already installed Blessing Skin Server. To reinstall, please delete the tables in your database first, or use a new table prefix.
button: Back to homepage
updates:
@ -24,7 +25,7 @@ updates:
welcome:
title: One more step
text: |
Welcome to update to Blessing Skin Server v:version!
Welcome! You are going to update to Blessing Skin Server v:version.
We need to apply some updates to your database, click NEXT to continue.
button: Next
@ -59,7 +60,7 @@ wizard:
info:
title: Information needed
button: Run install
text: To proceed with the installation fill this form with the details of the initial admin account. Don't worry, you can always change these settings later.
text: To proceed with the installation, please fill this form with the details of the initial admin account. Don't worry, you can always change these settings later.
admin-email: Admin Email
admin-notice: This is the <b>UNIQUE</b> super admin account who can GIVE or CANCEL other users' admin privilege.
@ -68,7 +69,7 @@ wizard:
pwd-notice: <b>Attention:</b> You will need the password to log in. Please keep it at a secure place.
confirm-pwd: Confirm password
site-name: Site name
site-name-notice: This will be shown at title bar and homepage.
site-name-notice: This will be shown on every page.
secure: Security
secure-notice: Generate random APP_KEY and SALT to make your site secured.

View File

@ -1,9 +1,9 @@
general:
filter: Filter
my-upload: Uploaded by Me
my-upload: Uploaded by me
sort: Sort
search-textures: Search For Textures
upload-new-skin: Upload New Skin
search-textures: Search for textures...
upload-new-skin: Upload new skin
no-result: No result.
filter:
@ -13,12 +13,12 @@ filter:
any-model: (Any Model)
steve-model: (Steve Model)
alex-model: (Alex Model)
uploader: User (:name) Uploaded
clean-filter: Clean Filter
uploader: User (:name) uploaded
clean-filter: Clean filter
sort:
newest-uploaded: Newestly Uploaded
most-likes: Most Likes
newest-uploaded: Newestly uploaded
most-likes: Most likes
item:
steve: (Steve)
@ -31,8 +31,8 @@ item:
show:
title: Texture Details
anonymous: You must login to use closets
likes: People who like this
anonymous: You must login to use closets.
likes: People who liked this
detail: Details
name: Texture Name
@ -64,15 +64,15 @@ upload:
name-rule-regexp: Custom name rules are applied as :regexp
texture-type: Texture Type
select-file: Select File
private-score-notice: It will spend you more scores to set it as private. You will be charged :score scores for every KB storage.
private-score-notice: It will spend you more scores for setting it as private. You will be charged :score scores for per KB storage.
privacy-notice: Prevent it from being visible at skin library.
set-as-private: Make it Private
set-as-private: Make it private
button: Upload
type-error: Incorrect mime type of uploaded file.
invalid-size: Invalid :type file (Width :width, Height :height)
invalid-hd-skin: Invalid HD skin (Width and height can not be devided by 32)
invalid-size: Invalid :type file (width :width, height :height)
invalid-hd-skin: Invalid HD skin (width and height should be divisible by 32)
lack-score: You don't have enough score to upload this texture.
repeated: The texture is already uploaded by someone else. You can add it to your closet directly.
@ -82,9 +82,9 @@ delete:
success: The texture was deleted successfully.
privacy:
change-privacy: Change Privacy
set-as-private: Set as Private
set-as-public: Set as Public
change-privacy: Change privacy
set-as-private: Set as private
set-as-public: Set as public
success: The texture was set to :privacy successfully.
rename:
@ -94,5 +94,5 @@ model:
success: The texture's model was changed to :model successfully.
duplicate: "The same texture available for the chosen model already exists in skinlib (Name: :tid). You can add it to your closet directly."
no-permission: You aren't the uploader of this texture.
non-existent: Non-existent texture.
no-permission: You have no permission to moderate this texture.
non-existent: No such texture.

View File

@ -55,10 +55,10 @@ closet:
reset: Clear selected
title: Which player should be applied to?
empty: It seems that you own no player...
add: Add new player
add: Add a new player
add:
success: Added :name to closet successfully~
success: Added :name to closet successfully.
repeated: You have already added this texture.
not-found: We cannot find this texture.
lack-score: You don't have enough score to add it to closet.
@ -69,7 +69,7 @@ closet:
remove:
title: Remove from closet
success: Texture was removed from closet successfully.
success: The texture was removed from closet successfully.
non-existent: The texture does not exist in your closet.
player:
@ -91,9 +91,6 @@ player:
cape: Cape
empty: Nothing
pname-rule: Could only contain letters, numbers and dashes.
pname-rule-chinese: Could only contain chinese characters, letters, numbers and dashes.
player-name-rule:
official: Player name may only contains letters, numbers and underscores.
cjk: Player name may contains letters, numbers, underscores and CJK Unified Ideographs.
@ -127,22 +124,22 @@ player:
profile:
avatar:
title: Change Avatar?
notice: Click the gear icon「<i class="fas fa-cog"></i>」of any skin in your skinlib, then click 「Set as avatar」. We will cut the head segment of that skin for you. If there is no icon like this, please unable the extensions like ADBlock.
wrong-type: You can't set a cape as avatar
success: Avatar setted successfully
notice: Click the gear icon "<i class="fa fa-cog"></i>" of any skin in your closet, then click "Set as avatar". We will cut the head segment of that skin for you. If there is no icon like this, please try to unable your ADs blocking extension.
wrong-type: You can't set a cape as avatar.
success: New avatar was set successfully.
password:
title: Change Password
old: Old Password
new: New Password
confirm: Repeat Password
button: Change Password
wrong-password: Original password is not correct.
button: Change password
wrong-password: Wrong original password.
success: Password updated successfully, please log in again.
nickname:
title: Change Nickname
empty: No nickname is setted now.
empty: No nickname is set now.
rule: Whatever you like expect special characters
success: Nickname is successfully updated to :nickname
@ -150,16 +147,16 @@ profile:
title: Change Email
new: New Email
password: Current Password
button: Change Email
button: Change email
wrong-password: Wrong password.
existed: This email address is used.
existed: This email address is occupied.
success: Email address updated successfully, please log in again.
delete:
title: Delete Account
notice: Sure to delete your account on :site?
admin: Admin account can not be deleted.
button: Delete My Account
button: Delete my account
modal-title: You need to enter your password to continue
modal-notice: |

View File

@ -14,10 +14,10 @@ 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.'
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.'
captcha: 'Incorrect captcha.'
confirmed: 'The :attribute confirmation does not match.'
@ -37,16 +37,16 @@ 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.'
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.'
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.'
@ -60,10 +60,10 @@ 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.'
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.'
@ -77,7 +77,7 @@ url: 'The :attribute format is invalid.'
# 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 }
attribute-name: { rule-name: custom-message }
# --------------------------------------------------------------------------
# Custom Validation Attributes
@ -88,9 +88,7 @@ custom:
# of "email". This simply helps us make messages a little cleaner.
#
attributes:
file: File
name: Name
player_name: Player Name
new_player_name: Player Name
identification: Email or player name
site name: Site Name
player_name: player name
new_player_name: player name
identification: email or player name
sitename: site name

View File

@ -20,10 +20,10 @@ users:
title: 更多操作
non-existent: 用户不存在
no-permission: 你无权操作此用户
invalid: 无效 action
invalid: 无效 action
email:
change: 修改邮箱
existed: :email 已被占用
existed: 邮箱 :email 已被占用
success: 邮箱修改成功
verification:
success: 用户的邮箱验证状态已修改
@ -54,8 +54,8 @@ users:
delete:
delete: 删除用户
success: 账号已被成功删除
cant-super-admin: 超级管理员账号不能被这样删除的啦
cant-admin: 你不能删除管理员账号哦
cant-super-admin: 超级管理员账号不能被删除
cant-admin: 无法删除管理员账号
players:
no-permission: 你无权操作此角色
@ -88,11 +88,11 @@ customize:
yellow-light: 黄色主题 - 白色侧边栏
green: 绿色主题
green-light: 绿色主题 - 白色侧边栏
purple: 基佬
purple: 色主题
purple-light: 紫色主题 - 白色侧边栏
red: 喜庆红(笑)
red: 红色主题
red-light: 红色主题 - 白色侧边栏
black: 高端
black: 色主题
black-light: 黑色主题 - 白色侧边栏
plugins:
@ -170,9 +170,9 @@ update:
errors:
prefix: 发生错误:
connection: 无法访问当前更新源。详细信息::error
connection: 无法访问当前更新源。详细信息:
write-permission: 你的服务器不支持自动更新:创建下载缓存文件夹失败,请检查目录权限。
unzip: 更新包解压缩失败。错误代码:
overwrite: 的服务器不支持自动更新:无法覆盖文件。
overwrite: 的服务器不支持自动更新:无法覆盖文件。
invalid-action: 无效的操作名

View File

@ -1,15 +1,16 @@
login:
title: 登录
button: 登录
message: 登录以管理您的角色及皮肤
message: 登录以管理你的角色与皮肤
keep: 保持登录状态
success: 登录成功,欢迎回来~
success: 登录成功,欢迎回来
check:
anonymous: 非法访问,请先登录
anonymous: 未授权的访问,请先登录
verified: 你必须验证邮箱后才能访问此页面
admin: 看起来你并不是管理员哦
banned: 你已经被本站封禁啦,请联系管理员解决
admin: 只有管理员才能访问此页面
banned: 你已被本站封禁,详情请联系站点管理员
token: 登录状态已过期,请重新登录
register:
title: 注册
@ -17,10 +18,10 @@ register:
message: 欢迎使用 :sitename
nickname-intro: 昵称可使用汉字,不可包含特殊字符
repeat-pwd: 重复密码
close: 残念。。皮肤站已关闭注册咯 QAQ
success: 注册成功,正在跳转~
max: 最多只能注册 :regs 个账户哦
registered: 这个邮箱已经注册过啦,换一个吧
close: 本站已关闭注册
success: 注册成功,正在跳转...
max: 在本站注册的账号已达到上限 :regs 个,无法继续注册
registered: 此邮箱已被占用
forgot:
title: 忘记密码
@ -54,8 +55,8 @@ bind:
title: 绑定邮箱
button: 绑定
message: 你需要绑定邮箱地址以继续使用本站
introduction: 邮箱地址仅用于重置密码,我们不会向您发送任何垃圾邮件
registered: 邮箱已被占用
introduction: 邮箱地址仅用于重置密码,我们不会向您发送任何垃圾邮件
registered: 邮箱已被占用
verify:
title: 邮箱验证
@ -69,12 +70,12 @@ validation:
identification: 邮箱或角色名格式错误
email: 邮箱格式错误
captcha: 验证码填写错误
user: 用户不存在
password: 密码不对哦~
user: 用户不存在
password: 密码错误
logout:
success: 登出成功~
fail: 并没有有效的 session
success: 登出成功
fail: 未找到已保存的登录信息
nickname: 昵称
email: Email
@ -82,6 +83,6 @@ identification: Email 或角色名
password: 密码
captcha: 请输入验证码
change-captcha: 点击以更换图片
login-link: 有账号?登录
login-link: 有账号?点击登录
forgot-link: 忘记密码?
register-link: 注册新账号

View File

@ -1,5 +1,5 @@
http:
msg-403: 没有权限查看此页面
msg-403: 没有权限查看此页面
msg-404: 这里啥都没有哦
msg-500: 服务器内部错误,请稍后再试
msg-503: 网站维护中
@ -11,12 +11,12 @@ exception:
code: '错误码::code'
detail: '详细信息::msg'
message: |
如果是访客,这说明网站程序出现了一些错误,请稍后再试或联系站长。
如果您是站长,请开启 .env 中的 APP_DEBUG 以查看详细信息。
如果是访客,这说明网站程序出现了一些错误,请稍后再试或联系站长。
如果你是站长,那么请开启 .env 中的 APP_DEBUG 查看详细信息。
plugins:
duplicate: 【插件定义重复】:dir1 目录下的插件与 :dir2 目录下的插件使用了相同的 name 定义并造成了冲突。请检查的插件目录,移除其中一个插件或者使用不同的 name 属性。
directory: 配置文件 .env 中指定的插件加载目录PLUGINS_DIR不存在或无法打开请检查的配置。错误信息::msg
duplicate: 【插件定义重复】:dir1 目录下的插件与 :dir2 目录下的插件使用了相同的 name 定义并造成了冲突。请检查的插件目录,移除其中一个插件或者使用不同的 name 属性。
directory: 配置文件 .env 中指定的插件加载目录PLUGINS_DIR不存在或无法打开请检查的配置。错误信息::msg
cipher:
unsupported: 不支持的密码加密方式 `:cipher`,请检查你的 .env 配置文件

View File

@ -19,7 +19,6 @@ plugin-market: 插件市场
plugin-configs: 插件配置
customize: 个性化
options: 站点配置
import-v2: 导入数据
score-options: 积分配置
check-update: 检查更新
download-update: 下载更新

View File

@ -14,6 +14,6 @@ features:
name: 永久免费
desc: 我们承诺永不收取任何费用
introduction: :sitename 提供 Minecraft 角色皮肤的上传以及托管服务。配合 CustomSkinLoader 等换肤 MOD您可以为您的游戏角色设置皮肤与披风,并让其他玩家在游戏中看到。
introduction: :sitename 提供 Minecraft 角色皮肤的上传以及托管服务。配合 CustomSkinLoader 等换肤 MOD你可以为你的游戏角色设置皮肤与披风,并让其他玩家在游戏中看到。
start: 开始使用

View File

@ -1,5 +1,5 @@
database:
connection-error: 无法连接至 :type 服务器,请检查你的配置。服务器返回的信息::msg
connection-error: 无法连接至 :type 服务器,请检查你的配置。服务器返回的信息::msg
table-already-exists: 检测到目标数据库中已存在如下数据表 :tables它们与本程序即将创建的数据表名称冲突为了避免原有数据被覆盖请手动删除它们或者为本程序选择一个不同的数据表前缀。
file:
@ -25,7 +25,7 @@ updates:
title: 还差一小步
text: |
欢迎升级至 Blessing Skin Server v:version
我们需要升级的数据库,点击下一步以继续。
我们需要升级的数据库,点击下一步以继续。
button: 下一步
success:
@ -59,13 +59,13 @@ wizard:
info:
title: 填写信息
button: 开始安装
text: 需要填写一些基本信息。无需担心填错,这些信息以后可以再次修改。
text: 需要填写一些基本信息。无需担心填错,这些信息以后可以再次修改。
admin-email: 管理员邮箱
admin-notice: 这是<b>唯一</b>的超级管理员账号,可 添加/取消 其他管理员。
admin-notice: 这是<b>唯一</b>的超级管理员账号,可添加或移除其他管理员。
nickname: 昵称
password: 密码
pwd-notice: <b>重要:</b>将需要此密码来登录管理皮肤站,请将其保存在安全的位置。
pwd-notice: <b>重要:</b>将需要此密码来登录管理皮肤站,请将其保存在安全的位置。
confirm-pwd: 重复密码
site-name: 站点名称
site-name-notice: 将会显示在首页以及标题栏
@ -74,4 +74,8 @@ wizard:
finish:
title: 安装成功!
text: Blessing Skin Server 安装完成。您是否还沉浸在愉悦的安装过程中?很遗憾,一切皆已完成! :)
text: Blessing Skin Server 安装完成。你是否还沉浸在愉悦的安装过程中?很遗憾,一切皆已完成! :)
integrity-check:
title: 安装不完全
description: 由于某些神秘的原因,我们无法自动完成数据库的更新。<a target="_blank" href="https://github.com/printempw/blessing-skin-server/wiki/%E6%89%8B%E5%8A%A8%E5%AE%89%E8%A3%85-Blessing-Skin#-%E5%8D%87%E7%BA%A7%E8%87%B3-bs-v350">了解详情</a>

View File

@ -53,7 +53,7 @@ show:
deleted: 请求的材质文件已经被删除
contact-admin: 请联系管理员删除该条目
private: 请求的材质已经设为私,仅上传者和管理员可查看
private: 请求的材质已经设为,仅上传者和管理员可查看
upload:
title: 上传材质
@ -69,11 +69,11 @@ upload:
button: 确认上传
type-error: 文件格式不对哦
type-error: 文件格式不符合要求,请检查你的材质文件
invalid-size: 不是有效的 :type 文件(宽 :width高 :height
invalid-hd-skin: 不是有效的高清皮肤(宽和高不是 32 的整数倍)
lack-score: 积分不够啦
lack-score: 积分不
repeated: 已经有人上传过这个材质了,直接添加到衣柜使用吧~
success: 材质 :name 上传成功
@ -93,5 +93,5 @@ model:
success: 材质的适用模型已被修改为 :model
duplicate: 已经有人上传过适用于该模型的相同材质了,直接去皮肤库收藏使用吧(名称::tid
no-permission: 不是这个材质的上传者哦
no-permission: 没有权限修改此材质
non-existent: 材质不存在

View File

@ -6,10 +6,10 @@ used:
cur-score: 当前积分
score-notice: 点击积分查看说明
sign: 签到
sign-success: 签到成功,获得了 :score 积分~
sign-success: 签到成功,获得了 :score 积分
time-unit-hour: 小时
time-unit-min: 分钟
cant-sign-until: :time :unit 后才能再次签到哦~
cant-sign-until: :time :unit 后才能再次签到哦
last-sign: 上次签到于 :time
sign-remain-time: :time :unit 后可签到
announcement: 公告
@ -28,7 +28,7 @@ verification:
ignore: 如果您并没有访问过我们的网站,或没有进行上述操作,请忽略这封邮件
score-intro:
title: 积分是个啥
title: 积分是什么
introduction: |
为了防止用户滥用材质上传功能导致占用过多的存储空间,本站已启用积分系统。
添加角色、上传材质,以及添加皮肤库里的材质到衣柜等操作均会消耗积分。
@ -55,14 +55,14 @@ closet:
button: 使用...
reset: 重置已选材质
title: 要给哪个角色使用呢?
empty: 好像还没有添加任何角色哦
empty: 还没有添加任何角色哦
add: 添加角色
add:
success: 材质 :name 收藏成功~
success: 材质 :name 收藏成功
repeated: 你已经收藏过这个材质啦
not-found: 并没有这个材质
lack-score: 积分不够添加收藏啦
not-found: 该材质不存在
lack-score: 收藏失败,积分不足
rename:
title: 重命名物品
@ -82,7 +82,7 @@ player:
delete-player: 删除角色
add-player: 添加新角色
login-notice: 现在可以使用你所拥有的角色名来登录皮肤站啦~
login-notice: 可以使用你所拥有的角色名来登录皮肤站
player-info: 角色信息 <small>(点击角色名以查看预览)</small>
@ -100,15 +100,15 @@ player:
player-name-length: 角色名最少要求 :min 个字符,最多不超过 :max 个字符。
add:
repeated: 该角色名已经被其他人注册掉啦
lack-score: 积分不够添加角色啦
repeated: 该角色名已被占用
lack-score: 添加角色失败,积分不足
success: 成功添加了角色 :name
delete:
success: 角色 :name 已被删除
rename:
repeated: 此角色名已被他人使用,换一个吧~
repeated: 该角色名已被占用
success: 角色 :old 已更名为 :new
set:
@ -125,13 +125,13 @@ player:
profile:
avatar:
title: 更改头像?
notice: 在衣柜中任意皮肤的右下角「<i class="fas fa-cog"></i>」处选择「设为头像」,将会自动截取该皮肤的头部作为头像哦~ 如果看不到这个图标,请关闭 ADBlockABP 之类的广告过滤扩展。
wrong-type: 披风不能设置为头像哦~
success: 设置成功
notice: 在衣柜中任意皮肤的右下角「<i class="fa fa-cog"></i>」图标处点击「设为头像」,即可自动截取该皮肤的头部作为头像。如果看不到这个图标,请尝试关闭你的广告过滤扩展。
wrong-type: 披风不能设置为头像
success: 设置成功
password:
title: 更改密码
old: 旧的密码
old: 密码
new: 新密码
confirm: 确认密码
button: 修改密码
@ -150,13 +150,13 @@ profile:
password: 当前密码
button: 修改邮箱
wrong-password: 密码错误
existed: 这个邮箱已经被别人占用啦
existed: 此邮箱已被占用
success: 邮箱修改成功,请重新登录
delete:
title: 删除账号
notice: 确定要删除你在 :site 上的账号吗?
admin: 管理员账号不能被删除
admin: 拥有管理员权限的账号不能被删除
button: 删除我的账户
modal-title: 这是危险操作,输入密码以继续

View File

@ -14,10 +14,10 @@ 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 个单元。'
numeric: ':attribute 必须介于 :min - :max 之间。'
file: ':attribute 必须介于 :min - :max kb 之间。'
string: ':attribute 必须介于 :min - :max 个字符之间。'
array: ':attribute 必须只有 :min - :max 个单元。'
boolean: ':attribute 必须为布尔值。'
captcha: '验证码不正确。'
confirmed: ':attribute 两次输入不一致。'
@ -39,17 +39,17 @@ integer: ':attribute 必须是整数。'
ip: ':attribute 必须是有效的 IP 地址。'
json: ':attribute 必须是正确的 JSON 格式。'
max:
numeric: ':attribute 不能大于 :max。'
file: ':attribute 不能大于 :max kb。'
string: ':attribute 不能大于 :max 个字符。'
array: ':attribute 最多只有 :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 个单元。'
numeric: ':attribute 必须大于等于 :min。'
file: ':attribute 大小不能小于 :min kb。'
string: ':attribute 至少为 :min 个字符。'
array: ':attribute 至少有 :min 个单元。'
not_in: '已选的属性 :attribute 非法。'
numeric: ':attribute 必须是一个数字。'
present: ':attribute 必须存在。'
@ -63,53 +63,53 @@ 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 个单元。'
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 }
identification:
required: 邮箱或角色名格式错误
attribute-name: { rule-name: custom-message }
identification:
required: 邮箱或角色名格式错误
attributes:
name: 名称
file: 文件
username: 用户名
identification: 邮箱或角色名
new_player_name: 角色名
sitename: 站点名称
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: 大小
name: 名称
file: 文件
username: 用户名
identification: 邮箱或角色名
new_player_name: 角色名
sitename: 站点名称
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: 大小

View File

@ -736,7 +736,7 @@ class AdminControllerTest extends BrowserKitTestCase
'Accept' => 'application/json',
])->seeJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => 'Name'])
'msg' => trans('validation.required', ['attribute' => 'name'])
]);
// Rename a player successfully

View File

@ -41,7 +41,7 @@ class AuthControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => trans('auth.identification')])
'msg' => trans('validation.required', ['attribute' => trans('validation.attributes.identification')])
]);
// Should return a warning if `password` is empty
@ -263,7 +263,7 @@ class AuthControllerTest extends TestCase
]
)->assertJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => 'Player Name'])
'msg' => trans('validation.required', ['attribute' => trans('validation.attributes.player_name')])
]);
// Should return a warning if `player_name` is invalid
@ -278,7 +278,7 @@ class AuthControllerTest extends TestCase
]
)->assertJson([
'errno' => 1,
'msg' => trans('validation.player_name', ['attribute' => 'Player Name'])
'msg' => trans('validation.player_name', ['attribute' => trans('validation.attributes.player_name')])
]);
// Should return a warning if `player_name` is too long
@ -293,7 +293,7 @@ class AuthControllerTest extends TestCase
)->assertJson([
'errno' => 1,
'msg' => trans('validation.max.string', [
'attribute' => 'Player Name',
'attribute' => trans('validation.attributes.player_name'),
'max' => option('player_name_length_max')
])
]);

View File

@ -116,7 +116,7 @@ class ClosetControllerTest extends TestCase
['X-Requested-With' => 'XMLHttpRequest']
)->assertJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => 'Name'])
'msg' => trans('validation.required', ['attribute' => 'name'])
]);
// `name` field has special characters
@ -126,7 +126,7 @@ class ClosetControllerTest extends TestCase
['X-Requested-With' => 'XMLHttpRequest']
)->assertJson([
'errno' => 1,
'msg' => trans('validation.no_special_chars', ['attribute' => 'Name'])
'msg' => trans('validation.no_special_chars', ['attribute' => 'name'])
]);
// The user doesn't have enough score to add a texture

View File

@ -112,11 +112,11 @@ class MiddlewareTest extends TestCase
{
$this->getJson('/nope.json')
->assertStatus(404)
->assertSee('Un-existent player');
->assertSee(trans('general.unexistent-player'));
$this->get('/skin/nope.png')
->assertStatus(404)
->assertSee('Un-existent player');
->assertSee(trans('general.unexistent-player'));
Option::set('return_204_when_notfound', true);
$this->getJson('/nope.json')->assertStatus(204);
@ -178,7 +178,7 @@ class MiddlewareTest extends TestCase
{
$this->get('/auth/login')
->assertViewIs('auth.login')
->assertDontSee('User Center');
->assertDontSee(trans('general.user-center'));
$this->actingAs(factory(User::class)->create())
->get('/auth/login')

View File

@ -54,7 +54,7 @@ class PlayerControllerTest extends TestCase
$this->postJson('/user/player/add', [], ['X-Requested-With' => 'XMLHttpRequest'])
->assertJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => 'Player Name'])
'msg' => trans('validation.required', ['attribute' => trans('validation.attributes.player_name')])
]);
// Only A-Za-z0-9_ are allowed
@ -65,7 +65,7 @@ class PlayerControllerTest extends TestCase
['X-Requested-With' => 'XMLHttpRequest']
)->assertJson([
'errno' => 1,
'msg' => trans('validation.player_name', ['attribute' => 'Player Name'])
'msg' => trans('validation.player_name', ['attribute' => trans('validation.attributes.player_name')])
]);
// Custom player name rule (regexp)
@ -77,7 +77,7 @@ class PlayerControllerTest extends TestCase
['X-Requested-With' => 'XMLHttpRequest']
)->assertJson([
'errno' => 1,
'msg' => trans('validation.player_name', ['attribute' => 'Player Name'])
'msg' => trans('validation.player_name', ['attribute' => trans('validation.attributes.player_name')])
]);
// Lack of score
@ -178,7 +178,7 @@ class PlayerControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => 'Player Name'])
'msg' => trans('validation.required', ['attribute' => trans('validation.attributes.player_name')])
]);
// Only A-Za-z0-9_ are allowed
@ -190,7 +190,7 @@ class PlayerControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.player_name', ['attribute' => 'Player Name'])
'msg' => trans('validation.player_name', ['attribute' => trans('validation.attributes.player_name')])
]);
// Other invalid characters
@ -202,7 +202,7 @@ class PlayerControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.player_name', ['attribute' => 'Player Name'])
'msg' => trans('validation.player_name', ['attribute' => trans('validation.attributes.player_name')])
]);
// Use a duplicated player name

View File

@ -418,7 +418,7 @@ class SkinlibControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => 'Name'])
'msg' => trans('validation.required', ['attribute' => 'name'])
]);
// With some special chars
@ -428,7 +428,7 @@ class SkinlibControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.no_special_chars', ['attribute' => 'Name'])
'msg' => trans('validation.no_special_chars', ['attribute' => 'name'])
]);
// Specified regular expression for texture name
@ -439,7 +439,7 @@ class SkinlibControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.regex', ['attribute' => 'Name'])
'msg' => trans('validation.regex', ['attribute' => 'name'])
]);
option(['texture_name_regexp' => null]);
@ -450,7 +450,7 @@ class SkinlibControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.required', ['attribute' => 'File'])
'msg' => trans('validation.required', ['attribute' => 'file'])
]);
// Too large file
@ -463,7 +463,7 @@ class SkinlibControllerTest extends TestCase
'X-Requested-With' => 'XMLHttpRequest'
])->assertJson([
'errno' => 1,
'msg' => trans('validation.max.file', ['attribute' => 'File', 'max' => '2'])
'msg' => trans('validation.max.file', ['attribute' => 'file', 'max' => '2'])
]);
option(['max_upload_file_size' => 1024]);