<?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.xsd">
    <simple-method method-name="sendMailFromTemplateSetting" short-description="Send Mail from Email Template Setting">
        <!-- if partyIdTo provided but no emailAddress, get it from the partyContactMech -->
        <if-empty field="parameters.sendTo">
            <if-empty field="parameters.partyIdTo">
                <log level="error" message="PartyId or SendTo should be specified!"/>
                <add-error>
                    <fail-property resource="CommonUiLabels" property="CommonEmailShouldBeSpecified"/>
                </add-error>
            <check-errors/>
            </if-empty>
        </if-empty>
        <if-empty field="parameters.sendTo">
            <set field="getEmail.partyId" from-field="parameters.partyIdTo"/>
            <call-service service-name="getPartyEmail" in-map-name="getEmail">
                <result-to-field result-name="emailAddress" field="parameters.sendTo"/>
            </call-service>
            <if-empty field="parameters.sendTo">
                <log level="error" message="PartyId: ${parameters.partyIdTo} has no valid email address!"></log>
                <add-error>
                    <fail-property resource="CommonUiLabels" property="CommonEmailNotValid"/>
                </add-error>
                <check-errors/>
            </if-empty>
        </if-empty>
        <entity-one entity-name="EmailTemplateSetting" value-field="emailTemplateSetting"/>
        <if-not-empty field="emailTemplateSetting">
            <set field="emailParams.bodyScreenUri" from-field="emailTemplateSetting.bodyScreenLocation"/>
            <set field="emailParams.xslfoAttachScreenLocation" from-field="emailTemplateSetting.xslfoAttachScreenLocation"/>
            <set field="emailParams.partyId" from-field="parameters.partyIdTo"/>
            <if-not-empty field="emailTemplateSetting.fromAddress">
                <set field="emailParams.sendFrom" from-field="emailTemplateSetting.fromAddress"/>
                <else>
                    <property-to-field resource="general" property="defaultFromEmailAddress" field="emailParams.sendFrom" default="ofbiztest@example.com"/>
                </else>
            </if-not-empty>
            <set field="emailParams.sendCc" from-field="emailTemplateSetting.ccAddress"/>
            <set field="emailParams.sendBcc" from-field="emailTemplateSetting.bccAddress"/>
            <set field="emailParams.subject" from-field="emailTemplateSetting.subject"/>
            <set field="emailParams.contentType" from-field="emailTemplateSetting.contentType" default-value="text/html"/>
            <if-not-empty field="parameters.custRequestId">
                <set field="emailParams.bodyParameters.custRequestId" from-field="parameters.custRequestId"/>
            </if-not-empty>
            <!-- copy the incoming parameter fields AFTER setting the ones from EmailTemplateSetting so they can override things like subject, sendFrom, etc -->
            <set-service-fields service-name="sendMailFromScreen" map="parameters" to-map="emailParams"/>
            <call-service service-name="sendMailFromScreen" in-map-name="emailParams">
                <result-to-result result-name="messageWrapper"/>
                <result-to-result result-name="body"/>
                <result-to-result result-name="communicationEventId"/>
            </call-service>
            <else>
                <log level="error" message="sendMailFromTemplateSetting service could not find the emailTemplateSettingId: ${parameters.emailTemplateSettingId}"/>
            </else>
        </if-not-empty>
    </simple-method>
</simple-methods>
