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

📄 othermanageaction.java

📁 论坛软件系统亦称电子公告板(BBS)系统
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
			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("\"", "&quot;"));
				}
				if(mImage!=null){
					medals.setImage(mImage.replace("\"", "&quot;"));
				}
			}
			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("\"", "&quot;"):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 + -