<?xml version="1.0" encoding="UTF-8"?>
<!--
    Licensed to the Apache Software Foundation (ASF) under one
    or more contributor license agreements.  See the NOTICE file
    distributed with this work for additional information
    regarding copyright ownership.  The ASF licenses this file
    to you under the Apache License, Version 2.0 (the
    "License"); you may not use this file except in compliance
    with the License.  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.
-->

<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods-v2.xsd">
    <simple-method method-name="scrumPermissionCheck" short-description="general service to check access to the scrum component">
        <set field="primaryPermission" value="SCRUM"/>
        <set field="hasPermission" value="true" type="Boolean"/>
        <set field="hasNoPermission" value="false" type="Boolean"/>
        <set field="partyId" from-field="parameters.userLogin.partyId"/>

        <if-compare field="parameters.resourceDescription" value="MEMBER" operator="equals">
            <set field="sec_object" value="MEMBER"/>
        </if-compare>
        <if-compare field="parameters.resourceDescription" value="TEST" operator="equals">
            <set field="sec_object" value="TEST"/>
        </if-compare>
        <if-compare field="parameters.resourceDescription" value="TASK" operator="equals">
            <set field="sec_object" value="TASK"/>
        </if-compare>
        <if-compare field="parameters.resourceDescription" value="BACKLOG" operator="equals">
            <set field="sec_object" value="BACKLOG"/>
        </if-compare>
        <if-compare field="parameters.resourceDescription" value="PRODUCT" operator="equals">
            <set field="sec_object" value="PRODUCT"/>
        </if-compare>
        <if-compare field="parameters.resourceDescription" value="SPRINT" operator="equals">
            <set field="sec_object" value="SPRINT"/>
        </if-compare>
        <if-compare field="parameters.resourceDescription" value="PROJECT" operator="equals">
            <set field="sec_object" value="PROJECT"/>
        </if-compare>
        <if-compare field="parameters.resourceDescription" value="SCRUM" operator="equals">
            <set field="sec_object" value="SCRUM"/>
        </if-compare>
        <!-- Administrator -->
        <if-has-permission permission="SCRUM" action="_ADMIN">
            <field-to-result field="hasPermission"/>
            <return/>
        </if-has-permission>
        
        <!-- Scrum CommonDecorator Only-->
        <if-compare operator="equals" value="SCRUM" field="sec_object">
            <entity-condition list="securityGroupList" entity-name="ScrumMemberUserLoginAndSecurityGroup">
                <condition-list combine="and">
                    <condition-expr field-name="partyId" operator="equals" from-field="partyId"/>
                    <condition-expr field-name="partyStatusId" operator="not-equals" value="PARTY_DISABLED"/>
                    <condition-expr field-name="thruDate" operator="equals" value=""/>
                </condition-list>
            </entity-condition>
            <first-from-list entry="securityGroupMap" list="securityGroupList"/>
            <if>
                <condition>
                    <or>
                        <if-compare field="securityGroupMap.groupId" operator="equals" value="SCRUM_PRODUCT_OWNER" />
                        <if-compare field="securityGroupMap.groupId" operator="equals" value="SCRUM_MASTER" />
                        <if-compare field="securityGroupMap.groupId" operator="equals" value="SCRUM_TEAM" />
                    </or>
                </condition>
                <then>
                    <if>
                       <condition>
                           <and>
                               <if-has-permission permission="SCRUM_ROLE" action="_VIEW"/>
                               <if-compare field="parameters.mainAction" value="VIEW" operator="equals"/>
                           </and>
                       </condition>
                        <then>
                            <field-to-result field="hasPermission"/>
                            <return/>
                        </then>
                        <else>
                            <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToScrum" field="failMessage"/>
                            <field-to-result field="failMessage"/>
                            <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                            <return/>
                        </else>
                   </if>
                </then>
                <else>
                    <if>
                        <condition>
                            <and>
                                <if-has-permission permission="SCRUM" action="_VIEW"/>
                                <if-compare field="parameters.mainAction" value="VIEW" operator="equals"/>
                            </and>
                        </condition>
                         <then>
                             <field-to-result field="hasPermission"/>
                             <return/>
                         </then>
                         <else>
                             <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToScrum" field="failMessage"/>
                             <field-to-result field="failMessage"/>
                             <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                             <return/>
                         </else>
                    </if>
                </else>
            </if>
        </if-compare>
        <!-- PRODUCT -->
        <if-compare operator="equals" value="PRODUCT" field="sec_object">
            <set field="productId" from-field="parameters.productId"/>
            <if>
                <condition>
                    <if-compare operator="equals" value="VIEW" field="parameters.mainAction"/>
                </condition>
                <then>
                    <if>
                        <condition>
                            <and>
                                <or>
                                    <if-has-permission permission="SCRUM_PRODUCT_ROLE" action="_VIEW"/>
                                    <if-has-permission permission="SCRUM_PRODUCT_ROLE" action="_ADMIN"/>
                                </or>
                                <not><if-empty field="productId"/></not>
                            </and>
                        </condition>
                        <then>
                            <!-- Product Owner -->
                            <entity-and list="productRoles" entity-name="ProductRole">
                                <field-map field-name="productId" from-field="productId"/>
                                <field-map field-name="partyId" from-field="partyId"/>
                                <field-map field-name="roleTypeId" value="PRODUCT_OWNER"/>
                            </entity-and>
                            <!-- Memberships related to this product. -->
                            <entity-and list="projectSprints" entity-name="ProjectSprint">
                                <field-map field-name="productId" from-field="productId"/>
                            </entity-and>
                            <set field="isMembership" type="Boolean" value="false"/>
                            <iterate entry="projectSprintEntry" list="projectSprints">
                                <entity-condition list="assigns" entity-name="WorkEffortPartyAssignAndRoleType">
                                    <condition-list>
                                        <condition-expr field-name="workEffortId" operator="equals" from-field="projectSprintEntry.sprintId"/>
                                        <condition-expr field-name="partyId" from-field="partyId"/>
                                    </condition-list>
                                </entity-condition>
                                <if-not-empty field="assigns">
                                    <set field="isMembership" type="Boolean" value="true"/>
                                </if-not-empty>
                            </iterate>
                            <if>
                                <condition>
                                    <or>
                                        <not><if-empty field="productRoles"/></not>
                                        <if-compare operator="equals" value="true" field="isMembership" type="Boolean"/>
                                    </or>
                                </condition>
                                <then>
                                    <field-to-result field="hasPermission"/>
                                    <return/>
                                </then>
                                <else>
                                    <property-to-field resource="scrumUiLabels" property="scrumNoAccessToProduct" field="failMessage"/>
                                    <field-to-result field="failMessage"/>
                                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                                    <return/>
                                </else>
                            </if>
                        </then>
                        <else>
                            <if>
                                <condition>
                                    <or>
                                        <if-has-permission permission="SCRUM_PRODUCT" action="_VIEW"/>
                                        <if-has-permission permission="SCRUM_PRODUCT" action="_ADMIN"/>
                                    </or>
                                </condition>
                                <then>
                                    <field-to-result field="hasPermission"/>
                                    <return/>
                                </then>
                                <else>
                                    <property-to-field resource="scrumUiLabels" property="scrumNoAccessToProduct" field="failMessage"/>
                                    <field-to-result field="failMessage"/>
                                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                                    <return/>
                                </else>
                            </if>
                        </else>
                    </if>
                </then>
                <else-if>
                    <condition>
                        <if-compare operator="equals" value="CREATE" field="parameters.mainAction"/>
                    </condition>
                    <then>
                        <!-- Only Scrum Administrator -->
                        <property-to-field resource="scrumUiLabels" property="scrumNoAccessToProduct" field="failMessage"/>
                        <field-to-result field="failMessage"/>
                        <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                        <return/>
                    </then>
                </else-if>
                <else-if>
                    <condition>
                        <if-compare operator="equals" value="UPDATE" field="parameters.mainAction"/>
                    </condition>
                    <then>
                        <!-- Only Scrum Administrator -->
                        <property-to-field resource="scrumUiLabels" property="scrumNoAccessToProduct" field="failMessage"/>
                        <field-to-result field="failMessage"/>
                        <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                        <return/>
                    </then>
                </else-if>
                <else-if>
                    <condition>
                        <if-compare operator="equals" value="DELETE" field="parameters.mainAction"/>
                    </condition>
                    <then>
                        <!-- Only Scrum Administrator -->
                        <property-to-field resource="scrumUiLabels" property="scrumNoAccessToProduct" field="failMessage"/>
                        <field-to-result field="failMessage"/>
                        <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                        <return/>
                    </then>
                </else-if>
                <else>
                    <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToProduct" field="failMessage"/>
                    <field-to-result field="failMessage"/>
                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                    <return/>
                </else>
            </if>
        </if-compare>
        <!-- BACKLOG -->
        <if-compare operator="equals" value="BACKLOG" field="sec_object">
            <if>
                <condition>
                    <or>
                        <and>
                            <if-compare operator="equals" value="VIEW" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_PRODUCT_BACKLOG" action="_ADMIN"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="CREATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_PRODUCT_BACKLOG" action="_CREATE"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="UPDATE" field="parameters.mainAction"/>
                            <or>
                                <if-has-permission permission="SCRUM_PRODUCT_BACKLOG" action="_UPDATE"/>
                                <if-has-permission permission="SCRUM_PRODUCT_BACKLOG" action="_ADMIN"/>
                            </or>
                        </and>
                        <and>
                            <if-compare operator="equals" value="DELETE" field="parameters.mainAction"/>
                            <or>
                                <if-has-permission permission="SCRUM_PRODUCT_BACKLOG" action="_DELETE"/>
                                <if-has-permission permission="SCRUM_PRODUCT_BACKLOG" action="_ADMIN"/>
                            </or>
                        </and>
                    </or>
                </condition>
                <then>
                    <field-to-result field="hasPermission"/>
                    <return/>
                </then>
                <else>
                    <property-to-field resource="scrumUiLabels" property="scrumNoAccessToProduct" field="failMessage"/>
                    <field-to-result field="failMessage"/>
                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                    <return/>
                </else>
            </if>
        </if-compare>
        <!-- PROJECT -->
        <if-compare operator="equals" value="PROJECT" field="sec_object">
            <if>
                <condition>
                    <or>
                        <and>
                            <if-compare operator="equals" value="VIEW" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_PROJECT_ROLE" action="_VIEW"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="CREATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_PROJECT_ROLE" action="_ADMIN"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="UPDATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_PROJECT_ROLE" action="_ADMIN"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="DELETE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_PROJECT_ROLE" action="_ADMIN"/>
                        </and>
                    </or>
                </condition>
                <then>
                    <field-to-result field="hasPermission"/>
                    <return/>
                </then>
                <else>
                    <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToProject" field="failMessage"/>
                    <field-to-result field="failMessage"/>
                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                    <return/>
                </else>
            </if>
        </if-compare>
        <!-- SPRINT -->
        <if-compare operator="equals" value="SPRINT" field="sec_object">
            <if>
                <condition>
                    <or>
                        <and>
                            <if-compare operator="equals" value="VIEW" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_SPRINT" action="_VIEW"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="CREATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_SPRINT" action="_CREATE"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="UPDATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_SPRINT" action="_UPDATE"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="DELETE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_SPRINT" action="_DELETE"/>
                        </and>
                    </or>
                </condition>
                <then>
                    <field-to-result field="hasPermission"/>
                    <return/>
                </then>
                <else>
                    <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToProject" field="failMessage"/>
                    <field-to-result field="failMessage"/>
                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                    <return/>
                </else>
            </if>
        </if-compare>
        <!-- TASK -->
        <if-compare operator="equals" value="TASK" field="sec_object">
            <if>
                <condition>
                    <or>
                        <and>
                           <if-compare operator="equals" value="VIEW" field="parameters.mainAction"/>
                           <or>
                               <if-has-permission permission="SCRUM_TASK" action="_VIEW"/>
                               <if-has-permission permission="SCRUM_TEST" action="_ADMIN"/>
                               <if-has-permission permission="SCRUM_TASK" action="_ADMIN"/>
                           </or>
                        </and>
                        <and>
                            <if-compare operator="equals" value="CREATE" field="parameters.mainAction"/>
                            <or>
                                <if-has-permission permission="SCRUM_TASK" action="_CREATE"/>
                                <if-has-permission permission="SCRUM_TEST" action="_ADMIN"/>
                            </or>
                        </and>
                        <and>
                            <if-compare operator="equals" value="UPDATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_TASK" action="_UPDATE"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="DELETE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_TASK" action="_DELETE"/>
                        </and>
                    </or>
                    
                </condition>
                <then>
                    <field-to-result field="hasPermission"/>
                    <return/>
                </then>
                <else>
                    <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToTask" field="failMessage"/>
                    <field-to-result field="failMessage"/>
                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                    <return/>
                </else>
            </if>
        </if-compare>
        <!-- MEMBER -->
        <if-compare operator="equals" value="MEMBER" field="sec_object">
            <if>
                <condition>
                    <or>
                        <and>
                            <if-compare operator="equals" value="VIEW" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_MEMBER" action="_VIEW"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="CREATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_MEMBER" action="_CREATE"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="UPDATE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_MEMBER" action="_UPDATE"/>
                        </and>
                        <and>
                            <if-compare operator="equals" value="DELETE" field="parameters.mainAction"/>
                            <if-has-permission permission="SCRUM_MEMBER" action="_DELETE"/>
                        </and>
                    </or>
                    
                </condition>
                <then>
                    <field-to-result field="hasPermission"/>
                    <return/>
                </then>
                <else>
                    <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToMember" field="failMessage"/>
                    <field-to-result field="failMessage"/>
                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                    <return/>
                </else>
            </if>
        </if-compare>
        <!-- TEST -->
        <if-compare operator="equals" value="TEST" field="sec_object">
            <if>
                <condition>
                    <or>
                        <and>
                            <if-compare operator="equals" value="VIEW" field="parameters.mainAction"/>
                            <or>
                                <if-has-permission permission="SCRUM_TEST" action="_READ"/>
                                <if-has-permission permission="SCRUM_TEST" action="_ADMIN"/>
                            </or>
                        </and>
                        <and>
                            <if-compare operator="equals" value="UPDATE" field="parameters.mainAction"/>
                            <or>
                                <if-has-permission permission="SCRUM_PRODUCT_BACKLOG" action="_ADMIN"/>
                                <if-has-permission permission="SCRUM_TASK" action="_CREATE"/>
                                <if-has-permission permission="SCRUM_TEST" action="_ADMIN"/>
                            </or>
                        </and>
                    </or>
                    
                </condition>
                <then>
                    <field-to-result field="hasPermission"/>
                    <return/>
                </then>
                <else>
                    <property-to-field resource="scrumUiLabels" property="ScrumNoAccessToTest" field="failMessage"/>
                    <field-to-result field="failMessage"/>
                    <field-to-result field="hasNoPermission" result-name="hasPermission"/>
                    <return/>
                </else>
            </if>
        </if-compare>
        <field-to-result field="hasPermission"/>
        <return/>
    </simple-method>
    
    <simple-method method-name="projectUpdateMemberPermission" short-description="Check Project update Member Permission">
        <set field="hasPermission" value="false" type="Boolean"/>
        <if-has-permission permission="PROJECT" action="_UPDATE">
            <entity-condition list="workEffortPartyAssignments" entity-name="WorkEffortPartyAssignment">
                <condition-list combine="and">
                    <condition-expr field-name="partyId" from-field="userLogin.partyId"/>
                    <condition-expr field-name="workEffortId" from-field="parameters.projectId"/>
                </condition-list>
            </entity-condition>
            <if-not-empty field="workEffortPartyAssignments">
                <set field="hasPermission" value="true" type="Boolean"/>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    <simple-method method-name="taskUpdateMemberPermission" short-description="Check Project update Member Permission">
        <set field="hasPermission" value="false" type="Boolean"/>
        <if-has-permission permission="TASK" action="_UPDATE">
            <entity-condition list="workEffortPartyAssignments" entity-name="WorkEffortPartyAssignment">
                <condition-list combine="and">
                    <condition-expr field-name="partyId" from-field="userLogin.partyId"/>
                    <condition-expr field-name="roleTypeId" value="SCRUM_MASTER"/>
                    <condition-expr field-name="workEffortId" from-field="parameters.projectId"/>
                </condition-list>
            </entity-condition>
            <if-not-empty field="workEffortPartyAssignments">
                <set field="hasPermission" value="true" type="Boolean"/>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    <!-- Sprint -->
    <simple-method method-name="sprintAddPermission" short-description="Check Create Sprint Permission">
        <set field="hasPermission" default-value="false" type="Boolean"/>
        <if-has-permission permission="SCRUM_SPRINT" action="_CREATE">
            <set field="hasPermission" value="true" type="Boolean"/>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    <simple-method method-name="sprintViewPermission" short-description="Check View Sprint Permission">
        <set field="hasPermission" default-value="false" type="Boolean"/>
        <if-has-permission permission="SCRUM_SPRINT" action="_VIEW">
            <if-not-empty field="parameters.sprintId">
                <if-not-empty field="parameters.projectId">
                    <set field="hasPermission" value="true" type="Boolean"/>
                </if-not-empty>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    <simple-method method-name="sprintUpdatePermission" short-description="Check Update Sprint Permission">
        <set field="hasPermission" default-value="false" type="Boolean"/>
        <if-has-permission permission="SCRUM_SPRINT" action="_UPDATE">
            <if-not-empty field="parameters.sprintId">
                <if-not-empty field="parameters.projectId">
                    <set field="hasPermission" value="true" type="Boolean"/>
                </if-not-empty>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    <simple-method method-name="sprintDeletePermission" short-description="Check Delete Sprint Permission">
        <set field="hasPermission" default-value="false" type="Boolean"/>
        <if-has-permission permission="SCRUM_SPRINT" action="_Delete">
            <if-not-empty field="parameters.sprintId">
                <if-not-empty field="parameters.projectId">
                    <set field="hasPermission" value="true" type="Boolean"/>
                </if-not-empty>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    
    <simple-method method-name="sprintBacklogDeletePermission" short-description="Check Delete Sprint Backlog Permission">
        <set field="hasPermission" default-value="false" type="Boolean"/>
        <if-has-permission permission="SPRINT_BACKLOG" action="_DELETE">
            <if-not-empty field="parameters.sprintId">
                <if-not-empty field="parameters.projectId">
                    <set field="hasPermission" value="true" type="Boolean"/>
                </if-not-empty>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    <simple-method method-name="projectTaskCreatePermission" short-description="Check Project Create Task Permission">
        <set field="hasPermission" value="false" type="Boolean"/>
        <if-has-permission permission="TASK" action="_CREATE">
            <entity-condition list="workEffortPartyAssignments" entity-name="WorkEffortPartyAssignment">
                <condition-list combine="and">
                    <condition-expr field-name="partyId" from-field="userLogin.partyId"/>
                    <condition-expr field-name="workEffortId" from-field="parameters.projectId"/>
                </condition-list>
            </entity-condition>
            <if-not-empty field="workEffortPartyAssignments">
                <set field="hasPermission" value="true" type="Boolean"/>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>
    <simple-method method-name="projectTaskDeletePermission" short-description="Check Project Delete Task Permission">
        <set field="hasPermission" value="false" type="Boolean"/>
        <if-has-permission permission="TASK" action="_DELETE">
            <entity-condition list="workEffortPartyAssignments" entity-name="WorkEffortPartyAssignment">
                <condition-list combine="and">
                    <condition-expr field-name="partyId" from-field="userLogin.partyId"/>
                    <condition-expr field-name="workEffortId" from-field="parameters.projectId"/>
                </condition-list>
            </entity-condition>
            <if-not-empty field="workEffortPartyAssignments">
                <set field="hasPermission" value="true" type="Boolean"/>
            </if-not-empty>
        </if-has-permission>
        <field-to-result field="hasPermission"/>
    </simple-method>

</simple-methods>
