@@ -27,7 +27,8 @@ $(function () {
27
27
// filter submit button
28
28
$ ( '.filter_btn' ) . on ( 'click' , function ( ) {
29
29
vulnerabilities_list . page = 1 ;
30
- vulnerabilities_list . get ( true ) ;
30
+ vulnerabilities_list . pushState ( ) ;
31
+ vulnerabilities_list . get ( ) ;
31
32
vulnerabilities_list . trigger_filter ( ) ;
32
33
} ) ;
33
34
@@ -60,15 +61,24 @@ $(function () {
60
61
// panel
61
62
$ ( '.v-path' ) . text ( data . file_path + ':' + data . line_number ) ;
62
63
$ ( '.v-id' ) . text ( 'MVE-' + vid ) ;
63
- $ ( '.v-language' ) . text ( data . lang ) ;
64
+ $ ( '.v-language' ) . text ( data . language ) ;
65
+
64
66
// widget
65
67
function init_widget ( ) {
66
68
var lis = $ ( '.widget-trigger li' ) ;
67
69
$ ( '.commit-author' ) . text ( '@' + data . commit_author ) ;
68
70
$ ( '.commit-time' ) . text ( '@' + data . commit_time ) ;
69
- $ ( '.v-level' ) . text ( data . level ) ;
71
+ if ( 9 <= data . level && data . level <= 10 ) {
72
+ $ ( '.v-level' ) . text ( 'Critical' ) ;
73
+ } else if ( 6 <= data . level && data . level <= 8 ) {
74
+ $ ( '.v-level' ) . text ( 'High' ) ;
75
+ } else if ( 3 <= data . level && data . level <= 5 ) {
76
+ $ ( '.v-level' ) . text ( 'Medium' ) ;
77
+ } else if ( 1 <= data . level && data . level <= 2 ) {
78
+ $ ( '.v-level' ) . text ( 'Low' ) ;
79
+ }
70
80
$ ( '.v-type' ) . text ( data . rule_name ) ;
71
- $ ( '.v-rule' ) . text ( data . match_result ) ;
81
+ // $('.v-rule').text(data.match_result);
72
82
}
73
83
74
84
init_widget ( ) ;
@@ -194,84 +204,107 @@ $(function () {
194
204
evt . stopPropagation ( ) ;
195
205
} ) ;
196
206
}
197
- if ( $ ( "input[name=need_scan]" ) . val ( ) !== "False" ) {
198
- // Search vulnerability type
199
- if ( on_filter === false || typeof on_filter === 'undefined' ) {
200
- var svt = getParameterByName ( 'svt' ) ;
201
- if ( svt !== null && svt > 0 ) {
202
- $ ( '#search_vul_type' ) . val ( svt ) ;
203
- }
204
- // Search rule
205
- var sr = getParameterByName ( 'sr' ) ;
206
- if ( sr !== null && sr > 0 ) {
207
- $ ( '#search_rule' ) . val ( sr ) ;
208
- }
209
- // Search level
210
- var sl = getParameterByName ( 'sl' ) ;
211
- if ( sl !== null && sl > 0 ) {
212
- $ ( '#search_level' ) . val ( sl ) ;
213
- }
214
- // Search target
215
- var st = getParameterByName ( 'st' ) ;
216
- if ( st !== null && st > 0 ) {
217
- $ ( '#search_task' ) . val ( st ) ;
218
- }
219
- // Search status
220
- var ss = getParameterByName ( 'ss' ) ;
221
- if ( ss !== null && ss > 0 ) {
222
- $ ( '#search_status' ) . val ( ss ) ;
223
- }
207
+ // Search vulnerability type
208
+ if ( on_filter === false || typeof on_filter === 'undefined' ) {
209
+ var svt = getParameterByName ( 'svt' ) ;
210
+ if ( svt !== null && svt > 0 ) {
211
+ $ ( '#search_vul_type' ) . val ( svt ) ;
212
+ }
213
+ // Search rule
214
+ var sr = getParameterByName ( 'sr' ) ;
215
+ if ( sr !== null && sr > 0 ) {
216
+ $ ( '#search_rule' ) . val ( sr ) ;
224
217
}
218
+ // Search level
219
+ var sl = getParameterByName ( 'sl' ) ;
220
+ if ( sl !== null && sl > 0 ) {
221
+ $ ( '#search_level' ) . val ( sl ) ;
222
+ }
223
+ // Search target
224
+ var st = getParameterByName ( 'st' ) ;
225
+ if ( st !== null && st > 0 ) {
226
+ $ ( '#search_task' ) . val ( st ) ;
227
+ }
228
+ // Search status
229
+ var ss = getParameterByName ( 'ss' ) ;
230
+ if ( ss !== null && ss > 0 ) {
231
+ $ ( '#search_status' ) . val ( ss ) ;
232
+ }
233
+ }
225
234
226
- vulnerabilities_list . pushState ( ) ;
235
+ vulnerabilities_list . pushState ( ) ;
227
236
228
- // load vulnerabilities list
237
+ // load vulnerabilities list
229
238
230
- var list = vul_list_origin . vulnerabilities ;
231
- if ( list . length === 0 ) {
232
- $ ( ".vulnerabilities_list" ) . html ( '<li><h3 style="text-align: center;margin: 200px auto;">Wow, no vulnerability was detected :)</h3></li>' ) ;
233
- } else {
234
- var list_html = '' ;
239
+ var list = vul_list_origin . vulnerabilities ;
240
+ sl = Number ( sl ) ;
241
+ var list_html = '' ;
235
242
236
- var id = 0 ;
237
- for ( var i = 0 ; i < list . length ; i ++ ) {
238
- var line = '' ;
239
- if ( list [ i ] . line_number !== 0 ) {
240
- line = ':' + list [ i ] . line_number ;
243
+ var id = 0 ;
244
+ for ( var i = 0 ; i < list . length ; i ++ ) {
245
+ // search rule
246
+ if ( sr !== null && sr > 0 ) {
247
+ if ( list [ i ] . id !== sr ) {
248
+ continue ;
249
+ }
250
+ }
251
+ // search level
252
+ if ( sl !== null && sl > 0 ) {
253
+ if ( sl === 4 ) {
254
+ if ( list [ i ] . level < 9 ) {
255
+ console . log ( sl ) ;
256
+ continue ;
257
+ }
258
+ } else if ( sl === 3 ) {
259
+ console . log ( sl ) ;
260
+ if ( list [ i ] . level < 6 || list [ i ] . level > 8 ) {
261
+ continue ;
262
+ }
263
+ } else if ( sl === 2 ) {
264
+ if ( list [ i ] . level < 3 || list [ i ] . level > 5 ) {
265
+ continue ;
266
+ }
267
+ } else if ( sl === 1 ) {
268
+ if ( list [ i ] . level < 1 || list [ i ] . level > 2 ) {
269
+ continue ;
241
270
}
242
- list_html = list_html + '<li data-id="' + ( i + 1 ) + '" class=" " data-start="1" data-line="1">' +
243
- '<strong>MVE-' + ( i + 1 ) + '</strong><br><span>' + list [ i ] . file_path + line + '</span><br>' +
244
- '<span class="issue-information">' +
245
- '<small>' +
246
- list [ i ] . match_result + ' => ' + list [ i ] . commit_time +
247
- '</small>' +
248
- '</span>' +
249
- '</li>' ;
250
-
251
271
}
272
+ }
273
+ var line = '' ;
274
+ if ( list [ i ] . line_number !== 0 ) {
275
+ line = ':' + list [ i ] . line_number ;
276
+ }
277
+ list_html = list_html + '<li data-id="' + ( i + 1 ) + '" class=" " data-start="1" data-line="1">' +
278
+ '<strong>MVE-' + ( i + 1 ) + '</strong><br><span>' + list [ i ] . file_path + line + '</span><br>' +
279
+ '<span class="issue-information">' +
280
+ '<small>' +
281
+ ' => ' + list [ i ] . commit_time +
282
+ '</small>' +
283
+ '</span>' +
284
+ '</li>' ;
285
+ }
286
+ if ( list_html . length === 0 ) {
287
+ $ ( ".vulnerabilities_list" ) . html ( '<li><h3 style="text-align: center;margin: 200px auto;">Wow, no vulnerability was detected :)</h3></li>' ) ;
288
+ } else {
289
+ $ ( '.vulnerabilities_list' ) . html ( list_html ) ;
290
+ }
252
291
253
- $ ( '.vulnerabilities_list' ) . html ( list_html ) ;
254
-
255
- // current vulnerability
256
- var vid = getParameterByName ( 'vid' ) ;
257
- if ( vid !== null && vid > 0 ) {
258
- vulnerabilities_list . detail ( vid ) ;
259
- }
292
+ // current vulnerability
293
+ var vid = getParameterByName ( 'vid' ) ;
294
+ if ( vid !== null && vid > 0 ) {
295
+ vulnerabilities_list . detail ( vid ) ;
296
+ }
260
297
261
- // vulnerabilities list detail
262
- $ ( '.vulnerabilities_list li' ) . off ( 'click' ) . on ( 'click' , function ( ) {
263
- // loading
264
- $ ( '.CodeMirror' ) . prepend ( $ ( '.cm-loading' ) . show ( ) . get ( 0 ) ) ;
298
+ // vulnerabilities list detail
299
+ $ ( '.vulnerabilities_list li' ) . off ( 'click' ) . on ( 'click' , function ( ) {
300
+ // loading
301
+ $ ( '.CodeMirror' ) . prepend ( $ ( '.cm-loading' ) . show ( ) . get ( 0 ) ) ;
265
302
266
- vulnerabilities_list . vid = $ ( this ) . attr ( 'data-id' ) ;
267
- vulnerabilities_list . pushState ( ) ;
303
+ vulnerabilities_list . vid = $ ( this ) . attr ( 'data-id' ) ;
304
+ vulnerabilities_list . pushState ( ) ;
268
305
269
- vulnerabilities_list . detail ( vulnerabilities_list . vid ) ;
270
- } ) ;
271
- }
272
- } else {
273
- $ ( ".vulnerabilities_list" ) . html ( '<li><h3 style="text-align: center;margin: 200px auto;">The project is deprecated :(</h3></li>' ) ;
274
- }
306
+ vulnerabilities_list . detail ( vulnerabilities_list . vid ) ;
307
+ } ) ;
275
308
} ,
276
309
trigger_filter : function ( ) {
277
310
if ( $ ( ".filter" ) . is ( ":visible" ) === true ) {
0 commit comments