$(function () { $('.checkbox-use-subnetmask').iCheck({ checkboxClass: 'icheckbox_flat-red' }); }); var progress = 0; var totals = 0; function _search(e) { common.modalBlock(true); $.ajax({ url: $(e).attr('data-href'), type: 'POST', data: { SubnetMask: $("input[name='SubnetMask']").val(), Checked: $("input[name='checkbox-use-subnetmask']:checked").length }, success: function (data) { common.modalBlock(false); $("#table-device").html(data.form); $("#totals").html(data.totals); $("#add-button-enabled").removeClass("hidden"); $("#add-button-disabled").addClass("hidden"); common.checkboxInit("device"); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); alert("Có lỗi xảy ra! hãy kiểm tra lại service!"); } }); } function _process(e) { var lists = []; $.each($("input[name='checkbox-device']:checked"), function () { lists.push($(this).val()); }); if (lists.length == 0) { alert("Vui lòng lựa chọn đối tượng!"); return; } common.modalBlock(true); $.ajax({ url: $(e).attr('data-href'), type: 'POST', data: { lists: lists }, success: function (data) { common.modalBlock(false); common.modalOpen(data.form, false, data.title); $("#close-modal").attr("disabled", true); $("#modalHeader").find("button").remove(); totals = data.lists.length; for (var i = 0; i < totals; i++) { _import(data.lists[i]); } }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); } function _import(data) { $.ajax({ url: $("input[name='import_url']").val(), type: 'POST', data: { data: data }, success: function (data) { var html = ""; if (data.status) { html = " Thêm thiết bị " + data.IP + " thành công.
"; } else { html = " Thêm thiết bị " + data.IP + " thất bại.
"; } $("#logs-response").append(html); $("#checkbox-" + data.SN).html(""); $("#status-" + data.SN).find("label").removeClass("hidden"); progress++; var percent = parseInt(progress / totals * 100); $("#progress").attr("aria-valuenow", percent); $("#progress").attr("style", "width: " + percent + "%"); $("#progress").html(percent + "%"); if (percent >= 100) { progress = 0; $("#close-modal").attr("disabled", false); } }, error: function (jqXHR, textStatus, errorThrown) { common.ajaxError(); } }); } function _form(e) { var lists = []; $.each($("input[name='checkbox-device']: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'), type: 'POST', data: { data: lists[0] }, success: function (data) { common.modalBlock(false); common.modalOpen(data.form, false, data.title); }, error: function (jqXHR, textStatus, errorThrown) { common.modalBlock(false); common.ajaxError(); } }); } function validateChangeIP() { var error = 0; var Ip = $("input[name='IpNew']").val(); if (Ip === "") { common.error("ip", "Địa chỉ IP mới không được để trống"); error++; } else if (!common.validateIp(Ip)) { common.error("ip", "Định dạng địa chỉ IP không đúng"); error++; } else { common.success("ip"); } var SubnetMask = $("input[name='SubnetMask']").val(); if (SubnetMask === "") { common.error("subnet_mask", "Subnet mask không được để trống"); error++; } else if (!common.validateIp(SubnetMask)) { common.error("subnet_mask", "Định dạng Subnet mask không đúng"); error++; } else { common.success("subnet_mask"); } var Gateway = $("input[name='Gateway']").val(); if (Gateway === "") { common.error("gateway", "Gateway không được để trống"); error++; } else if (!common.validateIp(Gateway)) { common.error("gateway", "Định dạng Gateway không đúng"); error++; } else { common.success("gateway"); } return error == 0 ? true : false; } function changeIP(e) { if (validateChangeIP()) { common.modalBlock(true); $.ajax({ url: $(e).attr('data-href'), type: 'POST', data: { IpOld: $("input[name='IpOld']").val(), IpNew: $("input[name='IpNew']").val(), SubnetMask: $("input[name='SubnetMaskDevice']").val(), Gateway: $("input[name='Gateway']").val(), MAC: $("input[name='MAC']").val() }, success: function (data) { common.modalBlock(false); var SN = $("input[name='SN']").val(); if (data.status) { notification.success("Đổi IP thiết bị thành công", 1000); $("#myModal").modal("hide"); $("#ip-" + SN).html($("input[name='IpNew']").val()); $("#subnet-mask-" + SN).html($("input[name='SubnetMaskDevice']").val()); $("#gateway-" + SN).html($("input[name='Gateway']").val()); var params = { MAC: $("input[name='MAC']").val(), IP: $("input[name='IpNew']").val(), NetMask: $("input[name='SubnetMaskDevice']").val(), GATEIPAddress: $("input[name='Gateway']").val(), SN: $("input[name='SN']").val(), Device: $("input[name='Device']").val(), Ver: $("input[name='Ver']").val() }; $("#checkbox-" + SN).find("input").val(JSON.stringify(params)); } else { if (data.type === "ip") { common.error("ip", "Địa chỉ ip đã tồn tại"); } 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); alert("Có lỗi xảy ra! hãy kiểm tra lại service!"); } }); } }