📄 smiliesaction.java
字号:
package cn.jsprun.struts.action;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;
import cn.jsprun.dao.posts.ImagetypesDao;
import cn.jsprun.domain.Imagetypes;
import cn.jsprun.domain.Smilies;
import cn.jsprun.service.posts.ImagetypesService;
import cn.jsprun.service.posts.SmiliesService;
import cn.jsprun.utils.BeanFactory;
import cn.jsprun.utils.Cache;
import cn.jsprun.utils.Common;
import cn.jsprun.utils.FormDataCheck;
public class SmiliesAction extends DispatchAction {
private ImagetypesService imagetypesService = (ImagetypesService) BeanFactory.getBean("imagetypesService");
private SmiliesService smilieService = (SmiliesService) BeanFactory.getBean("smiliesService");
public ActionForward batchSmiliestypes(ActionMapping mapping,
ActionForm form, HttpServletRequest request,
HttpServletResponse response) {
String smiliessubmit = request.getParameter("smiliessubmit");
if(smiliessubmit==null){
Common.requestforward(response, "admincp.jsp?action=smilies");
return null;
}
String hiddenStr = request.getParameter("showcount");
Integer count = Integer.valueOf(hiddenStr != null ? hiddenStr : "0");
List<Imagetypes> list = new ArrayList<Imagetypes>();
for (int i = 1; i <= count; i++) {
Imagetypes image = new Imagetypes();
String newname = request.getParameter(this.getNewName(i));
String newdisplayorder = request.getParameter(this.getNewDisplayorder(i));
String newdirectory = request.getParameter(this.getNewDirectory(i));
if (FormDataCheck.isValueString(newdirectory)) {
image.setName(this.isNull(newname));
image.setType("smiley");
if (FormDataCheck.isNum(newdisplayorder)) {
image.setDisplayorder(Short.valueOf(newdisplayorder));
} else {
image.setDisplayorder(Short.valueOf("0"));
}
image.setDirectory(newdirectory);
list.add(image);
}
}
imagetypesService.saveList(list);
String[] ids = request.getParameterValues("delete[]");
if (ids != null && ids.length > 0) {
Short[] typeids = new Short[ids.length];
for (int i = 0; i < ids.length; i++) {
typeids[i] = Short.valueOf(ids[i]);
}
imagetypesService.deleteImagetypesAll(typeids);
}
String typeids[] = request.getParameterValues("typeid");
List<Imagetypes> nameValueList = new ArrayList<Imagetypes>();
if (typeids != null) {
for (int i = 0; i < typeids.length; i++) {
String names = request.getParameter("namenew["+typeids[i]+"]");
String values = request.getParameter("displayordernew["+typeids[i]+"]");
short value = Common.toDigit(values,1000000L,0L).shortValue();
if (names!=null) {
Imagetypes imagetypes = new Imagetypes();
imagetypes.setDisplayorder(value);
imagetypes.setName(names);
imagetypes.setTypeid(Short.valueOf(typeids[i]));
nameValueList.add(imagetypes);
}
}
imagetypesService.updateNameImagetypes(nameValueList);
}
list = null;nameValueList=null;typeids=null;ids=null;
Cache cache = new Cache(servlet.getServletContext().getRealPath("/"));
try {
cache.updatecache("post");
} catch (Exception e) {
e.printStackTrace();
}
String successInfo = "表情列表更新成功。";
request.setAttribute("successInfo", successInfo);
request.setAttribute("requestPath", "admincp.jsp?action=smilies");
return mapping.findForward("success");
}
private String getNewName(int i) {
StringBuffer sb = new StringBuffer("newname[");
sb.append(i);
sb.append("]");
return sb.toString();
}
private String getNewDisplayorder(int i) {
StringBuffer sb = new StringBuffer("newdisplayorder[");
sb.append(i);
sb.append("]");
return sb.toString();
}
private String getNewDirectory(int i) {
StringBuffer sb = new StringBuffer("newdirectory[");
sb.append(i);
sb.append("]");
return sb.toString();
}
private String isNull(String str) {
return str == null ? "" : str;
}
@SuppressWarnings("unchecked")
public ActionForward findBySmilies(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
Map map = null;
Integer currentPage = 1;
String page = request.getParameter("page");
currentPage = page == null ? 1 : Integer.valueOf(page);
String edit = request.getParameter("edit");
String directoryStr = request.getParameter("directory");
String path = servlet.getServletContext().getRealPath("/")+"images/smilies/"+directoryStr;
File fils = new File(path);
if (FormDataCheck.isValueString(edit)) {
map = imagetypesService.showImagesToID(Short.valueOf(edit.trim()),currentPage);
}
if (map == null || map.get(ImagetypesDao.DIRECTORY) == null || !fils.exists()) {
String successInfo = "表情目录 ./images/smilies/" + directoryStr
+ " 不存在,您可以通过 FTP 创建目录 ./images/smilies/" + directoryStr
+ " 并上传相应的表情图片。请返回。";
request.setAttribute("errorInfo", successInfo);
return mapping.findForward("error");
} else {
request.setAttribute("edit", edit);
List<Smilies> list = (List) map.get(ImagetypesDao.SMILIES);
String hiddenids = getList(list);
request.setAttribute("ids", hiddenids);
request.setAttribute(ImagetypesDao.CURRENTPAGE, map
.get(ImagetypesDao.CURRENTPAGE));
request.setAttribute(ImagetypesDao.TOTALPAGE, map
.get(ImagetypesDao.TOTALPAGE));
request.setAttribute(ImagetypesDao.SMILIES, map
.get(ImagetypesDao.SMILIES));
request.setAttribute(ImagetypesDao.TOTALSIZE, map
.get(ImagetypesDao.TOTALSIZE));
}
request.setAttribute("name", map.get("name"));
request.setAttribute("directory", directoryStr);
request.setAttribute("typeid", edit);
return mapping.findForward("findBySmilies");
}
private String getList(List<Smilies> list) {
StringBuffer ids = new StringBuffer();
if (list != null && list.size() > 0) {
for (int i = 0; i < list.size(); i++) {
ids.append(list.get(i).getId());
ids.append(",");
}
}
return ids.toString();
}
public ActionForward updateSmilies(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String editsubmit = request.getParameter("editsubmit");
if(editsubmit==null){
Common.requestforward(response, "admincp.jsp?action=smilies");
return null;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -