<div class="d-grid gap-2 col-6 mx-auto">
    <button type="submit" class="btn btn-block btn-info" id="btn_tag">
        เพิ่มคำสำคัญ <i class="fas fa-plus-circle"></i>
    </button>
</div>
<br>
<div class="table-responsive">
    <table id="table-tag" class="table">
        <thead>
            <tr class="bg-green">
                <th>ลำดับ</th>
                <th>ชื่อคำสำคัญ</th>
                <th>id</th>
                <th>จัดการ</th>
            </tr>
        </thead>
        <tbody>
            <?php if($article['status'] == true): ?>
            <?php $__currentLoopData = $article['data']['article_tags']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $tag): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
            <tr>
                <td width="50px"></td>
                <td width="200px"><?php echo e($tag['name']); ?></td>
                <td width="50px"><?php echo e($tag['id']); ?></td>
                <td width="100px"></td>
            </tr>
            <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
            <?php endif; ?>
        </tbody>
    </table>
</div>
<br>

<!-- ADD Modal -->
<div class="modal" id="AddModalTag" tabindex="-1">
    <div class="modal-dialog">
        <div class="modal-content">
            <div class="modal-header">
                <h5 class="modal-title">เพิ่มคำสำคัญ</h5>
                <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
            </div>
            <div class="modal-body">
                <form id="formAddTag" name="formAddTag" class="needs-validation" novalidate>
                    <div class="row justify-content-md-center">
                        <div class="col">
                            <input type="hidden" id="tag_id">
                            <div class="mb-3">
                                <label class="form-label">คำสำคัญ</label>
                                <select id="sel_tag" name="sel_tag" class="form-select" required>
                                    <option value="" selected disabled>เลือกคำสำคัญ</option>
                                    <?php if($list_tag['status'] == true): ?>
                                    <?php $__currentLoopData = $list_tag['data']; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $listTag): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
                                    <option value="<?php echo e($listTag['id']); ?>"><?php echo e($listTag['name']); ?></option>
                                    <?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
                                    <?php endif; ?>
                                </select>
                            </div>
                            <div class="mb-3">
                                <div class="col-md-10"></div>
                                <div class="d-grid gap-2 col-md-2 mx-auto">
                                    <button class="btn btn-warning" type="submit">
                                        บันทึก <i class="fas fa-save"></i>
                                    </button>
                                </div>
                            </div>
                        </div>
                    </div>
                </form>

            </div>
        </div>
    </div>
</div>

<script>
$("#btn_tag").click(function() {
    $("#AddModalTag").modal('show');
    $("#sel_tag").select2({
        theme: "bootstrap-5",
        dropdownParent: $('#AddModalTag')
    });
});

var tableTag = $('#table-tag').DataTable({
    "columnDefs": [{
            "targets": 0,
            "searchable": false,
            "orderable": false,
            "width": "5%",
            "className": "text-center",
        },
        {
            "targets": 2,
            "visible": false,
            "searchable": false
        },
        {
            "targets": -1,
            "data": null,
            "className": "text-center",
            "defaultContent": "<a class='on-default btn-delete' id='btn-delete' data-toggle='tooltip' title='ลบ'><i class='fa fa-trash-alt'></i></a>"
        }
    ],
    "order": [
        [0, 'asc']
    ],
    "autoWidth": false,
    "searching": false,
    "destroy": false,
    "paging": true,
    "info": true,
    "responsive": true,
    "orderable": false,
    "fixedColumns": true,
});

tableTag.on('order.dt search.dt', function() {
    tableTag.column(0, {
        search: 'applied',
        order: 'applied'
    }).nodes().each(function(cell, i) {
        cell.innerHTML = i + 1;
    });
}).draw();


$('#table-tag tbody').on('click', '.btn-delete', function() {
    var RowIndex = $(this).closest('tr');
    var data = tableTag.row(RowIndex).data();
    // var data = tableTag.row(this).data();
    var idtag = data[2];
    // alert(idtag);
    var idArt = $("#con_id").val();
    Swal.fire({
        icon: 'info',
        title: 'คุณแน่ใจแล้วใช่ไหมว่าจะลบข้อมูลที่เลือก',
        text: '',
        allowOutsideClick: false,
        focusConfirm: true,
        showCancelButton: true,
        confirmButtonText: 'ตกลง',
        cancelButtonText: 'ยกเลิก',
    }).then((result) => {
        if (result.value) {
            var form_data = new FormData();
            form_data.append('art_id', idArt);
            form_data.append('tag_id', idtag);
            $.ajax({
                type: "post",
                url: 'content/deleteTag',
                data: form_data,
                headers: {
                    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                },
                processData: false,
                contentType: false,
                cache: false,
                success: function(data) {
                    $(".loader").hide();
                    if (data.status == true) {
                        $('#blade-tag').html(data.body);
                    } else {
                        Swal.fire({
                            icon: 'warning',
                            title: 'คำเตือน',
                            text: JSON.stringify(data.message),
                        });
                    }
                },
            });
        }
    })
});

var $savetag = $("#formAddTag");
$savetag.validate({
    rules: {
        sel_tag: {
            required: true
        }
    },
    messages: {
        sel_tag: {
            required: "กรุณาเลือกคำสำคัญ"
        }
    },
    submitHandler: function() {
        $(".loader").show();
        debugger;
        var idArt = $("#con_id").val();
        var idTag = $("#sel_tag").val();
        if (idArt == "") {
            $(".loader").hide();
            Swal.fire({
                icon: 'warning',
                title: 'คำเตือน',
                text: 'กรุณาเพิ่มข้อมูลเนื้อหาความรู้ก่อน',
            });

        } else {
            var form_data = new FormData();
            form_data.append('art_id', idArt);
            form_data.append('tag_id', idTag);

            $.ajax({
                type: "post",
                url: 'content/addTag',
                data: form_data,
                headers: {
                    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                },
                processData: false,
                contentType: false,
                cache: false,
                success: function(data) {
                    $(".loader").hide();
                    if (data.status == true) {
                        $('#AddModalTag').modal('hide');
                        $('#blade-tag').html(data.body);
                    } else {
                        Swal.fire({
                            icon: 'warning',
                            title: 'คำเตือน',
                            text: JSON.stringify(data.message),
                        });
                    }
                },
            });
        }
    },
    errorElement: "div",
    errorPlacement: function(error, element) {
        // Add the `invalid-feedback` class to the error element
        error.addClass("invalid-feedback");

        // Add `has-feedback` class to the parent div.form-group
        // in order to add icons to inputs
        // element.parents(".col-sm-5").addClass("has-feedback");

        if (element.prop("type") === "checkbox") {
            error.insertAfter(element).addClass("invalid-feedback");
        } else {
            error.insertAfter(element);
        }

        var elem = $(element);
        if (elem.hasClass("select2-hidden-accessible")) {
            element = $("#select2-" + elem.attr("id") + "-container").parent();
            error.insertAfter(element).addClass("invalid-feedback");
        } else {
            error.insertAfter(element);
        }

        // Add the span element, if doesn't exists, and apply the icon classes to it.
        if (!element.next("span")[0]) {
            $("<span class='glyphicon glyphicon-remove form-control-feedback'></span>")
                .insertAfter(element);
        }
    },
    success: function(label, element) {
        // Add the span element, if doesn't exists, and apply the icon classes to it.
        // console.log(element);
        if (!$(element).next("span")[0]) {
            $("<span class='glyphicon glyphicon-ok form-control-feedback'></span>")
                .insertAfter(
                    $(element));
        }
    },
    highlight: function(element, errorClass, validClass) {
        // $(element).parents(".col-sm-5").addClass("has-error").removeClass("has-success");
        // $(element).next("span").addClass("glyphicon-remove").removeClass("glyphicon-ok");
        var elem = $(element);
        if (elem.hasClass("select2-hidden-accessible")) {
            $("#select2-" + elem.attr("id") + "-container").parent().addClass(
                errorClass);
        } else {
            elem.addClass(errorClass);
        }
    },
    unhighlight: function(element, errorClass, validClass) {
        // $(element).parents(".col-sm-5").addClass("has-success").removeClass("has-error");
        // $(element).next("span").addClass("glyphicon-ok").removeClass("glyphicon-remove");
        var elem = $(element);
        if (elem.hasClass("select2-hidden-accessible")) {
            $("#select2-" + elem.attr("id") + "-container").parent().removeClass(
                errorClass);
        } else {
            elem.removeClass(errorClass);
        }
    }
});
</script><?php /**PATH C:\xampp\htdocs\km-web\resources\views/subpageBack/table_tag.blade.php ENDPATH**/ ?>