@http_authenticate(auth, 'ais')
def fleet_edit(request, fleetname):
- # TODO fleetname = None => add
- fleet = get_object_or_404(Fleet, name=fleetname)
- if not FleetUser.objects.filter(fleet=fleet.id, user=request.user.id).all():
- return HttpResponseForbidden('<h1>Forbidden</h1>')
-
initial = {}
- initial['name'] = fleet.name
- initial['description'] = fleet.description
+ if fleetname is not None:
+ fleet = get_object_or_404(Fleet, name=fleetname)
+ if not FleetUser.objects.filter(fleet=fleet.id, user=request.user.id).all():
+ return HttpResponseForbidden('<h1>Forbidden</h1>')
+
+ initial['name'] = fleet.name
+ initial['description'] = fleet.description
+ else:
+ fleet = Fleet()
+
if request.method == 'POST':
form = FleetEditForm(request.POST, initial=initial)
if form.is_valid():
fleet.name = form.cleaned_data['name']
fleet.description = form.cleaned_data['description']
fleet.save()
+ if not fleetname: # new one
+ fu = FleetUser()
+ fu.fleet = fleet
+ fu.user = request.user
+ fu.save()
request.user.info('Fleet updated')
return HttpResponseRedirect('/fleet/%s/' % fleet.name)
else: # GET
{% block breadcrumbs %}
{{ block.super }}
+{% if fleet.id %}
/ <a href="/fleet/{{fleet.name}}/edit">edit</a>
+{% else %}
+<a href="/fleet/add">add</a>
+{% endif %}
{% endblock %}
{% block content %}
+{% if fleet.id %}
<h3>Edition of fleet {{ fleet.name }}</h3>
+{% else %}
+<h3>Creation of a new fleet</h3>
+{% endif %}
<form method=post>
{% include "fragment_formerror.html" %}
<table>