42 lines
1.5 KiB
JavaScript
42 lines
1.5 KiB
JavaScript
import { showModal, closeModal } from './modal-base.js';
|
|
import { toDatetimeLocal } from '../utils.js';
|
|
|
|
let _cb = null;
|
|
|
|
export function showEditWorkoutDateDialog(workout, callback) {
|
|
_cb = callback;
|
|
const startValue = toDatetimeLocal(workout.startTime);
|
|
const endValue = workout.endTime ? toDatetimeLocal(workout.endTime) : '';
|
|
|
|
showModal(`
|
|
<div class="modal-content">
|
|
<h3 class="modal-title">📅 Дата тренировки</h3>
|
|
<div class="field-group">
|
|
<label>Начало</label>
|
|
<input type="datetime-local" id="m-w-start" value="${startValue}">
|
|
</div>
|
|
<div class="field-group">
|
|
<label>Окончание</label>
|
|
<input type="datetime-local" id="m-w-end" value="${endValue}">
|
|
</div>
|
|
<div class="btn-row">
|
|
<button class="btn btn-secondary" onclick="ModalBase.close()">Отмена</button>
|
|
<button class="btn btn-success" onclick="EditDateModal.submit()">Сохранить</button>
|
|
</div>
|
|
</div>
|
|
`);
|
|
}
|
|
|
|
export function submit() {
|
|
const startStr = document.getElementById('m-w-start').value;
|
|
const endStr = document.getElementById('m-w-end').value;
|
|
if (!startStr) { alert('Укажите дату начала'); return; }
|
|
closeModal();
|
|
if (_cb) _cb({
|
|
startTime: new Date(startStr).toISOString(),
|
|
endTime: endStr ? new Date(endStr).toISOString() : null,
|
|
});
|
|
}
|
|
|
|
window.EditDateModal = { submit };
|