$(function () { $("#schedule-department-tree").height($("#create-schedule-main").height() - 28); $("#schedule-door-lists").height($("#create-schedule-main").height() - 28); checkboxInit(); $('#checkbox-staff-schedule-all').iCheck({ checkboxClass: 'icheckbox_flat-red' }); $('#checkbox-staff-schedule-all').on('ifChanged', function (event) { if (event.target.checked) { $('.checkbox-staff-schedule').iCheck('check'); } else { $('.checkbox-staff-schedule').iCheck('uncheck'); } }); }); var schedule = {}; schedule.tree = function (e) { var stt = $(e).attr("data-stt"); if (stt === "true") { $(e).removeClass("fa-minus-square-o").addClass("fa-plus-square-o").attr("data-stt", "false"); $("#sub-department-schedule-" + $(e).attr("data")).addClass("hidden"); } else { $(e).removeClass("fa-plus-square-o").addClass("fa-minus-square-o").attr("data-stt", "true"); $("#sub-department-schedule-" + $(e).attr("data")).removeClass("hidden"); } }; schedule.chooseDepartment = function (e) { common.modalBlock(true); $.ajax({ url: $(e).attr("data-href"), type: 'POST', success: function (data) { common.modalBlock(false); $("#btn-check-all").removeClass("hidden"); $("input[name='currentDepartment']").val($(e).attr("data")); $("#schedule-search-staff").html(data); $(".department-schedule").removeClass("department-schedule-active"); $(e).addClass("department-schedule-active"); $("#staff-list").on('pjax:success', function () { common.checkboxInit("staff-schedule"); if ($("#checkbox-staff-schedule-all:checked").length > 0) $('.checkbox-staff-schedule').iCheck('check'); }); common.checkboxInit("staff-schedule"); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); }; schedule.searchStaff = function (e) { common.modalBlock(true); $.ajax({ url: $(e).attr("data-href"), type: 'POST', data: { key: $(e).val() }, success: function (data) { common.modalBlock(false); $("#btn-check-all").addClass("hidden"); $("#schedule-search-staff").html(data); $(".department-schedule").removeClass("department-schedule-active"); common.checkboxInit("staff-schedule"); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); }; schedule.setSchedule = function (e) { var staffs = []; $.each($("input[name='checkbox-staff-schedule']:checked"), function () { if ($(this).val() !== "0") { staffs.push($(this).val()); } }); if (staffs.length == 0) { alert("Hãy chọn nhân viên"); return; } var doors = []; $.each($("input[name='checkbox-door-schedule']:checked"), function () { if ($(this).val() !== "0") { doors.push($(this).val()); } }); if (doors.length == 0) { alert("Hãy chọn cửa"); return; } var all = false; if ($("#checkbox-staff-schedule-all:checked").length > 0) all = true; common.modalBlock(true); $.ajax({ url: $(e).attr("data-href"), type: 'POST', data: { schedule: $("select[name='ScheduleLists']").val(), doors: doors, staffs: staffs, currentDepartment: $("input[name='currentDepartment']").val(), all: all }, success: function (data) { common.modalBlock(false); notification.success("Đã lưu thông tin", 1000); $.each($("input[name='checkbox-staff-schedule']:checked"), function () { if ($(this).val() !== "0") { var id = $(this).val(); $("#schedule-staff-results-" + id).html(data.schedule); var alert = ""; var hidden = ""; if (data.doors.length <= 2) { alert = "
" + data.doors.join("
") + "
"; } else { alert = "
" + data.doors[0] + "
" + data.doors[1] + "
Xem thêm
"; hidden = ""; } $("#schedule-door-results-" + id).html(alert + hidden); } }); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); }; function openDoorList(e, stt) { var id = $(e).attr("data"); if (stt) { $("#short-" + id).addClass("hidden"); $("#full-" + id).removeClass("hidden"); } else { $("#short-" + id).removeClass("hidden"); $("#full-" + id).addClass("hidden"); } } function filterDevice(e) { var data = $(e).val(); if (data === "") { if ($("#FilterArea").val() !== "") { $(".door-lists-" + $("#FilterArea").val()).removeClass("hidden"); } else { $(".door-lists").removeClass("hidden"); } } else { $(".door-lists").addClass("hidden"); $(".door-lists-" + data).removeClass("hidden"); } } function filterArea(e) { $.ajax({ url: $(e).attr("data-href"), type: 'POST', data: { area: $(e).val() }, success: function (data) { $("#deviceFilterForm").html(data); var value = $(e).val(); $("#FilterDevice").val(""); if (value === "") { $(".door-lists").removeClass("hidden"); filterAllDevice(); } else { $(".door-lists").addClass("hidden"); $(".door-lists-" + value).removeClass("hidden"); } }, error: function (jqXHR, textStatus, errorThrown) { common.ajaxError(); } }); } function filterAllDevice() { $.ajax({ url: $("input[name='filter_all_device_url']").val(), type: 'POST', success: function (data) { $("#deviceFilterForm").html(data); }, error: function (jqXHR, textStatus, errorThrown) { common.ajaxError(); } }); } function checkboxInit() { $('.checkbox-door-schedule').iCheck({ checkboxClass: 'icheckbox_flat-blue' }); $('#checkall-door-schedule').on('ifChanged', function (event) { $.each($('.checkbox-door-schedule'), function () { if (!$(this).closest("tr").hasClass("hidden")) { if (event.target.checked) { $(this).iCheck('check'); } else { $(this).iCheck('uncheck'); } } }); }); }