KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > contineo > actions > documan > version > EditVersionAction


1 /*
2  * EditVersionAction.java
3  *
4  * Created on 24. November 2003, 23:14
5  */

6
7 package org.contineo.actions.documan.version;
8
9 import javax.servlet.http.HttpServletRequest JavaDoc;
10 import javax.servlet.http.HttpServletResponse JavaDoc;
11 import javax.servlet.http.HttpSession JavaDoc;
12 import org.apache.log4j.Level;
13 import org.apache.log4j.Logger;
14 import org.apache.struts.action.Action;
15 import org.apache.struts.action.ActionForm;
16 import org.apache.struts.action.ActionForward;
17 import org.apache.struts.action.ActionMapping;
18 import org.contineo.admin.dao.MenuDAO;
19 import org.contineo.core.DateBean;
20 import org.contineo.core.LoggingManager;
21 import org.contineo.core.SessionManagement;
22 import org.contineo.documan.Document;
23 import org.contineo.documan.Version;
24 import org.contineo.documan.dao.DocumentDAO;
25 import org.contineo.documan.dao.VersionDAO;
26 /**
27  *
28  * @author Michael Scholz
29  */

30 public class EditVersionAction extends Action {
31
32     /**
33      * @uml.property name="logger"
34      * @uml.associationEnd
35      */

36     private Logger logger;
37
38     
39     /** Creates a new instance of EditVersionAction */
40     public EditVersionAction() {
41         logger = LoggingManager.getLogger(this.getClass());
42     }
43   
44     public ActionForward execute(ActionMapping mapping,
45                     ActionForm form, HttpServletRequest JavaDoc request,
46                     HttpServletResponse JavaDoc response) {
47         ActionForward actionForward = new ActionForward();
48         HttpSession JavaDoc session = request.getSession();
49         if (SessionManagement.isValid(session)) {
50             String JavaDoc docid = request.getParameter("docid");
51             String JavaDoc vers = request.getParameter("version");
52             VersionDAO vdao = new VersionDAO();
53             DocumentDAO ddao = new DocumentDAO();
54             try {
55                 Version version = vdao.findByPrimaryKey(Integer.parseInt(docid), vers);
56                 Document doc = ddao.findByPrimaryKey(version.getDocId());
57                 MenuDAO mdao = new MenuDAO();
58                 String JavaDoc username = (String JavaDoc)session.getAttribute("authuser");
59                 if (mdao.isWriteEnable(doc.getMenuId(), username)) {
60                     String JavaDoc versDate = version.getVersionDate();
61                     String JavaDoc date = "";
62                     
63                     // get current language
64
String JavaDoc language = (String JavaDoc) session.getAttribute("language");
65                     if (language == null || language.equalsIgnoreCase(""))
66                     {
67                         language = request.getParameter("language");
68                         if (language == null || language.equalsIgnoreCase(""))
69                             language = "en";
70                     }
71                     if (versDate != null && !versDate.equals(""))
72                         date = DateBean.toLocaleString(versDate, language);
73                     request.setAttribute("version", version);
74                     request.setAttribute("docname", doc.getDocName());
75                     if (date != null)
76                         request.setAttribute("versionDate", date);
77                     actionForward = mapping.findForward("editversion");
78                 } else
79                     actionForward = mapping.findForward("noaccess");
80             } catch (Exception JavaDoc e) {
81                 if (logger.isEnabledFor(Level.ERROR))
82                     logger.error(e.getMessage());
83                 actionForward = mapping.findForward("error");
84             }
85         } else
86             actionForward = mapping.findForward("invalid");
87         return actionForward;
88     }
89 }
90
Popular Tags