@@ -0,0 +1,16 | |||||
|
1 | {% extends "abscontrol/index.html" %} | |||
|
2 | {% block title %}ABS CONTROL:::::IMPORT PROFILE{% endblock %} | |||
|
3 | ||||
|
4 | {% block content %} | |||
|
5 | <div id="content"> | |||
|
6 | <form action="/abscontrol/saveImport/" method="post" enctype="multipart/form-data"> | |||
|
7 | <div id="divPattern"> | |||
|
8 | <div class="divUes"> | |||
|
9 | <label for="lblFile">Choose File:</label> | |||
|
10 | <input type="file" name="txtFile" /> | |||
|
11 | <input type="submit" name="btnSend" value="Upload" /> | |||
|
12 | </div> | |||
|
13 | </div> | |||
|
14 | </form> | |||
|
15 | </div> | |||
|
16 | {% endblock %} |
@@ -0,0 +1,17 | |||||
|
1 | {% extends "abscontrol/index.html" %} | |||
|
2 | {% block title %}ABS CONTROL:::::IMPORT PROFILE{% endblock %} | |||
|
3 | ||||
|
4 | {% block content %} | |||
|
5 | <div id="content"> | |||
|
6 | <div id="divPattern"> | |||
|
7 | <div class="divUes"> | |||
|
8 | <label for="lblFile">File:</label> | |||
|
9 | <label for="lblFilename">{{ txtFilename }}</label> | |||
|
10 | </div> | |||
|
11 | <div class="divUes"> | |||
|
12 | <label for="lblFile">content:</label> | |||
|
13 | <p>{{ content }}</p> | |||
|
14 | </div> | |||
|
15 | </div> | |||
|
16 | </div> | |||
|
17 | {% endblock %} |
1 | NO CONTENT: new file 10644 |
|
NO CONTENT: new file 10644 |
@@ -0,0 +1,20 | |||||
|
1 | ''' | |||
|
2 | Created on May 2, 2013 | |||
|
3 | ||||
|
4 | @author: Jose Antonio Sal y Rosas Celi | |||
|
5 | @contact: jose.salyrosas@jro.igp.gob.pe | |||
|
6 | ''' | |||
|
7 | ||||
|
8 | class readABSFile(object): | |||
|
9 | ||||
|
10 | __scriptName = "readABSFile.py" | |||
|
11 | ||||
|
12 | def __init__(self, filename): | |||
|
13 | self.fileName = filename | |||
|
14 | ||||
|
15 | def readFile(self): | |||
|
16 | destination = open(self.fileName, 'wb+') | |||
|
17 | ||||
|
18 | destination.close() | |||
|
19 | ||||
|
20 | No newline at end of file |
@@ -1,33 +1,42 | |||||
1 | from abscontrol.models import Profile, Pattern, AntennaUp, AntennaDown |
|
1 | from abscontrol.models import Profile, Pattern, AntennaUp, AntennaDown | |
2 | from django.contrib import admin |
|
2 | from django.contrib import admin | |
3 |
|
3 | |||
4 | class AntennaUpInline(admin.StackedInline): |
|
4 | class AntennaUpInline(admin.StackedInline): | |
5 | model = AntennaUp |
|
5 | model = AntennaUp | |
6 |
|
6 | |||
7 | class AntennaDownInline(admin.StackedInline): |
|
7 | class AntennaDownInline(admin.StackedInline): | |
8 | model = AntennaDown |
|
8 | model = AntennaDown | |
9 |
|
9 | |||
10 | class PatternAdmin(admin.ModelAdmin): |
|
10 | class PatternAdmin(admin.ModelAdmin): | |
11 | fieldsets = [ |
|
11 | fieldsets = [ | |
12 | (None, {'fields': ['value']}), |
|
12 | (None, {'fields': ['value']}), | |
13 | ('Date information', {'fields': ['date_create', 'date_modified'], 'classes': ['collapse']}), |
|
13 | ('Date information', {'fields': ['date_create', 'date_modified'], 'classes': ['collapse']}), | |
14 | ] |
|
14 | ] | |
15 | inlines = [AntennaUpInline] |
|
15 | inlines = [AntennaUpInline] | |
16 | inlines = [AntennaDownInline] |
|
16 | inlines = [AntennaDownInline] | |
17 |
|
17 | |||
18 | class PatternInline(admin.StackedInline): |
|
18 | class PatternInline(admin.StackedInline): | |
19 | model = Pattern |
|
19 | model = Pattern | |
|
20 | readonly_fields = ['date_create', 'date_modified', 'hits'] | |||
|
21 | ||||
|
22 | fieldsets = [ | |||
|
23 | (None, {'fields': ['value']}), | |||
|
24 | ('Date information', {'fields': [('date_create', 'date_modified')], 'classes': ['collapse']}), | |||
|
25 | ('State', {'fields': ['hits', 'state'], 'classes': ['collapse', 'wide', 'extrapretty']}), | |||
|
26 | ] | |||
20 | extra = 0 |
|
27 | extra = 0 | |
21 |
|
28 | |||
22 | class ProfileAdmin(admin.ModelAdmin): |
|
29 | class ProfileAdmin(admin.ModelAdmin): | |
|
30 | readonly_fields = ['date_create', 'date_modified','hits'] | |||
23 | fieldsets = [ |
|
31 | fieldsets = [ | |
24 | (None, {'fields': ['name']}), |
|
32 | (None, {'fields': ['name']}), | |
25 | ('Date information', {'fields': ['date_create', 'date_modified'], 'classes': ['collapse']}), |
|
33 | ('Date information', {'fields': [('date_create', 'date_modified')], 'classes': ['collapse']}), | |
|
34 | ('State', {'fields': ['hits', 'state'], 'classes': ['collapse']}), | |||
26 | ] |
|
35 | ] | |
27 | inlines = [PatternInline] |
|
36 | inlines = [PatternInline] | |
28 |
|
37 | |||
29 |
|
38 | |||
30 | admin.site.register(Profile, ProfileAdmin) |
|
39 | admin.site.register(Profile, ProfileAdmin) | |
31 | admin.site.register(Pattern, PatternAdmin) |
|
40 | #admin.site.register(Pattern, PatternAdmin) | |
32 | admin.site.register(AntennaUp) |
|
41 | #admin.site.register(AntennaUp) | |
33 | admin.site.register(AntennaDown) No newline at end of file |
|
42 | #admin.site.register(AntennaDown) No newline at end of file |
@@ -1,17 +1,19 | |||||
1 | from django.conf.urls import patterns, url |
|
1 | from django.conf.urls import patterns, url | |
2 |
|
2 | |||
3 | urlpatterns = patterns('abscontrol.views', |
|
3 | urlpatterns = patterns('abscontrol.views', | |
4 | url(r'^$', 'index'), |
|
4 | url(r'^$', 'index'), | |
5 | url(r'^new/$', 'new'), |
|
5 | url(r'^new/$', 'new'), | |
6 | url(r'^save/$', 'save'), |
|
6 | url(r'^save/$', 'save'), | |
7 | url(r'^view/(?P<profile_id>\d+)/$', 'view'), |
|
7 | url(r'^view/(?P<profile_id>\d+)/$', 'view'), | |
8 | url(r'^edit/(?P<profile_id>\d+)/$', 'edit'), |
|
8 | url(r'^edit/(?P<profile_id>\d+)/$', 'edit'), | |
9 | #url(r'^(?P<profile_id>\d+)/$', 'detail'), |
|
9 | #url(r'^(?P<profile_id>\d+)/$', 'detail'), | |
10 | url(r'^(?P<profile_id>\d+)/add/$', 'addPattern'), |
|
10 | url(r'^(?P<profile_id>\d+)/add/$', 'addPattern'), | |
11 | url(r'^(?P<profile_id>\d+)/save/$', 'savePattern'), |
|
11 | url(r'^(?P<profile_id>\d+)/save/$', 'savePattern'), | |
12 | url(r'^(?P<profile_id>\d+)/edit/(?P<pattern_id>\d+)/$', 'editPattern'), |
|
12 | url(r'^(?P<profile_id>\d+)/edit/(?P<pattern_id>\d+)/$', 'editPattern'), | |
13 | url(r'^(?P<profile_id>\d+)/view/(?P<pattern_id>\d+)/$', 'viewPattern'), |
|
13 | url(r'^(?P<profile_id>\d+)/view/(?P<pattern_id>\d+)/$', 'viewPattern'), | |
14 | url(r'^(?P<profile_id>\d+)/delete/(?P<pattern_id>\d+)/$', 'deletePattern'), |
|
14 | url(r'^(?P<profile_id>\d+)/delete/(?P<pattern_id>\d+)/$', 'deletePattern'), | |
15 | #url(r'^(?P<poll_id>\d+)/results/$', 'results'), |
|
15 | #url(r'^(?P<poll_id>\d+)/results/$', 'results'), | |
16 | #url(r'^(?P<poll_id>\d+)/vote/$', 'vote'), |
|
16 | #url(r'^(?P<poll_id>\d+)/vote/$', 'vote'), | |
|
17 | url(r'^import/$', 'importProfile'), | |||
|
18 | url(r'^saveImport/$', 'saveImport'), | |||
17 | ) No newline at end of file |
|
19 | ) |
@@ -1,237 +1,261 | |||||
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 |
|
3 | |||
4 | txtAntenna = "[[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \ |
|
4 | 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]," \ |
|
5 | "[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]," \ |
|
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 | "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \ |
|
8 | "[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]," \ |
|
9 | "[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]," \ |
|
10 | "[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]]" |
|
11 | "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]]" | |
12 |
|
12 | |||
13 | txtTxUp = "[[1,1,1,1,1,1,1,1]," \ |
|
13 | txtTxUp = "[[1,1,1,1,1,1,1,1]," \ | |
14 | "[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 |
|
21 | |||
22 | txtTxDown = "[[1,1,1,1,0,0,0,0]," \ |
|
22 | txtTxDown = "[[1,1,1,1,0,0,0,0]," \ | |
23 | "[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 | "[0,0,0,0,1,1,1,1]," \ |
|
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 |
|
30 | |||
31 | txtRxUp = "[[0,0,0,0,1,1,1,1]," \ |
|
31 | txtRxUp = "[[0,0,0,0,1,1,1,1]," \ | |
32 | "[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 | "[1,1,1,1,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 |
|
39 | |||
40 | txtRxDown = "[[1,1,1,1,1,1,1,1]," \ |
|
40 | txtRxDown = "[[1,1,1,1,1,1,1,1]," \ | |
41 | "[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 |
|
48 | |||
49 | txtUes = "[0.533333,0.00000,1.06667,0.00000]" |
|
49 | txtUes = "[0.533333,0.00000,1.06667,0.00000]" | |
50 |
|
50 | |||
51 | def index(request): |
|
51 | def index(request): | |
52 | #latest_poll_list = profileAntenna.objects.all().order_by('-pub_date')[:5] |
|
52 | #latest_poll_list = profileAntenna.objects.all().order_by('-pub_date')[:5] | |
53 | profile_list = Profile.objects.all() |
|
53 | profile_list = Profile.objects.all() | |
54 | return render_to_response('abscontrol/index.html', {'profile_list': profile_list}) |
|
54 | return render_to_response('abscontrol/index.html', {'profile_list': profile_list}) | |
55 |
|
55 | |||
56 | def new(request): |
|
56 | def new(request): | |
57 | profile_list = Profile.objects.all() |
|
57 | profile_list = Profile.objects.all() | |
58 |
|
58 | |||
59 | return render_to_response('abscontrol/new.html', {'profile_list': profile_list, |
|
59 | return render_to_response('abscontrol/new.html', {'profile_list': profile_list, | |
60 | 'txtAntenna' : txtAntenna, |
|
60 | 'txtAntenna' : txtAntenna, | |
61 | 'txtUes' : txtUes, 'txtTxUp' : txtTxUp, |
|
61 | 'txtUes' : txtUes, 'txtTxUp' : txtTxUp, | |
62 | 'txtTxDown' : txtTxDown, 'txtRxUp' : txtRxUp, |
|
62 | 'txtTxDown' : txtTxDown, 'txtRxUp' : txtRxUp, | |
63 | 'txtRxDown' : txtRxDown, |
|
63 | 'txtRxDown' : txtRxDown, | |
64 | }) |
|
64 | }) | |
65 |
|
65 | |||
66 | def save(request): |
|
66 | def save(request): | |
67 |
|
67 | |||
68 | txtProfile = request.POST["txtProfile"] |
|
68 | txtProfile = request.POST["txtProfile"] | |
69 |
|
69 | |||
70 | txtAntennaUp = request.POST["txtAntennaUp"] |
|
70 | txtAntennaUp = request.POST["txtAntennaUp"] | |
71 | txtTxUp = request.POST["txtTxUp"] |
|
71 | txtTxUp = request.POST["txtTxUp"] | |
72 | txtRxUp = request.POST["txtRxUp"] |
|
72 | txtRxUp = request.POST["txtRxUp"] | |
73 | txtUesUp = request.POST["txtUesUp"] |
|
73 | txtUesUp = request.POST["txtUesUp"] | |
74 |
|
74 | |||
75 | txtAntennaDown = request.POST["txtAntennaDown"] |
|
75 | txtAntennaDown = request.POST["txtAntennaDown"] | |
76 | txtTxDown = request.POST["txtTxDown"] |
|
76 | txtTxDown = request.POST["txtTxDown"] | |
77 | txtRxDown = request.POST["txtRxDown"] |
|
77 | txtRxDown = request.POST["txtRxDown"] | |
78 | txtUesDown = request.POST["txtUesDown"] |
|
78 | txtUesDown = request.POST["txtUesDown"] | |
79 |
|
79 | |||
80 | newprofile = Profile(name=txtProfile) |
|
80 | newprofile = Profile(name=txtProfile) | |
81 | newprofile.save() |
|
81 | newprofile.save() | |
82 |
|
82 | |||
83 | newpattern = newprofile.pattern_set.create(value=1) |
|
83 | newpattern = newprofile.pattern_set.create(value=1) | |
84 | newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp) |
|
84 | 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) |
|
85 | newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown) | |
86 |
|
86 | |||
87 | newurl = '/abscontrol/view/%d' % newprofile.id |
|
87 | newurl = '/abscontrol/view/%d' % newprofile.id | |
88 |
|
88 | |||
89 | return redirect(newurl) |
|
89 | return redirect(newurl) | |
90 |
|
90 | |||
91 | def view(request, profile_id): |
|
91 | def view(request, profile_id): | |
92 | nextPattern = 0 |
|
92 | nextPattern = 0 | |
93 |
|
93 | |||
94 | if request.method == 'GET' and 'pattern' in request.GET: |
|
94 | if request.method == 'GET' and 'pattern' in request.GET: | |
95 | pattern_value = request.GET["pattern"] |
|
95 | pattern_value = request.GET["pattern"] | |
96 | else: |
|
96 | else: | |
97 | pattern_value = 1 |
|
97 | pattern_value = 1 | |
98 |
|
98 | |||
99 | profile_list = Profile.objects.all() |
|
99 | profile_list = Profile.objects.all() | |
100 | objProfile = Profile.objects.get(pk=profile_id) |
|
100 | objProfile = Profile.objects.get(pk=profile_id) | |
101 |
|
101 | |||
102 | lsPatterns = objProfile.pattern_set.all() |
|
102 | lsPatterns = objProfile.pattern_set.all() | |
103 | patternChoosen = objProfile.pattern_set.get(value=pattern_value) |
|
103 | patternChoosen = objProfile.pattern_set.get(value=pattern_value) | |
104 | objAntennaUp = patternChoosen.antennaup_set.get() |
|
104 | objAntennaUp = patternChoosen.antennaup_set.get() | |
105 | objAntennaDown = patternChoosen.antennadown_set.get() |
|
105 | objAntennaDown = patternChoosen.antennadown_set.get() | |
106 |
|
106 | |||
107 | if len(lsPatterns) > 1: |
|
107 | if len(lsPatterns) > 1: | |
108 | if pattern_value == 1: |
|
108 | if pattern_value == 1: | |
109 | nextValuePattern = pattern_value + 1 |
|
109 | nextValuePattern = pattern_value + 1 | |
110 | nextPattern = objProfile.pattern_set.get(value=nextValuePattern) |
|
110 | nextPattern = objProfile.pattern_set.get(value=nextValuePattern) | |
111 |
|
111 | |||
112 |
|
112 | |||
113 | return render_to_response('abscontrol/view.html', {'objProfile': objProfile, 'profile_list': profile_list, |
|
113 | return render_to_response('abscontrol/view.html', {'objProfile': objProfile, 'profile_list': profile_list, | |
114 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, |
|
114 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, | |
115 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, |
|
115 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, | |
116 | 'nextPattern' : nextPattern, |
|
116 | 'nextPattern' : nextPattern, | |
117 | }) |
|
117 | }) | |
118 |
|
118 | |||
119 | def edit(request, profile_id): |
|
119 | def edit(request, profile_id): | |
120 | if request.method == 'GET' and 'pattern' in request.GET: |
|
120 | if request.method == 'GET' and 'pattern' in request.GET: | |
121 | pattern_value = request.GET["pattern"] |
|
121 | pattern_value = request.GET["pattern"] | |
122 | else: |
|
122 | else: | |
123 | pattern_value = 1 |
|
123 | pattern_value = 1 | |
124 |
|
124 | |||
125 | profile_list = Profile.objects.all() |
|
125 | profile_list = Profile.objects.all() | |
126 | objProfile = Profile.objects.get(pk=profile_id) |
|
126 | objProfile = Profile.objects.get(pk=profile_id) | |
127 |
|
127 | |||
128 | lsPatterns = objProfile.pattern_set.all() |
|
128 | lsPatterns = objProfile.pattern_set.all() | |
129 | patternChoosen = objProfile.pattern_set.get(value=pattern_value) |
|
129 | patternChoosen = objProfile.pattern_set.get(value=pattern_value) | |
130 | objAntennaUp = patternChoosen.antennaup_set.get() |
|
130 | objAntennaUp = patternChoosen.antennaup_set.get() | |
131 | objAntennaDown = patternChoosen.antennadown_set.get() |
|
131 | objAntennaDown = patternChoosen.antennadown_set.get() | |
132 |
|
132 | |||
133 | return render_to_response('abscontrol/edit.html', {'objProfile': objProfile, 'profile_list': profile_list, |
|
133 | return render_to_response('abscontrol/edit.html', {'objProfile': objProfile, 'profile_list': profile_list, | |
134 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, |
|
134 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, | |
135 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, |
|
135 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, | |
136 | }) |
|
136 | }) | |
137 |
|
137 | |||
138 | def addPattern(request, profile_id): |
|
138 | def addPattern(request, profile_id): | |
139 | profile_list = Profile.objects.all() |
|
139 | profile_list = Profile.objects.all() | |
140 | objProfile = Profile.objects.get(pk=profile_id) |
|
140 | objProfile = Profile.objects.get(pk=profile_id) | |
141 |
|
141 | |||
142 | return render_to_response('abscontrol/addPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, |
|
142 | return render_to_response('abscontrol/addPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, | |
143 | 'txtAntenna' : txtAntenna, 'txtUes' : txtUes, |
|
143 | 'txtAntenna' : txtAntenna, 'txtUes' : txtUes, | |
144 | 'txtTxUp' : txtTxUp, 'txtTxDown' : txtTxDown, |
|
144 | 'txtTxUp' : txtTxUp, 'txtTxDown' : txtTxDown, | |
145 | 'txtRxUp' : txtRxUp, 'txtRxDown' : txtRxDown, |
|
145 | 'txtRxUp' : txtRxUp, 'txtRxDown' : txtRxDown, | |
146 | }) |
|
146 | }) | |
147 |
|
147 | |||
148 | def editPattern(request, profile_id, pattern_id): |
|
148 | def editPattern(request, profile_id, pattern_id): | |
149 | profile_list = Profile.objects.all() |
|
149 | profile_list = Profile.objects.all() | |
150 | objProfile = Profile.objects.get(pk=profile_id) |
|
150 | objProfile = Profile.objects.get(pk=profile_id) | |
151 | lsPatterns = objProfile.pattern_set.all() |
|
151 | lsPatterns = objProfile.pattern_set.all() | |
152 | patternChoosen = Pattern.objects.get(pk=pattern_id) |
|
152 | patternChoosen = Pattern.objects.get(pk=pattern_id) | |
153 | objAntennaUp = patternChoosen.antennaup_set.get() |
|
153 | objAntennaUp = patternChoosen.antennaup_set.get() | |
154 | objAntennaDown = patternChoosen.antennadown_set.get() |
|
154 | objAntennaDown = patternChoosen.antennadown_set.get() | |
155 |
|
155 | |||
156 | return render_to_response('abscontrol/editPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, |
|
156 | return render_to_response('abscontrol/editPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, | |
157 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, |
|
157 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, | |
158 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, |
|
158 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, | |
159 | }) |
|
159 | }) | |
160 |
|
160 | |||
161 | def savePattern(request, profile_id): |
|
161 | def savePattern(request, profile_id): | |
162 | pattern_id = 0 |
|
162 | pattern_id = 0 | |
163 | method = "save" |
|
163 | method = "save" | |
164 |
|
164 | |||
165 | if 'pattern_id' in request.POST: |
|
165 | if 'pattern_id' in request.POST: | |
166 | pattern_id = request.POST["pattern_id"] |
|
166 | pattern_id = request.POST["pattern_id"] | |
167 | method = "update" |
|
167 | method = "update" | |
168 |
|
168 | |||
169 | maxValuePattern = 0 |
|
169 | maxValuePattern = 0 | |
170 | txtAntennaUp = request.POST["txtAntennaUp"] |
|
170 | txtAntennaUp = request.POST["txtAntennaUp"] | |
171 | txtTxUp = request.POST["txtTxUp"] |
|
171 | txtTxUp = request.POST["txtTxUp"] | |
172 | txtRxUp = request.POST["txtRxUp"] |
|
172 | txtRxUp = request.POST["txtRxUp"] | |
173 | txtUesUp = request.POST["txtUesUp"] |
|
173 | txtUesUp = request.POST["txtUesUp"] | |
174 |
|
174 | |||
175 | txtAntennaDown = request.POST["txtAntennaDown"] |
|
175 | txtAntennaDown = request.POST["txtAntennaDown"] | |
176 | txtTxDown = request.POST["txtTxDown"] |
|
176 | txtTxDown = request.POST["txtTxDown"] | |
177 | txtRxDown = request.POST["txtRxDown"] |
|
177 | txtRxDown = request.POST["txtRxDown"] | |
178 | txtUesDown = request.POST["txtUesDown"] |
|
178 | txtUesDown = request.POST["txtUesDown"] | |
179 |
|
179 | |||
180 | if method == "save": |
|
180 | if method == "save": | |
181 | objProfile = Profile.objects.get(pk=profile_id) |
|
181 | objProfile = Profile.objects.get(pk=profile_id) | |
182 | lsPatterns = objProfile.pattern_set.all() |
|
182 | lsPatterns = objProfile.pattern_set.all() | |
183 | for element in lsPatterns: |
|
183 | for element in lsPatterns: | |
184 | if element.value > maxValuePattern: |
|
184 | if element.value > maxValuePattern: | |
185 | maxPattern = element.value |
|
185 | maxPattern = element.value | |
186 |
|
186 | |||
187 | if maxPattern < 10 : |
|
187 | if maxPattern < 10 : | |
188 | newValuePattern = maxPattern + 1 |
|
188 | newValuePattern = maxPattern + 1 | |
189 | newpattern = objProfile.pattern_set.create(value=newValuePattern) |
|
189 | newpattern = objProfile.pattern_set.create(value=newValuePattern) | |
190 | newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp) |
|
190 | 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) |
|
191 | newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown) | |
192 |
|
192 | |||
193 | newurl = '/abscontrol/%d/view/%d' % (int(profile_id), newpattern.id) |
|
193 | newurl = '/abscontrol/%d/view/%d' % (int(profile_id), newpattern.id) | |
194 | else: |
|
194 | else: | |
195 | newurl = '/abscontrol/edit/%d' % (int(profile_id)) |
|
195 | newurl = '/abscontrol/edit/%d' % (int(profile_id)) | |
196 | else: |
|
196 | else: | |
197 | txtAntennaUpId = request.POST["txtAntennaUpId"] |
|
197 | txtAntennaUpId = request.POST["txtAntennaUpId"] | |
198 | objAntennaUp = AntennaUp.objects.get(pk=txtAntennaUpId) |
|
198 | objAntennaUp = AntennaUp.objects.get(pk=txtAntennaUpId) | |
199 | objAntennaUp.value = txtAntennaUp |
|
199 | objAntennaUp.value = txtAntennaUp | |
200 | objAntennaUp.tx = txtTxUp |
|
200 | objAntennaUp.tx = txtTxUp | |
201 | objAntennaUp.rx = txtRxUp |
|
201 | objAntennaUp.rx = txtRxUp | |
202 | objAntennaUp.ues = txtUesUp |
|
202 | objAntennaUp.ues = txtUesUp | |
203 | objAntennaUp.save() |
|
203 | objAntennaUp.save() | |
204 |
|
204 | |||
205 | txtAntennaDownId = request.POST["txtAntennaDownId"] |
|
205 | txtAntennaDownId = request.POST["txtAntennaDownId"] | |
206 | objAntennaDown = AntennaDown.objects.get(pk=txtAntennaDownId) |
|
206 | objAntennaDown = AntennaDown.objects.get(pk=txtAntennaDownId) | |
207 | objAntennaDown.value = txtAntennaDown |
|
207 | objAntennaDown.value = txtAntennaDown | |
208 | objAntennaDown.tx = txtTxDown |
|
208 | objAntennaDown.tx = txtTxDown | |
209 | objAntennaDown.rx = txtRxDown |
|
209 | objAntennaDown.rx = txtRxDown | |
210 | objAntennaDown.ues = txtUesDown |
|
210 | objAntennaDown.ues = txtUesDown | |
211 | objAntennaDown.save() |
|
211 | objAntennaDown.save() | |
212 |
|
212 | |||
213 | newurl = '/abscontrol/%d/view/%d' % (int(profile_id), int(pattern_id)) |
|
213 | newurl = '/abscontrol/%d/view/%d' % (int(profile_id), int(pattern_id)) | |
214 |
|
214 | |||
215 | return redirect(newurl) |
|
215 | return redirect(newurl) | |
216 |
|
216 | |||
217 | def viewPattern(request, profile_id, pattern_id): |
|
217 | def viewPattern(request, profile_id, pattern_id): | |
218 |
|
218 | |||
219 | profile_list = Profile.objects.all() |
|
219 | profile_list = Profile.objects.all() | |
220 | objProfile = Profile.objects.get(pk=profile_id) |
|
220 | objProfile = Profile.objects.get(pk=profile_id) | |
221 |
|
221 | |||
222 | patternChoosen = Pattern.objects.get(pk=pattern_id) |
|
222 | patternChoosen = Pattern.objects.get(pk=pattern_id) | |
223 |
|
223 | |||
224 | objAntennaUp = patternChoosen.antennaup_set.get() |
|
224 | objAntennaUp = patternChoosen.antennaup_set.get() | |
225 | objAntennaDown = patternChoosen.antennadown_set.get() |
|
225 | objAntennaDown = patternChoosen.antennadown_set.get() | |
226 |
|
226 | |||
227 | lsPatterns = objProfile.pattern_set.all() |
|
227 | lsPatterns = objProfile.pattern_set.all() | |
228 |
|
228 | |||
229 | return render_to_response('abscontrol/viewPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, |
|
229 | return render_to_response('abscontrol/viewPattern.html', {'objProfile': objProfile, 'profile_list': profile_list, | |
230 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, |
|
230 | 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns, | |
231 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, |
|
231 | 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown, | |
232 | }) |
|
232 | }) | |
233 |
|
233 | |||
234 | def deletePattern(request, profile_id, pattern_id): |
|
234 | def deletePattern(request, profile_id, pattern_id): | |
235 | newurl = '/abscontrol/edit/%d' % int(profile_id) |
|
235 | newurl = '/abscontrol/edit/%d' % int(profile_id) | |
236 |
|
236 | |||
237 | return redirect(newurl) |
|
237 | return redirect(newurl) | |
|
238 | ||||
|
239 | def importProfile(request): | |||
|
240 | ||||
|
241 | return render_to_response('abscontrol/import.html', { }) | |||
|
242 | ||||
|
243 | def saveImport(request): | |||
|
244 | if request.method == 'POST': | |||
|
245 | txtFilename = request.FILES['txtFile'] | |||
|
246 | if txtFilename: | |||
|
247 | destination = open('/tmp/'+txtFilename.name, 'wb+') | |||
|
248 | for chunk in txtFilename.chunks(): | |||
|
249 | destination.write(chunk) | |||
|
250 | destination.close() | |||
|
251 | f = open('/tmp/'+txtFilename.name, 'r') | |||
|
252 | content = f.read() | |||
|
253 | #for line in f: | |||
|
254 | # lsLine = line.readline() | |||
|
255 | f.close() | |||
|
256 | #content = lsLine | |||
|
257 | else: | |||
|
258 | txtFilename = "Error" | |||
|
259 | content = "Error" | |||
|
260 | return render_to_response('abscontrol/upload.html', {'txtFilename': txtFilename, 'content' : content}) | |||
|
261 |
@@ -1,60 +1,60 | |||||
1 | {% extends "base.html" %} |
|
1 | {% extends "base.html" %} | |
2 |
|
2 | |||
3 | {% block title %}ABS CONTROL:::::{% endblock %} |
|
3 | {% block title %}ABS CONTROL:::::{% endblock %} | |
4 | {% block scripting %} |
|
4 | {% block scripting %} | |
5 | {% if profile_list %} |
|
5 | {% if profile_list %} | |
6 | <script src="/static/static/js/profiles.js"></script> |
|
6 | <script src="/static/static/js/profiles.js"></script> | |
7 | {% endif %} |
|
7 | {% endif %} | |
8 | {% endblock %} |
|
8 | {% endblock %} | |
9 | {% block content %} |
|
9 | {% block content %} | |
10 | <div id="content"> |
|
10 | <div id="content"> | |
11 | {% block leftcolumn %} |
|
11 | {% block leftcolumn %} | |
12 | <div id="leftcolumn"> |
|
12 | <div id="leftcolumn"> | |
13 | <div id="lsProfiles"> |
|
13 | <div id="lsProfiles"> | |
14 | <div id="infoProfiles"> |
|
14 | <div id="infoProfiles"> | |
15 | <label for="lblProfile" class="lblInfo">Profiles:</label><br /> |
|
15 | <label for="lblProfile" class="lblInfo">Profiles:</label><br /> | |
16 | {% if profile_list %} |
|
16 | {% if profile_list %} | |
17 | <select name="lsProfiles" id="listProfiles"> |
|
17 | <select name="lsProfiles" id="listProfiles"> | |
18 | <option value="-1">Choose ...</option> |
|
18 | <option value="-1">Choose ...</option> | |
19 | {% for entry in profile_list %} |
|
19 | {% for entry in profile_list %} | |
20 | {% if objProfile %} |
|
20 | {% if objProfile %} | |
21 | {% if objProfile.id == entry.id %} |
|
21 | {% if objProfile.id == entry.id %} | |
22 | <option value="{{ entry.id }}" selected>{{ entry.name }}</option> |
|
22 | <option value="{{ entry.id }}" selected>{{ entry.name }}</option> | |
23 | {% else %} |
|
23 | {% else %} | |
24 | <option value="{{ entry.id }}">{{ entry.name }}</option> |
|
24 | <option value="{{ entry.id }}">{{ entry.name }}</option> | |
25 | {% endif %} |
|
25 | {% endif %} | |
26 | {% else %} |
|
26 | {% else %} | |
27 | <option value="{{ entry.id }}">{{ entry.name }}</option> |
|
27 | <option value="{{ entry.id }}">{{ entry.name }}</option> | |
28 | {% endif %} |
|
28 | {% endif %} | |
29 | {% endfor %} |
|
29 | {% endfor %} | |
30 | </select> |
|
30 | </select> | |
31 | {% else %} |
|
31 | {% else %} | |
32 | <label for="lblMessage" class="lblInfo">No profiles.</label> |
|
32 | <label for="lblMessage" class="lblInfo">No profiles.</label> | |
33 | {% endif %} |
|
33 | {% endif %} | |
34 | </div> |
|
34 | </div> | |
35 | </div> |
|
35 | </div> | |
36 | {% block mnu_profile %} |
|
36 | {% block mnu_profile %} | |
37 | <nav class="MnuVertical" id="mnuProfiles"> |
|
37 | <nav class="MnuVertical" id="mnuProfiles"> | |
38 | <ul> |
|
38 | <ul> | |
39 | <li><a href="/abscontrol/new">New</a></li> |
|
39 | <li><a href="/abscontrol/new">New</a></li> | |
40 | {% if objProfile %} |
|
40 | {% if objProfile %} | |
41 | <li><a href="/abscontrol/edit/{{ objProfile.id }}">Edit</a></li> |
|
41 | <li><a href="/abscontrol/edit/{{ objProfile.id }}">Edit</a></li> | |
42 | <li><a href="#">Save</a></li> |
|
42 | <li><a href="#">Save</a></li> | |
43 | {% endif %} |
|
43 | {% endif %} | |
44 | <li><a href="#">Save as</a></li> |
|
44 | <li><a href="#">Save as</a></li> | |
45 |
<li><a href=" |
|
45 | <li><a href="/abscontrol/import">Import</a></li> | |
46 | <li><a href="#">Export</a></li> |
|
46 | <li><a href="#">Export</a></li> | |
47 | <li><a href="#">Apply</a></li> |
|
47 | <li><a href="#">Apply</a></li> | |
48 | </ul> |
|
48 | </ul> | |
49 | </nav> |
|
49 | </nav> | |
50 | {% endblock %} |
|
50 | {% endblock %} | |
51 | </div> |
|
51 | </div> | |
52 | {% endblock %} |
|
52 | {% endblock %} | |
53 | {% block maincolumn %} |
|
53 | {% block maincolumn %} | |
54 | <div id="maincolumn"> |
|
54 | <div id="maincolumn"> | |
55 |
|
55 | |||
56 | </div> |
|
56 | </div> | |
57 | {% endblock %} |
|
57 | {% endblock %} | |
58 | <div class="cleardivs"></div> |
|
58 | <div class="cleardivs"></div> | |
59 | </div> |
|
59 | </div> | |
60 | {% endblock %} No newline at end of file |
|
60 | {% endblock %} |
General Comments 0
You need to be logged in to leave comments.
Login now