def edit_vehicle(request, vehicle_id, form_id): db_vehicle = get_object_or_404(Vehicle, id=vehicle_id) if request.method == 'POST': jsModel = jsonModel() vehicle_form = VehicleForm(instance=db_vehicle, data=request.POST, user=request.user) if vehicle_form.is_valid(): db_exist_vehicle = Vehicle.objects.filter(organization=request.user.userprofil.organization, radio_call_sign=request.POST.get('radio_call_sign', None)) db_exist_vehicle = db_exist_vehicle.exclude(id=db_vehicle.id) if db_exist_vehicle.count() > 0: jsModel.set(result_code='error', result_message=MSG_VEHICLE_ADD_EXIS) else: vehicle_form.save() jsModel.set(result_code='success', result_message=MSG_VEHICLE_EDIT_SUCCESS) else: tmp_data = dict((k, v) for (k, v) in vehicle_form.errors.items()) jsModel.set(result_code='error', validation_errors=tmp_data) return HttpResponse(jsModel.json_dump(), mimetype='application/json') else: vehicle_form = VehicleForm(prefix=form_id, instance=db_vehicle, user=request.user) return render(request, 'fleets/vehicleForm.html', {'formId': form_id, 'vehicleId': vehicle_id, 'vehicleForm': vehicle_form, 'add': True, 'object': db_vehicle})
def add_vehicle(request, form_id): if request.method == 'POST': jsModel = jsonModel() vehicle_form = VehicleForm(user=request.user, data=request.POST) if vehicle_form.is_valid(): db_exist_vehicle = Vehicle.objects.filter(organization=request.user.userprofil.organization, radio_call_sign=request.POST.get('radio_call_sign', None)) if db_exist_vehicle.count() > 0: jsModel.set(result_code='error', result_message=MSG_VEHICLE_ADD_EXIS) else: vehicle_form.save() jsModel.set(result_code='success', result_message=MSG_VEHICLE_ADD_SUCCESS) else: tmp_data = dict((k, v) for (k, v) in vehicle_form.errors.items()) jsModel.set(result_code='error', validation_errors=tmp_data) return HttpResponse(jsModel.json_dump(), mimetype='application/json') else: vehicle_form = VehicleForm(prefix=form_id, user=request.user) return render(request, 'fleets/vehicleForm.html', {'formId': form_id, 'vehicleId': 0, 'vehicleForm': vehicle_form})