%@ page isThreadSafe="false" %><%@ include file="globalPaths.jsp" %><%@ include file="globalDefinitions.jsp" %><% boolean done = false; String message = ""; String url = ""; boolean err = false; String errText = null; String senderEmail = ""; String steps = null; String exampleSteps = "\nError message: [please paste error message]\n\n" + "Steps to reproduce: [describe what led to error]\n Example:\n 1) open page A \n 2) hit button B,\n 3) it will display C instead of D"; boolean enableCaptcha=true; String captchaResponseToken = request.getParameter("resptoken"); if ("Done".equals(request.getParameter("submit"))) { url = request.getParameter("url"); if (url == null || url.length() == 0) url = globalSite; sendRedirect(response.encodeRedirectUrl(url)); return; } String remoteIP = "UndefinedIP"; if (request.getRemoteAddr() != null) { remoteIP = request.getRemoteAddr(); } if ("Send".equals(request.getParameter("submit"))) { String mes = null; mes = request.getParameter("message"); setParameter("messageSession", mes); String uryl = null; uryl = request.getParameter("url"); setParameter("urlSession", uryl); steps = request.getParameter("steps"); setParameter("steps", steps); senderEmail = request.getParameter("senderEmail"); setParameter("senderEmail", senderEmail); if (steps == null || "".equals(steps.trim())) { err = true; errText = "Please specify how to reproduce the problem."; } if (steps.indexOf("it will display C instead of D") != -1) { // User did not specify stepst to reproduce the problem steps = ""; } if (uryl == null || "".equals(uryl.trim())) { err = true; errText = "Please specify the URL of the page where you are having trouble."; } if (mes == null || "".equals(mes.trim())) { err = true; errText = "Please specify the exact text of the error message."; } url = globalSite; if (getParameter("logged")!=null && !"null".equals(getParameter("logged"))) { url = globalSecurePrefix + response.encodeUrl("accountArtist.jsp"); } if (enableCaptcha) { if (captchaResponseToken == null) { throw new UserInputException("Missing required captcha parameter"); } boolean flag = verifyCaptchaResponse(captchaResponseToken, remoteIP, null); if (!flag) { err = true; errText = "\"I'm not a robot\" challenge failed"; } } if (!err) { plainContent="Problem reported by user:\n"; plainContent+="\nError message: "+request.getParameter("message"); plainContent+="\nProblem url: "+request.getParameter("url"); plainContent+="\nActions: " + steps; plainContent+="\nPlatform: "+request.getParameter("platform"); plainContent+="\nBrowser: "+request.getParameter("browser"); if (getParameter("logged")!=null) { plainContent+="\n\nArtist Info:" + "\nid: " + getParameter("loggedartist") + "\nName: "+getParameter("loggedartistname") + "\nPackage: "+packageToString(getParameter("loggedartistpack")); } plainContent+="\nEmail: "+senderEmail; message = "
Thank you for filling out MesArt Problem report.
" + "Your report has been submitted to MesArt staff. Don't hesitate to" + " write to us if you'll notice anything else that needs improvement.
"; if (!send(htmlContent, plainContent,companyName,contactUsEmail,"Problem report", "MesArt Admin Notification", contactUsEmail, devEmail)) { // Error will be logged inside send function message="There was a problem sending your report to MesArt.
" + "
Please send it to us via email at support@mesart.com.
" + "We apologize for the inconvenience.
"; } done = true; } } else { // Form not yet submitted. Set default values. steps = exampleSteps; if (getParameter("logged")!=null) { senderEmail = (String)session.getAttribute("loggedartistemail"); } } %>
|
|