@@ -1226,6 +1226,72 @@ def close_finding(request, fid):
12261226 )
12271227
12281228
1229+ @user_is_authorized (Finding , Permissions .Finding_Edit , "fid" )
1230+ def verify_finding (request , fid ):
1231+ finding = get_object_or_404 (Finding , id = fid )
1232+
1233+ if finding .verified :
1234+ messages .add_message (
1235+ request ,
1236+ messages .INFO ,
1237+ "Finding already verified." ,
1238+ extra_tags = "alert-info" ,
1239+ )
1240+ return redirect_to_return_url_or_else (
1241+ request ,
1242+ reverse ("view_finding" , args = (finding .id ,)),
1243+ )
1244+
1245+ form = NoteForm (data = request .POST or None )
1246+ form .fields ["entry" ].required = False
1247+ form .fields ["entry" ].label = _ ("Comment (optional)" )
1248+
1249+ if request .method == "POST" and form .is_valid ():
1250+ entry = form .cleaned_data .get ("entry" , "" ).strip ()
1251+ if entry :
1252+ note = form .save (commit = False )
1253+ note .author = request .user
1254+ note .save ()
1255+ finding .notes .add (note )
1256+
1257+ now_time = timezone .now ()
1258+ finding .verified = True
1259+ finding .last_reviewed = now_time
1260+ finding .last_reviewed_by = request .user
1261+ finding .last_status_update = now_time
1262+ finding .save (push_to_jira = False )
1263+
1264+ messages .add_message (
1265+ request ,
1266+ messages .SUCCESS ,
1267+ "Finding verified." ,
1268+ extra_tags = "alert-success" ,
1269+ )
1270+
1271+ return redirect_to_return_url_or_else (
1272+ request ,
1273+ reverse ("view_finding" , args = (finding .id ,)),
1274+ )
1275+
1276+ product_tab = Product_Tab (
1277+ finding .test .engagement .product ,
1278+ title = "Verify Finding" ,
1279+ tab = "findings" ,
1280+ )
1281+
1282+ return render (
1283+ request ,
1284+ "dojo/verify_finding.html" ,
1285+ {
1286+ "finding" : finding ,
1287+ "product_tab" : product_tab ,
1288+ "user" : request .user ,
1289+ "form" : form ,
1290+ "active_tab" : "findings" ,
1291+ },
1292+ )
1293+
1294+
12291295@user_is_authorized (Finding , Permissions .Finding_Edit , "fid" )
12301296def defect_finding_review (request , fid ):
12311297 finding = get_object_or_404 (Finding , id = fid )
0 commit comments