<core:FragmentDefinition
    xmlns="sap.m"
    xmlns:core="sap.ui.core"
    xmlns:dnd="sap.ui.core.dnd"
    xmlns:grid="sap.ui.layout.cssgrid"
    xmlns:l="sap.ui.layout"
    xmlns:layout="sap.ui.layout"
    xmlns:f="sap.ui.layout.form"
    core:require="{
    format: 'sap/mcsuite/model/Format', 
    translate: 'sap/mcsuite/model/Translate', 
    utils: 'sap/mcsuite/model/Utils'
  }"
    controllerName="sap.mcsuite.controller.BaseController"
>
    <CustomListItem class='mc-alert-detail'>
        <grid:CSSGrid
            gridTemplateColumns="1fr auto auto"
            gridGap="8px"
            visible="{= ${path: 'type', targetType: 'string'} === 'CONTACT'}"
        >
            <HBox alignItems="Center">
                <core:Icon
                    class="mc-alert-detail-icon"
                    src='sap-icon://fa-light/user'
                    color="{= ${path: 'status', targetType: 'string'} === '1' ? 'Positive' : 'Neutral'}"
                />
                <FormattedText htmlText="{= '&lt;strong&gt;' + ${_contact_id/position} + '&lt;/strong&gt; |'}" class="sapUiTinyMarginEnd" tooltip="Kontaktpriorität" />
                <FormattedText htmlText="{= '&lt;strong&gt;' + ${prio} + ':&lt;/strong&gt;'}" class="sapUiTinyMarginEnd" tooltip="Alarmpriorität" />
                <Text
                    text="{_contact_id/name}"
                    class="sapUiTinyMarginEnd"
                />
            </HBox>
            
            <HBox
                alignItems="Center"
            >
                <core:Icon
                    src="sap-icon://alert"
                    class="sapUiTinyMarginEnd"
                    color="Negative"
                    visible="{= ${path: 'type', targetType: 'any'} === 'CONTACT' &amp;&amp; ${path: '_object', targetType: 'any', formatter: 'utils.AlertDetail.hasNoAvailability'} === true }"
                    tooltip="{parts: [{value:'TOOLTIP'}, {value:'NO_AVAILABILITY'}, {value:'No availability'}], formatter: 'translate.Label.get'}"
                />
                <core:Icon
                    src="sap-icon://alert"
                    class="sapUiTinyMarginEnd"
                    color="Negative"
                    visible="{= ${path:'object>/temporary_inactive', targetType:'any'} === 'true' }"
                    tooltip="{parts: [{value:'TOOLTIP'}, {value:'TEMPORARILY INACTIVE'}, {value:'TEMPORARILY INACTIVE'}], formatter: 'translate.Label.get'}"
                />
                <Button
                    icon="sap-icon://fa-light/pen"
                    class="no-border"
                    press="utils.AlertDetail.onEditButtonPress"
                    tooltip="{parts: [{value:'LITERAL'}, {value:'EDIT'}, {value: 'Bearbeiten'}], formatter: 'translate.Label.get'}"
                />
                <Button
                    icon="sap-icon://fa-light/eye"
                    class="no-border"
                    press="taskNav"
                    tooltip="{parts: [{value:'LITERAL'}, {value:'SHOW'}, {value: 'Anzeigen'}], formatter: 'translate.Label.get'}"
                >
                    <customData>
                        <core:CustomData
                            key="module"
                            value="contacts"
                        />
                        <core:CustomData
                            key="task"
                            value="contacts_show"
                        />
                        <core:CustomData
                            key="field"
                            value="id"
                        />
                        <core:CustomData
                            key="value"
                            value="{contact_id}"
                        />
                    </customData>
                </Button>
                <Button
                    icon="sap-icon://fa-light/trash"
                    class="no-border"
                    press="utils.AlertDetail.onDeleteAlertDetail"
                    tooltip="{parts: [{value:'LITERAL'}, {value:'DELETE'}, {value: 'Löschen'}], formatter: 'translate.Label.get'}"
                />
            </HBox>
        </grid:CSSGrid>

        <VBox
            visible="{= ${path: 'type', targetType: 'string'} === 'JOB'}"
        >
            <grid:CSSGrid
                gridTemplateColumns="1fr auto"
                gridGap="8px"
                width="100%"
            >
                <HBox alignItems="Center">
                    <core:Icon
                        class="mc-alert-detail-icon"
                        src='sap-icon://fa-light/users-gear'
                        color="{= ${path: 'status', targetType: 'string'} === '1' ? 'Positive' : 'Neutral'}"
                    />
                    <FormattedText htmlText="{= '&lt;strong&gt;' + ${state>/contactPosition} + '&lt;/strong&gt; |'}" class="sapUiTinyMarginEnd" tooltip="Kontaktpriorität" />
                    <FormattedText htmlText="{= '&lt;strong&gt;' + ${prio} + ':&lt;/strong&gt;'}" class="sapUiTinyMarginEnd" />
                    <Text
                        visible="{= ${path: '_job_id/type', targetType: 'string'} === 'SHOP'}"
                        text="{= %{_job_id/_shop_id/sap_number} + ' - ' + %{_job_id/_shop_id/name} + ', ' + %{_job_id/_cat_id/name}}"
                        class="sapUiTinyMarginEnd"
                    />
                    <Text
                        visible="{= ${path: '_job_id/type', targetType: 'string'} === 'CLIENT'}"
                        text="{= %{_job_id/_client_id/name} + ', ' + %{_job_id/_cat_id/name}}"
                        class="sapUiTinyMarginEnd"
                    />
                    <HBox
                        alignItems="Center"
                        visible="{state>/isContactActive}"
                    >
                        <core:Icon 
                            src="sap-icon://fa-light/user-check"
                            color="Positive"
                            class="sapUiTinyMarginEnd"
                        >
                        </core:Icon>
                        <!--<Text
                            text="{parts: [{value:'LABEL'}, {value:'ACTIVE_CONTACT'}, {value:'Im Dienst:'}], formatter: 'translate.Label.get'}"
                            class="sapUiTinyMarginEnd"
                        />-->
                        <Text text="{state>/activeContactName}" wrapping="true" width="20rem"/>
                    </HBox>
                    <core:Icon
                        src="sap-icon://alert"
                        color="Negative"
                        class="sapUiTinyMarginEnd"
                        visible="{=!${state>/isContactActive}}"
                        tooltip="{parts: [{value:'TOOLTIP'}, {value:'NO_ACTIVE_CONTACT'}, {value:'No active contact'}], formatter: 'translate.Label.get'}"
                    />
                </HBox>
                
                <HBox
                    alignItems="Center"
                >
                    <Button
                        icon="sap-icon://fa-light/pen"
                        class="no-border"
                        press="utils.AlertDetail.onEditButtonPress"
                        tooltip="{parts: [{value:'LITERAL'}, {value:'EDIT'}, {value: 'Bearbeiten'}], formatter: 'translate.Label.get'}"
                    />
                    <Button
                        icon="sap-icon://fa-light/eye"
                        class="no-border"
                        press="taskNav"
                        tooltip="{parts: [{value:'LITERAL'}, {value:'SHOW'}, {value: 'Anzeigen'}], formatter: 'translate.Label.get'}"
                    >
                        <customData>
                            <core:CustomData
                                key="module"
                                value="jobs"
                            />
                            <core:CustomData
                                key="task"
                                value="show"
                            />
                            <core:CustomData
                                key="field"
                                value="id"
                            />
                            <core:CustomData
                                key="value"
                                value="{job_id}"
                            />
                        </customData>
                    </Button>
                    <Button
                        icon="sap-icon://fa-light/trash"
                        class="no-border"
                        press="utils.AlertDetail.onDeleteAlertDetail"
                        tooltip="{parts: [{value:'LITERAL'}, {value:'DELETE'}, {value: 'Löschen'}], formatter: 'translate.Label.get'}"
                    />
                    <Button
                        icon="{= ${path: 'state>/isExpanded', targetType: 'any'} ? 'sap-icon://fa-light/chevron-down' : 'sap-icon://fa-light/chevron-right' }"
                        class="no-border"
                        press="utils.AlertDetail.onToggleMembers"
                        tooltip="{parts: [{value:'TOOLTIP'}, {value:'TOGGLE_MEMBERS'}, {value:'Toggle Members'}], formatter: 'translate.Label.get'}"
                    />
                </HBox>
            </grid:CSSGrid>
            <List
                items="{path: '_job_id/erp_jobs_dt', filters: [{path: 'status', operator: 'LT', value1: '90'}], templateShareable: false}"
                visible="{state>/isExpanded}"
                class="sapUiSmallMarginBeginEnd sapUiSmallMarginBottom"
            >
                <StandardListItem title="{_contact_id/name}" />
            </List>
        </VBox>

        <VBox
            visible="{= ${path: 'type', targetType: 'string'} === 'ROSTER'}"
        >
            <grid:CSSGrid
                gridTemplateColumns="1fr auto"
                gridGap="8px"
                width="100%"
            >
                <HBox
                    alignItems="Center"
                    width="100%"
                >
                    <core:Icon
                        class="mc-alert-detail-icon"
                        src="sap-icon://fa-light/business-time"
                        color="{= ${path: 'status', targetType: 'string'} === '1' ? 'Positive' : 'Neutral'}"
                    />
                    <FormattedText htmlText="{= '&lt;strong&gt;' + ${state>/contactPosition} + '&lt;/strong&gt; |'}" class="sapUiTinyMarginEnd" tooltip="Kontaktpriorität" />
                    <FormattedText htmlText="{= '&lt;strong&gt;' + ${prio} + ':&lt;/strong&gt;'}" class="sapUiTinyMarginEnd" />
                    <Text
                        text="{_roster_id/name}"
                        class="sapUiTinyMarginEnd"
                    />
                    <HBox
                        alignItems="Center"
                        visible="{state>/isContactActive}"
                    >
                        <core:Icon 
                            src="sap-icon://fa-light/user-check"
                            color="Positive"
                            class="sapUiTinyMarginEnd"
                        >
                        </core:Icon>
                        <!--<Text
                            text="{parts: [{value:'LABEL'}, {value:'ACTIVE_CONTACT'}, {value:'Im Dienst:'}], formatter: 'translate.Label.get'}"
                            class="sapUiTinyMarginEnd"
                        />-->
                        <Text text="{state>/activeContactName}" wrapping="true" width="20rem"/>
                    </HBox>
                    <core:Icon
                        src="sap-icon://alert"
                        color="Negative"
                        class="sapUiTinyMarginEnd"
                        visible="{=!${state>/isContactActive}}"
                        tooltip="{parts: [{value:'TOOLTIP'}, {value:'NO_ACTIVE_CONTACT'}, {value:'No active contact'}], formatter: 'translate.Label.get'}"
                    />
                </HBox>
                <HBox
                    alignItems="Center"
                    justifyContent="End"
                >
                    <Button
                        icon="sap-icon://fa-light/pen"
                        class="no-border"
                        press="utils.AlertDetail.onEditButtonPress"
                        tooltip="{parts: [{value:'LITERAL'}, {value:'EDIT'}, {value: 'Bearbeiten'}], formatter: 'translate.Label.get'}"
                    />
                    <Button
                        icon="sap-icon://fa-light/eye"
                        class="no-border"
                        press="taskNav"
                        tooltip="{parts: [{value:'LITERAL'}, {value:'SHOW'}, {value: 'Anzeigen'}], formatter: 'translate.Label.get'}"
                    >
                        <customData>
                            <core:CustomData
                                key="module"
                                value="rosters"
                            />
                            <core:CustomData
                                key="task"
                                value="rosters_show"
                            />
                            <core:CustomData
                                key="field"
                                value="id"
                            />
                            <core:CustomData
                                key="value"
                                value="{roster_id}"
                            />
                        </customData>
                    </Button>
                    <Button
                        icon="sap-icon://fa-light/trash"
                        class="no-border"
                        press="utils.AlertDetail.onDeleteAlertDetail"
                        tooltip="{parts: [{value:'LITERAL'}, {value:'DELETE'}, {value: 'Löschen'}], formatter: 'translate.Label.get'}"
                    />
                    <Button
                        icon="{= ${path: 'state>/isExpanded', targetType: 'any'} ? 'sap-icon://fa-light/chevron-down' : 'sap-icon://fa-light/chevron-right' }"
                        class="no-border"
                        press="utils.AlertDetail.onToggleMembers"
                        tooltip="{parts: [{value:'TOOLTIP'}, {value:'TOGGLE_MEMBERS'}, {value:'Toggle Members'}], formatter: 'translate.Label.get'}"
                    />
                </HBox>
            </grid:CSSGrid>
            <List
                items="{path: '_roster_id/gpv_rosters_dt', filters: [{path: 'type', operator: 'EQ', value1: 'CONTACT'}, {path: 'status', operator: 'LT', value1: '90'}], templateShareable: false}"
                visible="{state>/isExpanded}"
                class="sapUiSmallMarginBeginEnd sapUiSmallMarginBottom"
            >
                <StandardListItem title="{_contact_id/name}" />
            </List>
        </VBox>
    </CustomListItem>
</core:FragmentDefinition>
