📄 respondpermandprep.bsh
字号:
/* * $Id: respondpermandprep.bsh 5462 2005-08-05 18:35:48Z jonesde $ * * Copyright (c) 2003 The Open For Business Project - www.ofbiz.org * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included * in all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT * OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * * @author <a href="mailto:byersa@automationgroups.com">Al Byers</a> * @version $Rev: 5462 $ * @since 3.0 * Does either a "simple" (does entity perm check) or complex * (uses EntityPurpose/Operation/etc. tables) to check by roles. */import java.util.ArrayList;import java.util.Collection;import java.util.HashMap;import java.util.Iterator;import java.util.LinkedList;import java.util.List;import java.util.Map;import java.util.Set;import java.util.TreeSet;import org.ofbiz.base.util.*;import org.ofbiz.entity.*;import org.ofbiz.security.*;import org.ofbiz.service.*;import org.ofbiz.entity.model.*;import org.ofbiz.widget.html.*;import org.ofbiz.widget.form.*;import org.ofbiz.content.content.PermissionRecorder;import javax.servlet.*;import javax.servlet.http.*;dispatcher = (LocalDispatcher)request.getAttribute("dispatcher");delegator = (GenericDelegator) request.getAttribute("delegator"); paramMap = UtilHttp.getParameterMap(request);security = request.getAttribute("security");contentIdTo = paramMap.get("contentIdTo");if (UtilValidate.isEmpty(contentIdTo)) { request.setAttribute("errorMsgReq", "contentIdTo is empty"); return;}/*pubPt = paramMap.get("pubPt");if (UtilValidate.isEmpty(pubPt)) { pubPt = context.get("pubPt"); if (UtilValidate.isEmpty(pubPt)) { request.setAttribute("errorMsgReq", "pubPt is empty"); return; }}*/contentToValue = delegator.findByPrimaryKey("Content", UtilMisc.toMap("contentId", contentIdTo));contentToPurposeList = contentToValue.getRelatedCache("ContentPurpose");currentValue = delegator.makeValue("Content", UtilMisc.toMap("contentTypeId", "DOCUMENT", "statusId", "BLOG_PUBLISHED", "privilegeEnumId", "_00_"));if (contentToPurposeList.contains("RESPONSE")) { ownerContentId = contentToValue.get("ownerContentId"); currentValue.put("ownerContentId", ownerContentId);} else { contentId = contentToValue.get("contentId"); currentValue.put("ownerContentId", contentId);}mapIn = new HashMap();userLogin = session.getAttribute("userLogin");mapIn.put("userLogin", userLogin);List targetOperationList = StringUtil.split(page.getProperty("targetOperation"), "|");mapIn.put("targetOperationList", targetOperationList );if (currentValue != null) { mapIn.put("currentContent", currentValue);}mapIn.put("entityOperation", "_CREATE");mapIn.put("contentPurposeList", UtilMisc.toList("RESPONSE"));//org.ofbiz.base.util.Debug.logInfo("in permprep, mapIn:" + mapIn, null);result = dispatcher.runSync("checkContentPermission", mapIn);permissionStatus = result.get("permissionStatus");//org.ofbiz.base.util.Debug.logInfo("permissionStatus:" + permissionStatus, null);if (UtilValidate.isEmpty(permissionStatus) || !permissionStatus.equals("granted")) { request.setAttribute("errorMsgReq", "Permission to add response is denied (1)"); String errorMessage = "Permission to add response is denied (2)"; PermissionRecorder recorder = (PermissionRecorder)result.get("permissionRecorder"); //Debug.logInfo("recorder(0):" + recorder, ""); if (recorder != null) { String permissionMessage = recorder.toHtml(); //Debug.logInfo("permissionMessage(0):" + permissionMessage, ""); errorMessage += " \n " + permissionMessage; } request.setAttribute("permissionErrorMsg", errorMessage); context.put("permissionErrorMsg", errorMessage); context.put("hasPermission", Boolean.FALSE); request.setAttribute("hasPermission", Boolean.FALSE); request.setAttribute("permissionStatus", ""); return;} else { context.put("hasPermission", Boolean.TRUE); request.setAttribute("hasPermission", Boolean.TRUE); request.setAttribute("permissionStatus", "granted");}/*pubContentValue = delegator.findByPrimaryKey("Content", UtilMisc.toMap("contentId", pubPt));if (pubContentValue != null) { mapIn.put("currentContent", pubContentValue); mapIn.put("statusId", "BLOG_PUBLISHED");}//org.ofbiz.base.util.Debug.logInfo("in permprep(2), mapIn:" + mapIn, null);result = dispatcher.runSync("checkContentPermission", mapIn);permissionStatus = result.get("permissionStatus");//org.ofbiz.base.util.Debug.logInfo("permissionStatus(2):" + permissionStatus, null);if (UtilValidate.isEmpty(permissionStatus) || !permissionStatus.equals("granted")) { request.setAttribute("errorMsgReq", "Permission to add response is denied (2)"); String errorMessage = "Permission to add response is denied (2)"; PermissionRecorder recorder = (PermissionRecorder)result.get("permissionRecorder"); //Debug.logInfo("recorder(0):" + recorder, ""); if (recorder != null) { String permissionMessage = recorder.toHtml(); //Debug.logInfo("permissionMessage(0):" + permissionMessage, ""); errorMessage += " \n " + permissionMessage; } request.setAttribute("permissionErrorMsg", errorMessage); context.put("permissionErrorMsg", errorMessage); context.put("hasPermission", Boolean.FALSE); request.setAttribute("hasPermission", Boolean.FALSE); request.setAttribute("permissionStatus", ""); return;} else { context.put("hasPermission", Boolean.TRUE); request.setAttribute("hasPermission", Boolean.TRUE); request.setAttribute("permissionStatus", "granted");}*/request.setAttribute("currentValue", currentValue);singleWrapper = context.get("singleWrapper");singleWrapper.putInContext("contentPurposeTypeId", page.getProperty("contentPurposeTypeId"));singleWrapper.putInContext("targetOperation", page.getProperty("targetOperation"));singleWrapper.putInContext("targetOperationString", page.getProperty("targetOperation"));singleWrapper.putInContext("currentValue", currentValue);trailList = context.get("trailList");String replyName = null;if (trailList != null && trailList.size() > 0) { idNamePair = trailList.get(trailList.size() -1); replyName = (String)idNamePair.get(1); if (replyName != null && (replyName.indexOf("RE:") < 0)) { replyName = "RE:" + replyName; }}singleWrapper.putInContext("replyName", UtilMisc.toMap("contentName",replyName, "description", replyName));
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -