⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 memberwebhandler.java

📁 java servlet著名论坛源代码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
            memberStatus = MemberBean.MEMBER_STATUS_ENABLE;
        }
        //IMPORTANT: Guest (id=MEMBER_ID_OF_GUEST) can be disabled by administrator.

        DAOFactory.getMemberDAO().updateStatus(memberID, // primary key
                               memberStatus);
    }

    void prepareView(HttpServletRequest request)
        throws BadInputException, ObjectNotFoundException, DatabaseException,
        AssertionException, AuthenticationException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        String strMemberID = ParamUtil.getParameter(request, "memberid", false);
        String strMemberName = ParamUtil.getParameter(request, "member", false);
        String strMemberEmail = ParamUtil.getParameter(request, "memberemail", false);

        int memberID;

        if (strMemberID.length() > 0) {
            memberID = ParamUtil.getParameterInt(request, "memberid");
        } else if (strMemberName.length() > 0){
            /**@todo: improve this for better performance(dont use this method,
             * and write 2 new methods)*/
            StringUtil.checkGoodName(strMemberName);// check for better security
            memberID = DAOFactory.getMemberDAO().getMemberIDFromMemberName(strMemberName);
        } else if (strMemberEmail.length() > 0){
            String memberEmail = ParamUtil.getParameterEmail(request, "memberemail");// check for better security
            memberID = DAOFactory.getMemberDAO().getMemberIDFromMemberEmail(memberEmail);
        } else {
            throw new BadInputException("Cannot get the information to view member.");
        }

        // Update statistics to make sure Admin can delete this user
        // with the actual memberPostCount
        StatisticsUtil.updateMemberStatistics(memberID);

        MemberBean bean = DAOFactory.getMemberDAO().getMember_forPublic(memberID);

        request.setAttribute("MemberBean", bean);
    }

    void processUpdateMemberTitle(HttpServletRequest request)
        throws BadInputException, DatabaseException, ObjectNotFoundException,
        AuthenticationException, AssertionException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        // primary key column(s)
        int memberID        = ParamUtil.getParameterInt(request, "MemberID");

        // column(s) to update
        String memberTitle  = ParamUtil.getParameterSafe(request, "MemberTitle", false);

        DAOFactory.getMemberDAO().updateTitle(memberID, // primary key
                               memberTitle);
    }

    void processResetMemberSignature(HttpServletRequest request)
        throws BadInputException, DatabaseException, ObjectNotFoundException,
        AuthenticationException, AssertionException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        int memberID = ParamUtil.getParameterInt(request, "memberid");
        DAOFactory.getMemberDAO().updateSignature(memberID, "");

        request.setAttribute("MemberID", new Integer(memberID));
    }

    void processResetMemberAvatar(HttpServletRequest request)
        throws BadInputException, DatabaseException, ObjectNotFoundException,
        AuthenticationException, AssertionException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        int memberID = ParamUtil.getParameterInt(request, "memberid");
        DAOFactory.getMemberDAO().updateAvatar(memberID, "");

        request.setAttribute("MemberID", new Integer(memberID));
    }

    void processResetMemberActivation(HttpServletRequest request)
        throws BadInputException, DatabaseException, ObjectNotFoundException,
        AuthenticationException, AssertionException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        int memberID = ParamUtil.getParameterInt(request, "memberid");
        DAOFactory.getMemberDAO().updateActivateCode(memberID, "");

        request.setAttribute("MemberID", new Integer(memberID));
    }

    void processDeleteMember(HttpServletRequest request)
        throws BadInputException, DatabaseException, ObjectNotFoundException,
        AuthenticationException, AssertionException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        // now check the password
        MyUtil.ensureCorrectCurrentPassword(request);

        int memberID = ParamUtil.getParameterInt(request, "memberid");
        if ((memberID==MVNForumConstant.MEMBER_ID_OF_ADMIN) ||
            (memberID==0) ||
            (memberID==MVNForumConstant.MEMBER_ID_OF_GUEST)) {
            throw new BadInputException("Cannot delete default Admin and Guest users.");
        }
        MemberBean memberBean = DAOFactory.getMemberDAO().getMember_forPublic(memberID);

        if (memberBean.getMemberPostCount() > 0) {
            throw new BadInputException("Cannot delete member that has posted at least one post.");
        }

        //@todo delete table Post/Thread/Attachment if we support delete posted user
        DAOFactory.getWatchDAO().delete_inMember(memberID);
        DAOFactory.getMemberForumDAO().delete_inMember(memberID);
        DAOFactory.getMemberGroupDAO().delete_inMember(memberID);
        DAOFactory.getMemberPermissionDAO().delete_inMember(memberID);
        DAOFactory.getFavoriteThreadDAO().delete_inMember(memberID);
        DAOFactory.getMessageFolderDAO().delete_inMember(memberID);

        //Delete in primary table
        DAOFactory.getMemberDAO().deleteByPrimaryKey(memberID);
    }

    /**
     * This method supports sorting base on many criteria
     */
    void prepareListMembers_forPublic(HttpServletRequest request)
        throws DatabaseException, AssertionException, BadInputException, AuthenticationException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureCanAdminSystem();

        // for sort and order stuff
        String sort  = net.myvietnam.mvncore.util.ParamUtil.getParameter(request, "sort");
        String order = net.myvietnam.mvncore.util.ParamUtil.getParameter(request, "order");
        if (sort.length() == 0) sort = "MemberCreationDate";
        if (order.length()== 0) order = "DESC";

        // we continue
        int postsPerPage = onlineUser.getPostsPerPage();
        int offset = 0;
        try {
            offset = ParamUtil.getParameterInt(request, "offset");
        } catch (BadInputException e) {
            // do nothing
        }

        int totalMembers = DAOFactory.getMemberDAO().getNumberOfMembers();
        if (offset > totalMembers) {
            throw new BadInputException("The offset is not allowed to be greater than total members.");
        }

        Collection memberRows = DAOFactory.getMemberDAO().getMembers_withSortSupport_limit(offset, postsPerPage, sort, order);

        request.setAttribute("MemberBeans", memberRows);
        request.setAttribute("TotalMembers", new Integer(totalMembers));
        request.setAttribute("offset", new Integer(offset));
    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -