@@ -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
@@ -61,12 +62,13 @@ $(function () {
61
62
$ ( '.v-path' ) . text ( data . file_path + ':' + data . line_number ) ;
62
63
$ ( '.v-id' ) . text ( 'MVE-' + vid ) ;
63
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
- if ( 9 <= data . level && data . level <= 10 ) {
71
+ if ( 9 <= data . level && data . level <= 10 ) {
70
72
$ ( '.v-level' ) . text ( 'Critical' ) ;
71
73
} else if ( 6 <= data . level && data . level <= 8 ) {
72
74
$ ( '.v-level' ) . text ( 'High' ) ;
@@ -202,84 +204,107 @@ $(function () {
202
204
evt . stopPropagation ( ) ;
203
205
} ) ;
204
206
}
205
- if ( $ ( "input[name=need_scan]" ) . val ( ) !== "False" ) {
206
- // Search vulnerability type
207
- if ( on_filter === false || typeof on_filter === 'undefined' ) {
208
- var svt = getParameterByName ( 'svt' ) ;
209
- if ( svt !== null && svt > 0 ) {
210
- $ ( '#search_vul_type' ) . val ( svt ) ;
211
- }
212
- // Search rule
213
- var sr = getParameterByName ( 'sr' ) ;
214
- if ( sr !== null && sr > 0 ) {
215
- $ ( '#search_rule' ) . val ( sr ) ;
216
- }
217
- // Search level
218
- var sl = getParameterByName ( 'sl' ) ;
219
- if ( sl !== null && sl > 0 ) {
220
- $ ( '#search_level' ) . val ( sl ) ;
221
- }
222
- // Search target
223
- var st = getParameterByName ( 'st' ) ;
224
- if ( st !== null && st > 0 ) {
225
- $ ( '#search_task' ) . val ( st ) ;
226
- }
227
- // Search status
228
- var ss = getParameterByName ( 'ss' ) ;
229
- if ( ss !== null && ss > 0 ) {
230
- $ ( '#search_status' ) . val ( ss ) ;
231
- }
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 ) ;
217
+ }
218
+ // Search level
219
+ var sl = getParameterByName ( 'sl' ) ;
220
+ if ( sl !== null && sl > 0 ) {
221
+ $ ( '#search_level' ) . val ( sl ) ;
232
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
+ }
233
234
234
- vulnerabilities_list . pushState ( ) ;
235
+ vulnerabilities_list . pushState ( ) ;
235
236
236
- // load vulnerabilities list
237
+ // load vulnerabilities list
237
238
238
- var list = vul_list_origin . vulnerabilities ;
239
- if ( list . length === 0 ) {
240
- $ ( ".vulnerabilities_list" ) . html ( '<li><h3 style="text-align: center;margin: 200px auto;">Wow, no vulnerability was detected :)</h3></li>' ) ;
241
- } else {
242
- var list_html = '' ;
239
+ var list = vul_list_origin . vulnerabilities ;
240
+ sl = Number ( sl ) ;
241
+ var list_html = '' ;
243
242
244
- var id = 0 ;
245
- for ( var i = 0 ; i < list . length ; i ++ ) {
246
- var line = '' ;
247
- if ( list [ i ] . line_number !== 0 ) {
248
- 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 ;
249
270
}
250
- list_html = list_html + '<li data-id="' + ( i + 1 ) + '" class=" " data-start="1" data-line="1">' +
251
- '<strong>MVE-' + ( i + 1 ) + '</strong><br><span>' + list [ i ] . file_path + line + '</span><br>' +
252
- '<span class="issue-information">' +
253
- '<small>' +
254
- list [ i ] . match_result + ' => ' + list [ i ] . commit_time +
255
- '</small>' +
256
- '</span>' +
257
- '</li>' ;
258
-
259
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
+ }
260
291
261
- $ ( '.vulnerabilities_list' ) . html ( list_html ) ;
262
-
263
- // current vulnerability
264
- var vid = getParameterByName ( 'vid' ) ;
265
- if ( vid !== null && vid > 0 ) {
266
- vulnerabilities_list . detail ( vid ) ;
267
- }
292
+ // current vulnerability
293
+ var vid = getParameterByName ( 'vid' ) ;
294
+ if ( vid !== null && vid > 0 ) {
295
+ vulnerabilities_list . detail ( vid ) ;
296
+ }
268
297
269
- // vulnerabilities list detail
270
- $ ( '.vulnerabilities_list li' ) . off ( 'click' ) . on ( 'click' , function ( ) {
271
- // loading
272
- $ ( '.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 ) ) ;
273
302
274
- vulnerabilities_list . vid = $ ( this ) . attr ( 'data-id' ) ;
275
- vulnerabilities_list . pushState ( ) ;
303
+ vulnerabilities_list . vid = $ ( this ) . attr ( 'data-id' ) ;
304
+ vulnerabilities_list . pushState ( ) ;
276
305
277
- vulnerabilities_list . detail ( vulnerabilities_list . vid ) ;
278
- } ) ;
279
- }
280
- } else {
281
- $ ( ".vulnerabilities_list" ) . html ( '<li><h3 style="text-align: center;margin: 200px auto;">The project is deprecated :(</h3></li>' ) ;
282
- }
306
+ vulnerabilities_list . detail ( vulnerabilities_list . vid ) ;
307
+ } ) ;
283
308
} ,
284
309
trigger_filter : function ( ) {
285
310
if ( $ ( ".filter" ) . is ( ":visible" ) === true ) {
0 commit comments