KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > contineo > actions > documan > document > EditDocAction


1 package org.contineo.actions.documan.document;
2
3 import javax.servlet.http.HttpServletRequest JavaDoc;
4 import javax.servlet.http.HttpServletResponse JavaDoc;
5 import javax.servlet.http.HttpSession JavaDoc;
6 import org.apache.log4j.Level;
7 import org.apache.log4j.Logger;
8 import org.apache.struts.action.Action;
9 import org.apache.struts.action.ActionForm;
10 import org.apache.struts.action.ActionForward;
11 import org.apache.struts.action.ActionMapping;
12 import org.contineo.admin.Menu;
13 import org.contineo.admin.dao.MenuDAO;
14 import org.contineo.core.DateBean;
15 import org.contineo.core.LoggingManager;
16 import org.contineo.core.SessionManagement;
17 import org.contineo.documan.Document;
18 import org.contineo.documan.dao.DocumentDAO;
19 import org.contineo.forms.DocForm;
20
21 /**
22  * Fills the document form with the document's metadata.
23  * Created on 19. November 2003, 23:24
24  * @author Michael Scholz
25  */

26 public class EditDocAction extends Action {
27
28     /**
29      * @uml.property name="logger"
30      * @uml.associationEnd
31      */

32     private Logger logger;
33
34     
35     /** Creates a new instance of EditDocAction */
36     public EditDocAction() {
37         logger = LoggingManager.getLogger(this.getClass());
38     }
39
40     public ActionForward execute(ActionMapping mapping,
41                     ActionForm form, HttpServletRequest JavaDoc request,
42                     HttpServletResponse JavaDoc response) {
43         ActionForward actionForward = new ActionForward();
44         HttpSession JavaDoc session = request.getSession();
45         if (SessionManagement.isValid(session)) {
46             session.setAttribute("helppage", "editdocument");
47             String JavaDoc menuid = request.getParameter("menuid");
48             DocumentDAO ddao = new DocumentDAO();
49             MenuDAO mdao = new MenuDAO();
50             String JavaDoc username = (String JavaDoc)session.getAttribute("authuser");
51             try {
52                 if (mdao.isWriteEnable(Integer.parseInt(menuid), username)) {
53                     Document doc = ddao.findByMenuId(Integer.parseInt(menuid));
54                     String JavaDoc dte = doc.getDocDate();
55                     String JavaDoc sourceDate = doc.getSourceDate();
56                     String JavaDoc date = "";
57                     String JavaDoc srcDate = "";
58                     
59                     // get current session language
60
String JavaDoc language = (String JavaDoc) session.getAttribute("language");
61                     if (language == null || language.equalsIgnoreCase(""))
62                     {
63                         language = request.getParameter("language");
64                         if (language == null || language.equalsIgnoreCase(""))
65                             language = "en";
66                     }
67                     if (dte != null && !dte.equals(""))
68                         date = DateBean.toLocaleString(dte, language);
69                     if (sourceDate != null && !sourceDate.equals(""))
70                         srcDate = DateBean.toLocaleString(sourceDate, language);
71
72                     Menu menu = mdao.findByPrimaryKey(doc.getMenuId());
73                     
74                     DocForm dForm = (DocForm) form;
75                     if (srcDate != null)
76                         dForm.setSourceDate(srcDate);
77                     
78                     request.setAttribute("document", doc);
79                     if (date != null)
80                         request.setAttribute("date", date);
81                     request.setAttribute("menu", menu);
82                     actionForward = mapping.findForward("editdoc");
83                 } else
84                     actionForward = mapping.findForward("noaccess");
85             } catch (Exception JavaDoc e) {
86                 if (logger.isEnabledFor(Level.ERROR))
87                     logger.error(e.getMessage());
88                 actionForward = mapping.findForward("error");
89             }
90         } else
91             actionForward = mapping.findForward("invalid");
92         return actionForward;
93     }
94 }
95
Popular Tags