$(function () { common.checkboxInit("schedule"); }); function _create(e) { common.modalBlock(true); $.ajax({ url: $(e).attr('data-href'), type: 'POST', success: function (data) { common.modalBlock(false); common.modalOpen(data.form, true, data.title); common.dateTimePickerByClass("select-picker", "HH:mm"); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); } function openFormTimePicker(e) { if (saveCurrentPos()) { var id = $(e).attr("data-id"); $("#data-" + id).addClass("hidden"); $("#form-" + id).removeClass("hidden"); $("input[name='CurrentPos']").val(id); } } function _copy(e) { if (saveCurrentPos()) { var fromDay = $(e).attr("data-from"); var targetDay = $(e).attr("data-target"); var fDay1 = $("input[name='From" + fromDay + "1']").val(); var tDay1 = $("input[name='To" + fromDay + "1']").val(); if (fDay1 !== "00:00" || tDay1 !== "00:00") { var html = `` + fDay1 + ` - ` + tDay1 + ``; $("#data-" + targetDay + "1").html(html); $("input[name='From" + targetDay + "1']").val(fDay1); $("input[name='To" + targetDay + "1']").val(tDay1); } var fDay2 = $("input[name='From" + fromDay + "2']").val(); var tDay2 = $("input[name='To" + fromDay + "2']").val(); if (fDay2 !== "00:00" || tDay2 !== "00:00") { var html = `` + fDay2 + ` - ` + tDay2 + ``; $("#data-" + targetDay + "2").html(html); $("input[name='From" + targetDay + "2']").val(fDay2); $("input[name='To" + targetDay + "2']").val(tDay2); } var fDay3 = $("input[name='From" + fromDay + "3']").val(); var tDay3 = $("input[name='To" + fromDay + "3']").val(); if (fDay3 !== "00:00" || tDay3 !== "00:00") { var html = `` + fDay3 + ` - ` + tDay3 + ``; $("#data-" + targetDay + "3").html(html); $("input[name='From" + targetDay + "3']").val(fDay3); $("input[name='To" + targetDay + "3']").val(tDay3); } } } function saveCurrentPos() { var currentID = $("input[name='CurrentPos']").val(); if (currentID !== "") { var f = $("input[name='From" + currentID + "']").val(); var t = $("input[name='To" + currentID + "']").val(); if (convertTime(f) > convertTime(t)) { alert("Mốc thời gian lựa chọn chưa đúng!"); return false; } if (f !== "00:00" || t !== "00:00") { var html = `` + f + ` - ` + t + ``; $("#data-" + currentID).html(html); } else if (f === "00:00" && t === "00:00") { var html = ``; $("#data-" + currentID).html(html); } } $(".time-picker-data").removeClass("hidden"); $(".time-picker-form").addClass("hidden"); return true; } function convertTime(time) { var split = time.split(":"); return parseInt(split[0]) * 60 + parseInt(split[1]); } function validate() { var error = 0; var Name = $("input[name='Name']").val(); if (Name === "") { common.error("name", "Tên lịch trình không được để trống"); error++; } else { common.success("name"); } return error == 0 ? true : false; } function save(e) { if (validate() && saveCurrentPos()) { common.modalBlock(true); $.ajax({ url: $(e).attr('data-href'), type: 'POST', data: { Name: $("input[name='Name']").val(), Description: $("input[name='Description']").val(), FromMon1: $("input[name='FromMon1']").val(), ToMon1: $("input[name='ToMon1']").val(), FromMon2: $("input[name='FromMon2']").val(), ToMon2: $("input[name='ToMon2']").val(), FromMon3: $("input[name='FromMon3']").val(), ToMon3: $("input[name='ToMon3']").val(), FromTue1: $("input[name='FromTue1']").val(), ToTue1: $("input[name='ToTue1']").val(), FromTue2: $("input[name='FromTue2']").val(), ToTue2: $("input[name='ToTue2']").val(), FromTue3: $("input[name='FromTue3']").val(), ToTue3: $("input[name='ToTue3']").val(), FromWed1: $("input[name='FromWed1']").val(), ToWed1: $("input[name='ToWed1']").val(), FromWed2: $("input[name='FromWed2']").val(), ToWed2: $("input[name='ToWed2']").val(), FromWed3: $("input[name='FromWed3']").val(), ToWed3: $("input[name='ToWed3']").val(), FromThu1: $("input[name='FromThu1']").val(), ToThu1: $("input[name='ToThu1']").val(), FromThu2: $("input[name='FromThu2']").val(), ToThu2: $("input[name='ToThu2']").val(), FromThu3: $("input[name='FromThu3']").val(), ToThu3: $("input[name='ToThu3']").val(), FromFri1: $("input[name='FromFri1']").val(), ToFri1: $("input[name='ToFri1']").val(), FromFri2: $("input[name='FromFri2']").val(), ToFri2: $("input[name='ToFri2']").val(), FromFri3: $("input[name='FromFri3']").val(), ToFri3: $("input[name='ToFri3']").val(), FromSat1: $("input[name='FromSat1']").val(), ToSat1: $("input[name='ToSat1']").val(), FromSat2: $("input[name='FromSat2']").val(), ToSat2: $("input[name='ToSat2']").val(), FromSat3: $("input[name='FromSat3']").val(), ToSat3: $("input[name='ToSat3']").val(), FromSun1: $("input[name='FromSun1']").val(), ToSun1: $("input[name='ToSun1']").val(), FromSun2: $("input[name='FromSun2']").val(), ToSun2: $("input[name='ToSun2']").val(), FromSun3: $("input[name='FromSun3']").val(), ToSun3: $("input[name='ToSun3']").val() }, success: function (data) { common.modalBlock(false); if (data.status) { notification.success("Đã lưu thông tin", 1000); $.pjax.reload({container: '#schedule-list'}); $("#schedule-list").on('pjax:success', function () { common.checkboxInit("schedule"); }); $("#myModal").modal("hide"); } else { notification.danger("Có lỗi xảy ra, không lưu được dữ liệu!", 1000); } }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); } } function _form(e) { var lists = []; $.each($("input[name='checkbox-schedule']:checked"), function () { lists.push($(this).val()); }); if (lists.length == 0) { alert("Vui lòng lựa chọn đối tượng để thay đổi!"); return; } if (lists.length > 1) { alert("Tác vụ này không thể lựa chọn nhiều hơn một đối tượng!"); return; } common.modalBlock(true); $.ajax({ url: $(e).attr('data-href') + "?id=" + lists[0], type: 'POST', success: function (data) { common.modalBlock(false); common.modalOpen(data.form, true, data.title); common.dateTimePickerByClass("select-picker", "HH:mm"); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); } function _delete(e) { var lists = []; $.each($("input[name='checkbox-schedule']:checked"), function () { lists.push($(this).val()); }); if (lists.length == 0) { alert("Vui lòng lựa chọn đối tượng để xóa!"); return; } if (confirm("Bạn có chắc chắn muốn xóa các đối tượng đã lựa chọn không?")) { common.modalBlock(true); $.ajax({ url: $(e).attr('data-href'), type: 'POST', data: { lists: lists }, success: function (data) { common.modalBlock(false); notification.danger("Đã xóa dữ liệu", 1000); $.pjax.reload({container: '#schedule-list'}); $("#schedule-list").on('pjax:success', function () { common.checkboxInit("schedule"); }); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); } }