@model UpdatePointOfSaleViewModel
@{
    ViewData["Title"] = "Update Point of Sale";
}
<section>
    <div class="modal" id="product-modal" tabindex="-1" role="dialog">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <h5 class="modal-title">Product management</h5>
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                        <span aria-hidden="true">&times;</span>
                    </button>
                </div>
                <div class="modal-body">
                    <p>Modal body text goes here.</p>
                </div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
                    <button type="button" class="js-product-save btn btn-primary">Save Changes</button>
                </div>
            </div>
        </div>
    </div>

    <div class="container">
        <div class="row">
            <div class="col-lg-12 text-center">
                <h2 class="section-heading">@ViewData["Title"]</h2>
                <hr class="primary">
            </div>
        </div>
        <div class="row">
            <div class="col-lg-12 text-center">
                <partial name="_StatusMessage" for="@TempData["TempDataProperty-StatusMessage"]" />
            </div>
        </div>
        <div class="row">
            <div class="col-lg-12">
                <form method="post">
                    <div asp-validation-summary="ModelOnly" class="text-danger"></div>
                    <div class="form-group">
                        <label asp-for="Title" class="control-label"></label>*
                        <input asp-for="Title" class="form-control" />
                        <span asp-validation-for="Title" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="Currency" class="control-label"></label>*
                        <input asp-for="Currency" class="form-control" />
                        <span asp-validation-for="Currency" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="EnableShoppingCart"></label>
                        <input asp-for="EnableShoppingCart" type="checkbox" class="form-check" />
                        <span asp-validation-for="EnableShoppingCart" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="ShowCustomAmount"></label>
                        <input asp-for="ShowCustomAmount" type="checkbox" class="form-check" />
                        <span asp-validation-for="ShowCustomAmount" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="ShowDiscount"></label>
                        <input asp-for="ShowDiscount" type="checkbox" class="form-check" />
                        <span asp-validation-for="ShowDiscount" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="EnableTips"></label>
                        <input asp-for="EnableTips" type="checkbox" class="form-check" />
                        <span asp-validation-for="EnableTips" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="ButtonText" class="control-label"></label>*
                        <input asp-for="ButtonText" class="form-control" />
                        <span asp-validation-for="ButtonText" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="CustomButtonText" class="control-label"></label>*
                        <input asp-for="CustomButtonText" class="form-control" />
                        <span asp-validation-for="CustomButtonText" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="CustomTipText" class="control-label"></label>*
                        <input asp-for="CustomTipText" class="form-control" />
                        <span asp-validation-for="CustomTipText" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="CustomTipPercentages" class="control-label"></label>
                        <input asp-for="CustomTipPercentages" class="form-control" />
                        <span asp-validation-for="CustomTipPercentages" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="CustomCSSLink" class="control-label"></label>
                        <a href="https://docs.btcpayserver.org/development/theme#bootstrap-themes" target="_blank"><span class="fa fa-question-circle-o" title="More information..."></span></a>
                        <input asp-for="CustomCSSLink" class="form-control" />
                        <span asp-validation-for="CustomCSSLink" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label class="control-label">Products</label>*
                        <div class="mb-3">
                            <a class="js-product-add btn btn-secondary" href="#" data-toggle="modal" data-target="#product-modal"><i class="fa fa-plus fa-fw"></i> Add Product</a>
                        </div>
                        <div class="js-products bg-light row p-3">
                        </div>
                    </div>
                    <div class="form-group">
                        <label asp-for="Template" class="control-label"></label>*
                        <textarea asp-for="Template" rows="10" cols="40" class="js-product-template form-control"></textarea>
                        <span asp-validation-for="Template" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="NotificationUrl" class="control-label"></label>
                        <input asp-for="NotificationUrl" class="form-control" />
                        <span asp-validation-for="NotificationUrl" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="NotificationEmail" class="control-label"></label>
                        @if (Model.NotificationEmailWarning)
                        {
                            <partial name="NotificationEmailWarning"></partial>
                        }
                        <input type="email" asp-for="NotificationEmail" class="form-control" />
                        <span asp-validation-for="NotificationEmail" class="text-danger"></span>
                    </div>
                    <div class="form-group">
                        <label asp-for="RedirectAutomatically" class="control-label"></label>*
                        <select asp-for="RedirectAutomatically" asp-items="Model.RedirectAutomaticallySelectList" class="form-control"></select>
                        <span asp-validation-for="RedirectAutomatically" class="text-danger"></span>
                    </div>
                    <input type="hidden" asp-for="NotificationEmailWarning" />
                    <div class="form-group">
                        <input type="submit" class="btn btn-primary" value="Save Settings" id="SaveSettings" />
                    </div>
                    <div class="form-group">
                        <div class="accordion" id="accordian-dev-info">
                            <div class="card">
                                <div class="card-header" id="accordian-dev-info-embed-payment-button-header">
                                    <h2 class="mb-0">
                                        <button class="btn btn-link" type="button" data-toggle="collapse" data-target="#accordian-dev-info-embed-payment-button" aria-expanded="true" aria-controls="accordian-dev-info-embed-payment-button">
                                            Embed Payment Button linking to POS item
                                        </button>
                                    </h2>
                                </div>

                                <div id="accordian-dev-info-embed-payment-button" class="collapse" aria-labelledby="accordian-dev-info-embed-payment-button-header" data-parent="#accordian-dev-info">
                                    <div class="card-body">
                                        <p>You can host point of sale buttons in an external website with the following code.</p>
                                        @if (Model.Example1 != null)
                                        {
                                            <span>For anything with a custom amount</span>
                                            <pre><code class="html">@Model.Example1</code></pre>
                                        }
                                        @if (Model.Example2 != null)
                                        {
                                            <span>For a specific item of your template</span>
                                            <pre><code class="html">@Model.Example2</code></pre>
                                        }
                                    </div>
                                </div>
                            </div>
                            <div class="card">
                                <div class="card-header" id="accordian-dev-info-embed-pos-iframe-header">
                                    <h2 class="mb-0">
                                        <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#accordian-dev-info-embed-pos-iframe" aria-expanded="false" aria-controls="accordian-dev-info-embed-pos-iframe">
                                            Embed POS with Iframe

                                        </button>
                                    </h2>
                                </div>
                                <div id="accordian-dev-info-embed-pos-iframe" class="collapse" aria-labelledby="accordian-dev-info-embed-pos-iframe-header" data-parent="#accordian-dev-info">
                                    <div class="card-body">
                                        You can embed the POS using an iframe
                                        @{
                                            var iframe = $"<iframe src='{(Url.Action("ViewPointOfSale", "AppsPublic", new { appId = Model.Id }, Context.Request.Scheme))}' style='max-width: 100%; border: 0;'></iframe>";
                                        }
                                        <pre><code class="html">@iframe</code></pre>
                                    </div>
                                </div>
                            </div>
                            <div class="card">
                                <div class="card-header" id="accordian-dev-info-notification-header">
                                    <h2 class="mb-0">
                                        <button class="btn btn-link collapsed" type="button" data-toggle="collapse" data-target="#accordian-dev-info-notification" aria-expanded="false" aria-controls="accordian-dev-info-notification">
                                            Notification Url Callbacks
                                        </button>
                                    </h2>
                                </div>
                                <div id="accordian-dev-info-notification" class="collapse" aria-labelledby="accordian-dev-info-notification-header" data-parent="#accordian-dev-info">
                                    <div class="card-body">
                                        <p>A <code>POST</code> callback will be sent to notification with the following form will be sent to <code>notificationUrl</code> once the enough is paid and once again once there is enough confirmations to the payment:</p>
                                        <pre><code class="json">@Model.ExampleCallback</code></pre>
                                        <p><strong>Never</strong> trust anything but <code>id</code>, <strong>ignore</strong> the other fields completely, an attacker can spoof those, they are present only for backward compatibility reason:</p>
                                        <p>
                                            <ul>
                                                <li>Send a <code>GET</code> request to <code>https://btcpay.example.com/invoices/{invoiceId}</code> with <code>Content-Type: application/json</code></li>
                                                <li>Verify that the <code>orderId</code> is from your backend, that the <code>price</code> is correct and that <code>status</code> is either <code>confirmed</code> or <code>complete</code></li>
                                                <li>You can then ship your order</li>
                                            </ul>
                                        </p>
                                    </div>
                                </div>
                            </div>
                        </div>

                    </div>
                </form>
                <a asp-action="ListApps">Back to the app list</a>


            </div>
        </div>
    </div>
</section>

@section Scripts {
    <link rel="stylesheet" href="~/vendor/highlightjs/default.min.css">
    <script src="~/vendor/highlightjs/highlight.min.js"></script>
    <script>hljs.initHighlightingOnLoad();</script>

    <script id="template-product-item" type="text/template">
        <div class="col-sm-4 col-md-3 mb-3">
            <div class="card">
                {image}
                <div class="card-body">
                    <h6 class="card-title">{title}</h6>
                    <a href="#" class="js-product-edit btn btn-primary" data-toggle="modal" data-target="#product-modal">Edit</a>
                    <a href="#" class="js-product-remove btn btn-danger"><i class="fa fa-trash"></i></a>
                </div>
            </div>
        </div>
    </script>

    <script id="template-product-content" type="text/template">
        <div class="mb-3">
            <input class="js-product-id" type="hidden" name="id" value="{id}">
            <input class="js-product-index" type="hidden" name="index" value="{index}">
            <div class="form-row">
                <div class="col-sm-6">
                    <label>Title</label>*
                    <input type="text" class="js-product-title form-control mb-2" value="{title}" autofocus />
                </div>
                <div class="col-sm-3">
                    <label>Price</label>*
                    <input type="number" class="js-product-price form-control mb-2" value="{price}" />
                </div>
                <div class="col-sm-3">
                    <label>Custom price</label>
                    <select class="js-product-custom form-control">
                        {custom}
                    </select>
                </div>
            </div>
            <div class="form-row">
                <div class="col">
                    <label>Image</label>
                    <input type="text" class="js-product-image form-control mb-2" value="{image}" />
                </div>
            </div>
            <div class="form-row">
                <div class="col">
                    <label>Description</label>
                    <textarea rows="3" cols="40" class="js-product-description form-control mb-2">{description}</textarea>
                </div>
            </div>
        </div>
    </script>

    <script src="~/products/js/products.js"></script>
    <script src="~/products/js/products.jquery.js"></script>
}

