-
Notifications
You must be signed in to change notification settings - Fork 0
/
jvn.js
157 lines (150 loc) · 5.77 KB
/
jvn.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
//
// JVN Vulnerability Infomation Managed System
//
//
//====================================================================
// チェックボックス制御
//====================================================================
$('#header_check').on('click', function() {
$('.rec').prop('checked', $('#header_check').prop('checked'));
});
var change_undefine = function(status) {
var rows = $('#vulnerability_prodcut')[0].rows;
$.each(rows, function(i) {
var cells = rows[i].cells;
if ( $(cells[1]).text() == "未定義" ) {
var id = '#check' + i;
$(id).prop('checked', status);
}
});
}
$('#undefine_select_btn').on('click', function() {
change_undefine(true);
});
$('#undefine_clear_btn').on('click', function() {
change_undefine(false);
});
$('#all_select_btn').on('click', function() {
$('input[type = "checkbox"]').prop('checked', true);
});
$('#all_clear_btn').on('click', function() {
$('input[type = "checkbox"]').prop('checked', false);
});
//====================================================================
// 製品検索画面入力チェック制御
//====================================================================
$('#maintenance_btn').click(function() {
if ($("#product_list_tbl tbody").children().length < 1) {
bootbox.alert('メンテナンス対象となる製品情報が存在しません。', function(result) {});
return false;
}
return true;
});
//====================================================================
// 脆弱性情報確認画面 全選択
//====================================================================
$('#cover_item_btn').click(function() { $('.product_select').val('cover_item'); });
$('#not_cover_item_btn').click(function() { $('.product_select').val('not_cover_item'); });
//====================================================================
// 不正画面使用の対策
//====================================================================
$(window).load(function() {
var token = $('meta[name="token"]').attr('content');
$("<input>", {
type: 'hidden',
name: 'web_token',
id: 'web_token',
value: token
}).appendTo('form');
});
//====================================================================
// JVN 脆弱性情報依頼チェック制御
//====================================================================
$('#execute_btn').click(function() {
if ($("#product_list_tbl tbody").children().length < 1) {
bootbox.alert('メンテナンス対象となる製品情報が存在しません。', function(result) {});
return false;
}
return true;
});
//====================================================================
// 日付入力
//====================================================================
$(function(){
$('#dp_from').datetimepicker({lang:"ja", format: 'Y/m/d 00:00:00'});
$('#dp_to').datetimepicker({lang:"ja", format: 'Y/m/d H:i:00'});
});
//====================================================================
// 日付チェック関数
//====================================================================
function checkDate( str ) {
// str == null || str == '' as same
if (!str) {
return true;
}
var d = new Date(str);
if (isNaN(d)) {
return false;
} else {
return true;
}
}
//====================================================================
// 脆弱性情報確認画面 全選択
//====================================================================
$('#vul_search_btn').click(function() {
if (false == checkDate($('#dp_from').val())) {
bootbox.alert('YYYY-MM-DD HH:MI:SS形式で入力してください。', function(result) {});
return false;
}
if (false == checkDate($('#dp_to').val())) {
bootbox.alert('YYYY-MM-DD HH:MI:SS形式で入力してください。', function(result) {});
return false;
}
return true;
});
//====================================================================
// JVN 脆弱性情報一覧からの画面遷移をPostで行うようにする
//====================================================================
$('.jvn_list_product_button').click (
function() {
$('#listForm').attr('action', $('#topuri').val() + '/jvn_operation/index');
$('#identifier').val($(this).attr('id'));
$('#listForm').submit();
}
);
$('.jvn_list_ticket_button').click (
function() {
$('#listForm').attr('action', $('#topuri').val() + '/jvn_ticket/index');
$('#identifier').val($(this).attr('id'));
$('#listForm').submit();
}
);
//====================================================================
// JVN アカウント情報一覧からの画面遷移をPostで行うようにする
//====================================================================
$('.jvn_list_account_button').click (
function() {
$('#user_id').val($(this).attr('id'));
$('#accoutForm').submit();
}
);
//====================================================================
// メニューボタンクリック(jvn_menu_btn)
//====================================================================
$(".jvn_menu_btn").each( function(i) {
var appname = $(this).attr("id");
$('a#' + appname).click(
function() {
var cve = $("#cve_txt").val();
if (appname == "jvn_cve" && !cve.match(/^CVE-[0-9][0-9][0-9][0-9]-/)) {
bootbox.alert('CVE番号の形式で入力してください。', function(result) {});
return false;
}
$('#cve_hidden').val(cve);
$('#headerForm').attr('action', $('#topuri').val() + '/' + appname + '/index');
$('#headerForm').submit();
}
);
});