mirror of
https://github.com/v2board/v2board.git
synced 2025-02-25 06:40:26 +08:00
optimization: validated
This commit is contained in:
parent
e2a07cc4d1
commit
bb9b1c4a57
@ -121,7 +121,7 @@ class ConfigController extends Controller
|
|||||||
$data = $request->input();
|
$data = $request->input();
|
||||||
$array = \Config::get('v2board');
|
$array = \Config::get('v2board');
|
||||||
foreach ($data as $k => $v) {
|
foreach ($data as $k => $v) {
|
||||||
if (!in_array($k, array_keys(ConfigSave::RULES))) {
|
if (!in_array($k, array_keys($request->validated()))) {
|
||||||
abort(500, '参数' . $k . '不在规则内,禁止修改');
|
abort(500, '参数' . $k . '不在规则内,禁止修改');
|
||||||
}
|
}
|
||||||
$array[$k] = $v;
|
$array[$k] = $v;
|
||||||
|
@ -23,7 +23,7 @@ class CouponController extends Controller
|
|||||||
|
|
||||||
public function save(CouponSave $request)
|
public function save(CouponSave $request)
|
||||||
{
|
{
|
||||||
$params = $request->only(array_keys(CouponSave::RULES));
|
$params = $request->validated();
|
||||||
if (isset($params['limit_plan_ids'])) {
|
if (isset($params['limit_plan_ids'])) {
|
||||||
$params['limit_plan_ids'] = json_encode($params['limit_plan_ids']);
|
$params['limit_plan_ids'] = json_encode($params['limit_plan_ids']);
|
||||||
}
|
}
|
||||||
|
@ -42,7 +42,7 @@ class PlanController extends Controller
|
|||||||
|
|
||||||
public function save(PlanSave $request)
|
public function save(PlanSave $request)
|
||||||
{
|
{
|
||||||
$params = $request->only(array_keys(PlanSave::RULES));
|
$params = $request->validated();
|
||||||
if ($request->input('id')) {
|
if ($request->input('id')) {
|
||||||
$plan = Plan::find($request->input('id'));
|
$plan = Plan::find($request->input('id'));
|
||||||
if (!$plan) {
|
if (!$plan) {
|
||||||
|
@ -37,7 +37,7 @@ class TrojanController extends Controller
|
|||||||
|
|
||||||
public function save(ServerTrojanSave $request)
|
public function save(ServerTrojanSave $request)
|
||||||
{
|
{
|
||||||
$params = $request->only(array_keys(ServerTrojanSave::RULES));
|
$params = $request->validated();
|
||||||
$params['group_id'] = json_encode($params['group_id']);
|
$params['group_id'] = json_encode($params['group_id']);
|
||||||
if (isset($params['tags'])) {
|
if (isset($params['tags'])) {
|
||||||
$params['tags'] = json_encode($params['tags']);
|
$params['tags'] = json_encode($params['tags']);
|
||||||
|
@ -37,7 +37,7 @@ class V2rayController extends Controller
|
|||||||
|
|
||||||
public function save(ServerV2raySave $request)
|
public function save(ServerV2raySave $request)
|
||||||
{
|
{
|
||||||
$params = $request->only(array_keys(ServerV2raySave::RULES));
|
$params = $request->validated();
|
||||||
$params['group_id'] = json_encode($params['group_id']);
|
$params['group_id'] = json_encode($params['group_id']);
|
||||||
if (isset($params['tags'])) {
|
if (isset($params['tags'])) {
|
||||||
$params['tags'] = json_encode($params['tags']);
|
$params['tags'] = json_encode($params['tags']);
|
||||||
|
@ -20,7 +20,7 @@ class TutorialController extends Controller
|
|||||||
|
|
||||||
public function save(TutorialSave $request)
|
public function save(TutorialSave $request)
|
||||||
{
|
{
|
||||||
$params = $request->only(array_keys(TutorialSave::RULES));
|
$params = $request->validated();
|
||||||
|
|
||||||
if (!$request->input('id')) {
|
if (!$request->input('id')) {
|
||||||
if (!Tutorial::create($params)) {
|
if (!Tutorial::create($params)) {
|
||||||
|
@ -53,7 +53,7 @@ class UserController extends Controller
|
|||||||
|
|
||||||
public function update(UserUpdate $request)
|
public function update(UserUpdate $request)
|
||||||
{
|
{
|
||||||
$params = $request->only(array_keys(UserUpdate::RULES));
|
$params = $request->validated();
|
||||||
$user = User::find($request->input('id'));
|
$user = User::find($request->input('id'));
|
||||||
if (!$user) {
|
if (!$user) {
|
||||||
abort(500, '用户不存在');
|
abort(500, '用户不存在');
|
||||||
|
@ -6,75 +6,6 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
|
|
||||||
class ConfigSave extends FormRequest
|
class ConfigSave extends FormRequest
|
||||||
{
|
{
|
||||||
CONST RULES = [
|
|
||||||
// invite & commission
|
|
||||||
'safe_mode_enable' => 'in:0,1',
|
|
||||||
'invite_force' => 'in:0,1',
|
|
||||||
'invite_commission' => 'integer',
|
|
||||||
'invite_gen_limit' => 'integer',
|
|
||||||
'invite_never_expire' => 'in:0,1',
|
|
||||||
'commission_first_time_enable' => 'in:0,1',
|
|
||||||
'commission_auto_check_enable' => 'in:0,1',
|
|
||||||
// site
|
|
||||||
'stop_register' => 'in:0,1',
|
|
||||||
'email_verify' => 'in:0,1',
|
|
||||||
'app_name' => '',
|
|
||||||
'app_description' => '',
|
|
||||||
'app_url' => 'nullable|url',
|
|
||||||
'subscribe_url' => 'nullable|url',
|
|
||||||
'try_out_enable' => 'in:0,1',
|
|
||||||
'try_out_plan_id' => 'integer',
|
|
||||||
'try_out_hour' => 'numeric',
|
|
||||||
'email_whitelist_enable' => 'in:0,1',
|
|
||||||
'email_whitelist_suffix' => '',
|
|
||||||
'email_gmail_limit_enable' => 'in:0,1',
|
|
||||||
// subscribe
|
|
||||||
'plan_change_enable' => 'in:0,1',
|
|
||||||
'reset_traffic_method' => 'in:0,1',
|
|
||||||
'renew_reset_traffic_enable' => 'in:0,1',
|
|
||||||
// server
|
|
||||||
'server_token' => 'nullable|min:16',
|
|
||||||
'server_license' => 'nullable',
|
|
||||||
'server_log_level' => 'nullable|in:debug,info,warning,error,none',
|
|
||||||
// alipay
|
|
||||||
'alipay_enable' => 'in:0,1',
|
|
||||||
'alipay_appid' => 'nullable|integer|min:16',
|
|
||||||
'alipay_pubkey' => 'max:2048',
|
|
||||||
'alipay_privkey' => 'max:2048',
|
|
||||||
// stripe
|
|
||||||
'stripe_alipay_enable' => 'in:0,1',
|
|
||||||
'stripe_wepay_enable' => 'in:0,1',
|
|
||||||
'stripe_card_enable' => 'in:0,1',
|
|
||||||
'stripe_sk_live' => '',
|
|
||||||
'stripe_pk_live' => '',
|
|
||||||
'stripe_webhook_key' => '',
|
|
||||||
'stripe_currency' => 'in:hkd,usd,sgd,eur,gbp,jpy',
|
|
||||||
// bitpayx
|
|
||||||
'bitpayx_name' => '',
|
|
||||||
'bitpayx_enable' => 'in:0,1',
|
|
||||||
'bitpayx_appsecret' => '',
|
|
||||||
// paytaro
|
|
||||||
'paytaro_name' => '',
|
|
||||||
'paytaro_enable' => 'in:0,1',
|
|
||||||
'paytaro_app_id' => '',
|
|
||||||
'paytaro_app_secret' => '',
|
|
||||||
// frontend
|
|
||||||
'frontend_theme_sidebar' => 'in:dark,light',
|
|
||||||
'frontend_theme_header' => 'in:dark,light',
|
|
||||||
'frontend_theme_color' => 'in:default,darkblue,black',
|
|
||||||
'frontend_background_url' => 'nullable|url',
|
|
||||||
// tutorial
|
|
||||||
'apple_id' => 'email',
|
|
||||||
'apple_id_password' => '',
|
|
||||||
// email
|
|
||||||
'email_template' => '',
|
|
||||||
// telegram
|
|
||||||
'telegram_bot_enable' => 'in:0,1',
|
|
||||||
'telegram_bot_token' => '',
|
|
||||||
'telegram_discuss_id' => '',
|
|
||||||
'telegram_channel_id' => ''
|
|
||||||
];
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
@ -82,7 +13,74 @@ class ConfigSave extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return self::RULES;
|
return [
|
||||||
|
// invite & commission
|
||||||
|
'safe_mode_enable' => 'in:0,1',
|
||||||
|
'invite_force' => 'in:0,1',
|
||||||
|
'invite_commission' => 'integer',
|
||||||
|
'invite_gen_limit' => 'integer',
|
||||||
|
'invite_never_expire' => 'in:0,1',
|
||||||
|
'commission_first_time_enable' => 'in:0,1',
|
||||||
|
'commission_auto_check_enable' => 'in:0,1',
|
||||||
|
// site
|
||||||
|
'stop_register' => 'in:0,1',
|
||||||
|
'email_verify' => 'in:0,1',
|
||||||
|
'app_name' => '',
|
||||||
|
'app_description' => '',
|
||||||
|
'app_url' => 'nullable|url',
|
||||||
|
'subscribe_url' => 'nullable|url',
|
||||||
|
'try_out_enable' => 'in:0,1',
|
||||||
|
'try_out_plan_id' => 'integer',
|
||||||
|
'try_out_hour' => 'numeric',
|
||||||
|
'email_whitelist_enable' => 'in:0,1',
|
||||||
|
'email_whitelist_suffix' => '',
|
||||||
|
'email_gmail_limit_enable' => 'in:0,1',
|
||||||
|
// subscribe
|
||||||
|
'plan_change_enable' => 'in:0,1',
|
||||||
|
'reset_traffic_method' => 'in:0,1',
|
||||||
|
'renew_reset_traffic_enable' => 'in:0,1',
|
||||||
|
// server
|
||||||
|
'server_token' => 'nullable|min:16',
|
||||||
|
'server_license' => 'nullable',
|
||||||
|
'server_log_level' => 'nullable|in:debug,info,warning,error,none',
|
||||||
|
// alipay
|
||||||
|
'alipay_enable' => 'in:0,1',
|
||||||
|
'alipay_appid' => 'nullable|integer|min:16',
|
||||||
|
'alipay_pubkey' => 'max:2048',
|
||||||
|
'alipay_privkey' => 'max:2048',
|
||||||
|
// stripe
|
||||||
|
'stripe_alipay_enable' => 'in:0,1',
|
||||||
|
'stripe_wepay_enable' => 'in:0,1',
|
||||||
|
'stripe_card_enable' => 'in:0,1',
|
||||||
|
'stripe_sk_live' => '',
|
||||||
|
'stripe_pk_live' => '',
|
||||||
|
'stripe_webhook_key' => '',
|
||||||
|
'stripe_currency' => 'in:hkd,usd,sgd,eur,gbp,jpy',
|
||||||
|
// bitpayx
|
||||||
|
'bitpayx_name' => '',
|
||||||
|
'bitpayx_enable' => 'in:0,1',
|
||||||
|
'bitpayx_appsecret' => '',
|
||||||
|
// paytaro
|
||||||
|
'paytaro_name' => '',
|
||||||
|
'paytaro_enable' => 'in:0,1',
|
||||||
|
'paytaro_app_id' => '',
|
||||||
|
'paytaro_app_secret' => '',
|
||||||
|
// frontend
|
||||||
|
'frontend_theme_sidebar' => 'in:dark,light',
|
||||||
|
'frontend_theme_header' => 'in:dark,light',
|
||||||
|
'frontend_theme_color' => 'in:default,darkblue,black',
|
||||||
|
'frontend_background_url' => 'nullable|url',
|
||||||
|
// tutorial
|
||||||
|
'apple_id' => 'email',
|
||||||
|
'apple_id_password' => '',
|
||||||
|
// email
|
||||||
|
'email_template' => '',
|
||||||
|
// telegram
|
||||||
|
'telegram_bot_enable' => 'in:0,1',
|
||||||
|
'telegram_bot_token' => '',
|
||||||
|
'telegram_discuss_id' => '',
|
||||||
|
'telegram_channel_id' => ''
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages()
|
public function messages()
|
||||||
|
@ -6,16 +6,6 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
|
|
||||||
class CouponSave extends FormRequest
|
class CouponSave extends FormRequest
|
||||||
{
|
{
|
||||||
const RULES = [
|
|
||||||
'name' => 'required',
|
|
||||||
'type' => 'required|in:1,2',
|
|
||||||
'value' => 'required|integer',
|
|
||||||
'started_at' => 'required|integer',
|
|
||||||
'ended_at' => 'required|integer',
|
|
||||||
'limit_use' => 'nullable|integer',
|
|
||||||
'limit_plan_ids' => 'nullable|array',
|
|
||||||
'code' => ''
|
|
||||||
];
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
@ -23,7 +13,16 @@ class CouponSave extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return self::RULES;
|
return [
|
||||||
|
'name' => 'required',
|
||||||
|
'type' => 'required|in:1,2',
|
||||||
|
'value' => 'required|integer',
|
||||||
|
'started_at' => 'required|integer',
|
||||||
|
'ended_at' => 'required|integer',
|
||||||
|
'limit_use' => 'nullable|integer',
|
||||||
|
'limit_plan_ids' => 'nullable|array',
|
||||||
|
'code' => ''
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages()
|
public function messages()
|
||||||
|
@ -6,18 +6,6 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
|
|
||||||
class PlanSave extends FormRequest
|
class PlanSave extends FormRequest
|
||||||
{
|
{
|
||||||
CONST RULES = [
|
|
||||||
'name' => 'required',
|
|
||||||
'content' => '',
|
|
||||||
'group_id' => 'required',
|
|
||||||
'transfer_enable' => 'required',
|
|
||||||
'month_price' => 'nullable|integer',
|
|
||||||
'quarter_price' => 'nullable|integer',
|
|
||||||
'half_year_price' => 'nullable|integer',
|
|
||||||
'year_price' => 'nullable|integer',
|
|
||||||
'onetime_price' => 'nullable|integer',
|
|
||||||
'reset_price' => 'nullable|integer'
|
|
||||||
];
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
@ -25,7 +13,18 @@ class PlanSave extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return self::RULES;
|
return [
|
||||||
|
'name' => 'required',
|
||||||
|
'content' => '',
|
||||||
|
'group_id' => 'required',
|
||||||
|
'transfer_enable' => 'required',
|
||||||
|
'month_price' => 'nullable|integer',
|
||||||
|
'quarter_price' => 'nullable|integer',
|
||||||
|
'half_year_price' => 'nullable|integer',
|
||||||
|
'year_price' => 'nullable|integer',
|
||||||
|
'onetime_price' => 'nullable|integer',
|
||||||
|
'reset_price' => 'nullable|integer'
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages()
|
public function messages()
|
||||||
|
@ -6,19 +6,6 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
|
|
||||||
class ServerTrojanSave extends FormRequest
|
class ServerTrojanSave extends FormRequest
|
||||||
{
|
{
|
||||||
CONST RULES = [
|
|
||||||
'show' => '',
|
|
||||||
'name' => 'required',
|
|
||||||
'group_id' => 'required|array',
|
|
||||||
'parent_id' => 'nullable|integer',
|
|
||||||
'host' => 'required',
|
|
||||||
'port' => 'required',
|
|
||||||
'server_port' => 'required',
|
|
||||||
'allow_insecure' => 'nullable|in:0,1',
|
|
||||||
'server_name' => 'nullable',
|
|
||||||
'tags' => 'nullable|array',
|
|
||||||
'rate' => 'required|numeric'
|
|
||||||
];
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
@ -26,7 +13,19 @@ class ServerTrojanSave extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return self::RULES;
|
return [
|
||||||
|
'show' => '',
|
||||||
|
'name' => 'required',
|
||||||
|
'group_id' => 'required|array',
|
||||||
|
'parent_id' => 'nullable|integer',
|
||||||
|
'host' => 'required',
|
||||||
|
'port' => 'required',
|
||||||
|
'server_port' => 'required',
|
||||||
|
'allow_insecure' => 'nullable|in:0,1',
|
||||||
|
'server_name' => 'nullable',
|
||||||
|
'tags' => 'nullable|array',
|
||||||
|
'rate' => 'required|numeric'
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages()
|
public function messages()
|
||||||
|
@ -6,23 +6,6 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
|
|
||||||
class ServerV2raySave extends FormRequest
|
class ServerV2raySave extends FormRequest
|
||||||
{
|
{
|
||||||
CONST RULES = [
|
|
||||||
'show' => '',
|
|
||||||
'name' => 'required',
|
|
||||||
'group_id' => 'required|array',
|
|
||||||
'parent_id' => 'nullable|integer',
|
|
||||||
'host' => 'required',
|
|
||||||
'port' => 'required',
|
|
||||||
'server_port' => 'required',
|
|
||||||
'tls' => 'required',
|
|
||||||
'tags' => 'nullable|array',
|
|
||||||
'rate' => 'required|numeric',
|
|
||||||
'network' => 'required|in:tcp,kcp,ws,http,domainsocket,quic',
|
|
||||||
'networkSettings' => '',
|
|
||||||
'ruleSettings' => '',
|
|
||||||
'tlsSettings' => '',
|
|
||||||
'dnsSettings' => ''
|
|
||||||
];
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
@ -30,7 +13,23 @@ class ServerV2raySave extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return self::RULES;
|
return [
|
||||||
|
'show' => '',
|
||||||
|
'name' => 'required',
|
||||||
|
'group_id' => 'required|array',
|
||||||
|
'parent_id' => 'nullable|integer',
|
||||||
|
'host' => 'required',
|
||||||
|
'port' => 'required',
|
||||||
|
'server_port' => 'required',
|
||||||
|
'tls' => 'required',
|
||||||
|
'tags' => 'nullable|array',
|
||||||
|
'rate' => 'required|numeric',
|
||||||
|
'network' => 'required|in:tcp,kcp,ws,http,domainsocket,quic',
|
||||||
|
'networkSettings' => '',
|
||||||
|
'ruleSettings' => '',
|
||||||
|
'tlsSettings' => '',
|
||||||
|
'dnsSettings' => ''
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages()
|
public function messages()
|
||||||
|
@ -6,12 +6,6 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
|
|
||||||
class TutorialSave extends FormRequest
|
class TutorialSave extends FormRequest
|
||||||
{
|
{
|
||||||
CONST RULES = [
|
|
||||||
'title' => 'required',
|
|
||||||
// 1:windows 2:macos 3:ios 4:android 5:linux 6:router
|
|
||||||
'category_id' => 'required|in:1,2,3,4,5,6',
|
|
||||||
'steps' => 'required'
|
|
||||||
];
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
@ -19,7 +13,12 @@ class TutorialSave extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return self::RULES;
|
return [
|
||||||
|
'title' => 'required',
|
||||||
|
// 1:windows 2:macos 3:ios 4:android 5:linux 6:router
|
||||||
|
'category_id' => 'required|in:1,2,3,4,5,6',
|
||||||
|
'steps' => 'required'
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages()
|
public function messages()
|
||||||
|
@ -6,21 +6,6 @@ use Illuminate\Foundation\Http\FormRequest;
|
|||||||
|
|
||||||
class UserUpdate extends FormRequest
|
class UserUpdate extends FormRequest
|
||||||
{
|
{
|
||||||
CONST RULES = [
|
|
||||||
'email' => 'required|email',
|
|
||||||
'password' => 'nullable',
|
|
||||||
'transfer_enable' => 'numeric',
|
|
||||||
'expired_at' => 'nullable|integer',
|
|
||||||
'banned' => 'required|in:0,1',
|
|
||||||
'plan_id' => 'nullable|integer',
|
|
||||||
'commission_rate' => 'nullable|integer|min:0|max:100',
|
|
||||||
'discount' => 'nullable|integer|min:0|max:100',
|
|
||||||
'is_admin' => 'required|in:0,1',
|
|
||||||
'u' => 'integer',
|
|
||||||
'd' => 'integer',
|
|
||||||
'balance' => 'integer',
|
|
||||||
'commission_balance' => 'integer'
|
|
||||||
];
|
|
||||||
/**
|
/**
|
||||||
* Get the validation rules that apply to the request.
|
* Get the validation rules that apply to the request.
|
||||||
*
|
*
|
||||||
@ -28,7 +13,21 @@ class UserUpdate extends FormRequest
|
|||||||
*/
|
*/
|
||||||
public function rules()
|
public function rules()
|
||||||
{
|
{
|
||||||
return self::RULES;
|
return [
|
||||||
|
'email' => 'required|email',
|
||||||
|
'password' => 'nullable',
|
||||||
|
'transfer_enable' => 'numeric',
|
||||||
|
'expired_at' => 'nullable|integer',
|
||||||
|
'banned' => 'required|in:0,1',
|
||||||
|
'plan_id' => 'nullable|integer',
|
||||||
|
'commission_rate' => 'nullable|integer|min:0|max:100',
|
||||||
|
'discount' => 'nullable|integer|min:0|max:100',
|
||||||
|
'is_admin' => 'required|in:0,1',
|
||||||
|
'u' => 'integer',
|
||||||
|
'd' => 'integer',
|
||||||
|
'balance' => 'integer',
|
||||||
|
'commission_balance' => 'integer'
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function messages()
|
public function messages()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user