def editImage(request, imageSetID): imageSet = IMAGE_SET_MODEL.get().objects.get(pk=imageSetID) if request.POST: form = ImageSetForm(request.POST, instance=imageSet) if form.is_valid(): form.save() if form.errors: for key, msg in form.errors.items(): if key == "warning": messages.warning(request, msg) elif key == "error": messages.error(request, msg) else: messages.success(request, settings.XGDS_IMAGE_IMAGE_SET_MONIKER + " successfully updated.") return HttpResponseRedirect( reverse("search_map_single_object", kwargs={"modelPK": imageSetID, "modelName": "Photo"}) ) else: messages.error(request, "The form is not valid") return render_to_response("xgds_image/imageEdit.html", RequestContext(request, {"form": form})) elif request.method == "GET": form = ImageSetForm(instance=imageSet) return render_to_response( "xgds_image/imageEdit.html", RequestContext( request, { "form": form, "templates": get_handlebars_templates( list(settings.XGDS_MAP_SERVER_HANDLEBARS_DIRS), "XGDS_MAP_SERVER_HANDLEBARS_DIRS" ), }, ), )
def updateImageInfo(request): """ Saves update image info entered by the user in the image view. """ if request.method == 'POST': imgId = request.POST['id'] imageSet = IMAGE_SET_MODEL.get().objects.get(pk=imgId) form = ImageSetForm(request.POST, instance=imageSet) if form.is_valid(): imageSet = form.save(commit=False) changed_position = request.POST['changed_position'] if int(changed_position) == 1: latitude = form.cleaned_data['latitude'] longitude = form.cleaned_data['longitude'] altitude = form.cleaned_data['altitude'] heading = form.cleaned_data['heading'] if (latitude or longitude or altitude or heading): if not imageSet.user_position: imageSet.user_position = POSITION_MODEL.get( ).objects.create( timestamp=imageSet.acquisition_time, serverTimestamp=imageSet.acquisition_time, latitude=latitude, longitude=longitude) else: imageSet.user_position.latitude = latitude imageSet.user_position.longitude = longitude try: imageSet.user_position.altitude = altitude except: pass try: imageSet.user_position.heading = heading except: pass imageSet.user_position.save() # imageSet.description = form.cleaned_data['description'] imageSet.save() return HttpResponse(json.dumps([imageSet.toMapDict()], cls=DatetimeJsonEncoder), content_type="application/json") else: return HttpResponse(json.dumps({ 'status': 'error', 'message': "Failed to save." }), content_type='application/json')
def updateImageInfo(request): """ Saves update image info entered by the user in the image view. """ if request.method == "POST": imgId = request.POST["id"] imageSet = IMAGE_SET_MODEL.get().objects.get(pk=imgId) form = ImageSetForm(request.POST, instance=imageSet) if form.is_valid(): imageSet = form.save(commit=False) changed_position = request.POST["changed_position"] if int(changed_position) == 1: latitude = form.cleaned_data["latitude"] longitude = form.cleaned_data["longitude"] altitude = form.cleaned_data["altitude"] heading = form.cleaned_data["heading"] if latitude or longitude or altitude or heading: if not imageSet.user_position: imageSet.user_position = POSITION_MODEL.get().objects.create( timestamp=imageSet.acquisition_time, serverTimestamp=imageSet.acquisition_time, latitude=latitude, longitude=longitude, ) else: imageSet.user_position.latitude = latitude imageSet.user_position.longitude = longitude try: imageSet.user_position.altitude = altitude except: pass try: imageSet.user_position.heading = heading except: pass imageSet.user_position.save() # imageSet.description = form.cleaned_data['description'] imageSet.save() return HttpResponse( json.dumps([imageSet.toMapDict()], cls=DatetimeJsonEncoder), content_type="application/json" ) else: return HttpResponse( json.dumps({"status": "error", "message": "Failed to save."}), content_type="application/json" )
def getImageImportPage(request): # map plus image templates for now templates = get_handlebars_templates(XGDS_IMAGE_TEMPLATE_LIST, 'XGDS_IMAGE_TEMPLATE_LIST') data = { 'imageSetsJson': [], 'templates': templates, 'form': UploadFileForm(), 'imageSetForm': ImageSetForm() } return render( request, "xgds_image/imageImport.html", data, )
def getImageImportPage(request): # map plus image templates for now templates = get_handlebars_templates(XGDS_IMAGE_TEMPLATE_LIST, 'XGDS_IMAGE_TEMPLATE_LIST') data = { 'imageSetsJson': [], 'templates': templates, 'form': UploadFileForm(), 'imageSetForm': ImageSetForm(), 'title': 'Import ' + settings.XGDS_IMAGE_IMAGE_SET_MONIKER, 'help_content_path': 'xgds_image/help/import.rst' } return render( request, "xgds_image/imageImport.html", data, )
def editImage(request, imageSetID): imageSet = IMAGE_SET_MODEL.get().objects.get(pk=imageSetID) if request.POST: form = ImageSetForm(request.POST, instance=imageSet) if form.is_valid(): form.save() if form.errors: for key, msg in form.errors.items(): if key == 'warning': messages.warning(request, msg) elif key == 'error': messages.error(request, msg) else: messages.success( request, settings.XGDS_IMAGE_IMAGE_SET_MONIKER + ' successfully updated.') return HttpResponseRedirect( reverse('search_map_single_object', kwargs={ 'modelPK': imageSetID, 'modelName': settings.XGDS_IMAGE_IMAGE_MODEL_NAME })) else: messages.error(request, 'The form is not valid') return render(request, 'xgds_image/imageEdit.html', {'form': form}) elif request.method == "GET": form = ImageSetForm(instance=imageSet) return render( request, 'xgds_image/imageEdit.html', { 'form': form, 'templates': get_handlebars_templates( list(settings.XGDS_MAP_SERVER_HANDLEBARS_DIRS), 'XGDS_MAP_SERVER_HANDLEBARS_DIRS') })