##// END OF EJS Templates
- Implementando la lectura del archivo ABS.
jsalyrosas -
r151:152
parent child
Show More
@@ -1,275 +1,281
1 from django.shortcuts import render_to_response, redirect
1 from django.shortcuts import render_to_response, redirect
2 from abscontrol.models import Profile, Pattern, AntennaDown, AntennaUp
2 from abscontrol.models import Profile, Pattern, AntennaDown, AntennaUp
3 from util.readABSFile import readABSFile
3
4
4 txtAntenna = "[[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
5 txtAntenna = "[[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
5 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
6 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
6 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
7 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
7 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
8 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
8 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
9 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
9 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
10 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
10 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
11 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
11 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]]"
12 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]]"
12
13
13 txtTxUp = "[[1,1,1,1,1,1,1,1]," \
14 txtTxUp = "[[1,1,1,1,1,1,1,1]," \
14 "[1,1,1,1,1,1,1,1]," \
15 "[1,1,1,1,1,1,1,1]," \
15 "[1,1,1,1,1,1,1,1]," \
16 "[1,1,1,1,1,1,1,1]," \
16 "[1,1,1,1,1,1,1,1]," \
17 "[1,1,1,1,1,1,1,1]," \
17 "[1,1,1,1,1,1,1,1]," \
18 "[1,1,1,1,1,1,1,1]," \
18 "[1,1,1,1,1,1,1,1]," \
19 "[1,1,1,1,1,1,1,1]," \
19 "[1,1,1,1,1,1,1,1]," \
20 "[1,1,1,1,1,1,1,1]," \
20 "[1,1,1,1,1,1,1,1]]"
21 "[1,1,1,1,1,1,1,1]]"
21
22
22 txtTxDown = "[[1,1,1,1,0,0,0,0]," \
23 txtTxDown = "[[1,1,1,1,0,0,0,0]," \
23 "[1,1,1,1,0,0,0,0]," \
24 "[1,1,1,1,0,0,0,0]," \
24 "[1,1,1,1,0,0,0,0]," \
25 "[1,1,1,1,0,0,0,0]," \
25 "[1,1,1,1,0,0,0,0]," \
26 "[1,1,1,1,0,0,0,0]," \
26 "[0,0,0,0,1,1,1,1]," \
27 "[0,0,0,0,1,1,1,1]," \
27 "[0,0,0,0,1,1,1,1]," \
28 "[0,0,0,0,1,1,1,1]," \
28 "[0,0,0,0,1,1,1,1]," \
29 "[0,0,0,0,1,1,1,1]," \
29 "[0,0,0,0,1,1,1,1]]"
30 "[0,0,0,0,1,1,1,1]]"
30
31
31 txtRxUp = "[[0,0,0,0,1,1,1,1]," \
32 txtRxUp = "[[0,0,0,0,1,1,1,1]," \
32 "[0,0,0,0,1,1,1,1]," \
33 "[0,0,0,0,1,1,1,1]," \
33 "[0,0,0,0,1,1,1,1]," \
34 "[0,0,0,0,1,1,1,1]," \
34 "[0,0,0,0,1,1,1,1]," \
35 "[0,0,0,0,1,1,1,1]," \
35 "[1,1,1,1,1,1,1,1]," \
36 "[1,1,1,1,1,1,1,1]," \
36 "[1,1,1,1,1,1,1,1]," \
37 "[1,1,1,1,1,1,1,1]," \
37 "[1,1,1,1,1,1,1,1]," \
38 "[1,1,1,1,1,1,1,1]," \
38 "[1,1,1,1,1,1,1,1]]"
39 "[1,1,1,1,1,1,1,1]]"
39
40
40 txtRxDown = "[[1,1,1,1,1,1,1,1]," \
41 txtRxDown = "[[1,1,1,1,1,1,1,1]," \
41 "[1,1,1,1,1,1,1,1]," \
42 "[1,1,1,1,1,1,1,1]," \
42 "[1,1,1,1,1,1,1,1]," \
43 "[1,1,1,1,1,1,1,1]," \
43 "[1,1,1,1,1,1,1,1]," \
44 "[1,1,1,1,1,1,1,1]," \
44 "[1,1,1,1,1,1,1,1]," \
45 "[1,1,1,1,1,1,1,1]," \
45 "[1,1,1,1,1,1,1,1]," \
46 "[1,1,1,1,1,1,1,1]," \
46 "[1,1,1,1,1,1,1,1]," \
47 "[1,1,1,1,1,1,1,1]," \
47 "[1,1,1,1,1,1,1,1]]"
48 "[1,1,1,1,1,1,1,1]]"
48
49
49 txtUes = "[0.533333,0.00000,1.06667,0.00000]"
50 txtUes = "[0.533333,0.00000,1.06667,0.00000]"
50
51
51 def index(request):
52 def index(request):
52 #latest_poll_list = profileAntenna.objects.all().order_by('-pub_date')[:5]
53 #latest_poll_list = profileAntenna.objects.all().order_by('-pub_date')[:5]
53 profile_list = Profile.objects.all()
54 profile_list = Profile.objects.all()
54 return render_to_response('abscontrol/index.html', {'profile_list': profile_list})
55 return render_to_response('abscontrol/index.html', {'profile_list': profile_list})
55
56
56 def new(request):
57 def new(request):
57 profile_list = Profile.objects.all()
58 profile_list = Profile.objects.all()
58
59
59 return render_to_response('abscontrol/new.html', {'profile_list': profile_list,
60 return render_to_response('abscontrol/new.html', {'profile_list': profile_list,
60 'txtAntenna' : txtAntenna,
61 'txtAntenna' : txtAntenna,
61 'txtUes' : txtUes, 'txtTxUp' : txtTxUp,
62 'txtUes' : txtUes, 'txtTxUp' : txtTxUp,
62 'txtTxDown' : txtTxDown, 'txtRxUp' : txtRxUp,
63 'txtTxDown' : txtTxDown, 'txtRxUp' : txtRxUp,
63 'txtRxDown' : txtRxDown,
64 'txtRxDown' : txtRxDown,
64 })
65 })
65
66
66 def save(request):
67 def save(request):
67
68
68 txtProfile = request.POST["txtProfile"]
69 txtProfile = request.POST["txtProfile"]
69
70
70 txtAntennaUp = request.POST["txtAntennaUp"]
71 txtAntennaUp = request.POST["txtAntennaUp"]
71 txtTxUp = request.POST["txtTxUp"]
72 txtTxUp = request.POST["txtTxUp"]
72 txtRxUp = request.POST["txtRxUp"]
73 txtRxUp = request.POST["txtRxUp"]
73 txtUesUp = request.POST["txtUesUp"]
74 txtUesUp = request.POST["txtUesUp"]
74
75
75 txtAntennaDown = request.POST["txtAntennaDown"]
76 txtAntennaDown = request.POST["txtAntennaDown"]
76 txtTxDown = request.POST["txtTxDown"]
77 txtTxDown = request.POST["txtTxDown"]
77 txtRxDown = request.POST["txtRxDown"]
78 txtRxDown = request.POST["txtRxDown"]
78 txtUesDown = request.POST["txtUesDown"]
79 txtUesDown = request.POST["txtUesDown"]
79
80
80 newprofile = Profile(name=txtProfile)
81 newprofile = Profile(name=txtProfile)
81 newprofile.save()
82 newprofile.save()
82
83
83 newpattern = newprofile.pattern_set.create(value=1)
84 newpattern = newprofile.pattern_set.create(value=1)
84 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp)
85 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp)
85 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown)
86 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown)
86
87
87 newurl = '/abscontrol/view/%d' % newprofile.id
88 newurl = '/abscontrol/view/%d' % newprofile.id
88
89
89 return redirect(newurl)
90 return redirect(newurl)
90
91
91 def view(request, profile_id):
92 def view(request, profile_id):
92 nextPattern = 0
93 nextPattern = 0
93
94
94 if request.method == 'GET' and 'pattern' in request.GET:
95 if request.method == 'GET' and 'pattern' in request.GET:
95 pattern_value = request.GET["pattern"]
96 pattern_value = request.GET["pattern"]
96 else:
97 else:
97 pattern_value = 1
98 pattern_value = 1
98
99
99 profile_list = Profile.objects.all()
100 profile_list = Profile.objects.all()
100 objProfile = Profile.objects.get(pk=profile_id)
101 objProfile = Profile.objects.get(pk=profile_id)
101
102
102 lsPatterns = objProfile.pattern_set.all()
103 lsPatterns = objProfile.pattern_set.all()
103 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
104 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
104 objAntennaUp = patternChoosen.antennaup_set.get()
105 objAntennaUp = patternChoosen.antennaup_set.get()
105 objAntennaDown = patternChoosen.antennadown_set.get()
106 objAntennaDown = patternChoosen.antennadown_set.get()
106
107
107 if len(lsPatterns) > 1:
108 if len(lsPatterns) > 1:
108 if pattern_value == 1:
109 if pattern_value == 1:
109 nextValuePattern = pattern_value + 1
110 nextValuePattern = pattern_value + 1
110 nextPattern = objProfile.pattern_set.get(value=nextValuePattern)
111 nextPattern = objProfile.pattern_set.get(value=nextValuePattern)
111
112
112
113
113 return render_to_response('abscontrol/view.html', {'objProfile': objProfile, 'profile_list': profile_list,
114 return render_to_response('abscontrol/view.html', {'objProfile': objProfile, 'profile_list': profile_list,
114 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
115 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
115 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
116 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
116 'nextPattern' : nextPattern,
117 'nextPattern' : nextPattern,
117 })
118 })
118
119
119 def edit(request, profile_id):
120 def edit(request, profile_id):
120 if request.method == 'GET' and 'pattern' in request.GET:
121 if request.method == 'GET' and 'pattern' in request.GET:
121 pattern_value = request.GET["pattern"]
122 pattern_value = request.GET["pattern"]
122 else:
123 else:
123 pattern_value = 1
124 pattern_value = 1
124
125
125 profile_list = Profile.objects.all()
126 profile_list = Profile.objects.all()
126 objProfile = Profile.objects.get(pk=profile_id)
127 objProfile = Profile.objects.get(pk=profile_id)
127
128
128 lsPatterns = objProfile.pattern_set.all()
129 lsPatterns = objProfile.pattern_set.all()
129 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
130 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
130 objAntennaUp = patternChoosen.antennaup_set.get()
131 objAntennaUp = patternChoosen.antennaup_set.get()
131 objAntennaDown = patternChoosen.antennadown_set.get()
132 objAntennaDown = patternChoosen.antennadown_set.get()
132
133
133 return render_to_response('abscontrol/edit.html', {'objProfile': objProfile, 'profile_list': profile_list,
134 return render_to_response('abscontrol/edit.html', {'objProfile': objProfile, 'profile_list': profile_list,
134 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
135 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
135 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
136 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
136 })
137 })
137
138
138 def addPattern(request, profile_id):
139 def addPattern(request, profile_id):
139 profile_list = Profile.objects.all()
140 profile_list = Profile.objects.all()
140 objProfile = Profile.objects.get(pk=profile_id)
141 objProfile = Profile.objects.get(pk=profile_id)
141
142
142 return render_to_response('abscontrol/addPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
143 return render_to_response('abscontrol/addPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
143 'txtAntenna' : txtAntenna, 'txtUes' : txtUes,
144 'txtAntenna' : txtAntenna, 'txtUes' : txtUes,
144 'txtTxUp' : txtTxUp, 'txtTxDown' : txtTxDown,
145 'txtTxUp' : txtTxUp, 'txtTxDown' : txtTxDown,
145 'txtRxUp' : txtRxUp, 'txtRxDown' : txtRxDown,
146 'txtRxUp' : txtRxUp, 'txtRxDown' : txtRxDown,
146 })
147 })
147
148
148 def editPattern(request, profile_id, pattern_id):
149 def editPattern(request, profile_id, pattern_id):
149 profile_list = Profile.objects.all()
150 profile_list = Profile.objects.all()
150 objProfile = Profile.objects.get(pk=profile_id)
151 objProfile = Profile.objects.get(pk=profile_id)
151 lsPatterns = objProfile.pattern_set.all()
152 lsPatterns = objProfile.pattern_set.all()
152 patternChoosen = Pattern.objects.get(pk=pattern_id)
153 patternChoosen = Pattern.objects.get(pk=pattern_id)
153 objAntennaUp = patternChoosen.antennaup_set.get()
154 objAntennaUp = patternChoosen.antennaup_set.get()
154 objAntennaDown = patternChoosen.antennadown_set.get()
155 objAntennaDown = patternChoosen.antennadown_set.get()
155
156
156 return render_to_response('abscontrol/editPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
157 return render_to_response('abscontrol/editPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
157 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
158 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
158 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
159 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
159 })
160 })
160
161
161 def savePattern(request, profile_id):
162 def savePattern(request, profile_id):
162 pattern_id = 0
163 pattern_id = 0
163 method = "save"
164 method = "save"
164
165
165 if 'pattern_id' in request.POST:
166 if 'pattern_id' in request.POST:
166 pattern_id = request.POST["pattern_id"]
167 pattern_id = request.POST["pattern_id"]
167 method = "update"
168 method = "update"
168
169
169 maxValuePattern = 0
170 maxValuePattern = 0
170 txtAntennaUp = request.POST["txtAntennaUp"]
171 txtAntennaUp = request.POST["txtAntennaUp"]
171 txtTxUp = request.POST["txtTxUp"]
172 txtTxUp = request.POST["txtTxUp"]
172 txtRxUp = request.POST["txtRxUp"]
173 txtRxUp = request.POST["txtRxUp"]
173 txtUesUp = request.POST["txtUesUp"]
174 txtUesUp = request.POST["txtUesUp"]
174
175
175 txtAntennaDown = request.POST["txtAntennaDown"]
176 txtAntennaDown = request.POST["txtAntennaDown"]
176 txtTxDown = request.POST["txtTxDown"]
177 txtTxDown = request.POST["txtTxDown"]
177 txtRxDown = request.POST["txtRxDown"]
178 txtRxDown = request.POST["txtRxDown"]
178 txtUesDown = request.POST["txtUesDown"]
179 txtUesDown = request.POST["txtUesDown"]
179
180
180 if method == "save":
181 if method == "save":
181 objProfile = Profile.objects.get(pk=profile_id)
182 objProfile = Profile.objects.get(pk=profile_id)
182 lsPatterns = objProfile.pattern_set.all()
183 lsPatterns = objProfile.pattern_set.all()
183 for element in lsPatterns:
184 for element in lsPatterns:
184 if element.value > maxValuePattern:
185 if element.value > maxValuePattern:
185 maxPattern = element.value
186 maxPattern = element.value
186
187
187 if maxPattern < 10 :
188 if maxPattern < 10 :
188 newValuePattern = maxPattern + 1
189 newValuePattern = maxPattern + 1
189 newpattern = objProfile.pattern_set.create(value=newValuePattern)
190 newpattern = objProfile.pattern_set.create(value=newValuePattern)
190 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp)
191 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp)
191 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown)
192 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown)
192
193
193 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), newpattern.id)
194 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), newpattern.id)
194 else:
195 else:
195 newurl = '/abscontrol/edit/%d' % (int(profile_id))
196 newurl = '/abscontrol/edit/%d' % (int(profile_id))
196 else:
197 else:
197 txtAntennaUpId = request.POST["txtAntennaUpId"]
198 txtAntennaUpId = request.POST["txtAntennaUpId"]
198 objAntennaUp = AntennaUp.objects.get(pk=txtAntennaUpId)
199 objAntennaUp = AntennaUp.objects.get(pk=txtAntennaUpId)
199 objAntennaUp.value = txtAntennaUp
200 objAntennaUp.value = txtAntennaUp
200 objAntennaUp.tx = txtTxUp
201 objAntennaUp.tx = txtTxUp
201 objAntennaUp.rx = txtRxUp
202 objAntennaUp.rx = txtRxUp
202 objAntennaUp.ues = txtUesUp
203 objAntennaUp.ues = txtUesUp
203 objAntennaUp.save()
204 objAntennaUp.save()
204
205
205 txtAntennaDownId = request.POST["txtAntennaDownId"]
206 txtAntennaDownId = request.POST["txtAntennaDownId"]
206 objAntennaDown = AntennaDown.objects.get(pk=txtAntennaDownId)
207 objAntennaDown = AntennaDown.objects.get(pk=txtAntennaDownId)
207 objAntennaDown.value = txtAntennaDown
208 objAntennaDown.value = txtAntennaDown
208 objAntennaDown.tx = txtTxDown
209 objAntennaDown.tx = txtTxDown
209 objAntennaDown.rx = txtRxDown
210 objAntennaDown.rx = txtRxDown
210 objAntennaDown.ues = txtUesDown
211 objAntennaDown.ues = txtUesDown
211 objAntennaDown.save()
212 objAntennaDown.save()
212
213
213 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), int(pattern_id))
214 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), int(pattern_id))
214
215
215 return redirect(newurl)
216 return redirect(newurl)
216
217
217 def viewPattern(request, profile_id, pattern_id):
218 def viewPattern(request, profile_id, pattern_id):
218
219
219 profile_list = Profile.objects.all()
220 profile_list = Profile.objects.all()
220 objProfile = Profile.objects.get(pk=profile_id)
221 objProfile = Profile.objects.get(pk=profile_id)
221
222
222 patternChoosen = Pattern.objects.get(pk=pattern_id)
223 patternChoosen = Pattern.objects.get(pk=pattern_id)
223
224
224 objAntennaUp = patternChoosen.antennaup_set.get()
225 objAntennaUp = patternChoosen.antennaup_set.get()
225 objAntennaDown = patternChoosen.antennadown_set.get()
226 objAntennaDown = patternChoosen.antennadown_set.get()
226
227
227 lsPatterns = objProfile.pattern_set.all()
228 lsPatterns = objProfile.pattern_set.all()
228
229
229 return render_to_response('abscontrol/viewPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
230 return render_to_response('abscontrol/viewPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
230 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
231 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
231 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
232 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
232 })
233 })
233
234
234 def deletePattern(request, profile_id, pattern_id):
235 def deletePattern(request, profile_id, pattern_id):
235 newurl = '/abscontrol/edit/%d' % int(profile_id)
236 newurl = '/abscontrol/edit/%d' % int(profile_id)
236
237
237 return redirect(newurl)
238 return redirect(newurl)
238
239
239 def importProfile(request):
240 def importProfile(request):
240
241
241 return render_to_response('abscontrol/import.html', { })
242 return render_to_response('abscontrol/import.html', { })
242
243
243 def saveImport(request):
244 def saveImport(request):
244 if request.method == 'POST':
245 if request.method == 'POST':
245 txtFilename = request.FILES['txtFile']
246 txtFilename = request.FILES['txtFile']
246 if txtFilename:
247 if txtFilename:
247 destination = open('/tmp/'+txtFilename.name, 'wb+')
248 destination = open('/tmp/'+txtFilename.name, 'wb+')
248 for chunk in txtFilename.chunks():
249 for chunk in txtFilename.chunks():
249 destination.write(chunk)
250 destination.write(chunk)
250 destination.close()
251 destination.close()
252 filename = '/tmp/'+txtFilename.name
253 readFile = readABSFile(filename)
254 expName, num_patterns, patterns = readFile.getMetadata()
255
256 '''
251 f = open('/tmp/'+txtFilename.name, 'r')
257 f = open('/tmp/'+txtFilename.name, 'r')
252 newContent = f.readlines()
258 newContent = f.readlines()
253 f.close()
259 f.close()
254 content = ""
260 content = ""
255 for i,line in enumerate(newContent):
261 for i,line in enumerate(newContent):
256 if i == 0:
262 if i == 0:
257 newLine = line.replace("'","")
263 newLine = line.replace("'","")
258 pos = newLine.find("=")
264 pos = newLine.find("=")
259 expName = newLine[pos+1:].strip()
265 expName = newLine[pos+1:].strip()
260 elif i == 2:
266 elif i == 2:
261 pos = line.find("=")
267 pos = line.find("=")
262 num_patterns = line[pos+1:].strip()
268 num_patterns = line[pos+1:].strip()
263 else:
269 else:
264 content += line
270 content += line
265
271 '''
266 else:
272 else:
267 txtFilename = "Error"
273 txtFilename = "Error"
268 content = "Error"
274 #content = "Error"
269 expName = ""
275 expName = ""
270 num_patterns = 0
276 num_patterns = 0
271
277
272 return render_to_response('abscontrol/upload.html', {'txtFilename': txtFilename, 'content' : content,
278 return render_to_response('abscontrol/upload.html', {'txtFilename': txtFilename, 'patterns' : patterns,
273 'expName' : expName, 'num_patterns' : num_patterns,
279 'expName' : expName, 'num_patterns' : num_patterns,
274 })
280 })
275
281
@@ -1,21 +1,36
1 {% extends "abscontrol/index.html" %}
1 {% extends "abscontrol/index.html" %}
2 {% block title %}ABS CONTROL:::::IMPORT PROFILE{% endblock %}
2 {% block title %}ABS CONTROL:::::IMPORT PROFILE{% endblock %}
3
3
4 {% block content %}
4 {% block content %}
5 <div id="content">
5 <div id="content">
6 <div id="divPattern">
6 <div id="divPattern">
7 <div class="divUes">
7 <div class="divUes">
8 <label for="lblFile">File:</label>
8 <label for="lblFile">File:</label>
9 <label for="lblFilename">{{ txtFilename }}</label>
9 <label for="lblFilename">{{ txtFilename }}</label>
10 </div>
10 </div>
11 <div class="divUes">
11 <div class="divUes">
12 <label for="lblExperiment">Experiment:</label>
12 <label for="lblExperiment">Experiment:</label>
13 <p>{{ expName }}</p>
13 <p>{{ expName }}</p>
14 <label for="lblNumber">Number of patterns:</label>
14 <label for="lblNumber">Number of patterns:</label>
15 <p>{{ num_patterns }}</p>
15 <p>{{ num_patterns }}</p>
16 <label for="lblContent">Content:</label>
17 <p>{{ content }}</p>
18 </div>
16 </div>
17 {% if patterns %}
18 <div>
19 {% for element in patterns %}
20 <div>
21 <label for="lblNumber">Pattern: {{ element.number }}</label>
22 </div>
23 <div>
24 <label for="lblAntennaUp">Antenna Up:</label>
25 <p>{{ element.up }}</p>
26 </div>
27 <div>
28 <label for="lblAntennaDown">Antenna Down:</label>
29 <p>{{ element.down }}</p>
30 </div>
31 {% endfor %}
32 </div>
33 {% endif %}
19 </div>
34 </div>
20 </div>
35 </div>
21 {% endblock %}
36 {% endblock %}
@@ -1,46 +1,50
1 '''
1 '''
2 Created on May 2, 2013
2 Created on May 2, 2013
3
3
4 @author: Jose Antonio Sal y Rosas Celi
4 @author: Jose Antonio Sal y Rosas Celi
5 @contact: jose.salyrosas@jro.igp.gob.pe
5 @contact: jose.salyrosas@jro.igp.gob.pe
6 '''
6 '''
7
7
8 class readABSFile(object):
8 class readABSFile(object):
9
9
10 __scriptName = "readABSFile.py"
10 __scriptName = "readABSFile.py"
11
11
12 def __init__(self, filename):
12 def __init__(self, filename):
13 self.fileName = filename
13 self.fileName = filename
14 self.content = ""
14 self.content = ""
15 self.exp_name = ""
15 self.exp_name = ""
16 self.number_patterns = 0
16 self.number_patterns = 0
17 self.patterns = {}
17 self.patterns = {}
18
18
19 def readFile(self, path):
19 def readFile(self):
20 f = open(path, 'r')
20 f = open(self.fileName, 'r')
21 self.content = f.readlines()
21 self.content = f.readlines()
22 f.close()
22 f.close()
23
23
24 def getMetadata(self):
24 def getMetadata(self):
25 self.readFile()
26
25 newLine = self.content[0].replace("'","")
27 newLine = self.content[0].replace("'","")
26 pos = newLine.find("=")
28 pos = newLine.find("=")
27 self.exp_name = newLine[pos+1:].strip()
29 self.exp_name = newLine[pos+1:].strip()
28
30
29 pos = self.content[2].find("=")
31 pos = self.content[2].find("=")
30 self.number_patterns = int(self.content[2][pos+1:].strip())
32 self.number_patterns = int(self.content[2][pos+1:].strip())
31
33
32 self.patterns = self.getPatterns(self.content[3:])
34 self.patterns = self.getPatterns(self.content[3:])
35
36 return self.exp_name, self.number_patterns, self.patterns
33
37
34 def getPatterns(self, content):
38 def getPatterns(self, content):
35 lsPattern = []
39 lsPattern = []
36 index = 8
40 index = 8
37
41
38 for i in range(0, self.number_patterns):
42 for i in range(0, self.number_patterns):
39 first = i+index
43 first = i+index
40 second = first+index
44 second = first+index
41 antennaUp = content[i:first]
45 antennaUp = content[i:first]
42 antennaDown = content[first+1:second]
46 antennaDown = content[first+1:second]
43 dicPattern = {"number" : content[i], "up" : antennaUp, "down" : antennaDown}
47 dicPattern = {"number" : content[i], "up" : antennaUp, "down" : antennaDown}
44 lsPattern.append(dicPattern)
48 lsPattern.append(dicPattern)
45
49
46 return lsPattern No newline at end of file
50 return lsPattern
General Comments 0
You need to be logged in to leave comments. Login now