| 1 2 3 24 package com.geinuke.block; 25 26 import java.util.ArrayList ; 27 import java.util.HashMap ; 28 import java.util.Hashtable ; 29 30 import javax.servlet.http.HttpServletRequest ; 31 import javax.servlet.http.HttpServletResponse ; 32 33 import org.apache.velocity.context.Context; 34 35 import com.geinuke.common.BlockWidgetI; 36 import com.geinuke.common.GlobalConfigurationI; 37 import com.geinuke.common.NukeRoleI; 38 import com.geinuke.common.UserI; 39 import com.geinuke.middle.ISessionBL; 40 import com.geinuke.middle.IUserBL; 41 import com.geinuke.servlet.GeiServlet; 42 import com.geinuke.vo.*; 43 44 45 public class OnLineBlock implements BlockWidgetI{ 46 47 public ArrayList getLastSessions(ISessionBL sbl,IUserBL ubl)throws Exception { 48 ArrayList list=null,aux=null; 49 aux=sbl.getLastSessions(RoleVO.ID_ANONYMOUS,10); 50 list=new ArrayList (); 51 Hashtable ht=new Hashtable (); 52 if(aux!=null){ 53 SessionVO s=null; 54 UserVO u=null; 55 for(int i=0;i<aux.size();i++){ 56 s=(SessionVO)aux.get(i); 57 u=(UserVO)ubl.getUserByID(s.getIdU()); 58 if(!ht.containsKey(""+u.getId())){ 59 list.add(u); 60 ht.put(""+u.getId(),""+u.getId()); 61 } 62 } 63 } 64 65 return list; 66 } 67 68 public void fillBlock(BlockDBVO block,Context ctx, HttpServletRequest req, 69 HttpServletResponse res,UserI user, 70 GlobalConfigurationI gConf)throws Exception { 71 72 ArrayList guestList=null,userList=null,adList=null; 73 ISessionBL bl=(ISessionBL)GeiServlet.getBL("ISessionBL"); 74 IUserBL ubl=(IUserBL)GeiServlet.getBL("IUserBL"); 75 ArrayList roles=ubl.getAllRoles(); 76 RoleVO ro=null; 77 HashMap results=new HashMap (); 78 int score=0; 79 int tot=0; 80 for(int i=0;i<roles.size();i++){ 81 ro=(RoleVO)roles.get(i); 82 score=bl.getSessionsByIdRole(ro.getId()).size(); 83 tot+=score; 84 results.put(ro.getRoleName(),score+""); 85 } 86 ArrayList last=this.getLastSessions(bl,ubl); 90 91 PortalCFGVO po=(PortalCFGVO)req.getSession(true).getAttribute("portalCFG"); 92 93 ctx.put("names",ctx); 94 ctx.put("roles",roles); 95 ctx.put("resultsN",results.keySet()); 96 ctx.put("results",results); 97 ctx.put("hits",""+po.getSessionHits() ); 98 ctx.put("last",last); 99 ctx.put("allSize",""+tot); 104 105 106 107 108 } 109 110 } 111 112 | Popular Tags |