Fix Jalali crash when creating task with invalid target_date.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -265,12 +265,18 @@ class TaskController extends Controller
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (preg_match('/^(\d{4}-\d{2}-\d{2})/', $value, $m)) {
|
|
||||||
return $m[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
return Carbon::parse($value)->format('Y-m-d');
|
if (preg_match('/^(\d{4}-\d{2}-\d{2})/', $value, $m)) {
|
||||||
|
$carbon = Carbon::createFromFormat('Y-m-d', $m[1])->startOfDay();
|
||||||
|
} else {
|
||||||
|
$carbon = Carbon::parse($value);
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($carbon->year < 1621 || $carbon->year > 2500) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $carbon->format('Y-m-d');
|
||||||
} catch (\Throwable $e) {
|
} catch (\Throwable $e) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -711,7 +717,8 @@ class TaskController extends Controller
|
|||||||
$task = Tasks::create($data);
|
$task = Tasks::create($data);
|
||||||
|
|
||||||
$message = "تسک جدیدی با عنوان {$data['title']} برای شما ایجاد شد.";
|
$message = "تسک جدیدی با عنوان {$data['title']} برای شما ایجاد شد.";
|
||||||
$deadline = !empty($data['target_date']) ? Jalalian::fromCarbon(Carbon::parse($data['target_date']))->format('Y-m-d') : null;
|
$deadline = \App\Support\JalaliHelper::format($data['target_date'] ?? null, 'Y/m/d', '');
|
||||||
|
$deadline = $deadline !== '' ? $deadline : null;
|
||||||
$app = App::find($data['app']);
|
$app = App::find($data['app']);
|
||||||
$message_admin = "ایجاد تسک: «{$data['title']}»";
|
$message_admin = "ایجاد تسک: «{$data['title']}»";
|
||||||
$message_admin .= !empty($app) ? "\nاپ {$app->name_fa}" : null;
|
$message_admin .= !empty($app) ? "\nاپ {$app->name_fa}" : null;
|
||||||
|
|||||||
Reference in New Issue
Block a user