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

📄 mymanageaction.java

📁 论坛软件系统亦称电子公告板(BBS)系统
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
			Map<String, Integer> multi = this.multi(request, response, uid,"SELECT COUNT(*) count FROM jrun_myposts m, jrun_threads t	WHERE m.uid=" + uid+ " AND m.special='5' " + threadadd + " AND m.tid=t.tid", "my.jsp?item=debate&type=apply" + extrafid);
			List<Map<String, String>> debatelists = dataBaseService.executeQuery("SELECT m.dateline, t.tid, t.fid, t.subject, t.displayorder, t.closed, f.name FROM jrun_myposts m, jrun_threads t ,jrun_forums f WHERE m.uid="+ uid+ " AND m.tid=t.tid AND t.fid=f.fid AND m.special='5' "+ threadadd+ " ORDER BY m.dateline DESC LIMIT "+ multi.get("start_limit") + ", " + multi.get("perpage"));
			if(debatelists!=null&&debatelists.size()>0){
				int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
				String timeformat=(String)session.getAttribute("timeformat");
				String dateformat=(String)session.getAttribute("dateformat");
				SimpleDateFormat sdf_all=new SimpleDateFormat(dateformat+" "+timeformat);
				for (Map<String, String> debatelist : debatelists) {
					debatelist.put("dateline", Common.gmdate(sdf_all, Integer.valueOf(debatelist.get("dateline"))+timeoffset));
				}
				request.setAttribute("debatelists", debatelists);
			}
			debatelists=null;
		}
		return mapping.findForward("toMy");
	}
	public ActionForward toMyVideo(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		HttpSession session = request.getSession();
		int uid = (Integer) session.getAttribute("jsprun_uid");
		this.setExtcredits(request);
		int srchfid = Common.toDigit(request.getParameter("srchfid"),10000000000L, 0L).intValue();
		String extrafid=null;
		if (srchfid > 0) {
			extrafid = "&amp;srchfid=" + srchfid;
			request.setAttribute("extrafid", extrafid);
		}else{
			extrafid = "";
		}
		Map<String, Integer> multi = this.multi(request, response, uid, "SELECT COUNT(*) count FROM jrun_videos WHERE uid=" + uid,"my.jsp?item=video");
		List<Map<String, String>> videolists = dataBaseService.executeQuery("SELECT * FROM jrun_videos WHERE uid='" + uid+ "' ORDER BY dateline DESC LIMIT " + multi.get("start_limit")+ ", " + multi.get("perpage"));
		int videonum = videolists.size();
		int colspan = videonum % 2;
		StringBuffer videoendrows = new StringBuffer();
		if (colspan > 0) {
			while ((colspan - 2) < 0) {
				videoendrows.append("<td></td>");
				colspan++;
			}
			videoendrows.append("</tr>");
		}
		if(videolists!=null&&videolists.size()>0){
			int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
			String timeformat=(String)session.getAttribute("timeformat");
			String dateformat=(String)session.getAttribute("dateformat");
			SimpleDateFormat sdf_all=new SimpleDateFormat(dateformat+" "+timeformat);
			for (Map<String, String> videolist : videolists) {
				videolist.put("dateline", Common.gmdate(sdf_all, Integer.valueOf(videolist.get("dateline"))+timeoffset));
			}
			request.setAttribute("videolists", videolists);
		}
		request.setAttribute("videoendrows", videoendrows.toString());
		videolists=null;
		videoendrows=null;
		return mapping.findForward("toMy");
	}
	public ActionForward toMyBuddylist(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) {
		HttpSession session = request.getSession();
		int uid = (Integer) session.getAttribute("jsprun_uid");
		this.setExtcredits(request);
		int srchfid = Common.toDigit(request.getParameter("srchfid"),10000000000L, 0L).intValue();
		String extrafid = null;
		if (srchfid > 0) {
			extrafid = "&amp;srchfid=" + srchfid;
			request.setAttribute("extrafid", extrafid);
		}else{
			extrafid = "";
		}
		if (request.getParameter("buddysubmit") == null) {
			List<Map<String, String>> buddylists = dataBaseService.executeQuery("SELECT b.buddyid,b.dateline, b.description,m.username FROM jrun_buddys b,jrun_members m WHERE b.uid="+ uid+ " AND m.uid=b.buddyid ORDER BY dateline DESC");
			if(buddylists!=null&&buddylists.size()>0){
				int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
				String timeformat=(String)session.getAttribute("timeformat");
				String dateformat=(String)session.getAttribute("dateformat");
				SimpleDateFormat sdf_all=new SimpleDateFormat(dateformat+" "+timeformat);
				for (Map<String, String> videolist : buddylists) {
					videolist.put("dateline", Common.gmdate(sdf_all, Integer.valueOf(videolist.get("dateline"))+timeoffset));
				}
				request.setAttribute("buddylists", buddylists);
			}
			return mapping.findForward("toMy");
		} else {
			String[] delete = request.getParameterValues("delete");
			if (delete != null) {
				StringBuffer buddyids=new StringBuffer();
				for (String buddyid : delete) {
					buddyids.append(buddyid+",");
				}
				int length=buddyids.length();
				if (length>0) {
					buddyids.deleteCharAt(length-1);
					dataBaseService.runQuery("DELETE FROM jrun_buddys WHERE uid=" + uid + " AND buddyid IN ( "+ buddyids + " )",true);
				}
			}
			List<Map<String, String>> buddys = dataBaseService.executeQuery("SELECT buddyid,description FROM jrun_buddys WHERE uid=" + uid);
			if (buddys != null && buddys.size() > 0) {
				for (Map<String, String> buddy : buddys) {
					String description = request.getParameter("description["+ buddy.get("buddyid") + "]");
					if (description != null) {
						description = description.length() > 255 ? description.substring(0, 255) : description;
						if (!description.equals(buddy.get("description"))) {
							dataBaseService.runQuery("UPDATE jrun_buddys SET description='" + description+ "' WHERE uid=" + uid + " AND buddyid="+ buddy.get("buddyid"),true);
						}
					}
				}
			}
			String jsprun_userss = session.getAttribute("jsprun_userss").toString();
			String newbuddy = request.getParameter("newbuddy");
			String newbuddyid = request.getParameter("newbuddyid");
			if (newbuddyid != null) {
				response.setContentType("text/html");
				response.setHeader("Cache-Control", "no-store"); 
				response.setHeader("Program", "no-cache");  
				response.setDateHeader("Expirse", 0);
			}
			if ((newbuddy != null && !"".equals(newbuddy) && !newbuddy.equals(jsprun_userss))|| (newbuddyid != null && !newbuddyid.equals(uid+""))) {
				byte jsprun_adminid = (Byte) session.getAttribute("jsprun_adminid");
				if (jsprun_adminid == 0) {
					if (buddys != null && buddys.size() > 20) {
						if (newbuddyid != null) {
							try {
								response.getWriter().write("您已经设定了超过 20 位好友。");
							} catch (IOException e) {
								e.printStackTrace();
							}
							return null;
						} else {
							request.setAttribute("resultInfo", "您已经设定了超过 20 位好友。");
							return mapping.findForward("showMessage");
						}
					}
				}
				List<Map<String, String>> members = dataBaseService.executeQuery("SELECT uid FROM jrun_members WHERE "+ (newbuddyid == null ? "username='" + newbuddy + "'": "uid=" + newbuddyid));
				if (members != null && members.size() > 0) {
					String buddyid = members.get(0).get("uid");
					boolean flag = false;
					if (buddys != null && buddys.size() > 0) {
						for (Map<String, String> buddy : buddys) {
							if (buddyid.equals(buddy.get("buddyid"))) {
								flag = true;
							}
						}
					}
					if (flag) {
						if (newbuddyid != null) {
							try {
								response.getWriter().write("用户已存在于您的好友列表中。");
							} catch (IOException e) {
								e.printStackTrace();
							}
							return null;
						} else {
							request.setAttribute("resultInfo", "用户已存在于您的好友列表中。");
							return mapping.findForward("showMessage");
						}
					} else {
						int timestamp = (Integer)(request.getAttribute("timestamp"));
						String newdescription = request.getParameter("newdescription");
						
						dataBaseService.runQuery("INSERT INTO jrun_buddys (uid, buddyid, dateline, description) VALUES ("+ uid+ ", "+ buddyid+ ", '"+ timestamp+ "', '"+ (newdescription != null ? (newdescription.length() > 255 ? newdescription.substring(0, 255): newdescription): "") + "')",true);
					}
				} else {
					if (newbuddyid != null) {
						try {
							response.getWriter().write("指定用户不存在,请返回修改。");
						} catch (IOException e) {
							e.printStackTrace();
						}
						return null;
					} else {
						request.setAttribute("errorInfo", "指定用户不存在,请返回修改。");
						return mapping.findForward("showMessage");
					}
				}
			}
			if (newbuddyid != null) {
				try {
					response.getWriter().write("好友列表成功更新。");
				} catch (IOException e) {
					e.printStackTrace();
				}
				return null;
			} else {
				if(Common.isshowsuccess(session, "buddy_update_succeed")){
					Common.requestforward(response, "my.jsp?item=buddylist");
					return null;
				}else{
					request.setAttribute("successInfo", "好友列表成功更新。");
					request.setAttribute("requestPath", "my.jsp?item=buddylist");
					return mapping.findForward("showMessage");
				}
			}
		}
	}	 
	@SuppressWarnings("unchecked")
	private void setExtcredits(HttpServletRequest request) {
		request.setAttribute("extcredits", dataParse.characterParse(((Map<String, String>) request.getAttribute("settings")).get("extcredits"),true));
	}

	@SuppressWarnings("unchecked")
	private Map<String, Integer> multi(HttpServletRequest request,HttpServletResponse response, int uid, String sql, String url) {
		HttpSession session=request.getSession();
		Map<String, String> settings = (Map<String, String>) request.getAttribute("settings");
		Members member = uid > 0 ? (Members)session.getAttribute("user") : null;
		List<Map<String, String>> count = dataBaseService.executeQuery(sql);
		int threadcount = Integer.valueOf(count.get(0).get("count"));
		Long threadmaxpages =Long.valueOf(settings.get("threadmaxpages"));
		int tpp = member != null && member.getTpp() > 0 ? member.getTpp(): Integer.valueOf(settings.get("topicperpage"));
		int page = Common.toDigit(request.getParameter("page"),threadmaxpages, 1L).intValue();
		Map<String,Integer> multiInfo=Common.getMultiInfo(threadcount, tpp, page);
		page=multiInfo.get("curpage");
		Map<String,Object> multi=Common.multi(threadcount, tpp, page, url, threadmaxpages.intValue(), 10, true, false, null, false);
		request.setAttribute("multi", multi);
		multiInfo.put("perpage", tpp);
		return multiInfo;
	}

	private String number_format(String total, String num) {
		return Common.number_format((Float.valueOf(total) > 0 ? Float.valueOf(num)/ Float.valueOf(total) * 100 : 0), "0.00")+ "%";
	}
	private void setAttribute(HttpServletRequest request,HttpSession session,List<Map<String,String>> lists,String attributeName){
		if(lists!=null&&lists.size()>0){
			int timeoffset=(int)((Float)session.getAttribute("timeoffset")*3600);
			String timeformat=(String)session.getAttribute("timeformat");
			String dateformat=(String)session.getAttribute("dateformat");
			SimpleDateFormat sdf_all=new SimpleDateFormat(dateformat+" "+timeformat);
			for (Map<String, String> list : lists) {
				list.put("lastpost", Common.gmdate(sdf_all, Integer.valueOf(list.get("lastpost"))+timeoffset));
				list.put("lastposterenc",Common.encode(list.get("lastposter")));
			}
			request.setAttribute(attributeName, lists);
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -