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

📄 memberwebhandler.java

📁 easy to use, easy to setup bulletin board (forum)
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
        String memberHomepage       = ParamUtil.getParameterSafe(request, "MemberHomepage", false);
        String memberYahoo          = ParamUtil.getParameterSafe(request, "MemberYahoo", false);
        String memberAol            = ParamUtil.getParameterSafe(request, "MemberAol", false);
        String memberIcq            = ParamUtil.getParameterSafe(request, "MemberIcq", false);
        String memberMsn            = ParamUtil.getParameterSafe(request, "MemberMsn", false);
        String memberCoolLink1      = ParamUtil.getParameterSafe(request, "MemberCoolLink1", false);
        String memberCoolLink2      = ParamUtil.getParameterSafe(request, "MemberCoolLink2", false);

        MemberWebHelper.updateMember(memberID, // primary key
                               memberEmailVisible, memberNameVisible, now/*memberModifiedDate*/,
                               memberOption, memberStatus, memberMessageOption,
                               memberPostsPerPage, memberTimeZone, memberSkin,
                               memberLanguage, memberFirstname, memberLastname,
                               memberGender, memberBirthday, memberAddress,
                               memberCity, memberState, memberCountry,
                               memberPhone, memberMobile, memberFax,
                               memberCareer, memberHomepage, memberYahoo,
                               memberAol, memberIcq, memberMsn,
                               memberCoolLink1, memberCoolLink2);
    }

    /** @todo: use new method of WebHelper */
    public void prepareEditEmail(HttpServletRequest request)
        throws DatabaseException, BadInputException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();
        MemberBean memberBean   = MemberWebHelper.getMember_forViewCurrentMember(memberID);
        request.setAttribute("MemberEmail", memberBean.getMemberEmail());
    }

    public void processUpdateEmail(HttpServletRequest request)
        throws BadInputException, DatabaseException, DuplicateKeyException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();

        // column(s) to update
        String memberEmail          = ParamUtil.getParameterEmail(request, "MemberEmail");
        String memberEmailConfirm   = ParamUtil.getParameterEmail(request, "MemberEmailConfirm");
        if (!memberEmail.equals(memberEmailConfirm)) throw new BadInputException("Email and confirmed email are not the same, please try again.");

        /**@todo: validate email checking by sending email*/
        MemberWebHelper.updateMemberEmail(memberID, // primary key
                               memberEmail);
    }

    public void processUpdatePassword(HttpServletRequest request)
        throws BadInputException, DatabaseException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();

        // NOTE: that we dont use getParameterPassword here since it will not forward-compatible
        String memberOldPassword    = ParamUtil.getParameter(request, "MemberOldMatkhau", true);
        String oldEncodedPassword   = Encoder.getMD5_Base64(memberOldPassword);
        String currentPassword      = MemberWebHelper.getMemberPassword(memberID);
        if (!currentPassword.equals(oldEncodedPassword)) {
            throw new BadInputException("You have typed the wrong current password, please try again.");
        }

        // column(s) to update
        String memberPassword1      = ParamUtil.getParameterPassword(request, "MemberMatkhau", 3, 0);
        String memberPassword2      = ParamUtil.getParameterPassword(request, "MemberMatkhauConfirm", 3, 0);
        if (!memberPassword1.equals(memberPassword2)) {
            throw new BadInputException("Password and confirmed password are not the same, please try again.");
        }
        String memberPassword       = Encoder.getMD5_Base64(memberPassword1);

        MemberWebHelper.updateMemberPassword(memberID, // primary key
                               memberPassword);
    }

    public void prepareView_forCurrentMember(HttpServletRequest request)
        throws DatabaseException, BadInputException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();
        MemberBean memberBean = MemberWebHelper.getMember_forViewCurrentMember(memberID);
        request.setAttribute("MemberBean", memberBean);
    }

    public void prepareEdit_forCurrentMember(HttpServletRequest request)
        throws DatabaseException, BadInputException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();
        MemberBean memberBean = MemberWebHelper.getMember_forEditCurrentMember(memberID);
        request.setAttribute("MemberBean", memberBean);
    }

    /** @todo: use new method of WebHelper */
    public void prepareEditSignature(HttpServletRequest request)
        throws DatabaseException, BadInputException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();
        MemberBean memberBean   = MemberWebHelper.getMember_forViewCurrentMember(memberID);
        request.setAttribute("MemberSignature", memberBean.getMemberSignature());
    }

    public void processUpdateSignature(HttpServletRequest request)
        throws BadInputException, DatabaseException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();

        // column(s) to update
        String memberSignature      = ParamUtil.getParameter(request, "MemberSignature");
        memberSignature = DisableHtmlTagFilter.filter(memberSignature);

        MemberWebHelper.updateMemberSignature(memberID, // primary key
                               memberSignature);
    }

    /** @todo: use new method of WebHelper */
    public void prepareEditAvatar(HttpServletRequest request)
        throws DatabaseException, BadInputException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID = onlineUser.getMemberID();
        MemberBean memberBean = MemberWebHelper.getMember_forViewCurrentMember(memberID);
        request.setAttribute("MemberBean", memberBean);
    }

    /**
     * Change picture from our predefined picture
     * NOTE: this method will delete uploaded image (if any) of the member
     */
    public void updateMemberAvatar(javax.servlet.ServletContext context, HttpServletRequest request)
        throws BadInputException, DatabaseException, AuthenticationException, AssertionException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID        = onlineUser.getMemberID();
        String memberName   = onlineUser.getMemberName();

        // first, we delete uploaded image if there is one
        StringBuffer bufferPicFile = new StringBuffer(128);
        bufferPicFile.append(context.getRealPath(MVNForumGlobal.UPLOADED_AVATAR_DIR));
        bufferPicFile.append(java.io.File.separatorChar).append(memberName).append(".jpg");
        String picFile =  bufferPicFile.toString();

        System.out.println("Delete avatar: " + picFile);
        System.out.println("String length = " + picFile.length());
        java.io.File file = new java.io.File(picFile);
        file.delete();// we dont need to check the returned value

        // then we update the database with new one
        String memberPicture = ParamUtil.getParameter(request, "MemberAvatar");
        MemberWebHelper.updateMemberAvatar(memberID, memberPicture);
    }

    /**
     * upload user own avatar
     */
    public void uploadPicture(javax.servlet.ServletConfig config, HttpServletRequest request, HttpServletResponse response)
        throws AuthenticationException, java.io.IOException, AssertionException, BadInputException, DatabaseException {

        OnlineUser onlineUser = userManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();

        int memberID        = onlineUser.getMemberID();
        String memberName   = onlineUser.getMemberName();

        FileUpload fileUpload = new FileUpload();
        fileUpload.setSizeMax(60000);//60K
        fileUpload.setSizeThreshold(100000);// max memory uesd = 100K (more than needed)
        //fileUpload.setAllowedFilesList("jpg");
        List fileItems;
        try {
            fileItems = fileUpload.parseRequest(request);
        } catch (FileUploadException ex) {
            ex.printStackTrace();
            throw new java.io.IOException("Cannot upload. Detail reason: " + ex.getMessage());
        }

        // make sure only one file upload
        if (fileItems.size() != 1) {
            throw new AssertionException("Assertion: Cannot upload more than 1 file when process upload picture for Member.");
        }

        //get the first and only file
        FileItem myFile = (FileItem)fileItems.get(0);
        if (myFile.isFormField() == true) {

⌨️ 快捷键说明

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