##// END OF EJS Templates
- Agregadas las vistas y funciones para administrar los patrones de cada perfil.
jsalyrosas -
r134:135
parent child
Show More
@@ -0,0 +1,25
1 /**
2 * @author Jose Antonio Sal y Rosas Celi
3 * @contact: jose.salyrosas@jro.igp.gob.pe, arturo.jasyrc@gmail.com
4 */
5
6 $(document).on('ready',function(){
7 $('#listProfiles').change(function() {
8 if($(this).val() != -1){
9 location.href="/abscontrol/view/" + $(this).val();
10 }
11 });
12
13 $('#lnkSave').click(function() {
14 $('#frmPattern').submit();
15 });
16
17 $('#lnkCancel').click(function() {
18 if ($("#pattern_id").val() == 0){
19 location.href="/abscontrol/edit/" + $("#profile_id").val();
20 }else{
21 location.href="/abscontrol/" + $("#profile_id").val() + "/view/" + $("#pattern_id").val()
22 }
23
24 });
25 }); No newline at end of file
@@ -0,0 +1,12
1 /**
2 * @author Jose Antonio Sal y Rosas Celi
3 * @contact: jose.salyrosas@jro.igp.gob.pe, arturo.jasyrc@gmail.com
4 */
5
6 $(document).on('ready',function(){
7 $('#listProfiles').change(function() {
8 if($(this).val() != -1){
9 location.href="/abscontrol/view/" + $(this).val();
10 }
11 });
12 }); No newline at end of file
@@ -0,0 +1,65
1 {% extends "abscontrol/edit.html" %}
2
3 {% block mnuPattern %}
4 <div class="divMenu" id="divMnuPattern">
5 <nav class="MnuHorizontal">
6 <ul class="mnu" id="mnuPattern">
7 <li><a href="#" id="lnkSave">Save</a></li>
8 <li><a href="#" id="lnkCancel">Cancel</a></li>
9 </ul>
10 </nav>
11 </div>
12 <div class="cleardivs"></div>
13 {% endblock %}
14 {% block pattern %}
15 <div id="infoPattern">
16 <form action="/abscontrol/{{ objProfile.id }}/save/" id="frmPattern" method="post">
17 <div id="antennaUp">
18 <fieldset class="flsAntenna">
19 <legend>UP</legend>
20 <div class="divAntenna">
21 <label for="lblAntenna">Antenna</label>
22 <textarea name="txtAntennaUp" class="txtAntenna" cols="38" rows="8">{{ txtAntenna }}</textarea>
23 </div>
24 <div class="divTx">
25 <label for="lblTx">Tx</label>
26 <textarea name="txtTxUp" class="txtTR" cols="20" rows="8">{{ txtTxUp }}</textarea>
27 </div>
28 <div class="divTx">
29 <label for="lblRx">Rx</label>
30 <textarea name="txtRxUp" class="txtTR" cols="20" rows="8">{{ txtRxUp }}</textarea>
31 </div>
32 <div class="cleardivs"></div>
33 <div class="divUes">
34 <label for="lblUes">Ues:</label>
35 <input type="text" name="txtUesUp" value="{{ txtUes }}" />
36 </div>
37 </fieldset>
38 </div>
39 <div id="antennaDown">
40 <fieldset class="flsAntenna">
41 <legend>DOWN</legend>
42 <div class="divAntenna">
43 <label for="lblAntenna">Antenna</label>
44 <textarea name="txtAntennaDown" class="txtAntenna" cols="38" rows="8">{{ txtAntenna }}</textarea>
45 </div>
46 <div class="divTx">
47 <label for="lblTx">Tx</label>
48 <textarea name="txtTxDown" class="txtTR" cols="20" rows="8">{{ txtTxDown }}</textarea>
49 </div>
50 <div class="divTx">
51 <label for="lblRx">Rx</label>
52 <textarea name="txtRxDown" class="txtTR" cols="20" rows="8">{{ txtRxDown }}</textarea>
53 </div>
54 <div class="cleardivs"></div>
55 <div class="divUes">
56 <label for="lblUes">Ues:</label>
57 <input type="text" name="txtUesDown" value="{{ txtUes }}" />
58 </div>
59 </fieldset>
60 </div>
61 <input type="hidden" name="pattern_id" id="pattern_id" value="0" />
62 <input type="hidden" name="profile_id" id="profile_id" value="{{ objProfile.id }}" />
63 </form>
64 </div>
65 {% endblock %}
@@ -0,0 +1,93
1 {% extends "abscontrol/index.html" %}
2 {% block title %}ABS CONTROL:::PROFILE:::{{ objProfile.name }}{% endblock %}
3 {% block scripting %}
4 <script src="/static/static/js/patterns.js"></script>
5 {% endblock %}
6 {% block maincolumn%}
7 <div id="maincolumn">
8 <div id="divProfile">
9 <label for="lblName">Profile:</label>
10 <label for="lblProfile">{{ objProfile.name }}</label>
11 </div>
12 <div id="divPattern">
13 {% block mnuPattern %}
14 <div class="divMenu" id="divMnuPattern">
15 <nav class="MnuHorizontal">
16 <ul class="mnu" id="mnuPattern">
17 <li><a href="/abscontrol/{{ objProfile.id }}/add">Add</a></li>
18 <li><a href="/abscontrol/{{ objProfile.id }}/edit/{{ patternChoosen.id }}">Edit</a></li>
19 {% if lsPatterns|length > 1 %}
20 <li><a href="/abscontrol/{{ objProfile.id }}/delete/{{ patternChoosen.id }}">Delete</a></li>
21 {% endif %}
22 <li><a href="#">Apply</a></li>
23 </ul>
24 </nav>
25 </div>
26 <div class="cleardivs"></div>
27 {% endblock %}
28 {% block pattern %}
29 <div id="infoPattern">
30 {% if patternChoosen %}
31 <div id="navPatterns">
32 <nav class="MnuHorizontal">
33 <ul class="mnu" id="navPatternList">
34 {% for element in lsPatterns %}
35 {% if patternChoosen.id == element.id %}
36 <li><a href="/abscontrol/{{ objProfile.id }}/view/{{ element.id }}" class="lnkPatternSelected">{{ element.value }}</a></li>
37 {% else %}
38 <li><a href="/abscontrol/{{ objProfile.id }}/view/{{ element.id }}" class="lnkPattern">{{ element.value }}</a></li>
39 {% endif %}
40 {% endfor %}
41 </ul>
42 </nav>
43 </div>
44 {% endif %}
45 <div id="antennaUp">
46 <fieldset class="flsAntenna">
47 <legend>UP</legend>
48 <div class="divAntenna">
49 <label for="lblAntenna">Antenna</label>
50 <p>{{ antennaUp.value }}</p>
51 </div>
52 <div class="divTx">
53 <label for="lblTx">Tx</label>
54 <p>{{ antennaUp.tx }}</p>
55 </div>
56 <div class="divTx">
57 <label for="lblRx">Rx</label>
58 <p>{{ antennaUp.rx }}</p>
59 </div>
60 <div class="cleardivs"></div>
61 <div class="divUes">
62 <label for="lblUes">Ues:</label>
63 <label for="lblAntennaUpUes">{{ antennaUp.ues }}</label>
64 </div>
65 </fieldset>
66 </div>
67 <div id="antennaDown">
68 <fieldset class="flsAntenna">
69 <legend>DOWN</legend>
70 <div class="divAntenna">
71 <label for="lblAntenna">Antenna</label>
72 <p>{{ antennaDown.value }}</textarea>
73 </div>
74 <div class="divTx">
75 <label for="lblTx">Tx</label>
76 <p>{{ antennaDown.tx }}</p>
77 </div>
78 <div class="divTx">
79 <label for="lblRx">Rx</label>
80 <p>{{ antennaDown.rx }}</p>
81 </div>
82 <div class="cleardivs"></div>
83 <div class="divUes">
84 <label for="lblUes">Ues:</label>
85 <label for="lblAntennaDownUes">{{ antennaDown.ues }}</label>
86 </div>
87 </fieldset>
88 </div>
89 </div>
90 {% endblock %}
91 </div>
92 </div>
93 {% endblock %}
@@ -0,0 +1,69
1 {% extends "abscontrol/edit.html" %}
2
3 {% block mnuPattern %}
4 <div class="divMenu" id="divMnuPattern">
5 <nav class="MnuHorizontal">
6 <ul class="mnu" id="mnuPattern">
7 <li><a href="#" id="lnkSave">Save</a></li>
8 <li><a href="#" id="lnkCancel">Cancel</a></li>
9 </ul>
10 </nav>
11 </div>
12 <div class="cleardivs"></div>
13 {% endblock %}
14 {% block pattern %}
15 <div id="infoPattern">
16 {% if patternChoosen %}
17 <div id="navPatterns">
18 <label for="lblValue">Pattern:</label>
19 <label for="lblPatternValue">{{ patternChoosen.value }}</label>
20 </div>
21 {% endif %}
22 <div id="antennaUp">
23 <fieldset class="flsAntenna">
24 <legend>UP</legend>
25 <div class="divAntenna">
26 <label for="lblAntenna">Antenna</label>
27 <textarea name="txtAntennaUp" class="txtAntenna" cols="38" rows="8">{{ antennaUp.value }}</textarea>
28 </div>
29 <div class="divTx">
30 <label for="lblTx">Tx</label>
31 <textarea name="txtTxUp" class="txtTR" cols="20" rows="8">{{ antennaUp.tx }}</textarea>
32 </div>
33 <div class="divTx">
34 <label for="lblRx">Rx</label>
35 <textarea name="txtRxUp" class="txtTR" cols="20" rows="8">{{ antennaUp.rx }}</textarea>
36 </div>
37 <div class="cleardivs"></div>
38 <div class="divUes">
39 <label for="lblUes">Ues:</label>
40 <input type="text" name="txtUesUp" value="{{ antennaUp.ues }}" />
41 </div>
42 </fieldset>
43 </div>
44 <div id="antennaDown">
45 <fieldset class="flsAntenna">
46 <legend>DOWN</legend>
47 <div class="divAntenna">
48 <label for="lblAntenna">Antenna</label>
49 <textarea name="txtAntennaDown" class="txtAntenna" cols="38" rows="8">{{ antennaDown.value }}</textarea>
50 </div>
51 <div class="divTx">
52 <label for="lblTx">Tx</label>
53 <textarea name="txtTxDown" class="txtTR" cols="20" rows="8">{{ antennaDown.tx }}</textarea>
54 </div>
55 <div class="divTx">
56 <label for="lblRx">Rx</label>
57 <textarea name="txtRxDown" class="txtTR" cols="20" rows="8">{{ antennaDown.rx }}</textarea>
58 </div>
59 <div class="cleardivs"></div>
60 <div class="divUes">
61 <label for="lblUes">Ues:</label>
62 <input type="text" name="txtUesDown" value="{{ antennaDown.ues }}" />
63 </div>
64 </fieldset>
65 </div>
66 <input type="hidden" name="pattern_id" id="pattern_id" value="{{ patternChoosen.id }}" />
67 <input type="hidden" name="profile_id" id="profile_id" value="{{ objProfile.id }}" />
68 </div>
69 {% endblock %}
@@ -0,0 +1,80
1 {% extends "abscontrol/edit.html" %}
2
3 {% block mnuPattern %}
4 <div class="divMenu" id="divMnuPattern">
5 <nav class="MnuHorizontal">
6 <ul class="mnu" id="mnuPattern">
7 <li><a href="/abscontrol/{{ objProfile.id }}/edit/{{ patternChoosen.id }}">Edit</a></li>
8 {% if lsPatterns|length > 1 %}
9 <li><a href="/abscontrol/{{ objProfile.id }}/delete/{{ patternChoosen.id }}">Delete</a></li>
10 {% endif %}
11 <li><a href="#">Apply</a></li>
12 </ul>
13 </nav>
14 </div>
15 <div class="cleardivs"></div>
16 {% endblock %}
17 {% block pattern %}
18 <div id="infoPattern">
19 {% if patternChoosen %}
20 <div id="navPatterns">
21 <nav class="MnuHorizontal">
22 <ul class="mnu" id="navPatternList">
23 {% for element in lsPatterns %}
24 {% if patternChoosen.id == element.id %}
25 <li><a href="/abscontrol/{{ objProfile.id }}/view/{{ element.id }}" class="lnkPatternSelected">{{ element.value }}</a></li>
26 {% else %}
27 <li><a href="/abscontrol/{{ objProfile.id }}/view/{{ element.id }}" class="lnkPattern">{{ element.value }}</a></li>
28 {% endif %}
29 {% endfor %}
30 </ul>
31 </nav>
32 </div>
33 {% endif %}
34 <div id="antennaUp">
35 <fieldset class="flsAntenna">
36 <legend>UP</legend>
37 <div class="divAntenna">
38 <label for="lblAntenna">Antenna</label>
39 <p>{{ antennaUp.value }}</p>
40 </div>
41 <div class="divTx">
42 <label for="lblTx">Tx</label>
43 <p>{{ antennaUp.tx }}</p>
44 </div>
45 <div class="divTx">
46 <label for="lblRx">Rx</label>
47 <p>{{ antennaUp.rx }}</p>
48 </div>
49 <div class="cleardivs"></div>
50 <div class="divUes">
51 <label for="lblUes">Ues:</label>
52 <label for="lblAntennaUpUes">{{ antennaUp.ues }}</label>
53 </div>
54 </fieldset>
55 </div>
56 <div id="antennaDown">
57 <fieldset class="flsAntenna">
58 <legend>DOWN</legend>
59 <div class="divAntenna">
60 <label for="lblAntenna">Antenna</label>
61 <p>{{ antennaDown.value }}</p>
62 </div>
63 <div class="divTx">
64 <label for="lblTx">Tx</label>
65 <p>{{ antennaDown.tx }}</p>
66 </div>
67 <div class="divTx">
68 <label for="lblRx">Rx</label>
69 <p>{{ antennaDown.rx }}</p>
70 </div>
71 <div class="cleardivs"></div>
72 <div class="divUes">
73 <label for="lblUes">Ues:</label>
74 <label for="lblAntennaDownUes">{{ antennaDown.ues }}</label>
75 </div>
76 </fieldset>
77 </div>
78 <input type="hidden" name="profile_id" id="profile_id" value="{{ objProfile.id }}" />
79 </div>
80 {% endblock %}
@@ -5,7 +5,13
5 5 url(r'^new/$', 'new'),
6 6 url(r'^save/$', 'save'),
7 7 url(r'^view/(?P<profile_id>\d+)/$', 'view'),
8 url(r'^edit/(?P<profile_id>\d+)/$', 'edit'),
8 9 #url(r'^(?P<profile_id>\d+)/$', 'detail'),
10 url(r'^(?P<profile_id>\d+)/add/$', 'addPattern'),
11 url(r'^(?P<profile_id>\d+)/save/$', 'savePattern'),
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'),
14 url(r'^(?P<profile_id>\d+)/delete/(?P<pattern_id>\d+)/$', 'deletePattern'),
9 15 #url(r'^(?P<poll_id>\d+)/results/$', 'results'),
10 16 #url(r'^(?P<poll_id>\d+)/vote/$', 'vote'),
11 17 ) No newline at end of file
@@ -1,5 +1,52
1 1 from django.shortcuts import render_to_response, redirect
2 from abscontrol.models import Profile
2 from abscontrol.models import Profile, Pattern
3
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]," \
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]," \
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]," \
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]]"
12
13 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]," \
16 "[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]," \
19 "[1,1,1,1,1,1,1,1]," \
20 "[1,1,1,1,1,1,1,1]]"
21
22 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]," \
25 "[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]," \
28 "[0,0,0,0,1,1,1,1]," \
29 "[0,0,0,0,1,1,1,1]]"
30
31 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]," \
34 "[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]," \
37 "[1,1,1,1,1,1,1,1]," \
38 "[1,1,1,1,1,1,1,1]]"
39
40 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]," \
43 "[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]," \
46 "[1,1,1,1,1,1,1,1]," \
47 "[1,1,1,1,1,1,1,1]]"
48
49 txtUes = "[0.533333,0.00000,1.06667,0.00000]"
3 50
4 51 def index(request):
5 52 #latest_poll_list = profileAntenna.objects.all().order_by('-pub_date')[:5]
@@ -8,48 +55,6
8 55
9 56 def new(request):
10 57 profile_list = Profile.objects.all()
11 txtAntenna = "[[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
12 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
13 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
14 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
15 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
16 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]," \
17 "[1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0]," \
18 "[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]]"
19 txtTxUp = "[[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]," \
22 "[1,1,1,1,1,1,1,1]," \
23 "[1,1,1,1,1,1,1,1]," \
24 "[1,1,1,1,1,1,1,1]," \
25 "[1,1,1,1,1,1,1,1]," \
26 "[1,1,1,1,1,1,1,1]]"
27 txtTxDown = "[[1,1,1,1,0,0,0,0]," \
28 "[1,1,1,1,0,0,0,0]," \
29 "[1,1,1,1,0,0,0,0]," \
30 "[1,1,1,1,0,0,0,0]," \
31 "[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]," \
34 "[0,0,0,0,1,1,1,1]]"
35 txtRxUp = "[[0,0,0,0,1,1,1,1]," \
36 "[0,0,0,0,1,1,1,1]," \
37 "[0,0,0,0,1,1,1,1]," \
38 "[0,0,0,0,1,1,1,1]," \
39 "[1,1,1,1,1,1,1,1]," \
40 "[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]]"
43 txtRxDown = "[[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]," \
46 "[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]," \
49 "[1,1,1,1,1,1,1,1]," \
50 "[1,1,1,1,1,1,1,1]]"
51
52 txtUes = "[0.533333,0.00000,1.06667,0.00000]"
53 58
54 59 return render_to_response('abscontrol/new.html', {'profile_list': profile_list,
55 60 'txtAntenna' : txtAntenna,
@@ -84,6 +89,8
84 89 return redirect(newurl)
85 90
86 91 def view(request, profile_id):
92 nextPattern = 0
93
87 94 if request.method == 'GET' and 'pattern' in request.GET:
88 95 pattern_value = request.GET["pattern"]
89 96 else:
@@ -97,7 +104,108
97 104 objAntennaUp = patternChoosen.antennaup_set.get()
98 105 objAntennaDown = patternChoosen.antennadown_set.get()
99 106
107 if len(lsPatterns) > 1:
108 if pattern_value == 1:
109 nextValuePattern = pattern_value + 1
110 nextPattern = objProfile.pattern_set.get(value=nextValuePattern)
111
112
100 113 return render_to_response('abscontrol/view.html', {'objProfile': objProfile, 'profile_list': profile_list,
101 114 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
102 115 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
116 'nextPattern' : nextPattern,
103 117 })
118
119 def edit(request, profile_id):
120 if request.method == 'GET' and 'pattern' in request.GET:
121 pattern_value = request.GET["pattern"]
122 else:
123 pattern_value = 1
124
125 profile_list = Profile.objects.all()
126 objProfile = Profile.objects.get(pk=profile_id)
127
128 lsPatterns = objProfile.pattern_set.all()
129 patternChoosen = objProfile.pattern_set.get(value=pattern_value)
130 objAntennaUp = patternChoosen.antennaup_set.get()
131 objAntennaDown = patternChoosen.antennadown_set.get()
132
133 return render_to_response('abscontrol/edit.html', {'objProfile': objProfile, 'profile_list': profile_list,
134 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
135 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
136 })
137
138 def addPattern(request, profile_id):
139 profile_list = Profile.objects.all()
140 objProfile = Profile.objects.get(pk=profile_id)
141
142 return render_to_response('abscontrol/addPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
143 'txtAntenna' : txtAntenna, 'txtUes' : txtUes,
144 'txtTxUp' : txtTxUp, 'txtTxDown' : txtTxDown,
145 'txtRxUp' : txtRxUp, 'txtRxDown' : txtRxDown,
146 })
147
148 def editPattern(request, profile_id, pattern_id):
149 profile_list = Profile.objects.all()
150 objProfile = Profile.objects.get(pk=profile_id)
151 lsPatterns = objProfile.pattern_set.all()
152 patternChoosen = Pattern.objects.get(pk=pattern_id)
153 objAntennaUp = patternChoosen.antennaup_set.get()
154 objAntennaDown = patternChoosen.antennadown_set.get()
155
156 return render_to_response('abscontrol/editPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
157 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
158 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
159 })
160
161 def savePattern(request, profile_id):
162 maxValuePattern = 0
163 txtAntennaUp = request.POST["txtAntennaUp"]
164 txtTxUp = request.POST["txtTxUp"]
165 txtRxUp = request.POST["txtRxUp"]
166 txtUesUp = request.POST["txtUesUp"]
167
168 txtAntennaDown = request.POST["txtAntennaDown"]
169 txtTxDown = request.POST["txtTxDown"]
170 txtRxDown = request.POST["txtRxDown"]
171 txtUesDown = request.POST["txtUesDown"]
172
173 objProfile = Profile.objects.get(pk=profile_id)
174 lsPatterns = objProfile.pattern_set.all()
175 for element in lsPatterns:
176 if element.value > maxValuePattern:
177 maxPattern = element.value
178
179 if maxPattern < 10 :
180 newValuePattern = maxPattern + 1
181 newpattern = objProfile.pattern_set.create(value=newValuePattern)
182 newpattern.antennaup_set.create(value=txtAntennaUp,tx=txtTxUp,rx=txtRxUp,ues=txtUesUp)
183 newpattern.antennadown_set.create(value=txtAntennaDown,tx=txtTxDown,rx=txtRxDown,ues=txtUesDown)
184
185 newurl = '/abscontrol/%d/view/%d' % (int(profile_id), newpattern.id)
186 else:
187 newurl = '/abscontrol/edit/%d' % (int(profile_id))
188
189 return redirect(newurl)
190
191 def viewPattern(request, profile_id, pattern_id):
192
193 profile_list = Profile.objects.all()
194 objProfile = Profile.objects.get(pk=profile_id)
195
196 patternChoosen = Pattern.objects.get(pk=pattern_id)
197
198 objAntennaUp = patternChoosen.antennaup_set.get()
199 objAntennaDown = patternChoosen.antennadown_set.get()
200
201 lsPatterns = objProfile.pattern_set.all()
202
203 return render_to_response('abscontrol/viewPattern.html', {'objProfile': objProfile, 'profile_list': profile_list,
204 'patternChoosen' : patternChoosen, 'lsPatterns' : lsPatterns,
205 'antennaUp' : objAntennaUp, 'antennaDown' : objAntennaDown,
206 })
207
208 def deletePattern(request, profile_id, pattern_id):
209 newurl = '/abscontrol/edit/%d' % int(profile_id)
210
211 return redirect(newurl)
@@ -68,8 +68,14
68 68 #content #maincolumn {float: left; border: 1px solid #000; width: 800px; padding-left: 20px;}
69 69 footer {border: 1px solid #200; font-size: 0.9em; height: 30px; text-align: center; line-height: 20px}
70 70
71 .cleardivs {clear: both; border: 1px solid #400; height: 0px}
72
71 .cleardivs {clear: both; border: 0px solid #400; height: 0px}
72 /****************************************************************************************/
73 /****** ESTILOS GENERALES *****************/
74 /****************************************************************************************/
75 .mnu{ height: 22px; border: 1px solid #c55 !important;}
76 .mnu li{ display:inline;}
77 /*.MnuHorizontal{ display: -webkit-box; -webkit-box-orient:horizontal;}*/
78 /*.MnuHorizontal a{ display:block; padding:10px; -webkit-box-flex:1; text-align:center; }*/
73 79
74 80 /****************************************************************************************/
75 81 /****** MENU DE NAVEGACION DE PERFILES **********************************/
@@ -77,27 +83,38
77 83 #content #infoProfiles {border: 1px solid #d00; width: 140px; margin: 0px; padding-top: 2px; padding-bottom: 2px}
78 84 .lblInfo {padding-left: 12px; line-height: 20px;}
79 85 #infoProfiles select {padding-left: 12px; line-height: 20px;margin-left: 12px}
80 #content nav {border: 1px solid #c55; width: 140px; margin: 0px; font-family: Monaco; font-size: 1.2em;}
81 #content nav ul{list-style: none; list-style-type: none; margin: 15px 15px 15px 15px; padding-left: 20px; border: 0px solid #eee}
82 #content nav ul li{line-height: 20px}
86 #content nav {border: 0px solid #c55 !important; margin: 0px; font-family: Monaco; font-size: 1.2em;}
87 #content nav ul{list-style: none; list-style-type: none; margin: 0; padding-left: 20px; border: 0px solid #eee !important}
88 #content nav ul li{line-height: 22px; }
83 89
84 90 /****************************************************************************************/
85 91 /******** FORMULARIO DE PERFILES *************************************/
86 92 /****************************************************************************************/
87 #divProfile {border: 0px solid #dff; margin: 10px 0px; padding: 10px 10px; width: 500px}
88 .flsAntenna {margin: 10px 0px; width: 750px; padding: 10px 10px}
89 #divPattern textarea,input[type=text],label {font-family: Monaco; font-size: inherit;}
93 #divProfile { border: 0px solid #dff; margin: 10px 0px; padding: 10px 10px; width: 500px }
94 .flsAntenna { margin: 10px 0px; width: 750px; padding: 10px 10px }
95 #divPattern textarea,input[type=text],label{ font-family: Monaco; font-size: inherit; }
90 96
91 97 #divPattern textarea {resize: none; overflow: hidden}
92 98
93 .divAntenna {float: left; margin: 10px; height: 160px; border: 1px solid #fcc !important; width: 260px}
94 .divAntenna label {display: block}
95 .txtAntenna {max-width: 250px; max-height: 125px; width: 250px; height: 125px}
99 .divAntenna { float: left; margin: 10px; height: 160px; border: 0px solid #fcc !important; width: 260px }
100 .divAntenna label{ display: block }
101 .txtAntenna { max-width: 250px; max-height: 125px; width: 250px; height: 125px }
102 .divAntenna p{ max-width: 250px; max-height: 125px; width: 250px; height: 125px }
96 103
97 .divTx {display: block; float: left; margin: 10px; height: 150px}
98 .divTx label {display: block}
99 .divTx textarea {width: 135px; max-width: 135px; height: 125px; max-height: 125px; text-align: justify}
104 .divTx { display: block; float: left; margin: 10px; height: 150px }
105 .divTx label{ display: block }
106 .divTx textarea{ width: 135px; max-width: 135px; height: 125px; max-height: 125px; text-align: justify }
107 .divTx p{ width: 135px; max-width: 135px; height: 125px; max-height: 125px; text-align: justify }
100 108
101 .divUes {display: block; margin: 10px}
102 .divUes input[type=text] {width: 240px; max-width: 240px;}
109 .divUes { display: block; margin: 10px}
110 .divUes input[type=text] { width: 240px; max-width: 240px;}
103 111
112 /****************************************************************************************/
113 /****** MENU DE NAVEGACION DE PATRONES **********************************/
114 /****************************************************************************************/
115 #divMnuPattern{ width: 350px; height: 25px; display: block; border: 1px solid #1cc !important; float: right }
116 #infoPattern{ display: block; border: 1px solid #1494f6 !important, margin: 5px 2px; }
117 #navPatterns{ margin: 5px auto; padding: 2px; border: 1px solid #d00 !important; width: 400px; height: 25px}
118 #navPatterns ul li{ width: 50px; border: 1px solid #1cc !important}
119 #navPatterns a{ width: 50px; border: 0px solid #1cc !important}
120 #navPatternList{ margin: 0px auto; border: 1px solid #ecc !important}
@@ -3,15 +3,7
3 3 {% block title %}ABS CONTROL:::::{% endblock %}
4 4 {% block scripting %}
5 5 {% if profile_list %}
6 <script type="text/javascript">
7 $(document).on('ready',function(){
8 $('#listProfiles').change(function() {
9 if($(this).val() != -1){
10 location.href="/abscontrol/view/" + $(this).val();
11 }
12 });
13 });
14 </script>
6 <script src="/static/static/js/profiles.js"></script>
15 7 {% endif %}
16 8 {% endblock %}
17 9 {% block content %}
@@ -45,6 +37,10
45 37 <nav>
46 38 <ul>
47 39 <li><a href="/abscontrol/new">New</a></li>
40 {% if objProfile %}
41 <li><a href="/abscontrol/edit/{{ objProfile.id }}">Edit</a></li>
42 <li><a href="#">Save</a></li>
43 {% endif %}
48 44 <li><a href="#">Save as</a></li>
49 45 <li><a href="#">Import</a></li>
50 46 <li><a href="#">Export</a></li>
@@ -3,61 +3,72
3 3
4 4 {% block maincolumn%}
5 5 <div id="maincolumn">
6 <form action="/abscontrol/save/" method="post">
7 6 <div id="divProfile">
8 7 <label for="lblName">Profile:</label>
9 8 <label for="lblProfile">{{ objProfile.name }}</label>
10 9 </div>
11 10 <div id="divPattern">
12 {% if patternChoosen %}
13 <label for="lblValue">Pattern:</label>
14 <label for="lblPatternValue">{{ patternChoosen.value }}</label>
15 {% endif %}
16 <div id="antennaUp">
17 <fieldset class="flsAntenna">
18 <legend>UP</legend>
19 <div class="divAntenna">
20 <label for="lblAntenna">Antenna</label>
21 <textarea name="txtAntennaUp" class="txtAntenna" cols="38" rows="8">{{ antennaUp.value }}</textarea>
22 </div>
23 <div class="divTx">
24 <label for="lblTx">Tx</label>
25 <textarea name="txtTxUp" class="txtTR" cols="20" rows="8">{{ antennaUp.tx }}</textarea>
26 </div>
27 <div class="divTx">
28 <label for="lblRx">Rx</label>
29 <textarea name="txtRxUp" class="txtTR" cols="20" rows="8">{{ antennaUp.rx }}</textarea>
30 </div>
31 <div class="cleardivs"></div>
32 <div class="divUes">
33 <label for="lblUes">Ues:</label>
34 <label for="lblAntennaUpUes">{{ antennaUp.ues }}</label>
35 </div>
36 </fieldset>
37 </div>
38 <div id="antennaDown">
39 <fieldset class="flsAntenna">
40 <legend>DOWN</legend>
41 <div class="divAntenna">
42 <label for="lblAntenna">Antenna</label>
43 <textarea name="txtAntennaDown" class="txtAntenna" cols="38" rows="8">{{ antennaDown.value }}</textarea>
44 </div>
45 <div class="divTx">
46 <label for="lblTx">Tx</label>
47 <textarea name="txtTxDown" class="txtTR" cols="20" rows="8">{{ antennaDown.tx }}</textarea>
48 </div>
49 <div class="divTx">
50 <label for="lblRx">Rx</label>
51 <textarea name="txtRxDown" class="txtTR" cols="20" rows="8">{{ antennaDown.rx }}</textarea>
52 </div>
53 <div class="cleardivs"></div>
54 <div class="divUes">
55 <label for="lblUes">Ues:</label>
56 <label for="lblAntennaDownUes">{{ antennaDown.ues }}</label>
57 </div>
58 </fieldset>
11 <div id="infoPattern">
12 {% if patternChoosen %}
13 <div id="navPatterns">
14 <nav class="MnuHorizontal">
15 <ul class="mnu" id="navPatternList">
16 {% for element in lsPatterns %}
17 {% if patternChoosen.id == element.id %}
18 <li><a href="/abscontrol/{{ objProfile.id }}/view/{{ element.id }}" class="lnkPatternSelected">{{ element.value }}</a></li>
19 {% else %}
20 <li><a href="/abscontrol/{{ objProfile.id }}/view/{{ element.id }}" class="lnkPattern">{{ element.value }}</a></li>
21 {% endif %}
22 {% endfor %}
23 </ul>
24 </nav>
25 </div>
26 {% endif %}
27 <div id="antennaUp">
28 <fieldset class="flsAntenna">
29 <legend>UP</legend>
30 <div class="divAntenna">
31 <label for="lblAntenna">Antenna</label>
32 <p>{{ antennaUp.value }}</p>
33 </div>
34 <div class="divTx">
35 <label for="lblTx">Tx</label>
36 <p>{{ antennaUp.tx }}</p>
37 </div>
38 <div class="divTx">
39 <label for="lblRx">Rx</label>
40 <p>{{ antennaUp.rx }}</p>
41 </div>
42 <div class="cleardivs"></div>
43 <div class="divUes">
44 <label for="lblUes">Ues:</label>
45 <label for="lblAntennaUpUes">{{ antennaUp.ues }}</label>
46 </div>
47 </fieldset>
48 </div>
49 <div id="antennaDown">
50 <fieldset class="flsAntenna">
51 <legend>DOWN</legend>
52 <div class="divAntenna">
53 <label for="lblAntenna">Antenna</label>
54 <p>{{ antennaDown.value }}</p>
55 </div>
56 <div class="divTx">
57 <label for="lblTx">Tx</label>
58 <p>{{ antennaDown.tx }}</p>
59 </div>
60 <div class="divTx">
61 <label for="lblRx">Rx</label>
62 <p>{{ antennaDown.rx }}</p>
63 </div>
64 <div class="cleardivs"></div>
65 <div class="divUes">
66 <label for="lblUes">Ues:</label>
67 <label for="lblAntennaDownUes">{{ antennaDown.ues }}</label>
68 </div>
69 </fieldset>
70 </div>
59 71 </div>
60 72 </div>
61 </form>
62 73 </div>
63 74 {% endblock %}
@@ -10,6 +10,7
10 10 {% endcomment %}
11 11 <link rel="stylesheet" href="{% static 'static/css/style.css' %}" type="text/css" />
12 12 <script src="{% static 'static/js/jquery-1.9.1.min.js' %}"></script>
13 {% block scripting %}{% endblock %}
13 14 <title>{% block title %}JRO WEB APPS::::{% endblock %}</title>
14 15 <meta name="description" content="JRO WEB APPLICATIONS" />
15 16 <meta name="author" content="Jose Antonio Sal y Rosas Celi" />
@@ -20,7 +21,6
20 21 <link rel="shortcut icon" href="/favicon.ico" />
21 22 <link rel="apple-touch-icon" href="/apple-touch-icon.png" />
22 23 {% endcomment %}
23 {% block scripting %}{% endblock %}
24 24 </head>
25 25 <body>
26 26 <div id="schema">
General Comments 0
You need to be logged in to leave comments. Login now