Package net.naijatek.myalumni.modules.common.domain

Examples of net.naijatek.myalumni.modules.common.domain.MemberVO


   */
  public synchronized boolean isUserOnline(final String username) {
    Collection collection = userMap.values();
    Iterator iterator = collection.iterator();
    while (iterator.hasNext()) {
      MemberVO onlineUser = (MemberVO) iterator.next();
      String currentUser = onlineUser.getMemberUserName();
      if (username.equalsIgnoreCase(currentUser)) {
        return true;
      }
    }
    return false;
View Full Code Here


  public synchronized List<MemberVO> getOnlineUsers(int sessionTimeOut) {
    removeTimeoutUsers(sessionTimeOut);
    Collection collection = userMap.values();
    Iterator iterator = collection.iterator();
    List<MemberVO> users = new ArrayList<MemberVO>();
    MemberVO userVO = null;

    while (iterator.hasNext()) {
      userVO = new MemberVO();
      MemberVO tmp = (MemberVO) iterator.next();
      userVO.setFirstName(tmp.getFirstName());
      userVO.setLastName(tmp.getLastName());
      userVO.setMemberId(tmp.getMemberId());
      userVO.setYearOut(tmp.getYearOut());
      userVO.setMemberUserName(tmp.getMemberUserName());
      users.add(userVO);
    }
    return users;
  }
View Full Code Here

     request = (HttpServletRequest) pageContext.getRequest();
       StringBuffer sb = new StringBuffer();
       AppProp ap = AppProp.getInstance();

   
    MemberVO token = null;

    if (container != null) {
      token = container.getToken();
    }
          
           try {       
             List<ClassNewsVO> list = classNewsService.findAllByYearOutAndSystemNews(token.getYearOut());
             request.setAttribute(BaseConstants.LIST_OF_CLASSNEWS, list);
           }
           catch (Exception e) {
               sb.append(ap.getValue("core.errorcode.00708"));//Problem encountered while retrieving class news
           }
View Full Code Here

    request = (HttpServletRequest) pageContext.getRequest();
    StringBuffer sb = new StringBuffer();
    Calendar now = new GregorianCalendar();
    String seperator = "/";
    MemberVO user = new MemberVO();
    List<MemberVO> bdays = new ArrayList<MemberVO>();
    int today = now.get(Calendar.DATE);
    String rowCss = new String();
    String rootContext = request.getContextPath();
    String rootContextName = StringUtil.trimRootContext(request
        .getContextPath());

    try {
      bdays = memService.getBirthdayListOfTheMonth(String.valueOf((now
          .get(Calendar.MONTH) + 1)));

      sb
          .append("<table width=\""
              + this.getTableWidth()
              + "\" border=\"0\" cellspacing=\"1\" cellpadding=\"3\" align=\"center\"  class=\"tborder\">");
      sb.append("<tr>");
      sb
          .append("<td height=\"30\" class=\"bg0\" colspan=\"3\">Happy Birthday this month of "
              + StringUtil.convertToAlphaMonth(now
                  .get(Calendar.MONTH) + 1)
              + " to the following Alumni's.</td>");
      sb.append("</tr>");
      sb.append("<tr  class=\"portlet-section-body\">");
      sb.append("<td height=\"30\" class=\"bg0\">Alumni Name</td>");
      sb.append("<td height=\"30\" class=\"bg0\">Departure Year</td>");
      sb.append("<td height=\"30\" class=\"bg0\">Birthday</td>");
      sb.append("</tr>");

      int size = bdays.size();
      for (int i = 0; i < size; i++) {
        user = (MemberVO) bdays.get(i);
        DateTime dt = new DateTime(user.getDob());
        if (today == dt.getDayOfMonth()) {
          rowCss = "bgH";
        } else {
          rowCss = "portlet-section-body";
        }
        // sb.append("<tr bgcolor=\" + rowCss + \">");
        sb.append("<tr class=\"");
        sb.append(rowCss);
        sb.append("\">");
        sb.append("<td>");

        if (today == dt.getDayOfMonth()) {
          sb.append("<img src=\"" + rootContext.trim() + seperator
              + "/images/icon/bday.jpg\" align=\"absmiddle\">");
        }
        sb.append("<a href=\"/");
        sb.append(rootContextName);
        sb
            .append("/action/member/displayMiniProfile?action=displayMiniProfile&memberUserName="
                + user.getMemberUserName()
                + "\" + onclick=\"newPopup(this.href,'name');return false\" title=\"View "
                + user.getFirstName()
                + " "
                + user.getLastName()
                + " details\">"
                + user.getFirstName()
                + " "
                + user.getLastName() + "</td>");
        sb.append("<td>" + user.getYearOut()
            + "</td>");
        sb.append("<td> "
            + StringUtil.dobPostfix(dt.getDayOfMonth())
            + " of "
            + StringUtil.convertToAlphaMonth(now
View Full Code Here

            HttpServletRequest request,
            HttpServletResponse response) throws
      Exception {
      logger.debug("in listClassNews");
     
      MemberVO token = getCurrentLoggedInUser(request);
     
        // check to see if the user logged on is a member
        if (!memberSecurityCheck(request, token)) {
          return mapping.findForward(BaseConstants.FWD_LOGIN);
        }
       
        List<ClassNewsVO> list = classNewsService.findAllByYearOut(token.getYearOut());      
      setRequestObject(request, BaseConstants.LIST_OF_CLASSNEWS, list);
      return mapping.findForward(BaseConstants.FWD_SUCCESS);
    }
View Full Code Here

            HttpServletRequest request,
            HttpServletResponse response) throws
      Exception {
      logger.debug("in prepareAddClassNews");
     
      MemberVO token = getCurrentLoggedInUser(request);
     
        // check to see if the user logged on is a member
        if (!memberSecurityCheck(request, token)) {
          return mapping.findForward(BaseConstants.FWD_LOGIN);
        }
       
        ClassNewsForm cnForm =  (ClassNewsForm)form;
     
      cnForm.setFromClassYear(String.valueOf(token.getYearIn()));
      cnForm.setToClassYear(String.valueOf(token.getYearOut()));
     
      return mapping.findForward(BaseConstants.FWD_SUCCESS);
    }
View Full Code Here

         
          String username = loginForm.getMemberUserName();
          String password = loginForm.getMemberPassword();
         
         
          MemberVO token = null;
          LoginHistoryVO accessHistory = null;
         
          ServletContext sCtx = request.getSession().getServletContext();
          WebApplicationContext wCtx = WebApplicationContextUtils.getWebApplicationContext(sCtx);       
          MyAlumniUserContainer container = (MyAlumniUserContainer)wCtx.getBean("userContainer");    
 
 
          logger.info("Login attempt --> , [ " + username +   " ][ " + currentIP + "]");
 
 
          if (counter == null) {
              session.setAttribute("loginCounter", new Integer(loginCounter));
              session.setAttribute("loginUserCounter", username);
          } else {
              loginCounter = counter.intValue();
          }
 
          // login and store it in the session
          accessHistory = createAccessHistory(request, username)
         
         
          try {
                token = securityService.login(username, password, currentIP);
                token.setLoginSuccessfull(true);
                accessHistory.setLoginStatus(BaseConstants.LOGIN_PASS);
                accessHistory.setReasonCode(ReasonCodes.SUCCESS);
             
             
              // Prompt user to change password
              if (token.getPromptChange().equals(BaseConstants.BOOLEAN_YES)){
               
                loginForm.setMemberUserName(token.getMemberUserName());
                loginForm.setMemberPassword("");
                loginForm.setMemberTempPassword("");
                loginForm.setMemberPasswordConfirm("");               
                
                session.invalidate();
                    errors.add(BaseConstants.INFO_KEY, new ActionMessage("errors.login.resetpassword"));
                    saveMessages(request, errors);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.CHANGE_PASSWORD);
                  securityService.addAccessTrail(accessHistory);
                    return mapping.findForward(BaseConstants.FWD_EXPIRED_PASSWORD);
              }
             
             
              // Cant find roles
              if (token.getIsAdmin() == null || (!token.getIsAdmin().equals(BaseConstants.BOOLEAN_NO) & !token.getIsAdmin().equals(BaseConstants.BOOLEAN_YES))){
                  errors.add(BaseConstants.ERROR_KEY, new ActionMessage("errors.login.role"));
                  saveMessages(request, errors);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.NO_ROLES_FOUND);
                  securityService.addAccessTrail(accessHistory);
                  return mapping.getInputForward();
              }    
             
             
             
          } catch (UserAccountException e) {
            //token.setLoginSuccessfull(false);
              if (e.getExceptionReason() == NotLoginException.ACCOUNT_DEACTIVATED) {
                  session.invalidate();
                  errors.add(BaseConstants.WARN_KEY, new ActionMessage("errors.account.deactivated"));
                  saveMessages(request, errors);
                  logger.info("ACCOUNT DEACTIVATED : " + username);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.ACCOUNT_DEACTIVATED);
                securityService.addAccessTrail(accessHistory);
                  return mapping.getInputForward();
              }  
              if (e.getExceptionReason() == NotLoginException.ACCOUNT_DELETED) {
                  session.invalidate();
                  errors.add(BaseConstants.WARN_KEY, new ActionMessage("errors.account.deleted"));
                  saveMessages(request, errors);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.ACCOUNT_DELETED);
                securityService.addAccessTrail(accessHistory);
                  return mapping.getInputForward();
              }              
              if (e.getExceptionReason() == NotLoginException.ACCOUNT_LOCKED) {
                  session.invalidate();
                  errors.add(BaseConstants.WARN_KEY, new ActionMessage("errors.account.locked"));
                  saveMessages(request, errors);
                  logger.info("ACCOUNT LOCKED : " + username);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.ACCOUNT_LOCKED);
                securityService.addAccessTrail(accessHistory);
                  return mapping.getInputForward();
              }
              else if (e.getExceptionReason() == NotLoginException.WRONG_PASSWORD) {
                  //session.invalidate();
                  errors.add(BaseConstants.WARN_KEY, new ActionMessage("errors.password.mismatch", currentIP));
                  saveMessages(request, errors);
                  logger.info("INVALID PASSWORD : " + username);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.INVALID_CREDENTIAL);
                   
                  // increment failed login counter
                  // if the same user contineously try to login , counter increases
                  // if a diff user from the prev user, but same session, counter resets
                  if (username.equals(session.getAttribute("loginUserCounter"))) {
                      loginCounter++;
                  } else {
                      loginCounter = 0;
                      session.setAttribute("loginCounter", new Integer(loginCounter));
                  }
 
                  // Maximum number of time a user can try to login unsuccessfully
                  int userMaxLogin = Integer.parseInt(getSysProp().getValue("USER_MAX_LOGIN"));
                  if (loginCounter >= userMaxLogin) {
                      logger.warn(username + " : User has exceeded maximum number of login attempts");
                      logger.warn("User account has been disabled. Please contact System Administrator");
 
                      // deactivating user account
                      if (securityService.lockMemberAccount(username)) {
                          session.invalidate();
                          errors.add(BaseConstants.WARN_KEY, new ActionMessage("errors.account.locked"));
                          logger.info("ACCOUNT LOCKED :  IP: (" + currentIP + ") " + username);
                          accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                          accessHistory.setReasonCode(ReasonCodes.ACCOUNT_LOCKED);
                      securityService.addAccessTrail(accessHistory);
                      return mapping.getInputForward();
                      }
                  } else {
                      session.setAttribute("loginCounter", new Integer(loginCounter));
                  }
                 
                securityService.addAccessTrail(accessHistory);
                return mapping.getInputForward();
              }
              else if (e.getExceptionReason() == NotLoginException.WRONG_USERNAME) {
                  logger.info("INVALID USERNAME: IP: (" + currentIP + ") " + username + " User login attempt has failed. Count = " + loginCounter);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.ACCOUNT_INVALID);
                  errors.add(BaseConstants.WARN_KEY, new ActionMessage("errors.password.mismatch"));
                  saveMessages(request, errors);
                  logger.info("UNSUCCESSFULL FWD_LOGIN - Invalid login  IP: (" + currentIP + ") " + username);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.INVALID_CREDENTIAL);
                securityService.addAccessTrail(accessHistory);
                return mapping.getInputForward();
              }
              else if (e.getExceptionReason() == NotLoginException.ACCOUNT_UNAPPROVED) {
                  errors.add(BaseConstants.WARN_KEY, new ActionMessage("errors.account.notapproved"));
                  saveMessages(request, errors);
                  logger.info("UNSUCCESSFULL FWD_LOGIN - Account not approved yet. :  IP: (" + currentIP + ") " + username);
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.ACCOUNT_UNAPPROVED);
                  securityService.addAccessTrail(accessHistory);
                return mapping.getInputForward();
              }
             
          }
         

         
          if (token.isLoginSuccessfull()) {
              //clear out any old session info
              session = request.getSession(false);
              if (session != null) {
                  session.invalidate();
              }
 
             
              // Create a new session for this user
              session = request.getSession(true)
             

              // place users container in session
              container.setToken(token);
              setSessionUserContainer(request, container);
             
               
              setupOtherTasks(request, container, token);
             
              int sessionTimeout = setupSessionTimeout(session);
 
              // adding the user user the list of online users
              token.setLastRequestTime(new Date());       
              OnlineUserManager manager = OnlineUserManager.getInstance();
              manager.addOnlineUser(token, sessionTimeout);
              //sCtx.setAttribute("onlineusers", manager.getOnlineUsers(sessionTimeout));
              setServletContextObject(request, "onlineusers", manager.getOnlineUsers(sessionTimeout));
            
             
              session.setAttribute(BaseConstants.IS_ONLINE, BaseConstants.BOOLEAN_YES);
              session.setAttribute(BaseConstants.IS_ADMIN, token.getIsAdmin());
             
              // ADMIN
              String context = request.getPathInfo();
             
              if (context.startsWith("/admin/") && token.getIsAdmin().equals(BaseConstants.BOOLEAN_YES)){
                  setupAdminDesktop(request, memService, classNewsService, privateMessageService);
                  securityService.addAccessTrail(accessHistory);
              }
              else if (context.startsWith("/member/") &&
                  (token.getIsAdmin().equals(BaseConstants.BOOLEAN_YES) ||
                   token.getIsAdmin().equals(BaseConstants.BOOLEAN_NO))){
                   securityService.addAccessTrail(accessHistory);                  
              }
              else{
                    accessHistory.setLoginStatus(BaseConstants.LOGIN_FAIL);
                    accessHistory.setReasonCode(ReasonCodes.ACCOUNT_UNAUTHORIZED);
View Full Code Here

                               HttpServletResponse response) throws Exception {
 
     HttpSession session = request.getSession(true);
 
     int sessionTimeout = setupSessionTimeout(session);
     MemberVO token = getCurrentLoggedInUser(request);
     if (token != null){
       OnlineUserManager manager = OnlineUserManager.getInstance();
       manager.removeOnlineUser(token.getMemberUserName());
       ServletContext sCtx = request.getSession().getServletContext();
       sCtx.setAttribute("onlineusers", manager.getOnlineUsers(sessionTimeout));
     }
    
     if (session != null) {
View Full Code Here

   */
  @Override
  public final int doEndTag() throws JspException {

    StringBuffer sb = new StringBuffer();
    MemberVO user = new MemberVO();
    int numOfMembers = SystemConfigConstants.NumOfLatestMembers;
    String rootContextName = StringUtil.trimRootContext(request
        .getContextPath());

    try {
      List<MemberVO> latestmembers = memService
          .getLatestMembers(numOfMembers);

      sb
          .append("<table width=\""
              + this.getTableWidth()
              + "\"  border=\"0\" cellspacing=\"1\" cellpadding=\"3\" align=\"center\"  class=\"tborder\">");
      sb.append("<tr>");
      sb
          .append("<td height=\"30\" class=\"bg0\">Most Recent Members</td>");
      sb.append("</tr>");

      int size = latestmembers.size();
      for (int i = 0; i < size; i++) {
        user = (MemberVO) latestmembers.get(i);
        sb.append("<tr class=\"portlet-section-body\">");
        sb
            .append("<td><div class=\"blacksmall\"> <a href=\"/"
                + rootContextName
                + "/action/member/displayMiniProfile?action=displayMiniProfile&memberUserName="
                + user.getMemberUserName()
                + "\" + onclick=\"newPopup(this.href,'name');return false\" title=\"View "
                + user.getFirstName() + " "
                + user.getLastName() + " details\"> "
                + user.getFirstName() + " "
                + user.getLastName() + " (" + user.getYearOut()
                + ")</div></td>");
        sb.append("</tr>");
      }
      if (size == 0) {
        sb.append("<td>None.</td>");
View Full Code Here

            HttpServletRequest request,
            HttpServletResponse response) throws
      Exception {
      logger.debug("in prepareAddReminisce");
     
      MemberVO token = getCurrentLoggedInUser(request);
     
        // check to see if the user logged on is a member
        if (!memberSecurityCheck(request, token)) {
          return mapping.findForward(BaseConstants.FWD_LOGIN);
        }
       
        ReminisceForm cnForm =  (ReminisceForm)form;
     
      cnForm.setFromYear(String.valueOf(token.getYearIn()));
      cnForm.setToYear(String.valueOf(token.getYearOut()));
     
      return mapping.findForward(BaseConstants.FWD_SUCCESS);
    }
View Full Code Here

TOP

Related Classes of net.naijatek.myalumni.modules.common.domain.MemberVO

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.