##// END OF EJS Templates
- Estandarizada la funcion de importar archivos ABS para utilizar el mismo formato de manejo de perfiles.
jsalyrosas -
r183:184
parent child
Show More
@@ -0,0 +1,23
1 {% extends "abscontrol/index.html" %}
2 {% block title %}ABS CONTROL:::::IMPORT PROFILE{% endblock %}
3 {% block scripting %}
4 <script src="/static/static/js/profiles.js"></script>
5 {% endblock %}
6 {% block mnu_profile %}
7 <nav class="MnuHorizontal" id="mnuProfiles">
8 <ul>
9 <li><a href="/abscontrol/new">New</a></li>
10 <li><a href="/abscontrol/import">Import</a></li>
11 </ul>
12 </nav>
13 {% endblock %}
14 {% block maincolumn %}
15 <div id="maincolumn">
16 <div id="divPattern">
17 <div class="divUes">
18 <label for="lblError">Error:</label>
19 <p>{{ txtError }}</p>
20 </div>
21 </div>
22 </div>
23 {% endblock %}
@@ -17,8 +17,8
17 #url(r'^(?P<poll_id>\d+)/results/$', 'results'),
17 #url(r'^(?P<poll_id>\d+)/results/$', 'results'),
18 #url(r'^(?P<poll_id>\d+)/vote/$', 'vote'),
18 #url(r'^(?P<poll_id>\d+)/vote/$', 'vote'),
19 url(r'^import/$', 'importProfile'),
19 url(r'^import/$', 'importProfile'),
20 url(r'^showImport/$', 'showImport'),
20 url(r'^upload/$', 'upload'),
21 url(r'^saveImport/$', 'saveImport'),
21 #url(r'^saveImport/$', 'saveImport'),
22 url(r'^(?P<profile_id>\d+)/(?P<pattern_id>\d+)/overjro/(?P<antenna_id>\d+)/$', 'overJRO'),
22 url(r'^(?P<profile_id>\d+)/(?P<pattern_id>\d+)/overjro/(?P<antenna_id>\d+)/$', 'overJRO'),
23 url(r'^export/(?P<profile_id>\d+)/$', 'export'),
23 url(r'^export/(?P<profile_id>\d+)/$', 'export'),
24 url(r'^send/(?P<profile_id>\d+)/$', 'send'),
24 url(r'^send/(?P<profile_id>\d+)/$', 'send'),
@@ -293,7 +293,7
293 profile_list = Profile.objects.filter(state=1)
293 profile_list = Profile.objects.filter(state=1)
294 return render_to_response('abscontrol/import.html', {'profile_list': profile_list,})
294 return render_to_response('abscontrol/import.html', {'profile_list': profile_list,})
295
295
296 def showImport(request):
296 def upload(request):
297 profile_list = Profile.objects.filter(state=1)
297 profile_list = Profile.objects.filter(state=1)
298 if request.method == 'POST':
298 if request.method == 'POST':
299 txtFilename = request.FILES['txtFile']
299 txtFilename = request.FILES['txtFile']
@@ -305,44 +305,29
305 filename = '/tmp/'+txtFilename.name
305 filename = '/tmp/'+txtFilename.name
306 readFile = readABSFile(filename)
306 readFile = readABSFile(filename)
307 expName, num_patterns, patterns = readFile.getMetadata()
307 expName, num_patterns, patterns = readFile.getMetadata()
308 else:
308
309 txtFilename = "Error"
309 if expName != "" and num_patterns > 0:
310 #content = "Error"
310 newprofile = Profile(name=expName)
311 expName = ""
311 newprofile.save()
312 num_patterns = 0
312 newprofile.state = 1
313
314 for element in patterns:
315 newpattern = newprofile.pattern_set.create(value=element["number"])
316 newpattern.antennaup_set.create(value=element["up"])
317 newpattern.antennadown_set.create(value=element["down"])
318
319 newprofile.save()
320
321 newurl = '/abscontrol/edit/%d' % int(newprofile.id)
322 return redirect(newurl)
323 else:
324 txtError = "Experiment's name not found or the number of patterns is 0."
325 return render_to_response('abscontrol/error.html', {'profile_list': profile_list,
326 'txtError' : txtError, })
327 else:
328 txtError = "No file."
313
329
314 return render_to_response('abscontrol/upload-edit.html', {'txtFilename': txtFilename, 'patterns' : patterns,
330 return render_to_response('abscontrol/error.html', {'profile_list': profile_list, 'txtError' : txtError, })
315 'expName' : expName, 'num_patterns' : num_patterns,
316 'profile_list': profile_list,
317 })
318
319 def saveImport(request):
320 patterns = []
321
322 expName = request.POST["txtProfile"]
323 num_patterns = int(request.POST["txtNumPatterns"])
324
325 newprofile = Profile(name=expName)
326 newprofile.save()
327
328 for i in range(0,num_patterns):
329 number = request.POST["txtNumberPattern"+str(i+1)]
330 txtAntennaUp = request.POST["txtAntennaUp"+str(i+1)]
331 txtAntennaDown = request.POST["txtAntennaDown"+str(i+1)]
332 dicPattern = {"number" : number, "up" : txtAntennaUp, "down" : txtAntennaDown}
333 patterns.append(dicPattern)
334 newpattern = newprofile.pattern_set.create(value=number)
335 newpattern.antennaup_set.create(value=txtAntennaUp)
336 newpattern.antennadown_set.create(value=txtAntennaDown)
337
338 newurl = '/abscontrol/view/%d' % newprofile.id
339
340 return redirect(newurl)
341 '''
342 return render_to_response('abscontrol/upload-view.html', {'expName' : expName, 'patterns' : patterns,
343 'num_patterns' : num_patterns,
344 })
345 '''
346
331
347 def overJRO(request, profile_id, pattern_id, antenna_id):
332 def overJRO(request, profile_id, pattern_id, antenna_id):
348 if request.GET["beam"] == "Up":
333 if request.GET["beam"] == "Up":
@@ -11,7 +11,7
11 {% endblock %}
11 {% endblock %}
12 {% block maincolumn %}
12 {% block maincolumn %}
13 <div id="maincolumn">
13 <div id="maincolumn">
14 <form name="frmImport" id="frmImport" action="/abscontrol/showImport/" method="post" enctype="multipart/form-data">
14 <form name="frmImport" id="frmImport" action="/abscontrol/upload/" method="post" enctype="multipart/form-data">
15 <div id="divPattern">
15 <div id="divPattern">
16 <div class="divUes">
16 <div class="divUes">
17 <label for="lblFile">Choose File:</label>
17 <label for="lblFile">Choose File:</label>
1 NO CONTENT: file was removed
NO CONTENT: file was removed
1 NO CONTENT: file was removed
NO CONTENT: file was removed
General Comments 0
You need to be logged in to leave comments. Login now