##// END OF EJS Templates
views name were changed ...
Miguel Urco -
r19:225e7bf681bc
parent child
Show More
@@ -1,6 +1,6
1 from django.conf.urls import url
1 from django.conf.urls import url
2
2
3 urlpatterns = (
3 urlpatterns = (
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_abs_conf'),
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_abs_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.edit_dev_conf', name='url_edit_abs_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.dev_conf_edit', name='url_edit_abs_conf'),
6 )
6 )
@@ -1,9 +1,9
1 from django.conf.urls import url
1 from django.conf.urls import url
2
2
3 urlpatterns = (
3 urlpatterns = (
4 #url(r'^configuration/$', 'apps.cgs.views.configurate_frequencies', name='new_device'),
4 #url(r'^configuration/$', 'apps.cgs.views.configurate_frequencies', name='new_device'),
5 # url(r'^(?P<id>-?\d+)/$', 'apps.cgs.views.configurate_frequencies', name='new_device'),
5 # url(r'^(?P<id>-?\d+)/$', 'apps.cgs.views.configurate_frequencies', name='new_device'),
6 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_cgs_conf'),
6 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_cgs_conf'),
7 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.edit_dev_conf', name='url_edit_cgs_conf'),
7 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.dev_conf_edit', name='url_edit_cgs_conf'),
8 )
8 )
9
9
@@ -1,6 +1,6
1 from django.conf.urls import url
1 from django.conf.urls import url
2
2
3 urlpatterns = (
3 urlpatterns = (
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.dds.views.dds_conf', name='url_dds_conf'),
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.dds.views.dds_conf', name='url_dds_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.dds.views.edit_dds_conf', name='url_edit_dds_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.dds.views.dds_conf_edit', name='url_edit_dds_conf'),
6 )
6 )
@@ -1,63 +1,63
1 # Create your views here.
1 # Create your views here.
2
2
3 from django.shortcuts import redirect, render
3 from django.shortcuts import redirect, render
4
4
5 from apps.main.models import Experiment, Configuration
5 from apps.main.models import Experiment, Configuration
6 from .models import DDSConfiguration
6 from .models import DDSConfiguration
7 from .forms import DDSConfigurationForm
7 from .forms import DDSConfigurationForm
8 # Create your views here.
8 # Create your views here.
9
9
10 def dds_conf(request, id_conf):
10 def dds_conf(request, id_conf):
11
11
12 conf = DDSConfiguration.objects.get(pk=id_conf)
12 conf = DDSConfiguration.objects.get(pk=id_conf)
13
13
14 kwargs = {}
14 kwargs = {}
15 kwargs['dev_conf'] = conf
15 kwargs['dev_conf'] = conf
16 kwargs['dev_conf_keys'] = ['experiment', 'device',
16 kwargs['dev_conf_keys'] = ['experiment', 'device',
17 'clock', 'multiplier',
17 'clock', 'multiplier',
18 'freq_reg', 'phase_reg',
18 'freq_reg', 'phase_reg',
19 'amplitude_chA', 'amplitude_chB',
19 'amplitude_chA', 'amplitude_chB',
20 'modulation',
20 'modulation',
21 'freq_reg_mod', 'phase_reg_mod']
21 'freq_reg_mod', 'phase_reg_mod']
22
22
23 kwargs['title'] = 'DDS Configuration'
23 kwargs['title'] = 'DDS Configuration'
24 kwargs['suptitle'] = 'Details'
24 kwargs['suptitle'] = 'Details'
25
25
26 kwargs['button'] = 'Edit Configuration'
26 kwargs['button'] = 'Edit Configuration'
27
27
28 ###### SIDEBAR ######
28 ###### SIDEBAR ######
29 experiments = Experiment.objects.filter(campaign=conf.experiment.campaign)
29 experiments = Experiment.objects.filter(campaign=conf.experiment.campaign)
30 configurations = Configuration.objects.filter(experiment=conf.experiment)
30 configurations = Configuration.objects.filter(experiment=conf.experiment)
31
31
32 exp_keys = ['id', 'campaign', 'name', 'start_time', 'end_time']
32 exp_keys = ['id', 'campaign', 'name', 'start_time', 'end_time']
33 conf_keys = ['id', 'device__name', 'device__device_type__name', 'device__ip_address']
33 conf_keys = ['id', 'device__name', 'device__device_type__name', 'device__ip_address']
34
34
35 kwargs['experiment_keys'] = exp_keys[1:]
35 kwargs['experiment_keys'] = exp_keys[1:]
36 kwargs['experiments'] = experiments.values(*exp_keys)
36 kwargs['experiments'] = experiments.values(*exp_keys)
37
37
38 kwargs['configuration_keys'] = conf_keys[1:]
38 kwargs['configuration_keys'] = conf_keys[1:]
39 kwargs['configurations'] = configurations.values(*conf_keys)
39 kwargs['configurations'] = configurations.values(*conf_keys)
40
40
41 return render(request, 'dds_conf.html', kwargs)
41 return render(request, 'dds_conf.html', kwargs)
42
42
43 def edit_dds_conf(request, id_conf):
43 def dds_conf_edit(request, id_conf):
44
44
45 conf = DDSConfiguration.objects.get(pk=id_conf)
45 conf = DDSConfiguration.objects.get(pk=id_conf)
46
46
47 if request.method=='GET':
47 if request.method=='GET':
48 form = DDSConfigurationForm(instance=conf)
48 form = DDSConfigurationForm(instance=conf)
49
49
50 if request.method=='POST':
50 if request.method=='POST':
51 form = DDSConfigurationForm(request.POST, instance=conf)
51 form = DDSConfigurationForm(request.POST, instance=conf)
52
52
53 if form.is_valid():
53 if form.is_valid():
54 form.save()
54 form.save()
55 return redirect('url_dds_conf', id_conf=id_conf)
55 return redirect('url_dds_conf', id_conf=id_conf)
56
56
57 kwargs = {}
57 kwargs = {}
58 kwargs['form'] = form
58 kwargs['form'] = form
59 kwargs['title'] = 'Device Configuration'
59 kwargs['title'] = 'Device Configuration'
60 kwargs['suptitle'] = 'Edit'
60 kwargs['suptitle'] = 'Edit'
61 kwargs['button'] = 'Update'
61 kwargs['button'] = 'Update'
62
62
63 return render(request, 'dds_conf_edit.html', kwargs) No newline at end of file
63 return render(request, 'dds_conf_edit.html', kwargs)
@@ -1,7 +1,7
1 from django.conf.urls import url
1 from django.conf.urls import url
2
2
3 urlpatterns = (
3 urlpatterns = (
4 # url(r'^(?P<id>-?\d+)/$', 'apps.jars.views.jars_config', name='jars'),
4 # url(r'^(?P<id>-?\d+)/$', 'apps.jars.views.jars_config', name='jars'),
5 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_jars_conf'),
5 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_jars_conf'),
6 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.edit_dev_conf', name='url_edit_jars_conf'),
6 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.dev_conf_edit', name='url_edit_jars_conf'),
7 )
7 )
@@ -1,27 +1,27
1 from django.conf.urls import url
1 from django.conf.urls import url
2
2
3 urlpatterns = (
3 urlpatterns = (
4 url(r'^device/add/$', 'apps.main.views.add_device', name='url_add_device'),
4 url(r'^device/new/$', 'apps.main.views.device_new', name='url_add_device'),
5 url(r'^device/$', 'apps.main.views.devices', name='url_devices'),
5 url(r'^device/$', 'apps.main.views.devices', name='url_devices'),
6 url(r'^device/(?P<id_dev>-?\d+)/$', 'apps.main.views.device', name='url_device'),
6 url(r'^device/(?P<id_dev>-?\d+)/$', 'apps.main.views.device', name='url_device'),
7 url(r'^device/(?P<id_dev>-?\d+)/edit/$', 'apps.main.views.edit_device', name='url_edit_device'),
7 url(r'^device/(?P<id_dev>-?\d+)/edit/$', 'apps.main.views.device_edit', name='url_edit_device'),
8 url(r'^device/(?P<id_dev>-?\d+)/delete/$', 'apps.main.views.delete_device', name='url_delete_device'),
8 url(r'^device/(?P<id_dev>-?\d+)/delete/$', 'apps.main.views.device_delete', name='url_delete_device'),
9
9
10 url(r'^campaign/add/$', 'apps.main.views.add_campaign', name='url_add_campaign'),
10 url(r'^campaign/new/$', 'apps.main.views.campaign_new', name='url_add_campaign'),
11 url(r'^campaign/$', 'apps.main.views.campaigns', name='url_campaigns'),
11 url(r'^campaign/$', 'apps.main.views.campaigns', name='url_campaigns'),
12 url(r'^campaign/(?P<id_camp>-?\d+)/$', 'apps.main.views.campaign', name='url_campaign'),
12 url(r'^campaign/(?P<id_camp>-?\d+)/$', 'apps.main.views.campaign', name='url_campaign'),
13 url(r'^campaign/(?P<id_camp>-?\d+)/edit/$', 'apps.main.views.edit_campaign', name='url_edit_campaign'),
13 url(r'^campaign/(?P<id_camp>-?\d+)/edit/$', 'apps.main.views.campaign_edit', name='url_edit_campaign'),
14 url(r'^campaign/(?P<id_camp>-?\d+)/delete/$', 'apps.main.views.delete_campaign', name='url_delete_campaign'),
14 url(r'^campaign/(?P<id_camp>-?\d+)/delete/$', 'apps.main.views.campaign_delete', name='url_delete_campaign'),
15
15
16 url(r'^campaign/(?P<id_camp>-?\d+)/add_experiment/$', 'apps.main.views.add_experiment', name='url_add_experiment'),
16 url(r'^campaign/(?P<id_camp>-?\d+)/new_experiment/$', 'apps.main.views.experiment_new', name='url_add_experiment'),
17 url(r'^experiment/$', 'apps.main.views.experiments', name='url_experiments'),
17 url(r'^experiment/$', 'apps.main.views.experiments', name='url_experiments'),
18 url(r'^experiment/(?P<id_exp>-?\d+)/$', 'apps.main.views.experiment', name='url_experiment'),
18 url(r'^experiment/(?P<id_exp>-?\d+)/$', 'apps.main.views.experiment', name='url_experiment'),
19 url(r'^experiment/(?P<id_exp>-?\d+)/edit/$', 'apps.main.views.edit_experiment', name='url_edit_experiment'),
19 url(r'^experiment/(?P<id_exp>-?\d+)/edit/$', 'apps.main.views.experiment_edit', name='url_edit_experiment'),
20 url(r'^experiment/(?P<id_exp>-?\d+)/delete/$', 'apps.main.views.delete_experiment', name='url_delete_experiment'),
20 url(r'^experiment/(?P<id_exp>-?\d+)/delete/$', 'apps.main.views.experiment_delete', name='url_delete_experiment'),
21
21
22 url(r'^experiment/(?P<id_exp>-?\d+)/add_dev_conf/$', 'apps.main.views.add_dev_conf', name='url_add_dev_conf'),
22 url(r'^experiment/(?P<id_exp>-?\d+)/new_dev_conf/$', 'apps.main.views.dev_conf_new', name='url_add_dev_conf'),
23 url(r'^dev_conf/$', 'apps.main.views.dev_confs', name='url_dev_confs'),
23 url(r'^dev_conf/$', 'apps.main.views.dev_confs', name='url_dev_confs'),
24 url(r'^dev_conf/(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_dev_conf'),
24 url(r'^dev_conf/(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_dev_conf'),
25 url(r'^dev_conf/(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.edit_dev_conf', name='url_edit_dev_conf'),
25 url(r'^dev_conf/(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.dev_conf_edit', name='url_edit_dev_conf'),
26 url(r'^dev_conf/(?P<id_conf>-?\d+)/delete/$', 'apps.main.views.delete_dev_conf', name='url_delete_dev_conf'),
26 url(r'^dev_conf/(?P<id_conf>-?\d+)/delete/$', 'apps.main.views.dev_conf_delete', name='url_delete_dev_conf'),
27 )
27 )
@@ -1,569 +1,454
1 from django.shortcuts import render, redirect, HttpResponse
1 from django.shortcuts import render, redirect, HttpResponse
2
2
3 from .forms import CampaignForm, ExperimentForm, DeviceForm, ConfigurationForm
3 from .forms import CampaignForm, ExperimentForm, DeviceForm, ConfigurationForm
4 from apps.cgs.forms import CGSConfigurationForm
4 from apps.cgs.forms import CGSConfigurationForm
5 from apps.jars.forms import JARSConfigurationForm
5 from apps.jars.forms import JARSConfigurationForm
6 from apps.usrp.forms import USRPConfigurationForm
6 from apps.usrp.forms import USRPConfigurationForm
7 from apps.abs.forms import ABSConfigurationForm
7 from apps.abs.forms import ABSConfigurationForm
8 from apps.rc.forms import RCConfigurationForm
8 from apps.rc.forms import RCConfigurationForm
9 from apps.dds.forms import DDSConfigurationForm
9 from apps.dds.forms import DDSConfigurationForm
10
10
11 from .models import Campaign, Experiment, Device, Configuration
11 from .models import Campaign, Experiment, Device, Configuration
12 from apps.cgs.models import CGSConfiguration
12 from apps.cgs.models import CGSConfiguration
13 from apps.jars.models import JARSConfiguration
13 from apps.jars.models import JARSConfiguration
14 from apps.usrp.models import USRPConfiguration
14 from apps.usrp.models import USRPConfiguration
15 from apps.abs.models import ABSConfiguration
15 from apps.abs.models import ABSConfiguration
16 from apps.rc.models import RCConfiguration
16 from apps.rc.models import RCConfiguration
17 from apps.dds.models import DDSConfiguration
17 from apps.dds.models import DDSConfiguration
18
18
19 # Create your views here.
19 # Create your views here.
20
20
21 CONF_FORMS = {
21 CONF_FORMS = {
22 'rc': RCConfigurationForm,
22 'rc': RCConfigurationForm,
23 'dds': DDSConfigurationForm,
23 'dds': DDSConfigurationForm,
24 'jars': JARSConfigurationForm,
24 'jars': JARSConfigurationForm,
25 'cgs': CGSConfigurationForm,
25 'cgs': CGSConfigurationForm,
26 'abs': ABSConfigurationForm,
26 'abs': ABSConfigurationForm,
27 'usrp': USRPConfigurationForm,
27 'usrp': USRPConfigurationForm,
28 }
28 }
29
29
30 CONF_MODELS = {
30 CONF_MODELS = {
31 'rc': RCConfiguration,
31 'rc': RCConfiguration,
32 'dds': DDSConfiguration,
32 'dds': DDSConfiguration,
33 'jars': JARSConfiguration,
33 'jars': JARSConfiguration,
34 'cgs': CGSConfiguration,
34 'cgs': CGSConfiguration,
35 'abs': ABSConfiguration,
35 'abs': ABSConfiguration,
36 'usrp': USRPConfiguration,
36 'usrp': USRPConfiguration,
37 }
37 }
38
38
39 def index(request):
39 def index(request):
40 kwargs = {}
40 kwargs = {}
41
41
42 return render(request, 'index.html', kwargs)
42 return render(request, 'index.html', kwargs)
43
43
44 def devices(request):
44 def devices(request):
45
45
46 devices = Device.objects.all().order_by('device_type__name')
46 devices = Device.objects.all().order_by('device_type__name')
47
47
48 keys = ['id', 'device_type__name', 'name', 'ip_address']
48 keys = ['id', 'device_type__name', 'name', 'ip_address']
49
49
50 kwargs = {}
50 kwargs = {}
51 kwargs['device_keys'] = keys[1:]
51 kwargs['device_keys'] = keys[1:]
52 kwargs['devices'] = devices.values(*keys)
52 kwargs['devices'] = devices.values(*keys)
53 kwargs['title'] = 'Device'
53 kwargs['title'] = 'Device'
54 kwargs['suptitle'] = 'List'
54 kwargs['suptitle'] = 'List'
55 kwargs['button'] = 'New Device'
55 kwargs['button'] = 'New Device'
56
56
57 return render(request, 'devices.html', kwargs)
57 return render(request, 'devices.html', kwargs)
58
58
59 def device(request, id_dev):
59 def device(request, id_dev):
60
60
61 device = Device.objects.get(pk=id_dev)
61 device = Device.objects.get(pk=id_dev)
62
62
63 kwargs = {}
63 kwargs = {}
64 kwargs['device'] = device
64 kwargs['device'] = device
65 kwargs['device_keys'] = ['device_type', 'name', 'ip_address', 'port_address', 'description']
65 kwargs['device_keys'] = ['device_type', 'name', 'ip_address', 'port_address', 'description']
66
66
67 kwargs['title'] = 'Device'
67 kwargs['title'] = 'Device'
68 kwargs['suptitle'] = 'Details'
68 kwargs['suptitle'] = 'Details'
69
69
70 kwargs['button'] = 'Add Device'
70 kwargs['button'] = 'Add Device'
71
71
72 return render(request, 'device.html', kwargs)
72 return render(request, 'device.html', kwargs)
73
73
74 def add_device(request):
74 def device_new(request):
75
75
76 if request.method == 'GET':
76 if request.method == 'GET':
77 form = DeviceForm()
77 form = DeviceForm()
78
78
79 if request.method == 'POST':
79 if request.method == 'POST':
80 form = DeviceForm(request.POST)
80 form = DeviceForm(request.POST)
81
81
82 if form.is_valid():
82 if form.is_valid():
83 form.save()
83 form.save()
84 return redirect('url_devices')
84 return redirect('url_devices')
85
85
86 kwargs = {}
86 kwargs = {}
87 kwargs['form'] = form
87 kwargs['form'] = form
88 kwargs['title'] = 'Device'
88 kwargs['title'] = 'Device'
89 kwargs['suptitle'] = 'New'
89 kwargs['suptitle'] = 'New'
90 kwargs['button'] = 'Create'
90 kwargs['button'] = 'Create'
91
91
92 return render(request, 'device_edit.html', kwargs)
92 return render(request, 'device_edit.html', kwargs)
93
93
94 def edit_device(request, id_dev):
94 def device_edit(request, id_dev):
95
95
96 device = Device.objects.get(pk=id_dev)
96 device = Device.objects.get(pk=id_dev)
97
97
98 if request.method=='GET':
98 if request.method=='GET':
99 form = DeviceForm(instance=device)
99 form = DeviceForm(instance=device)
100
100
101 if request.method=='POST':
101 if request.method=='POST':
102 form = DeviceForm(request.POST, instance=device)
102 form = DeviceForm(request.POST, instance=device)
103
103
104 if form.is_valid():
104 if form.is_valid():
105 form.save()
105 form.save()
106 return redirect('url_devices')
106 return redirect('url_devices')
107
107
108 kwargs = {}
108 kwargs = {}
109 kwargs['form'] = form
109 kwargs['form'] = form
110 kwargs['title'] = 'Device'
110 kwargs['title'] = 'Device'
111 kwargs['suptitle'] = 'Edit'
111 kwargs['suptitle'] = 'Edit'
112 kwargs['button'] = 'Update'
112 kwargs['button'] = 'Update'
113
113
114 return render(request, 'device_edit.html', kwargs)
114 return render(request, 'device_edit.html', kwargs)
115
115
116 def delete_device(request, id_dev):
116 def device_delete(request, id_dev):
117
117
118 device = Device.objects.get(pk=id_dev)
118 device = Device.objects.get(pk=id_dev)
119
119
120 if request.method=='POST':
120 if request.method=='POST':
121
121
122 if request.user.is_staff:
122 if request.user.is_staff:
123 device.delete()
123 device.delete()
124 return redirect('url_devices')
124 return redirect('url_devices')
125
125
126 return HttpResponse("Not enough permission to delete this object")
126 return HttpResponse("Not enough permission to delete this object")
127
127
128 kwargs = {'object':device, 'dev_active':'active',
128 kwargs = {'object':device, 'dev_active':'active',
129 'url_cancel':'url_device', 'id_item':id_dev}
129 'url_cancel':'url_device', 'id_item':id_dev}
130
130
131 return render(request, 'item_delete.html', kwargs)
131 return render(request, 'item_delete.html', kwargs)
132
132
133 def campaigns(request):
133 def campaigns(request):
134
134
135 campaigns = Campaign.objects.all().order_by('start_date')
135 campaigns = Campaign.objects.all().order_by('start_date')
136
136
137 keys = ['id', 'name', 'start_date', 'end_date']
137 keys = ['id', 'name', 'start_date', 'end_date']
138
138
139 kwargs = {}
139 kwargs = {}
140 kwargs['campaign_keys'] = keys[1:]
140 kwargs['campaign_keys'] = keys[1:]
141 kwargs['campaigns'] = campaigns.values(*keys)
141 kwargs['campaigns'] = campaigns.values(*keys)
142 kwargs['title'] = 'Campaign'
142 kwargs['title'] = 'Campaign'
143 kwargs['suptitle'] = 'List'
143 kwargs['suptitle'] = 'List'
144 kwargs['button'] = 'New Campaign'
144 kwargs['button'] = 'New Campaign'
145
145
146 return render(request, 'campaigns.html', kwargs)
146 return render(request, 'campaigns.html', kwargs)
147
147
148 def campaign(request, id_camp):
148 def campaign(request, id_camp):
149
149
150 campaign = Campaign.objects.get(pk=id_camp)
150 campaign = Campaign.objects.get(pk=id_camp)
151 experiments = Experiment.objects.filter(campaign=campaign)
151 experiments = Experiment.objects.filter(campaign=campaign)
152
152
153 form = CampaignForm(instance=campaign)
153 form = CampaignForm(instance=campaign)
154
154
155 kwargs = {}
155 kwargs = {}
156 kwargs['campaign'] = campaign
156 kwargs['campaign'] = campaign
157 kwargs['campaign_keys'] = ['name', 'start_date', 'end_date', 'tags', 'description']
157 kwargs['campaign_keys'] = ['name', 'start_date', 'end_date', 'tags', 'description']
158
158
159 keys = ['id', 'name', 'start_time', 'end_time']
159 keys = ['id', 'name', 'start_time', 'end_time']
160
160
161 kwargs['experiment_keys'] = keys[1:]
161 kwargs['experiment_keys'] = keys[1:]
162 kwargs['experiments'] = experiments.values(*keys)
162 kwargs['experiments'] = experiments.values(*keys)
163
163
164 kwargs['title'] = 'Campaign'
164 kwargs['title'] = 'Campaign'
165 kwargs['suptitle'] = 'Details'
165 kwargs['suptitle'] = 'Details'
166
166
167 kwargs['form'] = form
167 kwargs['form'] = form
168 kwargs['button'] = 'Add Experiment'
168 kwargs['button'] = 'Add Experiment'
169
169
170 return render(request, 'campaign.html', kwargs)
170 return render(request, 'campaign.html', kwargs)
171
171
172 def add_campaign(request):
172 def campaign_new(request):
173
173
174 if request.method == 'GET':
174 if request.method == 'GET':
175 form = CampaignForm()
175 form = CampaignForm()
176
176
177 if request.method == 'POST':
177 if request.method == 'POST':
178 form = CampaignForm(request.POST)
178 form = CampaignForm(request.POST)
179
179
180 if form.is_valid():
180 if form.is_valid():
181 campaign = form.save()
181 campaign = form.save()
182 return redirect('url_campaign', id_camp=campaign.id)
182 return redirect('url_campaign', id_camp=campaign.id)
183
183
184 kwargs = {}
184 kwargs = {}
185 kwargs['form'] = form
185 kwargs['form'] = form
186 kwargs['title'] = 'Campaign'
186 kwargs['title'] = 'Campaign'
187 kwargs['suptitle'] = 'New'
187 kwargs['suptitle'] = 'New'
188 kwargs['button'] = 'Create'
188 kwargs['button'] = 'Create'
189
189
190 return render(request, 'campaign_edit.html', kwargs)
190 return render(request, 'campaign_edit.html', kwargs)
191
191
192 def edit_campaign(request, id_camp):
192 def campaign_edit(request, id_camp):
193
193
194 campaign = Campaign.objects.get(pk=id_camp)
194 campaign = Campaign.objects.get(pk=id_camp)
195
195
196 if request.method=='GET':
196 if request.method=='GET':
197 form = CampaignForm(instance=campaign)
197 form = CampaignForm(instance=campaign)
198
198
199 if request.method=='POST':
199 if request.method=='POST':
200 form = CampaignForm(request.POST, instance=campaign)
200 form = CampaignForm(request.POST, instance=campaign)
201
201
202 if form.is_valid():
202 if form.is_valid():
203 form.save()
203 form.save()
204 return redirect('url_campaign', id_camp=id_camp)
204 return redirect('url_campaign', id_camp=id_camp)
205
205
206 kwargs = {}
206 kwargs = {}
207 kwargs['form'] = form
207 kwargs['form'] = form
208 kwargs['title'] = 'Campaign'
208 kwargs['title'] = 'Campaign'
209 kwargs['suptitle'] = 'Edit'
209 kwargs['suptitle'] = 'Edit'
210 kwargs['button'] = 'Update'
210 kwargs['button'] = 'Update'
211
211
212 return render(request, 'campaign_edit.html', kwargs)
212 return render(request, 'campaign_edit.html', kwargs)
213
213
214 def delete_campaign(request, id_camp):
214 def campaign_delete(request, id_camp):
215
215
216 campaign = Campaign.objects.get(pk=id_camp)
216 campaign = Campaign.objects.get(pk=id_camp)
217
217
218 if request.method=='POST':
218 if request.method=='POST':
219 if request.user.is_staff:
219 if request.user.is_staff:
220 campaign.delete()
220 campaign.delete()
221 return redirect('url_campaigns')
221 return redirect('url_campaigns')
222
222
223 return HttpResponse("Not enough permission to delete this object")
223 return HttpResponse("Not enough permission to delete this object")
224
224
225 kwargs = {'object':campaign, 'camp_active':'active',
225 kwargs = {'object':campaign, 'camp_active':'active',
226 'url_cancel':'url_campaign', 'id_item':id_camp}
226 'url_cancel':'url_campaign', 'id_item':id_camp}
227
227
228 return render(request, 'item_delete.html', kwargs)
228 return render(request, 'item_delete.html', kwargs)
229
229
230 def experiments(request):
230 def experiments(request):
231
231
232 campaigns = Experiment.objects.all().order_by('start_time')
232 campaigns = Experiment.objects.all().order_by('start_time')
233
233
234 keys = ['id', 'campaign__name', 'name', 'start_time', 'end_time']
234 keys = ['id', 'campaign__name', 'name', 'start_time', 'end_time']
235
235
236 kwargs = {}
236 kwargs = {}
237
237
238 kwargs['experiment_keys'] = keys[1:]
238 kwargs['experiment_keys'] = keys[1:]
239 kwargs['experiments'] = campaigns.values(*keys)
239 kwargs['experiments'] = campaigns.values(*keys)
240
240
241 kwargs['title'] = 'Experiment'
241 kwargs['title'] = 'Experiment'
242 kwargs['suptitle'] = 'List'
242 kwargs['suptitle'] = 'List'
243 kwargs['button'] = 'New Experiment'
243 kwargs['button'] = 'New Experiment'
244
244
245 return render(request, 'experiments.html', kwargs)
245 return render(request, 'experiments.html', kwargs)
246
246
247 def experiment(request, id_exp):
247 def experiment(request, id_exp):
248
248
249 experiment = Experiment.objects.get(pk=id_exp)
249 experiment = Experiment.objects.get(pk=id_exp)
250
250
251 experiments = Experiment.objects.filter(campaign=experiment.campaign)
251 experiments = Experiment.objects.filter(campaign=experiment.campaign)
252 configurations = Configuration.objects.filter(experiment=experiment)
252 configurations = Configuration.objects.filter(experiment=experiment)
253
253
254 kwargs = {}
254 kwargs = {}
255
255
256 exp_keys = ['id', 'campaign', 'name', 'start_time', 'end_time']
256 exp_keys = ['id', 'campaign', 'name', 'start_time', 'end_time']
257 conf_keys = ['id', 'device__name', 'device__device_type__name', 'device__ip_address']
257 conf_keys = ['id', 'device__name', 'device__device_type__name', 'device__ip_address']
258
258
259
259
260 kwargs['experiment_keys'] = exp_keys[1:]
260 kwargs['experiment_keys'] = exp_keys[1:]
261 kwargs['experiment'] = experiment
261 kwargs['experiment'] = experiment
262
262
263 kwargs['experiments'] = experiments.values(*exp_keys)
263 kwargs['experiments'] = experiments.values(*exp_keys)
264
264
265 kwargs['configuration_keys'] = conf_keys[1:]
265 kwargs['configuration_keys'] = conf_keys[1:]
266 kwargs['configurations'] = configurations.values(*conf_keys)
266 kwargs['configurations'] = configurations.values(*conf_keys)
267
267
268 kwargs['title'] = 'Experiment'
268 kwargs['title'] = 'Experiment'
269 kwargs['suptitle'] = 'Details'
269 kwargs['suptitle'] = 'Details'
270
270
271 kwargs['button'] = 'Add Device'
271 kwargs['button'] = 'Add Device'
272
272
273 return render(request, 'experiment.html', kwargs)
273 return render(request, 'experiment.html', kwargs)
274
274
275 def add_experiment(request, id_camp=0):
275 def experiment_new(request, id_camp=0):
276
276
277 if request.method == 'GET':
277 if request.method == 'GET':
278 form = ExperimentForm(initial={'campaign':id_camp})
278 form = ExperimentForm(initial={'campaign':id_camp})
279
279
280 if request.method == 'POST':
280 if request.method == 'POST':
281 form = ExperimentForm(request.POST, initial={'campaign':id_camp})
281 form = ExperimentForm(request.POST, initial={'campaign':id_camp})
282
282
283 if form.is_valid():
283 if form.is_valid():
284 experiment = form.save()
284 experiment = form.save()
285 return redirect('url_experiment', id_exp=experiment.id)
285 return redirect('url_experiment', id_exp=experiment.id)
286
286
287 kwargs = {}
287 kwargs = {}
288 kwargs['form'] = form
288 kwargs['form'] = form
289 kwargs['title'] = 'Experiment'
289 kwargs['title'] = 'Experiment'
290 kwargs['suptitle'] = 'New'
290 kwargs['suptitle'] = 'New'
291 kwargs['button'] = 'Create'
291 kwargs['button'] = 'Create'
292
292
293 return render(request, 'experiment_edit.html', kwargs)
293 return render(request, 'experiment_edit.html', kwargs)
294
294
295 def edit_experiment(request, id_exp):
295 def experiment_edit(request, id_exp):
296
296
297 experiment = Experiment.objects.get(pk=id_exp)
297 experiment = Experiment.objects.get(pk=id_exp)
298
298
299 if request.method == 'GET':
299 if request.method == 'GET':
300 form = ExperimentForm(instance=experiment)
300 form = ExperimentForm(instance=experiment)
301
301
302 if request.method=='POST':
302 if request.method=='POST':
303 form = ExperimentForm(request.POST, instance=experiment)
303 form = ExperimentForm(request.POST, instance=experiment)
304
304
305 if form.is_valid():
305 if form.is_valid():
306 experiment = form.save()
306 experiment = form.save()
307 return redirect('url_experiment', id_exp=experiment.id)
307 return redirect('url_experiment', id_exp=experiment.id)
308
308
309 kwargs = {}
309 kwargs = {}
310 kwargs['form'] = form
310 kwargs['form'] = form
311 kwargs['title'] = 'Experiment'
311 kwargs['title'] = 'Experiment'
312 kwargs['suptitle'] = 'Edit'
312 kwargs['suptitle'] = 'Edit'
313 kwargs['button'] = 'Update'
313 kwargs['button'] = 'Update'
314
314
315 return render(request, 'experiment_edit.html', kwargs)
315 return render(request, 'experiment_edit.html', kwargs)
316
316
317 def delete_experiment(request, id_exp):
317 def experiment_delete(request, id_exp):
318
318
319 experiment = Experiment.objects.get(pk=id_exp)
319 experiment = Experiment.objects.get(pk=id_exp)
320
320
321 if request.method=='POST':
321 if request.method=='POST':
322 if request.user.is_staff:
322 if request.user.is_staff:
323 id_camp = experiment.campaign.id
323 id_camp = experiment.campaign.id
324 experiment.delete()
324 experiment.delete()
325 return redirect('url_campaign', id_camp=id_camp)
325 return redirect('url_campaign', id_camp=id_camp)
326
326
327 return HttpResponse("Not enough permission to delete this object")
327 return HttpResponse("Not enough permission to delete this object")
328
328
329 kwargs = {'object':experiment, 'exp_active':'active',
329 kwargs = {'object':experiment, 'exp_active':'active',
330 'url_cancel':'url_experiment', 'id_item':id_exp}
330 'url_cancel':'url_experiment', 'id_item':id_exp}
331
331
332 return render(request, 'item_delete.html', kwargs)
332 return render(request, 'item_delete.html', kwargs)
333
333
334 def dev_confs(request):
334 def dev_confs(request):
335
335
336 configurations = Configuration.objects.all().order_by('device__device_type')
336 configurations = Configuration.objects.all().order_by('device__device_type')
337
337
338 keys = ['id', 'device__device_type__name', 'device__name', 'experiment__campaign__name', 'experiment__name']
338 keys = ['id', 'device__device_type__name', 'device__name', 'experiment__campaign__name', 'experiment__name']
339
339
340 kwargs = {}
340 kwargs = {}
341
341
342 kwargs['configuration_keys'] = keys[1:]
342 kwargs['configuration_keys'] = keys[1:]
343 kwargs['configurations'] = configurations.values(*keys)
343 kwargs['configurations'] = configurations.values(*keys)
344
344
345 kwargs['title'] = 'Configuration'
345 kwargs['title'] = 'Configuration'
346 kwargs['suptitle'] = 'List'
346 kwargs['suptitle'] = 'List'
347 kwargs['button'] = 'New Configuration'
347 kwargs['button'] = 'New Configuration'
348
348
349 return render(request, 'dev_confs.html', kwargs)
349 return render(request, 'dev_confs.html', kwargs)
350
350
351 def dev_conf(request, id_conf):
351 def dev_conf(request, id_conf):
352
352
353 conf = Configuration.objects.get(pk=id_conf)
353 conf = Configuration.objects.get(pk=id_conf)
354
354
355 DevConfModel = CONF_MODELS[conf.device.device_type.name]
355 DevConfModel = CONF_MODELS[conf.device.device_type.name]
356 dev_conf = DevConfModel.objects.get(pk=id_conf)
356 dev_conf = DevConfModel.objects.get(pk=id_conf)
357
357
358 kwargs = {}
358 kwargs = {}
359 kwargs['dev_conf'] = dev_conf
359 kwargs['dev_conf'] = dev_conf
360 kwargs['dev_conf_keys'] = ['experiment', 'device']
360 kwargs['dev_conf_keys'] = ['experiment', 'device']
361
361
362 kwargs['title'] = 'Configuration'
362 kwargs['title'] = 'Configuration'
363 kwargs['suptitle'] = 'Details'
363 kwargs['suptitle'] = 'Details'
364
364
365 kwargs['button'] = 'Edit Configuration'
365 kwargs['button'] = 'Edit Configuration'
366
366
367 ###### SIDEBAR ######
367 ###### SIDEBAR ######
368 experiments = Experiment.objects.filter(campaign=conf.experiment.campaign)
368 experiments = Experiment.objects.filter(campaign=conf.experiment.campaign)
369 configurations = Configuration.objects.filter(experiment=conf.experiment)
369 configurations = Configuration.objects.filter(experiment=conf.experiment)
370
370
371 exp_keys = ['id', 'campaign', 'name', 'start_time', 'end_time']
371 exp_keys = ['id', 'campaign', 'name', 'start_time', 'end_time']
372 conf_keys = ['id', 'device__name', 'device__device_type__name', 'device__ip_address']
372 conf_keys = ['id', 'device__name', 'device__device_type__name', 'device__ip_address']
373
373
374 kwargs['experiment_keys'] = exp_keys[1:]
374 kwargs['experiment_keys'] = exp_keys[1:]
375 kwargs['experiments'] = experiments.values(*exp_keys)
375 kwargs['experiments'] = experiments.values(*exp_keys)
376
376
377 kwargs['configuration_keys'] = conf_keys[1:]
377 kwargs['configuration_keys'] = conf_keys[1:]
378 kwargs['configurations'] = configurations.values(*conf_keys)
378 kwargs['configurations'] = configurations.values(*conf_keys)
379
379
380 return render(request, 'dev_conf.html', kwargs)
380 return render(request, 'dev_conf.html', kwargs)
381
381
382 def add_dev_conf(request, id_exp=0):
382 def dev_conf_new(request, id_exp=0):
383
383
384 if request.method == 'GET':
384 if request.method == 'GET':
385 form = ConfigurationForm(initial={'experiment':id_exp})
385 form = ConfigurationForm(initial={'experiment':id_exp})
386
386
387 if request.method == 'POST':
387 if request.method == 'POST':
388 form = ConfigurationForm(request.POST)
388 form = ConfigurationForm(request.POST)
389
389
390 if form.is_valid():
390 if form.is_valid():
391 experiment = Experiment.objects.get(pk=request.POST['experiment'])
391 experiment = Experiment.objects.get(pk=request.POST['experiment'])
392 device = Device.objects.get(pk=request.POST['device'])
392 device = Device.objects.get(pk=request.POST['device'])
393
393
394 exp_devices = Device.objects.filter(configuration__experiment=experiment)
394 exp_devices = Device.objects.filter(configuration__experiment=experiment)
395
395
396 if device.id not in exp_devices.values('id',):
396 if device.id not in exp_devices.values('id',):
397
397
398 DevConfModel = CONF_MODELS[device.device_type.name]
398 DevConfModel = CONF_MODELS[device.device_type.name]
399 conf = DevConfModel(experiment=experiment, device=device)
399 conf = DevConfModel(experiment=experiment, device=device)
400 conf.save()
400 conf.save()
401
401
402 return redirect('url_experiment', id_exp=experiment.id)
402 return redirect('url_experiment', id_exp=experiment.id)
403
403
404 kwargs = {}
404 kwargs = {}
405 kwargs['form'] = form
405 kwargs['form'] = form
406 kwargs['title'] = 'Configuration'
406 kwargs['title'] = 'Configuration'
407 kwargs['suptitle'] = 'New'
407 kwargs['suptitle'] = 'New'
408 kwargs['button'] = 'Create'
408 kwargs['button'] = 'Create'
409
409
410 return render(request, 'dev_conf_edit.html', kwargs)
410 return render(request, 'dev_conf_edit.html', kwargs)
411
411
412 def edit_dev_conf(request, id_conf):
412 def dev_conf_edit(request, id_conf):
413
413
414 conf = Configuration.objects.get(pk=id_conf)
414 conf = Configuration.objects.get(pk=id_conf)
415
415
416 DevConfModel = CONF_MODELS[conf.device.device_type.name]
416 DevConfModel = CONF_MODELS[conf.device.device_type.name]
417 DevConfForm = CONF_FORMS[conf.device.device_type.name]
417 DevConfForm = CONF_FORMS[conf.device.device_type.name]
418
418
419 dev_conf = DevConfModel.objects.get(pk=id_conf)
419 dev_conf = DevConfModel.objects.get(pk=id_conf)
420
420
421 if request.method=='GET':
421 if request.method=='GET':
422 form = DevConfForm(instance=dev_conf)
422 form = DevConfForm(instance=dev_conf)
423
423
424 if request.method=='POST':
424 if request.method=='POST':
425 form = DevConfForm(request.POST, instance=dev_conf)
425 form = DevConfForm(request.POST, instance=dev_conf)
426
426
427 if form.is_valid():
427 if form.is_valid():
428 form.save()
428 form.save()
429 return redirect('url_dev_conf', id_conf=id_conf)
429 return redirect('url_dev_conf', id_conf=id_conf)
430
430
431 kwargs = {}
431 kwargs = {}
432 kwargs['form'] = form
432 kwargs['form'] = form
433 kwargs['title'] = 'Device Configuration'
433 kwargs['title'] = 'Device Configuration'
434 kwargs['suptitle'] = 'Edit'
434 kwargs['suptitle'] = 'Edit'
435 kwargs['button'] = 'Update'
435 kwargs['button'] = 'Update'
436
436
437 return render(request, 'dev_conf_edit.html', kwargs)
437 return render(request, 'dev_conf_edit.html', kwargs)
438
438
439 def delete_dev_conf(request, id_conf):
439 def dev_conf_delete(request, id_conf):
440
440
441 conf = Configuration.objects.get(pk=id_conf)
441 conf = Configuration.objects.get(pk=id_conf)
442
442
443 if request.method=='POST':
443 if request.method=='POST':
444 if request.user.is_staff:
444 if request.user.is_staff:
445 id_exp = conf.experiment.id
445 id_exp = conf.experiment.id
446 conf.delete()
446 conf.delete()
447 return redirect('url_experiment', id_exp=id_exp)
447 return redirect('url_experiment', id_exp=id_exp)
448
448
449 return HttpResponse("Not enough permission to delete this object")
449 return HttpResponse("Not enough permission to delete this object")
450
450
451 kwargs = {'object':conf, 'conf_active':'active',
451 kwargs = {'object':conf, 'conf_active':'active',
452 'url_cancel':'url_dev_conf', 'id_item':id_conf}
452 'url_cancel':'url_dev_conf', 'id_item':id_conf}
453
453
454 return render(request, 'item_delete.html', kwargs)
454 return render(request, 'item_delete.html', kwargs) No newline at end of file
455
456 # def experiment(request, id_exp=0, id_dev_type=0):
457 # kwargs = {}
458 # if id_exp:
459 # experiment = Experiment.objects.get(pk=id_exp)
460 # devices = Configuration.objects.filter(configuration__experiment=experiment)
461 # kwargs['experiment'] = experiment
462 # kwargs['experiment_keys'] = ['campaign', 'name', 'start_time', 'end_time']
463 #
464 # form = ExperimentForm(instance=experiment)
465 #
466 # if id_dev_type:
467 # subform = DeviceTypeForm(initial={'device_type':id_dev_type})
468 # kwargs['keys'] = ['ip_address']
469 # keys = ['id']+kwargs['keys']
470 # kwargs['items'] = Device.objects.filter(device_type=id_dev_type).values(*keys)
471 # else:
472 # subform = DeviceTypeForm()
473 #
474 # kwargs['form'] = form
475 # kwargs['subform'] = subform
476 # kwargs['device_keys'] = ['device_type__name', 'ip_address']
477 # kwargs['devices'] = devices.values('device_type__name', 'ip_address', 'configuration__id')
478 # kwargs['suptitle'] = 'Detail'
479 # else:
480 # experiments = Experiment.objects.all().order_by('start_time')
481 # kwargs['keys'] = ['name', 'start_time', 'end_time']
482 # keys = ['id']+kwargs['keys']
483 # kwargs['items'] = experiments.values(*keys)
484 # kwargs['suptitle'] = 'List'
485 # kwargs['button'] = 'Add Experiment'
486 #
487 # kwargs['id_dev_type'] = id_dev_type
488 # kwargs['id_exp'] = id_exp
489 # return render_to_response("experiment.html", kwargs, context_instance=RequestContext(request))
490
491 # def edit_experiment(request, id_exp):
492 # if request.method=='POST':
493 # experiment = Experiment.objects.get(pk=id_exp)
494 # form = ExperimentForm(request.POST, instance=experiment)
495 # if form.is_valid():
496 # form.save()
497 # return redirect('experiment', id_exp=id_exp)
498
499 # def experiment_add_device(request, id_exp):
500 # if request.method=='POST':
501 # experiment = Experiment.objects.get(pk=id_exp)
502 #
503 # exp_devices = Device.objects.filter(configuration__experiment=experiment)
504 #
505 # device = Device.objects.get(pk=request.POST['device'])
506 #
507 # if device.id in exp_devices.values('id',):
508 # return redirect('experiment', id_exp=id_exp)
509 #
510 # model = MODELS[device.device_type.alias]
511 # conf = model(experiment=experiment, device=device)
512 # conf.save()
513 # return redirect('experiment', id_exp=id_exp)
514
515 # def add_experiment(request):
516 #
517 # kwargs = {}
518 # if request.method == 'POST':
519 # form = ExperimentForm(request.POST)
520 # if form.is_valid():
521 # experiment = form.save()
522 # return redirect('experiment', id_exp=experiment.id)
523 # else:
524 # form = ExperimentForm()
525 # kwargs['form_new'] = form
526 # kwargs['title'] = 'Experiment'
527 # kwargs['suptitle'] = 'New'
528 # kwargs['id_exp'] = 0
529 # return render_to_response("experiment.html", kwargs, context_instance=RequestContext(request))
530
531 # def device(request, id_dev=0):
532 # kwargs = {}
533 # if id_dev:
534 # device = Device.objects.get(pk=id_dev)
535 # kwargs['form'] = DeviceForm(instance=device)
536 # kwargs['action'] = 'edit/'
537 # kwargs['button'] = 'Update'
538 # kwargs['suptitle'] = 'Detail'
539 # else:
540 # devices = Device.objects.all()
541 # kwargs['keys'] = ['device_type__name', 'ip_address']
542 # keys = ['id']+kwargs['keys']
543 # kwargs['items'] = devices.values(*keys)
544 # kwargs['suptitle'] = 'List'
545 # kwargs['button'] = 'Add Device'
546 # return render_to_response("device.html", kwargs, context_instance=RequestContext(request))
547 #
548 # def edit_device(request, id_dev):
549 # if request.method=='POST':
550 # device = Device.objects.get(pk=id_dev)
551 # form = DeviceForm(request.POST, instance=device)
552 # if form.is_valid():
553 # form.save()
554 # return redirect('devices')
555 #
556 # def add_device(request):
557 # kwargs = {}
558 # if request.method == 'POST':
559 # form = DeviceForm(request.POST)
560 # if form.is_valid():
561 # form.save()
562 # return redirect('devices')
563 # else:
564 # form = DeviceForm()
565 # kwargs['form'] = form
566 # kwargs['button'] = 'Create'
567 # kwargs['suptitle'] = 'New'
568 # return render_to_response("device.html", kwargs, context_instance=RequestContext(request))
569
@@ -1,6 +1,6
1 from django.conf.urls import url
1 from django.conf.urls import url
2
2
3 urlpatterns = (
3 urlpatterns = (
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_rc_conf'),
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_rc_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.edit_dev_conf', name='url_edit_rc_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.dev_conf_edit', name='url_edit_rc_conf'),
6 )
6 )
@@ -1,6 +1,6
1 from django.conf.urls import url
1 from django.conf.urls import url
2
2
3 urlpatterns = (
3 urlpatterns = (
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_usrp_conf'),
4 url(r'^(?P<id_conf>-?\d+)/$', 'apps.main.views.dev_conf', name='url_usrp_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.edit_dev_conf', name='url_edit_usrp_conf'),
5 url(r'^(?P<id_conf>-?\d+)/edit/$', 'apps.main.views.dev_conf_edit', name='url_edit_usrp_conf'),
6 )
6 )
General Comments 0
You need to be logged in to leave comments. Login now