/* * Created on May 29, 2007 * * To change the template for this generated file go to * Window>Preferences>Java>Code Generation>Code and Comments */ package nl.rijksweb; import javax.naming.directory.NoSuchAttributeException; import com.sapportals.common.TracingConsts; import com.sapportals.portal.navigation.INavigationNode; import com.sapportals.portal.navigation.WorkAreaHelper; import com.sapportals.portal.pb.iviewdef.IviewCachingLevel; import com.sapportals.portal.pb.iviewdef.IviewIsolationMode; import com.sapportals.portal.pb.utils.RequestParamsContainer; import com.sapportals.portal.pb.utils.URLGenerator; import com.sapportals.portal.prt.component.IPortalComponentContext; import com.sapportals.portal.prt.component.IPortalComponentProfile; import com.sapportals.portal.prt.component.IPortalComponentRequest; import com.sapportals.portal.prt.pom.NodeMode; /** * @author Dharmi.Tanna * * To change the template for this generated type comment go to * Window>Preferences>Java>Code Generation>Code and Comments */ public class WorkAreaData { private boolean mm_showRefresh; private boolean mm_showExpand; private boolean mm_showHelp; private boolean mm_showPerson; private boolean mm_showDetails; private boolean mm_showTitle; private boolean mm_showFavorites; private boolean mm_isPage; private boolean mm_isFolder; private String mm_refreshUrl; private String mm_newUrl; private String mm_helpUrl; private String mm_personUrl; private String mm_iviewId; private String mm_queryString; private RequestParamsContainer mm_requestParamsContainer; private boolean mm_isPost; public WorkAreaData() { mm_showRefresh = false; mm_showExpand = false; mm_showHelp = false; mm_showPerson = false; mm_showDetails = false; mm_showTitle = true; mm_showFavorites = false; mm_isPage = true; mm_isFolder = false; mm_refreshUrl = ""; mm_newUrl = ""; mm_helpUrl = ""; mm_personUrl = ""; mm_iviewId = ""; mm_queryString = ""; mm_requestParamsContainer = null; mm_isPost = false; } public boolean Init(String iviewId, IPortalComponentContext context, IPortalComponentRequest request) { try { if(iviewId != null) { setIviewId(iviewId); } IPortalComponentProfile profile = context.getProfile(); String showPersonStr = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.iview.ShowPersonalize", "false"); setShowPerson(Boolean.valueOf(showPersonStr).booleanValue()); String showRefreshStr = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.iview.ShowRefresh", "false"); setShowRefresh(Boolean.valueOf(showRefreshStr).booleanValue()); String showExpandStr = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.iview.ShowExpand", "false"); setShowExpand(Boolean.valueOf(showExpandStr).booleanValue()); String showHelpStr = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.iview.ShowHelp", "false"); setShowHelp(Boolean.valueOf(showHelpStr).booleanValue()); String showDetailsStr = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.iview.ShowDetails", "true"); setShowDetails(Boolean.valueOf(showDetailsStr).booleanValue()); String showTitleStr = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.iview.ShowTitle", "true"); setShowTitle(Boolean.valueOf(showTitleStr).booleanValue()); String showFavStr = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.navigation.ShowAddToFavorites", "true"); setShowFavorites(Boolean.valueOf(showFavStr).booleanValue()); String componentType = profile.getProperty("com.sap.portal.ComponentType"); if(componentType == null) { componentType = WorkAreaHelper.getProperty(this, request, profile, "ComponentType", "com.sapportals.portal.page"); } setIsPage(componentType.equalsIgnoreCase("com.sapportals.portal.page")); String isolationMode = WorkAreaHelper.getProperty(this, request, profile, "com.sap.portal.reserved.iview.IsolationMode", "Embedded"); IviewIsolationMode mode = IviewIsolationMode.getEnumByString(isolationMode); String connectionPoint = WorkAreaHelper.getProperty(this, request, profile, "RequiredConnectionPoint", ""); boolean connectionPointRequired = mode.equals(IviewIsolationMode.URL) && !connectionPoint.equals(""); URLGenerator refreshUri = new URLGenerator(request, connectionPointRequired, connectionPoint, iviewId); URLGenerator modesUri = new URLGenerator(request, connectionPointRequired, connectionPoint, iviewId); modesUri.setContextName(iviewId); if(mode == IviewIsolationMode.EMBEDDED) { refreshUri.setTargetNode(request.getNode()); } else { refreshUri.setContextName(iviewId); } String cacheLevel = WorkAreaHelper.getProperty(this, request, profile, "CachingLevel", "None"); IviewCachingLevel level = IviewCachingLevel.getEnumByString(cacheLevel); if(level != IviewCachingLevel.SHARED) { refreshUri.setNodeMode(NodeMode.REFRESH_MODE); } mm_requestParamsContainer = URLGenerator.createURLParamList("*", request); String queryString = mm_requestParamsContainer.getURLParams(); if(queryString == null) { queryString = ""; } else { queryString = "?" + queryString; } mm_queryString = queryString; String PRTEvent = request.getParameter("nodePRTEvent"); if(PRTEvent != null && !PRTEvent.equals("")) { com.sapportals.portal.prt.event.IPortalRequestEvent event = request.createRequestEvent(PRTEvent); modesUri.setPortalRequestEvent(event); } setRefreshUrl(refreshUri.toString() + queryString); mm_isPost = request.getParameter("UsePost") != null; return true; } catch(Exception e) { workAreaiView.mm_logger.traceThrowableT(TracingConsts.DEBUG, "WorkAreaData.Init", e); } return false; } public void InitFolder(INavigationNode node, IPortalComponentRequest request) { mm_isFolder = true; Boolean showFav; try { showFav = (Boolean)node.getAttributeValue("com.sap.portal.navigation.ShowAddToFavorites"); } catch(NoSuchAttributeException e) { workAreaiView.mm_logger.traceThrowableT(TracingConsts.DEBUG, "WorkAreaData.InitFolder: attribute AddToFavorites does not exist default value i" + "s assigned (true)." , e); showFav = Boolean.TRUE; } setShowFavorites(showFav.booleanValue()); } public boolean isFolder() { return mm_isFolder; } public boolean isPage() { return mm_isPage; } public String getRefreshUrl() { return mm_refreshUrl; } public boolean showExpand() { return mm_showExpand; } public boolean showHelp() { return mm_showHelp; } public boolean showRefresh() { return mm_showRefresh; } public boolean showPerson() { return mm_showPerson; } public boolean showDetails() { return mm_showDetails; } public boolean showTitle() { return mm_showTitle; } public boolean showFavorites() { return mm_showFavorites; } public void setIsPage(boolean b) { mm_isPage = b; } public void setRefreshUrl(String string) { mm_refreshUrl = string; } public void setShowExpand(boolean b) { mm_showExpand = b; } public void setShowHelp(boolean b) { mm_showHelp = b; } public void setShowRefresh(boolean b) { mm_showRefresh = b; } public void setShowPerson(boolean b) { mm_showPerson = b; } public void setShowDetails(boolean b) { mm_showDetails = b; } public void setShowTitle(boolean b) { mm_showTitle = b; } public void setShowFavorites(boolean b) { mm_showFavorites = b; } public void setIviewId(String s) { mm_iviewId = s; } public String getIviewId() { return mm_iviewId; } public String getQueryString() { return mm_queryString; } public RequestParamsContainer getRequestParamsContainer() { return mm_requestParamsContainer; } public boolean isPost() { return mm_isPost; } public String getOptionsMenuStr() { StringBuffer str = new StringBuffer(200); str.append("EPCM.raiseEvent('urn:com.sapportals:navigation' , 'setOptionMenu' , {"); str.append("expand:").append(showExpand()); str.append(",refresh:").append(showRefresh()); str.append(",personalize:").append(showPerson()); str.append(",help:").append(showHelp()); str.append(",details:").append(showDetails()); str.append(",favorites:").append(showFavorites()); str.append(",title:").append(showTitle()); str.append("});"); return str.toString(); } public String getLightOptionsMenuStr() { StringBuffer str = new StringBuffer(200); str.append("if (typeof pageTitleBar != 'undefined') { "); if(showExpand()) { str.append("pageTitleBar.enableExpand();"); } else { str.append("pageTitleBar.disableExpand();"); } if(showRefresh()) { str.append("pageTitleBar.enableRefresh();"); } else { str.append("pageTitleBar.disableRefresh();"); } if(showPerson()) { str.append("pageTitleBar.enablePersonalize();"); } else { str.append("pageTitleBar.disablePersonalize();"); } if(showHelp()) { str.append("pageTitleBar.enableHelp();"); } else { str.append("pageTitleBar.disableHelp();"); } if(showDetails()) { str.append("pageTitleBar.enableDetails();"); } else { str.append("pageTitleBar.disableDetails();"); } str.append("}"); return str.toString(); } public static String getOptionsMenuEmptyStr() { StringBuffer str = new StringBuffer(200); str.append("EPCM.raiseEvent('urn:com.sapportals:navigation' , 'setOptionMenu' , {"); str.append("expand:false"); str.append(",refresh:false"); str.append(",personalize:false"); str.append(",help:false"); str.append(",details:false"); str.append(",favorites:true"); str.append(",title:true"); str.append("});"); return str.toString(); } public static String getLightOptionsMenuEmptyStr() { StringBuffer str = new StringBuffer(200); str.append("if (typeof pageTitleBar != 'undefined') { "); str.append("pageTitleBar.disableExpand();"); str.append("pageTitleBar.disableRefresh();"); str.append("pageTitleBar.disablePersonalize();"); str.append("pageTitleBar.disableHelp();"); str.append("pageTitleBar.disableDetails();"); str.append("}"); return str.toString(); } }