4
<%@ page contentType="text/html ; charset=UTF-8"%>
6
<%@ page import="java.sql.*,java.util.*" %>
7
<%@ page session="true"%>
10
<jsp:useBean id="GenerateHomePage" scope="session" class="org.hisp.gtool.action.GenerateHomePage" />
11
<jsp:useBean id="AudioAction" scope="session" class="org.hisp.gtool.action.AudioAction" />
17
String muteOpt = (String) session.getAttribute("muteOpt");
18
if(muteOpt != null && muteOpt.equals("OFF"))
20
AudioAction.stopAudio();
21
AudioAction.playAudio("t2.wav");
25
Hashtable htForIGMembers = GenerateHomePage.getIndicatorGroups();
26
//Enumeration keysForigMembers = htForIGMembers.keys();
27
Vector keysForigMembers = new Vector(htForIGMembers.keySet());
28
Collections.sort(keysForigMembers);
29
Iterator keysForigMembersIter = keysForigMembers.iterator();
32
Hashtable htForDEGMembers = GenerateHomePage.getDEGroups();
33
//Enumeration keysFordegMembers = htForDEGMembers.keys();
34
Vector keysFordegMembers = new Vector(htForDEGMembers.keySet());
35
Collections.sort(keysFordegMembers);
36
Iterator keysFordegMembersIter = keysFordegMembers.iterator();
39
String monthNames[]={"","Jan-","Feb-","Mar-","Apr-","May-","Jun-","Jul-","Aug-","Sep-","Oct-","Nov-","Dec-"};
44
<title>Graphical Analyser</title>
45
<link rel="stylesheet" type="text/css" href="css/StylesForTags.css" />
46
<style fprolloverstyle>
47
A:hover {background-color: silver;}
60
var igMembers = new Array(); // Indicator Groups and its Corresponding Indicators
61
var countForIGMembers1 = 0;
62
var countForIGMembers2 = 0;
64
var selriRadioButton="indicatorsRadio";
66
// Indicator Group Members
68
// keysForigMembers = htForIGMembers.keys();
70
// Vector keysForigMembers = new Vector(htForIGMembers.keySet());
71
// Collections.sort(keysForigMembers);
72
keysForigMembersIter = keysForigMembers.iterator();
74
while(keysForigMembersIter.hasNext())
76
String igName = (String) keysForigMembersIter.next();
77
List liForIGMembers = (ArrayList) htForIGMembers.get(igName);
78
Iterator itForIGMembers = liForIGMembers.iterator();
80
igMembers[countForIGMembers1] = new Array();
81
countForIGMembers2 = 0;
83
while(itForIGMembers.hasNext())
85
String iName = (String) itForIGMembers.next();
87
igMembers[countForIGMembers1][countForIGMembers2++]= '<%=iName%>';
97
var degMembers = new Array(); // DEGroups and its Dataelemets
98
var countForDEGMembers1 = 0;
99
var countForDEGMembers2 = 0;
103
keysFordegMembersIter = keysFordegMembers.iterator();
104
while(keysFordegMembersIter.hasNext())
106
String degName = (String) keysFordegMembersIter.next();
107
List liForDEGMembers = (ArrayList) htForDEGMembers.get(degName);
108
Iterator itForDEGMembers = liForDEGMembers.iterator();
110
degMembers[countForDEGMembers1] = new Array();
111
countForDEGMembers2 = 0;
113
while(itForDEGMembers.hasNext())
115
String deName = (String) itForDEGMembers.next();
117
degMembers[countForDEGMembers1][countForDEGMembers2++]= '<%=deName%>';
119
} // inner while loop
121
countForDEGMembers1++;
123
} // outer while loop
128
var igNames = new Array(); // IndicatorGroup Names
129
var countForIGNames = 0;
131
// IndicatorGroup Names
133
//keysForigMembers = htForIGMembers.keys();
134
keysForigMembersIter = keysForigMembers.iterator();
135
while(keysForigMembersIter.hasNext())
137
String igName = (String) keysForigMembersIter.next();
139
igNames[countForIGNames++]= '<%=igName%>';
146
var degNames = new Array(); // DataElementGroup Names
147
var countForDEGNames = 0;
151
//keysFordegMembers = htForDEGMembers.keys();
152
keysFordegMembersIter = keysFordegMembers.iterator();
153
while(keysFordegMembersIter.hasNext())
155
String degName = (String) keysFordegMembersIter.next();
157
degNames[countForDEGNames++]= '<%=degName%>';
164
function riradioSelection(evt)
166
selriRadioButton = evt.target.value;
167
var iGroupsCBLength = document.ChartGenerationForm.iGroupsCB.options.length;
169
// For loop to clear the Indicator/DE Group ListBox
170
for(k=0;k<iGroupsCBLength;k++)
172
document.ChartGenerationForm.iGroupsCB.options[0] = null;
175
// For Loop to clear the Indicators /Data Elements ListBox
176
var iListCBLength = document.ChartGenerationForm.iListCB.options.length;
177
for(k=0;k<iListCBLength;k++)
179
document.ChartGenerationForm.iListCB.options[0] = null;
182
var ideGroupIndex = 0;
183
if(selriRadioButton == "dataElementsRadio")
185
for(k=0;k<degNames.length;k++)
187
document.ChartGenerationForm.iGroupsCB.options[k] = new Option(degNames[k],degNames[k],false,false);
190
for(k=0;k<degMembers[ideGroupIndex].length;k++)
192
document.ChartGenerationForm.iListCB.options[k] = new Option(degMembers[ideGroupIndex][k],degMembers[ideGroupIndex][k],false,false);
198
for(k=0;k<igNames.length;k++)
200
document.ChartGenerationForm.iGroupsCB.options[k] = new Option(igNames[k],igNames[k],false,false);
204
for(k=0;k<igMembers[ideGroupIndex].length;k++)
206
document.ChartGenerationForm.iListCB.options[k] = new Option(igMembers[ideGroupIndex][k],igMembers[ideGroupIndex][k],false,false);
209
}// function riradioSelection end
212
function onloadFunction()
214
var iGroupsCBLength = document.ChartGenerationForm.iGroupsCB.options.length;
216
for(k=0;k<iGroupsCBLength;k++)
218
document.ChartGenerationForm.iGroupsCB.options[0] = null;
220
for(k=0;k<igNames.length;k++)
222
document.ChartGenerationForm.iGroupsCB.options[k] = new Option(igNames[k],igNames[k],false,false);
226
var iListCBLength = document.ChartGenerationForm.iListCB.options.length;
227
for(k=0;k<iListCBLength;k++)
229
document.ChartGenerationForm.iListCB.options[0] = null;
232
for(k=0;k<igMembers[iGroupIndex].length;k++)
234
document.ChartGenerationForm.iListCB.options[k] = new Option(igMembers[iGroupIndex][k],igMembers[iGroupIndex][k],false,false);
236
} // onloadFuntion end
239
function iGroupsCBChange()
241
var iListCBLength = document.ChartGenerationForm.iListCB.options.length;
243
for(k=0;k<iListCBLength;k++)
245
document.ChartGenerationForm.iListCB.options[0] = null;
247
var iGroupIndex = document.ChartGenerationForm.iGroupsCB.selectedIndex;
249
if(selriRadioButton == "dataElementsRadio")
251
for(k=0;k<degMembers[iGroupIndex].length;k++)
253
document.ChartGenerationForm.iListCB.options[k] = new Option(degMembers[iGroupIndex][k],degMembers[iGroupIndex][k],false,false);
258
for(k=0;k<igMembers[iGroupIndex].length;k++)
260
document.ChartGenerationForm.iListCB.options[k] = new Option(igMembers[iGroupIndex][k],igMembers[iGroupIndex][k],false,false);
263
}// function iGroupsCBChange end
266
function formValidations()
268
ouName = document.ChartGenerationForm.ouNameTB.value;
269
indName = document.ChartGenerationForm.iListCB.selectedIndex;
270
sDateIndex = document.ChartGenerationForm.sDateLB.selectedIndex;
271
eDateIndex = document.ChartGenerationForm.eDateLB.selectedIndex;
272
category = document.ChartGenerationForm.categoryLB.selectedIndex;
274
sDate = document.ChartGenerationForm.sDateLB.options[sDateIndex].value;
275
eDate = document.ChartGenerationForm.eDateLB.options[eDateIndex].value;
276
categoryName = document.ChartGenerationForm.categoryLB.options[category].text;
279
if(ouName=="" || ouName==null) {alert("Please Select OrganisationUnit");return false;}
280
else if(indName < 0) {alert("Please Select Indicator(s)");return false;}
281
else if(sDateIndex < 0) {alert("Please Select Starting Period");return false;}
282
else if(eDateIndex < 0) {alert("Please Select Ending Period");return false;}
283
else if(category < 0) {alert("Please Select Category");return false;}
284
else if(sDate > eDate) {alert("Starting Date is Greater");return false;}
288
var LeftPosition=(screen.width)?(screen.width-sWidth)/2:100;
289
var TopPosition=(screen.height)?(screen.height-sHeight)/2:100;
291
window.open('','chartWindow1','width=' + sWidth + ', height=' + sHeight + ', ' + 'left=' + LeftPosition + ', top=' + TopPosition + ', ' + 'location=no, menubar=no, ' + 'status=no, toolbar=no, scrollbars=yes, resizable=yes');
294
} // formValidations Function End
296
function summaryReportFunction()
298
if(formValidations())
300
var urlValuesForSR = ouName+"@@"+sDate+"@@"+eDate;
304
var LeftPosition=(screen.width)?(screen.width-sWidth)/2:100;
305
var TopPosition=(screen.height)?(screen.height-sHeight)/2:100;
307
// window.open("summaryReportFW.jsp?Action="+urlValuesForSR,'chartWindow1','width=' + sWidth + ', height=' + sHeight + ', ' + 'left=' + LeftPosition + ', top=' + TopPosition + ', ' + 'location=no, menubar=no, ' + 'status=no, toolbar=no, scrollbars=no, resizable=no');
309
if(categoryName=="Period") window.open("summaryReportPW.jsp?Action="+urlValuesForSR,'chartWindow1','width=' + sWidth + ', height=' + sHeight + ', ' + 'left=' + LeftPosition + ', top=' + TopPosition + ', ' + 'location=no, menubar=no, ' + 'status=no, toolbar=no, scrollbars=yes, resizable=yes');
310
else if(categoryName=="Facility") window.open("summaryReportFW.jsp?Action="+urlValuesForSR,'chartWindow1','width=' + sWidth + ', height=' + sHeight + ', ' + 'left=' + LeftPosition + ', top=' + TopPosition + ', ' + 'location=no, menubar=no, ' + 'status=no, toolbar=no, scrollbars=yes, resizable=yes');
312
}// summaryReportFunction end
315
<body onload="onloadFunction()" >
316
<form id="ChartGenerationForm" name="ChartGenerationForm" action="tempForViewChart.jsp" method="post" onsubmit="return formValidations()" target="chartWindow1">
317
<table style=" border-collapse: collapse; margin-top: 0;" cellpadding="0" cellspacing="0" width="100%" height="100%" border=0 valign="top">
319
<td width="64%" class="NormalB" valign="top" style="padding-left: 0; padding-top: 0">
320
<table cellpadding="15" cellspacing="2" border=0 bordercolor="#800000" width="100%" style="background-image: url('images/Ind_Box1.png'); background-repeat: no-repeat;">
321
<tr><td class="NormalB">
322
<input type="radio" id="riRadio" name="riRadio" value="dataElementsRadio" onclick="riradioSelection(event)"> DataElements
324
<input type="radio" id="riRadio" name="riRadio" value="indicatorsRadio" onclick="riradioSelection(event)" checked> Indicators
326
<tr><td class="NormalB">
327
Indicator/DataElement Group : <br><select name="iGroupsCB" id="iGroupsCB" onchange="iGroupsCBChange()" style="width: 400">
330
keysForigMembers = htForIGMembers.keys();
331
while(keysForigMembers.hasMoreElements())
333
String igName = (String) keysForigMembers.nextElement(); %>
334
<option><%=igName%></option>
340
<tr><td class="NormalB" >
341
Indicator/DataElement List : <br><select name="iListCB" id="iListCB" multiple size="15" style="width: 400">
344
List liForIName = GenerateHomePage.getIndicatorName();
345
Iterator iForIName = liForIName.iterator();
346
while(iForIName.hasNext())
348
String iname = (String) iForIName.next();%>
349
<option><%=iname%></option>
355
<tr><td> <br></br><br/></td></tr>
358
<td width="31%" class="NormalB" style="padding-left: 0; padding-top: 0" valign="top">
359
<table border=0 width="100%" cellpadding="25" style="background-image: url('images/Period_Box1.png'); background-repeat: no-repeat; ">
360
<tr><td class="NormalB" width="100%">
361
From : <br><select id="sDateLB" name="sDateLB">
363
List liForSDate = GenerateHomePage.getStartDate();
364
Iterator iForSDate = liForSDate.iterator();
365
while(iForSDate.hasNext())
367
String sdate = (String) iForSDate.next();
368
String partsOfTempForSDate[] = sdate.split("-");
369
String tempForSDate = monthNames[Integer.parseInt(partsOfTempForSDate[1])]+partsOfTempForSDate[0];%>
370
<option value="<%=sdate%>"><%=tempForSDate%></option>
377
To : <br><select id="eDateLB" name="eDateLB">
379
List liForEDate = GenerateHomePage.getEndDate();
380
Iterator iForEDate = liForEDate.iterator();
381
while(iForEDate.hasNext())
383
String edate = (String) iForEDate.next();
384
String partsOfTempForEDate[] = edate.split("-");
385
String tempForEDate = monthNames[Integer.parseInt(partsOfTempForEDate[1])]+partsOfTempForEDate[0];%>
386
<option value="<%=edate%>"><%=tempForEDate%></option>
393
<table width="100%" cellpadding="15" border=0 bordercolor="#800000" style="background-image: url('images/Submit_Box1.png'); background-repeat: no-repeat; " >
394
<tr><td class="NormalB">
395
OrganisationUnit : <br><input type="text" name="ouNameTB" id="ouNameTB" size="20">
397
View by : <br><select id="categoryLB" name="categoryLB">
398
<option>Period</option>
399
<option>Facility</option>
403
<input type="submit" name="ViewChart" value="ViewChart" style="width: 120; height: 25; font-family:Arial; font-weight:bold; color:#800080">
405
<input type="button" name="ViewSummary" value="ViewSummary" style="width: 120; height: 25; font-family:Arial; font-weight:bold; color:#800080" onclick="javascript:summaryReportFunction()">
406
<input type="hidden" name="ouIDTB" id="ouIDTB">
407
<br></br><br/><br/><br/><br/>
411
<td width="5%" valign="center" class="NormalB" style="background-image: url('images/SideTitle1.png'); background-repeat: no-repeat; "></td>
b'\\ No newline at end of file'