Custom panels are created with Panels and Panel Stacks, which are repository based, and are used to control tabs and tab content. The lowest level of detail is the Panel, which is contained within a Panel Stack.
To modify panels and panel stacks, use the /atg/svc/ServiceFrameworkRepository
repository with the repository import file /service/common/src/data/initial/svc_framework.xml
and /DCS-CSR/src/install/data/svc_framework.xml
.
The repository contains the definitions for the tabs, the panel stacks and the panel definitions, as outlined in the diagram below:
The following is a sample Panel Stack Definition:
<add-item item-descriptor="PanelStackDefinition" id="WsCustomerPanelStack"> <set-property name="panelStackId" value="customerPanels"/> <set-property name="errorPanelId" value="errorPanel"/> <set-property name="header" value="contentHeader"/> <set-property name="imageUrl" value="/iconcatalog/30x25/header_icons/ icon_panelcustMngmnt.gif"/> <set-property name="panelBackgroundTabStyle" value="contentBackgroundTab"/> <set-property name="panelSelectedTabStyle" value="contentSelectedTab"/> <set-property name="panelTitlebarTabbedStyle" value="contentTitlebarTabbed"/> <set-property name="panelTitlebarUntabbedStyle "value="contentTitlebarUntabbed"/> <set-property name="titleKey" value="panelStack.customerDetails.label"/> <set-property name="panelIds" value="errorPanel,ticketCustomerInformationPanel, ticketCustomerTicketHistoryPanel,ticketCustomerOrderHistoryPanel"/> </add-item>
The following is a sample Panel Definition:
<add-item item-descriptor="PanelDefinition" id="WsTicketCustomerInformationPanel"> <set-property name="appId" value="workspace"/> <set-property name="panelId" value="ticketCustomerInformationPanel"/> <set-property name="templateIds" value="panelTemplate=panelTemplate"/> <set-property name="contentUrl" value="/panels/ticketCustomerInformationPanel.jsp"/> <set-property name="helpKey" value="panel.ticketCustomerInformationPanel.help"/> <set-property name="titleKey" value="panel.ticketCustomerInformationPanel.label"/> <set-property name="allowContentToggleYn" value="true"/> <set-property name="allowTabbingYn" value="true"/> <set-property name="accessRight" value="TicketsCustomerInformationPanel"/> </add-item>
To avoid migration issues, replace the default PanelDefinition
URL with a link to the custom JSP file and include the default JSP from the custom page.