##// END OF EJS Templates
templates have been updated...
templates have been updated git-svn-id: http://jro-dev.igp.gob.pe/svn/jro_hard/radarsys/trunk/webapp@194 aa17d016-51d5-4e8b-934c-7b2bbb1bbe71

File last commit:

r138:3e65d7459f20
r171:1d66ac164b66
Show More
views.py
321 lines | 10.4 KiB | text/x-python | PythonLexer
from django.shortcuts import redirect, render, get_object_or_404
from django.contrib import messages
from django.http import HttpResponse
from apps.main.models import Experiment, Configuration
from .models import CGSConfiguration
from .forms import CGSConfigurationForm, UploadFileForm
from apps.main.views import sidebar
import requests
import json
#from __builtin__ import None
# Create your views here.
def cgs_conf(request, id_conf):
conf = get_object_or_404(CGSConfiguration, pk=id_conf)
ip=conf.device.ip_address
port=conf.device.port_address
kwargs = {}
kwargs['status'] = conf.device.get_status_display()
#if request.method=='GET':
#r: response = icon, status
# try:
# route = "http://" + str(ip) + ":" + str(port) + "/status/ad9548"
# r = requests.get(route)
# response = str(r.text)
# response = response.split(";")
# icon = response[0]
# status = response[-1]
#print r.text
#"icon" could be: "alert" or "okay"
# Si hay alerta pero esta conectado
# if "alert" in icon:
# if "Starting Up" in status: #No Esta conectado
# kwargs['connected'] = False
# else:
# kwargs['connected'] = True
# elif "okay" in icon:
# kwargs['connected'] = True
# else:
# kwargs['connected'] = False
# except:
# kwargs['connected'] = False
# status = "The Device is not connected."
#if not kwargs['connected']:
# messages.error(request, message=status)
kwargs['dev_conf'] = conf
kwargs['dev_conf_keys'] = ['name',
'freq0', 'freq1',
'freq2', 'freq3']
kwargs['title'] = 'CGS Configuration'
kwargs['suptitle'] = 'Details'
kwargs['button'] = 'Edit Configuration'
kwargs['no_play'] = True
###### SIDEBAR ######
kwargs.update(sidebar(conf=conf))
return render(request, 'cgs_conf.html', kwargs)
def cgs_conf_edit(request, id_conf):
conf = get_object_or_404(CGSConfiguration, pk=id_conf)
if request.method=='GET':
form = CGSConfigurationForm(instance=conf)
if request.method=='POST':
form = CGSConfigurationForm(request.POST, instance=conf)
if form.is_valid():
if conf.freq0 == None: conf.freq0 = 0
if conf.freq1 == None: conf.freq1 = 0
if conf.freq2 == None: conf.freq2 = 0
if conf.freq3 == None: conf.freq3 = 0
conf = form.save(commit=False)
if conf.verify_frequencies():
conf.save()
return redirect('url_cgs_conf', id_conf=conf.id)
##ERRORS
kwargs = {}
kwargs['id_dev'] = conf.id
kwargs['form'] = form
kwargs['title'] = 'Device Configuration'
kwargs['suptitle'] = 'Edit'
kwargs['button'] = 'Save'
return render(request, 'cgs_conf_edit.html', kwargs)
#
# def cgs_conf_write(request, id_conf):
#
# conf = get_object_or_404(CGSConfiguration, pk=id_conf)
# ip=conf.device.ip_address
# port=conf.device.port_address
#
# #Frequencies from form
# f0 = conf.freq0
# f1 = conf.freq1
# f2 = conf.freq2
# f3 = conf.freq3
#
# try:
# post_data = {"f0":f0, "f1":f1, "f2":f2, "f3":f3}
# route = "http://" + str(ip) + ":" + str(port) + "/frequencies/"
# r = requests.post(route, post_data)
# text = r.text
# text = text.split(',')
#
# try:
# if len(text)>1:
# title = text[0]
# status = text[1]
# status_ok = r.status_code
# if title == "okay":
# messages.success(request, status)
# else:
# messages.error(request, status)
#
# else:
# title = text[0]
# messages.error(request, title)
#
# except:
# messages.error(request, "An hardware error was found.")
#
# except:
# messages.error(request, "Could not write parameters.")
#
#
#
#
# return redirect('url_cgs_conf', id_conf=conf.id)
#
# def cgs_conf_read(request, id_conf):
#
# conf = get_object_or_404(CGSConfiguration, pk=id_conf)
#
# ip=conf.device.ip_address
# port=conf.device.port_address
#
# if request.method=='POST':
# form = CGSConfigurationForm(request.POST, instance=conf)
#
# if form.is_valid():
# cgs_model = form.save(commit=False)
#
# if cgs_model.verify_frequencies():
#
# cgs_model.save()
# return redirect('url_cgs_conf', id_conf=conf.id)
#
# messages.error(request, "Parameters could not be saved. Invalid parameters")
#
# data = {}
#
#
# if request.method=='GET':
# #r: response = icon, status
# route = "http://" + str(ip) + ":" + str(port) + "/status/ad9548"
# try:
# r = requests.get(route)
# response = str(r.text)
# response = response.split(";")
# icon = response[0]
# status = response[-1]
# print r.text
# #"icon" could be: "alert" or "okay"
# if "okay" in icon:
# messages.success(request, status)
# else:
# messages.error(request, status)
# #Get Frequencies
# route = "http://" + str(ip) + ":" + str(port) + "/frequencies/"
# #frequencies = requests.get('http://10.10.10.175:8080/frequencies/')
# frequencies = requests.get(route)
# frequencies = frequencies.json()
# frequencies = frequencies.get("Frecuencias")
# f0 = frequencies.get("f0")
# f1 = frequencies.get("f1")
# f2 = frequencies.get("f2")
# f3 = frequencies.get("f3")
# print f0,f1,f2,f3
#
#
# if not response:
# messages.error(request, "Could not read parameters from Device")
# return redirect('url_cgs_conf', id_conf=conf.id)
#
# data = {'experiment' : conf.experiment.id,
# 'device' : conf.device.id,
# 'freq0' : f0,
# 'freq1' : f1,
# 'freq2' : f2,
# 'freq3' : f3,
# }
# except:
# messages.error(request, "Could not read parameters from Device")
# data = {'experiment' : conf.experiment.id,
# 'device' : conf.device.id,
# 'freq0' : None,
# 'freq1' : None,
# 'freq2' : None,
# 'freq3' : None,
# }
# return redirect('url_cgs_conf', id_conf=conf.id)
#
# form = CGSConfigurationForm(initial = data)
#
# kwargs = {}
# kwargs['id_dev'] = conf.id
# kwargs['form'] = form
# kwargs['title'] = 'Device Configuration'
# kwargs['suptitle'] = 'Parameters read from device'
# kwargs['button'] = 'Save'
#
# ###### SIDEBAR ######
# kwargs.update(sidebar(conf))
#
# return render(request, 'cgs_conf_edit.html', kwargs)
#
# def cgs_conf_import(request, id_conf):
#
# conf = get_object_or_404(CGSConfiguration, pk=id_conf)
#
# if request.method == 'POST':
# file_form = UploadFileForm(request.POST, request.FILES)
#
# if file_form.is_valid():
#
# try:
# if conf.update_from_file(request.FILES['file']):
#
# try:
# conf.full_clean()
# except ValidationError as e:
# messages.error(request, e)
# else:
# conf.save()
#
# messages.success(request, "Parameters imported from file: '%s'." %request.FILES['file'].name)
# #messages.warning(request,"")
# return redirect('url_cgs_conf', id_conf=conf.id)
# except:
# messages.error(request, "No JSON object could be decoded.")
#
# messages.error(request, "Could not import parameters from file")
#
# else:
# file_form = UploadFileForm(initial={'title': '.json'})
#
#
# kwargs = {}
# kwargs['id_dev'] = conf.id
# kwargs['title'] = 'Device Configuration'
# kwargs['form'] = file_form
# kwargs['suptitle'] = 'Importing file'
# kwargs['button'] = 'Import'
#
# kwargs.update(sidebar(conf))
#
# return render(request, 'cgs_conf_import.html', kwargs)
#
# def handle_uploaded_file(f):
#
# data = {'freq0' : 62500000,
# 'freq1' : 62500000,
# 'freq2' : 62500000,
# 'freq3' : 62500000,
# }
#
# return data
#
# def cgs_conf_export(request, id_conf):
#
# conf = get_object_or_404(CGSConfiguration, pk=id_conf)
# ip=conf.device.ip_address
# port=conf.device.port_address
#
# #if request.method=='GET':
# # data = {"Frequencies": [
# # ["freq0", conf.freq0],
# # ["freq1", conf.freq1],
# # ["freq2", conf.freq2],
# # ["freq3", conf.freq3]
# # ]}
# # json_data = json.dumps(data)
# # conf.parameters = json_data
# # response = HttpResponse(conf.parameters, content_type="application/json")
# # response['Content-Disposition'] = 'attachment; filename="data.json"'
#
# # return response
#
# kwargs = {}
# kwargs['dev_conf'] = conf
# kwargs['dev_conf_keys'] = ['experiment', 'device',
# 'freq0', 'freq1',
# 'freq2', 'freq3']
#
# kwargs['title'] = 'CGS Configuration'
# kwargs['suptitle'] = 'Details'
#
# kwargs['button'] = 'Edit Configuration'
#
# ###### SIDEBAR ######
# kwargs.update(sidebar(conf))
# return render(request, 'cgs_conf.html', kwargs)