<!--
  ~ 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.
  ~
  -->

<div fxFlex="100">
    <sp-split-section
        title="Mail Template"
        subtitle="Email Template Configuration"
    >
        <div fxFlex="100" fxLayout="column">
            <div fxFlex="100" fxLayout="row" fxLayoutAlign="start center">
                <button
                    mat-button
                    mat-raised-button
                    color="accent"
                    class="small-button"
                    (click)="restoreTemplate()"
                    style="margin-right: 10px; margin-bottom: 10px"
                >
                    Reset changes
                </button>
            </div>
            <div fxLayout="row" fxLayoutAlign="start center">
                <div class="placeholder-explanation">
                    <div fxLayout="column">
                        <div>
                            You can set various placeholder variables that will
                            be replaced with the actual values when sending an
                            email:
                        </div>
                        <div
                            fxLayout="row wrap"
                            class="mt-10"
                            fxLayoutGap="5px"
                        >
                            <div
                                class="placeholder-item"
                                *ngFor="let placeholder of allowedPlaceholders"
                            >
                                <span class="placeholder-variable">{{
                                    placeholder.placeholder
                                }}</span>
                                <span class="placeholder-description">{{
                                    placeholder.description
                                }}</span>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            <div fxFlex="100" fxLayout="row">
                <ngx-codemirror
                    [(ngModel)]="template.template"
                    style="width: 100%"
                    [options]="editorOptions"
                >
                </ngx-codemirror>
            </div>
            <div fxLayout="row" class="mt-10">
                <button
                    mat-button
                    mat-raised-button
                    color="accent"
                    (click)="saveTemplate()"
                    style="margin-right: 10px"
                    [disabled]="template.template === ''"
                >
                    <i class="material-icons">save</i><span>&nbsp;Save</span>
                </button>
            </div>
        </div>
    </sp-split-section>
</div>
