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

📄 artshowtag.java

📁 一个不错的bbs论坛系统.对初学者很有帮助
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
package com.yhbbs.comm.tag;

import java.util.HashMap;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.JspWriter;
import javax.servlet.jsp.tagext.TagSupport;
import org.apache.log4j.Logger;
import com.yhbbs.article.biz.ArticleBiz;
import com.yhbbs.article.itface.Article;
import com.yhbbs.comm.Pages;
import com.yhbbs.user.biz.UserBiz;
import com.yhbbs.user.biz.UserLevelBiz;
import com.yhbbs.user.itface.bean.User;
import com.yhbbs.user.itface.bean.UserSession;
import com.yhbbs.utils.Constants;
import com.yhbbs.utils.DateUtils;
import com.yhbbs.utils.ReqUtils;
import com.yhbbs.utils.StringUtils;
import com.yhbbs.vote.biz.VoteBiz;
import com.yhbbs.vote.itface.Vote;
/**
 * <p>Title: 论坛帖子浏览</p>
 * <li>论坛帖子浏览
 * <p>Company: www.yyhweb.com</p>
 * <br><b>CopyRight: yyhweb[由由华网]</b>
 * @author stephen
 * @version YHBBS-2.0
 */
public class ArtShowTag extends TagSupport{
	
	private static final long serialVersionUID = 1L;
	
	private static Logger bbslog = Logger.getLogger(ArtShowTag.class);
	
	public int doStartTag() throws JspException {
	    return 0;
	}
	public int doEndTag() throws JspException {
	   try {  
	    	HttpServletRequest request = (HttpServletRequest)pageContext.getRequest();
	    	HttpSession session = request.getSession(true);
    	 	UserSession curUser = (UserSession)session.getAttribute(Constants.bbsuser);
    	 	StringBuffer sb = new StringBuffer();
    	 	int artId = ReqUtils.getIntAtt(request,"curAId");
    	 	Article article = ArticleBiz.getArtContent(artId);
    	 	int classId = article.getClassid();
    	 	int forumId = article.getForum();
    	 	String islock = article.getIslock();
    	 	String artTitle = article.getTitle();
    	    
    	 	request.setAttribute("islock",islock);//传递给回复标签
    	 	request.setAttribute("arttitle",artTitle);
    	 	request.setAttribute("cid",classId);
    	 	request.setAttribute("fid",forumId);
    	 	request.setAttribute("aid",artId);
    	 	
    	     	 	
    	 	//fenye
    	     int artreplay = ArticleBiz.getArtReplayC(artId);
    	 	 int curPage = ReqUtils.getInt(request,"curPage");
	    	 int pagesize = 12;
	    	 Pages pages = new Pages(artreplay, curPage,pagesize,"Article.htm?cId="+classId+"&fId=" + forumId+"&aId="+artId);
	         int start = 0;
	         curPage = pages.getCurPage();
	         if(curPage>1){
		 		start = (curPage-1)*pagesize;
		 	 }
	         int flr = pagesize*(curPage-1)+1;
    	 	 HashMap<String,Integer> artrp = new HashMap<String,Integer>();
    	 	 artrp.put("artId",artId);
    	 	 artrp.put("start",start);
    	 	 artrp.put("end",pagesize);
    	 	
    	 	List replays = ArticleBiz.getArtReplay(artrp);
    	 	sb.append("<table align=center cellSpacing=0 cellPadding=0 width=100%>");
	    	 sb.append("<tr><td>");
	    	 sb.append("<a href=Post.htm?cId="+classId+"&fId="+forumId+"&action=post>");
	    	 sb.append("<img src=webapp/images/newpost.gif border=0 alt=发表新帖子></a>");
	    	 sb.append("&nbsp;&nbsp;<a href=Post.htm?cId="+classId+"&fId="+forumId+"&action=vote>");
	    	 sb.append("<img src=webapp/images/newvote.gif border=0 alt=发表新投票></a>");
	    	 sb.append("&nbsp;&nbsp;<a href=Post.htm?cId="+classId+"&fId="+forumId+"&aId="+artId+"&action=replay>");
	    	 sb.append("<img src=webapp/images/replay.gif border=0 alt=回复此帖></a>");
	    	 sb.append("</td><td>您是该帖的第");
	    	 sb.append(article.getReadtimes());
	    	 sb.append(" 个阅读者</td>");
	    	 sb.append("</tr></table>");
	    	 
	    	 sb.append("<table class=tab1 align=center cellSpacing=0 cellPadding=0 width=100%>");//outside
	    	 sb.append("<tr><td colspan=3>");
		    	 sb.append("<table class=tab_c width=100% cellSpacing=0 cellPadding=0>");
		    	 sb.append("<tr height=25px align=center><td align=left>&nbsp;&nbsp;<b><font color=#FFFFFF>");
		    	 sb.append(" * 贴子主题: &nbsp;&nbsp;&nbsp;");
		    	 sb.append(artTitle);
		    	 sb.append("</b></font></td>");
		    	 sb.append("<td align=right>");
		 		 sb.append("&nbsp;&nbsp;<a href='#bottom'><img src=webapp/images/gobottom.gif border=0 alt=到底部 /></a>&nbsp;&nbsp;");
		 		 sb.append("</td></tr>");
		    	 sb.append("</table>");
		    sb.append("</td></tr>"); 
		    if(curPage==1){
		    	sb.append(display(curUser,article,0));
		    }
 		    //replay
		    int rpnum = replays.size();
		    Article replay = null;
		    for(int i=0;i<rpnum;i++){
		    	int floor = flr+i;
		    	replay = (Article)replays.get(i);
		    	sb.append(display(curUser,replay,floor));
		    }
	    	 sb.append("<tr class=tr_1 height=30px><td class=td_t colspan=3>");
	    	 sb.append(pages.getPageInfo());
	    	 sb.append("</td></tr>");
	    	 sb.append("</table>");//outside
    	 	 JspWriter out = pageContext.getOut();
	         out.println(sb);
	         sb = null;
	     }catch(Exception e){
	            bbslog.error("ArtShowTag tag's doEndTag error!");
	     }
	     return 6;
	 }
	private String display(UserSession curUser,Article article,int floor){
		StringBuffer sb = new StringBuffer();
		int bbsUId = 0;
		int bbsUType = 0;
		if(curUser!=null){
			bbsUId = curUser.getUserId();
			bbsUType = curUser.getUsertype();
		}
		int artId = article.getId();
	 	int classId = article.getClassid();
	 	int forumId = article.getForum();
	 	String titleimg = article.getTitleimg();
	 	String edituser = article.getEdituser();
	 	String edittime = article.getEdittime();
	 	int userId = article.getUserid();
	 	int readmoney = article.getReadmoney();
	 	String isvote = article.getIsvote();
	 	String content = article.getContent().getContent();
	 	content = StringUtils.ubbEncode(StringUtils.strEncode(content));
	 	String dateFM = Constants.dateFM;
	 	// get user
	 	User user = UserBiz.getUser(userId);
	 	String username = user.getUsername();
	 	String usersign = StringUtils.htmlEncode(user.getSignature());
	 	String userimage = user.getImage();
	 	String userimgurl = user.getImageurl();
	 	String pertitle = user.getPersontitle();
	 	String social = user.getSocialpart();
	 	int charam = user.getCharam();
	 	int excp = user.getExperience();
	 	int money = user.getMoney();
	 	int imgw = user.getImagewidth();
	 	int imgh = user.getImageheight();
	 	if(floor%2==0)
	 		sb.append("<tr class=tr_1 height=100px>");
	 	else
	 		sb.append("<tr height=100px>");
		    sb.append("<td class=td_t width=23% valign=top>");//left
 		    sb.append("<table align=center width=94% cellSpacing=0 cellPadding=0>");
		    sb.append("<tr><td>");
 		    if(user.getIsonline().equals("1"))
 		    	sb.append("&nbsp;<img src=webapp/images/online.gif border=0 alt=在线 />&nbsp;&nbsp;&nbsp;&nbsp;");
 		    else
 		    	sb.append("&nbsp;<img src=webapp/images/offline.gif border=0 alt=离线 />&nbsp;&nbsp;&nbsp;&nbsp;");
 		    sb.append("<a href='User.htm?uId=");
 		    sb.append(user.getId());
 		    sb.append("'>");
 		    sb.append(username);
 		   sb.append("</a></td></tr>");
 		   	
 		    sb.append("<tr><td>");
	    	if(pertitle.length()>1){
	    		sb.append("个人头衔:&nbsp;");
	 		   	sb.append(pertitle);
	 		   	sb.append("<br>");
	    	}
	    	if(social.length()>1){
	    		sb.append("江湖门派:&nbsp;");
	 		   	sb.append(social);
	 			sb.append("<br>");
	    	}
 		   	sb.append("</td></tr>");
 		    sb.append("<tr><td>");
	    	if(userimage.length()>4){
	    		sb.append("<img ");
	    		if(imgw>0 && imgh>0)
	    		  sb.append(" width="+imgw+" height="+imgh);
	    		sb.append(" src=webapp/images/avatars/");
	    		sb.append(userimage);
	    		sb.append(" border=0 >");
	    	}else if(userimgurl.length()>4){
	    		sb.append("<img ");
	    		if(imgw>0 && imgh>0)
	    			sb.append(" width="+imgw+" height="+imgh);
	    		sb.append(" src=");
	    		if(userimgurl.indexOf("http://")==-1)
	    			sb.append(Constants.userimgpath);
	    		sb.append(userimgurl);
	    		sb.append(" border=0 >");
	    	}
 		   	sb.append("</td></tr>");
 		   	//wei wang
 		   	sb.append("<tr><td>威望:&nbsp;");
	    	sb.append(user.getPrestige());
	    	sb.append("<br>级别:&nbsp;");
	    	sb.append(UserLevelBiz.getGradeName(user.getGrade(),user.getUsertype()));
	    	sb.append("<br>魅力:&nbsp;<img src=webapp/images/charam.gif border=0 height=8 width=");
	    	sb.append(doimg(charam));
	    	sb.append(" alt=");
	    	sb.append(charam);
	    	sb.append(" /><br>经验:&nbsp;<img src=webapp/images/experic.gif border=0 height=8 width=");
	    	sb.append(doimg(excp));
	    	sb.append(" alt=");
	    	sb.append(excp);
	    	sb.append(" /><br>现金:&nbsp;");
	    	sb.append(money);
	    	sb.append("<br>发帖数:&nbsp;");
	    	sb.append(user.getPostnum());
	    	sb.append("&nbsp;篇<br>注册时间:&nbsp;");
	    	sb.append(DateUtils.getStr2Str(dateFM,user.getRegtime()));
	    	sb.append("<br></td></tr>");
			sb.append("</table>");	
		    //end left

⌨️ 快捷键说明

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