userconfigform.java
来自「cwbbs 云网论坛源码」· Java 代码 · 共 288 行
JAVA
288 行
package com.redmoon.blog;import cn.js.fan.base.*;import cn.js.fan.util.ErrMsgException;import cn.js.fan.db.SQLFilter;import javax.servlet.http.HttpServletRequest;import cn.js.fan.util.ParamUtil;import com.redmoon.forum.Privilege;import com.cloudwebsoft.framework.util.LogUtil;import com.redmoon.kit.util.FileUpload;import java.awt.Image;import java.io.IOException;import cn.js.fan.web.Global;import javax.swing.ImageIcon;import com.redmoon.kit.util.FileInfo;import java.util.Iterator;import java.util.Vector;import javax.servlet.ServletContext;import cn.js.fan.util.StrUtil;import cn.js.fan.web.SkinUtil;import com.redmoon.forum.person.UserMgr;import com.redmoon.forum.person.UserDb;import com.redmoon.forum.util.ForumFileUpload;public class UserConfigForm extends AbstractForm { UserConfigDb ucd; HttpServletRequest request; ServletContext application; ForumFileUpload fileUpload; public UserConfigForm(ServletContext application, HttpServletRequest request) { this.request = request; this.application = application; ucd = new UserConfigDb(); } public UserConfigDb getUserConfigDb() { return ucd; } public FileUpload doUpload(ServletContext application, HttpServletRequest request) throws ErrMsgException { fileUpload = new ForumFileUpload(); fileUpload.setMaxFileSize(Global.FileSize); String[] extnames = {"jpg", "gif", "png", "bmp"}; fileUpload.setValidExtname(extnames); int ret = 0; try { ret = fileUpload.doUpload(application, request); if (ret != fileUpload.RET_SUCCESS) { throw new ErrMsgException("ret=" + ret + " " + fileUpload.getErrMessage(request)); } } catch (IOException e) { logger.error("doUpload:" + e.getMessage()); } Vector v = fileUpload.getFiles(); Iterator ir = v.iterator(); if (ir.hasNext()) { FileInfo fi = (FileInfo) ir.next(); Image img = new ImageIcon( fi.getTmpFilePath()).getImage(); int w = img.getWidth(null); int h = img.getHeight(null); Config cfg = Config.getInstance(); int iconWidth = cfg.getIntProperty("iconWidth"); int iconHeight = cfg.getIntProperty("iconHeight"); if (w > iconWidth || h > iconHeight) { throw new ErrMsgException(StrUtil.format(SkinUtil.LoadString(request, "res.blog.UserConfigDb", "err_logo_size"), new Object[] {""+iconWidth, ""+iconHeight})); } } return fileUpload; } public UserConfigForm(ServletContext application, HttpServletRequest request, UserConfigDb ucd) { this.request = request; this.application = application; this.ucd = ucd; } public long chkId() { long id = -1; try { id = Long.parseLong(fileUpload.getFieldValue("id")); } catch (Exception e) { LogUtil.getLog(getClass()).error("chkId:" + e.getMessage()); } return id; } public int chkType() { int type = UserConfigDb.TYPE_PERSON; try { type = Integer.parseInt(fileUpload.getFieldValue("blogType")); } catch (Exception e) { LogUtil.getLog(getClass()).error("chkType:" + e.getMessage()); } ucd.setType(type); return type; } public String chkUserName() { Privilege privilege = new Privilege(); String userName = privilege.getUser(request); ucd.setUserName(userName); return userName; } public String chkTitle() { String title = StrUtil.getNullStr(fileUpload.getFieldValue("title")); if (title.equals("")) { log("标题必须填写!"); } if (!SQLFilter.isValidSqlParam(title)) log("请勿使用' ; 等字符!"); ucd.setTitle(title); return title; } public String chkFriends() { String friends = StrUtil.getNullStr(fileUpload.getFieldValue("friends")); if (!SQLFilter.isValidSqlParam(friends)) log("请勿使用' ; 等字符!"); String[] ary = StrUtil.split(friends, ","); if (ary!=null) { int len = ary.length; UserMgr um = new UserMgr(); for (int i=0; i<len; i++) { UserDb user = um.getUserDbByNick(ary[i]); if (user==null || !user.isLoaded()) log(ary[i] + " 不存在!"); else { UserConfigDb ucd = new UserConfigDb(); ucd = ucd.getUserConfigDbByUserName(user.getName()); if (ucd==null || !ucd.isLoaded()) { log(ary[i] + "的博客尚未开通!"); } } } } ucd.setFriends(friends); return friends; } public String chkSubTitle() { String subtitle = StrUtil.getNullStr(fileUpload.getFieldValue("subtitle")); if (subtitle.equals("")) { log("内容必须填写!"); } if (!SQLFilter.isValidSqlParam(subtitle)) log("请勿使用' ; 等字符!"); ucd.setSubtitle(subtitle); return subtitle; } public String chkPenName() { String penName = StrUtil.getNullStr(fileUpload.getFieldValue("penName")); if (penName.equals("")) { log("笔名必须填写!"); } if (!SQLFilter.isValidSqlParam(penName)) log("请勿使用' ; 等字符!"); ucd.setPenName(penName); return penName; } public String chkSkin() { String skin = StrUtil.getNullStr(fileUpload.getFieldValue("skin")); if (skin.equals("")) { log("皮肤必须填写!"); } if (!SQLFilter.isValidSqlParam(skin)) log("请勿使用' ; 等字符!"); ucd.setSkin(skin); return skin; } public String chkNotice() { String notice = StrUtil.getNullStr(fileUpload.getFieldValue("notice")); if (!SQLFilter.isValidSqlParam(notice)) log("请勿使用' ; 等字符!"); ucd.setNotice(notice); return notice; } public String chkDomain() { String domain = StrUtil.getNullStr(fileUpload.getFieldValue("domain")); if (!SQLFilter.isValidSqlParam(domain)) log("请勿使用' ; 等字符!"); if (StrUtil.isNumeric(domain)) { log("域名不能全为数字!"); } ucd.setDomain(domain); return domain; } public boolean chkBkMusic() { boolean bkMusic = StrUtil.toInt(fileUpload.getFieldValue("isBkMusic"), 0)==1; ucd.setBkMusic(bkMusic); return bkMusic; } public boolean chkUserCss() { boolean userCss = StrUtil.toInt(fileUpload.getFieldValue("isUserCss"), 0)==1; ucd.setUserCss(userCss); return userCss; } public String chkKind() { String kind = StrUtil.getNullStr(fileUpload.getFieldValue("kind")); if (kind.equals("")) log("博客分类必须选择!"); if (!SQLFilter.isValidSqlParam(kind)) log("请勿使用' ; 等字符!"); ucd.setKind(kind); return kind; } public boolean chkFootprint() { boolean re = fileUpload.getFieldValue("is_footprint").equals("1"); ucd.setFootprint(re); return re; } public boolean chkPhotoDig() { boolean re = fileUpload.getFieldValue("isPhotoDig").equals("1"); ucd.setPhotoDig(re); return re; } public boolean checkCreate() throws ErrMsgException { init(); doUpload(application, request); chkUserName(); chkTitle(); chkSubTitle(); chkPenName(); chkSkin(); chkNotice(); chkKind(); chkType(); chkFootprint(); chkDomain(); report(); return true; } public boolean checkModify() throws ErrMsgException { init(); doUpload(application, request); long id = chkId(); ucd = ucd.getUserConfigDb(id); chkTitle(); chkSubTitle(); chkPenName(); chkSkin(); chkNotice(); chkKind(); chkFriends(); chkFootprint(); chkDomain(); chkPhotoDig(); if (!ucd.getDomain().equals("") && !ucd.oldDomain.equals(ucd.getDomain())) { UserConfigDb ud = ucd.getUserConfigDbByDomain(ucd.getDomain()); if (ud!=null) log("域名:" + ucd.getDomain() + " 已被使用!"); } chkBkMusic(); chkUserCss(); report(); return true; }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?