1 6 7 package org.contineo.actions; 8 9 import java.util.ArrayList ; 10 import java.util.Collection ; 11 import java.util.Iterator ; 12 13 import javax.servlet.http.HttpServletRequest ; 14 import javax.servlet.http.HttpServletResponse ; 15 import javax.servlet.http.HttpSession ; 16 17 import org.apache.log4j.Level; 18 import org.apache.log4j.Logger; 19 import org.apache.struts.action.Action; 20 import org.apache.struts.action.ActionForm; 21 import org.apache.struts.action.ActionForward; 22 import org.apache.struts.action.ActionMapping; 23 import org.contineo.admin.ExtMenu; 24 import org.contineo.admin.Menu; 25 import org.contineo.admin.dao.MenuDAO; 26 import org.contineo.core.FileBean; 27 import org.contineo.core.LoggingManager; 28 import org.contineo.core.SessionManagement; 29 import org.contineo.core.config.SettingConfigurator; 30 35 public class ShowKeywordAction extends Action { 36 37 private Logger logger; 38 39 40 public ShowKeywordAction() { 41 logger = LoggingManager.getLogger(this.getClass()); 42 } 43 44 public ActionForward execute(ActionMapping mapping, 45 ActionForm form, HttpServletRequest request, 46 HttpServletResponse response) { 47 ActionForward actionForward = new ActionForward(); 48 HttpSession session = request.getSession(); 49 if (SessionManagement.isValid(session)) { 50 try { 51 session.setAttribute("helppage", "showkeywords"); 52 String keyword = request.getParameter("keyword"); 53 String username = (String )session.getAttribute("authuser"); 54 MenuDAO menuDao = new MenuDAO(); 55 Collection <ExtMenu> coll2 = new ArrayList <ExtMenu>(); 56 Collection coll = menuDao.findByUserNameAndKeyword(username, keyword); 57 Iterator iter = coll.iterator(); 58 SettingConfigurator settings = new SettingConfigurator(); 59 String docpath = settings.getValue("docdir"); 60 while (iter.hasNext()) { 61 Menu menu = (Menu)iter.next(); 62 ExtMenu xmenu = new ExtMenu(menu); 63 64 int size = 0; 66 if (menu.getMenuType() == 5) { 67 long sz = FileBean.getSize(docpath + "/" + menu.getMenuPath() + "/" + menu.getMenuId() + "/" + menu.getMenuRef()); 68 sz = sz/1024; 69 size = (int)sz; 70 } else { 71 size = menuDao.findByUserName(username, menu.getMenuId()).size(); 72 } 73 xmenu.setSize(size); 74 75 boolean writable = false; 77 if (menuDao.isWriteEnable(menu.getMenuId(), username)) { 78 writable = true; 79 } else { 80 writable = false; 81 } 82 xmenu.setWritable(writable); 83 84 coll2.add(xmenu); 85 } 86 request.setAttribute("menus", coll2); 87 request.setAttribute("keyword", keyword); 88 } catch (Exception e) { 89 if (logger.isEnabledFor(Level.ERROR)) 90 logger.error(e.getMessage()); 91 } 92 actionForward = mapping.findForward("showkeyword"); 93 } else 94 actionForward = mapping.findForward("invalid"); 95 return actionForward; 96 } 97 } 98 | Popular Tags |