📄 memberwebhandler.java
字号:
/*
* Copyright (C) 2002 by MyVietnam.net
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or any later version.
*
* All copyright notices regarding mvnForum
* must remain intact in the scripts and in the outputted HTML
* The "powered by" text/logo with a link back to
* http://www.mvnForum.com and http://www.MyVietnam.net in the footer of the pages MUST
* remain visible when the pages are viewed on the internet or intranet.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*
* Support can be obtained from support forums at:
* http://www.mvnForum.com/mvnforum/index
*
* Correspondence and Marketing Questions can be sent to:
* info@MyVietnam.net
*
* @author: Minh Nguyen minhnn@MyVietnam.net
* @author: Mai Nguyen mai.nh@MyVietnam.net
*/
package net.myvietnam.mvnplugin.mvnforum.user;
import javax.servlet.http.*;
import java.sql.*;
import java.util.Collection;
import java.util.List;// for upload stuff
import net.myvietnam.mvncore.exception.*;
import net.myvietnam.mvncore.util.ParamUtil;
import net.myvietnam.mvncore.util.DateUtil;
import net.myvietnam.mvncore.util.StringUtil;
import net.myvietnam.mvncore.util.ImageUtil;
import net.myvietnam.mvncore.util.FileUtil;
import net.myvietnam.mvncore.util.MailUtil;
import net.myvietnam.mvncore.filter.DisableHtmlTagFilter;
import net.myvietnam.mvncore.security.Encoder;
import net.myvietnam.mvncore.fileupload.*;
import net.myvietnam.mvnplugin.mvnforum.MVNForumConstant;
import net.myvietnam.mvnplugin.mvnforum.MVNForumInfo;
import net.myvietnam.mvnplugin.mvnforum.MVNForumGlobal;
import net.myvietnam.mvnplugin.mvnforum.MVNForumConfig;
import net.myvietnam.mvnplugin.mvnforum.MyUtil;
import net.myvietnam.mvnplugin.mvnforum.db.MemberBean;
import net.myvietnam.mvnplugin.mvnforum.auth.*;
class MemberWebHandler {
private OnlineUserManager userManager = OnlineUserManager.getInstance();
MemberWebHandler() {
}
void processAdd(HttpServletRequest request)
throws BadInputException, CreateException, DatabaseException, DuplicateKeyException, ForeignKeyNotFoundException {
Timestamp now = DateUtil.getCurrentGMTTimestamp();
String memberName = ParamUtil.getParameterSafe(request, "MemberName", true);// check good name
/** @todo move to a name filter */
if ( memberName.equalsIgnoreCase(MVNForumConstant.MEMBER_GUEST_NAME) ||
memberName.equalsIgnoreCase("Moderator") ) {
throw new BadInputException("Cannot register member with a reserved name : " + memberName);
}
StringUtil.checkGoodName(memberName);
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);
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.");
}
String memberFirstEmail = memberEmail;
int memberEmailVisible = ParamUtil.getParameterBoolean(request, "MemberEmailVisible")? 1 : 0;
int memberNameVisible = ParamUtil.getParameterBoolean(request, "MemberNameVisible") ? 1 : 0;
String memberFirstIP = request.getRemoteAddr();
String memberLastIP = memberFirstIP;
Timestamp memberCreationDate= now;
Timestamp memberModifiedDate= now;
Timestamp memberLastLogon = now;// xem lai
int memberOption = 0;//xem lai
int memberStatus = 0;// xem lai, ex: co can active khong?
String memberActivateCode = "";// xem lai
int memberMessageOption = 0;// xem lai
int memberPostsPerPage = 10;//xem lai
String memberTitle = "";
int memberTimeZone = ParamUtil.getParameterTimeZone(request, "MemberTimeZone");
String memberSkin = "";
String memberLanguage = "";
String memberFirstname = ParamUtil.getParameterSafe(request, "MemberFirstname", true);
String memberLastname = ParamUtil.getParameterSafe(request, "MemberLastname", true);
int memberGender = ParamUtil.getParameterBoolean(request, "MemberGender") ? 1 : 0;
Date memberBirthday = ParamUtil.getParameterDate(request, "MemberBirthday");
String memberAddress = ParamUtil.getParameterSafe(request, "MemberAddress", false);
String memberCity = ParamUtil.getParameterSafe(request, "MemberCity", false);
String memberState = ParamUtil.getParameterSafe(request, "MemberState", false);
String memberCountry = ParamUtil.getParameterSafe(request, "MemberCountry", false);
String memberPhone = ParamUtil.getParameterSafe(request, "MemberPhone", false);
String memberMobile = ParamUtil.getParameterSafe(request, "MemberMobile", false);
String memberFax = ParamUtil.getParameterSafe(request, "MemberFax", false);
String memberCareer = ParamUtil.getParameterSafe(request, "MemberCareer", false);
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.createMember(memberName, memberPassword, memberFirstEmail,
memberEmail, memberEmailVisible, memberNameVisible,
memberFirstIP, memberLastIP, 0/*memberViewCount*/,
0/*memberPostCount*/, memberCreationDate, memberModifiedDate,
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 2 default folders for each member
int memberID = MemberWebHelper.getMemberIDFromMemberName(memberName);
MessageFolderWebHelper.createMessageFolder(MVNForumConstant.MESSAGE_FOLDER_INBOX, memberID, 0, now, now);
MessageFolderWebHelper.createMessageFolder(MVNForumConstant.MESSAGE_FOLDER_SENT, memberID, 0, now, now);
/**@todo: check it*/
//request.setAttribute("MemberID", memberID);
/*
// Now see if the member want to join the maillist
boolean joinMailList = ParamUtil.getParameterBoolean(request, "JoinMailList");
if (joinMailList) {
String name = memberFirstname + " " + memberLastname;
String mailInfo = "You should receive a confirmed email in a few minutes.";
try {
try {
maillistWebHelper.findByAlternateKey(memberEmail);
// NOTE: we should check if the email in maillist is enable
return; // the email is already in the maillist
} catch (ObjectNotFoundException ex) {
// ok, go ahead
}
// I hope that the create method is ok, so the Exception below is for sendMail
maillistWebHelper.create(name, memberEmail, true);
// try to send an email
MailContent.sendMail_forMailList(name, memberEmail);
} catch (Exception ex) {
mailInfo = "Note: you have been added to our mailling list successfully, but we have problem with our mail server so we cannot send you a confirmed mail. Please report this to Website administrator.";
// do nothing, because we just try to send an email
}
request.setAttribute("MailInfo", mailInfo);
}//if
*/
}
public void processUpdate(HttpServletRequest request)
throws BadInputException, DatabaseException, AuthenticationException, AssertionException {
OnlineUser onlineUser = userManager.getOnlineUser(request);
MVNForumPermission permission = onlineUser.getPermission();
permission.ensureIsAuthenticated();
int memberID = onlineUser.getMemberID();
Timestamp now = DateUtil.getCurrentGMTTimestamp();
// column(s) to update
int memberEmailVisible = ParamUtil.getParameterBoolean(request, "MemberEmailVisible")? 1 : 0;
int memberNameVisible = ParamUtil.getParameterBoolean(request, "MemberNameVisible") ? 1 : 0;
int memberOption = ParamUtil.getParameterInt(request, "MemberOption");
int memberStatus = 0;//xem lai
int memberMessageOption = ParamUtil.getParameterInt(request, "MemberMessageOption");
int memberPostsPerPage = ParamUtil.getParameterInt(request, "MemberPostsPerPage");
int memberTimeZone = ParamUtil.getParameterTimeZone(request, "MemberTimeZone");
String memberSkin = ParamUtil.getParameterSafe(request, "MemberSkin", false);
String memberLanguage = ParamUtil.getParameterSafe(request, "MemberLanguage", false);
String memberFirstname = ParamUtil.getParameterSafe(request, "MemberFirstname", true);
String memberLastname = ParamUtil.getParameterSafe(request, "MemberLastname", true);
int memberGender = ParamUtil.getParameterBoolean(request, "MemberGender")? 1 : 0;
Date memberBirthday = ParamUtil.getParameterDate(request, "MemberBirthday");
String memberAddress = ParamUtil.getParameterSafe(request, "MemberAddress", false);
String memberCity = ParamUtil.getParameterSafe(request, "MemberCity", false);
String memberState = ParamUtil.getParameterSafe(request, "MemberState", false);
String memberCountry = ParamUtil.getParameterSafe(request, "MemberCountry", false);
String memberPhone = ParamUtil.getParameterSafe(request, "MemberPhone", false);
String memberMobile = ParamUtil.getParameterSafe(request, "MemberMobile", false);
String memberFax = ParamUtil.getParameterSafe(request, "MemberFax", false);
String memberCareer = ParamUtil.getParameterSafe(request, "MemberCareer", false);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -