📄 othermanageaction.java
字号:
ann.setMessage(newMessage);
ann.setType(newType);
ann.setGroups(groupIdSb.toString());
ann.setAuthor(((Members)request.getSession().getAttribute("members")).getUsername());
try {
ann.setStarttime(ForumCommonsUtil.dateStrToDateLong(newStartTime)-(int)(timeoffset*3600));
ann.setEndtime("0".equals(newEndTime)?0:ForumCommonsUtil.dateStrToDateLong(newEndTime)-(int)(timeoffset*3600));
} catch (NumberFormatException e) {
request.setAttribute("errorInfo", "格式错误的公告开始时间或者结束时间。");
return mapping.findForward("error");
} catch (ParseException e) {
request.setAttribute("errorInfo", "格式错误的公告开始时间或者结束时间。");
return mapping.findForward("error");
}
if(otherSetService.updateAnn(ann)){
String realPath = servlet.getServletContext().getRealPath("/");
String[] updateKeyArray = {"index","forumdisplay","viewthread"};
UpdateCache.excude(realPath, updateKeyArray);
request.setAttribute("successInfo", "论坛公告更新成功。");
request.setAttribute("requestPath", "admincp.jsp?action=announcements");
return mapping.findForward("success");
}else{
request.setAttribute("errorInfo", "论坛公告更新失败。");
return mapping.findForward("error");
}
}
}
public ActionForward medals(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {
String medalsubmit = request.getParameter("medalsubmit");
if(medalsubmit==null){
List<Medals> medalBeanList = otherSetService.queryAllMedals();
for(Medals medals : medalBeanList){
String mName = medals.getName();
String mImage = medals.getImage();
if(mName!=null){
medals.setName(mName.replace("\"", """));
}
if(mImage!=null){
medals.setImage(mImage.replace("\"", """));
}
}
request.setAttribute("medalBeanList", medalBeanList);
return mapping.findForward("other_medals");
}else{
List<Medals> medalBeanList = new ArrayList<Medals>();
Medals mBean = null;
Medals addMedalBean = null;
String deletes[] = request.getParameterValues("delete");
String mIds[] = request.getParameterValues("medalid");
String medalName[] = request.getParameterValues("name");
String medalImg[] = request.getParameterValues("image");
String newName = request.getParameter("newname");
String newAvailable = request.getParameter("newavailable");
String newImage = request.getParameter("newimage");
if(!FormDataCheck.isZeroOption(mIds)){
int len = mIds.length;
for(int i=0;i<len;i++){
if(!FormDataCheck.isValueString(medalName[i])){
request.setAttribute("errorInfo", "勋章名字必须为有效字符串。");
return mapping.findForward("error");
}
}
for(int i=0;i<len;i++){
mBean = new Medals();
mBean.setMedalid(Short.valueOf(mIds[i]));
mBean.setName(medalName[i]);
mBean.setImage(medalImg[i]);
String available = request.getParameter("available" + mIds[i]);
if (available != null) {
mBean.setAvailable(Byte.valueOf(available));
} else {
mBean.setAvailable((byte)0);
}
medalBeanList.add(mBean);
}
}
if (FormDataCheck.isValueString(newImage)) {
if (FormDataCheck.isValueString(newName)) {
addMedalBean = new Medals();
addMedalBean.setName(newName);
addMedalBean.setImage(newImage);
if (newAvailable != null) {
addMedalBean.setAvailable(Byte.valueOf(newAvailable));
} else {
addMedalBean.setAvailable((byte) 0);
}
} else {
request.setAttribute("errorInfo", "所添加的勋章名字必须为有效字符串。");
return mapping.findForward("error");
}
}
otherSetService.updateForumMedals(deletes, medalBeanList, addMedalBean);
request.setAttribute("successInfo", "论坛勋章更新成功。");
request.setAttribute("requestPath", "admincp.jsp?action=medals");
return mapping.findForward("success");
}
}
@SuppressWarnings("unchecked")
public ActionForward adv(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) {
float timeoffset = Float.parseFloat(ForumInit.settings.get("timeoffset"));
String advsubmit = request.getParameter("advsubmit");
String step = request.getParameter("step");
if(advsubmit == null){
if(step == null){
String title = request.getParameter("title");
String startTime = request.getParameter("starttime");
String type = request.getParameter("type");
String orderBy = request.getParameter("orderby");
List<Map<String,String>> formId_nameMapList = dataBaseService.executeQuery("SELECT f.fid,f.name FROM jrun_forums AS f WHERE f.type<>'group'");
Map<String,String> forumMap = new HashMap<String, String>();
for(Map<String,String> tempMap : formId_nameMapList){
forumMap.put(tempMap.get("fid"), tempMap.get("name"));
}
StringBuffer url = new StringBuffer();
url.append("admincp.jsp?action=adv");
if(title!=null&&!title.equals("")){
url.append("&title="+title);
}
if(startTime!=null&&!startTime.equals("")){
url.append("&starttime="+startTime);
}
if(type!=null&&!type.equals("")){
url.append("&type="+type);
}
if(orderBy!=null&&!orderBy.equals("")){
url.append("&orderby="+orderBy);
}
int page = Common.toDigit(request.getParameter("page"), 2147483647l, 1l).intValue();
int perpage=15;
int start_limit = (page - 1) * perpage;
if(start_limit<0){
page=1;
start_limit=0;
}
String countKey="dataCount";
String listKey = "dataList";
Map map = adService.queryAdvWithPagination(title, startTime, type, orderBy, start_limit, perpage, countKey, listKey);
Map<String,Object> multi=Common.multi((Integer)map.get(countKey), perpage, page, url.toString(), 0, 10, true, false, null, false);
request.setAttribute("multi",multi);
AdvIndexVO advIndexVO = setAdvIndexVO((List<Advertisements>)map.get(listKey), forumMap,title,orderBy, startTime, type,timeoffset);
request.setAttribute("valueObject", advIndexVO);
return mapping.findForward("other_adv");
}else if("1".equals(step)){
HttpSession session=request.getSession();
String title = request.getParameter("title");
String style = request.getParameter("style");
String type = request.getParameter("type");
AdvVO advVO = new AdvVO();
advVO.setStyle(style);
advVO.setTitle(title!=null?title.replace("\"", """):null);
advVO.setType(type);
advVO.setStarttime(Common.gmdate(new SimpleDateFormat("yyyy-MM-dd"), Common.time(), timeoffset));
if(type.equals("intercat")){
List<Map<String,String>> forumList = dataBaseService.executeQuery("SELECT fid,name FROM jrun_forums WHERE type='group'");
StringBuffer forumlistBuffer =new StringBuffer();
for(Map<String,String> forum:forumList){
forumlistBuffer.append("<option value='"+forum.get("fid")+"'>"+Common.strip_tags(forum.get("name"))+"</option>");
}
advVO.setSelectContent(forumlistBuffer.toString());
}else{
Members member = (Members)session.getAttribute("user");
Short groupid = (Short)session.getAttribute("jsprun_groupid");
advVO.setSelectContent(Common.forumselect(false, false,groupid,member!=null?member.getExtgroupids():"",null,false));
}
if(type.equals("thread")){
advVO.setPostperpage(Integer.valueOf(ForumInit.settings.get("postperpage")));
}
request.setAttribute("valueObject", advVO);
return mapping.findForward("other_advadd");
}else{
request.setAttribute("errorInfo", "未定义操作!");
return mapping.findForward("error");
}
}else{
if(step == null){
String deleteIds[] = request.getParameterValues("delete");
String ids[] = request.getParameterValues("id");
String displayOrders[] = request.getParameterValues("displayorder");
String titles[] = request.getParameterValues("title");
if(!FormDataCheck.isZeroOption(ids)){
int len = ids.length;
String[] availables = new String[len];
String avaialbe = null;
for(int i=0;i<len;i++){
if(!FormDataCheck.isNum(displayOrders[i])){
displayOrders[i] = "0";
}
if(!FormDataCheck.isValueString(titles[i])){
request.setAttribute("errorInfo", "广告标题必须为有效字符串。");
return mapping.findForward("error");
}
if(titles[i].length()>50){
request.setAttribute("errorInfo", "存在过长的广告标题,请保持在50个字符之内");
return mapping.findForward("error");
}
avaialbe = request.getParameter("available"+ids[i]);
availables[i] = avaialbe==null?"0":avaialbe;
}
adService.updateAds(deleteIds, ids, titles, displayOrders, availables);
String realPath = servlet.getServletContext().getRealPath("/");
String[] updateKeyArray = {"archiver","register","index","forumdisplay","viewthread","settings"};
UpdateCache.excude(realPath, updateKeyArray);
}
request.setAttribute("successInfo", "论坛广告信息更新成功。");
request.setAttribute("requestPath", "admincp.jsp?action=adv");
return mapping.findForward("success");
}else if("2".equals(step)){
String title = request.getParameter("title");
if(!FormDataCheck.isValueString(title)){
request.setAttribute("errorInfo", "论坛广告标题必须为有效字符串。");
return mapping.findForward("error");
}
if(title.length()>50){
request.setAttribute("errorInfo", "广告标题过长,请保持在50个字符之内。");
return mapping.findForward("error");
}
String startTime = request.getParameter("starttime");
if((startTime = validateStartTime(startTime, FinalProperty.TIME_OF_Announcement_MAX, FinalProperty.TIME_OF_Announcement_MIN, request))==null){
return mapping.findForward("error");
}
String endTime = request.getParameter("endtime");
Date date = new Date();
SimpleDateFormat dateFormat = new SimpleDateFormat(FinalProperty.DATA_FORMAT);
String nowTime = dateFormat.format(date);
if(endTime==null || "".equals(endTime)){
endTime = "0";
}else if((endTime = validateEndTime(endTime,startTime,nowTime, FinalProperty.TIME_OF_Announcement_MAX, FinalProperty.TIME_OF_Announcement_MIN, request))==null){
return mapping.findForward("error");
}
int starttime=0;
int endtime=0;
try {
starttime=ForumCommonsUtil.dateStrToDateLong(startTime)-(int)timeoffset*3600;
endtime="0".equals(endTime)?0:ForumCommonsUtil.dateStrToDateLong(endTime)-(int)timeoffset*3600;
} catch (ParseException e) {
request.setAttribute("errorInfo", "错误的广告开始时间或者结束时间。");
return mapping.findForward("error");
}
String targets[] = request.getParameterValues("targets");
String target = "";
if(targets!=null){
int len = targets.length;
StringBuffer targetSb = new StringBuffer();
for(int i=0;i<len;i++){
if(targets[i].equals("all")){
targetSb.delete(0, targetSb.length());
targetSb.append("all");
break;
}
if(targets[i].equals("")){
continue;
}
if(i==len-1){
targetSb.append(targets[i]);
}else{
targetSb.append(targets[i] + "\t");
}
}
target = targetSb.toString();
}
String type = request.getParameter("type");
Map<String,String> adMap = new HashMap<String,String>();
String position = request.getParameter("position");
if (position != null) {
if(type.equals("intercat")){
String[] positions = request.getParameterValues("position");
StringBuffer positionSb = new StringBuffer();
for(String temp : positions){
if(!temp.equals("")){
if(temp.equals("0")){
positionSb.append(temp+",");
break;
}else{
positionSb.append(temp+",");
}
}
}
if(positionSb.length()>0){
position = positionSb.substring(0,positionSb.length()-1);
}else{
position = "";
}
}
adMap.put("position", position);
} else {
adMap.put("position", null);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -