if(!Promise){
  var Promise = require("bluebird");
// Configure
  Promise.config({
    longStackTraces: true,
    warnings: true // note, run node with --trace-warnings to see full stack traces for warnings
  })
}
require('../css/information.less')
const {
  post,
  throttle,
  imageUrlPrefix,
  config,
  getUrlArgObject,
  openNewWin
} = require('./promise.js');
const $ = require("jquery");
let showName,noticeName,clinicalPathwayName

function getInfomation() {
  var param = {
    "type": getUrlArgObject('type'),
    "name": getUrlArgObject('name'),
    "position": getUrlArgObject('position'),
    "contentTypes":[1,2,3]
  };
  const uname = getUrlArgObject('uname')
  showName = param.name
  // if (param.type == 5 || param.type == 51) {
  //   param.type = 12;
  //   param.name = uname;
  // }

  post(config.information, param).then((res) => {
    const data = res.data.data
    document.title = showName
    var str = '';
    var anchors = '';
  
    if (!data) {
      $("h1").html("暂时没有数据");
      $(".anchors").css("display", "none");
      return;
    }
    var detailList = data.details
    var staticKnowList = detailList['静态知识']
    var noticeInfo = detailList['注意事项']
    var clinicalPathwayInfo = detailList['临床路径']
    noticeName = data.noticeName || "注意事项"
    clinicalPathwayName = data.clinicalPathwayName || "临床路径"
    // $("h1").css({
    //   "color": "#267FD7",
    //   "borderBottom": "4px solid  #E9E9E9",
    //   "padding": "0px 60px 50px 0px"
    // });
    renderTab(detailList)
    staticKnowList&&renderContent(staticKnowList,'staticKnowledge')
    noticeInfo&&renderContent(noticeInfo,'notice')
    clinicalPathwayInfo&&renderContent(clinicalPathwayInfo,'clinicalPathway')

  
    $('.content img').bind('contextmenu', function(){
      return false
    })
   
  })
}
getInfomation();


function renderContent(list, contentWrapClassName){
    for (var i = 0; i < list.length; i++) {
        var item = list[i];
        item.content = item.content&&item.content.replace(/{imageUrlPrefix}/g, imageUrlPrefix);
        anchors = '<li><i></i><a href="#' + contentWrapClassName+i +
          '">' + item.title + '</a></li><li class="anchor-line"></li>';
        str = '<div class="infoBox"><div class="title"> <div class= "circleBox"><span class="circle"> </span></div> <h2 class="titleH2" id="' + contentWrapClassName+i +
          '">'
        if (getUrlArgObject('type') == 8) {
          str += '【' + item.title + '】'
        } else {
          str += item.title
        }
        str += '</h2></div>' +
          '<div class="contentWrapper"><pre>' + item.content + '</pre><div></div>';
          str = `<div class="infoWrapper">${str}</div>`
        $(`.${contentWrapClassName} .infos`).append(str);
        $(`.${contentWrapClassName} .anchors ul`).append(anchors);
    }

    function addScrollEvent() {
      var scrollTop = $(`.${contentWrapClassName} .infos`).scrollTop()

      var divHeight = 0;
      for (var i = 0; i < list.length; i++) {
        divHeight = divHeight + parseInt($('#'+contentWrapClassName+i).css('height')) + parseInt($('#'+contentWrapClassName+i).parent().next().css('height')) + 20
        if (divHeight > scrollTop) {
          var anchor = 2 * i;
          $(`.${contentWrapClassName} .anchors ul`).children().eq(anchor).addClass('active').siblings().removeClass('active');
          return;
        }
      }
    }
    $(`.${contentWrapClassName} .infos`).scroll(throttle(addScrollEvent, 200));
    addLinkClickEvent(contentWrapClassName);
    adjustHeight();
    adjustWidth()
}



function addLinkClickEvent(contentWrapClassName) {
  $(`.${contentWrapClassName} .anchors li:first`).addClass("active");
  $(`.${contentWrapClassName}  .anchors li>a`).on("click", function () {

    const that = this
    setTimeout(function(){
      $(`.${contentWrapClassName} .anchors .active`).removeClass('active');
      $(that).parent().addClass("active");
    },20)

  });
}

function renderTab(detailList){
  if(detailList['静态知识']){
    $(".tabList").append(`<span class="tab" data-module="staticKnowledge">静态知识</span>`)
    $(".staticKnowledge h1").html(showName);
  }
  if(detailList['临床路径']){
    $(".tabList").append(`<span class="tab" data-module="clinicalPathway">临床路径</span>`)
    $(".clinicalPathway h1").html(clinicalPathwayName);
  }
  if(detailList['注意事项']){
    $(".tabList").append(`<span class="tab" data-module="notice">注意事项</span>`)
    $(".notice h1").html(noticeName);
  }
  $(".tabList .tab").eq(0).addClass("activeTab")
  let defaultModuleName = $(".tabList .tab").eq(0).attr("data-module")
  $(`.${defaultModuleName}`).css("display","block")
  bindTabClick()
}
function bindTabClick(){
  $(".tabList .tab").on("click", function(){
    const moduleName = $(this).attr("data-module")
    const display = $(`.${moduleName}`).css("display")
    if(display == "none"){
      $(".activeTab").removeClass("activeTab")
      $(this).addClass("activeTab")
      $(".container").css("display","none")
  
      $(`.${moduleName}`).css("display","block")
      $(`.${moduleName} .infos`).scrollTop(0)
    }
  })
  $("#openWin").on("click",function(){
    const type= getUrlArgObject('type');
    const name= getUrlArgObject('name');
    const position= getUrlArgObject('position');
    openNewWin("information.html?name="+encodeURIComponent(name)+"&position="+encodeURIComponent(position)+"&type="+encodeURIComponent(type));
  })
}
function adjustHeight() {
  var ht = window.innerHeight || document.documentElement.clientHeight;
  $(".content").height(ht - 90 + "px");
}
function adjustWidth() {
  var wt = window.innerWidth || document.documentElement.clientWidth;
  $(".titleH2").width(wt- 0.2*wt -33 - 200 - 17 - 40 -15 + 'px')
  $("pre").width(wt- 0.2*wt - 200 + 'px')
}
$(window).on('resize', function(){
  adjustHeight()
  adjustWidth()
})

//如果是子窗口，隐藏网页查看按钮
if(window.opener){
  $("#openWin").hide();
}
