Adding delay and penalty calculations
This commit is contained in:
@@ -201,6 +201,21 @@ if (isset($task)) {
|
||||
updateSelectedCount();
|
||||
|
||||
$(document).ready(function () {
|
||||
function syncGregorianFromDisplay(displaySelector, hiddenSelector) {
|
||||
const displayVal = $(displaySelector).val();
|
||||
if (!displayVal || $(hiddenSelector).val()) return;
|
||||
try {
|
||||
// اگر مقدار نمایشی شمسی YYYY/MM/DD باشد
|
||||
const parts = String(displayVal).replace(/-/g, '/').split('/');
|
||||
if (parts.length === 3) {
|
||||
const pDate = new persianDate([Number(parts[0]), Number(parts[1]), Number(parts[2])]);
|
||||
const gregorian = pDate.toCalendar('gregorian').toLocale('en').format('YYYY-MM-DD');
|
||||
$(hiddenSelector).val(gregorian);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
}
|
||||
|
||||
$('#start_date').persianDatepicker({
|
||||
format: 'YYYY/MM/DD',
|
||||
autoClose: true,
|
||||
@@ -229,6 +244,26 @@ if (isset($task)) {
|
||||
}
|
||||
});
|
||||
|
||||
// اگر مقدار اولیه از دیتابیس آمده، فیلد مخفی میلادی را هم پر کن
|
||||
@if(!empty($task?->start_date))
|
||||
$('#start_date_gregorian').val(@json(\Carbon\Carbon::parse($task->start_date)->format('Y-m-d')));
|
||||
$('#start_date').val(@json(\Morilog\Jalali\Jalalian::fromCarbon(\Carbon\Carbon::parse($task->start_date))->format('Y/m/d')));
|
||||
@endif
|
||||
@if(!empty($task?->target_date))
|
||||
$('#target_date_gregorian').val(@json(\Carbon\Carbon::parse($task->target_date)->format('Y-m-d')));
|
||||
$('#target_date').val(@json(\Morilog\Jalali\Jalalian::fromCarbon(\Carbon\Carbon::parse($task->target_date))->format('Y/m/d')));
|
||||
@endif
|
||||
|
||||
$('form').on('submit', function (e) {
|
||||
syncGregorianFromDisplay('#start_date', '#start_date_gregorian');
|
||||
syncGregorianFromDisplay('#target_date', '#target_date_gregorian');
|
||||
if (!$('#start_date_gregorian').val()) {
|
||||
e.preventDefault();
|
||||
alert('لطفاً تاریخ شروع را از تقویم انتخاب کنید.');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
$('#clear_target_date').on('click', function () {
|
||||
$('#target_date').val('');
|
||||
$('#target_date_gregorian').val('');
|
||||
|
||||
Reference in New Issue
Block a user