📄 dlog_diary_velocitytool.java
字号:
* @param user
* @param catalog_id
* @param page
* @param pageSize
* @param withContent 是否需要包含日记详细内容
* @return
*/
public List list_diary(SiteBean site, SessionUserObject user, int catalog_id, int year,int month,int date,
int page, int pageSize, boolean withContent) {
int fromIdx = (page - 1) * pageSize;
if (fromIdx < 0)
fromIdx = 0;
if (pageSize < 1)
pageSize = 5;
if (site == null)
return DiaryDAO.listDiary(year, month, date, fromIdx, pageSize, withContent);
else
return DiaryDAO.listDiary(site, user, catalog_id, year,month,date, fromIdx, pageSize, withContent);
}
/**
* 计算日记数
*
* @param site
* @param user
* @param catalog_id
* @return
*/
public int diary_count(SiteBean site, SessionUserObject user, int catalog_id, int year, int month, int date) {
if (site == null)
return -1;
return DiaryDAO.getDiaryCount(site, user, catalog_id, year,month,date);
}
/**
* 返回总的日记数,不包括隐藏日记
* @return
*/
public int public_diary_count(){
return DiaryDAO.getPublicDiaryCount();
}
/**
* 分页列出某篇日记的评论
* @param site
* @param user
* @param diary
* @param page
* @param pageSize
* @param reverse 是否倒序,如果该值为true则最新评论排在最前面
* @return
*/
public List replies(SiteBean site, SessionUserObject user, _DiaryBase diary, int page, int pageSize, boolean reverse){
if (site == null)
return null;
if (diary == null || diary.getSite().getId() != site.getId())
return null;
if (!CatalogDAO.canUserViewThisCatalog(diary.getCatalog(), user))
return null;
int fromIdx = (page - 1) * pageSize;
if(fromIdx < 0)
fromIdx = 0;
return DiaryDAO.listDiaryReplies(diary.getId(), fromIdx, pageSize, reverse);
}
/**
* 判断用户是否有编辑某篇日记的权限
* @param user
* @param diary
* @return
*/
public boolean can_user_edit_diary(SessionUserObject user, _DiaryBase diary){
if(user==null || diary==null)
return false;
if(diary.getOwner().getId()==user.getId())
return true;
if(diary.getSite().isOwner(user))
return true;
return false;
}
/**
* 列出某个网站的最新日记评论(_diary_top_info.vm, j_replies.vm)
*
* @param site
* @param user
* @param last_reply_id
* @param count
* @return
*/
public List list_diary_replies(SiteBean site, int page, int count, SessionUserObject user) {
if (site == null)
return null;
int fromidx = (page - 1) * count;
return DiaryDAO.listDiaryReplies(site, fromidx, count, user);
}
/**
* 获取日记评论总数(j_replies.vm)
* @param site
* @param user
* @return
*/
public int diary_reply_count(SiteBean site, SessionUserObject user){
if(site==null)
return -1;
return DiaryDAO.getDiaryReplyCount(site, user);
}
/**
* 统计某个月历每天的日记数(_diary_calendar.vm)
* @param year
* @param month
* @return 结果集合中的第一个元素是该月的日记总数外,其他是对应每天的日记数
*/
public List diary_counts_by_month(SiteBean site, SessionUserObject user, int year, int month){
if(site==null)
return null;
Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month-1);
int[] logc = DiaryDAO.statCalendarLogs(site, user, cal);
List logcs = new ArrayList();
for(int i=0;i<logc.length;i++){
logcs.add(new Integer(logc[i]));
}
return logcs;
}
/**
* 得到垃圾箱中日记数(_catalog_and_calendar.vm, trash.vm)
* @param site
* @param user
* @return
*/
public int trash_count(SiteBean site, SessionUserObject user){
if(site==null || user==null)
return -1;
if(!site.isOwner(user))
return -1;
return DiaryDAO.getTrashCount(site.getId());
}
/**
* 列出垃圾箱中的所有日记(trash.vm)
* @param site
* @param user
* @return
*/
public List list_trash(SiteBean site, SessionUserObject user){
return list_trash(site, user, 1, 0);
}
/**
* 列出垃圾箱中的所有日记(trash.vm)
* @param site
* @param user
* @return
*/
public List list_trash(SiteBean site, SessionUserObject user, int page, int pageSize){
if(site==null || user==null)
return null;
if(!site.isOwner(user))
return null;
int fromIdx = (page - 1) * pageSize;
return DiaryDAO.listTrash(site.getId(), fromIdx, pageSize);
}
/**
* 得到草稿数(_catalog_and_calendar.vm, drafts.vm)
* @param site
* @param user
* @return
*/
public int draft_count(SiteBean site, SessionUserObject user){
if(site==null || user==null) return -1;
return DiaryDAO.getDraftCount(site, user.getId());
}
/**
* 得到所有的草稿(drafts.vm)
* @param site
* @param user
* @return
*/
public List list_drafts(SiteBean site, SessionUserObject user){
return list_drafts(site, user, 1, 0);
}
public List list_drafts(SiteBean site, SessionUserObject user, int page, int pageSize){
if(site==null || user==null) return null;
int fromIdx = (page - 1) * pageSize;
return DiaryDAO.listDrafts(site, user.getId(), fromIdx, pageSize);
}
/**
* 访问日记,增加日记的阅读数
* @param site
* @param user
* @param log
*/
public void visit_diary(SiteBean site, SessionUserObject user, _DiaryBase diary){
if(diary!=null && diary.getSite().getId()==site.getId()){
try{
DiaryDAO.incViewCount(diary.getId(), 1);
}catch(Exception e){
log.error("DLOG_VelocityTool.visit_diary failed.", e);
}
}
}
/**
* 列出指定网站的所有日记分类
*
* @param site_id
* @param user
* @param maintain
* @return
* @throws HibernateException
*/
public List catalogs(SiteBean site, SessionUserObject user, boolean maintain) {
if (site == null)
return null;
if (site.isOwner(user))
return site.getCatalogs();
else {
return CatalogDAO.listCatalogs(site, user, maintain);
}
}
/**
* 查询用户在某个站点上可写日记的分类数(_catalog_and_calendar.vm)
* @param site
* @param user
* @return
*/
public boolean user_can_blog(SiteBean site, SessionUserObject user){
if(site == null || user == null)
return false;
return CatalogDAO.userCanBlog(site, user);
}
/**
* 获取某分类的详细资料
* @param site
* @param user
* @param cat_id
* @return
*/
public CatalogBean catalog(SiteBean site, SessionUserObject user, int cat_id){
if(site==null || cat_id < 1)
return null;
CatalogBean catalog = CatalogDAO.getCatalogByID(cat_id);
if (catalog != null && catalog.getSite().getId() == site.getId()
&& CatalogDAO.canUserViewThisCatalog(catalog, user))
return catalog;
return null;
}
/**
* 列出在某个日记分类拥有特殊权限的所有用户
* @param site
* @param user
* @param catalog
* @return
*/
public List list_special_popedom_users_by_catalog(SiteBean site, SessionUserObject user, CatalogBean catalog){
if(site==null||user==null||catalog==null)
return null;
if(site.isOwner(user) && site.getId()==catalog.getSite().getId())
return CatalogDAO.listSpecialPopedomUsersByCatalog(catalog.getId());
return null;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -