You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ha...@apache.org on 2011/07/05 10:15:37 UTC

svn commit: r1142915 [27/28] - in /ofbiz/trunk/specialpurpose: ./ scrum/ scrum/config/ scrum/data/ scrum/data/helpdata/ scrum/data/hookscripts/ scrum/documents/ scrum/dtd/ scrum/entitydef/ scrum/lib/ scrum/patches/ scrum/script/ scrum/script/org/ scrum...

Added: ofbiz/trunk/specialpurpose/scrum/widget/scrumScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/specialpurpose/scrum/widget/scrumScreens.xml?rev=1142915&view=auto
==============================================================================
--- ofbiz/trunk/specialpurpose/scrum/widget/scrumScreens.xml (added)
+++ ofbiz/trunk/specialpurpose/scrum/widget/scrumScreens.xml Tue Jul  5 08:15:32 2011
@@ -0,0 +1,2965 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/widget-screen.xsd">
+
+    <screen name="Sprints">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleProjectAndSprintList"/>
+                <set field="headerItem" value="Sprints"/><!--this highlights the selected menu-item with name "Sprints" -->
+                <set field="partyId" from-field="userLogin.partyId"/>
+                <set field="permissionMap.projectId" from-field="parameters.projectId"/>
+                <set field="workEffortId" from-field="parameters.projectId"/>
+                <entity-one entity-name="WorkEffort" value-field="project"/>
+                <script location="component://scrum/webapp/scrum/WEB-INF/actions/ListCurrentSprints.groovy"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="scrumCommonDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <condition>
+                                 <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="SPRINT"/>
+                            </condition>
+                            <widgets>
+                                <container style="button-bar">
+                                    <link  text="${uiLabelMap.ScrumCreateProject}" target="editScrumProject" style="buttontext create"/>
+                                </container>
+                            </widgets>
+                        </section>
+                        <section>
+                            <widgets>
+                                <section>
+                                    <condition>
+                                        <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="TASK"/>
+                                    </condition>
+                                    <widgets>
+                                        <screenlet title="${uiLabelMap.ScrumSprintList}">
+                                            <include-form name="projectList" location="component://scrum/widget/scrumForms.xml"/>
+                                        </screenlet>
+                                    </widgets>
+                                    <fail-widgets>
+                                        <screenlet title="${uiLabelMap.ScrumSprintList}">
+                                            <include-form name="projectListWithNoLinkProfile" location="component://scrum/widget/scrumForms.xml"/>
+                                        </screenlet>
+                                    </fail-widgets>
+                                </section>
+                            </widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="AddSprint">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleAddSprint"/>
+                <set field="tabButtonItem" value="editProject"/>
+                <set field="sprintId" from-field="parameters.sprintId"/>
+                <entity-one value-field="projectWorkEffort" entity-name="WorkEffort">
+                    <field-map field-name="workEffortId" from-field="parameters.projectId"/>
+                </entity-one>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonProjectScreenDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                    <section>
+                        <condition>
+                            <if-service-permission service-name="scrumPermissionCheck" main-action="CREATE" resource-description="SPRINT"/>
+                        </condition>
+                        <widgets>
+                            <screenlet title="${uiLabelMap.ScrumCreateSprint}">
+                                <include-form location="component://scrum/widget/scrumForms.xml" name="addSprint"/>
+                                <include-form location="component://scrum/widget/scrumForms.xml" name="addSprintBacklog"/>
+                            </screenlet>
+                            <screenlet title="${uiLabelMap.ScrumListOfSprintBacklog}">
+                                <include-form location="component://scrum/widget/scrumForms.xml" name="sprintBacklogList"/>
+                            </screenlet>
+                        </widgets>
+                        <fail-widgets>
+                                <screenlet>
+                                    <label style="h3">You[${userLogin.partyId}] are have not permission to perform this action</label>
+                                </screenlet>
+                            </fail-widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="ViewSprint">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleSprintOverview"/>
+                <set field="tabButtonItem" value="SprintSummary"/>
+                <set field="permissionMap.sprintId" from-field="parameters.sprintId"/>
+                <entity-one value-field="sprintStatus" entity-name="WorkEffort">
+                    <field-map field-name="workEffortId" from-field="parameters.sprintId"/>
+                </entity-one>
+                <script location="component://scrum/webapp/scrum/WEB-INF/actions/SprintBacklogListItems.groovy"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonSprintScreenDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                    <section>
+                        <condition>
+                            <or>
+                                <if-service-permission service-name="scrumPermissionCheck" main-action="VIEW" resource-description="SPRINT"/>
+                                <if-service-permission service-name="scrumPermissionCheck" main-action="VIEW" resource-description="SCRUM"/>
+                            </or>
+                        </condition>
+                        <widgets>
+                        <section>
+                            <actions>
+                                <entity-one value-field="project" entity-name="WorkEffort">
+                                    <field-map field-name="workEffortId" from-field="parameters.projectId"/>
+                                </entity-one>
+                            </actions>
+                            <widgets>
+                                <container style="lefthalf">
+                                    <screenlet title="${uiLabelMap.ScrumSprintInformation}">
+                                        <include-form location="component://scrum/widget/scrumForms.xml" name="showSprintInfo"/>
+                                    </screenlet>
+                                </container>
+                                <container style="righthalf">
+                                    <include-screen name="sprintMemberList"/>
+                                </container>
+                                <container style="clear"/>
+                                <container style="body">
+                                <screenlet title="${uiLabelMap.ScrumBurnDownChart}" id="BDChart" collapsible="true" initially-collapsed="false">
+                                    <platform-specific>
+                                        <html><html-template location="component://scrum/webapp/scrum/includes/burndown.ftl"/></html>
+                                    </platform-specific>
+                                </screenlet>
+                                </container>
+                                <container style="clear"/>
+                                <section>
+                                    <condition>
+                                        <if-compare operator="equals" value="SPJ_CLOSED" field="project.currentStatusId"/>
+                                    </condition>
+                                    <widgets>
+                                        <section>
+                                            <condition>
+                                                <and>
+                                                    <if-compare operator="not-equals" value="SPRINT_CLOSED" field="sprintStatus.currentStatusId"/>
+                                                    <or>
+                                                        <if-compare operator="not-equals" value="Any" field="parameters.backlogStatusId"/>
+                                                    </or>
+                                                </and>
+                                            </condition>
+                                            <widgets>
+                                                <screenlet id="sprintBacklogListItems" title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="AllBacklogItem" collapsible="true">
+                                                    <include-menu location="component://scrum/widget/scrumMenus.xml" name="AllBacklogItem"/>
+                                                    <include-form location="component://scrum/widget/scrumForms.xml" name="ViewSprintBacklogListItemsNoAction"/>
+                                                </screenlet>
+                                            </widgets>
+                                            <fail-widgets>
+                                                <screenlet id="sprintBacklogListItemsOnFail" title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="notCompleteBacklogItem" collapsible="true">
+                                                    <include-menu location="component://scrum/widget/scrumMenus.xml" name="notCompleteBacklogItem"/>
+                                                    <include-form location="component://scrum/widget/scrumForms.xml" name="ViewSprintBacklogListItemsNoAction"/>
+                                                </screenlet>
+                                            </fail-widgets>
+                                        </section>
+                                    </widgets>
+                                    <fail-widgets>
+                                        <section>
+                                            <condition>
+                                                <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="SPRINT"/>
+                                            </condition>
+                                            <widgets>
+                                                <section>
+                                                    <condition>
+                                                        <and>
+                                                        <if-compare operator="not-equals" value="SPRINT_CLOSED" field="sprintStatus.currentStatusId"/>
+                                                            <or>
+                                                                <if-compare operator="not-equals" value="Any" field="parameters.backlogStatusId"/>
+                                                            </or>
+                                                        </and>
+                                                    </condition>
+                                                    <widgets>
+                                                        <screenlet id="sprintBacklogListItems" title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="AllBacklogItem" collapsible="true">
+                                                            <include-menu location="component://scrum/widget/scrumMenus.xml" name="AllBacklogItem"/>
+                                                            <include-form location="component://scrum/widget/scrumForms.xml" name="sprintBacklogListItems"/>
+                                                        </screenlet>
+                                                    </widgets>
+                                                    <fail-widgets>
+                                                        <screenlet id="sprintBacklogListItemsOnFail" title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="notCompleteBacklogItem" collapsible="true">
+                                                            <include-menu location="component://scrum/widget/scrumMenus.xml" name="notCompleteBacklogItem"/>
+                                                            <include-form location="component://scrum/widget/scrumForms.xml" name="sprintBacklogListItems"/>
+                                                        </screenlet>
+                                                    </fail-widgets>
+                                                </section>
+                                                
+                                            </widgets>
+                                            <fail-widgets>
+                                                <screenlet>
+                                                    <section>
+                                                        <condition>
+                                                            <if-has-permission permission="SCRUM_TASK" action="_CREATE"/>
+                                                        </condition>
+                                                        <widgets>
+                                                            <section>
+                                                                <actions>
+                                                                    <set field="isScrumTeam" value="true" type="Boolean"/>
+                                                                </actions>
+                                                                <widgets>
+                                                                    <section>
+                                                                        <condition>
+                                                                            <and>
+                                                                                <if-compare operator="not-equals" value="SPRINT_CLOSED" field="sprintStatus.currentStatusId"/>
+                                                                                <or>
+                                                                                    <if-compare operator="not-equals" value="Any" field="parameters.backlogStatusId"/>
+                                                                                </or>
+                                                                            </and>
+                                                                        </condition>
+                                                                        <widgets>
+                                                                            <screenlet title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="AllBacklogItem">
+                                                                                <include-menu location="component://scrum/widget/scrumMenus.xml" name="AllBacklogItem"/>
+                                                                                <include-form location="component://scrum/widget/scrumForms.xml" name="sprintBacklogListItemsHideDelete"/>
+                                                                            </screenlet>
+                                                                        </widgets>
+                                                                        <fail-widgets>
+                                                                            <screenlet title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="notCompleteBacklogItem">
+                                                                                <include-menu location="component://scrum/widget/scrumMenus.xml" name="notCompleteBacklogItem"/>
+                                                                                <include-form location="component://scrum/widget/scrumForms.xml" name="sprintBacklogListItemsHideDelete"/>
+                                                                            </screenlet>
+                                                                        </fail-widgets>
+                                                                    </section>
+                                                                </widgets>
+                                                            </section>
+                                                        </widgets>
+                                                        <fail-widgets>
+                                                            <section>
+                                                                <actions>
+                                                                    <set field="isScrumTeam" value="false" type="Boolean"/>
+                                                                </actions>
+                                                                <widgets>
+                                                                    <section>
+                                                                        <condition>
+                                                                            <and>
+                                                                                <if-compare operator="not-equals" value="SPRINT_CLOSED" field="sprintStatus.currentStatusId"/>
+                                                                                <or>
+                                                                                    <if-compare operator="not-equals" value="Any" field="parameters.backlogStatusId"/>
+                                                                                </or>
+                                                                            </and>
+                                                                        </condition>
+                                                                        <widgets>
+                                                                            <screenlet title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="AllBacklogItem">
+                                                                                <include-menu location="component://scrum/widget/scrumMenus.xml" name="AllBacklogItem"/>
+                                                                                <include-form location="component://scrum/widget/scrumForms.xml" name="ViewSprintBacklogListItemsNoAction"/>
+                                                                            </screenlet>
+                                                                        </widgets>
+                                                                        <fail-widgets>
+                                                                            <screenlet title="${uiLabelMap.ScrumSprintBacklogList}" navigation-menu-name="notCompleteBacklogItem">
+                                                                                <include-menu location="component://scrum/widget/scrumMenus.xml" name="notCompleteBacklogItem"/>
+                                                                                <include-form location="component://scrum/widget/scrumForms.xml" name="ViewSprintBacklogListItemsNoAction"/>
+                                                                            </screenlet>
+                                                                        </fail-widgets>
+                                                                    </section>
+                                                                </widgets>
+                                                            </section>
+                                                        </fail-widgets>
+                                                    </section>
+                                                </screenlet>
+                                            </fail-widgets>
+                                        </section>
+                                    </fail-widgets>
+                                </section>
+                            </widgets>
+                        </section>
+                        </widgets>
+                        <fail-widgets>
+                            <container style="button-bar">
+                                <link target="SprintList" text="Back" style="buttontext">
+                                    <parameter param-name="projectId" from-field="parameters.projectId"/>
+                                </link>
+                            </container>
+                            <screenlet>
+                                <label style="h3">You[${userLogin.partyId}] are have not permission to perform this action</label>
+                            </screenlet>
+                        </fail-widgets>
+                    </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="EditSprint">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleEditSprint"/>
+                <set field="tabButtonItem" value="EditSprint"/>
+                <set field="sprintId" from-field="parameters.sprintId"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonSprintScreenDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                    <section>
+                        <condition>
+                            <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="SPRINT"/>
+                        </condition>
+                        <widgets>
+                        <section>
+                            <widgets>
+                                <screenlet title="${uiLabelMap.ScrumEditSprintInformation}">
+                                    <include-form location="component://scrum/widget/scrumForms.xml" name="EditSprint"/>
+                                </screenlet>
+                            </widgets>
+                        </section>
+                        </widgets>
+                    </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="AddSprintBacklog">
+        <section>
+        <actions>
+            <set field="titleProperty" value="PageTitleAddSprintBacklog"/>
+            <entity-one entity-name="WorkEffort" value-field="sprintInfo">
+                <field-map field-name="workEffortId" from-field="parameters.sprintId"></field-map>
+            </entity-one>
+        </actions>
+            <widgets>
+                <decorator-screen name="CommonSprintScreenDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                        <condition>
+                        <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="SPRINT"/>
+                        </condition>
+                            <widgets>
+                                <screenlet title="${uiLabelMap.ScrumAddSprintBacklog}">
+                                    <include-form location="component://scrum/widget/scrumForms.xml" name="addSprintBacklog"/>
+                                    <include-form location="component://scrum/widget/scrumForms.xml" name="sprintBacklogList"/>
+                                </screenlet>
+                            </widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="editScrumProject">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleEditScrumProject"/>
+                <set field="headerItem" value="main"/>
+                <set field="tabButtonItem" value="editProject"/>
+                <set field="workEffortId" from-field="parameters.projectId"/>
+                <entity-and entity-name="WorkEffortAndProduct" list="workEffortList">
+                    <field-map field-name="workEffortId" from-field="workEffortId"/>
+                </entity-and>
+                <set field="workEffort" from-field="workEffortList[0]"/>
+                <entity-one entity-name="StatusItem" value-field="currentStatus">
+                    <field-map field-name="statusId" from-field="workEffort.currentStatusId"/>
+                </entity-one>
+                <entity-and entity-name="ProductAndRole" list="productAndRoleList">
+                    <field-map field-name="productId" from-field="workEffort.productId"/>
+                    <field-map field-name="statusId" value="PRODUCT_ACTIVE"/>
+                    <field-map field-name="roleTypeId" value="PRODUCT_OWNER_COMP"/>
+                </entity-and>
+                <set field="productAndRoleMap" from-field="productAndRoleList[0]"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonProjectScreenDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <widgets>
+                                <section>
+                                    <condition>
+                                        <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="PROJECT"/>
+                                    </condition>
+                                    <widgets>
+                                        <screenlet title="${uiLabelMap.ScrumEditProject}">
+                                            <include-form location="component://scrum/widget/scrumForms.xml" name="editScrumProject"/>
+                                        </screenlet>
+                                    </widgets>
+                                </section>
+                            </widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="viewScrumProject">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleScrumProjectOverview"/>
+                <set field="tabButtonItem" value="projectSummary"/>
+                <set field="workEffortId" from-field="parameters.projectId"/>
+                <set field="permissionMap.projectId" from-field="parameters.projectId"/>
+                <entity-and entity-name="WorkEffortAndProduct" list="projectList">
+                    <field-map field-name="workEffortId" from-field="workEffortId"/>
+                </entity-and>
+                <set field="project" from-field="projectList[0]"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonProjectScreenDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <container style="lefthalf">
+                            <screenlet name="ScrumProject" title="${uiLabelMap.ScrumProject} : ${project.workEffortName}">
+                                <include-form location="component://scrum/widget/scrumForms.xml" name="ScrumProject"/>
+                            </screenlet>
+                            <include-screen name="sprintListInfo"/>
+                        </container>
+                        <container style="righthalf">
+                            <include-screen name="ListProjectContent"/>
+                        </container>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="sprintListInfo">
+        <section>
+            <widgets>
+                <screenlet title="${uiLabelMap.ScrumSprintList}">
+                    <include-form location="component://scrum/widget/scrumForms.xml" name="SprintListInfo"/>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="productInfoList">
+        <section>
+            <widgets>
+                <screenlet name="projectMemberList" title="Product Information">
+                    <include-form location="component://scrum/widget/scrumForms.xml" name="ProductListInfo"/>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="tasksInfoList">
+        <section>
+            <actions>
+                <entity-and list="tasksList" entity-name="ScrumProjectSprintBacklogAndTask">
+                    <field-map field-name="projectId" from-field="parameters.projectId"/>
+                    <field-map field-name="workEffortTypeId" value="TASK"/>
+                </entity-and>
+            </actions>
+            <widgets>
+                <screenlet name="tasksListInfo" title="Tasks">
+                    <screenlet name="taskListErrot" title="Error Tasks List">
+                        <include-form location="component://scrum/widget/scrumForms.xml" name="TasksListInfoError"/>
+                    </screenlet>
+                    <screenlet name="taskListTest" title="Test Tasks List">
+                        <include-form location="component://scrum/widget/scrumForms.xml" name="TasksListInfoTest"/>
+                    </screenlet>
+                    <screenlet name="taskListCoding" title="Coding Tasks List">
+                        <include-form location="component://scrum/widget/scrumForms.xml" name="TasksListInfoCoding"/>
+                    </screenlet>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="AddProdBacklog">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleProductBacklog"/>
+                <set field="tabButtonItem" value="editProductBacklog"/>
+                <set field="productId" from-field="parameters.productId"/>
+                <entity-one value-field="product" entity-name="Product">
+                    <field-map field-name="productId"/>
+                </entity-one>
+                <entity-one entity-name="CustRequest" value-field="custRequest"/>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+                <set field="parameters.statusId" value="CRQ_ACCEPTED"/>
+                <set field="description" from-field="parameters.description"/>
+                <set field="sequence" from-field="parameters.sequence" default-value="Y"/>
+                <set field="UnplannedSequence" from-field="parameters.UnplannedSequence" default-value="Y"/>
+                <set field="backlogListTarget" value="AddProdBacklog"/>
+                <set field="viewIndex" from-field="parameters.VIEW_INDEX_1" type="Integer"/>
+                <script location="component://scrum/webapp/scrum/WEB-INF/actions/AddProductBacklogItem.groovy"/>
+                <entity-and list="checkOwnerList" entity-name="ProductAndRole">
+                    <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
+                    <field-map field-name="productId" from-field="productId"/>
+                    <field-map field-name="partyId" from-field="userLogin.partyId"/>
+                </entity-and>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <condition>
+                                <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="BACKLOG"/>
+                            </condition>
+                            <widgets>
+                            <screenlet title="${uiLabelMap.ScrumAddNewProductBacklogItem}" collapsible="true" id="NewBack" initially-collapsed="true">
+                                    <include-form location="component://scrum/widget/scrumForms.xml" name="EditProdBacklog"/>
+                                </screenlet>
+                            </widgets>
+                        </section>
+                        <section>
+                            <condition>
+                                    <if-service-permission service-name="scrumPermissionCheck" main-action="DELETE" resource-description="BACKLOG"/>
+                            </condition>
+                            <widgets>
+                                <section>
+                                    <condition>
+                                        <not><if-empty field="unplanBacklogItems"/></not>
+                                    </condition>
+                                    <widgets>
+                                        <container>
+                                             <section>
+                                                 <condition>
+                                                     <if-compare field="UnplannedSequence" operator="equals" value="Y"/>
+                                                 </condition>
+                                                 <widgets>
+                                                     <screenlet title="${uiLabelMap.ScrumUnplannedBacklogItemList}" navigation-menu-name="UnplannedBacklogListOption" id="productBacklogItemList" collapsible="true" initially-collapsed="true">
+                                                         <include-menu name="UnplannedBacklogListOption" location="component://scrum/widget/scrumMenus.xml"/>
+                                                         <section>
+                                                             <condition>
+                                                                 <not><if-empty field="checkOwnerList"/></not>
+                                                             </condition>
+                                                             <widgets>
+                                                                 <include-form location="component://scrum/widget/scrumForms.xml" name="unplannedBacklogListForOwner" />
+                                                             </widgets>
+                                                             <fail-widgets>
+                                                                 <include-form location="component://scrum/widget/scrumForms.xml" name="unplannedBacklogList" />
+                                                             </fail-widgets>
+                                                         </section>
+                                                    </screenlet>
+                                                 </widgets>
+                                                 <fail-widgets>
+                                                     <screenlet title="${uiLabelMap.ScrumUnplannedBacklogItemList}" navigation-menu-name="UnplannedBacklogListOption" id="productBacklogItemList" collapsible="true" initially-collapsed="true">
+                                                         <include-menu name="UnplannedBacklogListOption" location="component://scrum/widget/scrumMenus.xml"/>
+                                                         <section>
+                                                             <condition>
+                                                                 <not><if-empty field="checkOwnerList"/></not>
+                                                             </condition>
+                                                             <widgets>
+                                                                 <include-form location="component://scrum/widget/scrumForms.xml" name="unplannedBacklogListByCategoriesForOwner"/>
+                                                             </widgets>
+                                                             <fail-widgets>
+                                                                 <include-form location="component://scrum/widget/scrumForms.xml" name="unplannedBacklogListByCategories"/>
+                                                             </fail-widgets>
+                                                         </section>
+                                                     </screenlet>
+                                                 </fail-widgets>
+                                             </section>
+                                         </container>
+                                    </widgets>
+                                </section>
+                                <container>
+                                    <section>
+                                         <condition>
+                                            <if-compare field="sequence" operator="equals" value="Y"/>
+                                         </condition>
+                                         <widgets>
+                                            <screenlet title="${uiLabelMap.ScrumProductBacklogItemList}" navigation-menu-name="BacklogListOption" id="productBacklogItemList">
+                                                <include-menu name="BacklogListOption" location="component://scrum/widget/scrumMenus.xml"/>
+                                                <section>
+                                                    <condition>
+                                                        <not><if-empty field="checkOwnerList"/></not>
+                                                    </condition>
+                                                    <widgets>
+                                                        <include-form location="component://scrum/widget/scrumForms.xml" name="ListProdBacklogBySeqForOwner"/>
+                                                    </widgets>
+                                                    <fail-widgets>
+                                                        <include-form location="component://scrum/widget/scrumForms.xml" name="ListProdBacklogBySeq"/>
+                                                    </fail-widgets>
+                                                </section>
+                                            </screenlet>
+                                         </widgets>
+                                         <fail-widgets>
+                                            <screenlet title="${uiLabelMap.ScrumProductBacklogItemList}" navigation-menu-name="BacklogListOption" id="productBacklogItemList">
+                                                <include-menu name="BacklogListOption" location="component://scrum/widget/scrumMenus.xml"/>
+                                                <section>
+                                                    <condition>
+                                                        <not><if-empty field="checkOwnerList"/></not>
+                                                    </condition>
+                                                    <widgets>
+                                                        <include-form location="component://scrum/widget/scrumForms.xml" name="ListProdBacklogForOwner"/>
+                                                    </widgets>
+                                                    <fail-widgets>
+                                                        <include-form location="component://scrum/widget/scrumForms.xml" name="ListProdBacklog"/>
+                                                    </fail-widgets>
+                                                </section>
+                                            </screenlet>
+                                         </fail-widgets>
+                                    </section>
+                                </container>
+                            </widgets>
+                            <fail-widgets>
+                                <section>
+                                    <condition>
+                                        <if-service-permission service-name="scrumPermissionCheck" main-action="DELETE" resource-description="BACKLOG"/>
+                                    </condition>
+                                    <widgets>
+                                        <screenlet title="${uiLabelMap.ScrumProductBacklogItemList}" navigation-menu-name="BacklogListOption" id="productBacklogItemList">
+                                            <include-menu name="BacklogListOption" location="component://scrum/widget/scrumMenus.xml"/>
+                                            <section>
+                                                <condition>
+                                                    <if-compare field="sequence" operator="equals" value="Y"/>
+                                                </condition>
+                                                <widgets>
+                                                    <include-form location="component://scrum/widget/scrumForms.xml" name="ListProdBacklogBySeq"/>
+                                                </widgets>
+                                                <fail-widgets>
+                                                    <include-form location="component://scrum/widget/scrumForms.xml" name="ListProdBacklog"/>
+                                                </fail-widgets>
+                                            </section>
+                                        </screenlet>
+                                    </widgets>
+                                    <fail-widgets>
+                                        <screenlet title="${uiLabelMap.ScrumProductBacklogItemList}">
+                                            <include-form location="component://scrum/widget/scrumForms.xml" name="ViewListProdBacklog"/>
+                                        </screenlet>
+                                    </fail-widgets>
+                                </section>
+                            </fail-widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="DeleteProductBacklogItem">
+         <section>
+            <actions>
+                <set field="tabButtonItem" value="editProductBacklog"/>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+                <entity-one value-field="custRequestMap" entity-name="CustRequest"/>
+                <entity-and entity-name="CustRequestAndCustRequestItem" list="categoryList">
+                    <field-map field-name="productId" from-field="parameters.productId"/>
+                    <field-map field-name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
+                    <field-map field-name="custRequestId" from-field="custRequestMap.parentCustRequestId"/>
+                </entity-and>
+                <set field="productId" from-field="parameters.productId"/>
+                <entity-one entity-name="Product" value-field="productMap"/>
+                <entity-condition entity-name="ProductBacklog" list="productBacklogs">
+                    <condition-list combine="and">
+                        <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
+                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_SPRINT"/>
+                    </condition-list>
+                </entity-condition>
+                <set field="sprintId" from-field="productBacklogs[0].workEffortId"/>
+                <entity-one entity-name="WorkEffort" value-field="workEffort">
+                    <field-map field-name="workEffortId" from-field="sprintId"/>
+                </entity-one>
+                <set field="sprintName" from-field="workEffort.workEffortName"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <screenlet title="${uiLabelMap.ScrumDeleteBacklogItem}">
+                           <include-form name="DeleteProductBacklogItem" location="component://scrum/widget/scrumForms.xml"/>
+                        </screenlet>
+                        <screenlet title="${uiLabelMap.ScrumProductBacklogItemInfo}">
+                            <include-form location="component://scrum/widget/scrumForms.xml" name="ViewEditProdBacklog"/>
+                        </screenlet>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="ViewProdBacklogItem">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleProductBacklogItemsOverview"/>
+                <property-map resource="ContentUiLabels" map-name="uiLabelMap" global="true"/>
+                <set field="tabButtonItem" value="view"/>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+                <entity-and list="custRequestItemList" entity-name="CustRequestItem">
+                    <field-map field-name="custRequestId" from-field="parameters.custRequestId"/>
+                </entity-and>
+                <entity-one value-field="custRequest" entity-name="CustRequest"/>
+                <set field="parameters.productId" from-field="custRequestItemList[0].productId"/>
+                <entity-one entity-name="Product" value-field="productMap">
+                    <field-map field-name="productId" from-field="parameters.productId"/>
+                </entity-one>
+                <entity-and entity-name="CustRequestAndContent" list="custRequestAndContents">
+                    <field-map field-name="custRequestId" from-field="custRequestId"/>
+                    <field-map field-name="thruDate" value=""></field-map>
+                </entity-and>
+                <entity-and entity-name="CustRequestAndCustRequestItem" list="categoryList">
+                    <field-map field-name="productId" from-field="parameters.productId"/>
+                    <field-map field-name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
+                    <field-map field-name="custRequestId" from-field="custRequest.parentCustRequestId"/>
+                </entity-and>
+                <set field="update.productId" from-field="custRequestItemList[0].productId"/>
+                <set field="update.custRequestId" from-field="parameters.custRequestId"/>
+                <entity-condition list="commEvents" entity-name="CommunicationEventAndCustRequest">
+                    <condition-list combine="and">
+                        <condition-expr field-name="custRequestId" operator="equals" from-field="parameters.custRequestId"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_CANCELLED"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_DRAFT"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_ENTERED"/>
+                        <condition-list combine="or">
+                            <condition-expr field-name="communicationEventTypeId" operator="equals" value="EMAIL_COMMUNICATION"/>
+                            <condition-expr field-name="communicationEventTypeId" operator="equals" value="AUTO_EMAIL_COMM"/>
+                        </condition-list>
+                    </condition-list>
+                    <order-by field-name="-entryDate"/>
+                </entity-condition>
+                <entity-and entity-name="ProductRole" list="productRole">
+                    <field-map field-name="productId" from-field="parameters.productId"/>
+                    <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
+                </entity-and>
+                <set field="productOwnerId" value="${productRole[0].partyId}"/>
+                <entity-one value-field="parentCom" entity-name="CommunicationEvent">
+                    <field-map field-name="communicationEventId" from-field="parameters.parentCommEventId"/>
+                </entity-one>
+                <entity-one value-field="custStatus" entity-name="CustRequest">
+                    <field-map field-name="custRequestId" from-field="parameters.custRequestId"/>
+                </entity-one>
+                <entity-condition entity-name="ProductBacklog" list="productBacklogs">
+                    <condition-list combine="and">
+                        <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
+                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_SPRINT"/>
+                    </condition-list>
+                </entity-condition>
+                <set field="sprintId" from-field="productBacklogs[0].workEffortId" default-value="${parameters.sprintId}"/>
+                <set field="statusId" from-field="productBacklogs[0].statusId"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductBacklogItemDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <actions>
+                                
+                                <entity-one entity-name="WorkEffort" value-field="workEffort">
+                                    <field-map field-name="workEffortId" from-field="sprintId"/>
+                                </entity-one>
+                                <set field="sprintName" from-field="workEffort.workEffortName"/>
+                                <entity-condition entity-name="WorkEffortPartyAssignment" list="sprintMembers">
+                                    <condition-list combine="and">
+                                        <condition-expr field-name="workEffortId" from-field="sprintId"/>
+                                        <condition-expr field-name="partyId" from-field="userLogin.partyId"/>
+                                        <condition-expr field-name="roleTypeId" operator="equals" value="SCRUM_TEAM"/>
+                                    </condition-list>
+                                </entity-condition>
+                                <set field="sprintMember" from-field="sprintMembers[0]"/>
+                                <set field="isTeamMember" value="false" type="Boolean"/>
+                            </actions>
+                            <widgets>
+                                <container style="lefthalf">
+                                    <screenlet title="${uiLabelMap.ScrumProductBacklogItemInfo}">
+                                        <include-form location="component://scrum/widget/scrumForms.xml" name="ViewEditProdBacklog"/>
+                                    </screenlet>
+                                    <screenlet title="${uiLabelMap.ScrumRevisions}" name="RevisionsList">
+                                        <section>
+                                            <actions>
+                                                <entity-condition list="plannedTasks" entity-name="ProjectSprintBacklogAndTask">
+                                                    <condition-list combine="and">
+                                                        <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
+                                                        <condition-expr field-name="sprintTypeId" value="SCRUM_SPRINT"/>
+                                                        <condition-list combine="or">
+                                                            <condition-expr field-name="taskTypeId" value="SCRUM_TASK_ERROR"/>
+                                                            <condition-expr field-name="taskTypeId" value="SCRUM_TASK_TEST"/>
+                                                            <condition-expr field-name="taskTypeId" value="SCRUM_TASK_IMPL"/>
+                                                            <condition-expr field-name="taskTypeId" value="SCRUM_TASK_INST"/>
+                                                        </condition-list>
+                                                    </condition-list>
+                                                    <select-field field-name="taskId"/>
+                                                </entity-condition>
+                                                <set field="taskIds" type="List" value="${groovy:return org.ofbiz.entity.util.EntityUtil.getFieldListFromEntityList(plannedTasks, &quot;taskId&quot;, true)}"/>
+                                                <entity-condition list="unplannedTasks" entity-name="UnPlannedBacklogsAndTasks">
+                                                    <condition-list combine="and">
+                                                        <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
+                                                        <condition-list combine="or">
+                                                            <condition-expr field-name="workEffortTypeId" value="SCRUM_TASK_ERROR"/>
+                                                            <condition-expr field-name="workEffortTypeId" value="SCRUM_TASK_TEST"/>
+                                                            <condition-expr field-name="workEffortTypeId" value="SCRUM_TASK_IMPL"/>
+                                                            <condition-expr field-name="workEffortTypeId" value="SCRUM_TASK_INST"/>
+                                                        </condition-list>
+                                                    </condition-list>
+                                                    <select-field field-name="workEffortId"/>
+                                                </entity-condition>
+                                                <set field="workEffortIds" type="List" value="${groovy:return org.ofbiz.entity.util.EntityUtil.getFieldListFromEntityList(unplannedTasks, &quot;workEffortId&quot;, true)}"/>
+                                                <entity-condition list="listIt" entity-name="WorkEffortAndContentDataResource">
+                                                    <condition-list combine="and">
+                                                        <condition-expr field-name="workEffortContentTypeId" value="TASK_SUB_INFO"/>
+                                                        <condition-list combine="or">
+                                                            <condition-expr field-name="workEffortId" operator="in" from-field="taskIds" ignore-if-null="true"/>
+                                                            <condition-expr field-name="workEffortId" operator="in" from-field="workEffortIds" ignore-if-null="true"/>
+                                                        </condition-list>
+                                                    </condition-list>
+                                                    <order-by field-name="fromDate"/>
+                                                </entity-condition>
+                                            </actions>
+                                            <widgets>
+                                                <include-form name="ListBacklogRevisions" location="component://scrum/widget/scrumForms.xml"/>
+                                            </widgets>
+                                        </section>
+                                    </screenlet>
+                                </container>
+                                <container style="righthalf">
+                                    <screenlet title="${uiLabelMap.ScrumBacklogItemStatusList}" navigation-form-name="ViewRequest">
+                                        <include-form name="ViewBacklogStatus" location="component://scrum/widget/scrumForms.xml"/>
+                                    </screenlet>
+                                    <section>
+                                        <condition>
+                                            <if-empty field="sprintId"/>
+                                        </condition>
+                                        <widgets>
+                                            <screenlet title="${uiLabelMap.ScrumTasks}">
+                                                <include-form name="taskRelateBacklog" location="component://scrum/widget/scrumForms.xml"/>
+                                            </screenlet>
+                                        </widgets>
+                                        <fail-widgets>
+                                            <screenlet title="${uiLabelMap.ScrumTasks}" navigation-menu-name="NewTask" >
+                                                <include-form name="taskRelateBacklog" location="component://scrum/widget/scrumForms.xml"/>
+                                            </screenlet>
+                                        </fail-widgets>
+                                    </section>
+                                    <screenlet title="${uiLabelMap.CommonEmail}" name="Emails">
+                                        <include-form name="ViewRequestCommunicationEvents" location="component://scrum/widget/CommunicationEventForms.xml" />
+                                    </screenlet>
+                                    <screenlet title="${uiLabelMap.ScrumBacklogItemContentList}">
+                                       <include-form name="ViewListCustRequestContent" location="component://scrum/widget/scrumForms.xml"/>
+                                    </screenlet>
+                                    <include-screen name="BacklogNoteInfo"/>
+                                </container>
+                            </widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="EditProdBacklog">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleEditProductBacklogItems"/>
+                <set field="tabButtonItem" value="editProductBacklogItem"/>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+                <entity-and list="custRequestItem" entity-name="CustRequestItem">
+                    <field-map field-name="custRequestId" from-field="parameters.custRequestId"/>
+                </entity-and>
+                <entity-one value-field="custRequest" entity-name="CustRequest"/>
+                <set field="custRequestItemSeqId" from-field="parameters.custRequestItemSeqId"/>
+                <set field="productId" from-field="custRequestItem[0].productId"/>
+                <set field="update.productId" from-field="custRequestItem[0].productId"/>
+                <set field="update.custRequestId" from-field="parameters.custRequestId"/>
+                <entity-condition list="commEvents" entity-name="CommunicationEventAndCustRequest">
+                    <condition-list combine="and">
+                        <condition-expr field-name="custRequestId" operator="equals" from-field="parameters.custRequestId"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_CANCELLED"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_DRAFT"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_ENTERED"/>
+                    </condition-list>
+                    <order-by field-name="-entryDate"/>
+                </entity-condition>
+                <entity-and entity-name="ProductRole" list="productRole">
+                    <field-map field-name="productId" from-field="parameters.productId"/>
+                    <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
+                </entity-and>
+                <set field="productOwnerId" value="${productRole[0].partyId}"/>
+                <entity-one value-field="parentCom" entity-name="CommunicationEvent">
+                    <field-map field-name="communicationEventId" from-field="parameters.parentCommEventId"/>
+                </entity-one>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductBacklogItemDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <condition>
+                                <and>
+                                    <if-compare operator="equals" value="CRQ_ACCEPTED" field="custRequest.statusId"/>
+                                    <if-service-permission service-name="scrumPermissionCheck" main-action="VIEW" resource-description="BACKLOG"/>
+                                </and>
+                            </condition>
+                            <actions>
+                                <entity-condition entity-name="ProductBacklog" list="productBacklogs">
+                                    <condition-list combine="and">
+                                        <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
+                                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_SPRINT"/>
+                                    </condition-list>
+                                </entity-condition>
+                                <set field="sprintId" from-field="productBacklogs[0].workEffortId"/>
+                                <entity-condition entity-name="WorkEffortPartyAssignment" list="sprintMembers">
+                                    <condition-list combine="and">
+                                        <condition-expr field-name="workEffortId" from-field="sprintId"/>
+                                        <condition-expr field-name="partyId" from-field="userLogin.partyId"/>
+                                        <condition-expr field-name="roleTypeId" operator="equals" value="SCRUM_TEAM"/>
+                                    </condition-list>
+                                </entity-condition>
+                                <set field="sprintMember" from-field="sprintMembers[0]"/>
+                                <set field="isTeamMember" value="false" type="Boolean"/>
+                            </actions>
+                            <widgets>
+                                <screenlet title="${uiLabelMap.ScrumUpdateProductBacklog}">
+                                    <include-form location="component://scrum/widget/scrumForms.xml" name="EditProdBacklog"/>
+                                </screenlet>
+                            </widgets>
+                            <fail-widgets>
+                            <!-- Member section-->
+                                <section>
+                                    <condition>
+                                        <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="BACKLOG"/>
+                                    </condition>
+                                    <widgets>
+                                        <section>
+                                            <condition>
+                                                <if-has-permission permission="SCRUM" action="_ADMIN"/>
+                                            </condition>
+                                            <actions>
+                                                <set field="isTeamMember" type="Boolean" value="false"/>
+                                            </actions>
+                                            <widgets>
+                                                <screenlet title="${uiLabelMap.ScrumUpdateProductBacklog}">
+                                                    <include-form location="component://scrum/widget/scrumForms.xml" name="EditProdBacklog"/>
+                                                </screenlet>
+                                            </widgets>
+                                            <fail-widgets>
+                                                <section>
+                                                    <actions>
+                                                         <set field="isTeamMember" type="Boolean" value="true"/>
+                                                    </actions>
+                                                    <widgets>
+                                                        <screenlet title="${uiLabelMap.ScrumUpdateProductBacklog}">
+                                                            <include-form location="component://scrum/widget/scrumForms.xml" name="EditProdBacklog"/>
+                                                        </screenlet>
+                                                    </widgets>
+                                                </section>
+                                            </fail-widgets>
+                                        </section>
+                                    </widgets>
+                                    <fail-widgets>
+                                        <include-screen name="ViewEditProdBacklog"/>
+                                    </fail-widgets>
+                                </section>
+                            </fail-widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="ProdBacklogNote">
+        <section>
+            <actions>
+                <set field="titleProperty" value="CommonNotes"/>
+                <set field="tabButtonItem" value="productBacklogItemNote"/>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+                <set field="productId" from-field="parameters.productId"/>
+                <entity-and list="custNoteList" entity-name="CustRequestNote">
+                    <field-map field-name="custRequestId" from-field="custRequestId"/>
+                    <order-by field-name="-noteId"/>
+                </entity-and>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductBacklogItemDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <screenlet id="addProdBacklogNote" title="${uiLabelMap.PageTitleNewBacklogItemNote}" collapsible="true">
+                            <include-form name="AddProdBacklogNote" location="component://scrum/widget/scrumForms.xml"/>
+                        </screenlet>
+                        <screenlet id="listProdBacklogNote" title="${uiLabelMap.PageTitleBacklogItemNoteList}" collapsible="true">
+                            <include-form name="ListProdBacklogNote" location="component://scrum/widget/scrumForms.xml"/>
+                        </screenlet>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="BacklogNoteInfo">
+        <section>
+        <actions>
+            <set field="custRequestId" from-field="parameters.custRequestId"/>
+            <set field="productId" from-field="parameters.productId"/>
+            <entity-and list="noteDataList" entity-name="NoteData">
+                <field-map field-name="noteName" value="How to test"/>
+            </entity-and>
+            <set field="noteIds" value="${groovy:org.ofbiz.entity.util.EntityUtil.getFieldListFromEntityList(noteDataList, 'noteId', true);}" type="List"/>
+            <entity-condition list="custNoteList" entity-name="CustRequestNote" >
+                <condition-list combine="and">
+                    <condition-expr field-name="custRequestId" from-field="custRequestId"/>
+                    <condition-expr field-name="noteId" operator="not-in" from-field="noteIds" ignore-if-empty="true"/>
+                </condition-list>
+                <order-by field-name="-noteId"/>
+                <limit-range start="0" size="5"/>
+            </entity-condition>
+        </actions>
+            <widgets>
+                <screenlet id="listProdBacklogNote" title="${uiLabelMap.PageTitleBacklogItemNoteList}">
+                    <include-form name="ListProdBacklogNoteInfo" location="component://scrum/widget/scrumForms.xml"/>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="EditBacklogItemContent">
+        <section>
+            <actions>
+                <property-map resource="ContentUiLabels" map-name="uiLabelMap" global="true"/>
+                <set field="titleProperty" value="PageTitleProductBacklogItemsContents"/>
+                <set field="tabButtonItem" value="productBacklogItemContent"/>
+                <set field="headerItem" value="request"/>
+                <set field="contentId" from-field="parameters.contentId"/>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+                <set field="productId" from-field="parameters.productId"/>
+                <entity-and entity-name="CustRequestAndContent" list="custRequestAndContents">
+                    <field-map field-name="custRequestId" from-field="custRequestId"/>
+                    <field-map field-name="thruDate" value=""></field-map>
+                </entity-and>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductBacklogItemDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                             <condition>
+                                   <or>
+                                       <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="PROJECT"/>
+                                       <if-service-permission service-name="projectUpdateMemberPermission" context-map="permissionMap"/>
+                                   </or>
+                               </condition>
+                               <widgets>
+                                   <screenlet id="listCustRequestContent" title="${uiLabelMap.ScrumBacklogItemContentList}" collapsible="true">
+                                       <include-form name="ListCustRequestContent" location="component://scrum/widget/scrumForms.xml"/>
+                                   </screenlet>
+                                   <screenlet id="addCustRequestContent" title="${uiLabelMap.ScrumBacklogItemAddProductContent}" collapsible="true">
+                                       <include-form name="AddCustRequestContent" location="component://scrum/widget/scrumForms.xml"/>
+                                   </screenlet>
+                               </widgets>
+                                <fail-widgets>
+                                    <screenlet title="${uiLabelMap.ScrumBacklogItemContentList}">
+                                       <include-form name="ViewListCustRequestContent" location="component://scrum/widget/scrumForms.xml"/>
+                                    </screenlet>
+                                </fail-widgets>
+                                
+                      </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="ProductBacklogEmails">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleProductBacklogItemsCommunication"/>
+                <set field="tabButtonItem" value="productBacklogItemComm"/>
+                <entity-and list="custRequestItem" entity-name="CustRequestItem">
+                    <field-map field-name="custRequestId" from-field="parameters.custRequestId"/>
+                </entity-and>
+                <entity-one value-field="custRequest" entity-name="CustRequest"/>
+                <entity-condition list="commEvents" entity-name="CommunicationEventAndCustRequest">
+                    <condition-list combine="and">
+                        <condition-expr field-name="custRequestId" operator="equals" from-field="parameters.custRequestId"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_CANCELLED"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_DRAFT"/>
+                        <condition-expr field-name="statusId" operator="not-equals" value="COM_ENTERED"/>
+                        <condition-list combine="or">
+                            <condition-expr field-name="communicationEventTypeId" operator="equals" value="EMAIL_COMMUNICATION"/>
+                            <condition-expr field-name="communicationEventTypeId" operator="equals" value="AUTO_EMAIL_COMM"/>
+                        </condition-list>
+                    </condition-list>
+                    <order-by field-name="-entryDate"/>
+                </entity-condition>
+                <entity-and entity-name="ProductRole" list="productRole">
+                    <field-map field-name="productId" from-field="parameters.productId"/>
+                    <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
+                </entity-and>
+                <set field="productOwnerId" value="${productRole[0].partyId}"/>
+                <entity-one value-field="parentCom" entity-name="CommunicationEvent">
+                    <field-map field-name="communicationEventId" from-field="parameters.parentCommEventId"/>
+                </entity-one>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumBacklogItemCommDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <condition>
+                                <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="BACKLOG"/>
+                            </condition>
+                            <actions>
+                                <entity-condition entity-name="ProductBacklog" list="productBacklogs">
+                                    <condition-list combine="and">
+                                        <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
+                                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_SPRINT"/>
+                                    </condition-list>
+                                </entity-condition>
+                                <set field="sprintId" from-field="productBacklogs[0].workEffortId"/>
+                                <entity-condition entity-name="WorkEffortPartyAssignment" list="sprintMembers">
+                                    <condition-list combine="and">
+                                        <condition-expr field-name="workEffortId" from-field="sprintId"/>
+                                        <condition-expr field-name="partyId" from-field="userLogin.partyId"/>
+                                        <condition-expr field-name="roleTypeId" operator="equals" value="SCRUM_TEAM"/>
+                                    </condition-list>
+                                </entity-condition>
+                                <set field="sprintMember" from-field="sprintMembers[0]"/>
+                                <set field="isTeamMember" value="false" type="Boolean"/>
+                            </actions>
+                            <widgets>
+                                <screenlet title="${uiLabelMap.ScrumProductBacklogEmail}">
+                                    <include-form name="ViewRequestCommunicationEvents" location="component://scrum/widget/CommunicationEventForms.xml" />
+                                </screenlet>
+                            </widgets>
+                            <fail-widgets>
+                            <!-- Member section -->
+                                <section>
+                                    <condition>
+                                        <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="BACKLOG"/>
+                                    </condition>
+                                    <actions>
+                                         <set field="isTeamMember" type="Boolean" value="true"/>
+                                    </actions>
+                                    <widgets>
+                                        <screenlet title="${uiLabelMap.CommonEmails}">
+                                            <include-form name="ViewRequestCommunicationEvents" location="component://scrum/widget/CommunicationEventForms.xml" />
+                                       </screenlet>
+                                    </widgets>
+                                    <fail-widgets>
+                                        <include-screen name="ViewEditProdBacklog"/>
+                                    </fail-widgets>
+                                </section>
+                            </fail-widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="NewBacklogTask">
+        <section>
+            <actions>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductBacklogItemDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <screenlet title="${uiLabelMap.ScrumCreateTaskforProductBacklog}">
+                            <include-form location="component://scrum/widget/scrumForms.xml" name="NewBacklogTask"/>
+                        </screenlet>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="EditDeleteBacklogItem">
+        <section>
+            <actions>
+                <set field="tabButtonItem" value="view"/>
+                <set field="custRequestId" from-field="parameters.custRequestId"/>
+                <entity-one value-field="custRequestMap" entity-name="CustRequest"/>
+                <entity-and entity-name="CustRequestAndCustRequestItem" list="categoryList">
+                    <field-map field-name="productId" from-field="parameters.productId"/>
+                    <field-map field-name="custRequestTypeId" value="RF_PARENT_BACKLOG"/>
+                    <field-map field-name="custRequestId" from-field="custRequestMap.parentCustRequestId"/>
+                </entity-and>
+                <set field="productId" from-field="parameters.productId"/>
+                <entity-one entity-name="Product" value-field="productMap"/>
+                <entity-condition entity-name="ProductBacklog" list="productBacklogs">
+                    <condition-list combine="and">
+                        <condition-expr field-name="custRequestId" from-field="parameters.custRequestId"/>
+                        <condition-expr field-name="workEffortTypeId" operator="equals" value="SCRUM_SPRINT"/>
+                    </condition-list>
+                </entity-condition>
+                <set field="sprintId" from-field="productBacklogs[0].workEffortId"/>
+                <entity-one entity-name="WorkEffort" value-field="workEffort">
+                    <field-map field-name="workEffortId" from-field="sprintId"/>
+                </entity-one>
+                <set field="sprintName" from-field="workEffort.workEffortName"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonScrumProductBacklogItemDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <screenlet title="${uiLabelMap.ScrumDeleteBacklogItem}">
+                           <include-form name="EditDeleteBacklogItem" location="component://scrum/widget/scrumForms.xml"/>
+                        </screenlet>
+                        <screenlet title="${uiLabelMap.ScrumProductBacklogItemInfo}">
+                            <include-form location="component://scrum/widget/scrumForms.xml" name="ViewEditProdBacklog"/>
+                        </screenlet>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    <screen name="EditProjectContents">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleScrumProjectContents"/>
+                <set field="tabButtonItem" value="projectContent"/>
+                <set field="headerItem" value="EditProjectContents"/>
+                <set field="contentId" from-field="parameters.contentId"/>
+                <set field="projectId" from-field="parameters.projectId" default-value="${parameters.workEffortId}"/>
+                <set field="workEffortId" from-field="parameters.projectId" default-value="${parameters.workEffortId}"/>
+                <entity-and entity-name="WorkEffortAndContentDataResource" list="workEffortAndContentDataResources">
+                    <field-map field-name="workEffortId" from-field="projectId"/>
+                </entity-and>
+                <set field="permissionMap.projectId" from-field="projectId"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonProjectScreenDecorator"  location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                            <section>
+                                  <condition>
+                                      <or>
+                                        <if-service-permission service-name="scrumPermissionCheck" main-action="UPDATE" resource-description="PROJECT"/>
+                                          <if-service-permission service-name="projectUpdateMemberPermission" context-map="permissionMap"/>
+                                      </or>
+                                  </condition>
+                                <widgets>
+                                    <screenlet id="listContents" title="${uiLabelMap.ScrumContentList}" collapsible="true">
+                                        <include-form name="ListContents" location="component://scrum/widget/scrumForms.xml"/>
+                                    </screenlet>
+                                    <screenlet id="uploadWorkEffortContent" title="${uiLabelMap.PageTitleAddProjectContent}" collapsible="true">
+                                        <include-form name="UploadWorkEffortContent" location="component://scrum/widget/scrumForms.xml"/>
+                                    </screenlet>
+                                </widgets>
+                                <fail-widgets>
+                                    <include-screen name="ListProjectContent"/>
+                                </fail-widgets>
+                            </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+     <screen name="ListProjectContent">
+        <section>
+            <actions>
+                <property-map resource="ContentUiLabels" map-name="uiLabelMap"/>
+                <set field="workEffortId" from-field="parameters.projectId"/>
+            </actions>
+            <widgets>
+                <screenlet title="${uiLabelMap.ScrumContentList}">
+                    <include-form name="ListProjectContent" location="component://scrum/widget/scrumForms.xml"/>
+                </screenlet>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="DailyScrumMeetingMinute">
+        <section>
+            <actions>
+                <set field="titleProperty" value="PageTitleDailyMeetingMinutes"/>
+                <set field="tabButtonItem" value="DailySprintMeetingMinute"/>
+                <set field="workEffortId" from-field="parameters.projectId"/>
+                <set field="sprintId" from-field="parameters.sprintId"/>
+                <entity-one entity-name="WorkEffort" value-field="project"/>
+                <entity-one value-field="custRequest" entity-name="CustRequest"/>
+            </actions>
+            <widgets>
+                <decorator-screen name="CommonSprintScreenDecorator" location="${parameters.mainDecoratorLocation}">
+                    <decorator-section name="body">
+                        <section>
+                            <condition>
+                                <or>
+                                    <if-has-permission permission="SCRUM_DAILY" action="_UPDATE"/>
+                                    <if-has-permission permission="SCRUM" action="_ADMIN"/>
+                                </or>
+                            </condition>
+                            <widgets>
+                                <screenlet name="DailyScrumMeetingMinute" title="${uiLabelMap.ScrumAddDailyMeetingMinutes} : ${parameters.projectId}" collapsible="true">
+                                    <include-form location="component://scrum/widget/scrumForms.xml" name="DailyMeetingMinute"/>
+                                </screenlet>
+                                <screenlet title="${uiLabelMap.ScrumListUpdateDailyMeetingMinutes}">
+                                    <include-screen name="ListDailyMeetingMinutes"/>
+                                </screenlet>
+                            </widgets>
+                            <fail-widgets>
+                                <section>
+                                    <widgets>
+                                        <screenlet title="${uiLabelMap.ScrumListUpdateDailyMeetingMinutes}">
+                                            <include-screen name="ListDailyMeetingMinutes"/>
+                                        </screenlet>
+                                    </widgets>
+                                </section>
+                            </fail-widgets>
+                        </section>
+                    </decorator-section>
+                </decorator-screen>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="ListDailyMeetingMinutes">
+        <section>
+            <actions>
+                <set field="tabButtonItem" value="SprintList"/>
+                <set field="workEffortId" from-field="parameters.projectId"/>
+                <entity-one entity-name="WorkEffort" value-field="project"/>
+                <entity-one value-field="custRequest" entity-name="CustRequest"/>
+            </actions>
+            <widgets>
+                    <include-form location="component://scrum/widget/scrumForms.xml" name="ListDailyMeetingMinute"/>
+            </widgets>
+        </section>
+    </screen>
+    
+    <screen name="ViewDailyMeetingMinutes">
+        <section>
+            <actions>
+                <set field="tabButtonItem" value="SprintList"/>
+                <set field="workEffortId" from-field="parameters.projectId"/>
+                <entity-one entity-name="WorkEffort" value-field="project"/>

[... 1667 lines stripped ...]