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

📄 memberwebhandler.java

📁 解觖java技术中后台无法上传数给的情况
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
        String memberCoolLink2      = GenericParamUtil.getParameterUrl(request, "MemberCoolLink2");*/

        // 确认较验码
        //if (MVNForumConfig.getEnableCaptcha()) {
        //    String captchaResponse = GenericParamUtil.getParameterSafe(request, "CaptchaResponse", false);
        //    onlineUser.ensureCorrectCaptchaResponse(captchaResponse);
        //}
        Timestamp memberExpireDate = memberCreationDate;// equal Creation Date mean no expiration
        if (MVNForumConfig.getEnableCompany()) {
            memberExpireDate = DateUtil.getCurrentGMTTimestampExpiredDay(MVNForumConfig.getExpireDateTutor());
        }

        DAOFactory.getMemberDAO().create(memberName, memberPassword, memberFirstEmail,
                                   memberEmail, memberEmailVisible, memberNameVisible,
                                   memberFirstIP, memberLastIP, 0/*memberViewCount*/,
                                   0/*memberPostCount*/, memberCreationDate, memberModifiedDate, memberExpireDate,
                                   memberLastLogon, memberOption, memberStatus,
                                   memberActivateCode, ""/*memberTempPassword*/, 0/*memberMessageCount*/,
                                   memberMessageOption, memberPostsPerPage, 0/*memberWarnCount*/,
                                   0/*memberVoteCount*/, 0/*memberVoteTotalStars*/, 0/*memberRewardPoints*/,
                                   memberTitle, memberTimeZone, ""/*memberSignature*/,
                                   ""/*memberAvatar*/, memberSkin, memberLanguage,
                                   memberFirstname, memberLastname, memberGender,
                                   memberBirthday, memberAddress, memberCity,
                                   memberState, memberCountry, memberPhone,
                                   memberMobile, memberFax, memberCareer,
                                   memberHomepage, memberYahoo, memberAol,
                                   memberIcq, memberMsn, memberCoolLink1,
                                   memberCoolLink2);

        // Now, create 4 default folders for each member
        int memberID = 0;
        try {
            memberID = DAOFactory.getMemberDAO().getMemberIDFromMemberName(memberName);
        } catch (ObjectNotFoundException e) {
        	System.out.println(e);
            //String localizedMessage = MVNForumResourceBundle.getString(locale, "mvncore.exception.ObjectNotFoundException.membername_not_exists", new Object[] {memberName});
            //throw new ObjectNotFoundException(localizedMessage);
        }

        int folderStatus = 0;
        int folderOption = 0;
        int folderType = 0;
        DAOFactory.getMessageFolderDAO().create(MVNForumConstant.MESSAGE_FOLDER_INBOX, memberID, 0/*order*/, folderStatus, folderOption, folderType, now, now);
        DAOFactory.getMessageFolderDAO().create(MVNForumConstant.MESSAGE_FOLDER_DRAFT, memberID, 1/*order*/, folderStatus, folderOption, folderType, now, now);
        DAOFactory.getMessageFolderDAO().create(MVNForumConstant.MESSAGE_FOLDER_SENT, memberID, 2/*order*/, folderStatus, folderOption, folderType, now, now);
        DAOFactory.getMessageFolderDAO().create(MVNForumConstant.MESSAGE_FOLDER_TRASH, memberID, 3/*order*/, folderStatus, folderOption, folderType, now, now);

        FloodControl.increaseCount(MVNForumGlobal.FLOOD_ID_NEW_MEMBER, currentIP);

        if (MVNForumConfig.getEnableCaptcha()) {
            onlineUser.destroyCurrentCaptcha();
        }

        // Add member to the lucene index
        MemberBean memberBean = null;
        try {
            memberBean = DAOFactory.getMemberDAO().getMember_forPublic(memberID);
        } catch(ObjectNotFoundException ex) {
            String localizedMessage = MVNForumResourceBundle.getString(locale, "mvncore.exception.ObjectNotFoundException.memberid_not_exists", new Object[] {new Integer(memberID)});
            throw new ObjectNotFoundException(localizedMessage);
        }
        MemberIndexer.scheduleAddMemberTask(memberBean);

        request.setAttribute("MemberBean", memberBean);

        // now, if require activation, then we will send mail
        if (MVNForumConfig.getRequireActivation()) {
            String serverName = ParamUtil.getServerPath();//ParamUtil.getServer2(request);
            try {
                SendMailUtil.sendActivationCodeEmail(memberID, serverName);
            } catch (Exception ex) {
                log.error("Cannot send mail after registration!", ex);
                request.setAttribute("mvnforum.mail.failed", "Cannot send activation email after registration!");
                //@todo: save the error message to displayed later
            }
        }

        // Begin for Company
        String companySpaceName = GenericParamUtil.getParameterSafe(request, "CompanySpaceName", false);
        if (companySpaceName.length() > 0) {
            try {
                int companyID = DAOFactory.getCompanyDAO().getCompanyIDFromCompanySpaceName(companySpaceName);
                CompanyBean companyBean = DAOFactory.getCompanyDAO().getCompany(companyID);

                int privilege      = 0;
                DAOFactory.getMemberGroupDAO().create(companyBean.getGroupID(), memberName, privilege,
                                            now/*creationDate*/, now/*modifiedDate*/);

                int isActive       = 0;
                int relationType   = 0;
                int relationOption = 0;
                int relationStatus = 0;
                Timestamp expireDate = new Timestamp(now.getTime() + DateUtil.DAY * 90);
                DAOFactory.getMemberCompanyDAO().create(memberID, memberName, companyID,
                                      now/*creationDate*/, expireDate, isActive,
                                      relationType, relationOption, relationStatus);
            } catch (ObjectNotFoundException ex) {
                // Cannot find company with the space name, just ignore
            }
        }
        // End for Company
    }

    public void processUpdate(GenericRequest request, GenericResponse response)
        throws BadInputException, ObjectNotFoundException, DatabaseException, AuthenticationException, AssertionException {

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

        MyUtil.saveVNTyperMode(request, response);

        int memberID = onlineUser.getMemberID();

        Timestamp now = DateUtil.getCurrentGMTTimestamp();

        // column(s) to update
        int memberEmailVisible      = GenericParamUtil.getParameterBoolean(request, "MemberEmailVisible")? MemberBean.MEMBER_EMAIL_VISIBLE : MemberBean.MEMBER_EMAIL_INVISIBLE;
        int memberNameVisible       = GenericParamUtil.getParameterBoolean(request, "MemberNameVisible") ? MemberBean.MEMBER_NAME_VISIBLE : MemberBean.MEMBER_NAME_INVISIBLE;
        int memberOption            = 0;//GenericParamUtil.getParameterInt(request, "MemberOption");
        int memberStatus            = 0;//@todo review and support it later
        int memberMessageOption     = 0;//GenericParamUtil.getParameterInt(request, "MemberMessageOption");
        int memberPostsPerPage      = GenericParamUtil.getParameterInt(request, "MemberPostsPerPage");
        if (memberPostsPerPage < 5) {
            memberPostsPerPage = 5;
        }
        double memberTimeZone       = GenericParamUtil.getParameterTimeZone(request, "MemberTimeZone");
        String memberSkin           = GenericParamUtil.getParameterSafe(request, "MemberSkin", false);
        String memberLanguage       = GenericParamUtil.getParameterSafe(request, "MemberLanguage", false);
        String memberFirstname      = GenericParamUtil.getParameterSafe(request, "MemberFirstname", true);
        String memberLastname       = GenericParamUtil.getParameterSafe(request, "MemberLastname", true);
        int memberGender            = GenericParamUtil.getParameterBoolean(request, "MemberGender")? 1 : 0;
        Date memberBirthday         = GenericParamUtil.getParameterDate(request, "MemberBirthday");
        String memberAddress        = GenericParamUtil.getParameterSafe(request, "MemberAddress", false);
        String memberCity           = GenericParamUtil.getParameterSafe(request, "MemberCity", false);
        String memberState          = GenericParamUtil.getParameterSafe(request, "MemberState", false);
        String memberCountry        = GenericParamUtil.getParameterSafe(request, "MemberCountry", false);
        String memberPhone          = GenericParamUtil.getParameterSafe(request, "MemberPhone", false);
        String memberMobile         = GenericParamUtil.getParameterSafe(request, "MemberMobile", false);
        String memberFax            = GenericParamUtil.getParameterSafe(request, "MemberFax", false);
        String memberCareer         = GenericParamUtil.getParameterSafe(request, "MemberCareer", false);
        String memberHomepage       = GenericParamUtil.getParameterUrl(request, "MemberHomepage");
        String memberYahoo          = GenericParamUtil.getParameterSafe(request, "MemberYahoo", false);
        String memberAol            = GenericParamUtil.getParameterSafe(request, "MemberAol", false);
        String memberIcq            = GenericParamUtil.getParameterSafe(request, "MemberIcq", false);
        String memberMsn            = GenericParamUtil.getParameterSafe(request, "MemberMsn", false);
        String memberCoolLink1      = GenericParamUtil.getParameterUrl(request, "MemberCoolLink1");
        String memberCoolLink2      = GenericParamUtil.getParameterUrl(request, "MemberCoolLink2");

        DAOFactory.getMemberDAO().update(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);

        // now, update the new displayed language option
        onlineUser.reloadProfile();
        MemberBean justAddedMemberBean = null;
        try {
            justAddedMemberBean = DAOFactory.getMemberDAO().getMember_forPublic(memberID);
        } catch(ObjectNotFoundException ex) {
            Locale locale = I18nUtil.getLocaleInRequest(request);
            String localizedMessage = MVNForumResourceBundle.getString(locale, "mvncore.exception.ObjectNotFoundException.memberid_not_exists", new Object[] {new Integer(memberID)});
            throw new ObjectNotFoundException(localizedMessage);
        }
        MemberIndexer.scheduleUpdateMemberTask(justAddedMemberBean);

    }

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

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

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

    public void processUpdateEmail(GenericRequest request)
        throws BadInputException, ObjectNotFoundException, DatabaseException, InterceptorException,
        DuplicateKeyException, AuthenticationException, AssertionException, MessagingException,IOException, TemplateException {

        OnlineUser onlineUser = onlineUserManager.getOnlineUser(request);
        MVNForumPermission permission = onlineUser.getPermission();
        permission.ensureIsAuthenticated();
        Locale locale = I18nUtil.getLocaleInRequest(request);

        int memberID = onlineUser.getMemberID();

        // column(s) to update
        String memberEmail          = GenericParamUtil.getParameterEmail(request, "MemberEmail");
        String memberEmailConfirm   = GenericParamUtil.getParameterEmail(request, "MemberEmailConfirm");
        if (memberEmail.length() > MVNForumGlobal.MAX_MEMBER_EMAIL_LENGTH) {
            String localizedMessage = MVNForumResourceBundle.getString(locale, "mvncore.exception.BadInputException.member_email_too_long");
            throw new BadInputException(localizedMessage);
            //throw new BadInputException("MemberEmail cannot be longer than 60 characters.");
        }
        InterceptorService.getInstance().validateMail(memberEmail);

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

        if (!memberEmail.equals(memberEmailConfirm)) {
            String localizedMessage = MVNForumResourceBundle.getString(locale, "mvncore.exception.BadInputException.confirmed_email_is_not_match");
            throw new BadInputException(localizedMessage);
            //throw new BadInputException("Email and confirmed email are not the same, please try again.");
        }

        // invalidate the activate status
        DAOFactory.getMemberDAO().updateActivateCode(memberID, "");

        DAOFactory.getMemberDAO().updateEmail(memberID, memberEmail);

        // now reload the permission if this online user change email (not activated now)
        onlineUser.reloadPermission();

        // now, if require activation, then we will send mail
        if (MVNForumConfig.getRequireActivation()) {

⌨️ 快捷键说明

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