Files
boursecu_server/app/Exceptions/Handler.php
T
mohmdsdgandCursor 4c2200a0e0 Widen order price columns so current gold rial quotes persist.
Gold gram prices now exceed the old DECIMAL/INT range and MySQL 1264 aborted buys; store money fields as DECIMAL(20,4) and hide the raw SQL error from the app.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 16:14:02 +03:30

55 lines
1.3 KiB
PHP

<?php
namespace App\Exceptions;
use Illuminate\Foundation\Exceptions\Handler as ExceptionHandler;
use Throwable;
class Handler extends ExceptionHandler
{
/**
* A list of the exception types that are not reported.
*
* @var array<int, class-string<Throwable>>
*/
protected $dontReport = [
//
];
/**
* A list of the inputs that are never flashed for validation exceptions.
*
* @var array<int, string>
*/
protected $dontFlash = [
'current_password',
'password',
'password_confirmation',
];
/**
* Register the exception handling callbacks for the application.
*
* @return void
*/
public function register()
{
$this->reportable(function (Throwable $e) {
//
});
$this->renderable(function (\Illuminate\Database\QueryException $e, $request) {
if ((int) ($e->errorInfo[1] ?? 0) !== 1264) {
return null;
}
if (! $request->expectsJson()) {
return null;
}
return response()->json([
'message' => 'ثبت سفارش به‌خاطر محدودیت فیلد قیمت ممکن نشد. لطفاً دوباره تلاش کنید.',
], 422);
});
}
}