<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org">
<head>
    <th:block th:include="include :: header('修改球场管理')"/>
    <th:block th:include="include :: datetimepicker-css"/>
    <th:block th:include="include :: bootstrap-fileinput-css"/>
    <th:block th:include="include :: summernote-css"/>
    <!-- 自定义 CSS -->
    <style>
        /* 修改文本域的背景颜色和文字颜色 */
        .note-editable {
            background-color: black !important; /* 黑色背景 */
            color: white !important; /* 白色文字 */
        }
    </style>
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
    <form class="form-horizontal m" id="form-site-edit" th:object="${beilvSite}">
        <input name="id" th:field="*{id}" type="hidden">
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label is-required">名称：</label>
                <div class="col-sm-8">
                    <input name="name" th:field="*{name}" class="form-control" type="text" required>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">分类：</label>
                <div class="col-sm-8">
                    <select name="siteType" class="form-control" th:with="type=${@dict.getType('site_type')}">
                        <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"
                                th:field="*{siteType}"></option>
                    </select>
                </div>
            </div>
        </div>

        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label is-required">价格：</label>
                <div class="col-sm-8">
                    <input name="price" th:field="*{price}" class="form-control" type="text" required>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label is-required">温馨提示：</label>
                <div class="col-sm-8">
                    <input name="warmReminder" th:field="*{warmReminder}" class="form-control" type="text" required>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label is-required">场馆名称：</label>
                <div class="col-sm-8">
                    <select name="venueId" class="form-control" th:value="${beilvSite.venueId}">
                        <option th:each="post:${beilvSitesList}"
                                th:value="${post.id}"
                                th:text="${post.venueName}"
                                th:selected="${post.id == beilvSite.venueId}">
                        </option>
                    </select>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">封面：</label>
                <div class="col-sm-8">
                    <input type="hidden" name="cover" th:field="*{cover}">
                    <div class="file-loading">
                        <input class="form-control file-upload" id="cover" name="file" type="file">
                    </div>
                </div>
            </div>
        </div>
        <div class="col-xs-12">
            <div class="form-group">
                <label class="col-sm-3 control-label">简介：</label>
                <div class="col-sm-8">
                    <input type="hidden" class="form-control" th:field="*{intro}">
                    <div class="summernote" id="intro"></div>
                </div>
            </div>
        </div>
    </form>
</div>
<th:block th:include="include :: footer"/>
<th:block th:include="include :: datetimepicker-js"/>
<th:block th:include="include :: bootstrap-fileinput-js"/>
<th:block th:include="include :: summernote-js"/>
<script th:inline="javascript">
    var prefix = ctx + "system/site";
    $("#form-site-edit").validate({
        focusCleanup: true,
        rules: {
            price: {
                double: true
            },
        }
    });

    function submitHandler() {
        if ($.validate.form()) {
            $.operate.save(prefix + "/edit", $('#form-site-edit').serialize());
        }
    }


    $(".file-upload").each(function (i) {
        var inputName = this.id;
        var val = $("input[name='" + inputName + "']").val();

        // 将已上传的图片路径分割成数组
        var initialPreview = val ? val.split(',') : [];

        $(this).fileinput({
            uploadUrl: ctx + 'common/upload',
            initialPreviewAsData: true,
            initialPreview: initialPreview,
            maxFileCount: 1,
            allowedFileExtensions: ['jpg', 'png'],
            maxFileSize: 10240,
            multiple: true,
        }).on('fileuploaded', function (event, data, previewId, index) {
            var inputName = event.currentTarget.id;
            var existingValue = $("input[name='" + inputName + "']").val();
            var fullUrl = data.response.url; // 获取完整的URL
            var urlObject = new URL(fullUrl);
            var relativePath = urlObject.pathname; // 获取路径部分
            // var newBaseUrl = "http://192.168.4.27"; // 新的基URL
            var newBaseUrl = "http://localhost"; // 新的基URL
            var absoluteUrl = newBaseUrl + relativePath; // 拼接完整的URL

            // 如果已经存在值，则在后面加上逗号分隔的新值
            if (existingValue) {
                $("input[name='" + inputName + "']").val(existingValue + ',' + absoluteUrl);
            } else {
                $("input[name='" + inputName + "']").val(absoluteUrl);
            }
        }).on('fileremoved', function (event, id, index) {
            var inputName = event.currentTarget.id;
            var existingValue = $("input[name='" + inputName + "']").val();
            var fileUrls = existingValue.split(',');

            // 移除对应的文件路径
            fileUrls.splice(index, 1);

            // 重新拼接文件路径
            $("input[name='" + inputName + "']").val(fileUrls.join(','));
        });

        $(this).fileinput('_initFileActions');
    });


    $(function () {
        $('.summernote').each(function (i) {
            $('#' + this.id).summernote({
                lang: 'zh-CN',
                dialogsInBody: true,
                height:240,
                callbacks: {
                    onChange: function (contents, $edittable) {
                        $("input[name='" + this.id + "']").val(contents);
                    },
                    onImageUpload: function (files) {
                        var obj = this;
                        var data = new FormData();
                        data.append("file", files[0]);
                        $.ajax({
                            type: "post",
                            url: ctx + "common/upload",
                            data: data,
                            cache: false,
                            contentType: false,
                            processData: false,
                            dataType: 'json',
                            success: function (result) {
                                if (result.code == web_status.SUCCESS) {
                                    $('#' + obj.id).summernote('insertImage', result.url);
                                } else {
                                    $.modal.alertError(result.msg);
                                }
                            },
                            error: function (error) {
                                $.modal.alertWarning("图片上传失败。");
                            }
                        });
                    }
                }
            });
            var content = $("input[name='" + this.id + "']").val();
            $('#' + this.id).summernote('code', content);
        })
    });
</script>
</body>
</html>