codigo actual del servidor, con avances de joan
This commit is contained in:
37
app/Http/Middleware/AppLanguage.php
Normal file
37
app/Http/Middleware/AppLanguage.php
Normal file
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use App;
|
||||
|
||||
class AppLanguage
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
// Check header request and determine localizaton
|
||||
if($request->hasHeader('App-Language')){
|
||||
$locale = $request->header('App-Language');
|
||||
}
|
||||
elseif(env('DEFAULT_LANGUAGE') != null){
|
||||
$locale = env('DEFAULT_LANGUAGE');
|
||||
}
|
||||
else{
|
||||
$locale = 'en';
|
||||
}
|
||||
|
||||
|
||||
// set laravel localization
|
||||
App::setLocale($locale);
|
||||
|
||||
// continue request
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
19
app/Http/Middleware/Authenticate.php
Normal file
19
app/Http/Middleware/Authenticate.php
Normal file
@@ -0,0 +1,19 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Illuminate\Auth\Middleware\Authenticate as Middleware;
|
||||
|
||||
class Authenticate extends Middleware
|
||||
{
|
||||
/**
|
||||
* Get the path the user should be redirected to when they are not authenticated.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return string
|
||||
*/
|
||||
protected function redirectTo($request)
|
||||
{
|
||||
return route('login');
|
||||
}
|
||||
}
|
||||
87
app/Http/Middleware/CheckForMaintenanceMode.php
Normal file
87
app/Http/Middleware/CheckForMaintenanceMode.php
Normal file
@@ -0,0 +1,87 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Auth;
|
||||
use Illuminate\Contracts\Foundation\Application;
|
||||
|
||||
class CheckForMaintenanceMode
|
||||
{
|
||||
/**
|
||||
* The application implementation.
|
||||
*
|
||||
* @var \Illuminate\Contracts\Foundation\Application
|
||||
*/
|
||||
protected $app;
|
||||
|
||||
/**
|
||||
* The URIs that should be reachable while maintenance mode is enabled.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $except = [
|
||||
'/admin*', '/login', '/logout', '/subcategories*', '/subsubcategories*', '/home_categories*', '/aiz-uploader*'
|
||||
];
|
||||
|
||||
/**
|
||||
* Create a new middleware instance.
|
||||
*
|
||||
* @param \Illuminate\Contracts\Foundation\Application $app
|
||||
* @return void
|
||||
*/
|
||||
public function __construct(Application $app)
|
||||
{
|
||||
$this->app = $app;
|
||||
}
|
||||
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*
|
||||
* @throws \Symfony\Component\HttpKernel\Exception\HttpException
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if ($this->app->isDownForMaintenance()) {
|
||||
if ($request->is('api/*')) {
|
||||
return response()->json([
|
||||
'result' => false,
|
||||
'status' => 'maintenance',
|
||||
'message' => translate('We are Under Maintenance')
|
||||
]);
|
||||
}
|
||||
if ((Auth::check() && Auth::user()->user_type == 'admin') || (Auth::check() && Auth::user()->user_type == 'staff') || $this->inExceptArray($request)) {
|
||||
return $next($request);
|
||||
} else {
|
||||
return abort(503);
|
||||
}
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the request has a URI that should be accessible in maintenance mode.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return bool
|
||||
*/
|
||||
protected function inExceptArray($request)
|
||||
{
|
||||
foreach ($this->except as $except) {
|
||||
if ($except !== '/') {
|
||||
$except = trim($except, '/');
|
||||
}
|
||||
|
||||
if ($request->fullUrlIs($except) || $request->is($except)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
}
|
||||
33
app/Http/Middleware/CheckoutMiddleware.php
Normal file
33
app/Http/Middleware/CheckoutMiddleware.php
Normal file
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Auth;
|
||||
use App\Models\BusinessSetting;
|
||||
|
||||
class CheckoutMiddleware
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (BusinessSetting::where('type', 'guest_checkout_active')->first()->value != 1) {
|
||||
if(Auth::check()){
|
||||
return $next($request);
|
||||
}
|
||||
else {
|
||||
session(['link' => url()->current()]);
|
||||
return redirect()->route('user.login');
|
||||
}
|
||||
}
|
||||
else{
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
}
|
||||
28
app/Http/Middleware/CorsMiddleware.php
Normal file
28
app/Http/Middleware/CorsMiddleware.php
Normal file
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
|
||||
class CorsMiddleware
|
||||
{
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
$allowedOrigins = [
|
||||
'https://registro.lapieza.net',
|
||||
// Agrega aquí otros orígenes permitidos si es necesario
|
||||
];
|
||||
|
||||
$origin = $request->headers->get('Origin');
|
||||
|
||||
if (in_array($origin, $allowedOrigins)) {
|
||||
return $next($request)
|
||||
->header('Access-Control-Allow-Origin', $origin)
|
||||
->header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS')
|
||||
->header('Access-Control-Allow-Headers', 'Content-Type, Authorization, X-CSRF-Token');
|
||||
}
|
||||
|
||||
// Si el origen no está en la lista de orígenes permitidos, simplemente continúa sin configurar CORS
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
17
app/Http/Middleware/EncryptCookies.php
Normal file
17
app/Http/Middleware/EncryptCookies.php
Normal file
@@ -0,0 +1,17 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Illuminate\Cookie\Middleware\EncryptCookies as Middleware;
|
||||
|
||||
class EncryptCookies extends Middleware
|
||||
{
|
||||
/**
|
||||
* The names of the cookies that should not be encrypted.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $except = [
|
||||
//
|
||||
];
|
||||
}
|
||||
22
app/Http/Middleware/HttpsProtocol.php
Normal file
22
app/Http/Middleware/HttpsProtocol.php
Normal file
@@ -0,0 +1,22 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
|
||||
class HttpsProtocol {
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (env('FORCE_HTTPS') == "On" && !$request->secure()) {
|
||||
return redirect()->secure($request->getRequestUri());
|
||||
}
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
26
app/Http/Middleware/IsAdmin.php
Normal file
26
app/Http/Middleware/IsAdmin.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Auth;
|
||||
|
||||
class IsAdmin
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (Auth::check() && (Auth::user()->user_type == 'admin' || Auth::user()->user_type == 'staff')) {
|
||||
return $next($request);
|
||||
}
|
||||
else{
|
||||
abort(404);
|
||||
}
|
||||
}
|
||||
}
|
||||
23
app/Http/Middleware/IsAppUserUnbanned.php
Normal file
23
app/Http/Middleware/IsAppUserUnbanned.php
Normal file
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
|
||||
class IsAppUserUnbanned
|
||||
{
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
$user = auth()->user();
|
||||
if ($user->banned == 1) {
|
||||
$user->tokens()->where('id', $user->currentAccessToken()->id)->delete();
|
||||
|
||||
return response()->json([
|
||||
'result' => false,
|
||||
'status' => 'banned',
|
||||
'message' => translate('user is banned')
|
||||
]);
|
||||
}
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
27
app/Http/Middleware/IsCustomer.php
Normal file
27
app/Http/Middleware/IsCustomer.php
Normal file
@@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Auth;
|
||||
|
||||
class IsCustomer
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (Auth::check() && (Auth::user()->user_type == 'customer')) {
|
||||
return $next($request);
|
||||
}
|
||||
else{
|
||||
session(['link' => url()->current()]);
|
||||
return redirect()->route('user.login');
|
||||
}
|
||||
}
|
||||
}
|
||||
26
app/Http/Middleware/IsSeller.php
Normal file
26
app/Http/Middleware/IsSeller.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Auth;
|
||||
|
||||
class IsSeller
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (Auth::check() && Auth::user()->user_type == 'seller' && !Auth::user()->banned) {
|
||||
return $next($request);
|
||||
}
|
||||
else{
|
||||
abort(404);
|
||||
}
|
||||
}
|
||||
}
|
||||
36
app/Http/Middleware/IsUnbanned.php
Normal file
36
app/Http/Middleware/IsUnbanned.php
Normal file
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Auth;
|
||||
|
||||
class IsUnbanned
|
||||
{
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (auth()->check() && auth()->user()->banned) {
|
||||
|
||||
$redirect_to = "";
|
||||
if(auth()->user()->user_type == 'admin' || auth()->user()->user_type == 'staff'){
|
||||
$redirect_to = "login";
|
||||
}else{
|
||||
$redirect_to = "user.login";
|
||||
}
|
||||
|
||||
auth()->logout();
|
||||
|
||||
|
||||
|
||||
$message = translate("You are banned");
|
||||
flash($message);
|
||||
|
||||
|
||||
return redirect()->route($redirect_to);
|
||||
|
||||
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
31
app/Http/Middleware/IsUser.php
Normal file
31
app/Http/Middleware/IsUser.php
Normal file
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Auth;
|
||||
|
||||
class IsUser
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (Auth::check() &&
|
||||
(Auth::user()->user_type == 'customer' ||
|
||||
Auth::user()->user_type == 'seller' ||
|
||||
Auth::user()->user_type == 'delivery_boy') ) {
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
else{
|
||||
session(['link' => url()->current()]);
|
||||
return redirect()->route('user.login');
|
||||
}
|
||||
}
|
||||
}
|
||||
37
app/Http/Middleware/Language.php
Normal file
37
app/Http/Middleware/Language.php
Normal file
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use App;
|
||||
use Config;
|
||||
use Closure;
|
||||
use Session;
|
||||
use Carbon\Carbon;
|
||||
|
||||
class Language
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if(Session::has('locale')){
|
||||
$locale = Session::get('locale');
|
||||
}
|
||||
else{
|
||||
$locale = env('DEFAULT_LANGUAGE','en');
|
||||
}
|
||||
|
||||
App::setLocale($locale);
|
||||
$request->session()->put('locale', $locale);
|
||||
|
||||
$langcode = Session::has('langcode') ? Session::get('langcode') : 'en';
|
||||
Carbon::setLocale($langcode);
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
33
app/Http/Middleware/PreventBackHistory.php
Normal file
33
app/Http/Middleware/PreventBackHistory.php
Normal file
@@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class PreventBackHistory
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure(\Illuminate\Http\Request): (\Illuminate\Http\Response|\Illuminate\Http\RedirectResponse) $next
|
||||
* @return \Illuminate\Http\Response|\Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function handle(Request $request, Closure $next)
|
||||
{
|
||||
$headers = [
|
||||
'Cache-Control' => 'nocache, no-store, max-age=0, must-revalidate',
|
||||
'Pragma' => 'no-cache',
|
||||
'Expires' => 'Sat, 26 Jul 1997 05:00:00 GMT'
|
||||
];
|
||||
|
||||
$response = $next($request);
|
||||
|
||||
foreach($headers as $key => $value) {
|
||||
$response->headers->set($key, $value);
|
||||
}
|
||||
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
26
app/Http/Middleware/RedirectIfAuthenticated.php
Normal file
26
app/Http/Middleware/RedirectIfAuthenticated.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
class RedirectIfAuthenticated
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @param string|null $guard
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next, $guard = null)
|
||||
{
|
||||
if (Auth::guard($guard)->check()) {
|
||||
return redirect('/home');
|
||||
}
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
}
|
||||
18
app/Http/Middleware/TrimStrings.php
Normal file
18
app/Http/Middleware/TrimStrings.php
Normal file
@@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Illuminate\Foundation\Http\Middleware\TrimStrings as Middleware;
|
||||
|
||||
class TrimStrings extends Middleware
|
||||
{
|
||||
/**
|
||||
* The names of the attributes that should not be trimmed.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $except = [
|
||||
'password',
|
||||
'password_confirmation',
|
||||
];
|
||||
}
|
||||
28
app/Http/Middleware/TrustProxies.php
Normal file
28
app/Http/Middleware/TrustProxies.php
Normal file
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Http\Middleware\TrustProxies as Middleware;
|
||||
|
||||
class TrustProxies extends Middleware
|
||||
{
|
||||
/**
|
||||
* The trusted proxies for this application.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $proxies;
|
||||
|
||||
/**
|
||||
* The headers that should be used to detect proxies.
|
||||
*
|
||||
* @var int
|
||||
*/
|
||||
protected $headers =
|
||||
Request::HEADER_X_FORWARDED_FOR |
|
||||
Request::HEADER_X_FORWARDED_HOST |
|
||||
Request::HEADER_X_FORWARDED_PORT |
|
||||
Request::HEADER_X_FORWARDED_PROTO |
|
||||
Request::HEADER_X_FORWARDED_AWS_ELB;
|
||||
}
|
||||
26
app/Http/Middleware/UserMiddleware.php
Normal file
26
app/Http/Middleware/UserMiddleware.php
Normal file
@@ -0,0 +1,26 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Closure;
|
||||
|
||||
class UserMiddleware
|
||||
{
|
||||
/**
|
||||
* Handle an incoming request.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @param \Closure $next
|
||||
* @return mixed
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (Auth::check() && (isClient() || isFreelancer()) && !Auth::user()->banned) {
|
||||
return $next($request);
|
||||
}
|
||||
else{
|
||||
session(['link' => url()->current()]);
|
||||
return redirect()->route('user.login');
|
||||
}
|
||||
}
|
||||
}
|
||||
37
app/Http/Middleware/VerifyCsrfToken.php
Normal file
37
app/Http/Middleware/VerifyCsrfToken.php
Normal file
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use Illuminate\Foundation\Http\Middleware\VerifyCsrfToken as Middleware;
|
||||
|
||||
class VerifyCsrfToken extends Middleware
|
||||
{
|
||||
/**
|
||||
* Indicates whether the XSRF-TOKEN cookie should be set on the response.
|
||||
*
|
||||
* @var bool
|
||||
*/
|
||||
protected $addHttpCookie = true;
|
||||
|
||||
/**
|
||||
* The URIs that should be excluded from CSRF verification.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $except = [
|
||||
'/sslcommerz*',
|
||||
'/config_content',
|
||||
'/paytm*',
|
||||
'/payhere*',
|
||||
'/stripe*',
|
||||
'/iyzico*',
|
||||
'/payfast*',
|
||||
'/bkash*',
|
||||
'api/v2/bkash*',
|
||||
'/aamarpay*',
|
||||
'/mock_payments',
|
||||
'/apple-callback',
|
||||
'/lnmo*',
|
||||
'/rozer*'
|
||||
];
|
||||
}
|
||||
Reference in New Issue
Block a user