/* ** 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("
"); bd .addItem(SimpleItem.LineBreak) .addItem(new Hidden("uid",uid)) .addItem(new Submit("submit", "Logout")) .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()); } } }