/** @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void addObject(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Connection c; PreparedStatement st; ResultSet set; String objName; int objTileSrc; int objXOff; int objYOff; int objWidth; int objHeight; String objDesc; int objId; int objAuth; Gson Gson; FormResponse resp; resp = null; c = null; st = null; set = null; Gson = new Gson(); try { // Verify we have authorization to do this! TODO: Set a special response code on authorization // failure. // Perform a quick, cursory validation resp = validateAddForm(request); if (!resp.isAccepted()) { resp.setResult("FAIL"); } else { // Apply parameters objName = request.getParameter("title"); objDesc = request.getParameter("desc"); objTileSrc = Integer.parseInt(request.getParameter("tileset")); objXOff = Integer.parseInt(request.getParameter("objXOff")); objYOff = Integer.parseInt(request.getParameter("objYOff")); objWidth = Integer.parseInt(request.getParameter("objWidth")); objHeight = Integer.parseInt(request.getParameter("objHeight")); // objAuth = (Integer) request.getSession().getAttribute("userid"); // TODO: Get the public flag System.out.println("Object name: '" + objName + "'"); // Generate the query c = DBResourceManager.getConnection(); st = c.prepareStatement(OBJTYPE_INSERT, PreparedStatement.RETURN_GENERATED_KEYS); st.setString(1, objName); st.setInt(2, objTileSrc); st.setInt(3, objXOff); st.setInt(4, objYOff); st.setInt(5, objWidth); st.setInt(6, objHeight); st.setString(7, objDesc); st.execute(); set = st.getGeneratedKeys(); // Grab the generated key if (set.next()) { objId = set.getInt(1); resp.setResult("OK"); resp.addParamResult("objId", "VALUEUP:" + objId); // Send the OK. Note that Dojo requires us to wrap the response // in an html doc's text area for max. compatibility. } else { System.out.println("Failure to create object."); resp.setResult("FAIL"); } } // Send the resposne object no matter what response .getWriter() .println("<html><body><textarea>" + Gson.toJson(resp) + "</textarea></html></body>"); } catch (Exception ex) { ex.printStackTrace(); if (resp == null) { resp = new FormResponse(); resp.setAcceptance(false); } resp.setResult("FAIL"); resp.addMessage(ex.toString()); response .getWriter() .println("<html><body><textarea>" + ex.toString() + "</textarea></html></body>"); } finally { DataTools.safeCleanUp(c, st, set); } }
// ***************************************************** // Process the request from Member_sheet // ***************************************************** // public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType("text/html"); PrintWriter out = resp.getWriter(); PreparedStatement pstmt3 = null; Statement stmt = null; ResultSet rs = null; HttpSession session = SystemUtils.verifyMem(req, out); // check for intruder if (session == null) { return; } Connection con = SystemUtils.getCon(session); // get DB connection if (con == null) { out.println(SystemUtils.HeadTitle("DB Connection Error")); out.println( "<BODY bgcolor=\"#ccccaa\"><CENTER><img src=\"/" + rev + "/images/foretees.gif\"><BR>"); out.println("<hr width=\"40%\">"); out.println("<BR><BR><H3>Database Connection Error</H3>"); out.println("<BR><BR>Unable to connect to the Database."); out.println("<BR>Please try again later."); out.println("<BR><BR>If problem persists, please contact customer support."); out.println("<BR><BR>"); out.println("<font size=\"2\">"); out.println("<form method=\"get\" action=\"javascript:history.back(1)\">"); out.println("<input type=\"submit\" value=\"Return\" style=\"text-decoration:underline;\">"); out.println("</form></font>"); out.println("</CENTER></BODY></HTML>"); out.close(); return; } // Create Json response for later use Gson gson_obj = new Gson(); // HashMap for later use by gson Map<String, Object> hashMap = new HashMap<String, Object>(); // Check if we will only be return json data boolean json_mode = (req.getParameter("jsonMode")) != null; // // See if we are here to VIEW a wait list // if (req.getParameter("view") != null && req.getParameter("waitListId") != null) { if (json_mode) { out.print(gson_obj.toJson(viewSignups(req, out, con, true))); } else { viewSignups(req, out, con); } return; } String jump = "0"; // jump index - default to zero (for _sheet) if (req.getParameter("jump") != null) { // if jump index provided jump = req.getParameter("jump"); } // // Get this session's username // String club = (String) session.getAttribute("club"); String user = (String) session.getAttribute("user"); String name = (String) session.getAttribute("name"); // get users full name String sindex = req.getParameter("index"); // index value of day (needed by Member_sheet when returning) String course = req.getParameter("course"); // Name of Course String id = req.getParameter("waitListId"); // uid of the wait list we are working with String returnCourse = ""; if (req.getParameter("returnCourse") != null) { // if returnCourse provided returnCourse = req.getParameter("returnCourse"); } String sdate = req.getParameter("date"); // date of the request (yyyymmdd) String day_name = req.getParameter("day"); // name of the day String p5 = req.getParameter("p5"); // 5-somes supported int index = 0; int wait_list_id = 0; int count = 0; int mm = 0; int dd = 0; int yy = 0; int date = 0; int time = SystemUtils.getTime(con); // // Convert the values from string to int // try { wait_list_id = Integer.parseInt(id); index = Integer.parseInt(sindex); date = Integer.parseInt(sdate); } catch (NumberFormatException e) { } // get our date parts yy = date / 10000; mm = date - (yy * 10000); dd = mm - (mm / 100) * 100; mm = mm / 100; // // parm block to hold the wait list parameters // parmWaitList parmWL = new parmWaitList(); // allocate a parm block parmWL.wait_list_id = wait_list_id; try { getWaitList.getParms(con, parmWL); // get the wait list config // if members can see the wait list then get the count if (parmWL.member_view == 1) { count = getWaitList.getListCount(wait_list_id, date, index, time, true, con); } } catch (Exception exp) { out.println(exp.getMessage()); } int onlist = 0; try { onlist = getWaitList.onList(user, wait_list_id, date, con); } catch (Exception exp) { out.println(exp.toString()); } String waitlist_notice = ""; if (onlist == 0) { // not on the list try { // out.println("<pre>"); waitlist_notice = getWaitList.getNotice(wait_list_id, con); // out.println("</pre>"); } catch (Exception exp) { } } if (json_mode) { // If in json mode, add data to hashmap // New skin uses Member_waitlist in json mode exclusively. // Group the data we want to send to javascript in a hash map hashMap.put("wait_list_id", wait_list_id); hashMap.put("waitlist_notice", waitlist_notice); hashMap.put("date", "" + mm + "/" + dd + "/" + yy); hashMap.put("start_time", SystemUtils.getSimpleTime(parmWL.start_time)); hashMap.put("end_time", SystemUtils.getSimpleTime(parmWL.end_time)); hashMap.put("member_access", parmWL.member_access); hashMap.put("member_view", parmWL.member_view); hashMap.put("onlist", onlist); hashMap.put("index", index); hashMap.put("course", course); hashMap.put("count", count); hashMap.put("name", parmWL.name); out.print(gson_obj.toJson(hashMap)); return; } else { // If not in json mode, output data directly to user out.println( "<!-- wait_list_id=" + wait_list_id + ", date=" + date + ", count=" + count + " -->"); // // ******************************************************************** // Build a page to display Wait List details to member // ******************************************************************** // out.println("<html>"); out.println("<head>"); out.println( "<link rel=\"stylesheet\" href=\"/" + rev + "/web utilities/foretees2.css\" type=\"text/css\">"); out.println("<title>Member Wait List Registration Page</title>"); out.println("</head>"); out.println( "<body bgcolor=\"#ccccaa\" text=\"#000000\" link=\"#FFFFFF\" vlink=\"#FFFFFF\" alink=\"#FF0000\" topmargin=\"0\">"); out.println("<font face=\"Arial, Helvetica, Sans-serif\"><center>"); out.println( "<table border=\"0\" width=\"100%\" align=\"center\" valign=\"top\">"); // large table for // whole page out.println("<tr><td valign=\"top\" align=\"center\">"); out.println( "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"#336633\" align=\"center\" valign=\"top\">"); out.println("<tr><td align=\"left\" width=\"300\"> "); out.println("<img src=\"/" + rev + "/images/foretees.gif\" border=0>"); out.println("</td>"); out.println("<td align=\"center\">"); out.println("<font color=\"ffffff\" size=\"5\">Member Wait List Registration</font>"); out.println("</font></td>"); out.println("<td align=\"center\" width=\"300\">"); out.println("<font size=\"1\" color=\"#ffffff\">Copyright </font>"); out.println("<font size=\"2\" color=\"#ffffff\">© </font>"); out.println( "<font size=\"1\" color=\"#ffffff\">ForeTees, LLC <br> 2009 All rights reserved."); out.println("</font><font size=\"3\">"); out.println( "<br><br><a href=\"/" + rev + "/member_help.htm\" target=\"_blank\"><b>Help</b></a>"); out.println("</font></td>"); out.println("</tr></table>"); out.println("<br>"); out.println("<table border=\"1\" cols=\"1\" bgcolor=\"#f5f5dc\" cellpadding=\"3\">"); out.println("<tr>"); out.println("<td width=\"620\" align=\"center\">"); out.println("<font size=\"3\">"); out.println("<b>Wait List Registration</b><br></font>"); out.println("<font size=\"2\">"); out.println( "The golf shop is running a wait list " + ((index == 0) ? "today" : "on this day") + ". "); out.println( "The wait list you've selected is running from <nobr>" + SystemUtils.getSimpleTime(parmWL.start_time) + "</nobr> till <nobr>" + SystemUtils.getSimpleTime(parmWL.end_time) + ".</nobr> "); out.println("Review the information below and click on 'Continue With Request' to continue."); out.println( "<br>OR click on 'Cancel Request' to delete the request. To return without changes click on 'Go Back'."); // out.println("<br><br><b>NOTE:</b> Only the person that originates the request will be // allowed to cancel it or change these values."); out.println("</font></td></tr>"); out.println("</table>"); out.println("<br><br>"); out.println("<table border=0>"); out.println("<tr><td><font size=\"2\">"); out.println( "Date: <b>" + day_name + " " + mm + "/" + dd + "/" + yy + "</b></td>"); out.println("<td> </td><td>"); if (!course.equals("")) { out.println("<font size=\"2\">Course: <b>" + course + "</b></font>"); } out.println("</td></tr>"); out.println( "<tr><td><font size=\"2\">Wait List: <b>" + SystemUtils.getSimpleTime(parmWL.start_time) + " to " + SystemUtils.getSimpleTime(parmWL.end_time) + "</b></font></td>"); out.println("<td></td>"); out.println("<td><font size=\"2\">Signups:<b>"); out.print(((parmWL.member_view == 1) ? count : "N/A")); out.println("</b></font></td>"); out.println("</table>"); out.println("<br>"); out.println("<table border=\"0\" align=\"center\">"); // table to contain 2 tables below out.println("<tr>"); out.println("<td align=\"center\" valign=\"top\">"); out.println( "<table border=\"1\" bgcolor=\"#f5f5dc\" align=\"center\" width=\"500\" cellpadding=\"5\" cellspacing=\"5\">"); // table for request details out.println("<tr bgcolor=\"#336633\"><td align=\"center\">"); out.println("<font color=\"ffffff\" size=\"3\">"); out.println( "<b>" + ((!parmWL.name.equals("")) ? parmWL.name : "Wait List Information") + "</b>"); out.println("</font></td></tr>"); out.println("<tr>"); out.println("<form action=\"Member_waitlist_slot\" method=\"post\">"); out.println("<input type=\"hidden\" name=\"waitListId\" value=\"" + wait_list_id + "\">"); out.println("<input type=\"hidden\" name=\"sdate\" value=\"" + date + "\">"); out.println("<input type=\"hidden\" name=\"day\" value=\"" + day_name + "\">"); out.println("<input type=\"hidden\" name=\"index\" value=\"" + sindex + "\">"); out.println("<input type=\"hidden\" name=\"course\" value=\"" + course + "\">"); out.println("<input type=\"hidden\" name=\"returnCourse\" value=\"" + returnCourse + "\">"); out.println("<input type=\"hidden\" name=\"jump\" value=\"" + jump + "\">"); out.println("<td><font size=\"2\"><br>"); // see if they are already on the wait list out.println("<input type=\"hidden\" name=\"signupId\" value=\"" + onlist + "\">"); if (onlist == 0) { // not on the list // out.println("The golf shop is running a wait list " + ((index == 0) ? "today": "on this // day") + ". "); // out.println("The wait list you've selected is running from " + // SystemUtils.getSimpleTime(parmWL.start_time) + " till " + // SystemUtils.getSimpleTime(parmWL.end_time) + ". "); // try { // out.println("<pre>"); // out.print(getWaitList.getNotice(wait_list_id, con)); // out.println("</pre>"); out.print(waitlist_notice); // } catch (Exception exp) { } if (parmWL.member_access == 1) { out.println( "<br><p align=center><input type=submit value=\"Continue With Sign-up\" name=\"continue\"></p>"); } else { out.println("<p align=center><b>Contact the golf shop to get on the wait list.</b></p>"); } } else { // already on this list out.println( "<p align=center><b><i>You are already signed up for this wait list.</b></i></p>"); if (parmWL.member_access == 1) { out.println( "<br><p align=center><input type=submit value=\"Modify Your Sign-up\" name=\"continue\"></p>"); } else { out.println( "<p align=center><b>Contact the golf shop to make changes or cancel your entry.</b></p>"); } } if (parmWL.member_view == 1 && count > 0) { out.println( "<p align=center><input type=button value=\"View Wait List\" name=\"view\" onclick=\"document.forms['frmView'].submit();\"></p>"); } out.println("<br></font></td>"); out.println("</table>"); out.println("</form>"); out.println("<br>"); if (index == 999) { // out.println("<form action=\"Member_teelist\" method=\"GET\">"); out.println("<form action=\"/" + rev + "/member_teemain.htm\" method=\"GET\">"); } else if (index == 995) { // out.println("<form action=\"Member_teelist_list\" method=\"GET\">"); out.println("<form action=\"/" + rev + "/member_teemain2.htm\" method=\"GET\">"); } else { out.println("<form action=\"Member_jump\" method=\"POST\">"); out.println("<input type=\"hidden\" name=\"jump\" value=" + jump + ">"); out.println("<input type=\"hidden\" name=\"index\" value=" + index + ">"); out.println( "<input type=\"hidden\" name=\"course\" value=\"" + ((!returnCourse.equals("")) ? returnCourse : course) + "\">"); } out.println("<font size=2>Return w/o Changes:</font><br>"); out.println("<input type=\"submit\" value=\"Go Back\" name=\"cancel\"></form>"); out.println("<form action=\"Member_waitlist\" method=\"GET\" name=frmView>"); out.println("<input type=\"hidden\" name=\"view\" value=\"current\">"); out.println("<input type=\"hidden\" name=\"waitListId\" value=\"" + wait_list_id + "\">"); out.println("<input type=\"hidden\" name=\"sdate\" value=\"" + date + "\">"); out.println("<input type=\"hidden\" name=\"name\" value=\"" + parmWL.name + "\">"); // out.println("<input type=\"hidden\" name=\"day\" value=\"" + day_name + "\">"); out.println("<input type=\"hidden\" name=\"index\" value=\"" + sindex + "\">"); out.println("<input type=\"hidden\" name=\"course\" value=\"" + parmWL.course + "\">"); out.println("<input type=\"hidden\" name=\"returnCourse\" value=\"" + returnCourse + "\">"); out.println("<input type=\"hidden\" name=\"jump\" value=\"" + jump + "\">"); ; out.println( "<input type=\"hidden\" name=\"start_time\" value=\"" + parmWL.start_time + "\">"); out.println("<input type=\"hidden\" name=\"end_time\" value=\"" + parmWL.end_time + "\">"); out.println("<input type=\"hidden\" name=\"day_name\" value=\"" + day_name + "\">"); // out.println("<input type=submit value=\"View Sign-ups\" name=\"view\">"); out.println("</form>"); } // end json check } // end doPost