%@ page language="java"
import="java.sql.*, java.io.*, java.util.*, users.databases.*"
errorPage="error.jsp"
%>
<%
/***** VARIABLE DECLARATION and INITIALIZATION *****/
boolean withError = false;
String strMainDB = "product_pgpClientInfoDB";
String strSubTitle = "", strCompanyName = "", strPrevBtn = "", strNextBtn = "", strCPTitle = "";
String [] arrCPID, arrCPFName, arrCPLName, arrCPPos, arrCPDept, arrCPEMail;
String [] arrCPTArea, arrCPTNum, arrCPTLoc;
int intArrayLength = 0; // USE FOR DEFINING ARRAY LENGTH
int batchModifier = 2; // IF EQUAL TO UNITS OF LAST BATCH, IT'LL BE COMBINED WITH SECOND TO LAST BATCH
int batchMaxUnit = 5; // MAXIMUM NUMBER OF CONTACT PERSONS THAT WOULD BE DISPLAYED PER PAGE
int ctr = 0, total = 0; // USE FOR COUNTING TOTAL NUMBER CONTACT PERSONS
String strPageID = "memcpeditj"; // USE TO IDENTIFY MESSAGE ON tmpTblMessages IF BELONGS TO THIS PAGE
String strTableName = "tblOtherCPs";
int intUserID = Integer.parseInt(request.getParameter("uid"));
int intCompanyID = Integer.parseInt(request.getParameter("cid"));
byte bytDeptID = Byte.parseByte(request.getParameter("did"));
int intBegPoint = Integer.parseInt(request.getParameter("p1"));
int intEndPoint = Integer.parseInt(request.getParameter("p2"));
int intP1 = intBegPoint;
int intP2 = intEndPoint;
/***** END OF VARIABLE DECLARATION *****/
String SQLstmt = "SELECT LogOnStatus FROM tblLogOn WHERE Usr_ID=" + intUserID + ";";
users.connect(strMainDB);
ResultSet rs = users.listQuery(SQLstmt);
byte bytLogStatus = 0;
while (rs.next()) {
bytLogStatus = rs.getByte("LogOnStatus");
}
if (bytLogStatus != 1) { // LOG CHECK RESULT - LOG-OUT, DISPLAYS HOME PAGE
%>
<%
} else { // LOG CHECK RESULT - LOG-ON, PROCEED DISPLAYING ACTUAL PAGE
SQLstmt = "SELECT Co_Name FROM tblCompanyInfo WHERE Co_ID=" + intCompanyID + ";";
rs = users.listQuery(SQLstmt);
while (rs.next()) { // GET NAME OF COMPANY
strCompanyName = rs.getString("Co_Name");
}
SQLstmt = "SELECT * FROM tmpTblMessages WHERE Usr_ID=" + intUserID + " AND Co_ID=" + intCompanyID +
" AND Page_ID='" + strPageID + "';";
rs = users.listQuery(SQLstmt);
while (rs.next()) {
strSubTitle = rs.getString("Message");
ctr++;
}
if (ctr != 0) { // A MESSAGE INTENDED FOR THIS PAGE WAS FOUND ON tmpTblMessages
withError = true;
strTableName = "tmpTblOtherCPs";
intBegPoint = 0;
intEndPoint = batchMaxUnit;
strCPTitle = "CONTACT PERSON ";
}
ctr = 0;
SQLstmt = "SELECT * FROM " + strTableName + " WHERE Co_ID=" + intCompanyID + " ORDER BY CPx_ID;";
rs = users.listQuery(SQLstmt);
while (rs.next()) {
ctr++; // COUNTS TOTAL NUMBER OF CONTACT PERSONS
}
total = ctr;
if (intEndPoint > ctr) { // TOTAL CONTACT PERSONS TO BE DISPLAYED IS LESS THAN MAXIMUM
intArrayLength = ctr - intBegPoint;
} else {
if ((ctr-intEndPoint) <= batchModifier) {
intArrayLength = ctr - intBegPoint;
} else {
intArrayLength = intEndPoint - intBegPoint;
}
}
arrCPID = new String[intArrayLength];
arrCPFName = new String[intArrayLength];
arrCPLName = new String[intArrayLength];
arrCPPos = new String[intArrayLength];
arrCPDept = new String[intArrayLength];
arrCPTArea = new String[intArrayLength];
arrCPTNum = new String[intArrayLength];
arrCPTLoc = new String[intArrayLength];
arrCPEMail = new String[intArrayLength];
if (intBegPoint==0) { // NO PREVIOUS DATA TO DISPLAY
strPrevBtn = "";
} else { // PREVIOUS BUTTON IS ACTIVATED
strPrevBtn = "";
}
if (intEndPoint >= (ctr-batchModifier)) { // NO REMAINING DATA CAN BE DISPLAYED
strNextBtn = "";
} else { // NEXT BUTTON IS ACTIVATED
strNextBtn = "";
}
if (intBegPoint==0) { // SINCE RESULTSET METHOD ABSOLUTE DOES NOT WORK WITH VALUE EQUAL TO ZERO
rs.beforeFirst();
} else {
rs.absolute(intBegPoint);
}
ctr = 0;
while (rs.next()) {
arrCPID[ctr] = rs.getString("CPx_ID");
arrCPFName[ctr] = rs.getString("CPx_FirstN");
arrCPLName[ctr] = rs.getString("CPx_LastN");
arrCPPos[ctr] = rs.getString("CPx_Position");
arrCPDept[ctr] = rs.getString("CPx_Dept");
arrCPTArea[ctr] = rs.getString("CPx_TelArea");
arrCPTNum[ctr] = rs.getString("CPx_TelNum");
arrCPTLoc[ctr] = rs.getString("CPx_TelLocal");
arrCPEMail[ctr] = rs.getString("CPx_EMail");
ctr++;
if (ctr==(arrCPFName.length)) {
break;
}
}
users.disconnect();
if (withError) { // RETAINS VALUE FROM tmpTblMessages AS INITIALIZE ABOVE
} else if (arrCPFName.length>1) { // THERE ARE MORE THAN ONE CONTACT PERSON ENTRY
strSubTitle = "EDIT LIST OF ADDITIONAL CONTACT PERSONS";
} else { // CONTACT PERSON COUNT IS ONE
strSubTitle = "EDIT ADDITIONAL CONTACT PERSON";
}
/***** MERGING WITH MAIN HTML CODES STARTS HERE *****/
%>