📄 bbsfactory.java
字号:
/* * 作者: 胡李青 * qq: 31703299 * Copyright (c) 2007 huliqing * 主页 http://www.tbuy.biz/ * 你可以免费使用该软件,未经许可请勿作用于任何商业目的,如有技术问题请与本人联系! */package biz.tbuy.bbs;import biz.tbuy.bbs.bean.BaseBean;/** * @author huliqing * <p><b>qq:</b>31703299 * <p><b>E-mail:</b> * <a href="mailto:huliqing.cn@gmail.com">huliqing.cn@gmail.com</a> * <p><b>Homepage:</b> * <a href="http://www.tbuy.biz/">http://www.tbuy.biz/</a> */public class BBSFactory extends BaseBean{ /** * 判断特定专区是否可见的,如果可见则true, 否则false,对admin总是可见的 * @param zone * @return true or false */ protected static boolean isVisibleZone(ZoneModel zone) { AuthModel auth = getBBSApplication().getZonesAuthMap() .get(zone.getNum()); return getVisitor().isAdmin() ? true : isVisible(auth); } /** * 判断特定讨论区是否可见的,不可见则直接false,该方法作以下判断: * 1.首先判断用户是否为admin,是返回true, 否则继续<br/> * 2.判断用户是否为该讨论区版主,是返回true,否则继续<br/> * 3.判断其父专区是否可见,不可见则返回false,否则继续<br/> * 4.判断自身是否可见,可见则true,否则false;<br/> * @param forum * @return true or false */ protected static boolean isVisibleForum(ForumModel forum) { ZoneModel zone = getBBSApplication().getZonesMap().get(forum.getByZone()); AuthModel auth = getBBSApplication().getForumsAuthMap() .get(forum.getNum()); if (getVisitor().isAdmin()) return true; if (getBBSApplication().isMaster(getVisitor().getUser().getId(), forum.getNum())) return true; return !isVisibleZone(zone) ? false : isVisible(auth); } /** * 通过给定的auth判断是否允许对当前用户显示专区或讨论区,如果没有设置权限则默认 * true,否则判断其权限设置类型的visible属性 * @param auth AuthModel * @return true or false */ protected static boolean isVisible(AuthModel auth) { return auth == null ? true : auth.getVisible(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -