##// END OF EJS Templates
Update & fix jars_server.py
Update & fix jars_server.py

File last commit:

r293:c29b16375255
r312:b2b8d81ad03b
Show More
views.py
240 lines | 7.7 KiB | text/x-python | PythonLexer
Juan C. Espinoza
Updating base models and views ...
r6 from django.shortcuts import render_to_response
from django.template import RequestContext
Fiorella Quino
Task #99: Modulo web del JARS...
r118 from django.shortcuts import redirect, render, get_object_or_404
Fiorella Quino
Task #99: View & Edit Jars Filters...
r135 from django.contrib import messages
Fiorella Quino
Task #1127: Get Log function has been implemented...
r274 from django.http import HttpResponse
Juan C. Espinoza
Updating base models and views ...
r6
from apps.main.models import Device
Miguel Urco
Buttons "Import", "Export, "Read" and "Write" added to Configuration View...
r30 from apps.main.views import sidebar
Fiorella Quino
Task #99: View & Edit Jars Filters...
r135 from .models import JARSConfiguration, JARSfilter
Juan C. Espinoza
sync repo...
r157 from .forms import JARSConfigurationForm, JARSfilterForm, JARSImportForm
Fiorella Quino
Filter template name combo box and change_filter views...
r269
import json
Juan C. Espinoza
Updating base models and views ...
r6 # Create your views here.
Fiorella Quino
Task #99: Modulo web del JARS...
r118 def jars_conf(request, id_conf):
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 conf = get_object_or_404(JARSConfiguration, pk=id_conf)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Filter template name combo box and change_filter views...
r269 filter_parms = eval(conf.filter_parms)
if filter_parms.__class__.__name__=='str':
filter_parms = eval(filter_parms)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs = {}
Fiorella Quino
Filter template name combo box and change_filter views...
r269 kwargs['filter'] = filter_parms
kwargs['filter_keys'] = ['clock', 'mult', 'fch', 'fch_decimal',
'filter_fir', 'filter_2', 'filter_5']
Fiorella Quino
jars ...
r293
Fiorella Quino
Filter template name combo box and change_filter views...
r269 filter_resolution=conf.filter_resolution()
Fiorella Quino
Task #1119: save and cancel button...
r270 kwargs['resolution'] = '{} (MHz)'.format(filter_resolution)
if filter_resolution < 1:
kwargs['resolution'] = '{} (kHz)'.format(filter_resolution*1000)
Fiorella Quino
jars ...
r293
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs['status'] = conf.device.get_status_display()
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs['dev_conf'] = conf
Juan C. Espinoza
Improve Search view (filters and paginator added), add base_list template, delete unused templates...
r138 kwargs['dev_conf_keys'] = ['name',
Fiorella Quino
git-svn-id: http://jro-dev.igp.gob.pe/svn/jro_hard/radarsys/trunk/webapp@157 aa17d016-51d5-4e8b-934c-7b2bbb1bbe71
r136 'cards_number', 'channels_number', 'channels',
Fiorella Quino
jars ...
r293 'ftp_interval', 'data_type','acq_profiles',
Fiorella Quino
Task #1068: Import function has been implemented...
r275 'profiles_block', 'raw_data_blocks', 'ftp_interval',
'cohe_integr_str', 'cohe_integr', 'decode_data', 'post_coh_int',
'incohe_integr', 'fftpoints', 'spectral_number',
Fiorella Quino
git-svn-id: http://jro-dev.igp.gob.pe/svn/jro_hard/radarsys/trunk/webapp@157 aa17d016-51d5-4e8b-934c-7b2bbb1bbe71
r136 'spectral', 'create_directory', 'include_expname',
Juan C. Espinoza
sync repo...
r157 'save_ch_dc', 'save_data']
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #1068: Import function has been implemented...
r275 if conf.exp_type == 0:
for field in ['incohe_integr','fftpoints','spectral_number', 'spectral', 'save_ch_dc']:
kwargs['dev_conf_keys'].remove(field)
if conf.decode_data == 0:
kwargs['dev_conf_keys'].remove('decode_data')
kwargs['dev_conf_keys'].remove('post_coh_int')
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs['title'] = 'JARS Configuration'
kwargs['suptitle'] = 'Details'
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs['button'] = 'Edit Configuration'
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 #kwargs['no_play'] = True
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
#kwargs['only_stop'] = True
Fiorella Quino
Task #99: Modulo web del JARS...
r118 ###### SIDEBAR ######
kwargs.update(sidebar(conf=conf))
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 return render(request, 'jars_conf.html', kwargs)
Juan C. Espinoza
Updating base models and views ...
r6
Fiorella Quino
Task #99: Modulo web del JARS...
r118 def jars_conf_edit(request, id_conf):
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 conf = get_object_or_404(JARSConfiguration, pk=id_conf)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Filter template name combo box and change_filter views...
r269 filter_parms = eval(conf.filter_parms)
if filter_parms.__class__.__name__=='str':
filter_parms = eval(filter_parms)
Fiorella Quino
Task #99: Modulo web del JARS...
r118 if request.method=='GET':
form = JARSConfigurationForm(instance=conf)
Fiorella Quino
Filter template name combo box and change_filter views...
r269 filter_form = JARSfilterForm(initial=filter_parms)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 if request.method=='POST':
form = JARSConfigurationForm(request.POST, instance=conf)
Fiorella Quino
Filter template name combo box and change_filter views...
r269 filter_form = JARSfilterForm(request.POST)
if filter_form.is_valid():
jars_filter = filter_form.cleaned_data
try:
jars_filter.pop('name')
except:
pass
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 if form.is_valid():
conf = form.save(commit=False)
Fiorella Quino
Filter template name combo box and change_filter views...
r269 conf.filter_parms = json.dumps(jars_filter)
Fiorella Quino
Task #99: Modulo web del JARS...
r123 conf.save()
Fiorella Quino
Task #99: Modulo web del JARS...
r118 return redirect('url_jars_conf', id_conf=conf.id)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs = {}
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs['id_dev'] = conf.id
kwargs['form'] = form
Fiorella Quino
Filter template name combo box and change_filter views...
r269 kwargs['filter_form'] = filter_form
Fiorella Quino
Task #99: Modulo web del JARS...
r118 kwargs['title'] = 'Device Configuration'
kwargs['suptitle'] = 'Edit'
kwargs['button'] = 'Save'
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Fiorella Quino
Task #99: View & Edit Jars Filters...
r135 return render(request, 'jars_conf_edit.html', kwargs)
Juan C. Espinoza
sync repo...
r157 def import_file(request, conf_id):
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 conf = get_object_or_404(JARSConfiguration, pk=conf_id)
if request.method=='POST':
form = JARSImportForm(request.POST, request.FILES)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209 if form.is_valid():
Fiorella Quino
Task #1068: Import function has been implemented...
r275 try:
Fiorella Quino
Jars files have been update...
r263 data = conf.import_from_file(request.FILES['file_name'])
conf.dict_to_parms(data)
messages.success(request, 'Configuration "%s" loaded succesfully' % request.FILES['file_name'])
return redirect(conf.get_absolute_url_edit())
Fiorella Quino
jars ...
r293
Fiorella Quino
Task #1068: Import function has been implemented...
r275 except Exception as e:
messages.error(request, 'Error parsing file: "%s" - %s' % (request.FILES['file_name'], repr(e)))
Juan C. Espinoza
sync repo...
r157 else:
messages.warning(request, 'Your current configuration will be replaced')
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209 form = JARSImportForm()
Juan C. Espinoza
sync repo...
r157 kwargs = {}
kwargs['form'] = form
kwargs['title'] = 'JARS Configuration'
kwargs['suptitle'] = 'Import file'
kwargs['button'] = 'Upload'
kwargs['previous'] = conf.get_absolute_url()
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 return render(request, 'jars_import.html', kwargs)
def read_conf(request, conf_id):
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 conf = get_object_or_404(JARSConfiguration, pk=conf_id)
#filter = get_object_or_404(JARSfilter, pk=filter_id)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 if request.method=='GET':
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 parms = conf.read_device()
conf.status_device()
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 if not parms:
messages.error(request, conf.message)
return redirect(conf.get_absolute_url())
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 form = JARSConfigurationForm(initial=parms, instance=conf)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 if request.method=='POST':
form = JARSConfigurationForm(request.POST, instance=conf)
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 if form.is_valid():
form.save()
return redirect(conf.get_absolute_url())
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 messages.error(request, "Parameters could not be saved")
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 kwargs = {}
kwargs['id_dev'] = conf.id
kwargs['filter_id'] = conf.filter.id
kwargs['form'] = form
kwargs['title'] = 'Device Configuration'
kwargs['suptitle'] = 'Parameters read from device'
kwargs['button'] = 'Save'
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 ###### SIDEBAR ######
kwargs.update(sidebar(conf=conf))
Fiorella Quino
Standardize jars functions: start, stop, write, read, status...
r209
Juan C. Espinoza
sync repo...
r157 return render(request, 'jars_conf_edit.html', kwargs)
Fiorella Quino
Filter template name combo box and change_filter views...
r269
def change_filter(request, conf_id, filter_id=None):
conf = get_object_or_404(JARSConfiguration, pk=conf_id)
Fiorella Quino
jars ...
r293
Fiorella Quino
Filter template name combo box and change_filter views...
r269 if filter_id:
if filter_id.__class__.__name__ not in ['int', 'float']:
filter_id = eval(filter_id)
Fiorella Quino
jars ...
r293
Fiorella Quino
Filter template name combo box and change_filter views...
r269 if filter_id == 0:
return redirect('url_change_jars_filter', conf_id=conf.id)
if request.method=='GET':
if not filter_id:
Fiorella Quino
Task #1119: bugs and jars_new_filter.html has been deleted...
r272 form = JARSfilterForm(initial={'filter_id': 0})
Fiorella Quino
Filter template name combo box and change_filter views...
r269 else:
Fiorella Quino
Task #1119: bugs and jars_new_filter.html has been deleted...
r272 form = JARSfilterForm(initial={'filter_id': filter_id})
Fiorella Quino
Filter template name combo box and change_filter views...
r269
Fiorella Quino
Task #1119: save and cancel button...
r270 if request.method=='POST':
form = JARSfilterForm(request.POST)
if form.is_valid():
jars_filter = form.cleaned_data
try:
jars_filter.pop('name')
except:
pass
conf.filter_parms = json.dumps(jars_filter)
conf.save()
return redirect('url_edit_jars_conf', id_conf=conf.id)
Fiorella Quino
Task #1119: bugs...
r271 else:
messages.error(request, "Select a Filter Template")
return redirect('url_change_jars_filter', conf_id=conf.id)
Fiorella Quino
Task #1119: save and cancel button...
r270
Fiorella Quino
Filter template name combo box and change_filter views...
r269 kwargs = {}
kwargs['title'] = 'JARS Configuration'
kwargs['suptitle'] = 'Change Filter'
kwargs['form'] = form
Fiorella Quino
Task #1119: save and cancel button...
r270 kwargs['button'] = 'Change'
Fiorella Quino
Filter template name combo box and change_filter views...
r269 kwargs['conf_id'] = conf.id
kwargs['filter_id'] = filter_id
return render(request, 'change_jars_filter.html', kwargs)
Fiorella Quino
Task #1127: Get Log function has been implemented...
r274
def get_log(request, conf_id):
conf = get_object_or_404(JARSConfiguration, pk=conf_id)
response = conf.get_log()
if not response:
message = conf.message
messages.error(request, message)
return redirect('url_jars_conf', id_conf=conf.id)
Fiorella Quino
jars ...
r293
Fiorella Quino
Task #1127: Get Log function has been implemented...
r274 try:
message = response.json()['message']
messages.error(request, message)
return redirect('url_jars_conf', id_conf=conf.id)
except Exception as e:
message = 'Restarting Report.txt has been downloaded successfully.'
Fiorella Quino
jars ...
r293
Fiorella Quino
Task #1127: Get Log function has been implemented...
r274 content = response
filename = 'Log_%s_%s.txt' %(conf.experiment.name, conf.experiment.id)
response = HttpResponse(content,content_type='text/plain')
response['Content-Disposition'] = 'attachment; filename="%s"' %filename
Fiorella Quino
jars ...
r293 return response