home *** CD-ROM | disk | FTP | other *** search
Wrap
/* ====================================================================== DESC: Common Report Functions for the Administer Operations PLATFORMS: >= MS IE 4.0 USAGE NOTES: ====================================================================== */ var RPRtyp = ""; function processSpecButton(type) { AR_RptSel.style.display="none"; SpecDTDD.style.display="none"; SpecDurDD.style.display="none"; SpecRunDD.style.display="none"; RPRtyp = type; processReportParameterRequest(type); } // Process Report Parameter Request if any function processReportParameterRequest(ptype){ SetCursor("auto"); var btitle = "Parameters"; // Process based on Request code switch ( ptype ) { case "[1]" : Reqst1Div.style.display=""; Reqst3Div.style.display="none"; PopUpDiv.style.display=""; if ( ServiceSelect.style.visibility != "hidden" ) { ServiceSelect.focus(); } AllServersSelected.checked = "checked"; AllServersSelected.disabled = "disabled"; CurrentServiceDisplayed = ""; break; case "[2]" : Reqst1Div.style.display="none"; Reqst3Div.style.display=""; PopUpDiv.style.display=""; CheckSummary(); AllServersSelected1.checked = "checked"; AllServersSelected1.disabled = "disabled"; CurrentServiceDisplayed = ""; break; } } function processCancelButton() { AR_RptSel.style.display=""; SpecDTDD.style.display=""; SpecDurDD.style.display=""; SpecRunDD.style.display=""; PopUpDiv.style.display="none"; if ( AR_RptSel.style.visibility != "hidden" ) { AR_RptSel.focus(); } } function CursorReset() { SetCursor("auto"); top.banner.processStopCommX(); } var STParm = ""; function processOKButton() { if ( RPRtyp == "[2]" && !Report_SWA.checked && !Report_SNMP.checked && !Report_EL.checked && !Report_WS.checked && !Report_FC.checked && !Report_SL.checked && !Report_PC.checked) { alert("Please Specify at least one Alert Type"); return; } PopUpDiv.style.display="none"; // hide Pop-Up var selectlist, ST; if ( RPRtyp == "[2]" ) { var a1 = a2 = b1 = b2 = c1 = c2 = nonly = "0"; a1 = (Report_SWA.checked) ? "0" : "1"; a2 = (Report_SWA_Sum.checked) ? "1" : "0"; b1 = (Report_SNMP.checked) ? "0" : "1"; b2 = (Report_SNMP_Sum.checked) ? "1" : "0"; c1 = (Report_EL.checked) ? "0" : "1"; c2 = (Report_EL_Sum.checked) ? "1" : "0"; d1 = (Report_WS.checked) ? "0" : "1"; d2 = (Report_WS_Sum.checked) ? "1" : "0"; e1 = (Report_FC.checked) ? "0" : "1"; e2 = (Report_FC_Sum.checked) ? "1" : "0"; f1 = (Report_SL.checked) ? "0" : "1"; f2 = (Report_SL_Sum.checked) ? "1" : "0"; g1 = (Report_PC.checked) ? "0" : "1"; g2 = (Report_PC_Sum.checked) ? "1" : "0"; nonly = (NotifyOnly.checked) ? "1" : "0"; if (AllServersSelected1.checked) { ST = a1+","+a2+","+b1+","+b2+","+c1+","+c2+","+d1+","+d2+","+e1+","+e2+","+f1+","+f2+","+g1+","+g2+",####,"+MaxLines.value+","+nonly+",ALL"; } else { ST = ""; if ( S_csa != "" ) { ST += "0,0,"; S_csa.sort( IDSort ); CompSelectedArr += "X.s."+S_csa.join(".") + "."; } else { ST += "1,0,"; } if ( T_csa != "" ) { ST += "0,0,"; T_csa.sort( IDSort ); CompSelectedArr += "X.t."+T_csa.join(".") + "."; } else { ST += "1,0,"; } if ( E_csa != "" ) { ST += "0,0,"; E_csa.sort( IDSort ); CompSelectedArr += "X.e."+E_csa.join(".") + "."; } else { ST += "1,0,"; } if ( W_csa != "" ) { ST += "0,0,"; W_csa.sort( IDSort ); CompSelectedArr += "X.w."+W_csa.join(".") + "."; } else { ST += "1,0,"; } if ( F_csa != "" ) { ST += "0,0,"; F_csa.sort( IDSort ); CompSelectedArr += "X.f."+F_csa.join(".") + "."; } else { ST += "1,0,"; } if ( L_csa != "" ) { ST += "0,0,"; L_csa.sort( IDSort ); CompSelectedArr += "X.l."+L_csa.join(".") + "."; } else { ST += "1,0,"; } if ( P_csa != "" ) { ST += "0,0,"; P_csa.sort( IDSort ); CompSelectedArr += "X.p."+P_csa.join(".") + "."; } else { ST += "1,0,"; } ST += "####,"+MaxLines.value+","+nonly+","+CompSelectedArr; } } else { var tas = (Report_TAS.checked) ? "1" : "0"; var ST = (Reqst1Div.style.display == "") ? ServiceTypes[ServiceSelect.selectedIndex] : ""; ST = (ST == "SQL") ? "SQLCONNECT" : ST; var tas_sort = TASSortSelect.selectedIndex; selectlist = (AllServersSelected.checked) ? "ALL" : CompSelectedArr; ST += ",####,"+tas+","+tas_sort+","+selectlist; } STParm = ST; AR_RptSel.style.display=""; SpecDTDD.style.display=""; SpecDurDD.style.display=""; SpecRunDD.style.display=""; PopUpDiv.style.display="none"; if ( AR_RptSel.style.visibility != "hidden" ) { AR_RptSel.focus(); } } function IDSort(a,b) { var a_arr = new Array(); var b_arr = new Array(); a_arr = a.split("."); b_arr = b.split("."); if ( a_arr[0] == b_arr[0] ) return (a_arr[1] - b_arr[1]); else return (a_arr[0] - b_arr[0]); } function CheckSummary() { SWA_add.style.display = ( Report_SWA_Sum.checked ) ? "" : "none"; SNMP_add.style.display = ( Report_SNMP_Sum.checked ) ? "" : "none"; EL_add.style.display = ( Report_EL_Sum.checked ) ? "" : "none"; WS_add.style.display = ( Report_WS_Sum.checked ) ? "" : "none"; FC_add.style.display = ( Report_FC_Sum.checked ) ? "" : "none"; SL_add.style.display = ( Report_SL_Sum.checked ) ? "" : "none"; PC_add.style.display = ( Report_PC_Sum.checked ) ? "" : "none"; } function CheckTASSummary() { TASsort.style.visibility = ( Report_TAS.checked ) ? "visible" : "hidden"; } function processServerSelectButton() { processAlertGroupTree(); PopUpDiv.style.display = "none"; // hide parameters Pop-Up PopUpSelectDiv.style.display = ""; // enable Pop-Up if ( GroupDisplayedCount != 0 ) { if ( lima0.expanded == "0" ) { // expand first group if necessary procGrpImgClick(lima0); } } } function checkSelUnselButtons() { if ( GroupExpandedCount > 0 ) { SetButtonState(bSelC,"0"); SetButtonState(bUselC,"0"); } else { // otherwise disable the buttons SetButtonState(bSelC,"1"); SetButtonState(bUselC,"1"); } } var CompSelectedArr = ""; var E_csa = new Array(), S_csa = new Array(), T_csa = new Array(), W_csa = new Array(), F_csa = new Array(), L_csa = new Array(), P_csa = new Array(); function processSelectDoneButton() { CompSelectedArr = ""; // reset if ( RPRtyp == "[2]" ) { // Find count of selected computers var GObj = null, CObj = null, tS = ""; E_csa.length = S_csa.length = T_csa.length = W_csa.length = F_csa.length = L_csa.length = P_csa.length = 0; var ei = si = ti = ni = fi = li = pi = 0; // Look at each displayed Group for ( var i=0,k=0; i<GroupDisplayedCount; i++ ) { GObj = document.all["lexp"+i]; for ( var j=0, m=0; j<GObj.compcount; j++ ) { CObj = document.all["xima"+i+"_"+j]; // computer entry in tree if (CObj.checked == "1") { tS = CObj.agid + "." + CObj.cmpid; switch ( CObj.agt ) { case "S" : S_csa[si++] = tS; break; case "E" : E_csa[ei++] = tS; break; case "T" : T_csa[ti++] = tS; break; case "W" : W_csa[ni++] = tS; break; case "F" : F_csa[fi++] = tS; break; case "L" : L_csa[li++] = tS; break; case "P" : P_csa[pi++] = tS; break; } ++k; } } } if ( k!=0 ) { AllServersSelected1.checked = ""; AllServersSelected1.disabled = ""; } else { AllServersSelected1.checked = "checked"; AllServersSelected1.disabled = "disabled"; } } else { // Find count of selected computers for ( var i=0, j=0, k=0; i<CmpLupRecCount; ++i ) { j = (i*CmpRecLth); // index to Computer entry in store if ( AR_CmpStoreArr[j+5] == "1" ) { // if selected ++k; // bump array index CompSelectedArr += AR_CmpStoreArr[j+3]+"."; } } if ( k!=0 ) { AllServersSelected.checked = ""; AllServersSelected.disabled = ""; } else { AllServersSelected.checked = "checked"; AllServersSelected.disabled = "disabled"; } } top.Rstatus.Pstat(""); PopUpDiv.style.display = ""; // show parameters Pop-Up PopUpSelectDiv.style.display = "none"; } function processSelectCancelButton() { top.Rstatus.Pstat(""); PopUpDiv.style.display = ""; // show parameters Pop-Up PopUpSelectDiv.style.display = "none"; } // Alert Lookup Record var AlertRecLength = 5; var AlertLupRecCount = 0; function processAlertLupRec(AlID, AlName, AlDesc, AlSDT) { var i = AlertLupRecCount * AlertRecLength; var CurrentAlertType = "C"; // set Counter type if ( AlSDT == "01/01/1999 11:50:00" || AlSDT == "1/1/1999 11:50:0" ) { // if User CurrentAlertType = "U"; // "User" type } else if ( AlSDT == "01/01/1999 11:40:00" || AlSDT == "1/1/1999 11:40:0" ) { CurrentAlertType = "E"; // "Event Log" type } else if ( AlSDT == "01/01/1999 11:20:00" || AlSDT == "1/1/1999 11:20:0" ) { CurrentAlertType = "T"; // "SNMP Trap" type } else if ( AlSDT == "01/01/1999 11:10:00" || AlSDT == "1/1/1999 11:10:0" ) { CurrentAlertType = "W"; // "Win Service" type } else if ( AlSDT == "01/01/1999 11:00:00" || AlSDT == "1/1/1999 11:0:0" ) { CurrentAlertType = "F"; // "File Check" type } else if ( AlSDT == "01/01/1999 11:15:00" || AlSDT == "1/1/1999 11:15:0" ) { CurrentAlertType = "L"; // "SYSLOG Check" type } else if ( AlSDT == "01/01/1999 11:30:00" || AlSDT == "1/1/1999 11:30:0" ) { // Service type CurrentAlertType = "S"; // "Service" type } else if ( AlSDT == "01/01/1999 11:12:00" || AlSDT == "1/1/1999 11:12:0" ) { // Service type CurrentAlertType = "P"; // "Service" type } else // ignore return; // Parse Out Dependency, MaxAlerts etc. var warr = new Array(); warr = AlDesc.split("[]"); AlDesc = warr[0]; AlertRec_Arr[i++] = AlID; AlertRec_Arr[i++] = AlName; AlertRec_Arr[i++] = AlDesc; AlertRec_Arr[i++] = CurrentAlertType; AlertRec_Arr[i] = 0; ++AlertLupRecCount; } /* Alert Lookup Op Complete */ function processAlertOpComplete() { if ( false /*AlertLupRecCount == 0 */ ) { // check if any records found top.Rstatus.Pstat("No record matches found for Watch/Alert LOOKUP request",true); CursorReset(); } else { // Do Services Lookup ServicesRecCount = 0; // reset count Services_Arr.length = 0; rstat = RpmCC_AR.ServicesLookup("","","ComputerID,ID DESC"); if ( rstat ) { // if unable to initiate request top.Rstatus.Pstat("Unable to start the ServerWatch LOOKUP request",true); CursorReset(); } else { // waiting for OperationCompleteEvent top.Rstatus.Pstat("One moment while ServerWatch LOOKUP request completes"); return; } } } function processAlertOpError() { top.Rstatus.Pstat("Error in Watch/Alert Lookup"); } // Process Serverices LOOKUP Record Event var ServicesRecCount = 0; var ServicesRecLength = 4; // Services Lookup record length function processServicesRecord(SRVstrg) { var warr = new Array(); warr = SRVstrg.split("~"); var j = ServicesRecCount * ServicesRecLength; Services_Arr[j] = warr[1]; // Computer ID Services_Arr[j+1] = warr[2]; // AlertGroup ID warr[3] = (warr[3] == "SQLCONNECT") ? "SQL" : warr[3]; Services_Arr[j+2] = warr[3]; // Type Services_Arr[j+3] = SRVstrg; ++ServicesRecCount; // bump record counter } function processServicesOpError() { top.Rstatus.Pstat("Error in IP Services Lookup"); } // Process Services Operation Complete Event function processServicesOpComplete() { // Initiate SyslogCheck Lookup SyslogCheck_Arr.length = 0; if ( RpmCC_AR.SyslogCheckLookup("*") ) { top.Rstatus.Pstat("Unable to start the SYSLOGWatch lookup request",true); CursorReset(); } else { top.Rstatus.Pstat("One moment while SYSLOGWatch lookup request completes"); } } var SyslogCheck_Arr = new Array(); var SyslogCheckRecLength = 2; function processSLLookupOpComplete(SLLStat) { var wrkarr = new Array(); wrkarr = SLLStat.split(":"); // parse the lookup record if ( wrkarr[0] != "Err" ) { SyslogCheck_Arr = SLLStat.split("~"); // parse the lookup record } // Get Process Check Watches ProcessCheck_Arr.length = 0; if ( RpmCC_AR.ProcessCheckLookup("*") ) { top.Rstatus.Pstat("Unable to start the ProcessWatch lookup request",true); CursorReset(); } else { top.Rstatus.Pstat("One moment while ProcessWatch lookup request completes"); } } var ProcessCheck_Arr = new Array(); var ProcessCheckRecLength = 2; function processPCLookupOpComplete(FCLStat) { var wrkarr = new Array(); wrkarr = FCLStat.split(":"); // parse the lookup record if ( wrkarr[0] != "Err" ) { ProcessCheck_Arr = FCLStat.split("~"); // parse the lookup record } // Get File Check Watches FileCheck_Arr.length = 0; if ( RpmCC_AR.FileCheckLookup("*") ) { top.Rstatus.Pstat("Unable to start the FileWatch lookup request",true); CursorReset(); } else { top.Rstatus.Pstat("One moment while FileWatch lookup request completes"); } } var FileCheck_Arr = new Array(); var FileCheckRecLength = 2; function processFCLookupOpComplete(FCLStat) { var wrkarr = new Array(); wrkarr = FCLStat.split(":"); // parse the lookup record if ( wrkarr[0] != "Err" ) { FileCheck_Arr = FCLStat.split("~"); // parse the lookup record } // Get Win Services Watches WinSCheck_Arr.length = 0; if ( RpmCC_AR.NTServicesMonitorLookupAGID("*") ) { top.Rstatus.Pstat("Unable to start the WinServicesWatch lookup request",true); CursorReset(); } else { top.Rstatus.Pstat("One moment while WinServicesWatch lookup request completes"); } } var WinSCheck_Arr = new Array(); var WinSCheckRecLength = 2; function processNTSMLookupOpComplete(NTSMLStat) { var wrkarr = new Array(); wrkarr = NTSMLStat.split(":"); // parse the lookup record if ( wrkarr[0] != "Err" ) { WinSCheck_Arr = NTSMLStat.split("~"); // parse the lookup record } // Get SNMP Trap Watches SNMPCheck_Arr.length = 0; if ( RpmCC_AR.SnmpTrapMonitorFindByAGId("*") ) { top.Rstatus.Pstat("Unable to start the SNMPTrapWatch lookup request",true); CursorReset(); } else { top.Rstatus.Pstat("One moment while SNMPTrapWatch lookup request completes"); } } var SNMPCheck_Arr = new Array(); var SNMPCheckRecLength = 2; function processSNMPLookupOpComplete(SNMPLStat) { var wrkarr = new Array(); wrkarr = SNMPLStat.split(":"); // parse the lookup record if ( wrkarr[0] != "Err" ) { SNMPCheck_Arr = SNMPLStat.split("~"); // parse the lookup record } // Get Event Log Watches EventLCheck_Arr.length = 0; if ( RpmCC_AR.ELMonitorLookupByAlertGroup("*") ) { top.Rstatus.Pstat("Unable to start the EventLogWatch lookup request",true); CursorReset(); } else { top.Rstatus.Pstat("One moment while EventLogWatch lookup request completes"); } } var EventLCheck_Arr = new Array(); var EventLCheckRecLength = 2; function processEVLookupOpComplete(EVLStat) { var wrkarr = new Array(); wrkarr = EVLStat.split(":"); // parse the lookup record if ( wrkarr[0] != "Err" ) { EventLCheck_Arr = EVLStat.split("~"); // parse the lookup record } // Done Lookups top.Rstatus.Pstat("Request Completed"); LastReportName = ""; processResetButton(); CursorReset(); } function processELMonitorOpError() { // Done Lookups top.Rstatus.Pstat("Request Completed"); CursorReset(); } // Process and Display the Group:Computer Tree var CCEs = null; var GroupExpandedCount = 0; var GroupDisplayedCount = 0; var LastGroupDisplayed = 0; var CurrentServiceDisplayed = ""; function processAlertGroupTree() { var tstrg = "Watch/Alert : Servers/Devices Tree"; if ( RPRtyp == "[2]" ) { AllServersSelected1.checked = "checked"; AllServersSelected1.disabled = "disabled"; } else { var ST = ServiceTypes[ServiceSelect.selectedIndex]; if ( ST == CurrentServiceDisplayed ) return; CurrentServiceDisplayed = ST; AllServersSelected.checked = "checked"; AllServersSelected.disabled = "disabled"; } CompSelectedArr = ""; var Op = AL_CCOneAlertGroup; // preset Op.innerHTML = ""; // reset setOutHeader(tstrg); // define output table header for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { AR_CmpStoreArr[j+5] = "0"; // reset selected } /* Format and Output Service tree list */ GroupExpandedCount = 0; // init GroupDisplayedCount = 0; for ( var i=0; i<AlertLupRecCount; i++) { if ( !checkIncludedWatch(i) ) { continue; } CCEs += "<table border='0' cellpadding='0' cellSpacing='0' width='490'><tr title='"+ AlertRec_Arr[(i*AlertRecLength)+2] +"'><td width='25'> </td>"; Iprefx = ( i+1 >= AlertLupRecCount ) ? "L" : "T"; CCEs += "<td width='19' align='center'><img id='lima" + GroupDisplayedCount + "' expanded='0' src='images/" + Iprefx + "plus.gif' style='cursor:hand' onclick='procGrpImgClick(this)' width='19' height='20'></td>"; CCEs += "<td width='19' align='center'><img id='limb" + GroupDisplayedCount + "' src='images/CloseImg.gif' style='cursor:hand' onclick='procGrpImgClick(this)' width='15' height='14' "; CCEs += "></td><td width='*' class='optext'>" + AlertRec_Arr[(i*AlertRecLength)+1] + "</td></tr></table>"; CCEs += "<div id='lexp" + GroupDisplayedCount + "' agix="+i+" compcount=0></div>"; LastGroupDisplayed = GroupDisplayedCount; ++GroupDisplayedCount; } if ( GroupDisplayedCount == 0 ) { CCEs += "<table border='0' cellpadding='0' cellSpacing='0' width='490'>"; CCEs += "<tr><td width='25'> </td>"; if ( RPRtyp == "[2]" ) { CCEs += "<td width='19' height='20' align='center'></td><td colspan='2' width='*' class='optextb'>No Watches/Alerts defined for the selected Watch/Alert Types</td></tr></table>"; } else { CCEs += "<td width='19' height='20' align='center'></td><td colspan='2' width='*' class='optextb'>No Watches/Alerts defined for the IP Service: "+ST+" </td></tr></table>"; } } else { if ( Iprefx == "T" ) { var lindx = CCEs.lastIndexOf("Tplus"); if ( lindx != -1 ) { var eCCE = CCEs.substring(0, lindx); eCCE += "L"; eCCE += CCEs.substring(lindx+1) CCEs = eCCE; } } } Op.insertAdjacentHTML("beforeEnd",CCEs); } function checkIncludedWatch(cindex) { var i = cindex; var CAT = AlertRec_Arr[(i*AlertRecLength)+3]; if ( RPRtyp == "[2]" ) { if ((Report_SWA.checked && CAT == "S") || (Report_SNMP.checked && CAT == "T") || (Report_EL.checked && CAT == "E") || (Report_WS.checked && CAT == "W") || (Report_SL.checked && CAT == "L") || (Report_FC.checked && CAT == "F") || (Report_PC.checked && CAT == "P") ) return true; } else { if ( CAT == "S" && checkServiceType( AlertRec_Arr[(i*AlertRecLength)] ) ) // Service type return true; } return false; } function checkServiceType(agid) { var ST = ServiceTypes[ServiceSelect.selectedIndex]; for ( var i=0; i<Services_Arr.length; i+= ServicesRecLength ) { if ( Services_Arr[i+1] == agid && Services_Arr[i+2] == ST ) { return true; } } return false; } /* Display Header for Service and Object:Counter Trees */ function setOutHeader(Tstrg) { CCEs = "<table border='0' cellpadding='0' cellSpacing='0' width='490'>"; CCEs += "<tr><td width='25'> </td>"; CCEs += "<td width='19' height='20' align='center'><img src='images/topopen.gif' width='19' height='20'></td><td colspan='2' width='*' class='optextb'>" + Tstrg + "</td></tr></table>"; } // Process Click on Group in Group Tree var CurExpGroupIx = null; // Index to Current Expanded Group var CurCmpIx = 0; var CmpsExpected = 0; var CSortArr = new Array(); var EOBj = null; function procGrpImgClick(SIm) { isx = SIm.id; if ( isx.charAt(0) != "l" ) { // if not a "limaxx" top.banner.beep(); return; } var cx = isx.substring(4,isx.length); // Strip off index CurExpGroupIx = parseInt(cx,10); CObj = document.all["lima"+cx]; EObj = document.all["lexp"+cx]; FObj = document.all["limb"+cx]; Cpfx = (CurExpGroupIx == LastGroupDisplayed) ? "L" : "T"; if ( CObj.expanded == "1" ) { // if currently expanded FObj.src = "images/CloseImg.gif"; CObj.src = "images/" + Cpfx + "plus.gif"; EObj.style.display = "none"; CObj.expanded = "0"; // Set contracted GroupExpandedCount -= EObj.compcount; // decrement count of open computers } else { // otherwise Expand FObj.src = "images/OpenImg.gif"; CCEs = ""; // initialize CObj.src = "images/" + Cpfx + "minus.gif"; CObj.expanded = "1"; // Set expanded if ( EObj.compcount == 0 ) { CmpsExpected = CurCmpIx = 0; // initialize var AGID = AlertRec_Arr[(EObj.agix*AlertRecLength)]; // get Alert Group ID var AGType = AlertRec_Arr[(EObj.agix*AlertRecLength)+3]; // get Alert Group Type // Add Computers to the Tree for This Alert Group CSortArr.length = 0; // reset switch ( AGType ) { case "S" : // Find each service that matches Alert Group ID for ( var i=0; i<Services_Arr.length; i+= ServicesRecLength ) { if ( Services_Arr[i+1] == AGID ) { // Get computer ID from Service entry for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { // if match on Computer ID if ( Services_Arr[i] == AR_CmpStoreArr[j+3] ) { CSortArr[CmpsExpected++] = AR_CmpStoreArr[j].toLowerCase()+"~"+j; break; } } } } break; case "L" : // Find each Syslog Check that matches Alert Group ID for ( var i=0; i<SyslogCheck_Arr.length; i+= SyslogCheckRecLength ) { if ( SyslogCheck_Arr[i+1] == AGID ) { // Get computer ID from entry for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { // if match on Computer ID if ( SyslogCheck_Arr[i] == AR_CmpStoreArr[j+3] ) { CSortArr[CmpsExpected++] = AR_CmpStoreArr[j].toLowerCase()+"~"+j; break; } } } } break; case "F" : // Find each File Check that matches Alert Group ID for ( var i=0; i<FileCheck_Arr.length; i+= FileCheckRecLength ) { if ( FileCheck_Arr[i+1] == AGID ) { // Get computer ID from entry for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { // if match on Computer ID if ( FileCheck_Arr[i] == AR_CmpStoreArr[j+3] ) { CSortArr[CmpsExpected++] = AR_CmpStoreArr[j].toLowerCase()+"~"+j; break; } } } } break; case "P" : // Find each Process Check that matches Alert Group ID for ( var i=0; i<ProcessCheck_Arr.length; i+= ProcessCheckRecLength ) { if ( ProcessCheck_Arr[i+1] == AGID ) { // Get computer ID from entry for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { // if match on Computer ID if ( ProcessCheck_Arr[i] == AR_CmpStoreArr[j+3] ) { CSortArr[CmpsExpected++] = AR_CmpStoreArr[j].toLowerCase()+"~"+j; break; } } } } break; case "W" : // Find each WinService Check that matches Alert Group ID for ( var i=0; i<WinSCheck_Arr.length; i+= WinSCheckRecLength ) { if ( WinSCheck_Arr[i+1] == AGID ) { // Get computer ID from entry for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { // if match on Computer ID if ( WinSCheck_Arr[i] == AR_CmpStoreArr[j+3] ) { CSortArr[CmpsExpected++] = AR_CmpStoreArr[j].toLowerCase()+"~"+j; break; } } } } break; case "T" : // Find each SNMPTRap Check that matches Alert Group ID for ( var i=0; i<SNMPCheck_Arr.length; i+= SNMPCheckRecLength ) { if ( SNMPCheck_Arr[i+1] == AGID ) { // Get computer ID from entry for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { // if match on Computer ID if ( SNMPCheck_Arr[i] == AR_CmpStoreArr[j+3] ) { CSortArr[CmpsExpected++] = AR_CmpStoreArr[j].toLowerCase()+"~"+j; break; } } } } break; case "E" : // Find each EventLog Check that matches Alert Group ID for ( var i=0; i<EventLCheck_Arr.length; i+= EventLCheckRecLength ) { if ( EventLCheck_Arr[i+1] == AGID ) { // Get computer ID from entry for ( var j=0; j<AR_CmpStoreArr.length; j+=CmpRecLth ) { // if match on Computer ID if ( EventLCheck_Arr[i] == AR_CmpStoreArr[j+3] ) { CSortArr[CmpsExpected++] = AR_CmpStoreArr[j].toLowerCase()+"~"+j; break; } } } } break; } CSortArr.sort(); var warr = new Array(); for ( var i=0, j=0; i<CmpsExpected; i++ ) { warr = CSortArr[i].split("~"); j = parseInt(warr[1],10); processTreeComputer(j,AGID,AGType); } var lindx = CCEs.lastIndexOf("T.gif"); if ( lindx != -1 ) { var eCCE = CCEs.substring(0, lindx); eCCE += "L"; eCCE += CCEs.substring(lindx+1) CCEs = eCCE; } EObj.compcount = CmpsExpected; // set number computers opened EObj.insertAdjacentHTML("beforeEnd",CCEs); } GroupExpandedCount += EObj.compcount; // increment total number of computers opened EObj.style.display = ""; CObj.scrollIntoView(true); } // enable SelectAll/UnselectAll buttons if computers opened checkSelUnselButtons(); } function processTreeComputer(CSIx,AGID,AGType) { var CmpID = AR_CmpStoreArr[CSIx+3]; var CmpNme = AR_CmpStoreArr[CSIx]; var CmpDesc = AR_CmpStoreArr[CSIx+2]; var SState = AR_CmpStoreArr[CSIx+5]; var Opfx = (CurExpGroupIx == LastGroupDisplayed) ? "White" : "I"; var Mpfx = "T"; CCEs += "<table border='0' cellpadding='0' cellSpacing='0' width='490'>"; CCEs += "<tr><td width='25'> </td><td width='19' height='20' align='center'><img src='images/" + Opfx + ".gif' width='19' height='20'></td>"; CCEs += "<td width='19' height='20' align='center'><img src='images/" + Mpfx + ".gif' width='19' height='20'></td>"; CCEs += "<td width='11' align='center'><img id='xima" + CurExpGroupIx + "_" + CurCmpIx; CCEs += "' checked='0' src='images/"; CCEs += "Unchecked.gif' width='9' height='9'"; CmpImg = "Computer.gif"; //} CCEs += " compix='" +CSIx+"' cmpid='"+CmpID+"' agid='"+AGID+"' agt='"+AGType+"' style='cursor:hand' onclick='procELCmpImgClick(this)'></td>"; CCEs += "<td width='19' align='center'><img id='zimb" + CurExpGroupIx + "_" + CurCmpIx + "' src='images/"+CmpImg+"' style='cursor:hand' onclick='procELCmpImgClick(this)' width='15' height='16' title='"; CCEs += CmpDesc + "'></td>"; CCEs += "<td width='*' id='zimc" + CurExpGroupIx + "_" + CurCmpIx; CCEs += "' style='cursor:hand' onclick='procELCmpImgClick(this)' class='optext'>" + CmpNme + "</td>"; CCEs += "</tr></table>"; ++CurCmpIx; // bump index } /* Process Click to Check or Uncheck a Computer */ function procELCmpImgClick(CmpIm) { var isx = CmpIm.id; if ( isx.charAt(0) != "x" && isx.charAt(0) != "z") return; var cx = isx.substring(4,isx.length); // Strip off index lx = cx.lastIndexOf("_"); // derive suffix to the Computer DIV ID var dx = cx.substring(0,lx); var CObj = document.all["xima"+cx]; // Clicked Computer Entry var FObj = document.all["zimb"+cx]; CSIx = parseInt(CObj.compix,10); if ( CObj.checked == "1" ) { // if currently Checked, Uncheck FObj.src = "images/Computer.gif"; CObj.src = "images/Unchecked.gif"; CObj.checked = "0"; // Set Unchecked AR_CmpStoreArr[CSIx+5] = "0"; } else { // otherwise Check FObj.src = "images/sAdminServers.gif"; CObj.src = "images/Checked.gif"; CObj.checked = "1"; // Set Checked AR_CmpStoreArr[CSIx+5] = "1"; } } // Process SelectALL or UnselectALL function processSelect(Pflg) { var GObj = null, CObj = null; // Look for each open/expanded Group for ( var i=0; i<GroupDisplayedCount; i++ ) { GObj = document.all["lima"+i]; if ( GObj.expanded == "1" ) { GObj = document.all["lexp"+i]; // if Group expanded, process each computer for ( var j=0; j<GObj.compcount; j++ ) { CObj = document.all["xima"+i+"_"+j]; // computer entry in tree if (CObj.checked == Pflg) { procELCmpImgClick(CObj); // go process } } } } } function processGroupChoice(type) { PopUpGroup.style.display = ""; //AR_RptSel.style.display="none"; SpecDTDD.style.display="none"; SpecDurDD.style.display="none"; SpecRunDD.style.display="none"; sButtonState(RScheduleButton,"1"); Group_Data.innerHTML = ""; var ridx = ReportRecLength * RptSelectIdx; // Index to Store for current Selected RPRtyp = (AR_RptStoreArr[ridx+6] == "3") ? "[3]" : "[4]"; var CCEs = ""; for ( var i=0, j=0; j<GrpLupRecCount; ++j, i+=GroupRecLength ) { CCEs += "<table border='0' cellpadding='1' cellSpacing='0' width='460'><tr>"; CCEs += "<td width='10'></td><td width='11' align='center'><img id='grp_chk"+j; CCEs += "' checked='0' src='images/Unchecked.gif'"; CCEs += "style='cursor:hand' onclick='procGroupCmpImgClick(this)' width='9' height='9'></td>"; CCEs += "<td width='*' id='grp_nme"+j; CCEs += "' style='cursor:hand' onclick='procGroupCmpImgClick(this)' class='optext'> " + AR_GrpStore.options[i].text+" ( "+AR_GrpStore.options[i+2].text+" )" + "</td>"; CCEs += "</tr></table>"; } Group_Data.style.overflow = ( j > 14 ) ? "scroll" : ""; Group_Data.insertAdjacentHTML("beforeEnd",CCEs); } function processGroup_OK() { var ST = ""; for ( var i=0, j=0; i<GrpLupRecCount; ++i, j+=GroupRecLength ) { if ( document.all["grp_chk"+i].checked == "1" ) { if ( ST != "" ) ST += ","; ST += AR_GrpStore.options[j+1].text; // ID } } /*if ( ST == "" ) { alert("Please Specify at least one Group for the Report"); return; }*/ STParm = RPRtyp+","+ST; processGroup_Cancel(); } function processGroup_Cancel() { PopUpGroup.style.display = "none"; //AR_RptSel.style.display=""; SpecDTDD.style.display=""; SpecDurDD.style.display=""; SpecRunDD.style.display=""; checkEnableSchedButton(); if ( AR_RptSel.style.visibility != "hidden" ) { AR_RptSel.focus(); } } /* Process Click to Check or Uncheck an OID */ function procGroupCmpImgClick(CmpIm) { isx = CmpIm.id; if ( isx.charAt(0) != "g") return; var cx = isx.substring(7,isx.length); // Strip off index var CObj = document.all["grp_chk"+cx]; // Clicked Check box if ( CObj.checked == "1" ) { // if currently Checked, Uncheck CObj.src = "images/Unchecked.gif"; CObj.checked = "0"; // Set Unchecked } else { // otherwise Check CObj.src = "images/Checked.gif"; CObj.checked = "1"; // Set Checked } }