亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dlog_bbs_velocitytool.java

?? 個人Blog java編寫的Blog可以直接使用!
?? JAVA
字號:
/*
 *  DLOG_BBS_VelocityTool.java
 *  
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU Library General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 *  
 *  Author: Winter Lau
 *  http://dlog4j.sourceforge.net
 */
package com.liusoft.dlog4j.velocity;

import java.util.Iterator;
import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import com.liusoft.dlog4j.SessionUserObject;
import com.liusoft.dlog4j.TextCacheManager;
import com.liusoft.dlog4j.base._TopicBeanBase;
import com.liusoft.dlog4j.beans.ForumBean;
import com.liusoft.dlog4j.beans.SiteBean;
import com.liusoft.dlog4j.beans.TopicBean;
import com.liusoft.dlog4j.beans.TopicOutlineBean;
import com.liusoft.dlog4j.beans.TopicReplyBean;
import com.liusoft.dlog4j.dao.BBSForumDAO;
import com.liusoft.dlog4j.dao.BBSReplyDAO;
import com.liusoft.dlog4j.dao.BBSTopicDAO;

/**
 * 用在DLOG中的BBS的VelocityTool類
 * 
 * @author Winter Lau
 */
public class DLOG_BBS_VelocityTool{

	private static Log log = LogFactory.getLog(DLOG_BBS_VelocityTool.class);
	
	private static final String FORUMS = "forums";
	
	/**
	 * 列出某個網站對指定用戶有效的所有討論區
	 * @param site
	 * @param user
	 * @return
	 */
	public List forums(HttpServletRequest req, SiteBean site, SessionUserObject user){
		List forums = (List)req.getAttribute(FORUMS);
		if(forums == null && site!=null){
			forums = site.getForums();
			Iterator iter = forums.iterator();
			while(iter.hasNext()){
				ForumBean fbean = (ForumBean)iter.next();
				if (fbean.getStatus() == ForumBean.STATUS_HIDDEN
						&& (user == null || !site.isOwner(user)))
					iter.remove();
			}
			req.setAttribute(FORUMS, forums);
		}
		return forums;
	}
	
	/**
	 * 獲取網站的精華帖子數
	 * @param site
	 * @param forum
	 * @return
	 */
	public int elite_count(SiteBean site, ForumBean forum){
		return BBSTopicDAO.getEliteCount(site, forum);
	}
	
	/**
	 * 查詢所有的精華帖
	 * @param site
	 * @param forum
	 * @param page
	 * @param pageSize
	 * @return
	 */
	public List elite_topics(SiteBean site, ForumBean forum, int page, int pageSize){
		if(pageSize<1 || pageSize>200)
			pageSize = 50;
		int fromIdx = (page-1)*pageSize;
		if(fromIdx < 0)
			fromIdx = 0;
		return BBSTopicDAO.listEliteTopics(site, forum, fromIdx, pageSize);
	}
	
	/**
	 * 獲取論壇中所有的帖子數
	 * @param site
	 * @return
	 */
	public int topic_count(SiteBean site){
		if(site==null)
			return -1;
		return BBSTopicDAO.getTopicCount(site.getId());
	}
	
	/**
	 * 獲取下一篇帖子
	 * @param forum
	 * @param topic
	 * @return
	 */
	public TopicOutlineBean next_topic(_TopicBeanBase topic){
		if(topic==null)
			return null;
		return BBSTopicDAO.getNextTopic(topic.getForum().getId(), topic.getId(), true);
	}
	
	/**
	 * 獲取上一篇帖子
	 * @param forum
	 * @param topic
	 * @return
	 */
	public TopicOutlineBean prev_topic(_TopicBeanBase topic){
		if(topic==null)
			return null;
		return BBSTopicDAO.getNextTopic(topic.getForum().getId(), topic.getId(), false);
	}
	
	/**
	 * 讀取某個論壇的詳細資料
	 * 
	 * @param site
	 * @param forum_id
	 * @return
	 */
	public ForumBean forum(SiteBean site, int forum_id) {
		if (site == null || forum_id < 1)
			return null;
		ForumBean forum = BBSForumDAO.getForumByID(forum_id);
		if (forum != null && forum.getSite().getId() == site.getId())
			return forum;
		return null;
	}

	/**
	 * 讀取某個帖子的詳細信息
	 * 
	 * @param site
	 * @param topic_id
	 * @return
	 */
	public _TopicBeanBase topic(SiteBean site, SessionUserObject user, int topic_id) {
		if (site == null || topic_id < 1)
			return null;
		_TopicBeanBase topic;
		String text = TextCacheManager.getTextContent(TopicBean.TYPE_BBS, topic_id);
		if(text==null){
			topic = BBSTopicDAO.getTopicByID(topic_id);
			if(topic!=null && topic.getStatus()==TopicBean.STATUS_NORMAL){
				TextCacheManager.updateTextContent(TopicBean.TYPE_BBS, topic_id, topic.getContent());
			}
		}
		else{
			topic = BBSTopicDAO.getTopicOutlineByID(topic_id);
			if(topic!=null)
				topic.setContent(text);
		}
		if(user!=null && site.isOwner(user))
			return topic;
		if (topic != null && topic.getSite().getId() == site.getId()
				&& topic.getStatus() == TopicBean.STATUS_NORMAL && topic.getForum().getStatus()==0)
			return topic;
		return null;
	}

	/**
	 * 讀取某個回帖的詳細信息
	 * 
	 * @param site
	 * @param reply_id
	 * @return
	 */
	public TopicReplyBean reply(SiteBean site, int reply_id) {
		if (site == null || reply_id < 1)
			return null;
		TopicReplyBean reply = BBSReplyDAO.getTopicReplyByID(reply_id);
		if (reply != null && reply.getSite().getId() == site.getId()
				&& reply.getStatus() == TopicBean.STATUS_NORMAL)
			return reply;
		return null;
	}
	/**
	 * 列出某個論壇的帖子
	 * 
	 * @param forum
	 * @param page
	 * @param pageSize
	 * @return
	 */
	public List topics(SiteBean site, ForumBean forum, int page, int pageSize) {
		if (site==null || forum == null || forum.getSite().getId()!=site.getId())
			return null;
		if (pageSize < 1)
			pageSize = 20;
		int fromIdx = (page - 1) * pageSize;
		if (fromIdx < 0)
			fromIdx = 0;
		return BBSTopicDAO.listTopics(forum.getId(), fromIdx, pageSize);
	}
	
	/**
	 * 列出整個論壇的所有帖子
	 * @param site
	 * @param page
	 * @param pageSize
	 * @return
	 */
	public List all_topics(SiteBean site, int page, int pageSize){
		if (pageSize < 1)
			pageSize = 20;
		int fromIdx = (page - 1) * pageSize;
		if (fromIdx < 0)
			fromIdx = 0;
		if (site == null)
			return BBSTopicDAO.listAllTopics(fromIdx, pageSize);
		else
			return BBSTopicDAO.listAllTopics(site.getId(), fromIdx, pageSize);
	}
	
	/**
	 * 分頁列出某個帖子的回帖
	 * @param topic
	 * @param page
	 * @param pageSize
	 * @return
	 */
	public List replies(_TopicBeanBase topic, int page, int pageSize){
		if(topic == null)
			return null;
		if (pageSize < 1)
			pageSize = 20;
		int fromIdx = (page - 1) * pageSize;
		if (fromIdx < 0)
			fromIdx = 0;
		return BBSReplyDAO.listReplies(topic.getId(), fromIdx, pageSize);
	}

	/**
	 * 列出熱門帖子
	 * 
	 * @param forum
	 * @param page
	 * @param pageSize
	 * @param days
	 *            看前幾天的熱門貼(熱門貼有失效性)
	 * @return
	 */
	public List hot_topics(SiteBean site, ForumBean forum, int page, int pageSize, int days) {
		if(site==null)
			return null;
		if (pageSize < 1)
			pageSize = 20;
		int fromIdx = (page - 1) * pageSize;
		if (fromIdx < 0)
			fromIdx = 0;
		return BBSTopicDAO.listHotTopics(site, forum, fromIdx, pageSize, days);
	}
	
	/**
	 * 列出最新的討論話題
	 * @param page
	 * @param count
	 * @return
	 */
	public List list_new_topics(int page, int count){
		int fromIdx = (page - 1) * count;
		return BBSTopicDAO.listAllTopics(fromIdx, count);
	}

	/**
	 * 訪問日記,增加日記的閱讀數
	 * @param site
	 * @param user
	 * @param log
	 */
	public void visit_topic(SiteBean site, _TopicBeanBase topic){
		if(topic!=null && topic.getSite().getId()==site.getId()){
			try{
				BBSTopicDAO.incViewCount(topic.getId(), 1);
			}catch(Exception e){
				log.error("visit_topic failed.", e);
			}
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
天天亚洲美女在线视频| 国产精品国产三级国产aⅴ中文| 99精品国产99久久久久久白柏| 国产成人免费网站| 国产一级精品在线| 国v精品久久久网| 成人免费不卡视频| 91麻豆国产福利在线观看| 91在线观看成人| 在线精品视频小说1| 欧美午夜精品久久久久久超碰| 欧美少妇bbb| 制服丝袜日韩国产| 欧美成人精品1314www| 久久久99久久| 亚洲色图另类专区| 午夜日韩在线电影| 极品少妇xxxx精品少妇| 国产在线不卡一区| 91色在线porny| 欧美日韩国产经典色站一区二区三区| 欧美日韩精品专区| 精品国产第一区二区三区观看体验 | 精品国产一区二区三区忘忧草| 精品国产一区二区三区久久影院 | 欧美日韩国产另类一区| 日韩欧美一卡二卡| 国产午夜精品美女毛片视频| 亚洲少妇30p| 久久精品噜噜噜成人88aⅴ| 成人av在线看| 91精品免费观看| 中文字幕精品—区二区四季| 亚洲综合在线第一页| 九色综合狠狠综合久久| 91天堂素人约啪| 2023国产精品视频| 亚洲综合在线五月| 粉嫩一区二区三区性色av| 欧美色图天堂网| 国产精品传媒视频| 韩国女主播一区| 欧美日韩情趣电影| 亚洲婷婷在线视频| 国产很黄免费观看久久| 欧美日韩免费高清一区色橹橹 | 色综合久久久久综合体| 欧美不卡一区二区三区四区| 日韩伦理电影网| 国产电影一区二区三区| 欧美系列一区二区| 国产精品白丝在线| 经典三级视频一区| 欧美一区二区三区成人| 亚洲一级电影视频| 99国产麻豆精品| 日本一区二区三区四区| 久久精品72免费观看| 欧美色电影在线| 亚洲欧美另类小说视频| 成人黄色av网站在线| 久久精品一区蜜桃臀影院| 琪琪一区二区三区| 欧美裸体一区二区三区| 一区二区高清在线| 91碰在线视频| 日韩理论片中文av| 99久久精品99国产精品| 国产精品久久免费看| 国产成人av自拍| 国产精品网站在线观看| 不卡av免费在线观看| 国产精品对白交换视频| 91麻豆精东视频| 亚洲一区二区三区美女| 欧美在线免费播放| 亚洲1区2区3区视频| 欧美日本在线看| 免费人成在线不卡| 日韩精品一区二区三区蜜臀| 蜜臀av性久久久久蜜臀aⅴ| 日韩欧美国产综合| 久久超级碰视频| 国产午夜一区二区三区| 粉嫩一区二区三区在线看| 中文字幕在线不卡国产视频| 色综合视频在线观看| 亚洲国产乱码最新视频| 日韩一区二区不卡| 国产精品羞羞答答xxdd| 国产精品无码永久免费888| 色综合久久综合网97色综合| 亚洲二区在线观看| 日韩一区二区三区电影| 看片网站欧美日韩| 中文字幕亚洲不卡| 欧美日本高清视频在线观看| 久久er99精品| 亚洲私人黄色宅男| 欧美一级艳片视频免费观看| 国产一区二区在线观看免费| 亚洲欧美国产毛片在线| 91精品国产入口| 久久97超碰国产精品超碰| 国产精品视频你懂的| 欧美亚日韩国产aⅴ精品中极品| 免费在线一区观看| 国产精品色在线观看| 欧美日韩在线播放| 韩国在线一区二区| 亚洲综合一区二区精品导航| 欧美成va人片在线观看| 色婷婷亚洲综合| 国产乱淫av一区二区三区| 亚洲风情在线资源站| 欧美国产禁国产网站cc| 欧美午夜理伦三级在线观看| 国产成人午夜高潮毛片| 日韩主播视频在线| 国产精品色呦呦| 欧美精品一区二区三区蜜桃| 在线观看欧美精品| 成人丝袜18视频在线观看| 日本vs亚洲vs韩国一区三区| 亚洲色图另类专区| 中文字幕乱码日本亚洲一区二区| 欧美日韩国产首页| 色屁屁一区二区| 国产精品乡下勾搭老头1| 日韩国产成人精品| 亚洲一级电影视频| 国产精品成人午夜| 久久久午夜电影| 91精品国产91综合久久蜜臀| 99r国产精品| 国产成人精品www牛牛影视| 六月丁香综合在线视频| 亚洲电影视频在线| 亚洲欧美偷拍三级| 中文字幕一区二区视频| 国产亚洲成年网址在线观看| 日韩一级片在线观看| 欧美丰满少妇xxxbbb| 欧美色精品天天在线观看视频| 色综合天天综合色综合av| 成人性生交大片免费看在线播放| 韩国理伦片一区二区三区在线播放 | 久久免费国产精品| 欧美精品一区二区三区四区| 精品国产亚洲在线| 欧美videofree性高清杂交| 91精品国产免费| 日韩亚洲欧美成人一区| 日韩视频一区二区三区在线播放| 欧美精品乱码久久久久久按摩| 欧美日韩国产成人在线免费| 欧美午夜在线观看| 欧美喷水一区二区| 日韩欧美国产高清| 久久免费电影网| 国产精品久久久一区麻豆最新章节| 中文字幕乱码日本亚洲一区二区| 国产精品天干天干在线综合| 国产精品久久久久婷婷二区次| 最新热久久免费视频| 亚洲一级二级三级| 蜜桃精品视频在线| 丰满少妇久久久久久久| 色网综合在线观看| 欧美放荡的少妇| 久久久国际精品| 一区二区三区精密机械公司| 日日夜夜免费精品视频| 久久国产精品99久久久久久老狼 | 国产精品国产三级国产aⅴ入口| 亚洲欧美aⅴ...| 天堂在线亚洲视频| 国产米奇在线777精品观看| 99久久国产综合精品麻豆| 欧美精品黑人性xxxx| 久久这里只有精品6| 一区二区三区在线视频免费| 青娱乐精品在线视频| 成人短视频下载| 欧美一区二区三区四区五区| 国产三级精品在线| 亚洲电影欧美电影有声小说| 国内精品写真在线观看| 色婷婷综合五月| 久久久久久久综合狠狠综合| 亚洲综合久久久久| 成人综合在线视频| 日韩欧美资源站| 亚洲天堂精品在线观看| 国内精品久久久久影院一蜜桃| 色综合久久综合中文综合网| 亚洲精品一区二区三区四区高清| 亚洲男女毛片无遮挡| 国产剧情av麻豆香蕉精品| 欧美日韩一二三|