Mercurial > farol > farol
comparison farol/producttree.py @ 139:584587a000a2
Propagate ProductID and GroupID updates in the whole document
author | Benoît Allard <benoit.allard@greenbone.net> |
---|---|
date | Mon, 27 Oct 2014 15:08:29 +0100 |
parents | 64a6e69d54fc |
children | 1d63a532ccce |
comparison
equal
deleted
inserted
replaced
138:43cd11ba7928 | 139:584587a000a2 |
---|---|
194 # Unlink | 194 # Unlink |
195 product.unlink() | 195 product.unlink() |
196 # Link again | 196 # Link again |
197 product.link(ptree) | 197 product.link(ptree) |
198 | 198 |
199 if (request.form['productid'] != product._productid) and not cvrf.isProductOrphan(product._productid): | |
200 flash('Also updating the ProductID for %s in this Document' % request.form['name'], 'info') | |
201 cvrf.changeProductID(product._productid, request.form['productid']) | |
199 product._productid = request.form['productid'] | 202 product._productid = request.form['productid'] |
200 product._name = request.form['name'] | 203 product._name = request.form['name'] |
201 product._cpe = request.form['cpe'] or None | 204 product._cpe = request.form['cpe'] or None |
202 return redirect(url_for('.view')) | 205 return redirect(url_for('.view')) |
203 | 206 |
311 | 314 |
312 @producttree.route('/group/<groupid>/edit', methods=['GET', 'POST']) | 315 @producttree.route('/group/<groupid>/edit', methods=['GET', 'POST']) |
313 @document_required | 316 @document_required |
314 @producttree_required | 317 @producttree_required |
315 def edit_group(groupid): | 318 def edit_group(groupid): |
316 try: | 319 cvrf = get_current() |
317 group = get_current().getGroupForID(groupid) | 320 try: |
321 group = cvrf.getGroupForID(groupid) | |
318 except KeyError: | 322 except KeyError: |
319 abort(404) | 323 abort(404) |
320 if request.method != 'POST': | 324 if request.method != 'POST': |
321 return render_template('producttree/edit_group.j2', groupid=group._groupid, description=group._description, productids=group._productids) | 325 return render_template('producttree/edit_group.j2', groupid=group._groupid, description=group._description, productids=group._productids) |
322 | 326 |
327 if (request.form['groupid'] != group._groupid) and not cvrf.isGroupOrphan(group._groupid): | |
328 flash('Also updating the groupid in the whole document.', 'info') | |
329 cvrf.changeGroupID(group._groupid, request.form['groupid']) | |
323 group._groupid = request.form['groupid'] | 330 group._groupid = request.form['groupid'] |
324 group.setDescription(request.form['description'] or None) | 331 group.setDescription(request.form['description'] or None) |
325 group._productids = [] | 332 group._productids = [] |
326 for productid in request.form.getlist('products'): | 333 for productid in request.form.getlist('products'): |
327 group.addProductID(productid) | 334 group.addProductID(productid) |