@@ -1,51 +1,58 | |||||
1 |
from django.shortcuts import render, |
|
1 | from django.shortcuts import redirect, render, get_object_or_404 | |
2 | from django.template import RequestContext |
|
|||
3 |
|
2 | |||
4 |
from . |
|
3 | from apps.main.models import Experiment, Configuration | |
5 | from .models import CGSConfiguration |
|
4 | from .models import CGSConfiguration | |
6 | from apps.main.models import Device |
|
5 | from .forms import CGSConfigurationForm | |
7 | # Create your views here. |
|
6 | # Create your views here. | |
8 |
|
7 | |||
9 | def configurate_frequencies(request, id=0): |
|
8 | def cgs_conf(request, id_conf): | |
10 |
|
9 | |||
11 | if id: |
|
10 | conf = get_object_or_404(CGSConfiguration, pk=id_conf) | |
12 | conf = CGSConfiguration.objects.get(pk=id) |
|
11 | ||
13 | devices = Device.objects.filter(configuration__experiment=conf.experiment) |
|
12 | kwargs = {} | |
14 | devices = devices.values('configuration__id', 'device_type__name') |
|
13 | kwargs['dev_conf'] = conf | |
15 | for device in devices: |
|
14 | kwargs['dev_conf_keys'] = ['experiment', 'device', | |
16 | if device['device_type__name']=='cgs': |
|
15 | 'freq0', 'freq1', | |
17 | device['active'] = 'active' |
|
16 | 'freq2', 'freq3'] | |
18 | break |
|
17 | ||
19 |
|
18 | kwargs['title'] = 'CGS Configuration' | ||
20 | device = device |
|
19 | kwargs['suptitle'] = 'Details' | |
21 | form = CGSConfigurationForm(instance=conf) |
|
20 | ||
22 | else: |
|
21 | kwargs['button'] = 'Edit Configuration' | |
23 | form = CGSConfigurationForm() |
|
22 | ||
|
23 | ###### SIDEBAR ###### | |||
|
24 | experiments = Experiment.objects.filter(campaign=conf.experiment.campaign) | |||
|
25 | configurations = Configuration.objects.filter(experiment=conf.experiment) | |||
|
26 | ||||
|
27 | exp_keys = ['id', 'campaign', 'name', 'start_time', 'end_time'] | |||
|
28 | conf_keys = ['id', 'device__name', 'device__device_type__name', 'device__ip_address'] | |||
|
29 | ||||
|
30 | kwargs['experiment_keys'] = exp_keys[1:] | |||
|
31 | kwargs['experiments'] = experiments.values(*exp_keys) | |||
|
32 | ||||
|
33 | kwargs['configuration_keys'] = conf_keys[1:] | |||
|
34 | kwargs['configurations'] = configurations.values(*conf_keys) | |||
|
35 | ||||
|
36 | return render(request, 'cgs_conf.html', kwargs) | |||
24 |
|
37 | |||
25 | data = { |
|
38 | def cgs_conf_edit(request, id_conf): | |
26 | 'form': form, |
|
39 | ||
27 | 'device': device, |
|
40 | conf = get_object_or_404(CGSConfiguration, pk=id_conf) | |
28 | 'devices':devices, |
|
41 | ||
29 | 'title': ('YAP'), |
|
42 | if request.method=='GET': | |
30 | } |
|
43 | form = CGSConfigurationForm(instance=conf) | |
31 |
|
44 | |||
32 | data['dev_conf'] = conf |
|
45 | if request.method=='POST': | |
33 | data['dev_conf_keys'] = ['experiment', 'device'] |
|
46 | form = CGSConfigurationForm(request.POST, instance=conf) | |
34 |
|
47 | |||
35 | if request.method == 'POST': |
|
|||
36 | form = CGSConfigurationForm(request.POST) #, initial={'purchase_request':purchase_request}) |
|
|||
37 | if form.is_valid(): |
|
48 | if form.is_valid(): | |
38 |
|
|
49 | form.save() | |
39 | #if 'quote' in request.FILES: |
|
50 | return redirect('url_cgs_conf', id_conf=id_conf) | |
40 | # instance.quoe = request.FILES['quote'] |
|
51 | ||
41 | instance.save() |
|
52 | kwargs = {} | |
42 | form.save_m2m() |
|
53 | kwargs['form'] = form | |
43 | msg = _(u'The frequencies have been activated successfully.') |
|
54 | kwargs['title'] = 'Device Configuration' | |
44 | messages.success(request, msg, fail_silently=True) |
|
55 | kwargs['suptitle'] = 'Edit' | |
45 | #return redirect(purchase_request.get_absolute_url()) |
|
56 | kwargs['button'] = 'Update' | |
46 |
|
|
57 | ||
47 | form = CGSConfigurationForm() |
|
58 | return render(request, 'cgs_conf_edit.html', kwargs) No newline at end of file | |
48 |
|
||||
49 | return render(request, 'cgs_conf.html', data) |
|
|||
50 |
|
||||
51 |
|
General Comments 0
You need to be logged in to leave comments.
Login now