package utilities; import java.io.*; import java.util.HashMap; import java.util.Iterator; import java.util.ListIterator; import java.util.TreeSet; import java.util.Collection; import java.util.StringTokenizer; import java.util.LinkedList; public class HTMLUtils { public static void printExpireTags(PrintWriter out) throws IOException { out.println(""); out.println(""); out.println(""); } public static void printRedirectPage(PrintWriter out, String msg, String url) throws IOException { printExpireTags(out); out.println(""); out.println("Redirection Page"); out.println(""); out.println(""); out.println(""); out.println(""); out.println(msg + "
"); out.println("You should be automatically redirected to an appropriate page in a few seconds.
"); out.println("If you are not automatically redirected, click here."); out.println("
"); } public static void printHeader(PrintWriter out, String title) throws IOException { printExpireTags(out); out.println(""); out.println(title); out.println(""); out.println(""); out.println(""); } public static void printAdminHeader(PrintWriter out) throws IOException { printExpireTags(out); out.println("Student Advisement System Administration"); out.println(""); out.println(""); out.println(""); out.println(""); out.println("
"); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println(""); out.println("
"); out.println("Student Advisement System Administration"); out.println("

Main Menu "); out.println("Help Log Out


"); out.println("
"); out.println(""); } public static void printAdminFooter(PrintWriter out) throws IOException { printExpireTags(out); out.println("

"); out.println("
"); out.println("
"); out.println("
"); out.println(""); out.println(""); } public static void printTable(PrintWriter out, Collection format) throws IOException { Iterator iter = format.iterator(); boolean nextIsHeader = false; boolean isFirstTable = true; out.println("
"); while(iter.hasNext()) { String line = (String) iter.next(); StringTokenizer k = new StringTokenizer(line, "|"); LinkedList ll = new LinkedList(); while(k.hasMoreTokens()) ll.addLast(k.nextToken()); if(ll.isEmpty()) continue; ListIterator llIter = ll.listIterator(); String elem = (String) llIter.next(); if(elem.equals("*") && ll.size() == 3) { if(!isFirstTable) { out.println(""); out.println("

"); } else isFirstTable = false; elem = (String) llIter.next(); out.println("

"); out.println("

" + elem + "

"); elem = (String) llIter.next(); nextIsHeader = elem.equals("y"); out.println(""); continue; } else llIter.previous(); out.println(""); int i=0; String colors[] = { "cfcfcf", "efefef" }; while(llIter.hasNext()) { if(nextIsHeader) out.print(""); out.print(llIter.next()); if(nextIsHeader) out.println(""); else out.println(""); i = (i == 0) ? 1 : 0; } nextIsHeader = false; out.println(""); } out.println("
"); } public static void printSelect(PrintWriter out, String description, String name, HashMap options, String defSelection) throws IOException { out.println(description + "
"); out.println(""); } public static void printTextBox(PrintWriter out, String type, String description, String name, String sideText, String size, String maxSize) throws IOException { out.println(description + "
"); out.print(""); if(sideText != null) out.println(sideText); else out.println(); } public static void printFooter(PrintWriter out) throws IOException { out.println("
"); out.println(" Click here to logout
"); out.println("
"); out.println(""); } public static void printError(PrintWriter out, String errorMsg) throws IOException { out.println("

"); out.println("An error occured while processing your request:
"); out.println(errorMsg); out.println("
"); } public static void printException(PrintWriter out, Exception e) throws IOException { if(out == null) return; StackTraceElement[] ste = e.getStackTrace(); out.println("

"); out.println("An error occured while processing your request:
"); out.println(e.getMessage()); out.println("
"); for(int i=0; i < ste.length; ++i) { out.print(ste[i].toString()); out.println("
"); } } }