UnknownSec Bypass
403
:
/
mnt
/
lmsestudio-instance-vol002
/
lms_46e223538664
/
app
/
Providers
/ [
drwxr-xr-x
]
Menu
Upload
Mass depes
Mass delete
Terminal
Info server
About
name :
CustomRulesServiceProvider.php
<?php namespace EstudioLMS\Providers; use EstudioLMS\Helpers\Helpers; use File; use GuzzleHttp\Client; use Illuminate\Support\ServiceProvider; use Illuminate\Contracts\Validation\Factory; use Illuminate\Translation\Translator; use Illuminate\Http\Request; use Respect\Validation\Validator as v; class CustomRulesServiceProvider extends ServiceProvider { /** * Bootstrap the application services. * * @return void */ public function boot() { $this->app->call([$this, 'registerValidatorExtensions']); } /** * Register the application services. * * @return void */ public function register() { // } /** * @param Factory $validator * @param Translator $translator * @param Request $request */ public function registerValidatorExtensions(Factory $validator, Translator $translator, Request $request) { $validator->extendImplicit( 'strong_pwd', function ($attribute, $value, $parameters) use ($request) { if (empty($value)) { return true; } /*$regex = '/^.*(?=.{8,})((?=.*[!@#$%^&*()\-_=+{};:,<.>]){1})(?=.*\d)((?=.*[a-z]){1})((?=.*[A-Z]){1}).*$/'; return preg_match($regex, $value);*/ return true; }, $translator->get('messages.lblStrongPwd') ); $validator->extendImplicit( 'xpto', function ($attribute, $value, $parameters) use ($request) { if ($request['name'] == $value) { return false; } else { return true; } }, 'A subcategoria não pode ser igual a mesma categoria' ); $validator->extendImplicit( 'cpf_cnpj', function ($attribute, $value, $parameters) { if (strlen($value) === 14) { return v::cnpj()->validate($value); } elseif (strlen($value) === 11) { return v::cpf()->validate($value); } else { return false; } }, $translator->get('messages.lblCpfCnpj') ); $validator->extendImplicit( 'min_money', function ($attribute, $value, $parameters) { $money = floatval(str_replace(',', '.', str_replace('.', '', $value))); if ($money < 1) { return false; } return true; }, 'O valor não pode ser menor que 1.00' ); $validator->extendImplicit('greater_than', function ($attribute, $value, $parameters) { $other = $parameters[0]; return isset($other) and intval($value) > intval($other); }, $translator->get('messages.greaterThan') ); if ($request->has('uploaded_video')) { $fileName = $request->get('uploaded_video'); } else { $fileName = ''; } $validator->extendImplicit('file_exists', function ($attribute, $value, $parameters) use ($request) { $file = $request->get('file_name'); $fileName = $file . '.mp4'; return File::exists(public_path() . '/temp/'. $fileName); }, $translator->get('messages.file_exists', ['fillName' => $fileName]) ); $validator->extendImplicit('online_videos', function ($attribute, $value, $parameters) use ($request) { $videoInfo = Helpers::videoInfo($value); if (isset($videoInfo['duration'])) { return true; } return false; }, $translator->get('messages.online_videos') ); $validator->extendImplicit( 'recaptcha', function ($attribute, $value, $parameters) { $client = new Client(); $response = $client->post( 'https://www.google.com/recaptcha/api/siteverify', [ 'form_params' => [ 'secret' => config('app.GOOGLE_RECAPTCHA_SECRET'), 'response' => $value ] ] ); $body = json_decode((string)$response->getBody()); return $body->success; }, $translator->get('messages.recaptcha') ); } }
Copyright © 2026 - UnknownSec