OLDBOY/skin/board/maria_event/write/write.script.php
<script>
<?php if($write_min || $write_max) { ?>
var char_min = parseInt(<?php echo $write_min; ?>, 10);
var char_max = parseInt(<?php echo $write_max; ?>, 10);
check_byte("wr_content", "char_count");
$(function() {
    $("#wr_content").on("keyup", function() {
        check_byte("wr_content", "char_count");
    });
});
<?php } ?>

function updateFileInfo(input, index) {
    if (input.files.length > 0) {
        $('#f_name_' + index).text(input.files[0].name).css('color', '#00d4ff');
    }
}

function addFileSlot() {
    $('.file-box-custom:not(.active)').first().addClass('active');
}

function toggleExtraArea() {
    var area = $('#extra_area');
    var icon = $('#btn_extra_toggle i');
    if (area.is(':visible')) {
        area.slideUp(250);
        icon.removeClass('fa-chevron-up').addClass('fa-chevron-down');
    } else {
        area.slideDown(250);
        icon.removeClass('fa-chevron-down').addClass('fa-chevron-up');
    }
}

function setMemoRowState(isOpen, useAnimation) {
    var row = $('#memo_row');
    var wrap = $('#memo_panel_wrap');

    if (isOpen) {
        row.show();
        if (useAnimation) {
            wrap.stop(true, true).slideDown(220);
        } else {
            wrap.show();
        }
        $('#id_x2_memo_button').prop('checked', true);
    } else {
        if (useAnimation) {
            wrap.stop(true, true).slideUp(220, function() {
                row.hide();
            });
        } else {
            wrap.hide();
            row.hide();
        }
        $('#id_x2_memo_button').prop('checked', false);
    }
}

function fwrite_submit(f) {
    <?php echo $editor_js; ?>

    var subject = "";
    var content = "";
    var ajaxSuccess = false;

    $.ajax({
        url: g5_bbs_url + "/ajax.filter.php",
        type: "POST",
        data: {
            "subject": f.wr_subject.value,
            "content": f.wr_content.value
        },
        dataType: "json",
        async: false,
        cache: false,
        success: function(data) {
            subject = data.subject;
            content = data.content;
            ajaxSuccess = true;
        },
        error: function() {
            ajaxSuccess = false;
        }
    });

    if (!ajaxSuccess) {
        // AJAX 실패 시에도 폼 제출 허용
        return true;
    }

    if (subject) {
        alert("제목에 금지단어('" + subject + "')가 포함되어있습니다");
        f.wr_subject.focus();
        return false;
    }

    if (content) {
        alert("내용에 금지단어('" + content + "')가 포함되어있습니다");
        if (typeof(ed_wr_content) != "undefined") {
            ed_wr_content.returnFalse();
        } else {
            f.wr_content.focus();
        }
        return false;
    }

    if (document.getElementById("char_count")) {
        if (char_min > 0 || char_max > 0) {
            var cnt = parseInt(check_byte("wr_content", "char_count"), 10);
            if (char_min > 0 && char_min > cnt) {
                alert("내용은 " + char_min + "글자 이상 쓰셔야 합니다.");
                return false;
            } else if (char_max > 0 && char_max < cnt) {
                alert("내용은 " + char_max + "글자 이하로 쓰셔야 합니다.");
                return false;
            }
        }
    }

    <?php echo $captcha_js; ?>
    return true;
}

$(function() {
    $('#btn_extra_toggle').on('click', function() {
        toggleExtraArea();
    });

    $('#id_x2_memo_button').on('change', function() {
        setMemoRowState($(this).is(':checked'), true);
    });

    if ($('#id_x2_memo_button').is(':checked')) {
        setMemoRowState(true, false);
    } else {
        setMemoRowState(false, false);
    }
});
</script>