/*
** List all classes for adminstrator to verify class/course
** Class: VerifyClass
** Author: Yuping Zhu
** Date: 04-11-2000
** Modified by Jake Kim
** Date: 12-30-2000
*/
package ascdb.admin;
// import package java.sql to use JDBC
import java.sql.*;
// import oracle.html and javax.servlet package to generate dynamic HTML page
import oracle.html.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import ascdb.conf;
import ascdb.users.UserValidation;
import java.util.Calendar;
import java.text.SimpleDateFormat;
import java.util.TimeZone;
public class VerifyClass extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
{
// Output HTML page header
res.setContentType("text/html");
PrintWriter out = res.getWriter();
conf dbconf= new conf(req);
String uid = req.getParameter("uid");
UserValidation UserV = new UserValidation();
try {
HtmlStringBuffer HTMLBuf = new HtmlStringBuffer();
HTMLBuf.appendln("");
HTMLBuf.appendln("
");
HTMLBuf.appendln("Class Verification");
//Create a JavaScript Object
Script js = new Script("JavaScript");
js.setCode("function LogoutConfirm(frm) {\n"
+ " if (confirm(\"Are you sure you want to logout TMD?\")) {\n"
+ " return true\n"
+ " }\n"
+ " return false\n"
+ " }\n");
HTMLBuf.append(js);
HTMLBuf.appendln("");
// Create an HtmlBody Object
HtmlBody bd = new HtmlBody();
// Sets various attributes of HtmlBody
bd.setBackgroundColor("#fffff2");
int TabRow = UserV.Validation(req);
if (TabRow != 7)
{
bd.addItem(new SimpleItem("You do not have this privilege!").setBold());
HTMLBuf.append(bd);
out.println(HTMLBuf);
return;
}
Font f = new Font(Color.olive,"myfont","+5");
bd
.addItem(new SimpleItem(f.toHTML()))
.addItem(new SimpleItem("Class Verification").setCenter())
//
.addItem(SimpleItem.HorizontalRule);
Font bf = new Font(Color.black,null,"+1");
bd.addItem(new SimpleItem(bf.toHTML()));
// Load the Oracle JDBC driver
Class.forName (dbconf.JdbcDriver);
// Connect to the database
Connection conn =
DriverManager.getConnection (dbconf.ConnectStr,dbconf.DBName,dbconf.DBPassword);
// Create a Statement
Statement stmt = conn.createStatement ();
// get class count
String QueryStr = "select count(*) from class_schedule where class_type='V'";
ResultSet tot = stmt.executeQuery(QueryStr);
int ClassTot = 0;
if (tot.next())
ClassTot = tot.getInt(1);
if (ClassTot == 0)
{
bd.addItem(new SimpleItem("No Class in Database").setBold().setCenter());
HTMLBuf.append(bd);
out.println(HTMLBuf);
return;
}
tot.close();
// Get all classes from Traning DB
String QueryString = "select class_id, course_num, class_start_date, duration, title from class_schedule where class_type='V' order by class_start_date desc";
// execute query
ResultSet rset = stmt.executeQuery (QueryString);
//Creates the table with 3 columns
DynamicTable tab = new DynamicTable(3);
tab.setBackgroundColor ("#EEEEFF");
tab.setBorderColor (Color.navy);
tab.setCellSpacing(2);
tab.setCellPadding(5);
TableRow[] rows = new TableRow[ClassTot + 1];
for(int i=0; i <= ClassTot; i++)
rows[i] = new TableRow();
rows[0]
.addCell(new TableDataCell(new SimpleItem("Date").setBold().setFontColor(Color.maroon).setCenter()))
.addCell(new TableDataCell(new SimpleItem("Course Number").setBold().setFontColor(Color.maroon).setCenter()))
.addCell(new TableDataCell(new SimpleItem("Title").setBold().setFontColor(Color.maroon).setCenter()));
//Create table by listing all course from courses
int i = 1;
String DateStr1;
String DateStr2;
// Calendar cld = new Calendar();
// Get Timezone
TimeZone tz = TimeZone.getTimeZone("EST");
// Format the current time.
SimpleDateFormat formatter
= new SimpleDateFormat ("MMM d");
formatter.setTimeZone(tz);
Calendar cld = Calendar.getInstance(tz);
while (rset.next())
{
cld.setTime(rset.getDate("class_start_date"));
DateStr1 = formatter.format(rset.getDate("class_start_date"));
cld.add(Calendar.DATE, rset.getInt("duration"));
DateStr2 = formatter.format(cld.getTime());
rows[i++]
.addCell(new TableDataCell(new SimpleItem(DateStr1 + " - " + DateStr2)))
.addCell(new TableDataCell(new Link("ascdb.classes.DoVerifyClass?cid=" + rset.getInt("class_id") + "&uid=" + uid + "&op=0", new SimpleItem(rset.getString("course_num")).setBold())))
.addCell(new TableDataCell(new SimpleItem(rset.getString("title")).setBold()));
}
bd.addItem(new SimpleItem("Total: " + ClassTot).setCenter().setItal().setFontColor(Color.orange).setBold());
// Add new row to table
for(i=0; i< ClassTot + 1; i++)
tab.addRow(rows[i]);
// Add the table to Html Body
bd.addItem(tab.setCenter());
bd
.addItem(SimpleItem.Paragraph)
.addItem(new SimpleItem("Click on Course Number to verify the class ...").setItal().setFontColor(Color.black))
.addItem(SimpleItem.Paragraph)
.addItem(SimpleItem.HorizontalRule)
.addItem(SimpleItem.Paragraph);
bd.addItem("");
// output HTML page
HTMLBuf.append(bd);
out.println(HTMLBuf);
}
catch(ClassNotFoundException e) {
out.println("Couldn't load database driver: " + e.getMessage());
}
catch (SQLException e) {
out.println(e.getMessage());
}
catch(Exception e) {
out.println(e.getMessage());
}
}
}