All pastes #1848211 Raw Edit

anon

public text v1 · immutable
#1848211 ·published 2010-03-21 15:22 UTC
rendered paste body
# This patch file was generated by NetBeans IDE# This patch can be applied using context Tools: Apply Diff Patch action on respective folder.# It uses platform neutral UTF-8 encoding.# Above lines and this line are ignored by the patching process.9,12c9,18< import java.util.Date;< import java.util.HashMap;< import java.util.Locale;< import java.util.Map;---> import ch.epfl.kis.polywiki.model.*;> import ch.epfl.kis.polywiki.security.*;> import ch.epfl.kis.polywiki.service.*;> import ch.epfl.kis.polywiki.validator.*;> import com.baneo.core.jsp.taglib.*;> import com.baneo.core.util.*;> import com.baneo.core.validator.*;> import com.baneo.core.view.web.action.*;> import org.apache.struts.action.*;> import org.apache.struts.taglib.html.*;14,15c20,21< import javax.servlet.http.HttpServletRequest;< import javax.servlet.http.HttpServletResponse;---> import javax.servlet.http.*;> import java.util.*;17,36d22< import org.apache.struts.action.ActionForm;< import org.apache.struts.action.ActionForward;< import org.apache.struts.action.ActionMapping;< < import ch.epfl.kis.polywiki.model.Page;< import ch.epfl.kis.polywiki.model.Wiki;< import ch.epfl.kis.polywiki.security.SecurityService;< import ch.epfl.kis.polywiki.service.PDFService;< import ch.epfl.kis.polywiki.service.PDFServiceException;< import ch.epfl.kis.polywiki.service.PageService;< import ch.epfl.kis.polywiki.service.UrlService;< import ch.epfl.kis.polywiki.service.WikiService;< import ch.epfl.kis.polywiki.validator.PageValidator;< < import com.baneo.core.jsp.taglib.MessageTag;< import com.baneo.core.system.Message;< import com.baneo.core.util.HttpUtil;< import com.baneo.core.validator.Validator;< import com.baneo.core.view.web.action.ObjectInsertAction;< 46c32,33< public class PageInsertAction extends ObjectInsertAction {---> public class PageInsertAction extends ObjectInsertAction> {48d34< 51c37< 	private static final PDFService _pdfService = PDFService.instance();--->   public static int _reloadCount = 0;53,55c39,40< 	public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request,< 			HttpServletResponse response) throws Exception {< --->   public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception>   {58c43,44< 		if (wiki == null) {--->     if (wiki == null)>     {64,66c50,54< 		// Latex page => try to compile it first< 		if ("2".equals(request.getParameter("type"))) {< 			return compileLatex(mapping, form, request, response);--->     // check if the form was reloaded>     if (request.getParameter(Constants.TOKEN_KEY) != null && !isTokenValid(request))>     {>       _reloadCount++;>       return mapping.findForward("reload");72c60,62< 	protected void onInit(HttpServletRequest request, HttpServletResponse response) throws Exception {--->   protected void onInit(HttpServletRequest request, HttpServletResponse response) throws Exception>   {>     Map<String,String> values = new HashMap<String, String>();74,75d63< 		Map<String, String> values = new HashMap<String, String>();< 87c75,76< 	protected Validator getValidator(HttpServletRequest request, HttpServletResponse response) throws Exception {--->   protected Validator getValidator(HttpServletRequest request, HttpServletResponse response) throws Exception>   {88a78>     94,96c84,85< 	protected void insert(Object object, Validator validator, HttpServletRequest request, HttpServletResponse response)< 			throws Exception {< --->   protected void insert(Object object, Validator validator, HttpServletRequest request, HttpServletResponse response) throws Exception>   {97a87> 101,102c91,92< 	protected ActionForward getSuccessActionForward(ActionMapping mapping, HttpServletRequest request,< 			HttpServletResponse response) throws Exception {--->   protected ActionForward getSuccessActionForward(ActionMapping mapping, HttpServletRequest request, HttpServletResponse response) throws Exception>   {105c95,96< 		if (request.getParameter("saveAndClose") != null) {--->     if (request.getParameter("saveAndClose") != null)>     {107,109d97< 		} else {< 			response.sendRedirect(UrlService.getPageUpdateUrl(page, UrlService.ABSOLUTE_CONTEXT_PATH)< 					+ "&confirmation=common.page.save.confirmation.singular");110a99,102>     else>     {>       response.sendRedirect(UrlService.getPageUpdateUrl(page, UrlService.ABSOLUTE_CONTEXT_PATH) + "&confirmation=common.page.save.confirmation.singular");>     }114,121d105< < 	protected ActionForward compileLatex(ActionMapping mapping, ActionForm form, HttpServletRequest request,< 			HttpServletResponse response) throws Exception {< < 		if (!isTokenValid(request)) {< 			saveToken(request);< 			onInit(request, response);< 			return mapping.findForward(MAPPING_INIT);123,203d106< < 		// Validate the values< 		Validator validator = getValidator(request, response);< 		validator.validate();< 		Map values = validator.getValues();< 		Map errors = validator.getErrors();< < 		// Ensure that what the user entered in the form is displayed< 		request.setAttribute(ATTRIBUTE_VALUES, values);< < 		// If there is errors, prints them back to user.< 		if (errors.size() > 0) {< 			request.setAttribute(ATTRIBUTE_ERRORS, errors);< 			return mapping.findForward(MAPPING_ERROR);< 		} else {< < 			// try to compile the Latex document< 			Page tmpPage = (Page) validator.getObject();< < 			Page backup = new Page();< 			backup.setName(tmpPage.getName());< 			backup.setContent(tmpPage.getContent());< < 			// change name to trick PDFLatexWorker< 			tmpPage.setName("tmp_" + tmpPage.getName());< < 			// set date to force PDF compilation< 			tmpPage.setCreated(new Date());< < 			StringBuilder error = new StringBuilder();< 			String errorType = null;< < 			try {< 				_pdfService.getPDF(tmpPage, response, true);< < 			} catch (PDFServiceException e) {< 				errorType = e.getType();< 				error.append(e.getError());< < 				Locale locale = MessageTag.getLocale(request);< < 				StringBuilder ret = new StringBuilder();< 				ret.append("<div class=\"logError\">" + Message.get("pdfservice.compilation.error", locale) + "<br />");< < 				if (errorType.equals("latex-error")) {< 					String logUrl = e.getLogUrl();< < 					if (logUrl != null) {< 						ret.append("<br />" + Message.format("pdfservice.compilation.error.url", locale, logUrl) + "<br />");< < 					}< 					ret.append("<br /><textarea cols=\"120\" rows=\"10\">" + error.toString() + "</textarea>");< 				} else {< 					ret.append(Message.get("pdfservice.latex." + errorType, locale) + "<br />" + error.toString());< 				}< < 				ret.append("</div>");< < 				request.setAttribute("compileResult", ret.toString());< < 				// For the jsp< 				tmpPage.setName(tmpPage.getName().replace("tmp_", ""));< 				tmpPage.setContent(backup.getContent());< 				request.setAttribute("page", tmpPage);< < 				return mapping.findForward(MAPPING_ERROR);< 			}< < 			// Insert the object< 			Object toInsert = validator.getObject();< 			((Page) toInsert).setName(backup.getName());< 			((Page) toInsert).setContent(backup.getContent());< 			insert(toInsert, validator, request, response);< 			request.setAttribute(ATTRIBUTE_INSERTED_OBJECT, toInsert);< < 			resetToken(request);< < 			return getSuccessActionForward(mapping, request, response);< 		}< 	}< }