# HG changeset patch # User BenoƮt Allard # Date 1412863725 -7200 # Node ID 33d6fd9a5e123614171b572df1f2a6c857f407be # Parent 6a61c02f2156c78ee471d7f37fa29b446b08e274 Add deletion of Product Statuses diff -r 6a61c02f2156 -r 33d6fd9a5e12 farol/templates/vulnerability/view_productstatus.j2 --- a/farol/templates/vulnerability/view_productstatus.j2 Thu Oct 09 16:03:04 2014 +0200 +++ b/farol/templates/vulnerability/view_productstatus.j2 Thu Oct 09 16:08:45 2014 +0200 @@ -24,7 +24,7 @@ -#} {% extends "vulnerability/base.j2" %} - +{% from "macros.j2" import delete_button %} {% block title %}{{ status.getTitle() }}{% endblock %} {% block i_content %} @@ -37,4 +37,5 @@
  • {{ cvrf.getProductForID(productid)._name }}
  • {% endfor %} +
    {{ delete_button(url_for('.del_status', ordinal=ordinal, index=index)) }}
    {% endblock %} diff -r 6a61c02f2156 -r 33d6fd9a5e12 farol/vulnerability.py --- a/farol/vulnerability.py Thu Oct 09 16:03:04 2014 +0200 +++ b/farol/vulnerability.py Thu Oct 09 16:08:45 2014 +0200 @@ -254,7 +254,6 @@ get_vuln(ordinal).addProductStatus(status) return redirect(url_for('.view', ordinal=ordinal)) - @vulnerability.route('//productstatus//edit', methods=['GET', 'POST']) @document_required def edit_status(ordinal, index): @@ -271,6 +270,17 @@ status.addProductID(productid) return redirect(url_for('.view', ordinal=ordinal)) +@vulnerability.route('//productstatus//del', methods=['POST']) +@document_required +def del_status(ordinal, index): + statuses = get_vuln(ordinal)._productstatuses + if not ( 0 <= index < len(statuses)): + flash('Product Status not found', 'danger') + abort(404) + + del statuses[index] + return redirect(url_for('.view', ordinal=ordinal)) + @vulnerability.route('//threat/') @document_required