diff --git a/firewall_gui/static/partials/rule-list.html b/firewall_gui/static/partials/rule-list.html index 826ae05..8ee0ea5 100644 --- a/firewall_gui/static/partials/rule-list.html +++ b/firewall_gui/static/partials/rule-list.html @@ -41,7 +41,7 @@ <td>{{rule.description}}</td> <td> <a class="btn" href="#/rules/{{rule.id}}/">Szerkesztés</a> - <a class="btn btn-danger" href="#/rules/{{rule.id}}/delete/">Törlés</a> + <button class="btn btn-danger" ng-click="deleteEntity(rule.id)">Törlés</button> </td> </tr> </table> diff --git a/firewall_gui/views.py b/firewall_gui/views.py index ba0a73f..394b93d 100644 --- a/firewall_gui/views.py +++ b/firewall_gui/views.py @@ -481,7 +481,7 @@ def set_field(object, attr, errors, **kwargs): @user_passes_test(req_staff) def save_rule(request): data = json.loads(request.body) - if 'id' in data: + if 'id' in data and data['id']: rule = get_object_or_404(Rule, id=data['id']) else: rule = Rule() @@ -495,6 +495,7 @@ def save_rule(request): rule.accept = data['accept'] rule.nat = data['nat'] rule.nat_dport = data['nat_dport'] + rule.r_type = data['target']['type'] set_field(rule, 'owner', errors, username=data['owner']['name']) for attr in ['host', 'hostgroup', 'vlan', 'vlangroup', 'firewall']: searchBy = 'name' if attr != 'host' else 'hostname' @@ -510,7 +511,7 @@ def save_rule(request): if len(errors) > 0: return HttpResponse(json.dumps(errors), content_type='application/json', status=400) rule.save() - return HttpResponse('KTHXBYE') + return HttpResponse(rule.id) @user_passes_test(req_staff) def save_host(request):