/*
 * Overview 메뉴얼 클래스
 * 라이브러리: Quill (미니멀한 게시판 라이브러리)
 * PARAMS: menu_code (각 페이지의 메뉴코드 - global에서 정의되어 있음.), memberId(작성자ID = 로그인한 ID)
 */
class MenualClass {
  async init() {
    const quill = new Quill("#editor", {
      modules: {
        toolbar: "#toolbar",
      },
      theme: "snow",
    });
    await this.getData();
  }

  getData() {
    return ajax_json({
      url: "/inc/common.ajax.php",
      type: "POST",
      data: {
        mode: "getSiteMenuList",
        menu_code: menu_code,
      },

      success: (data) => {
        if (data.code) {
          const manualObj = data.manual[0]
          document.querySelector(".ql-editor").innerHTML = manualObj.manual_con;
        } else {
          kuls_alert(data.mesg);
        }
      },
      error: (req, status, err) => {
        kuls_alert(err.message);
      },
      complete: () => {},
    });
  }

  putData() {
    const contents = document.querySelector(".ql-editor").innerHTML;
    ajax_json({
      url: "/inc/common.ajax.php",
      data: {
        mode: "putSiteMenual",
        member_id: memberId,
        menu_code: menu_code,
        contents: contents,
      },

      success: (data) => {
        if (data.code !== 'E') {
          kuls_success("저장되었습니다.");
        } else {
          kuls_alert(data.mesg);
          this.getData()
        }
      },
      error: (req, status, err) => {
        kuls_alert(err.message);
      },
      complete: () => {},
    });
  }
}

const Manual = new MenualClass();
$(".board-btn").on("click", function (e) {
  $(".board").removeClass("expand");
  $(".board").toggleClass("on");

  Manual.init();
});

// 아이콘 교체 및 메뉴얼 크기 변경
$(".expand-button").on("click", function (e) {
  $(".board").toggleClass("expand");
  $(".bi").toggleClass("bi-arrows-angle-expand");
  $(".bi").toggleClass("bi-arrows-angle-contract");
});

$(".board-submit").on("click", function (e) {
  Manual.putData();
});
