mirror of
https://github.com/lkddi/nexusphp.git
synced 2026-04-15 13:32:41 +08:00
finish oauth provider + docker service wait for MySQL
This commit is contained in:
@@ -17,12 +17,12 @@ return [
|
||||
|
||||
'msg_title' => 'Claim settle result last month(:month):',
|
||||
'msg_subject' => ':month claim settlement',
|
||||
'claim_total' => 'Claim torrent total: <b>:total</b>',
|
||||
'claim_reached_counts' => 'Reached torrent counts: <b>:counts</b>',
|
||||
'claim_reached_summary' => 'Reached torrent get bonus per hour: <b>:bonus_per_hour</b>, seed time average(hour): <b>:hours</b>, get bonus total: <b>:bonus_total</b>',
|
||||
'claim_unreached_remain_counts' => 'Unreached torrent remain counts: <b>:counts</b>',
|
||||
'claim_unreached_remove_counts' => 'Unreached torrent remove counts: <b>:counts</b>',
|
||||
'claim_unreached_summary' => 'Deduct bonus every unreached torrent:<b>:deduct_per_torrent</b>, total deduct: <b>:deduct_total</b>',
|
||||
'claim_total' => 'Claim torrent total: [b]:total[/b]',
|
||||
'claim_reached_counts' => 'Reached torrent counts: [b]:counts[/b]',
|
||||
'claim_reached_summary' => 'Reached torrent get bonus per hour: [b]:bonus_per_hour[/b], seed time average(hour): [b]:hours[/b], get bonus total: [b]:bonus_total[/b]',
|
||||
'claim_unreached_remain_counts' => 'Unreached torrent remain counts: [b]:counts[/b]',
|
||||
'claim_unreached_remove_counts' => 'Unreached torrent remove counts: [b]:counts[/b]',
|
||||
'claim_unreached_summary' => 'Deduct bonus every unreached torrent:[b]:deduct_per_torrent[/b], total deduct: [b]:deduct_total[/b]',
|
||||
|
||||
'confirm_give_up' => 'Are you sure you want to give up claiming this torrent?',
|
||||
'add_claim' => 'Claim',
|
||||
|
||||
@@ -34,7 +34,7 @@ return [
|
||||
'cancel' => 'Cancel',
|
||||
'reset' => 'Reset',
|
||||
'anonymous' => 'Anonymous',
|
||||
'infinite' => 'Infinite',
|
||||
'infinite' => 'Inf.',
|
||||
'save' => 'Save',
|
||||
'country' => 'Country',
|
||||
'city' => 'City',
|
||||
|
||||
@@ -18,4 +18,12 @@ return [
|
||||
'id_claim' => 'ID claim',
|
||||
'username_claim' => 'username claim',
|
||||
'email_claim' => 'email claim',
|
||||
'level_claim' => 'Level field name',
|
||||
'level_limit' => 'Level limit',
|
||||
'level_limit_help' => 'Allow only users not below this level to log in',
|
||||
'get_access_token_error' => 'Getting access token error: :error',
|
||||
'get _provider_user_id_error' => 'Unable to get user ID via field :id_claim',
|
||||
'get_provider_level_error' => 'Unable to get user level via field :level_claim',
|
||||
'provider_level_not_ allowed' => 'Only users with level :level_limit or above are allowed to log in',
|
||||
'provider_email_already_exists' => 'Email: :email is already in use',
|
||||
];
|
||||
|
||||
@@ -17,12 +17,12 @@ return [
|
||||
|
||||
'msg_title' => '上个月(:month)认领结算如下:',
|
||||
'msg_subject' => ':month 认领结算',
|
||||
'claim_total' => '认领种子数:<b>:total</b>',
|
||||
'claim_reached_counts' => '达标数:<b>:counts</b>',
|
||||
'claim_reached_summary' => '达标种子数每小时魔力:<b>:bonus_per_hour</b>, 平均做种小时数:<b>:hours</b>, 获得魔力:<b>:bonus_total</b>',
|
||||
'claim_unreached_remain_counts' => '未达标保留数:<b>:counts</b>',
|
||||
'claim_unreached_remove_counts' => '未达标删除数:<b>:counts</b>',
|
||||
'claim_unreached_summary' => '未达标每个种子扣除魔力:<b>:deduct_per_torrent</b>,总扣除魔力:<b>:deduct_total</b>',
|
||||
'claim_total' => '认领种子数:[b]:total[/b]',
|
||||
'claim_reached_counts' => '达标数:[b]:counts[/b]',
|
||||
'claim_reached_summary' => '达标种子数每小时魔力:[b]:bonus_per_hour[/b], 平均做种小时数:[b]:hours[/b], 获得魔力:[b]:bonus_total[/b]',
|
||||
'claim_unreached_remain_counts' => '未达标保留数:[b]:counts[/b]',
|
||||
'claim_unreached_remove_counts' => '未达标删除数:[b]:counts[/b]',
|
||||
'claim_unreached_summary' => '未达标每个种子扣除魔力:[b]:deduct_per_torrent[/b],总扣除魔力:[b]:deduct_total[/b]',
|
||||
|
||||
'confirm_give_up' => '确定要放弃认领此种子吗?',
|
||||
'add_claim' => '认领',
|
||||
|
||||
@@ -18,4 +18,12 @@ return [
|
||||
'id_claim' => 'ID 字段名',
|
||||
'username_claim' => '用户名字段名',
|
||||
'email_claim' => '邮箱字段名',
|
||||
'level_claim' => '等级字段名',
|
||||
'level_limit' => '等级限制',
|
||||
'level_limit_help' => '只允许不低于此等级的用户登录',
|
||||
'get_access_token_error' => '获取访问令牌错误::error',
|
||||
'get_provider_user_id_error' => '无法通过字段 :id_claim 获取用户 ID',
|
||||
'get_provider_level_error' => '无法通过字段 :level_claim 获取用户等级',
|
||||
'provider_level_not_allowed' => '仅允许 :level_limit 或以上等级的用户登录',
|
||||
'provider_email_already_exists' => '邮箱::email 已经被使用',
|
||||
];
|
||||
|
||||
@@ -16,12 +16,12 @@ return [
|
||||
|
||||
'msg_title' => '上個月(:month)認領結算如下:',
|
||||
'msg_subject' => ':month 認領結算',
|
||||
'claim_total' => '認領種子數:<b>:total</b>',
|
||||
'claim_reached_counts' => '達標數:<b>:counts</b>',
|
||||
'claim_reached_summary' => '達標種子數每小時魔力:<b>:bonus_per_hour</b>, 平均做種小時數:<b>:hours</b>, 獲得魔力:<b>:bonus_total</b>',
|
||||
'claim_unreached_remain_counts' => '未達標保留數:<b>:counts</b>',
|
||||
'claim_unreached_remove_counts' => '未達標刪除數:<b>:counts</b>',
|
||||
'claim_unreached_summary' => '未達標每個種子扣除魔力:<b>:deduct_per_torrent</b>,總扣除魔力:<b>:deduct_total</b>',
|
||||
'claim_total' => '認領種子數:[b]:total[/b]',
|
||||
'claim_reached_counts' => '達標數:[b]:counts[/b]',
|
||||
'claim_reached_summary' => '達標種子數每小時魔力:[b]:bonus_per_hour[/b], 平均做種小時數:[b]:hours[/b], 獲得魔力:[b]:bonus_total[/b]',
|
||||
'claim_unreached_remain_counts' => '未達標保留數:[b]:counts[/b]',
|
||||
'claim_unreached_remove_counts' => '未達標刪除數:[b]:counts[/b]',
|
||||
'claim_unreached_summary' => '未達標每個種子扣除魔力:[b]:deduct_per_torrent[/b],總扣除魔力:[b]:deduct_total[/b]',
|
||||
|
||||
'confirm_give_up' => '確定要放棄認領此種子嗎?',
|
||||
'add_claim' => '認領',
|
||||
|
||||
@@ -18,4 +18,12 @@ return [
|
||||
'id_claim' => 'ID 字段名',
|
||||
'username_claim' => '用戶名字段名',
|
||||
'email_claim' => '郵箱字段名',
|
||||
'level_claim' => '等級字段名',
|
||||
'level_limit' => '等級限製',
|
||||
'level_limit_help' => '只允許不低於此等級的用戶登錄',
|
||||
'get_access_token_error' => '獲取訪問令牌錯誤::error',
|
||||
'get_provider_user_id_error' => '無法通過字段 :id_claim 獲取用戶 ID',
|
||||
'get_provider_level_error' => '無法通過字段 :level_claim 獲取用戶等級',
|
||||
'provider_level_not_allowed' => '僅允許 :level_limit 或以上等級的用戶登錄',
|
||||
'provider_email_already_exists' => '郵箱::email 已經被使用',
|
||||
];
|
||||
|
||||
190
resources/views/error.blade.php
Normal file
190
resources/views/error.blade.php
Normal file
@@ -0,0 +1,190 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Error</title>
|
||||
<style>
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: "PingFang SC", "Helvetica Neue", Helvetica, "Microsoft YaHei", Arial, sans-serif;
|
||||
background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
|
||||
height: 100vh;
|
||||
overflow: hidden;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.background {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: url('/pic/oauth2-authorize-bg.jpg');
|
||||
background-size: cover;
|
||||
background-position: center;
|
||||
opacity: 0.2;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.container {
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
max-width: 800px;
|
||||
padding: 3rem;
|
||||
background: rgba(255, 255, 255, 0.85);
|
||||
backdrop-filter: blur(10px);
|
||||
border-radius: 12px;
|
||||
box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.error-icon {
|
||||
font-size: 5rem;
|
||||
margin-bottom: 1.5rem;
|
||||
color: #5d76cb;
|
||||
}
|
||||
|
||||
.error-title {
|
||||
font-size: 2.5rem;
|
||||
font-weight: 700;
|
||||
margin-bottom: 1.5rem;
|
||||
color: #333;
|
||||
background: linear-gradient(135deg, #4568dc 0%, #b06ab3 100%);
|
||||
-webkit-background-clip: text;
|
||||
-webkit-text-fill-color: transparent;
|
||||
}
|
||||
|
||||
.error-message {
|
||||
font-size: 1.2rem;
|
||||
line-height: 1.6;
|
||||
margin-bottom: 2.5rem;
|
||||
color: #555;
|
||||
}
|
||||
|
||||
.action-links {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
gap: 1.5rem;
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
.btn {
|
||||
padding: 0.8rem 1.8rem;
|
||||
font-size: 1.1rem;
|
||||
font-weight: 600;
|
||||
border-radius: 8px;
|
||||
text-decoration: none;
|
||||
transition: all 0.3s ease;
|
||||
border: none;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.btn-primary {
|
||||
background: linear-gradient(135deg, #4568dc 0%, #b06ab3 100%);
|
||||
color: #fff;
|
||||
box-shadow: 0 4px 15px rgba(69, 104, 220, 0.3);
|
||||
}
|
||||
|
||||
.btn-primary:hover {
|
||||
transform: translateY(-3px);
|
||||
box-shadow: 0 8px 20px rgba(69, 104, 220, 0.5);
|
||||
}
|
||||
|
||||
.btn-secondary {
|
||||
background: transparent;
|
||||
color: #555;
|
||||
border: 1px solid rgba(0, 0, 0, 0.2);
|
||||
}
|
||||
|
||||
.btn-secondary:hover {
|
||||
background: rgba(0, 0, 0, 0.05);
|
||||
transform: translateY(-3px);
|
||||
}
|
||||
|
||||
.footer {
|
||||
margin-top: 2rem;
|
||||
color: #777;
|
||||
font-size: 0.9rem;
|
||||
}
|
||||
|
||||
.ornament {
|
||||
position: absolute;
|
||||
background: linear-gradient(135deg, #4568dc 0%, #b06ab3 100%);
|
||||
border-radius: 50%;
|
||||
filter: blur(70px);
|
||||
opacity: 0.15;
|
||||
z-index: 0;
|
||||
}
|
||||
|
||||
.ornament-1 {
|
||||
width: 300px;
|
||||
height: 300px;
|
||||
top: -150px;
|
||||
left: -150px;
|
||||
}
|
||||
|
||||
.ornament-2 {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
bottom: -100px;
|
||||
right: -100px;
|
||||
}
|
||||
|
||||
@media (max-width: 768px) {
|
||||
.container {
|
||||
width: 90%;
|
||||
padding: 2rem;
|
||||
}
|
||||
|
||||
.error-title {
|
||||
font-size: 2rem;
|
||||
}
|
||||
|
||||
.error-message {
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
.action-links {
|
||||
flex-direction: column;
|
||||
gap: 1rem;
|
||||
}
|
||||
|
||||
.btn {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
||||
</head>
|
||||
<body>
|
||||
<div class="background"></div>
|
||||
<div class="ornament ornament-1"></div>
|
||||
<div class="ornament ornament-2"></div>
|
||||
|
||||
<div class="container">
|
||||
<div class="error-icon">
|
||||
<i class="fas fa-exclamation-circle"></i>
|
||||
</div>
|
||||
<h1 class="error-title">Error</h1>
|
||||
<p class="error-message">
|
||||
{{ $error }}
|
||||
</p>
|
||||
|
||||
<div class="action-links">
|
||||
<a href="/" class="btn btn-primary">Go home</a>
|
||||
<a href="javascript:history.back()" class="btn btn-secondary">Go back</a>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user