199 lines
4.7 KiB
JavaScript
199 lines
4.7 KiB
JavaScript
let files = [];
|
|
|
|
$(document).ready(function(){
|
|
$(".table_id").each(function(){
|
|
var rows = $(".table_id:contains('"+$(this).text()+"')");
|
|
if(rows.length > 1){
|
|
rows.eq(0).attr("rowspan", rows.length);
|
|
rows.not(":eq(0)").remove();
|
|
}
|
|
})
|
|
|
|
});
|
|
|
|
$(document).on('click', '#addVuln', function (){
|
|
const vulnKey =null;
|
|
vulnEditModal(vulnKey);
|
|
})
|
|
|
|
function vulnEditModal(vulnKey){
|
|
$.ajax({
|
|
url: '/target/vulnEditModal',
|
|
type: 'GET',
|
|
data: {vulnKey:vulnKey},
|
|
dataType:"html",
|
|
success: function(html){
|
|
$("#vulnEditModalContent").empty().append(html);
|
|
$("#vulnEditModal").modal('show');
|
|
setUploadDiv();
|
|
},
|
|
error:function(){
|
|
|
|
}
|
|
});
|
|
}
|
|
|
|
$(document).on('click', '#saveVuln', function() {
|
|
if (Validation()) {
|
|
if (confirm("저장하시겠습니까?")) {
|
|
document.getElementById("mgtOrgan").disabled = false;
|
|
contentFade("in");
|
|
const formData = new FormData($("#saveVulnoFm")[0]);
|
|
for (const file of files) {
|
|
if (!file.isDelete)
|
|
formData.append('uploadFiles', file, file.name);
|
|
}
|
|
$.ajax({
|
|
type: 'POST',
|
|
data: formData,
|
|
url: "/target/saveVulnerable",
|
|
processData: false,
|
|
contentType: false,
|
|
success: function(result) {
|
|
alert("저장되었습니다.");
|
|
contentFade("out");
|
|
location.reload();
|
|
},
|
|
error: function(xhr, status) {
|
|
alert("저장에 실패하였습니다.")
|
|
contentFade("out");
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|
|
|
|
$(document).on('click', '#infoModal', function (){
|
|
const mgtOrgan = $(this).attr("data-mgtOrgan");
|
|
|
|
$.ajax({
|
|
url: '/target/vulnInfoModal',
|
|
type: 'GET',
|
|
data: {mgtOrgan:mgtOrgan},
|
|
dataType:"html",
|
|
success: function(html){
|
|
$("#vulnEditModalContent").empty().append(html);
|
|
$("#vulnEditModal").modal('show');
|
|
},
|
|
error:function(){
|
|
|
|
}
|
|
});
|
|
})
|
|
|
|
$(document).on('click', '#viewModal', function (){
|
|
const vulnKey = $(this).attr("data-vulnKey");
|
|
|
|
$.ajax({
|
|
url: '/target/vulnViewModal',
|
|
type: 'GET',
|
|
data: {vulnKey:vulnKey},
|
|
dataType:"html",
|
|
success: function(html){
|
|
$("#vulnEditModalContent").empty().append(html);
|
|
$("#vulnEditModal").modal('show');
|
|
},
|
|
error:function(){
|
|
|
|
}
|
|
});
|
|
})
|
|
|
|
$(document).on('click', '#fileDown', function (){
|
|
const target = $(this)
|
|
let url = "/target/vulnFileDownload?"
|
|
url += "&fileSeq="+target.attr("data-fileSeq");
|
|
url += "&vulnKey="+target.attr("data-vulnKey");
|
|
window.open(encodeURI(url));
|
|
})
|
|
|
|
$(document).on('click', '#deleteVuln', function (){
|
|
const vulnKey = $('input[name=vulnKey]').val();
|
|
if(confirm("삭제하시겠습니까?")){
|
|
contentFade("in");
|
|
$.ajax({
|
|
type : 'POST',
|
|
url : "/target/deleteVulnerable",
|
|
data : JSON.stringify({vulnKey:vulnKey}),
|
|
contentType: 'application/json',
|
|
beforeSend: function (xhr){
|
|
xhr.setRequestHeader($("[name='_csrf_header']").val(), $("[name='_csrf']").val());
|
|
},
|
|
success : function(data) {
|
|
alert("삭제 처리되었습니다.");
|
|
location.reload();
|
|
},
|
|
error : function(xhr, status) {
|
|
alert("삭제 처리에 실패하였습니다");
|
|
}
|
|
})
|
|
|
|
}
|
|
|
|
})
|
|
|
|
$(document).on('click', '#goEdit', function (){
|
|
const vulnKey = $(this).attr("data-vulnKey");
|
|
vulnEditModal(vulnKey);
|
|
})
|
|
|
|
$(document).on('click', '#updateVuln', function (){
|
|
if(Validation()){
|
|
if(confirm("수정하시겠습니까?")){
|
|
contentFade("in");
|
|
const formData = new FormData($("#saveVulnoFm")[0]);
|
|
document.getElementById("mgtOrgan").disabled = false;
|
|
for(const file of files) {
|
|
if(!file.isDelete)
|
|
formData.append('uploadFiles', file, file.name);
|
|
}
|
|
$(".text-decoration-line-through").each(function (idx, el){
|
|
formData.append('fileSeq', $(el).attr("data-fileseq"));
|
|
})
|
|
$.ajax({
|
|
type : 'POST',
|
|
data : formData,
|
|
url : "/target/saveVulnerable",
|
|
processData: false,
|
|
contentType: false,
|
|
success : function(data) {
|
|
alert("수정되었습니다.");
|
|
contentFade("out");
|
|
vulnEditModal(data)
|
|
},
|
|
error : function(xhr, status) {
|
|
alert("수정에 실패하였습니다.")
|
|
contentFade("out");
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|
|
|
|
function Validation(){
|
|
let flag = true;
|
|
if($('#mgtOrgan').val() == ""){
|
|
alert("경찰서를 선택해주세요.");
|
|
$('#mgtOrgan').focus();
|
|
flag = false;
|
|
}
|
|
if($('#vulnNm').val() == ""){
|
|
alert("취약지명을 입력해주세요.");
|
|
$('#vulnNm').focus();
|
|
flag = false;
|
|
}
|
|
if($('#vulnType').val() == ""){
|
|
alert("취약등급을 선택해 주세요.");
|
|
$('#vulnType').focus();
|
|
flag = false;
|
|
}
|
|
return flag;
|
|
}
|
|
|
|
$(document).on('click', '#btn-close', function (){
|
|
location.reload();
|
|
})
|
|
|
|
|
|
|