1 2 23 package com.geinuke.module.wiki; 24 25 26 import java.util.ArrayList ; 27 28 import javax.servlet.http.HttpServletRequest ; 29 import javax.servlet.http.HttpServletResponse ; 30 31 import org.apache.velocity.context.Context; 32 33 import com.geinuke.bizlogic.UploadException; 34 import com.geinuke.common.GlobalConfigurationI; 35 import com.geinuke.common.ModuleWidgetI; 36 import com.geinuke.common.NukeModuleI; 37 import com.geinuke.common.UserI; 38 import com.geinuke.middle.IWikiBL; 39 import com.geinuke.module.ModuleWriter; 40 import com.geinuke.servlet.GeiServlet; 41 import com.geinuke.util.FileUtils; 42 import com.geinuke.util.MagicUpload; 43 import com.geinuke.util.NukeResource; 44 import com.geinuke.vo.ModuleDBVO; 45 import com.geinuke.vo.WikiArticleVO; 46 import com.geinuke.vo.WikiFileVO; 47 48 public class SubmitFile implements ModuleWidgetI{ 49 50 51 public void uploadFile(WikiArticleVO wa,HttpServletRequest req,MagicUpload upload)throws Exception { 52 WikiFileVO wf=null; 53 ArrayList exts=new ArrayList (); 54 exts.add("*"); 55 String path=GeiServlet.getNukePath(); 56 path=path+"./images/giki/"+wa.getWAId()+"/"; 57 62 FileUtils.mkDir(path); 63 try{ 64 String fn=NukeResource.upload(upload,req,path,exts); 65 wf=new WikiFileVO(); 66 IWikiBL bl=(IWikiBL)GeiServlet.getBL("IWikiBL"); 67 wf.setFileName(fn); 68 path="./images/giki/"+wa.getWAId()+"/"; 69 wf.setPath(path+fn); 70 wf.setTime(System.currentTimeMillis()); 71 wf.setEWAID(wa.getWAId()); 72 73 bl.insWikiFile(wf); 74 }catch(UploadException e){ 75 GeiServlet.intLog(" uploadFile Exception "+e); 76 } 77 } 78 79 public NukeModuleI handleAction(ModuleDBVO module, Context ctx,HttpServletRequest req, HttpServletResponse res, UserI user, GlobalConfigurationI gConf) throws Exception { 80 String moduleTempName=null; 81 WikiArticleVO wa=null; 82 IWikiBL bl=(IWikiBL)GeiServlet.getBL("IWikiBL"); 83 84 int waid=-1; 85 MagicUpload upload=new MagicUpload(); 86 String waids=NukeResource.getUploadProperty(upload,req,"waid"); 87 waid= Integer.parseInt( waids ); 88 wa= bl.getWikiArticleById(waid); 89 this.uploadFile(wa,req,upload); 90 res.sendRedirect("Giki.jhtm?op=showA&id="+wa.getWAId()); 91 moduleTempName=gConf.getModulePage(module.getName(),req); 92 return ModuleWriter.fill(ctx,module,moduleTempName); 93 } 94 95 } 96 | Popular Tags |